PATH=C:\mingw\bin;C:\cygwin\bin;C:\cpanfly-5.20\var\megalib\bin;C:\Perl64-5.20\site\bin;C:\Perl64-5.20\bin;C:\cygwin\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\PROGRA~2\Perforce;C:\instantclient_11_2;C:\cygwin\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\PROGRA~2\Perforce;C:\mysql\bin Start 2015-11-08T06:26:54 ActivePerl-2000 CPAN-2.00 PATH=C:/CPANFL~1.20/var/libs/bin;C:\mingw\bin;C:\cygwin\bin;C:\CPANFL~1.20\var\megalib\bin;C:\Perl64-5.20\site\bin;C:\Perl64-5.20\bin;C:\cygwin\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WINDOW~1\v1.0;C:\PROGRA~2\Perforce;C:\INSTAN~1;C:\cygwin\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WINDOW~1\v1.0;C:\PROGRA~2\Perforce;C:\mysql\bin Reading 'C:\cpanfly-5.20\var\cpan\Metadata' Database was generated on Sun, 08 Nov 2015 05:41:02 GMT Running make for D/DR/DROLSKY/Test-DependentModules-0.26.tar.gz Fetching with LWP: http://cpan.nas1.activestate.com/authors/id/D/DR/DROLSKY/Test-DependentModules-0.26.tar.gz Fetching with LWP: http://cpan.nas1.activestate.com/authors/id/D/DR/DROLSKY/CHECKSUMS Checksum for C:\cpanfly-5.20\var\cpan\sources\authors\id\D\DR\DROLSKY\Test-DependentModules-0.26.tar.gz ok Test-DependentModules-0.26/ Test-DependentModules-0.26/dist.ini Test-DependentModules-0.26/perltidyrc Test-DependentModules-0.26/cpanfile Test-DependentModules-0.26/t/ Test-DependentModules-0.26/t/author-configure-requires.t Test-DependentModules-0.26/t/author-test-version.t Test-DependentModules-0.26/t/author-all-my-deps.t Test-DependentModules-0.26/t/release-pod-no404s.t Test-DependentModules-0.26/t/00-report-prereqs.t Test-DependentModules-0.26/t/release-portability.t Test-DependentModules-0.26/t/author-mojibake.t Test-DependentModules-0.26/t/release-pod-coverage.t Test-DependentModules-0.26/t/release-tidyall.t Test-DependentModules-0.26/t/author-pod-syntax.t Test-DependentModules-0.26/t/release-pod-linkcheck.t Test-DependentModules-0.26/t/author-00-compile.t Test-DependentModules-0.26/t/release-cpan-changes.t Test-DependentModules-0.26/t/author-eol.t Test-DependentModules-0.26/t/author-no-tabs.t Test-DependentModules-0.26/t/author-two-distros.t Test-DependentModules-0.26/t/00-report-prereqs.dd Test-DependentModules-0.26/t/author-pod-spell.t Test-DependentModules-0.26/t/basic.t Test-DependentModules-0.26/t/author-single-distros.t Test-DependentModules-0.26/Makefile.PL Test-DependentModules-0.26/META.yml Test-DependentModules-0.26/LICENSE Test-DependentModules-0.26/lib/ Test-DependentModules-0.26/lib/Test/ Test-DependentModules-0.26/lib/Test/DependentModules.pm Test-DependentModules-0.26/META.json Test-DependentModules-0.26/tidyall.ini Test-DependentModules-0.26/Changes Test-DependentModules-0.26/corpus/ Test-DependentModules-0.26/corpus/skipped_tests_eumm/ Test-DependentModules-0.26/corpus/skipped_tests_eumm/t/ Test-DependentModules-0.26/corpus/skipped_tests_eumm/t/skip.t Test-DependentModules-0.26/corpus/skipped_tests_eumm/Makefile.PL Test-DependentModules-0.26/corpus/skipped_tests_eumm/lib/ Test-DependentModules-0.26/corpus/skipped_tests_eumm/lib/MyModule.pm Test-DependentModules-0.26/corpus/skipped_tests_mbt/ Test-DependentModules-0.26/corpus/skipped_tests_mbt/Build.PL Test-DependentModules-0.26/corpus/skipped_tests_mbt/t/ Test-DependentModules-0.26/corpus/skipped_tests_mbt/t/skip.t Test-DependentModules-0.26/corpus/skipped_tests_mbt/lib/ Test-DependentModules-0.26/corpus/skipped_tests_mbt/lib/MyModule.pm Test-DependentModules-0.26/corpus/skipped_tests_mbt/META.json Test-DependentModules-0.26/corpus/skipped_tests_mb/ Test-DependentModules-0.26/corpus/skipped_tests_mb/Build.PL Test-DependentModules-0.26/corpus/skipped_tests_mb/t/ Test-DependentModules-0.26/corpus/skipped_tests_mb/t/skip.t Test-DependentModules-0.26/corpus/skipped_tests_mb/lib/ Test-DependentModules-0.26/corpus/skipped_tests_mb/lib/MyModule.pm Test-DependentModules-0.26/corpus/no_tests_eumm/ Test-DependentModules-0.26/corpus/no_tests_eumm/Makefile.PL Test-DependentModules-0.26/corpus/no_tests_eumm/lib/ Test-DependentModules-0.26/corpus/no_tests_eumm/lib/MyModule.pm Test-DependentModules-0.26/corpus/no_tests_mbt/ Test-DependentModules-0.26/corpus/no_tests_mbt/Build.PL Test-DependentModules-0.26/corpus/no_tests_mbt/lib/ Test-DependentModules-0.26/corpus/no_tests_mbt/lib/MyModule.pm Test-DependentModules-0.26/corpus/no_tests_mbt/META.json Test-DependentModules-0.26/corpus/broken_passing/ Test-DependentModules-0.26/corpus/broken_passing/t/ Test-DependentModules-0.26/corpus/broken_passing/t/skip.t Test-DependentModules-0.26/corpus/broken_passing/Makefile.PL Test-DependentModules-0.26/corpus/broken_passing/lib/ Test-DependentModules-0.26/corpus/broken_passing/lib/MyModule.pm Test-DependentModules-0.26/corpus/no_tests_mb/ Test-DependentModules-0.26/corpus/no_tests_mb/Build.PL Test-DependentModules-0.26/corpus/no_tests_mb/lib/ Test-DependentModules-0.26/corpus/no_tests_mb/lib/MyModule.pm Test-DependentModules-0.26/MANIFEST Test-DependentModules-0.26/perlcriticrc Test-DependentModules-0.26/INSTALL Test-DependentModules-0.26/README.md CPAN.pm: Building D/DR/DROLSKY/Test-DependentModules-0.26.tar.gz >>> C:\Perl64-5.20\bin\perl.exe Makefile.PL Warning: prerequisite MetaCPAN::Client 0 not found. Checking if your kit is complete... Looks good Generating a dmake-style Makefile Writing Makefile for Test::DependentModules Writing MYMETA.yml and MYMETA.json ---- Unsatisfied dependencies detected during ---- ---- DROLSKY/Test-DependentModules-0.26.tar.gz ---- MetaCPAN::Client [requires] Running make test Delayed until after prerequisites Running test for module 'MetaCPAN::Client' Running make for M/MI/MICKEY/MetaCPAN-Client-1.013000.tar.gz Checksum for C:\cpanfly-5.20\var\cpan\sources\authors\id\M\MI\MICKEY\MetaCPAN-Client-1.013000.tar.gz ok MetaCPAN-Client-1.013000 MetaCPAN-Client-1.013000/LICENSE MetaCPAN-Client-1.013000/Changes MetaCPAN-Client-1.013000/META.yml MetaCPAN-Client-1.013000/MANIFEST MetaCPAN-Client-1.013000/dist.ini MetaCPAN-Client-1.013000/Build.PL MetaCPAN-Client-1.013000/cpanfile MetaCPAN-Client-1.013000/META.json MetaCPAN-Client-1.013000/t MetaCPAN-Client-1.013000/t/entity.t MetaCPAN-Client-1.013000/Makefile.PL MetaCPAN-Client-1.013000/t/api MetaCPAN-Client-1.013000/t/api/pod.t MetaCPAN-Client-1.013000/t/request.t MetaCPAN-Client-1.013000/t/ua_trap.t MetaCPAN-Client-1.013000/t/api/_get.t MetaCPAN-Client-1.013000/t/api/file.t MetaCPAN-Client-1.013000/MANIFEST.SKIP MetaCPAN-Client-1.013000/t/resultset.t MetaCPAN-Client-1.013000/t/00-compile.t MetaCPAN-Client-1.013000/t/api/author.t MetaCPAN-Client-1.013000/t/api/module.t MetaCPAN-Client-1.013000/t/api/rating.t MetaCPAN-Client-1.013000/examples MetaCPAN-Client-1.013000/examples/pod.pl MetaCPAN-Client-1.013000/t/api/_search.t MetaCPAN-Client-1.013000/t/api/release.t MetaCPAN-Client-1.013000/t/api/favorite.t MetaCPAN-Client-1.013000/t/author-critic.t MetaCPAN-Client-1.013000/examples/author.pl MetaCPAN-Client-1.013000/examples/mirror.pl MetaCPAN-Client-1.013000/examples/module.pl MetaCPAN-Client-1.013000/examples/rating.pl MetaCPAN-Client-1.013000/examples/recent.pl MetaCPAN-Client-1.013000/examples/totals.pl MetaCPAN-Client-1.013000/t/lib MetaCPAN-Client-1.013000/t/lib/Functions.pm MetaCPAN-Client-1.013000/examples/complex.pl MetaCPAN-Client-1.013000/examples/release.pl MetaCPAN-Client-1.013000/examples/rev_deps.pl MetaCPAN-Client-1.013000/t/api/distribution.t MetaCPAN-Client-1.013000/examples/es_filter.pl MetaCPAN-Client-1.013000/t/release-pod-syntax.t MetaCPAN-Client-1.013000/lib/MetaCPAN MetaCPAN-Client-1.013000/lib/MetaCPAN/Client.pm MetaCPAN-Client-1.013000/t/api/_get_or_search.t MetaCPAN-Client-1.013000/t/release-pod-coverage.t MetaCPAN-Client-1.013000/examples/distribution.pl MetaCPAN-Client-1.013000/examples/recent_today.pl MetaCPAN-Client-1.013000/examples/authors_blogs.pl MetaCPAN-Client-1.013000/examples/fields-filter.pl MetaCPAN-Client-1.013000/examples/author-country.pl MetaCPAN-Client-1.013000/lib/MetaCPAN/Client MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Pod.pm MetaCPAN-Client-1.013000/examples/author_releases.pl MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/File.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Author.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Mirror.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Module.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Rating.pm MetaCPAN-Client-1.013000/examples/complex-either-and.pl MetaCPAN-Client-1.013000/examples/complex-either-not.pl MetaCPAN-Client-1.013000/examples/rev_deps-recursive.pl MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Release.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Request.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Favorite.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/ResultSet.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Role MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Role/Entity.pm MetaCPAN-Client-1.013000/lib/MetaCPAN/Client/Distribution.pm MetaCPAN-Client-1.013000/examples/complex-nested-either-and.pl MetaCPAN-Client-1.013000/examples/all_favorite_counts_per_dist.pl MetaCPAN-Client-1.013000/examples/top20_favorite_distributions.pl CPAN.pm: Building M/MI/MICKEY/MetaCPAN-Client-1.013000.tar.gz >>> C:\Perl64-5.20\bin\perl.exe Makefile.PL Warning: prerequisite Search::Elasticsearch 1.10 not found. Warning: prerequisite Search::Elasticsearch::Scroll 0 not found. Checking if your kit is complete... Looks good Generating a dmake-style Makefile Writing Makefile for MetaCPAN::Client Writing MYMETA.yml and MYMETA.json ---- Unsatisfied dependencies detected during ---- ---- MICKEY/MetaCPAN-Client-1.013000.tar.gz ---- Search::Elasticsearch::Scroll [requires] Search::Elasticsearch [requires] Running make test Delayed until after prerequisites Running test for module 'Search::Elasticsearch::Scroll' Running make for D/DR/DRTECH/Search-Elasticsearch-2.00.tar.gz Checksum for C:\cpanfly-5.20\var\cpan\sources\authors\id\D\DR\DRTECH\Search-Elasticsearch-2.00.tar.gz ok Search-Elasticsearch-2.00 Search-Elasticsearch-2.00/README Search-Elasticsearch-2.00/Changes Search-Elasticsearch-2.00/LICENSE Search-Elasticsearch-2.00/META.yml Search-Elasticsearch-2.00/MANIFEST Search-Elasticsearch-2.00/META.json Search-Elasticsearch-2.00/Makefile.PL Search-Elasticsearch-2.00/t Search-Elasticsearch-2.00/t/author-eol.t Search-Elasticsearch-2.00/t/lib Search-Elasticsearch-2.00/t/lib/es_sync.pl Search-Elasticsearch-2.00/t/lib/MockCxn.pm Search-Elasticsearch-2.00/t/60_Cxn Search-Elasticsearch-2.00/t/60_Cxn/30_http.t Search-Elasticsearch-2.00/t/author-no-tabs.t Search-Elasticsearch-2.00/t/60_Cxn/10_basic.t Search-Elasticsearch-2.00/t/10_Basic Search-Elasticsearch-2.00/t/10_Basic/10_load.t Search-Elasticsearch-2.00/t/lib/bad_cacert.pem Search-Elasticsearch-2.00/t/lib/default_cxn.pl Search-Elasticsearch-2.00/t/lib/LogCallback.pl Search-Elasticsearch-2.00/t/lib/es_sync_auth.pl Search-Elasticsearch-2.00/t/lib/es_sync_fork.pl Search-Elasticsearch-2.00/t/author-pod-syntax.t Search-Elasticsearch-2.00/t/60_Cxn/41_fork_lwp.t Search-Elasticsearch-2.00/t/60_Cxn/51_auth_lwp.t Search-Elasticsearch-2.00/t/50_Cxn_Pool Search-Elasticsearch-2.00/t/50_Cxn_Pool/70_live.t Search-Elasticsearch-2.00/t/60_Cxn/42_fork_hijk.t Search-Elasticsearch-2.00/t/70_Helper Search-Elasticsearch-2.00/t/70_Helper/50_scroll.t Search-Elasticsearch-2.00/t/70_Helper/60_reindex.t Search-Elasticsearch-2.00/t/lib/index_test_data.pl Search-Elasticsearch-2.00/t/30_Logger Search-Elasticsearch-2.00/t/30_Logger/10_explicit.t Search-Elasticsearch-2.00/t/30_Logger/20_implicit.t Search-Elasticsearch-2.00/lib/Search Search-Elasticsearch-2.00/lib/Search/Elasticsearch.pm Search-Elasticsearch-2.00/t/60_Cxn/40_fork_httptiny.t Search-Elasticsearch-2.00/t/60_Cxn/50_auth_httptiny.t Search-Elasticsearch-2.00/t/70_Helper/30_bulk_flush.t Search-Elasticsearch-2.00/t/20_Serializer Search-Elasticsearch-2.00/t/20_Serializer/11_load_xs.t Search-Elasticsearch-2.00/t/20_Serializer/12_load_pp.t Search-Elasticsearch-2.00/t/30_Logger/30_log_methods.t Search-Elasticsearch-2.00/t/30_Logger/60_trace_error.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/38_bad_sniff.t Search-Elasticsearch-2.00/t/70_Helper/40_bulk_errors.t Search-Elasticsearch-2.00/t/70_Helper/20_bulk_helpers.t Search-Elasticsearch-2.00/t/20_Serializer/encode_bulk.pl Search-Elasticsearch-2.00/t/30_Logger/40_trace_request.t Search-Elasticsearch-2.00/t/30_Logger/70_trace_comment.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/56_max_retries.t Search-Elasticsearch-2.00/t/60_Cxn/20_process_response.t Search-Elasticsearch-2.00/t/20_Serializer/14_preload_xs.t Search-Elasticsearch-2.00/t/30_Logger/50_trace_response.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/30_sniff_normal.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Bulk.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Util.pm Search-Elasticsearch-2.00/t/20_Serializer/10_load_cpanel.t Search-Elasticsearch-2.00/t/20_Serializer/encode_decode.pl Search-Elasticsearch-2.00/t/20_Serializer/encode_pretty.pl Search-Elasticsearch-2.00/t/40_Transport Search-Elasticsearch-2.00/t/40_Transport/10_tidy_request.t Search-Elasticsearch-2.00/t/40_Transport/20_send_body_as.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/10_static_normal.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/50_noping_normal.t Search-Elasticsearch-2.00/t/70_Helper/10_bulk_add_action.t Search-Elasticsearch-2.00/t/70_Helper/45_bulk_cxn_errors.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Error.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Scroll.pm Search-Elasticsearch-2.00/t/50_Cxn_Pool/31_sniff_new_nodes.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Cxn Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Cxn/LWP.pm Search-Elasticsearch-2.00/t/20_Serializer/13_preload_cpanel.t Search-Elasticsearch-2.00/t/20_Serializer/21_xs_encode_bulk.t Search-Elasticsearch-2.00/t/20_Serializer/41_pp_encode_bulk.t Search-Elasticsearch-2.00/t/40_Transport/30_perform_request.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/32_sniff_node_fails.t Search-Elasticsearch-2.00/t/90_Client_Spec Search-Elasticsearch-2.00/t/90_Client_Spec/00_print_version.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Cxn/Hijk.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Cxn.pm Search-Elasticsearch-2.00/t/50_Cxn_Pool/12_static_node_fails.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/39_sniff_max_content.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/51_noping_node_fails.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Transport.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Bulk.pm Search-Elasticsearch-2.00/t/20_Serializer/20_xs_encode_decode.t Search-Elasticsearch-2.00/t/20_Serializer/22_xs_encode_pretty.t Search-Elasticsearch-2.00/t/20_Serializer/40_pp_encode_decode.t Search-Elasticsearch-2.00/t/20_Serializer/42_pp_encode_pretty.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/34_sniff_node_timeout.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/TestServer.pm Search-Elasticsearch-2.00/t/50_Cxn_Pool/11_static_node_missing.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/37_sniff_runaway_nodes.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Cxn/Factory.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Client.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Logger.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Scroll.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Util/API Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Util/API/QS.pm Search-Elasticsearch-2.00/t/20_Serializer/31_cpanel_encode_bulk.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/13_static_node_timesout.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/17_static_runaway_nodes.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/36_sniff_nodes_starting.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/52_noping_node_timesout.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/55_noping_runaway_nodes.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Cxn/HTTPTiny.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/CxnPool.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Is_Sync.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/API Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/API/1_0.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/API/2_0.pm Search-Elasticsearch-2.00/t/50_Cxn_Pool/16_static_nodes_starting.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/33_sniff_both_nodes_fail.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/53_noping_all_nodes_fail.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/54_noping_nodes_starting.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/CxnPool Search-Elasticsearch-2.00/lib/Search/Elasticsearch/CxnPool/Sniff.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Logger Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Logger/LogAny.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/API/0_90.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Cxn Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Cxn/HTTP.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Util/API/Path.pm Search-Elasticsearch-2.00/t/20_Serializer/30_cpanel_encode_decode.t Search-Elasticsearch-2.00/t/20_Serializer/32_cpanel_encode_pretty.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/15_static_both_nodes_fail.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/CxnPool/Static.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Transport.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Serializer.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Serializer Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Serializer/JSON.pm Search-Elasticsearch-2.00/t/50_Cxn_Pool/35_sniff_both_nodes_timeout.t Search-Elasticsearch-2.00/t/50_Cxn_Pool/14_static_both_nodes_timeout.t Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0 Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0/Direct.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0 Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0/Direct.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/0_90 Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/0_90/Direct.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Client Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Client/Direct.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/CxnPool Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/CxnPool/Sniff.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Serializer/JSON Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Serializer/JSON/PP.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Serializer/JSON/XS.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/CxnPool/Static.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Serializer Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Serializer/JSON.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0/Direct Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0/Direct/Cat.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0/Direct Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0/Direct/Cat.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/CxnPool/Static Search-Elasticsearch-2.00/lib/Search/Elasticsearch/CxnPool/Static/NoPing.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Serializer/JSON/Cpanel.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0/Direct/Nodes.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0/Direct/Nodes.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Client/Direct Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/Client/Direct/Main.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0/Direct/Cluster.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0/Direct/Indices.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0/Direct/Cluster.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0/Direct/Indices.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/0_90/Direct Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/0_90/Direct/Cluster.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/0_90/Direct/Indices.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/1_0/Direct/Snapshot.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Client/2_0/Direct/Snapshot.pm Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/CxnPool/Static Search-Elasticsearch-2.00/lib/Search/Elasticsearch/Role/CxnPool/Static/NoPing.pm CPAN.pm: Building D/DR/DRTECH/Search-Elasticsearch-2.00.tar.gz >>> C:\Perl64-5.20\bin\perl.exe Makefile.PL Warning: prerequisite Hijk 0.20 not found. Warning: prerequisite Log::Any 1.02 not found. We have 0.15. Checking if your kit is complete... Looks good Generating a dmake-style Makefile Writing Makefile for Search::Elasticsearch Writing MYMETA.yml and MYMETA.json ---- Unsatisfied dependencies detected during ---- ---- DRTECH/Search-Elasticsearch-2.00.tar.gz ---- Hijk [requires] Log::Any [requires] Running make test Delayed until after prerequisites Running test for module 'Hijk' Running make for A/AV/AVAR/Hijk-0.24.tar.gz Checksum for C:\cpanfly-5.20\var\cpan\sources\authors\id\A\AV\AVAR\Hijk-0.24.tar.gz ok Hijk-0.24/ Hijk-0.24/META.json Hijk-0.24/Makefile.PL Hijk-0.24/README.md Hijk-0.24/LICENSE Hijk-0.24/inc/ Hijk-0.24/inc/Module/ Hijk-0.24/inc/Module/Install.pm Hijk-0.24/inc/Module/Install/ Hijk-0.24/inc/Module/Install/WriteAll.pm Hijk-0.24/inc/Module/Install/Metadata.pm Hijk-0.24/inc/Module/Install/Win32.pm Hijk-0.24/inc/Module/Install/Fetch.pm Hijk-0.24/inc/Module/Install/Base.pm Hijk-0.24/inc/Module/Install/CPANfile.pm Hijk-0.24/inc/Module/Install/Can.pm Hijk-0.24/inc/Module/Install/Makefile.pm Hijk-0.24/inc/Module/CPANfile/ Hijk-0.24/inc/Module/CPANfile/Prereqs.pm Hijk-0.24/inc/Module/CPANfile/Environment.pm Hijk-0.24/inc/Module/CPANfile/Requirement.pm Hijk-0.24/inc/Module/CPANfile/Prereq.pm Hijk-0.24/inc/Module/CPANfile.pm Hijk-0.24/lib/ Hijk-0.24/lib/Hijk.pm Hijk-0.24/META.yml Hijk-0.24/MANIFEST Hijk-0.24/examples/ Hijk-0.24/examples/dumbbench-thisurl.pl Hijk-0.24/examples/hijkurl Hijk-0.24/examples/bench-nginx.pl Hijk-0.24/examples/bench-chunked-response.pl Hijk-0.24/examples/bench-elasticsearch.pl Hijk-0.24/Changes Hijk-0.24/cpanfile Hijk-0.24/t/ Hijk-0.24/t/chunked-trailer-head-as-array.t Hijk-0.24/t/chunked-trailer.t Hijk-0.24/t/parse-http-connection-close-message.t Hijk-0.24/t/live-plack.t Hijk-0.24/t/live-unixis.t Hijk-0.24/t/bin/ Hijk-0.24/t/bin/split-in-chunks.psgi Hijk-0.24/t/bin/it-takes-time.psgi Hijk-0.24/t/bin/head-request.psgi Hijk-0.24/t/parse-http-message.t Hijk-0.24/t/build_http_message.t Hijk-0.24/t/live-elasticsearch.t Hijk-0.24/t/live-couchdb.t Hijk-0.24/t/live-head-request.t Hijk-0.24/t/live-connect-timeout.t Hijk-0.24/t/live-invalid-domain.t Hijk-0.24/t/live-google.t Hijk-0.24/t/select-timeout.t Hijk-0.24/t/parse-http-message-head-as-array.t Hijk-0.24/t/chunked.t Hijk-0.24/t/parse-http-no-content-len-message.t CPAN.pm: Building A/AV/AVAR/Hijk-0.24.tar.gz >>> C:\Perl64-5.20\bin\perl.exe Makefile.PL Cannot determine perl version info from lib/Hijk.pm Checking if your kit is complete... Looks good Generating a dmake-style Makefile Writing Makefile for Hijk Writing MYMETA.yml and MYMETA.json Merging cpanfile prereqs to MYMETA.yml Merging cpanfile prereqs to MYMETA.json >>> dmake cp lib/Hijk.pm blib\lib\Hijk.pm AVAR/Hijk-0.24.tar.gz dmake -- OK Running make test >>> dmake test TEST_VERBOSE=1 "C:\Perl64-5.20\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'inc', 'blib\lib', 'blib\arch')" t/*.t t/build_http_message.t ................... ok 1 ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok 15 ok 16 ok 17 ok 18 ok 19 ok 20 ok 21 ok 22 ok 23 ok 24 ok 25 ok 26 ok 27 ok 28 ok 29 ok 30 ok 31 ok 32 ok 33 ok 34 ok 35 ok 36 1..36 ok # Failed test at t/chunked-trailer-head-as-array.t line 36. # got: '0' # expected: '200' # Failed test at t/chunked-trailer-head-as-array.t line 37. # got: undef # expected: 'Wikipedia in # # chunks.' # Failed test at t/chunked-trailer-head-as-array.t line 39. # Structures begin differing at: # $got = undef # $expected = ARRAY(0x4f5498) # Failed test at t/chunked-trailer-head-as-array.t line 53. # got: '2' # expected: '64' # Failed test at t/chunked-trailer-head-as-array.t line 54. # undef # doesn't match '(?^:0 byte)' # Looks like you failed 5 tests of 5. t/chunked-trailer-head-as-array.t ........ not ok 1 not ok 2 not ok 3 not ok 4 not ok 5 1..5 Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/5 subtests # Failed test at t/chunked-trailer.t line 36. # got: '0' # expected: '200' # Failed test at t/chunked-trailer.t line 37. # got: undef # expected: 'Wikipedia in # # chunks.' # Failed test at t/chunked-trailer.t line 39. # Structures begin differing at: # $got = undef # $expected = HASH(0x4f51a8) # Failed test at t/chunked-trailer.t line 53. # got: '2' # expected: '64' # Failed test at t/chunked-trailer.t line 54. # undef # doesn't match '(?^:0 byte)' # Looks like you failed 5 tests of 5. t/chunked-trailer.t ...................... not ok 1 not ok 2 not ok 3 not ok 4 not ok 5 1..5 Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/5 subtests # Failed test at t/chunked.t line 35. # got: '0' # expected: '200' # Failed test at t/chunked.t line 36. # got: undef # expected: 'Wikipedia in # # chunks.' # Failed test at t/chunked.t line 38. # Structures begin differing at: # $got = undef # $expected = HASH(0x4f51a8) # Failed test at t/chunked.t line 53. # got: '2' # expected: '64' # Failed test at t/chunked.t line 54. # undef # doesn't match '(?^:0 byte)' # Looks like you failed 5 tests of 5. t/chunked.t .............................. not ok 1 not ok 2 not ok 3 not ok 4 not ok 5 1..5 Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/5 subtests t/live-connect-timeout.t ................. skipped: Enable live testing by setting env: TEST_LIVE=1 t/live-couchdb.t ......................... skipped: Enable live testing by setting env: TEST_LIVE=1 t/live-elasticsearch.t ................... skipped: Enable live testing by setting env: TEST_LIVE=1 t/live-google.t .......................... skipped: Enable live testing by setting env: TEST_LIVE=1 t/live-head-request.t .................... skipped: Enable live testing by setting env: TEST_LIVE=1 t/live-invalid-domain.t .................. skipped: Enable live testing by setting env: TEST_LIVE=1 t/live-plack.t ........................... skipped: Enable live testing by setting env: TEST_LIVE=1 t/live-unixis.t .......................... skipped: Enable live testing by setting env: TEST_LIVE=1 # Failed test at t/parse-http-connection-close-message.t line 35. # got: '0' # expected: '200' # Failed test at t/parse-http-connection-close-message.t line 36. # got: undef # expected: '' # Failed test at t/parse-http-connection-close-message.t line 38. # Structures begin differing at: # $got = undef # $expected = HASH(0x4f51a8) # Failed test at t/parse-http-connection-close-message.t line 48. # got: '2' # expected: '64' # Failed test at t/parse-http-connection-close-message.t line 49. # undef # doesn't match '(?^:0 byte)' # Looks like you failed 5 tests of 5. t/parse-http-connection-close-message.t .. not ok 1 not ok 2 not ok 3 not ok 4 not ok 5 1..5 Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/5 subtests # Failed test at t/parse-http-message-head-as-array.t line 33. # got: undef # expected: 'HTTP/1.1' # Failed test at t/parse-http-message-head-as-array.t line 34. # got: '0' # expected: '200' # Failed test at t/parse-http-message-head-as-array.t line 35. # got: undef # expected: 'OHAI' # Failed test at t/parse-http-message-head-as-array.t line 37. # Structures begin differing at: # $got = undef # $expected = ARRAY(0x4f51a8) # Looks like you failed 4 tests of 4. t/parse-http-message-head-as-array.t ..... not ok 1 not ok 2 not ok 3 not ok 4 1..4 Dubious, test returned 4 (wstat 1024, 0x400) Failed 4/4 subtests # Failed test at t/parse-http-message.t line 33. # got: undef # expected: 'HTTP/1.1' # Failed test at t/parse-http-message.t line 34. # got: '0' # expected: '200' # Failed test at t/parse-http-message.t line 35. # got: undef # expected: 'OHAI' # Failed test at t/parse-http-message.t line 37. # Structures begin differing at: # $got = undef # $expected = HASH(0x4f5498) # Looks like you failed 4 tests of 4. t/parse-http-message.t ................... not ok 1 not ok 2 not ok 3 not ok 4 1..4 Dubious, test returned 4 (wstat 1024, 0x400) Failed 4/4 subtests # Failed test at t/parse-http-no-content-len-message.t line 35. # got: '0' # expected: '200' # Failed test at t/parse-http-no-content-len-message.t line 36. # Structures begin differing at: # $got = undef # $expected = HASH(0x4f51a8) # Failed test at t/parse-http-no-content-len-message.t line 44. # got: undef # expected: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' # Failed test at t/parse-http-no-content-len-message.t line 47. # got: '2' # expected: '64' # Failed test at t/parse-http-no-content-len-message.t line 48. # undef # doesn't match '(?^:0 byte)' # Looks like you failed 5 tests of 5. t/parse-http-no-content-len-message.t .... not ok 1 not ok 2 not ok 3 not ok 4 not ok 5 1..5 Dubious, test returned 5 (wstat 1280, 0x500) Failed 5/5 subtests # Failed test 'handle signal during select, took=0.00s, expected at least=2.00s' # at t/select-timeout.t line 34. # Looks like you failed 1 test of 1. t/select-timeout.t ....................... not ok 1 - handle signal during select, took=0.00s, expected at least=2.00s 1..1 Dubious, test returned 1 (wstat 256, 0x100) Failed 1/1 subtests Test Summary Report ------------------- t/chunked-trailer-head-as-array.t (Wstat: 1280 Tests: 5 Failed: 5) Failed tests: 1-5 Non-zero exit status: 5 t/chunked-trailer.t (Wstat: 1280 Tests: 5 Failed: 5) Failed tests: 1-5 Non-zero exit status: 5 t/chunked.t (Wstat: 1280 Tests: 5 Failed: 5) Failed tests: 1-5 Non-zero exit status: 5 t/parse-http-connection-close-message.t (Wstat: 1280 Tests: 5 Failed: 5) Failed tests: 1-5 Non-zero exit status: 5 t/parse-http-message-head-as-array.t (Wstat: 1024 Tests: 4 Failed: 4) Failed tests: 1-4 Non-zero exit status: 4 t/parse-http-message.t (Wstat: 1024 Tests: 4 Failed: 4) Failed tests: 1-4 Non-zero exit status: 4 t/parse-http-no-content-len-message.t (Wstat: 1280 Tests: 5 Failed: 5) Failed tests: 1-5 Non-zero exit status: 5 t/select-timeout.t (Wstat: 256 Tests: 1 Failed: 1) Failed test: 1 Non-zero exit status: 1 Files=17, Tests=70, 4 wallclock secs ( 0.11 usr + 0.05 sys = 0.16 CPU) Result: FAIL Failed 8/17 test programs. 34/70 subtests failed. dmake: Error code 129, while making 'test_dynamic' AVAR/Hijk-0.24.tar.gz dmake test TEST_VERBOSE=1 -- NOT OK //hint// to see the cpan-testers results for installing this module, try: reports AVAR/Hijk-0.24.tar.gz Running test for module 'Log::Any' Running make for D/DA/DAGOLDEN/Log-Any-1.032.tar.gz Checksum for C:\cpanfly-5.20\var\cpan\sources\authors\id\D\DA\DAGOLDEN\Log-Any-1.032.tar.gz ok Log-Any-1.032/ Log-Any-1.032/Changes Log-Any-1.032/CONTRIBUTING.mkdn Log-Any-1.032/cpanfile Log-Any-1.032/dist.ini Log-Any-1.032/lib/ Log-Any-1.032/LICENSE Log-Any-1.032/Makefile.PL Log-Any-1.032/MANIFEST Log-Any-1.032/META.json Log-Any-1.032/META.yml Log-Any-1.032/perlcritic.rc Log-Any-1.032/README Log-Any-1.032/t/ Log-Any-1.032/tidyall.ini Log-Any-1.032/xt/ Log-Any-1.032/xt/author/ Log-Any-1.032/xt/release/ Log-Any-1.032/xt/release/backcompat.t Log-Any-1.032/xt/release/distmeta.t Log-Any-1.032/xt/release/minimum-version.t Log-Any-1.032/xt/release/pod-syntax.t Log-Any-1.032/xt/release/portability.t Log-Any-1.032/xt/release/test-version.t Log-Any-1.032/xt/author/00-compile.t Log-Any-1.032/xt/author/critic.t Log-Any-1.032/xt/author/pod-spell.t Log-Any-1.032/t/00-report-prereqs.dd Log-Any-1.032/t/00-report-prereqs.t Log-Any-1.032/t/default-adapter.t Log-Any-1.032/t/default-vs-test.t Log-Any-1.032/t/errors-adapter.t Log-Any-1.032/t/filescreen.t Log-Any-1.032/t/import.t Log-Any-1.032/t/inner-adapter.t Log-Any-1.032/t/log-any-test.t Log-Any-1.032/t/memory.t Log-Any-1.032/t/proxy.t Log-Any-1.032/t/replace_log.t Log-Any-1.032/t/sprintf.t Log-Any-1.032/t/valid-methods.t Log-Any-1.032/lib/Log/ Log-Any-1.032/lib/Log/Any/ Log-Any-1.032/lib/Log/Any.pm Log-Any-1.032/lib/Log/Any/Adapter/ Log-Any-1.032/lib/Log/Any/Adapter.pm Log-Any-1.032/lib/Log/Any/Manager.pm Log-Any-1.032/lib/Log/Any/Proxy/ Log-Any-1.032/lib/Log/Any/Proxy.pm Log-Any-1.032/lib/Log/Any/Test.pm Log-Any-1.032/lib/Log/Any/Proxy/Test.pm Log-Any-1.032/lib/Log/Any/Adapter/Base.pm Log-Any-1.032/lib/Log/Any/Adapter/Development.pod Log-Any-1.032/lib/Log/Any/Adapter/File.pm Log-Any-1.032/lib/Log/Any/Adapter/Null.pm Log-Any-1.032/lib/Log/Any/Adapter/Stderr.pm Log-Any-1.032/lib/Log/Any/Adapter/Stdout.pm Log-Any-1.032/lib/Log/Any/Adapter/Test.pm Log-Any-1.032/lib/Log/Any/Adapter/Util.pm CPAN.pm: Building D/DA/DAGOLDEN/Log-Any-1.032.tar.gz >>> C:\Perl64-5.20\bin\perl.exe Makefile.PL Checking if your kit is complete... Looks good Generating a dmake-style Makefile Writing Makefile for Log::Any Writing MYMETA.yml and MYMETA.json >>> dmake cp lib/Log/Any/Adapter/Base.pm blib\lib\Log\Any\Adapter\Base.pm cp lib/Log/Any/Adapter/Development.pod blib\lib\Log\Any\Adapter\Development.pod cp lib/Log/Any/Manager.pm blib\lib\Log\Any\Manager.pm cp lib/Log/Any/Test.pm blib\lib\Log\Any\Test.pm cp lib/Log/Any/Proxy/Test.pm blib\lib\Log\Any\Proxy\Test.pm cp lib/Log/Any/Proxy.pm blib\lib\Log\Any\Proxy.pm cp lib/Log/Any/Adapter/File.pm blib\lib\Log\Any\Adapter\File.pm cp lib/Log/Any/Adapter/Stdout.pm blib\lib\Log\Any\Adapter\Stdout.pm cp lib/Log/Any/Adapter.pm blib\lib\Log\Any\Adapter.pm cp lib/Log/Any/Adapter/Util.pm blib\lib\Log\Any\Adapter\Util.pm cp lib/Log/Any/Adapter/Test.pm blib\lib\Log\Any\Adapter\Test.pm cp lib/Log/Any/Adapter/Null.pm blib\lib\Log\Any\Adapter\Null.pm cp lib/Log/Any/Adapter/Stderr.pm blib\lib\Log\Any\Adapter\Stderr.pm cp lib/Log/Any.pm blib\lib\Log\Any.pm DAGOLDEN/Log-Any-1.032.tar.gz dmake -- OK Running make test >>> dmake test TEST_VERBOSE=1 "C:\Perl64-5.20\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib\lib', 'blib\arch')" t/*.t # # Versions for all modules listed in MYMETA.json (including optional ones): # # === Configure Requires === # # Module Want Have # ------------------- ---- ---- # ExtUtils::MakeMaker 6.17 7.04 # # === Build Requires === # # Module Want Have # ------------------- ---- ---- # ExtUtils::MakeMaker any 7.04 # # === Test Requires === # # Module Want Have # ------------------- ---- -------- # ExtUtils::MakeMaker any 7.04 # File::Spec any 3.47 # File::Temp any 0.2304 # Test::More any 1.001009 # # === Test Recommends === # # Module Want Have # ---------- -------- -------- # CPAN::Meta 2.120900 2.150005 # # === Runtime Requires === # # Module Want Have # ------------- ---- -------- # B any 1.48 # Carp any 1.38 # Data::Dumper any 2.154 # Exporter any 5.72 # Fcntl any 1.11 # IO::File any 1.16 # Test::Builder any 1.001009 # base any 2.18 # constant any 1.33 # strict any 1.08 # warnings any 1.23 # t/00-report-prereqs.t .. 1..1 ok 1 ok t/default-adapter.t .... 1..4 ok 1 - got error ok 2 - got debug ok 3 - got multi-line ok 4 - log is empty ok t/default-vs-test.t .... 1..4 ok 1 - got error ok 2 - got debug ok 3 - got multi-line ok 4 - log is empty ok t/errors-adapter.t ..... 1..3 ok 1 - adapter = Blah ok 2 - adapter = +My::Adapter::Blah ok 3 - adapter = '' ok t/filescreen.t ......... 1..15 ok 1 - file won't log debugs ok 2 - file will log warnings ok 3 - debug not logged to file ok 4 - warn logged to file ok 5 - file will log trace lexically ok 6 - stdout won't log debugs ok 7 - stdout will log warnings ok 8 - debug not logged to stdout ok 9 - warn logged to stdout ok 10 - stdout will log trace lexically ok 11 - stderr won't log debugs ok 12 - stderr will log warnings ok 13 - debug not logged to stderr ok 14 - warn logged to stderr ok 15 - stderr will log trace lexically ok t/import.t ............. 1..1 ok 1 - stdout ok t/inner-adapter.t ...... 1..2 ok 1 - setting inner package as adapter is OK ok 2 - logged a message via inner adapter ok t/log-any-test.t ....... 1..4 ok 1 - got error ok 2 - got debug ok 3 - got multi-line ok 4 - log is empty ok t/memory.t ............. 1..34 ok 1 - memoization - no cat ok 2 - memoization - cat ok 3 - 'Foo::log before set' isa 'Log::Any::Adapter::Null' ok 4 - 'Bar::log before set' isa 'Log::Any::Adapter::Null' ok 5 - 'Baz::log before set' isa 'Log::Any::Adapter::Null' ok 6 - 'main_log before set' isa 'Log::Any::Adapter::Null' ok 7 - 'Foo::log after first set' isa 'Log::Any::Adapter::Test' ok 8 - 'Bar::log after first set' isa 'Log::Any::Adapter::Test' ok 9 - 'Baz::log after first set' isa 'Log::Any::Adapter::Null' ok 10 - 'main_log after first set' isa 'Log::Any::Adapter::Null' ok 11 - 'Foo::log after second set' isa 'Log::Any::Adapter::Test' ok 12 - 'Bar::log after second set' isa 'Log::Any::Adapter::Test' ok 13 - 'Baz::log after second set' isa 'Log::Any::Adapter::Test' ok 14 - 'main_log after second set' isa 'Log::Any::Adapter::Test' ok 15 - Foo::log and Bar::log are different ok 16 - memoization - no cat ok 17 - memoization - cat ok 18 - Foo::log has empty buffer ok 19 - Bar::log has empty buffer ok 20 - Bar::log has empty buffer ok 21 - Foo::log and Bar::log are different objects ok 22 - Foo log appeared in memory ok 23 - Bar log appeared in memory ok 24 - main log appeared in memory ok 25 - 'Foo::log' isa 'Log::Any::Adapter::Null' ok 26 - 'Bar::log' isa 'Log::Any::Adapter::Null' ok 27 - 'Baz::log' isa 'Log::Any::Adapter::Test' ok 28 - 'main_log' isa 'Log::Any::Adapter::Test' ok 29 - 'Foo::log' isa 'Log::Any::Adapter::Null' ok 30 - 'Bar::log' isa 'Log::Any::Adapter::Null' ok 31 - 'Baz::log' isa 'Log::Any::Adapter::Null' ok 32 - 'main_log' isa 'Log::Any::Adapter::Null' ok 33 - 'Foo::log in lexical scope' isa 'Log::Any::Adapter::Test' ok 34 - 'Foo::log outside lexical scope' isa 'Log::Any::Adapter::Null' ok t/proxy.t .............. 1..5 ok 1 - prefix added ok 2 - arguments concatenated ok 3 - filter has category and numeric level ok 4 - formatter has category and numeric level ok 5 - category override ok t/replace_log.t ........ 1..1 ok 1 - main log appeared in memory ok t/sprintf.t ............ 1..1 ok 1 - message was formatted ok t/valid-methods.t ...... 1..87 ok 1 - !is_trace ok 2 - !is_debug ok 3 - !is_info ok 4 - !is_notice ok 5 - !is_warning ok 6 - !is_error ok 7 - !is_critical ok 8 - !is_alert ok 9 - !is_emergency ok 10 ok 11 - trace runs ok 12 - tracef runs ok 13 - debug runs ok 14 - debugf runs ok 15 - info runs ok 16 - infof runs ok 17 - notice runs ok 18 - noticef runs ok 19 - warning runs ok 20 - warningf runs ok 21 - error runs ok 22 - errorf runs ok 23 - critical runs ok 24 - criticalf runs ok 25 - alert runs ok 26 - alertf runs ok 27 - emergency runs ok 28 - emergencyf runs ok 29 - bad method ok 30 - !is_trace ok 31 - !is_debug ok 32 - !is_info ok 33 - !is_notice ok 34 - !is_warning ok 35 - !is_error ok 36 - !is_critical ok 37 - !is_alert ok 38 - !is_emergency ok 39 ok 40 - trace runs ok 41 - tracef runs ok 42 - debug runs ok 43 - debugf runs ok 44 - info runs ok 45 - infof runs ok 46 - notice runs ok 47 - noticef runs ok 48 - warning runs ok 49 - warningf runs ok 50 - error runs ok 51 - errorf runs ok 52 - critical runs ok 53 - criticalf runs ok 54 - alert runs ok 55 - alertf runs ok 56 - emergency runs ok 57 - emergencyf runs ok 58 - bad method ok 59 - !is_trace ok 60 - !is_debug ok 61 - !is_info ok 62 - !is_notice ok 63 - !is_warning ok 64 - !is_error ok 65 - !is_critical ok 66 - !is_alert ok 67 - !is_emergency ok 68 ok 69 - trace runs ok 70 - tracef runs ok 71 - debug runs ok 72 - debugf runs ok 73 - info runs ok 74 - infof runs ok 75 - notice runs ok 76 - noticef runs ok 77 - warning runs ok 78 - warningf runs ok 79 - error runs ok 80 - errorf runs ok 81 - critical runs ok 82 - criticalf runs ok 83 - alert runs ok 84 - alertf runs ok 85 - emergency runs ok 86 - emergencyf runs ok 87 - bad method ok All tests successful. Files=13, Tests=162, 2 wallclock secs ( 0.13 usr + 0.00 sys = 0.13 CPU) Result: PASS DAGOLDEN/Log-Any-1.032.tar.gz dmake test TEST_VERBOSE=1 -- OK PPD for Log-Any-1.032 already made Running make for D/DR/DRTECH/Search-Elasticsearch-2.00.tar.gz Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'get' Has already been unwrapped into directory C:\cpanfly-5.20\var\cpan\build\Search-Elasticsearch-2.00-cpw91J Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'make' CPAN.pm: Building D/DR/DRTECH/Search-Elasticsearch-2.00.tar.gz Warning: Prerequisite 'Hijk => 0.20' for 'DRTECH/Search-Elasticsearch-2.00.tar.gz' failed when processing 'AVAR/Hijk-0.24.tar.gz' with 'make_test => NO'. Continuing, but chances to succeed are limited. >>> dmake cp lib/Search/Elasticsearch/Client/1_0/Direct.pm blib\lib\Search\Elasticsearch\Client\1_0\Direct.pm cp lib/Search/Elasticsearch/Client/0_90/Direct.pm blib\lib\Search\Elasticsearch\Client\0_90\Direct.pm cp lib/Search/Elasticsearch/Client/1_0/Direct/Indices.pm blib\lib\Search\Elasticsearch\Client\1_0\Direct\Indices.pm cp lib/Search/Elasticsearch/Client/1_0/Direct/Snapshot.pm blib\lib\Search\Elasticsearch\Client\1_0\Direct\Snapshot.pm cp lib/Search/Elasticsearch/Client/2_0/Direct.pm blib\lib\Search\Elasticsearch\Client\2_0\Direct.pm cp lib/Search/Elasticsearch.pm blib\lib\Search\Elasticsearch.pm cp lib/Search/Elasticsearch/Client/1_0/Direct/Cluster.pm blib\lib\Search\Elasticsearch\Client\1_0\Direct\Cluster.pm cp lib/Search/Elasticsearch/Client/0_90/Direct/Indices.pm blib\lib\Search\Elasticsearch\Client\0_90\Direct\Indices.pm cp lib/Search/Elasticsearch/Client/0_90/Direct/Cluster.pm blib\lib\Search\Elasticsearch\Client\0_90\Direct\Cluster.pm cp lib/Search/Elasticsearch/Client/1_0/Direct/Nodes.pm blib\lib\Search\Elasticsearch\Client\1_0\Direct\Nodes.pm cp lib/Search/Elasticsearch/Bulk.pm blib\lib\Search\Elasticsearch\Bulk.pm cp lib/Search/Elasticsearch/Client/1_0/Direct/Cat.pm blib\lib\Search\Elasticsearch\Client\1_0\Direct\Cat.pm cp lib/Search/Elasticsearch/Cxn/HTTPTiny.pm blib\lib\Search\Elasticsearch\Cxn\HTTPTiny.pm cp lib/Search/Elasticsearch/Client/2_0/Direct/Nodes.pm blib\lib\Search\Elasticsearch\Client\2_0\Direct\Nodes.pm cp lib/Search/Elasticsearch/Cxn/Hijk.pm blib\lib\Search\Elasticsearch\Cxn\Hijk.pm cp lib/Search/Elasticsearch/Client/2_0/Direct/Snapshot.pm blib\lib\Search\Elasticsearch\Client\2_0\Direct\Snapshot.pm cp lib/Search/Elasticsearch/Client/2_0/Direct/Indices.pm blib\lib\Search\Elasticsearch\Client\2_0\Direct\Indices.pm cp lib/Search/Elasticsearch/CxnPool/Static/NoPing.pm blib\lib\Search\Elasticsearch\CxnPool\Static\NoPing.pm cp lib/Search/Elasticsearch/Client/2_0/Direct/Cat.pm blib\lib\Search\Elasticsearch\Client\2_0\Direct\Cat.pm cp lib/Search/Elasticsearch/CxnPool/Static.pm blib\lib\Search\Elasticsearch\CxnPool\Static.pm cp lib/Search/Elasticsearch/Cxn/Factory.pm blib\lib\Search\Elasticsearch\Cxn\Factory.pm cp lib/Search/Elasticsearch/Error.pm blib\lib\Search\Elasticsearch\Error.pm cp lib/Search/Elasticsearch/CxnPool/Sniff.pm blib\lib\Search\Elasticsearch\CxnPool\Sniff.pm cp lib/Search/Elasticsearch/Cxn/LWP.pm blib\lib\Search\Elasticsearch\Cxn\LWP.pm cp lib/Search/Elasticsearch/Client/2_0/Direct/Cluster.pm blib\lib\Search\Elasticsearch\Client\2_0\Direct\Cluster.pm cp lib/Search/Elasticsearch/Role/CxnPool/Static.pm blib\lib\Search\Elasticsearch\Role\CxnPool\Static.pm cp lib/Search/Elasticsearch/Role/Client/Direct/Main.pm blib\lib\Search\Elasticsearch\Role\Client\Direct\Main.pm cp lib/Search/Elasticsearch/Role/Cxn.pm blib\lib\Search\Elasticsearch\Role\Cxn.pm cp lib/Search/Elasticsearch/Logger/LogAny.pm blib\lib\Search\Elasticsearch\Logger\LogAny.pm cp lib/Search/Elasticsearch/Role/Client.pm blib\lib\Search\Elasticsearch\Role\Client.pm cp lib/Search/Elasticsearch/Role/CxnPool.pm blib\lib\Search\Elasticsearch\Role\CxnPool.pm cp lib/Search/Elasticsearch/Role/Client/Direct.pm blib\lib\Search\Elasticsearch\Role\Client\Direct.pm cp lib/Search/Elasticsearch/Role/Cxn/HTTP.pm blib\lib\Search\Elasticsearch\Role\Cxn\HTTP.pm cp lib/Search/Elasticsearch/Role/API/1_0.pm blib\lib\Search\Elasticsearch\Role\API\1_0.pm cp lib/Search/Elasticsearch/Role/API/2_0.pm blib\lib\Search\Elasticsearch\Role\API\2_0.pm cp lib/Search/Elasticsearch/Role/CxnPool/Sniff.pm blib\lib\Search\Elasticsearch\Role\CxnPool\Sniff.pm cp lib/Search/Elasticsearch/Role/API/0_90.pm blib\lib\Search\Elasticsearch\Role\API\0_90.pm cp lib/Search/Elasticsearch/Role/Bulk.pm blib\lib\Search\Elasticsearch\Role\Bulk.pm cp lib/Search/Elasticsearch/Role/Is_Sync.pm blib\lib\Search\Elasticsearch\Role\Is_Sync.pm cp lib/Search/Elasticsearch/Serializer/JSON.pm blib\lib\Search\Elasticsearch\Serializer\JSON.pm cp lib/Search/Elasticsearch/Scroll.pm blib\lib\Search\Elasticsearch\Scroll.pm cp lib/Search/Elasticsearch/Role/CxnPool/Static/NoPing.pm blib\lib\Search\Elasticsearch\Role\CxnPool\Static\NoPing.pm cp lib/Search/Elasticsearch/Role/Serializer.pm blib\lib\Search\Elasticsearch\Role\Serializer.pm cp lib/Search/Elasticsearch/Serializer/JSON/XS.pm blib\lib\Search\Elasticsearch\Serializer\JSON\XS.pm cp lib/Search/Elasticsearch/Role/Transport.pm blib\lib\Search\Elasticsearch\Role\Transport.pm cp lib/Search/Elasticsearch/Role/Scroll.pm blib\lib\Search\Elasticsearch\Role\Scroll.pm cp lib/Search/Elasticsearch/Serializer/JSON/Cpanel.pm blib\lib\Search\Elasticsearch\Serializer\JSON\Cpanel.pm cp lib/Search/Elasticsearch/TestServer.pm blib\lib\Search\Elasticsearch\TestServer.pm cp lib/Search/Elasticsearch/Serializer/JSON/PP.pm blib\lib\Search\Elasticsearch\Serializer\JSON\PP.pm cp lib/Search/Elasticsearch/Role/Serializer/JSON.pm blib\lib\Search\Elasticsearch\Role\Serializer\JSON.pm cp lib/Search/Elasticsearch/Role/Logger.pm blib\lib\Search\Elasticsearch\Role\Logger.pm cp lib/Search/Elasticsearch/Util/API/QS.pm blib\lib\Search\Elasticsearch\Util\API\QS.pm cp lib/Search/Elasticsearch/Transport.pm blib\lib\Search\Elasticsearch\Transport.pm cp lib/Search/Elasticsearch/Util.pm blib\lib\Search\Elasticsearch\Util.pm cp lib/Search/Elasticsearch/Util/API/Path.pm blib\lib\Search\Elasticsearch\Util\API\Path.pm DRTECH/Search-Elasticsearch-2.00.tar.gz dmake -- OK Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'test' Running make test >>> dmake test TEST_VERBOSE=1 "C:\Perl64-5.20\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib\lib', 'blib\arch')" t/*.t t/10_Basic/*.t t/20_Serializer/*.t t/30_Logger/*.t t/40_Transport/*.t t/50_Cxn_Pool/*.t t/60_Cxn/*.t t/70_Helper/*.t t/90_Client_Spec/*.t t/10_Basic/10_load.t .......................... ok 1 - use Search::Elasticsearch; ok 2 - new client ok 3 - client does Search::Elasticsearch::Role::Client::Direct ok 4 - 'transport' isa 'Search::Elasticsearch::Transport' ok 5 - 'cxn_pool' isa 'Search::Elasticsearch::CxnPool::Static' ok 6 - 'cxn_factory' isa 'Search::Elasticsearch::Cxn::Factory' ok 7 - 'logger' isa 'Search::Elasticsearch::Logger::LogAny' 1..7 ok t/20_Serializer/10_load_cpanel.t .............. ok 1 - 'Cpanel' isa 'Cpanel::JSON::XS' 1..1 ok t/20_Serializer/11_load_xs.t .................. ok 1 - 'JSON::XS' isa 'JSON::XS' 1..1 ok t/20_Serializer/12_load_pp.t .................. ok 1 - 'JSON::PP' isa 'JSON::PP' 1..1 ok t/20_Serializer/13_preload_cpanel.t ........... ok 1 - 'Cpanel' isa 'Cpanel::JSON::XS' 1..1 ok t/20_Serializer/14_preload_xs.t ............... ok 1 - 'JSON::XS' isa 'JSON::XS' 1..1 ok t/20_Serializer/20_xs_encode_decode.t ......... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::XS' ok 2 - Enc - No args returns undef ok 3 - Enc - Undef returns undef ok 4 - Enc - Empty string returns same ok 5 - Enc - String returns same ok 6 - Enc - Unicode string returns encoded ok 7 - Enc - Unicode bytes returns same ok 8 - Enc - Hash returns JSON ok 9 - Enc - Array returns JSON ok 10 - Enc - scalar ref dies 1..10 ok t/20_Serializer/21_xs_encode_bulk.t ........... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::XS' ok 2 - Mime type is JSON ok 3 - Enc - No args returns undef ok 4 - Enc - Undef returns undef ok 5 - Enc - Empty string returns same ok 6 - Enc - String returns same ok 7 - Enc - Unicode string returns encoded ok 8 - Enc - Unicode bytes returns same ok 9 - Enc - Hash returns JSON ok 10 - Enc - Array returns JSON ok 11 - Enc - scalar ref dies ok 12 - Dec - No args returns undef ok 13 - Dec - Undef returns undef ok 14 - Dec - Empty string returns same ok 15 - Dec - String returns same ok 16 - Dec - Unicode bytes returns decoded ok 17 - Dec - Unicode string returns same ok 18 - Dec - JSON returns hash ok 19 - Dec - JSON returns array ok 20 - Dec - invalid JSON dies 1..20 ok t/20_Serializer/22_xs_encode_pretty.t ......... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::XS' ok 2 - Mime type is JSON ok 3 - Enc - No args returns undef ok 4 - Enc - Undef returns undef ok 5 - Enc - Empty string returns same ok 6 - Enc - String returns same ok 7 - Enc - Unicode string returns encoded ok 8 - Enc - Unicode bytes returns same ok 9 - Enc - Hash returns JSON ok 10 - Enc - Array returns JSON ok 11 - Enc - scalar ref dies ok 12 - Dec - No args returns undef ok 13 - Dec - Undef returns undef ok 14 - Dec - Empty string returns same ok 15 - Dec - String returns same ok 16 - Dec - Unicode bytes returns decoded ok 17 - Dec - Unicode string returns same ok 18 - Dec - JSON returns hash ok 19 - Dec - JSON returns array ok 20 - Dec - invalid JSON dies 1..20 ok t/20_Serializer/30_cpanel_encode_decode.t ..... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::Cpanel' ok 2 - Enc - No args returns undef ok 3 - Enc - Undef returns undef ok 4 - Enc - Empty string returns same ok 5 - Enc - String returns same ok 6 - Enc - Unicode string returns encoded ok 7 - Enc - Unicode bytes returns same ok 8 - Enc - Hash returns JSON ok 9 - Enc - Array returns JSON ok 10 - Enc - scalar ref dies 1..10 ok t/20_Serializer/31_cpanel_encode_bulk.t ....... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::Cpanel' ok 2 - Mime type is JSON ok 3 - Enc - No args returns undef ok 4 - Enc - Undef returns undef ok 5 - Enc - Empty string returns same ok 6 - Enc - String returns same ok 7 - Enc - Unicode string returns encoded ok 8 - Enc - Unicode bytes returns same ok 9 - Enc - Hash returns JSON ok 10 - Enc - Array returns JSON ok 11 - Enc - scalar ref dies ok 12 - Dec - No args returns undef ok 13 - Dec - Undef returns undef ok 14 - Dec - Empty string returns same ok 15 - Dec - String returns same ok 16 - Dec - Unicode bytes returns decoded ok 17 - Dec - Unicode string returns same ok 18 - Dec - JSON returns hash ok 19 - Dec - JSON returns array ok 20 - Dec - invalid JSON dies 1..20 ok t/20_Serializer/32_cpanel_encode_pretty.t ..... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::Cpanel' ok 2 - Mime type is JSON ok 3 - Enc - No args returns undef ok 4 - Enc - Undef returns undef ok 5 - Enc - Empty string returns same ok 6 - Enc - String returns same ok 7 - Enc - Unicode string returns encoded ok 8 - Enc - Unicode bytes returns same ok 9 - Enc - Hash returns JSON ok 10 - Enc - Array returns JSON ok 11 - Enc - scalar ref dies ok 12 - Dec - No args returns undef ok 13 - Dec - Undef returns undef ok 14 - Dec - Empty string returns same ok 15 - Dec - String returns same ok 16 - Dec - Unicode bytes returns decoded ok 17 - Dec - Unicode string returns same ok 18 - Dec - JSON returns hash ok 19 - Dec - JSON returns array ok 20 - Dec - invalid JSON dies 1..20 ok t/20_Serializer/40_pp_encode_decode.t ......... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::PP' ok 2 - Enc - No args returns undef ok 3 - Enc - Undef returns undef ok 4 - Enc - Empty string returns same ok 5 - Enc - String returns same ok 6 - Enc - Unicode string returns encoded ok 7 - Enc - Unicode bytes returns same ok 8 - Enc - Hash returns JSON ok 9 - Enc - Array returns JSON ok 10 - Enc - scalar ref dies 1..10 ok t/20_Serializer/41_pp_encode_bulk.t ........... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::PP' ok 2 - Mime type is JSON ok 3 - Enc - No args returns undef ok 4 - Enc - Undef returns undef ok 5 - Enc - Empty string returns same ok 6 - Enc - String returns same ok 7 - Enc - Unicode string returns encoded ok 8 - Enc - Unicode bytes returns same ok 9 - Enc - Hash returns JSON ok 10 - Enc - Array returns JSON ok 11 - Enc - scalar ref dies ok 12 - Dec - No args returns undef ok 13 - Dec - Undef returns undef ok 14 - Dec - Empty string returns same ok 15 - Dec - String returns same ok 16 - Dec - Unicode bytes returns decoded ok 17 - Dec - Unicode string returns same ok 18 - Dec - JSON returns hash ok 19 - Dec - JSON returns array ok 20 - Dec - invalid JSON dies 1..20 ok t/20_Serializer/42_pp_encode_pretty.t ......... ok 1 - 'Serializer' isa 'Search::Elasticsearch::Serializer::JSON::PP' ok 2 - Mime type is JSON ok 3 - Enc - No args returns undef ok 4 - Enc - Undef returns undef ok 5 - Enc - Empty string returns same ok 6 - Enc - String returns same ok 7 - Enc - Unicode string returns encoded ok 8 - Enc - Unicode bytes returns same ok 9 - Enc - Hash returns JSON ok 10 - Enc - Array returns JSON ok 11 - Enc - scalar ref dies ok 12 - Dec - No args returns undef ok 13 - Dec - Undef returns undef ok 14 - Dec - Empty string returns same ok 15 - Dec - String returns same ok 16 - Dec - Unicode bytes returns decoded ok 17 - Dec - Unicode string returns same ok 18 - Dec - JSON returns hash ok 19 - Dec - JSON returns array ok 20 - Dec - invalid JSON dies 1..20 ok Current cxns: ["http://localhost:9200"] Forcing ping before next use on all live cxns Ping [http://localhost:9200] before next request t/30_Logger/10_explicit.t ..................... ok 1 - 'Default Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 2 - Log as ok 3 - Trace as ok 4 - 'Default - Log to NULL' isa 'Log::Any::Adapter::Null' ok 5 - 'Default - Trace to NULL' isa 'Log::Any::Adapter::Null' ok 6 - 'Std Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 7 - 'Std - Log to Stderr' isa 'Log::Any::Adapter::Stderr' ok 8 - 'Std - Trace to Stdout' isa 'Log::Any::Adapter::Stdout' ok 9 - 'File Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 10 - 'File - Log to file' isa 'Log::Any::Adapter::File' ok 11 - 'File - Trace to file' isa 'Log::Any::Adapter::File' 1..11 ok Current cxns: ["http://localhost:9200"] Forcing ping before next use on all live cxns Ping [http://localhost:9200] before next request t/30_Logger/20_implicit.t ..................... Current cxns: ["http://localhost:9200"] Forcing ping before next use on all live cxns Ping [http://localhost:9200] before next request ok 1 - 'Default Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 2 - 'Default - Log to Stdout' isa 'Log::Any::Adapter::Stdout' ok 3 - 'Default - Trace to Stderr' isa 'Log::Any::Adapter::Stderr' ok 4 - 'Override Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 5 - 'Override - Log to Stderr' isa 'Log::Any::Adapter::Stderr' ok 6 - 'Override - Trace to Stdout' isa 'Log::Any::Adapter::Stdout' 1..6 ok t/30_Logger/30_log_methods.t .................. ok 1 - 'Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 2 - debug ok 3 - debug - method ok 4 - debug - format ok 5 - debugf ok 6 - debugf - method ok 7 - debugf - format ok 8 - is_debug ok 9 - is_debug - method ok 10 - is_debug - format ok 11 - info ok 12 - info - method ok 13 - info - format ok 14 - infof ok 15 - infof - method ok 16 - infof - format ok 17 - is_info ok 18 - is_info - method ok 19 - is_info - format ok 20 - warning ok 21 - warning - method ok 22 - warning - format ok 23 - warningf ok 24 - warningf - method ok 25 - warningf - format ok 26 - is_warning ok 27 - is_warning - method ok 28 - is_warning - format ok 29 - error ok 30 - error - method ok 31 - error - format ok 32 - errorf ok 33 - errorf - method ok 34 - errorf - format ok 35 - is_error ok 36 - is_error - method ok 37 - is_error - format ok 38 - critical ok 39 - critical - method ok 40 - critical - format ok 41 - criticalf ok 42 - criticalf - method ok 43 - criticalf - format ok 44 - is_critical ok 45 - is_critical - method ok 46 - is_critical - format ok 47 - trace ok 48 - trace - method ok 49 - trace - format ok 50 - tracef ok 51 - tracef - method ok 52 - tracef - format ok 53 - is_trace ok 54 - is_trace - method ok 55 - is_trace - format ok 56 - throw_error ok 57 - throw_error - vars ok 58 - throw_error - method ok 59 - throw_error - format ok 60 - throw_critical ok 61 - throw_critical - vars ok 62 - throw_critical - method ok 63 - throw_critical - format 1..63 ok t/30_Logger/40_trace_request.t ................ ok 1 - Client ok 2 - 'Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 3 - Does Search::Elasticsearch::Role::Cxn ok 4 - No body ok 5 - No body - format ok 6 - Body ok 7 - Body - format ok 8 - Bulk ok 9 - Bulk - format ok 10 - Body string ok 11 - Body string - format 1..11 ok t/30_Logger/50_trace_response.t ............... ok 1 - Client ok 2 - 'Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 3 - Does Search::Elasticsearch::Role::Cxn ok 4 - No body ok 5 - No body - format ok 6 - Body ok 7 - Body - format 1..7 ok t/30_Logger/60_trace_error.t .................. ok 1 - Client ok 2 - 'Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 3 - Does Search::Elasticsearch::Role::Cxn ok 4 - No body ok 5 - No body - format ok 6 - Body ok 7 - Body - format 1..7 ok t/30_Logger/70_trace_comment.t ................ ok 1 - Client ok 2 - 'Logger' isa 'Search::Elasticsearch::Logger::LogAny' ok 3 - Does Search::Elasticsearch::Role::Cxn ok 4 - Comment ok 5 - Comment - format 1..5 ok t/40_Transport/10_tidy_request.t .............. ok 1 - An object of class 'Search::Elasticsearch::Transport' isa 'Search::Elasticsearch::Transport' ok 2 - Empty ok 3 - Method ok 4 - Path ok 5 - QS ok 6 - Body - Str ok 7 - Body - Hash ok 8 - Body - Array ok 9 - Body - Bulk ok 10 - MimeType 1..10 ok t/40_Transport/20_send_body_as.t .............. ok 1 - GET-empty ok 2 - GET-body ok 3 - POST-empty ok 4 - POST-eody ok 5 - source-empty ok 6 - source-body 1..6 ok t/40_Transport/30_perform_request.t ........... ok 1 - Simple request ok 2 - Request error ok 3 - Timeout error ok 4 - Timeout resolved ok 5 - Retried connection error ok 6 - Cxn then bad ping ok 7 - Initial bad ping 1..7 ok t/50_Cxn_Pool/10_static_normal.t .............. ok 1 - Ping before first use 1..1 ok t/50_Cxn_Pool/11_static_node_missing.t ........ ok 1 - One node missing ok 2 - Missing node joined - 2 1..2 ok t/50_Cxn_Pool/12_static_node_fails.t .......... ok 1 - One node throws Cxn ok 2 - Failed node recovers 1..2 ok t/50_Cxn_Pool/13_static_node_timesout.t ....... ok 1 - One node throws Timeout then recovers 1..1 ok t/50_Cxn_Pool/14_static_both_nodes_timeout.t .. ok 1 - One node throws Timeout, causing Timeout on other node 1..1 ok t/50_Cxn_Pool/15_static_both_nodes_fail.t ..... ok 1 - Both nodes fails then recover 1..1 ok t/50_Cxn_Pool/16_static_nodes_starting.t ...... ok 1 - Nodes initially unavailable 1..1 ok t/50_Cxn_Pool/17_static_runaway_nodes.t ....... ok 1 - Runaway nodes 1..1 ok t/50_Cxn_Pool/30_sniff_normal.t ............... ok 1 - Sniff before first use 1..1 ok t/50_Cxn_Pool/31_sniff_new_nodes.t ............ ok 1 - Sniff new nodes 1..1 ok t/50_Cxn_Pool/32_sniff_node_fails.t ........... ok 1 - Sniff after failure 1..1 ok t/50_Cxn_Pool/33_sniff_both_nodes_fail.t ...... ok 1 - Sniff after all nodes fail 1..1 ok t/50_Cxn_Pool/34_sniff_node_timeout.t ......... ok 1 - Sniff after timeout 1..1 ok t/50_Cxn_Pool/35_sniff_both_nodes_timeout.t ... ok 1 - Sniff after both nodes timeout 1..1 ok t/50_Cxn_Pool/36_sniff_nodes_starting.t ....... ok 1 - Sniff unavailable nodes while starting up 1..1 ok t/50_Cxn_Pool/37_sniff_runaway_nodes.t ........ ok 1 - Runaway nodes 1..1 ok t/50_Cxn_Pool/38_bad_sniff.t .................. ok 1 - Missing http_address 1..1 ok t/50_Cxn_Pool/39_sniff_max_content.t .......... ok 1 - Dynamic max content length ok 2 - Dynamic max content length 1..2 ok t/50_Cxn_Pool/50_noping_normal.t .............. ok 1 - Round robin 1..1 ok t/50_Cxn_Pool/51_noping_node_fails.t .......... ok 1 - Node fails and recovers 1..1 ok t/50_Cxn_Pool/52_noping_node_timesout.t ....... ok 1 - Node timesout and recovers 1..1 ok t/50_Cxn_Pool/53_noping_all_nodes_fail.t ...... ok 1 - All nodes fail and recover 1..1 ok t/50_Cxn_Pool/54_noping_nodes_starting.t ...... ok 1 - Nodes starting 1..1 ok t/50_Cxn_Pool/55_noping_runaway_nodes.t ....... ok 1 - Runaway nodes 1..1 ok t/50_Cxn_Pool/56_max_retries.t ................ ok 1 - Max retries 1..1 ok t/50_Cxn_Pool/70_live.t ....................... skipped: No Elasticsearch test node available t/60_Cxn/10_basic.t ........................... ok 1 - Does Search::Elasticsearch::Role::Cxn ok 2 - Cxn is live ok 3 - No ping failures ok 4 - No ping scheduled ok 5 - Cxn is dead ok 6 - Has ping failure ok 7 - Ping scheduled ok 8 - Dead timeout x 1 ok 9 - Cxn still dead ok 10 - Has 2 ping failures ok 11 - Ping scheduled ok 12 - Dead timeout x 2 ok 13 - Cxn still dead ok 14 - Has 102 ping failures ok 15 - Ping scheduled ok 16 - Max dead timeout ok 17 - Cxn is dead after force ping ok 18 - Force ping has no ping failures ok 19 - Next ping scheduled for now 1..19 ok t/60_Cxn/20_process_response.t ................ ok 1 - Does Search::Elasticsearch::Role::Cxn ok 2 - OK GET - code ok 3 - OK GET - body ok 4 - OK GET Text body - code ok 5 - OK GET Text body - body ok 6 - OK GET Empty body - code ok 7 - OK GET Empty body - body ok 8 - OK HEAD - code ok 9 - OK HEAD - body ok 10 - Missing GET ok 11 - Missing GET - code ok 12 - Missing GET - body ok 13 - Missing HEAD - code ok 14 - Missing HEAD - body ok 15 - Request error ok 16 - Conflict error v1 ok 17 - Error has current version v1 ok 18 - Conflict error v2 ok 19 - Error has current version v2 ok 20 - Timeout error 1..20 ok t/60_Cxn/30_http.t ............................ ok 1 - Default - default_headers ok 2 - Default - host ok 3 - Default - port ok 4 - Default - scheme ok 5 - Default - uri ok 6 - Default - userinfo ok 7 - Host - default_headers ok 8 - Host - host ok 9 - Host - port ok 10 - Host - scheme ok 11 - Host - uri ok 12 - Host - userinfo ok 13 - Host:Port - default_headers ok 14 - Host:Port - host ok 15 - Host:Port - port ok 16 - Host:Port - scheme ok 17 - Host:Port - uri ok 18 - Host:Port - userinfo ok 19 - HTTPS - default_headers ok 20 - HTTPS - host ok 21 - HTTPS - port ok 22 - HTTPS - scheme ok 23 - HTTPS - uri ok 24 - HTTPS - userinfo ok 25 - Path - default_headers ok 26 - Path - host ok 27 - Path - port ok 28 - Path - scheme ok 29 - Path - uri ok 30 - Path - userinfo ok 31 - Userinfo - default_headers ok 32 - Userinfo - host ok 33 - Userinfo - port ok 34 - Userinfo - scheme ok 35 - Userinfo - uri ok 36 - Userinfo - userinfo ok 37 - HTTPS option - default_headers ok 38 - HTTPS option - host ok 39 - HTTPS option - port ok 40 - HTTPS option - scheme ok 41 - HTTPS option - uri ok 42 - HTTPS option - userinfo ok 43 - HTTPS option with settings - default_headers ok 44 - HTTPS option with settings - host ok 45 - HTTPS option with settings - port ok 46 - HTTPS option with settings - scheme ok 47 - HTTPS option with settings - uri ok 48 - HTTPS option with settings - userinfo ok 49 - Port option - default_headers ok 50 - Port option - host ok 51 - Port option - port ok 52 - Port option - scheme ok 53 - Port option - uri ok 54 - Port option - userinfo ok 55 - Port option with settings - default_headers ok 56 - Port option with settings - host ok 57 - Port option with settings - port ok 58 - Port option with settings - scheme ok 59 - Port option with settings - uri ok 60 - Port option with settings - userinfo ok 61 - Path option - default_headers ok 62 - Path option - host ok 63 - Path option - port ok 64 - Path option - scheme ok 65 - Path option - uri ok 66 - Path option - userinfo ok 67 - Path option with settings - default_headers ok 68 - Path option with settings - host ok 69 - Path option with settings - port ok 70 - Path option with settings - scheme ok 71 - Path option with settings - uri ok 72 - Path option with settings - userinfo ok 73 - Userinfo option - default_headers ok 74 - Userinfo option - host ok 75 - Userinfo option - port ok 76 - Userinfo option - scheme ok 77 - Userinfo option - uri ok 78 - Userinfo option - userinfo ok 79 - Userinfo option with settings - default_headers ok 80 - Userinfo option with settings - host ok 81 - Userinfo option with settings - port ok 82 - Userinfo option with settings - scheme ok 83 - Userinfo option with settings - uri ok 84 - Userinfo option with settings - userinfo ok 85 - Deflate option - default_headers ok 86 - Deflate option - host ok 87 - Deflate option - port ok 88 - Deflate option - scheme ok 89 - Deflate option - uri ok 90 - Deflate option - userinfo ok 91 - Hash host - default_headers ok 92 - Hash host - host ok 93 - Hash host - port ok 94 - Hash host - scheme ok 95 - Hash host - uri ok 96 - Hash host - userinfo ok 97 - Hash port - default_headers ok 98 - Hash port - host ok 99 - Hash port - port ok 100 - Hash port - scheme ok 101 - Hash port - uri ok 102 - Hash port - userinfo ok 103 - Hash path - default_headers ok 104 - Hash path - host ok 105 - Hash path - port ok 106 - Hash path - scheme ok 107 - Hash path - uri ok 108 - Hash path - userinfo ok 109 - Default URI ok 110 - URI with path ok 111 - default_qs_params ok 112 - default_qs_params and qs - 1 ok 113 - default_qs_params and qs - 2 ok 114 - default_qs_params and qs - 3 ok 115 - default_qs_params overwritten 1..115 ok t/60_Cxn/40_fork_httptiny.t ................... skipped: No Elasticsearch test node available t/60_Cxn/41_fork_lwp.t ........................ skipped: No Elasticsearch test node available t/60_Cxn/42_fork_hijk.t ....................... skipped: No Elasticsearch test node available t/60_Cxn/50_auth_httptiny.t ................... skipped: HTTPTiny - No https server specified in ES_SSL t/60_Cxn/51_auth_lwp.t ........................ skipped: LWP - No https server specified in ES_SSL t/70_Helper/10_bulk_add_action.t .............. skipped: No Elasticsearch test node available t/70_Helper/20_bulk_helpers.t ................. skipped: No Elasticsearch test node available t/70_Helper/30_bulk_flush.t ................... skipped: No Elasticsearch test node available t/70_Helper/40_bulk_errors.t .................. skipped: No Elasticsearch test node available t/70_Helper/45_bulk_cxn_errors.t .............. ok 1 # skip IO::Socket::IP doesn't respect timeout: https://rt.cpan.org/Ticket/Display.html?id=103878 ok 2 # skip IO::Socket::IP doesn't respect timeout: https://rt.cpan.org/Ticket/Display.html?id=103878 ok 3 # skip IO::Socket::IP doesn't respect timeout: https://rt.cpan.org/Ticket/Display.html?id=103878 1..3 ok t/70_Helper/50_scroll.t ....................... skipped: No Elasticsearch test node available t/70_Helper/60_reindex.t ...................... skipped: No Elasticsearch test node available t/90_Client_Spec/00_print_version.t ........... skipped: No Elasticsearch test node available t/author-eol.t ................................ skipped: these tests are for testing by the author t/author-no-tabs.t ............................ skipped: these tests are for testing by the author t/author-pod-syntax.t ......................... skipped: these tests are for testing by the author All tests successful. Files=70, Tests=480, 40 wallclock secs ( 0.25 usr + 0.09 sys = 0.34 CPU) Result: PASS DRTECH/Search-Elasticsearch-2.00.tar.gz Tests succeeded but one dependency not OK (Hijk) DRTECH/Search-Elasticsearch-2.00.tar.gz [dependencies] -- NA Running test for module 'Search::Elasticsearch' Running make for D/DR/DRTECH/Search-Elasticsearch-2.00.tar.gz Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'get' Has already been unwrapped into directory C:\cpanfly-5.20\var\cpan\build\Search-Elasticsearch-2.00-cpw91J Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'make' Warning: Prerequisite 'Hijk => 0.20' for 'DRTECH/Search-Elasticsearch-2.00.tar.gz' failed when processing 'AVAR/Hijk-0.24.tar.gz' with 'make_test => NO'. Continuing, but chances to succeed are limited. Has already been made Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'test' Running make test Has already been tested within this command Running make for M/MI/MICKEY/MetaCPAN-Client-1.013000.tar.gz Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'get' Has already been unwrapped into directory C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'make' CPAN.pm: Building M/MI/MICKEY/MetaCPAN-Client-1.013000.tar.gz Warning: Prerequisite 'Search::Elasticsearch => 1.10' for 'MICKEY/MetaCPAN-Client-1.013000.tar.gz' failed when processing 'DRTECH/Search-Elasticsearch-2.00.tar.gz' with 'make_test => NO one dependency not OK (Hijk)'. Continuing, but chances to succeed are limited. Warning: Prerequisite 'Search::Elasticsearch::Scroll => 0' for 'MICKEY/MetaCPAN-Client-1.013000.tar.gz' failed when processing 'DRTECH/Search-Elasticsearch-2.00.tar.gz' with 'make_test => NO one dependency not OK (Hijk)'. Continuing, but chances to succeed are limited. >>> dmake cp lib/MetaCPAN/Client/File.pm blib\lib\MetaCPAN\Client\File.pm cp lib/MetaCPAN/Client/ResultSet.pm blib\lib\MetaCPAN\Client\ResultSet.pm cp lib/MetaCPAN/Client/Author.pm blib\lib\MetaCPAN\Client\Author.pm cp lib/MetaCPAN/Client.pm blib\lib\MetaCPAN\Client.pm cp lib/MetaCPAN/Client/Mirror.pm blib\lib\MetaCPAN\Client\Mirror.pm cp lib/MetaCPAN/Client/Request.pm blib\lib\MetaCPAN\Client\Request.pm cp lib/MetaCPAN/Client/Favorite.pm blib\lib\MetaCPAN\Client\Favorite.pm cp lib/MetaCPAN/Client/Module.pm blib\lib\MetaCPAN\Client\Module.pm cp lib/MetaCPAN/Client/Pod.pm blib\lib\MetaCPAN\Client\Pod.pm cp lib/MetaCPAN/Client/Role/Entity.pm blib\lib\MetaCPAN\Client\Role\Entity.pm cp lib/MetaCPAN/Client/Distribution.pm blib\lib\MetaCPAN\Client\Distribution.pm cp lib/MetaCPAN/Client/Rating.pm blib\lib\MetaCPAN\Client\Rating.pm cp lib/MetaCPAN/Client/Release.pm blib\lib\MetaCPAN\Client\Release.pm MICKEY/MetaCPAN-Client-1.013000.tar.gz dmake -- OK Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'test' Running make test >>> dmake test TEST_VERBOSE=1 "C:\Perl64-5.20\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib\lib', 'blib\arch')" t/*.t t/api/*.t # Failed test 'MetaCPAN/Client.pm loaded ok' # at t/00-compile.t line 49. # got: '512' # expected: '0' Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at -e line 1. # Failed test 'MetaCPAN/Client/Request.pm loaded ok' # at t/00-compile.t line 49. # got: '512' # expected: '0' Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at -e line 1. # Looks like you failed 2 tests of 13. t/00-compile.t ............ 1..13 not ok 1 - MetaCPAN/Client.pm loaded ok ok 2 - MetaCPAN/Client/Author.pm loaded ok ok 3 - MetaCPAN/Client/Distribution.pm loaded ok ok 4 - MetaCPAN/Client/Favorite.pm loaded ok ok 5 - MetaCPAN/Client/File.pm loaded ok ok 6 - MetaCPAN/Client/Mirror.pm loaded ok ok 7 - MetaCPAN/Client/Module.pm loaded ok ok 8 - MetaCPAN/Client/Pod.pm loaded ok ok 9 - MetaCPAN/Client/Rating.pm loaded ok ok 10 - MetaCPAN/Client/Release.pm loaded ok not ok 11 - MetaCPAN/Client/Request.pm loaded ok ok 12 - MetaCPAN/Client/ResultSet.pm loaded ok ok 13 - MetaCPAN/Client/Role/Entity.pm loaded ok Dubious, test returned 2 (wstat 512, 0x200) Failed 2/13 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/_get.t line 8. BEGIN failed--compilation aborted at t/api/_get.t line 8. t/api/_get.t .............. 1..13 Dubious, test returned 2 (wstat 512, 0x200) Failed 13/13 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/_get_or_search.t line 8. BEGIN failed--compilation aborted at t/api/_get_or_search.t line 8. t/api/_get_or_search.t .... 1..10 Dubious, test returned 2 (wstat 512, 0x200) Failed 10/10 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/_search.t line 8. BEGIN failed--compilation aborted at t/api/_search.t line 8. t/api/_search.t ........... 1..19 Dubious, test returned 2 (wstat 512, 0x200) Failed 19/19 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/author.t line 8. BEGIN failed--compilation aborted at t/api/author.t line 8. t/api/author.t ............ Dubious, test returned 2 (wstat 512, 0x200) No subtests run Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/distribution.t line 8. BEGIN failed--compilation aborted at t/api/distribution.t line 8. t/api/distribution.t ...... 1..5 Dubious, test returned 2 (wstat 512, 0x200) Failed 5/5 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/favorite.t line 8. BEGIN failed--compilation aborted at t/api/favorite.t line 8. t/api/favorite.t .......... 1..10 Dubious, test returned 2 (wstat 512, 0x200) Failed 10/10 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/file.t line 8. BEGIN failed--compilation aborted at t/api/file.t line 8. t/api/file.t .............. 1..10 Dubious, test returned 2 (wstat 512, 0x200) Failed 10/10 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/module.t line 8. BEGIN failed--compilation aborted at t/api/module.t line 8. t/api/module.t ............ 1..10 Dubious, test returned 2 (wstat 512, 0x200) Failed 10/10 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/pod.t line 7. BEGIN failed--compilation aborted at t/api/pod.t line 7. t/api/pod.t ............... 1..5 Dubious, test returned 2 (wstat 512, 0x200) Failed 5/5 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/rating.t line 8. BEGIN failed--compilation aborted at t/api/rating.t line 8. t/api/rating.t ............ 1..7 Dubious, test returned 2 (wstat 512, 0x200) Failed 7/7 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/lib/Functions.pm line 3. BEGIN failed--compilation aborted at t/lib/Functions.pm line 3. Compilation failed in require at t/api/release.t line 8. BEGIN failed--compilation aborted at t/api/release.t line 8. t/api/release.t ........... 1..5 Dubious, test returned 2 (wstat 512, 0x200) Failed 5/5 subtests t/author-critic.t ......... skipped: these tests are for testing by the author t/entity.t ................ 1..6 ok 1 - data is missing, causing exception ok 2 - data available, not causing exception ok 3 - Subroutine _known_fields missing ok 4 - data available, not causing exception ok 5 - An object of class 'MetaCPAN::Client::FakeEntityFull' isa 'MetaCPAN::Client::FakeEntityFull' ok 6 - Correct data ok t/release-pod-coverage.t .. skipped: these tests are for release candidate testing t/release-pod-syntax.t .... skipped: these tests are for release candidate testing Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/request.t line 7. BEGIN failed--compilation aborted at t/request.t line 7. t/request.t ............... 1..9 Dubious, test returned 2 (wstat 512, 0x200) Failed 9/9 subtests Base class package "Search::Elasticsearch::Scroll" is empty. (Perhaps you need to 'use' the module which defines that package first, or make that module available in @INC (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .). at t/resultset.t line 12. BEGIN failed--compilation aborted at t/resultset.t line 12. t/resultset.t ............. 1..3 Dubious, test returned 2 (wstat 512, 0x200) Failed 3/3 subtests Can't locate Search/Elasticsearch.pm in @INC (you may need to install the Search::Elasticsearch module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client/Request.pm line 9. Compilation failed in require at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\MetaCPAN-Client-1.013000-PK5nGv\blib\lib/MetaCPAN/Client.pm line 9. Compilation failed in require at t/ua_trap.t line 34. BEGIN failed--compilation aborted at t/ua_trap.t line 34. t/ua_trap.t ............... Dubious, test returned 2 (wstat 512, 0x200) No subtests run Test Summary Report ------------------- t/00-compile.t (Wstat: 512 Tests: 13 Failed: 2) Failed tests: 1, 11 Non-zero exit status: 2 t/api/_get.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 13 tests but ran 0. t/api/_get_or_search.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 10 tests but ran 0. t/api/_search.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 19 tests but ran 0. t/api/author.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output t/api/distribution.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 5 tests but ran 0. t/api/favorite.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 10 tests but ran 0. t/api/file.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 10 tests but ran 0. t/api/module.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 10 tests but ran 0. t/api/pod.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 5 tests but ran 0. t/api/rating.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 7 tests but ran 0. t/api/release.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 5 tests but ran 0. t/request.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 9 tests but ran 0. t/resultset.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 3 tests but ran 0. t/ua_trap.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output Files=19, Tests=19, 7 wallclock secs ( 0.06 usr + 0.05 sys = 0.11 CPU) Result: FAIL Failed 15/19 test programs. 2/19 subtests failed. dmake: Error code 130, while making 'test_dynamic' MICKEY/MetaCPAN-Client-1.013000.tar.gz 2 dependencies missing (Search::Elasticsearch::Scroll,Search::Elasticsearch); additionally test harness failed dmake test TEST_VERBOSE=1 -- NOT OK //hint// to see the cpan-testers results for installing this module, try: reports MICKEY/MetaCPAN-Client-1.013000.tar.gz Running make for D/DR/DROLSKY/Test-DependentModules-0.26.tar.gz Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'get' Has already been unwrapped into directory C:\cpanfly-5.20\var\cpan\build\Test-DependentModules-0.26-FwEkbJ Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'make' CPAN.pm: Building D/DR/DROLSKY/Test-DependentModules-0.26.tar.gz Warning: Prerequisite 'MetaCPAN::Client => 0' for 'DROLSKY/Test-DependentModules-0.26.tar.gz' failed when processing 'MICKEY/MetaCPAN-Client-1.013000.tar.gz' with 'make_test => NO 2 dependencies missing (Search::Elasticsearch::Scroll,Search::Elasticsearch); additionally test harness failed'. Continuing, but chances to succeed are limited. >>> dmake cp lib/Test/DependentModules.pm blib\lib\Test\DependentModules.pm DROLSKY/Test-DependentModules-0.26.tar.gz dmake -- OK Prepending C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib to PERL5LIB for 'test' Running make test >>> dmake test TEST_VERBOSE=1 "C:\Perl64-5.20\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib\lib', 'blib\arch')" t/*.t # # Versions for all modules listed in MYMETA.json (including optional ones): # # === Configure Requires === # # Module Want Have # ------------------- ---- ---- # ExtUtils::MakeMaker any 7.04 # # === Build Requires === # # Module Want Have # ------------------- ---- ---- # ExtUtils::MakeMaker any 7.04 # # === Test Requires === # # Module Want Have # --------------------- ---- -------- # ExtUtils::MakeMaker any 7.04 # File::Copy::Recursive any 0.38 # File::Spec any 3.47 # Module::Build any 0.4214 # Module::Build::Tiny any 0.039 # Test::More 0.96 1.001009 # # === Test Recommends === # # Module Want Have # ---------- -------- -------- # CPAN::Meta 2.120900 2.150005 # # === Runtime Requires === # # Module Want Have # ---------------- ---- -------- # CPAN any 2.10 # CPAN::Shell any 5.5005 # Capture::Tiny any 0.30 # Cwd any 3.47 # Exporter any 5.72 # File::Path any 2.12 # File::Spec any 3.47 # File::Temp any 0.2304 # File::chdir any 0.1010 # IO::Handle::Util any 0.01 # IPC::Run3 any 0.048 # Log::Dispatch any 2.51 # MetaCPAN::Client any missing # Test::Builder any 1.001009 # Try::Tiny any 0.22 # autodie any 2.29 # strict any 1.08 # warnings any 1.23 # # === Runtime Recommends === # # Module Want Have # --------------------- ------ ---- # Parallel::ForkManager v0.7.6 1.16 # # # *** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING *** # # The following REQUIRED prerequisites were not satisfied: # # MetaCPAN::Client is not installed (any version required) # t/00-report-prereqs.t .......... 1..1 ok 1 ok t/author-00-compile.t .......... skipped: these tests are for testing by the author t/author-all-my-deps.t ......... skipped: these tests are for testing by the author t/author-configure-requires.t .. skipped: these tests are for testing by the author t/author-eol.t ................. skipped: these tests are for testing by the author t/author-mojibake.t ............ skipped: these tests are for testing by the author t/author-no-tabs.t ............. skipped: these tests are for testing by the author t/author-pod-spell.t ........... skipped: these tests are for testing by the author t/author-pod-syntax.t .......... skipped: these tests are for testing by the author t/author-single-distros.t ...... skipped: these tests are for testing by the author t/author-test-version.t ........ skipped: these tests are for testing by the author t/author-two-distros.t ......... skipped: these tests are for testing by the author Can't locate MetaCPAN/Client.pm in @INC (you may need to install the MetaCPAN::Client module) (@INC contains: C:\cpanfly-5.20\var\cpan\build\Test-DependentModules-0.26-FwEkbJ\blib\lib C:\cpanfly-5.20\var\cpan\build\Test-DependentModules-0.26-FwEkbJ\blib\arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/arch C:\cpanfly-5.20\var\cpan\build\Log-Any-1.032-2yrlFc/blib/lib C:/cpanfly-5.20/var/megalib C:/Perl64-5.20/site/lib C:/Perl64-5.20/lib .) at C:\cpanfly-5.20\var\cpan\build\Test-DependentModules-0.26-FwEkbJ\blib\lib/Test/DependentModules.pm line 26. BEGIN failed--compilation aborted at C:\cpanfly-5.20\var\cpan\build\Test-DependentModules-0.26-FwEkbJ\blib\lib/Test/DependentModules.pm line 26. Compilation failed in require at t/basic.t line 8. BEGIN failed--compilation aborted at t/basic.t line 8. t/basic.t ...................... Dubious, test returned 2 (wstat 512, 0x200) No subtests run t/release-cpan-changes.t ....... skipped: these tests are for release candidate testing t/release-pod-coverage.t ....... skipped: these tests are for release candidate testing t/release-pod-linkcheck.t ...... skipped: these tests are for release candidate testing t/release-pod-no404s.t ......... skipped: these tests are for release candidate testing t/release-portability.t ........ skipped: these tests are for release candidate testing t/release-tidyall.t ............ skipped: these tests are for release candidate testing Test Summary Report ------------------- t/basic.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output Files=19, Tests=1, 3 wallclock secs ( 0.11 usr + 0.00 sys = 0.11 CPU) Result: FAIL Failed 1/19 test programs. 0/1 subtests failed. dmake: Error code 255, while making 'test_dynamic' DROLSKY/Test-DependentModules-0.26.tar.gz one dependency not OK (MetaCPAN::Client); additionally test harness failed dmake test TEST_VERBOSE=1 -- NOT OK //hint// to see the cpan-testers results for installing this module, try: reports DROLSKY/Test-DependentModules-0.26.tar.gz Finished 2015-11-08T06:28:14