You are viewing a plain text version of this content. The canonical link for it is here.
Posted to builds@cassandra.apache.org by Apache Jenkins Server <je...@builds.apache.org> on 2020/08/17 13:14:36 UTC

Build complete: Cassandra-trunk #268 [UNSTABLE] efce6b39fb557314fad0cb56b07a1919d26b84fc

-------------------------------------------------------------------------------
Build Cassandra-trunk #268 Still Unstable
URL: https://ci-cassandra.apache.org/job/Cassandra-trunk/268/
-------------------------------------------------------------------------------
Changes:
[Sylvain Lebresne] Remove broken "defragment-on-read" optimization


-------------------------------------------------------------------------------
Failed Tests:
12 tests failed.
FAILED:  dtest-novnode.cqlsh_tests.test_cqlsh_copy.TestCqlshCopy.test_bulk_round_trip_with_timeouts
FAILED:  dtest.cql_tracing_test.TestCqlTracing.test_tracing_unknown_impl
FAILED:  org.apache.cassandra.net.ConnectionTest.testMessagePurging-cdc
FAILED:  org.apache.cassandra.transport.frame.checksum.ChecksummingTransformerTest.corruptionCausesFailure-cdc
FAILED:  org.apache.cassandra.net.ConnectionTest.testMessagePurging
FAILED:  dtest-novnode.cql_tracing_test.TestCqlTracing.test_tracing_simple
FAILED:  dtest-novnode.cql_tracing_test.TestCqlTracing.test_tracing_does_not_interfere_with_digest_calculation
FAILED:  dtest-offheap.cql_tracing_test.TestCqlTracing.test_tracing_simple
FAILED:  dtest-offheap.cql_tracing_test.TestCqlTracing.test_tracing_does_not_interfere_with_digest_calculation
FAILED:  dtest.cql_tracing_test.TestCqlTracing.test_tracing_does_not_interfere_with_digest_calculation
FAILED:  dtest-novnode.cql_tracing_test.TestCqlTracing.test_tracing_default_impl
FAILED:  dtest.cql_tracing_test.TestCqlTracing.test_tracing_default_impl

-------------------------------------------------------------------------------
Cassandra CI Results
-------------------------------------------------------------------------------

Tests Failures Errors Skipped Success rate Time
17891 10       2      97      99.93%       153606.586

-------------------------------------------------------------------------------

Name                                               Tests Errors Failures Skipped Time(s)
                                                   3232  0      9        0       135205.702
cqlshlib.python3.jdk8                              164   0      0        0       0.000
org.apache.cassandra.audit                         144   0      0        0       265.970
org.apache.cassandra.auth                          108   0      0        0       50.208
org.apache.cassandra.auth.jmx                      69    0      0        0       16.858
org.apache.cassandra.batchlog                      36    0      0        0       80.757
org.apache.cassandra.cache                         12    0      0        0       23.744
org.apache.cassandra.concurrent                    29    0      0        0       876.216
org.apache.cassandra.config                        48    0      0        0       6.675
org.apache.cassandra.cql.jdbc                      3     0      0        0       0.221
org.apache.cassandra.cql3                          719   0      0        27      1741.909
org.apache.cassandra.cql3.conditions               12    0      0        0       1.721
org.apache.cassandra.cql3.functions                93    0      0        0       43.855
org.apache.cassandra.cql3.restrictions             69    0      0        0       2.957
org.apache.cassandra.cql3.selection                30    0      0        0       40.030
org.apache.cassandra.cql3.statements               72    0      0        0       82.814
org.apache.cassandra.cql3.validation.entities      1104  0      0        3       1054.301
org.apache.cassandra.cql3.validation.miscellaneous 168   0      0        0       146.884
org.apache.cassandra.cql3.validation.operations    1185  0      0        0       1006.530
org.apache.cassandra.db                            1158  0      0        2       686.441
org.apache.cassandra.db.aggregation                18    0      0        0       2.482
org.apache.cassandra.db.columniterator             3     0      0        0       10.217
org.apache.cassandra.db.commitlog                  1213  0      0        7       870.028
org.apache.cassandra.db.compaction                 535   0      0        6       1110.708
org.apache.cassandra.db.composites                 9     0      0        0       1.506
org.apache.cassandra.db.context                    24    0      0        0       6.032
org.apache.cassandra.db.filter                     21    0      0        0       4.421
org.apache.cassandra.db.lifecycle                  201   0      0        0       84.204
org.apache.cassandra.db.marshal                    357   0      0        0       80.470
org.apache.cassandra.db.monitoring                 45    0      0        0       16.257
org.apache.cassandra.db.partition                  30    0      0        0       174.156
org.apache.cassandra.db.partitions                 24    0      0        0       1.779
org.apache.cassandra.db.repair                     69    0      0        3       60.675
org.apache.cassandra.db.rows                       156   0      0        0       118.196
org.apache.cassandra.db.streaming                  36    0      0        0       37.133
org.apache.cassandra.db.transform                  66    0      0        0       20.194
org.apache.cassandra.db.view                       12    0      0        0       63.839
org.apache.cassandra.db.virtual                    39    0      0        0       82.579
org.apache.cassandra.dht                           303   0      0        0       162.860
org.apache.cassandra.dht.tokenallocator            9     0      0        1       224.546
org.apache.cassandra.diag                          18    0      0        0       2.627
org.apache.cassandra.diag.store                    18    0      0        0       0.208
org.apache.cassandra.distributed.test              339   0      0        12      2352.076
org.apache.cassandra.distributed.upgrade           3     0      0        0       179.147
org.apache.cassandra.fql                           105   0      0        0       29.314
org.apache.cassandra.fqltool                       25    0      0        0       4.435
org.apache.cassandra.gms                           48    0      0        0       56.571
org.apache.cassandra.hints                         112   0      0        0       724.585
org.apache.cassandra.index                         135   0      0        0       170.524
org.apache.cassandra.index.internal                81    0      0        0       72.247
org.apache.cassandra.index.sasi                    123   0      0        0       126.610
org.apache.cassandra.index.sasi.analyzer           75    0      0        0       3.850
org.apache.cassandra.index.sasi.disk               84    0      0        0       105.454
org.apache.cassandra.index.sasi.plan               24    0      0        0       14.671
org.apache.cassandra.index.sasi.utils              156   0      0        0       9.488
org.apache.cassandra.io                            15    0      0        0       55.460
org.apache.cassandra.io.compress                   138   0      0        0       58.789
org.apache.cassandra.io.sstable                    379   0      0        6       833.619
org.apache.cassandra.io.sstable.format             3     0      0        0       6.338
org.apache.cassandra.io.sstable.format.big         6     0      0        0       10.487
org.apache.cassandra.io.sstable.metadata           27    0      0        0       3.204
org.apache.cassandra.io.util                       399   0      0        0       137.294
org.apache.cassandra.locator                       196   0      0        0       257.095
org.apache.cassandra.metrics                       192   0      0        3       174.042
org.apache.cassandra.net                           460   2      0        0       667.142
org.apache.cassandra.net.proxy                     9     0      0        0       2.376
org.apache.cassandra.repair                        105   0      0        3       130.071
org.apache.cassandra.repair.asymmetric             39    0      0        0       3.522
org.apache.cassandra.repair.consistent             186   0      0        3       44.495
org.apache.cassandra.repair.messages               54    0      0        0       6.971
org.apache.cassandra.schema                        99    0      0        3       50.181
org.apache.cassandra.security                      78    0      0        0       10.024
org.apache.cassandra.serializers                   96    0      0        0       2.018
org.apache.cassandra.service                       378   0      0        3       400.106
org.apache.cassandra.service.pager                 21    0      0        0       3.209
org.apache.cassandra.service.reads                 357   0      0        3       34.179
org.apache.cassandra.service.reads.repair          102   0      0        3       65.371
org.apache.cassandra.streaming                     32    0      0        0       263.657
org.apache.cassandra.streaming.async               57    0      0        0       8.923
org.apache.cassandra.streaming.compression         18    0      0        0       3.481
org.apache.cassandra.stress.generate               6     0      0        0       0.180
org.apache.cassandra.stress.settings               8     0      0        0       0.769
org.apache.cassandra.stress.util                   5     0      0        0       0.069
org.apache.cassandra.tools                         126   0      0        0       207.023
org.apache.cassandra.tools.nodetool.formatter      18    0      0        0       0.232
org.apache.cassandra.tools.nodetool.stats          24    0      0        0       1.047
org.apache.cassandra.tracing                       18    0      0        0       3.202
org.apache.cassandra.transport                     162   0      0        0       335.697
org.apache.cassandra.transport.frame.checksum      18    0      1        0       126.513
org.apache.cassandra.transport.messages            6     0      0        0       2.255
org.apache.cassandra.triggers                      60    0      0        0       34.781
org.apache.cassandra.utils                         494   0      0        6       1097.550
org.apache.cassandra.utils.binlog                  63    0      0        0       67.264
org.apache.cassandra.utils.btree                   120   0      0        0       2.205
org.apache.cassandra.utils.concurrent              189   0      0        3       22.302
org.apache.cassandra.utils.memory                  100   0      0        0       147.326
org.apache.cassandra.utils.obs                     12    0      0        0       1.503
org.apache.cassandra.utils.streamhist              33    0      0        0       5.966
org.apache.cassandra.utils.vint                    12    0      0        0       0.766

-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Packages
-------------------------------------------------------------------------------

Name             Tests Errors Failures Skipped Time(s)
Cassandra dtests 3     0      0                386.810
Cassandra dtests 2     0      0                229.110
Cassandra dtests 3     0      0                478.307
Cassandra dtests 5     0      0                1153.850
Cassandra dtests 4     0      0                944.423
Cassandra dtests 7     0      0                673.333
Cassandra dtests 6     0      0                899.866
Cassandra dtests 5     0      0                749.053
Cassandra dtests 18    0      0                479.699
Cassandra dtests 17    0      0                1059.112
Cassandra dtests 18    0      0                636.665
Cassandra dtests 17    0      0                899.429
Cassandra dtests 18    0      0                662.284
Cassandra dtests 18    0      0                777.243
Cassandra dtests 18    0      0                1233.143
Cassandra dtests 18    0      0                853.371
Cassandra dtests 17    0      0                686.369
Cassandra dtests 17    0      0                623.290
Cassandra dtests 17    0      0                611.668
Cassandra dtests 18    0      0                532.047
Cassandra dtests 16    0      0                418.784
Cassandra dtests 17    0      0                724.851
Cassandra dtests 17    0      0                678.479
Cassandra dtests 18    0      0                785.511
Cassandra dtests 18    0      0                571.989
Cassandra dtests 18    0      0                942.260
Cassandra dtests 17    0      0                1036.864
Cassandra dtests 17    0      1                753.566
Cassandra dtests 17    0      0                740.858
Cassandra dtests 15    0      1                480.585
Cassandra dtests 18    0      0                537.580
Cassandra dtests 16    0      1                822.314
Cassandra dtests 17    0      0                775.076
Cassandra dtests 17    0      0                630.592
Cassandra dtests 17    0      0                461.069
Cassandra dtests 17    0      0                469.769
Cassandra dtests 16    0      0                576.796
Cassandra dtests 17    0      0                724.911
Cassandra dtests 16    0      0                969.709
Cassandra dtests 17    0      0                943.010
Cassandra dtests 18    0      1                1065.057
Cassandra dtests 18    0      0                554.133
Cassandra dtests 17    0      0                993.505
Cassandra dtests 17    0      0                1440.793
Cassandra dtests 16    0      0                1205.639
Cassandra dtests 18    0      0                935.760
Cassandra dtests 18    0      0                757.414
Cassandra dtests 18    0      0                789.760
Cassandra dtests 18    0      0                920.030
Cassandra dtests 18    0      0                1387.401
Cassandra dtests 18    0      0                976.573
Cassandra dtests 18    0      0                583.911
Cassandra dtests 18    0      0                877.336
Cassandra dtests 18    0      0                767.862
Cassandra dtests 18    0      0                797.489
Cassandra dtests 18    0      0                564.397
Cassandra dtests 17    0      0                846.763
Cassandra dtests 18    0      0                726.722
Cassandra dtests 18    0      0                510.996
Cassandra dtests 17    0      0                332.541
Cassandra dtests 17    0      0                584.193
Cassandra dtests 17    0      0                452.456
Cassandra dtests 18    0      0                740.364
Cassandra dtests 17    0      0                544.254
Cassandra dtests 17    0      0                360.138
Cassandra dtests 17    0      0                398.709
Cassandra dtests 17    0      0                309.820
Cassandra dtests 17    0      0                477.501
Cassandra dtests 18    0      0                834.181
Cassandra dtests 17    0      0                578.922
Cassandra dtests 17    0      0                555.348
Cassandra dtests 17    0      0                882.913
Cassandra dtests 17    0      0                662.423
Cassandra dtests 17    0      0                549.074
Cassandra dtests 17    0      0                477.675
Cassandra dtests 17    0      0                664.812
Cassandra dtests 16    0      0                612.942
Cassandra dtests 15    0      0                412.332
Cassandra dtests 15    0      0                546.796
Cassandra dtests 17    0      0                709.508
Cassandra dtests 17    0      0                811.667
Cassandra dtests 17    0      0                452.752
Cassandra dtests 17    0      0                815.475
Cassandra dtests 17    0      0                439.964
Cassandra dtests 17    0      0                783.930
Cassandra dtests 17    0      0                621.460
Cassandra dtests 17    0      1                710.319
Cassandra dtests 17    0      0                811.731
Cassandra dtests 16    0      0                490.674
Cassandra dtests 15    0      1                525.636
Cassandra dtests 16    0      0                537.487
Cassandra dtests 16    0      0                524.294
Cassandra dtests 15    0      0                399.939
Cassandra dtests 15    0      0                620.123
Cassandra dtests 15    0      0                452.133
Cassandra dtests 15    0      0                541.936
Cassandra dtests 16    0      0                599.829
Cassandra dtests 16    0      0                981.571
Cassandra dtests 16    0      0                604.269
Cassandra dtests 17    0      0                790.525
Cassandra dtests 16    0      0                473.685
Cassandra dtests 16    0      0                1018.993
Cassandra dtests 16    0      0                770.642
Cassandra dtests 17    0      0                767.412
Cassandra dtests 15    0      0                342.505
Cassandra dtests 17    0      0                772.397
Cassandra dtests 17    0      0                743.423
Cassandra dtests 17    0      0                653.350
Cassandra dtests 17    0      0                712.954
Cassandra dtests 17    0      0                1062.341
Cassandra dtests 17    0      0                707.661
Cassandra dtests 17    0      0                441.543
Cassandra dtests 17    0      0                618.310
Cassandra dtests 17    0      0                496.947
Cassandra dtests 17    0      0                625.426
Cassandra dtests 15    0      0                331.561
Cassandra dtests 17    0      0                961.760
Cassandra dtests 17    0      0                921.411
Cassandra dtests 17    0      0                1142.921
Cassandra dtests 17    0      0                678.217
Cassandra dtests 17    0      0                980.001
Cassandra dtests 17    0      0                859.819
Cassandra dtests 17    0      0                590.952
Cassandra dtests 17    0      0                628.736
Cassandra dtests 17    0      0                582.906
Cassandra dtests 17    0      0                466.356
Cassandra dtests 16    0      0                560.048
Cassandra dtests 17    0      0                813.683
Cassandra dtests 16    0      0                495.324
Cassandra dtests 16    0      0                708.068
Cassandra dtests 16    0      0                525.644
Cassandra dtests 16    0      0                820.661
Cassandra dtests 16    0      0                591.771
Cassandra dtests 16    0      0                621.908
Cassandra dtests 16    0      0                305.120
Cassandra dtests 17    0      0                931.234
Cassandra dtests 17    0      0                710.013
Cassandra dtests 17    0      0                463.332
Cassandra dtests 17    0      0                499.340
Cassandra dtests 17    0      0                643.991
Cassandra dtests 16    0      0                575.153
Cassandra dtests 15    0      0                489.190
Cassandra dtests 15    0      0                297.638
Cassandra dtests 17    0      0                863.434
Cassandra dtests 17    0      0                785.037
Cassandra dtests 17    0      0                495.631
Cassandra dtests 17    0      0                838.549
Cassandra dtests 17    0      0                457.706
Cassandra dtests 17    0      0                569.314
Cassandra dtests 17    0      0                549.819
Cassandra dtests 17    0      0                727.608
Cassandra dtests 17    0      1                719.145
Cassandra dtests 16    0      1                835.999
Cassandra dtests 16    0      1                544.302
Cassandra dtests 15    0      0                478.935
Cassandra dtests 16    0      0                548.708
Cassandra dtests 16    0      0                501.449
Cassandra dtests 16    0      0                690.947
Cassandra dtests 14    0      0                407.597
Cassandra dtests 15    0      0                455.902
Cassandra dtests 16    0      0                597.132
Cassandra dtests 16    0      0                915.052
Cassandra dtests 16    0      0                753.509
Cassandra dtests 17    0      0                739.155
Cassandra dtests 16    0      0                491.601
Cassandra dtests 16    0      0                878.928
Cassandra dtests 16    0      0                927.263
Cassandra dtests 17    0      0                656.364
Cassandra dtests 14    0      0                359.404
Cassandra dtests 17    0      0                735.291
Cassandra dtests 17    0      0                736.156
Cassandra dtests 17    0      0                744.070
Cassandra dtests 17    0      0                728.969
Cassandra dtests 17    0      0                1083.466
Cassandra dtests 17    0      0                680.563
Cassandra dtests 17    0      0                424.571
Cassandra dtests 17    0      0                690.280
Cassandra dtests 17    0      0                544.423
Cassandra dtests 17    0      0                574.507
Cassandra dtests 15    0      0                352.978
Cassandra dtests 17    0      0                791.633
Cassandra dtests 17    0      0                976.373
Cassandra dtests 17    0      0                1116.325
Cassandra dtests 17    0      0                1051.324
Cassandra dtests 17    0      0                582.644
Cassandra dtests 17    0      0                1074.265
Cassandra dtests 17    0      0                690.466
Cassandra dtests 17    0      0                414.388
Cassandra dtests 17    0      0                695.696
Cassandra dtests 17    0      0                628.361
Cassandra dtests 16    0      0                499.333
Cassandra dtests 17    0      0                491.671
Cassandra dtests 17    0      0                689.971
Cassandra dtests 16    0      0                425.838
Cassandra dtests 16    0      0                777.606
Cassandra dtests 16    0      0                682.088
Cassandra dtests 16    0      0                685.281
Cassandra dtests 16    0      0                646.412
Cassandra dtests 16    0      0                280.114

-------------------------------------------------------------------------------
cqlshlib.python3.jdk8

Name      Tests Errors Failures Skipped Time(s)
no_cython 82    0      0                NaN
cython    82    0      0                NaN

-------------------------------------------------------------------------------
org.apache.cassandra.audit

Name                            Tests Errors Failures Skipped Time(s)
AuditLogFilterTest-cdc          10    0      0        0       0.266
AuditLoggerAuthTest-cdc         9     0      0        0       52.821
AuditLoggerTest-cdc             28    0      0        0       20.673
BinAuditLoggerTest-cdc          1     0      0        0       12.427
AuditLogFilterTest-compression  10    0      0        0       0.281
AuditLoggerAuthTest-compression 9     0      0        0       52.831
AuditLoggerTest-compression     28    0      0        0       20.936
BinAuditLoggerTest-compression  1     0      0        0       12.528
AuditLogFilterTest              10    0      0        0       0.209
AuditLoggerAuthTest             9     0      0        0       54.009
AuditLoggerTest                 28    0      0        0       26.336
BinAuditLoggerTest              1     0      0        0       12.653

-------------------------------------------------------------------------------
org.apache.cassandra.auth

Name                                  Tests Errors Failures Skipped Time(s)
AuthCacheTest-cdc                     14    0      0        0       0.514
CassandraNetworkAuthorizerTest-cdc    6     0      0        0       3.904
CassandraRoleManagerTest-cdc          1     0      0        0       3.227
PasswordAuthenticatorTest-cdc         7     0      0        0       5.257
RoleOptionsTest-cdc                   4     0      0        0       0.394
RolesTest-cdc                         4     0      0        0       3.296
AuthCacheTest-compression             14    0      0        0       0.564
CassandraNetworkAuthorizerTest-       6     0      0        0       3.945
compression
CassandraRoleManagerTest-compression  1     0      0        0       3.279
PasswordAuthenticatorTest-compression 7     0      0        0       5.136
RoleOptionsTest-compression           4     0      0        0       0.438
RolesTest-compression                 4     0      0        0       3.214
AuthCacheTest                         14    0      0        0       0.451
CassandraNetworkAuthorizerTest        6     0      0        0       3.935
CassandraRoleManagerTest              1     0      0        0       3.139
PasswordAuthenticatorTest             7     0      0        0       6.011
RoleOptionsTest                       4     0      0        0       0.392
RolesTest                             4     0      0        0       3.112

-------------------------------------------------------------------------------
org.apache.cassandra.auth.jmx

Name                               Tests Errors Failures Skipped Time(s)
AuthorizationProxyTest-cdc         20    0      0        0       1.035
JMXAuthTest-cdc                    3     0      0        0       4.368
AuthorizationProxyTest-compression 20    0      0        0       1.096
JMXAuthTest-compression            3     0      0        0       4.479
AuthorizationProxyTest             20    0      0        0       0.940
JMXAuthTest                        3     0      0        0       4.940

-------------------------------------------------------------------------------
org.apache.cassandra.batchlog

Name                                   Tests Errors Failures Skipped Time(s)
BatchlogEndpointFilterTest-cdc         5     0      0        0       0.458
BatchlogManagerTest-cdc                6     0      0        0       23.330
BatchlogTest-cdc                       1     0      0        0       3.082
BatchlogEndpointFilterTest-compression 5     0      0        0       0.458
BatchlogManagerTest-compression        6     0      0        0       23.403
BatchlogTest-compression               1     0      0        0       3.177
BatchlogEndpointFilterTest             5     0      0        0       0.407
BatchlogManagerTest                    6     0      0        0       23.368
BatchlogTest                           1     0      0        0       3.074

-------------------------------------------------------------------------------
org.apache.cassandra.cache

Name                            Tests Errors Failures Skipped Time(s)
AutoSavingCacheTest-cdc         2     0      0        0       3.271
CacheProviderTest-cdc           2     0      0        0       4.697
AutoSavingCacheTest-compression 2     0      0        0       3.319
CacheProviderTest-compression   2     0      0        0       4.665
AutoSavingCacheTest             2     0      0        0       3.343
CacheProviderTest               2     0      0        0       4.449

-------------------------------------------------------------------------------
org.apache.cassandra.concurrent

Name                                       Tests Errors Failures Skipped Time(s)
LongOpOrderTest                            1     0      0        0       330.610
LongSharedExecutorPoolTest                 1     0      0        0       480.601
DebuggableScheduledThreadPoolExecutorTest- 1     0      0        0       14.911
cdc
DebuggableThreadPoolExecutorTest-cdc       4     0      0        0       1.410
SEPExecutorTest-cdc                        2     0      0        0       5.302
WaitQueueTest-cdc                          2     0      0        0       0.261
DebuggableScheduledThreadPoolExecutorTest- 1     0      0        0       14.998
compression
DebuggableThreadPoolExecutorTest-          4     0      0        0       1.435
compression
SEPExecutorTest-compression                2     0      0        0       5.235
WaitQueueTest-compression                  2     0      0        0       0.258
DebuggableScheduledThreadPoolExecutorTest  1     0      0        0       14.939
DebuggableThreadPoolExecutorTest           4     0      0        0       1.306
SEPExecutorTest                            2     0      0        0       4.703
WaitQueueTest                              2     0      0        0       0.247

-------------------------------------------------------------------------------
org.apache.cassandra.config

Name                                  Tests Errors Failures Skipped Time(s)
DatabaseDescriptorRefTest-cdc         1     0      0        0       1.306
DatabaseDescriptorTest-cdc            15    0      0        0       0.918
DatabaseDescriptorRefTest-compression 1     0      0        0       1.339
DatabaseDescriptorTest-compression    15    0      0        0       0.971
DatabaseDescriptorRefTest             1     0      0        0       1.293
DatabaseDescriptorTest                15    0      0        0       0.848

-------------------------------------------------------------------------------
org.apache.cassandra.cql.jdbc

Name                        Tests Errors Failures Skipped Time(s)
JdbcDecimalTest-cdc         1     0      0        0       0.070
JdbcDecimalTest-compression 1     0      0        0       0.076
JdbcDecimalTest             1     0      0        0       0.075

-------------------------------------------------------------------------------
org.apache.cassandra.cql3

Name                                    Tests Errors Failures Skipped Time(s)
CorruptionTest                          1     0      0        0       125.717
ManyRowsTest                            2     0      0        0       6.577
ViewLongTest                            5     0      0        0       101.108
CDCStatementTest-cdc                    3     0      0        0       4.199
CQL3TypeLiteralTest-cdc                 6     0      0        0       0.944
ColumnIdentifierTest-cdc                4     0      0        0       0.397
CqlParserTest-cdc                       3     0      0        0       0.424
CustomNowInSecondsTest-cdc              4     0      0        0       14.405
DeleteTest-cdc                          1     0      0        0       15.741
DistinctQueryPagingTest-cdc             5     0      0        0       14.571
DurationTest-cdc                        8     0      0        0       0.093
EmptyValuesTest-cdc                     14    0      0        5       36.441
ErrorCollectorTest-cdc                  6     0      0        0       0.072
GcCompactionTest-cdc                    8     0      0        0       9.782
IndexQueryPagingTest-cdc                5     0      0        0       14.449
KeyCacheCqlTest-cdc                     10    0      0        0       19.119
ListsTest-cdc                           6     0      0        0       4.811
NonNativeTimestampTest-cdc              1     0      0        0       3.314
OutOfSpaceTest-cdc                      3     0      0        0       4.180
PagingQueryTest-cdc                     1     0      0        0       20.993
PagingTest-cdc                          1     0      0        0       10.051
PreparedStatementsTest-cdc              10    0      0        0       20.090
PstmtPersistenceTest-cdc                2     0      0        0       13.680
QueryEventsTest-cdc                     4     0      0        0       14.433
QueryWithIndexedSSTableTest-cdc         1     0      0        0       3.808
ReservedKeywordsTest-cdc                1     0      0        0       0.881
SerializationMirrorTest-cdc             1     0      0        0       3.349
SimpleQueryTest-cdc                     18    0      0        0       8.728
TombstonesWithIndexedSSTableTest-cdc    2     0      0        0       5.236
TraceCqlTest-cdc                        1     0      0        0       12.264
UDHelperTest-cdc                        3     0      0        0       0.333
ViewComplexTest-cdc                     32    0      0        1       99.611
ViewFilteringTest-cdc                   25    0      0        3       40.241
ViewSchemaTest-cdc                      7     0      0        0       22.043
ViewTest-cdc                            41    0      0        0       54.412
CDCStatementTest-compression            3     0      0        0       4.184
CQL3TypeLiteralTest-compression         6     0      0        0       0.880
ColumnIdentifierTest-compression        4     0      0        0       0.405
CqlParserTest-compression               3     0      0        0       0.420
CustomNowInSecondsTest-compression      4     0      0        0       14.554
DeleteTest-compression                  1     0      0        0       16.048
DistinctQueryPagingTest-compression     5     0      0        0       14.661
DurationTest-compression                8     0      0        0       0.092
EmptyValuesTest-compression             14    0      0        5       36.849
ErrorCollectorTest-compression          6     0      0        0       0.079
GcCompactionTest-compression            8     0      0        0       9.840
IndexQueryPagingTest-compression        5     0      0        0       14.470
KeyCacheCqlTest-compression             10    0      0        0       20.288
ListsTest-compression                   6     0      0        0       4.839
NonNativeTimestampTest-compression      1     0      0        0       3.378
OutOfSpaceTest-compression              3     0      0        0       4.234
PagingQueryTest-compression             1     0      0        0       21.701
PagingTest-compression                  1     0      0        0       10.049
PreparedStatementsTest-compression      10    0      0        0       20.129
PstmtPersistenceTest-compression        2     0      0        0       13.711
QueryEventsTest-compression             4     0      0        0       13.564
QueryWithIndexedSSTableTest-compression 1     0      0        0       4.075
ReservedKeywordsTest-compression        1     0      0        0       0.903
SerializationMirrorTest-compression     1     0      0        0       3.441
SimpleQueryTest-compression             18    0      0        0       8.807
TombstonesWithIndexedSSTableTest-       2     0      0        0       5.324
compression
TraceCqlTest-compression                1     0      0        0       12.338
UDHelperTest-compression                3     0      0        0       0.331
ViewComplexTest-compression             32    0      0        1       99.451
ViewFilteringTest-compression           25    0      0        3       40.874
ViewSchemaTest-compression              7     0      0        0       22.440
ViewTest-compression                    41    0      0        0       56.832
CDCStatementTest                        3     0      0        0       4.609
CQL3TypeLiteralTest                     6     0      0        0       0.828
ColumnIdentifierTest                    4     0      0        0       0.430
CqlParserTest                           3     0      0        0       0.441
CustomNowInSecondsTest                  4     0      0        0       15.939
DeleteTest                              1     0      0        0       16.020
DistinctQueryPagingTest                 5     0      0        0       15.883
DurationTest                            8     0      0        0       0.085
EmptyValuesTest                         14    0      0        5       38.473
ErrorCollectorTest                      6     0      0        0       0.061
GcCompactionTest                        8     0      0        0       11.099
IndexQueryPagingTest                    5     0      0        0       15.890
KeyCacheCqlTest                         10    0      0        0       22.100
ListsTest                               6     0      0        0       5.399
NonNativeTimestampTest                  1     0      0        0       3.355
OutOfSpaceTest                          3     0      0        0       4.673
PagingQueryTest                         1     0      0        0       22.530
PagingTest                              1     0      0        0       10.523
PreparedStatementsTest                  10    0      0        0       23.461
PstmtPersistenceTest                    2     0      0        0       14.436
QueryEventsTest                         4     0      0        0       14.556
QueryWithIndexedSSTableTest             1     0      0        0       4.134
ReservedKeywordsTest                    1     0      0        0       0.792
SerializationMirrorTest                 1     0      0        0       3.512
SimpleQueryTest                         18    0      0        0       12.620
TombstonesWithIndexedSSTableTest        2     0      0        0       5.505
TraceCqlTest                            1     0      0        0       12.578
UDHelperTest                            3     0      0        0       0.297
ViewComplexTest                         32    0      0        1       113.384
ViewFilteringTest                       25    0      0        3       61.768
ViewSchemaTest                          7     0      0        0       27.309
ViewTest                                41    0      0        0       73.531

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.conditions

Name                            Tests Errors Failures Skipped Time(s)
ColumnConditionTest-cdc         4     0      0        0       0.582
ColumnConditionTest-compression 4     0      0        0       0.627
ColumnConditionTest             4     0      0        0       0.512

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.functions

Name                          Tests Errors Failures Skipped Time(s)
CastFctsTest-cdc              7     0      0        0       5.909
OperationFctsTest-cdc         11    0      0        0       7.113
TimeFctsTest-cdc              13    0      0        0       0.526
CastFctsTest-compression      7     0      0        0       5.987
OperationFctsTest-compression 11    0      0        0       6.921
TimeFctsTest-compression      13    0      0        0       0.528
CastFctsTest                  7     0      0        0       7.337
OperationFctsTest             11    0      0        0       9.069
TimeFctsTest                  13    0      0        0       0.465

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.restrictions

Name                                 Tests Errors Failures Skipped Time(s)
ClusteringColumnRestrictionsTest-cdc 23    0      0        0       1.037
ClusteringColumnRestrictionsTest-    23    0      0        0       1.014
compression
ClusteringColumnRestrictionsTest     23    0      0        0       0.906

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.selection

Name                                   Tests Errors Failures Skipped Time(s)
SelectionColumnMappingTest-cdc         2     0      0        0       5.195
TermSelectionTest-cdc                  8     0      0        0       7.190
SelectionColumnMappingTest-compression 2     0      0        0       5.341
TermSelectionTest-compression          8     0      0        0       7.465
SelectionColumnMappingTest             2     0      0        0       5.750
TermSelectionTest                      8     0      0        0       9.089

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.statements

Name                                Tests Errors Failures Skipped Time(s)
AlterRoleStatementTest-cdc          4     0      0        0       0.877
CreateRoleStatementTest-cdc         4     0      0        0       3.679
CreateUserStatementTest-cdc         1     0      0        0       0.894
DescribeStatementTest-cdc           12    0      0        0       17.537
PropertyDefinitionsTest-cdc         2     0      0        0       0.226
SelectStatementTest-cdc             1     0      0        0       3.122
AlterRoleStatementTest-compression  4     0      0        0       0.900
CreateRoleStatementTest-compression 4     0      0        0       3.721
CreateUserStatementTest-compression 1     0      0        0       0.842
DescribeStatementTest-compression   12    0      0        0       18.105
PropertyDefinitionsTest-compression 2     0      0        0       0.250
SelectStatementTest-compression     1     0      0        0       3.406
AlterRoleStatementTest              4     0      0        0       0.768
CreateRoleStatementTest             4     0      0        0       4.035
CreateUserStatementTest             1     0      0        0       0.787
DescribeStatementTest               12    0      0        0       20.372
PropertyDefinitionsTest             2     0      0        0       0.203
SelectStatementTest                 1     0      0        0       3.090

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.validation.entities

Name                                 Tests Errors Failures Skipped Time(s)
CollectionsTest-cdc                  50    0      0        0       29.483
CountersTest-cdc                     7     0      0        0       5.643
DateTypeTest-cdc                     1     0      0        0       3.356
FrozenCollectionsTest-cdc            34    0      0        0       13.815
JsonTest-cdc                         22    0      0        0       22.002
SecondaryIndexOnMapEntriesTest-cdc   11    0      0        0       7.300
SecondaryIndexOnStaticColumnTest-cdc 6     0      0        0       6.642
SecondaryIndexTest-cdc               49    0      0        0       32.313
StaticColumnsTest-cdc                7     0      0        0       7.388
TimestampTest-cdc                    8     0      0        0       17.888
TimeuuidTest-cdc                     2     0      0        0       3.854
TupleTypeTest-cdc                    12    0      0        0       7.071
TypeTest-cdc                         4     0      0        0       4.442
UFAuthTest-cdc                       26    0      0        0       14.017
UFIdentificationTest-cdc             14    0      0        1       13.544
UFJavaTest-cdc                       18    0      0        0       20.956
UFPureScriptTupleCollectionTest-cdc  1     0      0        0       12.913
UFScriptTest-cdc                     12    0      0        0       17.695
UFSecurityTest-cdc                   2     0      0        0       6.273
UFTest-cdc                           24    0      0        0       20.942
UFTypesTest-cdc                      7     0      0        0       19.182
UFVerifierTest-cdc                   20    0      0        0       6.488
UserTypesTest-cdc                    27    0      0        0       14.720
VirtualTableTest-cdc                 4     0      0        0       13.146
CollectionsTest-compression          50    0      0        0       28.542
CountersTest-compression             7     0      0        0       5.354
DateTypeTest-compression             1     0      0        0       3.403
FrozenCollectionsTest-compression    34    0      0        0       13.312
JsonTest-compression                 22    0      0        0       22.131
SecondaryIndexOnMapEntriesTest-      11    0      0        0       7.336
compression
SecondaryIndexOnStaticColumnTest-    6     0      0        0       6.714
compression
SecondaryIndexTest-compression       49    0      0        0       31.672
StaticColumnsTest-compression        7     0      0        0       7.574
TimestampTest-compression            8     0      0        0       17.962
TimeuuidTest-compression             2     0      0        0       4.015
TupleTypeTest-compression            12    0      0        0       7.247
TypeTest-compression                 4     0      0        0       4.536
UFAuthTest-compression               26    0      0        0       13.004
UFIdentificationTest-compression     14    0      0        1       13.709
UFJavaTest-compression               18    0      0        0       22.031
UFPureScriptTupleCollectionTest-     1     0      0        0       13.160
compression
UFScriptTest-compression             12    0      0        0       17.844
UFSecurityTest-compression           2     0      0        0       6.352
UFTest-compression                   24    0      0        0       21.380
UFTypesTest-compression              7     0      0        0       18.450
UFVerifierTest-compression           20    0      0        0       6.706
UserTypesTest-compression            27    0      0        0       15.182
VirtualTableTest-compression         4     0      0        0       13.178
CollectionsTest                      50    0      0        0       39.237
CountersTest                         7     0      0        0       6.465
DateTypeTest                         1     0      0        0       3.385
FrozenCollectionsTest                34    0      0        0       19.917
JsonTest                             22    0      0        0       25.632
SecondaryIndexOnMapEntriesTest       11    0      0        0       9.780
SecondaryIndexOnStaticColumnTest     6     0      0        0       8.555
SecondaryIndexTest                   49    0      0        0       49.760
StaticColumnsTest                    7     0      0        0       8.987
TimestampTest                        8     0      0        0       19.378
TimeuuidTest                         2     0      0        0       4.218
TupleTypeTest                        12    0      0        0       9.482
TypeTest                             4     0      0        0       5.174
UFAuthTest                           26    0      0        0       20.821
UFIdentificationTest                 14    0      0        1       20.532
UFJavaTest                           18    0      0        0       25.629
UFPureScriptTupleCollectionTest      1     0      0        0       13.435
UFScriptTest                         12    0      0        0       21.193
UFSecurityTest                       2     0      0        0       6.987
UFTest                               24    0      0        0       26.333
UFTypesTest                          7     0      0        0       21.635
UFVerifierTest                       20    0      0        0       8.542
UserTypesTest                        27    0      0        0       23.568
VirtualTableTest                     4     0      0        0       13.789

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.validation.miscellaneous

Name                                    Tests Errors Failures Skipped Time(s)
CrcCheckChanceTest-cdc                  3     0      0        0       5.998
OverflowTest-cdc                        14    0      0        0       7.183
PgStringTest-cdc                        3     0      0        0       4.414
RoleSyntaxTest-cdc                      9     0      0        0       4.439
SSTableMetadataTrackingTest-cdc         7     0      0        0       5.555
SSTablesIteratedTest-cdc                14    0      0        0       9.932
TombstonesTest-cdc                      6     0      0        0       7.494
CrcCheckChanceTest-compression          3     0      0        0       6.929
OverflowTest-compression                14    0      0        0       7.330
PgStringTest-compression                3     0      0        0       4.469
RoleSyntaxTest-compression              9     0      0        0       4.666
SSTableMetadataTrackingTest-compression 7     0      0        0       5.575
SSTablesIteratedTest-compression        14    0      0        0       10.421
TombstonesTest-compression              6     0      0        0       7.635
CrcCheckChanceTest                      3     0      0        0       7.580
OverflowTest                            14    0      0        0       9.716
PgStringTest                            3     0      0        0       4.778
RoleSyntaxTest                          9     0      0        0       5.334
SSTableMetadataTrackingTest             7     0      0        0       6.702
SSTablesIteratedTest                    14    0      0        0       12.282
TombstonesTest                          6     0      0        0       8.452

-------------------------------------------------------------------------------
org.apache.cassandra.cql3.validation.operations

Name                                      Tests Errors Failures Skipped Time(s)
AggregationTest-cdc                       50    0      0        0       31.232
AlterTest-cdc                             26    0      0        0       20.995
BatchTest-cdc                             11    0      0        0       48.609
CreateTest-cdc                            21    0      0        0       9.971
DeleteTest-cdc                            33    0      0        0       17.964
DropRecreateAndRestoreTest-cdc            4     0      0        0       4.760
DropTest-cdc                              2     0      0        0       3.886
InsertTest-cdc                            8     0      0        0       6.116
InsertUpdateIfConditionTest-cdc           42    0      0        0       21.221
SelectGroupByTest-cdc                     7     0      0        0       18.672
SelectLimitTest-cdc                       7     0      0        0       16.403
SelectMultiColumnRelationTest-cdc         22    0      0        0       9.934
SelectOrderByTest-cdc                     17    0      0        0       8.640
SelectOrderedPartitionerTest-cdc          20    0      0        0       9.498
SelectSingleColumnRelationTest-cdc        23    0      0        0       10.887
SelectTest-cdc                            82    0      0        0       29.691
TTLTest-cdc                               7     0      0        0       8.969
TruncateTest-cdc                          1     0      0        0       3.600
UpdateTest-cdc                            11    0      0        0       8.690
UseTest-cdc                               1     0      0        0       3.210
AggregationTest-compression               50    0      0        0       31.677
AlterTest-compression                     26    0      0        0       21.009
BatchTest-compression                     11    0      0        0       48.603
CreateTest-compression                    21    0      0        0       10.119
DeleteTest-compression                    33    0      0        0       18.110
DropRecreateAndRestoreTest-compression    4     0      0        0       4.729
DropTest-compression                      2     0      0        0       3.908
InsertTest-compression                    8     0      0        0       6.267
InsertUpdateIfConditionTest-compression   42    0      0        0       21.218
SelectGroupByTest-compression             7     0      0        0       18.711
SelectLimitTest-compression               7     0      0        0       15.664
SelectMultiColumnRelationTest-compression 22    0      0        0       10.202
SelectOrderByTest-compression             17    0      0        0       8.782
SelectOrderedPartitionerTest-compression  20    0      0        0       9.696
SelectSingleColumnRelationTest-           23    0      0        0       11.946
compression
SelectTest-compression                    82    0      0        0       30.150
TTLTest-compression                       7     0      0        0       9.199
TruncateTest-compression                  1     0      0        0       3.497
UpdateTest-compression                    11    0      0        0       8.775
UseTest-compression                       1     0      0        0       3.228
AggregationTest                           50    0      0        0       44.832
AlterTest                                 26    0      0        0       27.648
BatchTest                                 11    0      0        0       50.584
CreateTest                                21    0      0        0       14.849
DeleteTest                                33    0      0        0       27.543
DropRecreateAndRestoreTest                4     0      0        0       5.372
DropTest                                  2     0      0        0       4.210
InsertTest                                8     0      0        0       7.571
InsertUpdateIfConditionTest               42    0      0        0       31.677
SelectGroupByTest                         7     0      0        0       21.386
SelectLimitTest                           7     0      0        0       17.366
SelectMultiColumnRelationTest             22    0      0        0       14.909
SelectOrderByTest                         17    0      0        0       12.710
SelectOrderedPartitionerTest              20    0      0        0       13.810
SelectSingleColumnRelationTest            23    0      0        0       16.375
SelectTest                                82    0      0        0       69.326
TTLTest                                   7     0      0        0       15.730
TruncateTest                              1     0      0        0       4.059
UpdateTest                                11    0      0        0       14.720
UseTest                                   1     0      0        0       3.415

-------------------------------------------------------------------------------
org.apache.cassandra.db

Name                                     Tests Errors Failures Skipped Time(s)
CellTest-cdc                             11    0      0        0       3.086
CleanupTest-cdc                          8     0      0        0       17.522
CleanupTransientTest-cdc                 1     0      0        0       3.703
ColumnFamilyMetricTest-cdc               2     0      0        0       3.174
ColumnFamilyStoreTest-cdc                8     0      0        0       4.322
ColumnsTest-cdc                          8     0      0        0       1.674
CounterCacheTest-cdc                     5     0      0        0       3.369
CounterCellTest-cdc                      5     0      0        0       3.118
CounterMutationTest-cdc                  4     0      0        0       3.352
DeletePartitionTest-cdc                  1     0      0        0       3.177
DigestTest-cdc                           6     0      0        0       0.499
DirectoriesTest-cdc                      13    0      0        0       1.053
DiskBoundaryManagerTest-cdc              4     0      0        0       4.516
ImportTest-cdc                           14    0      0        0       8.286
KeyCacheTest-cdc                         6     0      0        0       3.940
KeyspaceTest-cdc                         10    0      0        0       6.699
LivenessInfoTest-cdc                     2     0      0        0       0.388
MmapFileTest-cdc                         1     0      0        0       0.303
MultiKeyspaceTest-cdc                    1     0      0        0       3.427
MutationExceededMaxSizeExceptionTest-cdc 1     0      0        0       0.069
NameSortTest-cdc                         3     0      0        0       3.536
NativeCellTest-cdc                       1     0      0        0       1.039
PartitionRangeReadTest-cdc               7     0      0        0       3.659
PartitionTest-cdc                        4     0      0        0       3.172
RangeTombstoneListTest-cdc               25    0      0        0       1.050
RangeTombstoneTest-cdc                   14    0      0        0       4.083
ReadCommandTest-cdc                      23    0      0        0       4.841
ReadCommandVerbHandlerTest-cdc           4     0      0        0       4.382
ReadMessageTest-cdc                      3     0      0        0       3.222
ReadResponseTest-cdc                     8     0      0        0       0.622
RecoveryManagerFlushedTest-cdc           6     0      0        0       3.333
RecoveryManagerMissingHeaderTest-cdc     6     0      0        0       3.004
RecoveryManagerTest-cdc                  42    0      0        0       6.712
RecoveryManagerTruncateTest-cdc          6     0      0        0       3.151
RemoveCellTest-cdc                       1     0      0        0       3.426
RepairedDataInfoTest-cdc                 7     0      0        0       1.585
RepairedDataTombstonesTest-cdc           7     0      0        0       27.658
RowCacheCQLTest-cdc                      3     0      0        0       4.196
RowCacheTest-cdc                         11    0      0        0       4.688
RowIndexEntryTest-cdc                    4     0      0        0       4.117
RowIterationTest-cdc                     3     0      0        0       4.140
RowTest-cdc                              4     0      0        0       3.067
SchemaCQLHelperTest-cdc                  9     0      0        0       5.693
ScrubTest-cdc                            17    0      0        0       6.794
SecondaryIndexTest-cdc                   14    0      0        0       9.185
SerializationHeaderTest-cdc              1     0      0        0       1.486
SinglePartitionReadCommandCQLTest-cdc    1     0      0        0       3.347
SinglePartitionSliceCommandTest-cdc      7     0      0        0       3.699
SystemKeyspaceMigrator40Test-cdc         4     0      0        0       3.923
SystemKeyspaceTest-cdc                   4     0      0        0       2.463
TimeSortTest-cdc                         2     0      0        0       4.399
TransformerTest-cdc                      1     0      0        0       0.997
VerifyTest-cdc                           23    0      0        0       3.945
CellTest-compression                     11    0      0        0       3.124
CleanupTest-compression                  8     0      0        0       17.724
CleanupTransientTest-compression         1     0      0        0       3.778
ColumnFamilyMetricTest-compression       2     0      0        0       3.321
ColumnFamilyStoreTest-compression        8     0      0        0       4.405
ColumnsTest-compression                  8     0      0        0       1.750
CounterCacheTest-compression             5     0      0        0       3.474
CounterCellTest-compression              5     0      0        0       3.247
CounterMutationTest-compression          4     0      0        0       3.544
DeletePartitionTest-compression          1     0      0        0       3.338
DigestTest-compression                   6     0      0        0       0.539
DirectoriesTest-compression              13    0      0        0       1.137
DiskBoundaryManagerTest-compression      4     0      0        0       4.767
ImportTest-compression                   14    0      0        0       8.571
KeyCacheTest-compression                 6     0      0        0       4.087
KeyspaceTest-compression                 10    0      0        0       7.071
LivenessInfoTest-compression             2     0      0        0       0.433
MmapFileTest-compression                 1     0      0        0       0.375
MultiKeyspaceTest-compression            1     0      0        0       3.548
MutationExceededMaxSizeExceptionTest-    1     0      0        0       0.072
compression
NameSortTest-compression                 3     0      0        0       3.684
NativeCellTest-compression               1     0      0        0       1.009
PartitionRangeReadTest-compression       7     0      0        0       3.864
PartitionTest-compression                4     0      0        0       3.370
RangeTombstoneListTest-compression       25    0      0        0       1.134
RangeTombstoneTest-compression           14    0      0        0       4.310
ReadCommandTest-compression              23    0      0        0       5.065
ReadCommandVerbHandlerTest-compression   4     0      0        0       6.372
ReadMessageTest-compression              3     0      0        0       3.402
ReadResponseTest-compression             8     0      0        0       0.667
RecoveryManagerFlushedTest-compression   6     0      0        0       3.468
RecoveryManagerMissingHeaderTest-        6     0      0        0       3.043
compression
RecoveryManagerTest-compression          42    0      0        0       6.885
RecoveryManagerTruncateTest-compression  6     0      0        0       3.276
RemoveCellTest-compression               1     0      0        0       3.456
RepairedDataInfoTest-compression         7     0      0        0       1.548
RepairedDataTombstonesTest-compression   7     0      0        0       27.723
RowCacheCQLTest-compression              3     0      0        0       4.326
RowCacheTest-compression                 11    0      0        0       4.832
RowIndexEntryTest-compression            4     0      0        0       4.249
RowIterationTest-compression             3     0      0        0       4.288
RowTest-compression                      4     0      0        0       3.201
SchemaCQLHelperTest-compression          9     0      0        0       5.881
ScrubTest-compression                    17    0      0        2       7.173
SecondaryIndexTest-compression           14    0      0        0       9.256
SerializationHeaderTest-compression      1     0      0        0       1.566
SinglePartitionReadCommandCQLTest-       1     0      0        0       3.416
compression
SinglePartitionSliceCommandTest-         7     0      0        0       3.722
compression
SystemKeyspaceMigrator40Test-compression 4     0      0        0       4.129
SystemKeyspaceTest-compression           4     0      0        0       2.558
TimeSortTest-compression                 2     0      0        0       4.517
TransformerTest-compression              1     0      0        0       1.003
VerifyTest-compression                   23    0      0        0       4.162
CellTest                                 11    0      0        0       3.020
CleanupTest                              8     0      0        0       19.110
CleanupTransientTest                     1     0      0        0       3.694
ColumnFamilyMetricTest                   2     0      0        0       3.101
ColumnFamilyStoreTest                    8     0      0        0       4.647
ColumnsTest                              8     0      0        0       1.522
CounterCacheTest                         5     0      0        0       3.399
CounterCellTest                          5     0      0        0       2.971
CounterMutationTest                      4     0      0        0       3.430
DeletePartitionTest                      1     0      0        0       3.063
DigestTest                               6     0      0        0       0.462
DirectoriesTest                          13    0      0        0       0.969
DiskBoundaryManagerTest                  4     0      0        0       5.212
ImportTest                               14    0      0        0       11.055
KeyCacheTest                             6     0      0        0       3.943
KeyspaceTest                             10    0      0        0       8.306
LivenessInfoTest                         2     0      0        0       0.334
MmapFileTest                             1     0      0        0       0.278
MultiKeyspaceTest                        1     0      0        0       3.575
MutationExceededMaxSizeExceptionTest     1     0      0        0       0.059
NameSortTest                             3     0      0        0       3.377
NativeCellTest                           1     0      0        0       0.956
PartitionRangeReadTest                   7     0      0        0       3.670
PartitionTest                            4     0      0        0       3.186
RangeTombstoneListTest                   25    0      0        0       0.956
RangeTombstoneTest                       14    0      0        0       4.557
ReadCommandTest                          23    0      0        0       5.661
ReadCommandVerbHandlerTest               4     0      0        0       4.729
ReadMessageTest                          3     0      0        0       3.209
ReadResponseTest                         8     0      0        0       0.563
RecoveryManagerFlushedTest               6     0      0        0       3.516
RecoveryManagerMissingHeaderTest         6     0      0        0       3.084
RecoveryManagerTest                      42    0      0        0       8.709
RecoveryManagerTruncateTest              6     0      0        0       3.474
RemoveCellTest                           1     0      0        0       3.343
RepairedDataInfoTest                     7     0      0        0       1.427
RepairedDataTombstonesTest               7     0      0        0       29.254
RowCacheCQLTest                          3     0      0        0       4.667
RowCacheTest                             11    0      0        0       4.848
RowIndexEntryTest                        4     0      0        0       4.605
RowIterationTest                         3     0      0        0       4.737
RowTest                                  4     0      0        0       2.975
SchemaCQLHelperTest                      9     0      0        0       7.091
ScrubTest                                17    0      0        0       7.270
SecondaryIndexTest                       14    0      0        0       10.149
SerializationHeaderTest                  1     0      0        0       1.336
SinglePartitionReadCommandCQLTest        1     0      0        0       3.374
SinglePartitionSliceCommandTest          7     0      0        0       3.811
SystemKeyspaceMigrator40Test             4     0      0        0       4.534
SystemKeyspaceTest                       4     0      0        0       2.313
TimeSortTest                             2     0      0        0       4.785
TransformerTest                          1     0      0        0       0.898
VerifyTest                               23    0      0        0       4.076

-------------------------------------------------------------------------------
org.apache.cassandra.db.aggregation

Name                       Tests Errors Failures Skipped Time(s)
GroupMakerTest-cdc         6     0      0        0       0.823
GroupMakerTest-compression 6     0      0        0       0.897
GroupMakerTest             6     0      0        0       0.762

-------------------------------------------------------------------------------
org.apache.cassandra.db.columniterator

Name                                   Tests Errors Failures Skipped Time(s)
SSTableReverseIteratorTest-cdc         1     0      0        0       3.356
SSTableReverseIteratorTest-compression 1     0      0        0       3.507
SSTableReverseIteratorTest             1     0      0        0       3.354

-------------------------------------------------------------------------------
org.apache.cassandra.db.commitlog

Name                                     Tests Errors Failures Skipped Time(s)
BatchCommitLogStressTest                 15    0      0        0       196.906
CommitLogStressTest                      1     0      0        1       0.059
GroupCommitLogStressTest                 15    0      0        0       185.756
PeriodicCommitLogStressTest              15    0      0        0       239.711
AbstractCommitLogServiceTest-cdc         9     0      0        0       1.179
BatchCommitLogTest-cdc                   174   0      0        0       7.337
CommitLogCQLTest-cdc                     1     0      0        0       3.428
CommitLogChainedMarkersTest-cdc          1     0      0        0       3.905
CommitLogDescriptorTest-cdc              14    0      0        0       13.522
CommitLogFailurePolicyTest-cdc           4     0      0        0       5.740
CommitLogInitWithExceptionTest-cdc       1     0      0        0       1.556
CommitLogReaderTest-cdc                  5     0      0        0       6.009
CommitLogSegmentBackpressureTest-cdc     1     0      0        0       4.637
CommitLogSegmentManagerCDCTest-cdc       7     0      0        0       8.595
CommitLogTest-cdc                        1     0      0        1       0.058
CommitLogUpgradeTest-cdc                 1     0      0        0       3.480
CommitlogShutdownTest-cdc                1     0      0        0       3.661
GroupCommitLogTest-cdc                   162   0      0        0       13.524
SegmentReaderTest-cdc                    6     0      0        0       1.256
SnapshotDeletingTest-cdc                 1     0      0        1       3.163
AbstractCommitLogServiceTest-compression 9     0      0        0       1.159
BatchCommitLogTest-compression           174   0      0        0       7.488
CommitLogCQLTest-compression             1     0      0        0       3.507
CommitLogChainedMarkersTest-compression  1     0      0        0       3.967
CommitLogDescriptorTest-compression      14    0      0        0       13.581
CommitLogFailurePolicyTest-compression   4     0      0        0       5.888
CommitLogInitWithExceptionTest-          1     0      0        0       1.546
compression
CommitLogReaderTest-compression          5     0      0        0       6.126
CommitLogSegmentBackpressureTest-        1     0      0        0       4.809
compression
CommitLogSegmentManagerCDCTest-          7     0      0        0       8.702
compression
CommitLogTest-compression                1     0      0        1       0.060
CommitLogUpgradeTest-compression         1     0      0        0       3.359
CommitlogShutdownTest-compression        1     0      0        0       3.802
GroupCommitLogTest-compression           162   0      0        0       13.664
SegmentReaderTest-compression            6     0      0        0       1.238
SnapshotDeletingTest-compression         1     0      0        1       3.272
AbstractCommitLogServiceTest             9     0      0        0       1.066
BatchCommitLogTest                       174   0      0        0       9.240
CommitLogCQLTest                         1     0      0        0       3.510
CommitLogChainedMarkersTest              1     0      0        0       3.860
CommitLogDescriptorTest                  14    0      0        0       11.687
CommitLogFailurePolicyTest               4     0      0        0       5.604
CommitLogInitWithExceptionTest           1     0      0        0       1.507
CommitLogReaderTest                      5     0      0        0       6.653
CommitLogSegmentBackpressureTest         1     0      0        0       4.586
CommitLogSegmentManagerCDCTest           7     0      0        0       10.180
CommitLogTest                            1     0      0        1       0.053
CommitLogUpgradeTest                     1     0      0        0       3.240
CommitlogShutdownTest                    1     0      0        0       3.608
GroupCommitLogTest                       162   0      0        0       15.419
SegmentReaderTest                        6     0      0        0       1.140
SnapshotDeletingTest                     1     0      0        1       3.025

-------------------------------------------------------------------------------
org.apache.cassandra.db.compaction

Name                                        Tests Errors Failures Skipped Time
                                                                          (s)
LongCompactionsTest                         4     0      0        0       18.734
LongLeveledCompactionStrategyTest           3     0      0        0       19.231
AbstractCompactionStrategyTest-cdc          4     0      0        0       3.618
AbstractPendingRepairTest-cdc               1     0      0        1       0.058
ActiveCompactionsTest-cdc                   6     0      0        0       5.680
AntiCompactionBytemanTest-cdc               1     0      0        0       6.220
AntiCompactionTest-cdc                      15    0      0        0       26.589
CancelCompactionsTest-cdc                   8     0      0        0       9.410
CompactionAwareWriterTest-cdc               4     0      0        0       64.451
CompactionControllerTest-cdc                2     0      0        0       3.664
CompactionExecutorTest-cdc                  3     0      0        0       0.929
CompactionIteratorTest-cdc                  12    0      0        0       6.790
CompactionStrategyManagerPendingRepairTest- 9     0      0        0       3.912
cdc
CompactionStrategyManagerTest-cdc           5     0      0        0       5.601
CompactionTaskTest-cdc                      2     0      0        0       3.281
CompactionsBytemanTest-cdc                  6     0      0        0       14.050
CompactionsCQLTest-cdc                      24    0      0        0       35.244
CompactionsPurgeTest-cdc                    10    0      0        0       3.826
CompactionsTest-cdc                         6     0      0        1       16.628
CorruptedSSTablesCompactionsTest-cdc        2     0      0        0       4.948
DateTieredCompactionStrategyTest-cdc        7     0      0        0       6.912
LeveledCompactionStrategyTest-cdc           8     0      0        0       8.679
NeverPurgeTest-cdc                          4     0      0        0       8.988
OneCompactionTest-cdc                       2     0      0        0       3.299
PendingRepairManagerTest-cdc                16    0      0        0       4.423
SingleSSTableLCSTaskTest-cdc                4     0      0        0       67.745
SizeTieredCompactionStrategyTest-cdc        3     0      0        0       3.148
TTLExpiryTest-cdc                           5     0      0        0       10.021
TimeWindowCompactionStrategyTest-cdc        5     0      0        0       8.622
ValidationExecutorTest-cdc                  2     0      0        0       0.620
AbstractCompactionStrategyTest-compression  4     0      0        0       3.662
AbstractPendingRepairTest-compression       1     0      0        1       0.065
ActiveCompactionsTest-compression           6     0      0        0       5.838
AntiCompactionBytemanTest-compression       1     0      0        0       6.270
AntiCompactionTest-compression              15    0      0        0       30.920
CancelCompactionsTest-compression           8     0      0        0       10.536
CompactionAwareWriterTest-compression       4     0      0        0       68.700
CompactionControllerTest-compression        2     0      0        0       3.702
CompactionExecutorTest-compression          3     0      0        0       0.917
CompactionIteratorTest-compression          12    0      0        0       6.899
CompactionStrategyManagerPendingRepairTest- 9     0      0        0       4.095
compression
CompactionStrategyManagerTest-compression   5     0      0        0       5.679
CompactionTaskTest-compression              2     0      0        0       3.368
CompactionsBytemanTest-compression          6     0      0        0       13.218
CompactionsCQLTest-compression              24    0      0        0       35.973
CompactionsPurgeTest-compression            10    0      0        0       3.915
CompactionsTest-compression                 6     0      0        1       16.857
CorruptedSSTablesCompactionsTest-           2     0      0        0       5.066
compression
DateTieredCompactionStrategyTest-           7     0      0        0       7.076
compression
LeveledCompactionStrategyTest-compression   8     0      0        0       11.423
NeverPurgeTest-compression                  4     0      0        0       9.111
OneCompactionTest-compression               2     0      0        0       3.337
PendingRepairManagerTest-compression        16    0      0        0       4.533
SingleSSTableLCSTaskTest-compression        4     0      0        0       88.973
SizeTieredCompactionStrategyTest-           3     0      0        0       3.320
compression
TTLExpiryTest-compression                   5     0      0        0       10.129
TimeWindowCompactionStrategyTest-           5     0      0        0       8.740
compression
ValidationExecutorTest-compression          2     0      0        0       0.603
AbstractCompactionStrategyTest              4     0      0        0       4.001
AbstractPendingRepairTest                   1     0      0        1       0.062
ActiveCompactionsTest                       6     0      0        0       7.163
AntiCompactionBytemanTest                   1     0      0        0       6.496
AntiCompactionTest                          15    0      0        0       24.213
CancelCompactionsTest                       8     0      0        0       10.754
CompactionAwareWriterTest                   4     0      0        0       59.964
CompactionControllerTest                    2     0      0        0       3.636
CompactionExecutorTest                      3     0      0        0       0.821
CompactionIteratorTest                      12    0      0        0       8.196
CompactionStrategyManagerPendingRepairTest  9     0      0        0       4.187
CompactionStrategyManagerTest               5     0      0        0       6.841
CompactionTaskTest                          2     0      0        0       3.324
CompactionsBytemanTest                      6     0      0        0       14.527
CompactionsCQLTest                          24    0      0        0       42.173
CompactionsPurgeTest                        10    0      0        0       4.256
CompactionsTest                             6     0      0        1       17.003
CorruptedSSTablesCompactionsTest            2     0      0        0       5.590
DateTieredCompactionStrategyTest            7     0      0        0       7.755
LeveledCompactionStrategyTest               8     0      0        0       11.187
NeverPurgeTest                              4     0      0        0       9.792
OneCompactionTest                           2     0      0        0       3.183
PendingRepairManagerTest                    16    0      0        0       4.940
SingleSSTableLCSTaskTest                    4     0      0        0       78.998
SizeTieredCompactionStrategyTest            3     0      0        0       3.160
TTLExpiryTest                               5     0      0        0       10.452
TimeWindowCompactionStrategyTest            5     0      0        0       9.246
ValidationExecutorTest                      2     0      0        0       0.542

-------------------------------------------------------------------------------
org.apache.cassandra.db.composites

Name                  Tests Errors Failures Skipped Time(s)
CTypeTest-cdc         3     0      0        0       0.518
CTypeTest-compression 3     0      0        0       0.535
CTypeTest             3     0      0        0       0.453

-------------------------------------------------------------------------------
org.apache.cassandra.db.context

Name                           Tests Errors Failures Skipped Time(s)
CounterContextTest-cdc         8     0      0        0       2.052
CounterContextTest-compression 8     0      0        0       2.030
CounterContextTest             8     0      0        0       1.950

-------------------------------------------------------------------------------
org.apache.cassandra.db.filter

Name                         Tests Errors Failures Skipped Time(s)
ColumnFilterTest-cdc         2     0      0        0       0.626
RowFilterTest-cdc            1     0      0        0       0.625
SliceTest-cdc                4     0      0        0       0.268
ColumnFilterTest-compression 2     0      0        0       0.662
RowFilterTest-compression    1     0      0        0       0.626
SliceTest-compression        4     0      0        0       0.274
ColumnFilterTest             2     0      0        0       0.554
RowFilterTest                1     0      0        0       0.553
SliceTest                    4     0      0        0       0.233

-------------------------------------------------------------------------------
org.apache.cassandra.db.lifecycle

Name                                 Tests Errors Failures Skipped Time(s)
HelpersTest-cdc                      8     0      0        0       14.746
LifecycleTransactionTest-cdc         8     0      0        0       2.617
LogTransactionTest-cdc               38    0      0        0       2.800
RealTransactionsTest-cdc             3     0      0        0       3.904
TrackerTest-cdc                      7     0      0        0       2.268
ViewTest-cdc                         3     0      0        0       2.080
HelpersTest-compression              8     0      0        0       14.657
LifecycleTransactionTest-compression 8     0      0        0       2.651
LogTransactionTest-compression       38    0      0        0       2.882
RealTransactionsTest-compression     3     0      0        0       4.153
TrackerTest-compression              7     0      0        0       2.367
ViewTest-compression                 3     0      0        0       2.150
HelpersTest                          8     0      0        0       13.337
LifecycleTransactionTest             8     0      0        0       2.496
LogTransactionTest                   38    0      0        0       3.084
RealTransactionsTest                 3     0      0        0       3.916
TrackerTest                          7     0      0        0       2.142
ViewTest                             3     0      0        0       1.954

-------------------------------------------------------------------------------
org.apache.cassandra.db.marshal

Name                                  Tests Errors Failures Skipped Time(s)
AbstractCompositeTypeTest-cdc         2     0      0        0       0.231
BytesTypeTest-cdc                     2     0      0        0       0.245
CollectionTypeTest-cdc                6     0      0        0       0.326
CompositeTypeTest-cdc                 8     0      0        0       3.115
DecimalTypeTest-cdc                   3     0      0        0       0.230
DynamicCompositeTypeTest-cdc          8     0      0        0       3.103
EmptyTypeTest-cdc                     7     0      0        0       0.833
IntegerTypeTest-cdc                   10    0      0        0       0.269
JsonConversionTest-cdc                30    0      0        0       0.702
ReversedTypeTest-cdc                  1     0      0        0       0.270
RoundTripTest-cdc                     8     0      0        0       0.498
SimpleDateTypeTest-cdc                1     0      0        0       0.286
TimeTypeTest-cdc                      2     0      0        0       3.502
TimeUUIDTypeTest-cdc                  6     0      0        0       7.576
TypeCompareTest-cdc                   6     0      0        0       0.289
TypeParserTest-cdc                    3     0      0        0       0.884
TypeValidationTest-cdc                10    0      0        0       0.656
UUIDTypeTest-cdc                      6     0      0        0       3.787
AbstractCompositeTypeTest-compression 2     0      0        0       0.226
BytesTypeTest-compression             2     0      0        0       0.242
CollectionTypeTest-compression        6     0      0        0       0.319
CompositeTypeTest-compression         8     0      0        0       3.131
DecimalTypeTest-compression           3     0      0        0       0.237
DynamicCompositeTypeTest-compression  8     0      0        0       3.200
EmptyTypeTest-compression             7     0      0        0       0.898
IntegerTypeTest-compression           10    0      0        0       0.287
JsonConversionTest-compression        30    0      0        0       0.736
ReversedTypeTest-compression          1     0      0        0       0.257
RoundTripTest-compression             8     0      0        0       0.499
SimpleDateTypeTest-compression        1     0      0        0       0.272
TimeTypeTest-compression              2     0      0        0       3.483
TimeUUIDTypeTest-compression          6     0      0        0       7.891
TypeCompareTest-compression           6     0      0        0       0.279
TypeParserTest-compression            3     0      0        0       0.910
TypeValidationTest-compression        10    0      0        0       0.679
UUIDTypeTest-compression              6     0      0        0       3.791
AbstractCompositeTypeTest             2     0      0        0       0.229
BytesTypeTest                         2     0      0        0       0.249
CollectionTypeTest                    6     0      0        0       0.276
CompositeTypeTest                     8     0      0        0       2.983
DecimalTypeTest                       3     0      0        0       0.207
DynamicCompositeTypeTest              8     0      0        0       2.960
EmptyTypeTest                         7     0      0        0       0.758
IntegerTypeTest                       10    0      0        0       0.277
JsonConversionTest                    30    0      0        0       0.620
ReversedTypeTest                      1     0      0        0       0.223
RoundTripTest                         8     0      0        0       0.449
SimpleDateTypeTest                    1     0      0        0       0.239
TimeTypeTest                          2     0      0        0       3.625
TimeUUIDTypeTest                      6     0      0        0       7.742
TypeCompareTest                       6     0      0        0       0.249
TypeParserTest                        3     0      0        0       0.770
TypeValidationTest                    10    0      0        0       0.662
UUIDTypeTest                          6     0      0        0       3.813

-------------------------------------------------------------------------------
org.apache.cassandra.db.monitoring

Name                           Tests Errors Failures Skipped Time(s)
MonitoringTaskTest-cdc         15    0      0        0       5.401
MonitoringTaskTest-compression 15    0      0        0       5.400
MonitoringTaskTest             15    0      0        0       5.456

-------------------------------------------------------------------------------
org.apache.cassandra.db.partition

Name                                    Tests Errors Failures Skipped Time(s)
PartitionImplementationTest-cdc         7     0      0        0       55.606
PartitionUpdateTest-cdc                 3     0      0        0       4.039
PartitionImplementationTest-compression 7     0      0        0       53.915
PartitionUpdateTest-compression         3     0      0        0       4.259
PartitionImplementationTest             7     0      0        0       51.761
PartitionUpdateTest                     3     0      0        0       4.576

-------------------------------------------------------------------------------
org.apache.cassandra.db.partitions

Name                          Tests Errors Failures Skipped Time(s)
PurgeFunctionTest-cdc         8     0      0        0       0.583
PurgeFunctionTest-compression 8     0      0        0       0.657
PurgeFunctionTest             8     0      0        0       0.539

-------------------------------------------------------------------------------
org.apache.cassandra.db.repair

Name                                           Tests Errors Failures Skipped Time
                                                                             (s)
AbstractPendingAntiCompactionTest-cdc          1     0      0        1       0.067
CompactionManagerGetSSTablesForValidationTest- 3     0      0        0       3.367
cdc
PendingAntiCompactionBytemanTest-cdc           1     0      0        0       3.831
PendingAntiCompactionTest-cdc                  18    0      0        0       12.501
AbstractPendingAntiCompactionTest-compression  1     0      0        1       0.064
CompactionManagerGetSSTablesForValidationTest- 3     0      0        0       3.309
compression
PendingAntiCompactionBytemanTest-compression   1     0      0        0       3.959
PendingAntiCompactionTest-compression          18    0      0        0       12.654
AbstractPendingAntiCompactionTest              1     0      0        1       0.060
CompactionManagerGetSSTablesForValidationTest  3     0      0        0       3.480
PendingAntiCompactionBytemanTest               1     0      0        0       3.917
PendingAntiCompactionTest                      18    0      0        0       13.466

-------------------------------------------------------------------------------
org.apache.cassandra.db.rows

Name                                    Tests Errors Failures Skipped Time(s)
ColumnMetadataVersionComparatorTest-cdc 10    0      0        0       0.315
EncodingStatsTest-cdc                   10    0      0        0       0.148
RowAndDeletionMergeIteratorTest-cdc     10    0      0        0       3.075
RowsTest-cdc                            9     0      0        0       1.021
ThrottledUnfilteredIteratorTest-cdc     7     0      0        0       9.852
UnfilteredRowIteratorsMergeTest-cdc     5     0      0        0       24.577
UnfilteredRowIteratorsTest-cdc          1     0      0        0       0.661
ColumnMetadataVersionComparatorTest-    10    0      0        0       0.336
compression
EncodingStatsTest-compression           10    0      0        0       0.151
RowAndDeletionMergeIteratorTest-        10    0      0        0       3.100
compression
RowsTest-compression                    9     0      0        0       1.093
ThrottledUnfilteredIteratorTest-        7     0      0        0       9.922
compression
UnfilteredRowIteratorsMergeTest-        5     0      0        0       24.750
compression
UnfilteredRowIteratorsTest-compression  1     0      0        0       0.644
ColumnMetadataVersionComparatorTest     10    0      0        0       0.334
EncodingStatsTest                       10    0      0        0       0.135
RowAndDeletionMergeIteratorTest         10    0      0        0       2.967
RowsTest                                9     0      0        0       0.905
ThrottledUnfilteredIteratorTest         7     0      0        0       10.051
UnfilteredRowIteratorsMergeTest         5     0      0        0       23.590
UnfilteredRowIteratorsTest              1     0      0        0       0.569

-------------------------------------------------------------------------------
org.apache.cassandra.db.streaming

Name                                    Tests Errors Failures Skipped Time(s)
CassandraEntireSSTableStreamWriterTest- 2     0      0        0       3.489
cdc
CassandraOutgoingFileTest-cdc           3     0      0        0       3.208
CassandraStreamHeaderTest-cdc           2     0      0        0       0.867
CassandraStreamManagerTest-cdc          2     0      0        0       3.466
ComponentManifestTest-cdc               2     0      0        0       0.255
StreamRequestTest-cdc                   1     0      0        0       0.880
CassandraEntireSSTableStreamWriterTest- 2     0      0        0       3.726
compression
CassandraOutgoingFileTest-compression   3     0      0        0       3.545
CassandraStreamHeaderTest-compression   2     0      0        0       0.885
CassandraStreamManagerTest-compression  2     0      0        0       3.586
ComponentManifestTest-compression       2     0      0        0       0.276
StreamRequestTest-compression           1     0      0        0       0.906
CassandraEntireSSTableStreamWriterTest  2     0      0        0       3.471
CassandraOutgoingFileTest               3     0      0        0       3.293
CassandraStreamHeaderTest               2     0      0        0       0.817
CassandraStreamManagerTest              2     0      0        0       3.454
ComponentManifestTest                   2     0      0        0       0.234
StreamRequestTest                       1     0      0        0       0.775

-------------------------------------------------------------------------------
org.apache.cassandra.db.transform

Name                                Tests Errors Failures Skipped Time(s)
DuplicateRowCheckerTest-cdc         7     0      0        0       5.649
RTTransformationsTest-cdc           15    0      0        0       0.594
DuplicateRowCheckerTest-compression 7     0      0        0       5.870
RTTransformationsTest-compression   15    0      0        0       0.634
DuplicateRowCheckerTest             7     0      0        0       6.885
RTTransformationsTest               15    0      0        0       0.562

-------------------------------------------------------------------------------
org.apache.cassandra.db.view

Name                            Tests Errors Failures Skipped Time(s)
ViewBuilderTaskTest-cdc         1     0      0        0       15.714
ViewUtilsTest-cdc               3     0      0        0       1.339
ViewBuilderTaskTest-compression 1     0      0        0       24.920
ViewUtilsTest-compression       3     0      0        0       1.503
ViewBuilderTaskTest             1     0      0        0       19.130
ViewUtilsTest                   3     0      0        0       1.233

-------------------------------------------------------------------------------
org.apache.cassandra.db.virtual

Name                                  Tests Errors Failures Skipped Time(s)
SettingsTableTest-cdc                 7     0      0        0       13.394
SystemPropertiesTableTest-cdc         6     0      0        0       12.839
SettingsTableTest-compression         7     0      0        0       14.700
SystemPropertiesTableTest-compression 6     0      0        0       13.189
SettingsTableTest                     7     0      0        0       14.732
SystemPropertiesTableTest             6     0      0        0       13.725

-------------------------------------------------------------------------------
org.apache.cassandra.dht

Name                                    Tests Errors Failures Skipped Time(s)
BootStrapperTest-cdc                    10    0      0        0       5.504
BoundsTest-cdc                          1     0      0        0       0.279
ByteOrderedPartitionerTest-cdc          6     0      0        0       2.140
KeyCollisionTest-cdc                    1     0      0        0       3.160
Murmur3PartitionerTest-cdc              10    0      0        0       1.681
OrderPreservingPartitionerTest-cdc      7     0      0        0       2.205
RandomPartitionerTest-cdc               9     0      0        0       1.999
RangeFetchMapCalculatorTest-cdc         12    0      0        0       0.930
RangeTest-cdc                           30    0      0        0       13.834
SplitterTest-cdc                        14    0      0        0       19.808
StreamStateStoreTest-cdc                1     0      0        0       2.052
BootStrapperTest-compression            10    0      0        0       7.715
BoundsTest-compression                  1     0      0        0       0.316
ByteOrderedPartitionerTest-compression  6     0      0        0       2.321
KeyCollisionTest-compression            1     0      0        0       3.225
Murmur3PartitionerTest-compression      10    0      0        0       1.744
OrderPreservingPartitionerTest-         7     0      0        0       2.246
compression
RandomPartitionerTest-compression       9     0      0        0       2.216
RangeFetchMapCalculatorTest-compression 12    0      0        0       1.031
RangeTest-compression                   30    0      0        0       13.269
SplitterTest-compression                14    0      0        0       19.443
StreamStateStoreTest-compression        1     0      0        0       2.112
BootStrapperTest                        10    0      0        0       6.326
BoundsTest                              1     0      0        0       0.231
ByteOrderedPartitionerTest              6     0      0        0       1.932
KeyCollisionTest                        1     0      0        0       3.059
Murmur3PartitionerTest                  10    0      0        0       1.699
OrderPreservingPartitionerTest          7     0      0        0       2.094
RandomPartitionerTest                   9     0      0        0       2.061
RangeFetchMapCalculatorTest             12    0      0        0       0.845
RangeTest                               30    0      0        0       13.938
SplitterTest                            14    0      0        0       19.578
StreamStateStoreTest                    1     0      0        0       1.867

-------------------------------------------------------------------------------
org.apache.cassandra.dht.tokenallocator

Name                                       Tests Errors Failures Skipped Time(s)
AbstractReplicationAwareTokenAllocatorTest 1     0      0        1       0.059
Murmur3ReplicationAwareTokenAllocatorTest  2     0      0        0       152.531
NoReplicationTokenAllocatorTest            4     0      0        0       6.394
RandomReplicationAwareTokenAllocatorTest   2     0      0        0       65.562

-------------------------------------------------------------------------------
org.apache.cassandra.diag

Name                                   Tests Errors Failures Skipped Time(s)
DiagnosticEventServiceTest-cdc         6     0      0        0       0.899
DiagnosticEventServiceTest-compression 6     0      0        0       0.926
DiagnosticEventServiceTest             6     0      0        0       0.802

-------------------------------------------------------------------------------
org.apache.cassandra.diag.store

Name                               Tests Errors Failures Skipped Time(s)
DiagnosticEventMemoryStoreTest-cdc 6     0      0        0       0.072
DiagnosticEventMemoryStoreTest-    6     0      0        0       0.074
compression
DiagnosticEventMemoryStoreTest     6     0      0        0       0.062

-------------------------------------------------------------------------------
org.apache.cassandra.distributed.test

Name                                             Tests Errors Failures Skipped Time(s)
BootstrapTest                                    1     0      0        0       83.886
CasWriteTest                                     9     0      0        0       26.397
FailingRepairTest                                6     0      0        0       30.343
FullRepairCoordinatorFastTest                    66    0      0        2       76.304
FullRepairCoordinatorNeighbourDownTest           12    0      0        0       225.213
FullRepairCoordinatorTimeoutTest                 6     0      0        0       93.425
GossipSettlesTest                                1     0      0        0       27.051
IncrementalRepairCoordinatorFastTest             66    0      0        6       73.087
IncrementalRepairCoordinatorNeighbourDownTest    12    0      0        0       226.385
IncrementalRepairCoordinatorTimeoutTest          6     0      0        0       93.626
JVMStabilityInspectorCorruptSSTableExceptionTest 2     0      0        0       81.865
LargeColumnTest                                  1     0      0        0       12.228
MessageFiltersTest                               5     0      0        0       57.553
MessageForwardingTest                            1     0      0        0       11.473
NativeProtocolTest                               2     0      0        0       68.441
NetworkTopologyTest                              6     0      0        0       21.274
NodeToolTest                                     1     0      0        0       6.537
PreviewRepairCoordinatorFastTest                 66    0      0        2       75.224
PreviewRepairCoordinatorNeighbourDownTest        12    0      0        0       225.403
PreviewRepairCoordinatorTimeoutTest              6     0      0        0       91.543
PreviewRepairTest                                4     0      0        0       120.418
QueryReplayerEndToEndTest                        1     0      0        0       46.914
ReadRepairTest                                   5     0      0        0       41.774
RepairBoundaryTest                               2     0      0        0       41.779
RepairCoordinatorFailingMessageTest              1     0      0        1       0.053
RepairDigestTrackingTest                         5     0      0        0       42.304
RepairTest                                       6     0      0        0       76.571
ReplicaFilteringProtectionTest                   3     0      0        0       9.481
ResourceLeakTest                                 1     0      0        1       0.054
ShortReadProtectionTest                          2     0      0        0       16.461
SimpleReadWriteTest                              15    0      0        0       135.403
StreamingTest                                    1     0      0        0       12.847
TableEstimatesTest                               2     0      0        0       6.810
TopologyChangeTest                               4     0      0        0       193.949

-------------------------------------------------------------------------------
org.apache.cassandra.distributed.upgrade

Name                    Tests Errors Failures Skipped Time(s)
MixedModeReadRepairTest 1     0      0        0       12.819
PagingTest              1     0      0        0       107.584
UpgradeTest             1     0      0        0       58.744

-------------------------------------------------------------------------------
org.apache.cassandra.fql

Name                            Tests Errors Failures Skipped Time(s)
FullQueryLoggerTest-cdc         35    0      0        0       8.582
FullQueryLoggerTest-compression 35    0      0        0       8.650
FullQueryLoggerTest             35    0      0        0       12.082

-------------------------------------------------------------------------------
org.apache.cassandra.fqltool

Name           Tests Errors Failures Skipped Time(s)
FQLCompareTest 3     0      0        0       2.372
FQLReplayTest  22    0      0        0       2.063

-------------------------------------------------------------------------------
org.apache.cassandra.gms

Name                                    Tests Errors Failures Skipped Time(s)
ArrayBackedBoundedStatsTest-cdc         2     0      0        0       0.072
ArrivalWindowTest-cdc                   1     0      0        0       0.522
EndpointStateTest-cdc                   2     0      0        0       1.363
ExpireEndpointTest-cdc                  1     0      0        0       1.022
FailureDetectorTest-cdc                 1     0      0        0       2.618
GossipDigestTest-cdc                    1     0      0        0       0.292
GossiperTest-cdc                        4     0      0        0       2.449
PendingRangeCalculatorServiceTest-cdc   1     0      0        0       4.661
SerializationsTest-cdc                  2     0      0        0       0.833
ShadowRoundTest-cdc                     1     0      0        0       5.922
ArrayBackedBoundedStatsTest-compression 2     0      0        0       0.076
ArrivalWindowTest-compression           1     0      0        0       0.462
EndpointStateTest-compression           2     0      0        0       1.218
ExpireEndpointTest-compression          1     0      0        0       0.959
FailureDetectorTest-compression         1     0      0        0       2.519
GossipDigestTest-compression            1     0      0        0       0.271
GossiperTest-compression                4     0      0        0       2.424
PendingRangeCalculatorServiceTest-      1     0      0        0       4.256
compression
SerializationsTest-compression          2     0      0        0       0.901
ShadowRoundTest-compression             1     0      0        0       5.798
ArrayBackedBoundedStatsTest             2     0      0        0       0.059
ArrivalWindowTest                       1     0      0        0       0.458
EndpointStateTest                       2     0      0        0       1.400
ExpireEndpointTest                      1     0      0        0       0.843
FailureDetectorTest                     1     0      0        0       2.317
GossipDigestTest                        1     0      0        0       0.231
GossiperTest                            4     0      0        0       2.104
PendingRangeCalculatorServiceTest       1     0      0        0       4.205
SerializationsTest                      2     0      0        0       0.754
ShadowRoundTest                         1     0      0        0       5.562

-------------------------------------------------------------------------------
org.apache.cassandra.hints

Name                                 Tests Errors Failures Skipped Time(s)
HintsWriteThenReadTest               1     0      0        0       76.518
ChecksummedDataInputTest-cdc         3     0      0        0       0.960
HintMessageTest-cdc                  1     0      0        0       3.165
HintTest-cdc                         7     0      0        0       4.540
HintWriteTTLTest-cdc                 4     0      0        0       3.209
HintsBufferPoolTest-cdc              1     0      0        0       3.757
HintsBufferTest-cdc                  2     0      0        0       6.624
HintsCatalogTest-cdc                 3     0      0        0       3.242
HintsCompressionTest-cdc             4     0      0        0       7.000
HintsDescriptorTest-cdc              5     0      0        0       0.515
HintsEncryptionTest-cdc              1     0      0        0       4.523
HintsReaderTest-cdc                  2     0      0        0       3.509
HintsServiceTest-cdc                 4     0      0        0       175.888
ChecksummedDataInputTest-compression 3     0      0        0       0.893
HintMessageTest-compression          1     0      0        0       3.203
HintTest-compression                 7     0      0        0       4.687
HintWriteTTLTest-compression         4     0      0        0       3.078
HintsBufferPoolTest-compression      1     0      0        0       3.836
HintsBufferTest-compression          2     0      0        0       6.043
HintsCatalogTest-compression         3     0      0        0       3.318
HintsCompressionTest-compression     4     0      0        0       7.138
HintsDescriptorTest-compression      5     0      0        0       0.528
HintsEncryptionTest-compression      1     0      0        0       4.584
HintsReaderTest-compression          2     0      0        0       3.606
HintsServiceTest-compression         4     0      0        0       176.016
ChecksummedDataInputTest             3     0      0        0       0.798
HintMessageTest                      1     0      0        0       3.185
HintTest                             7     0      0        0       4.800
HintWriteTTLTest                     4     0      0        0       3.031
HintsBufferPoolTest                  1     0      0        0       3.600
HintsBufferTest                      2     0      0        0       5.368
HintsCatalogTest                     3     0      0        0       3.029
HintsCompressionTest                 4     0      0        0       6.340
HintsDescriptorTest                  5     0      0        0       0.454
HintsEncryptionTest                  1     0      0        0       4.259
HintsReaderTest                      2     0      0        0       3.479
HintsServiceTest                     4     0      0        0       175.862

-------------------------------------------------------------------------------
org.apache.cassandra.index

Name                                  Tests Errors Failures Skipped Time(s)
CustomIndexTest-cdc                   29    0      0        0       24.655
SecondaryIndexManagerTest-cdc         16    0      0        0       27.390
CustomIndexTest-compression           29    0      0        0       25.486
SecondaryIndexManagerTest-compression 16    0      0        0       27.582
CustomIndexTest                       29    0      0        0       32.463
SecondaryIndexManagerTest             16    0      0        0       32.948

-------------------------------------------------------------------------------
org.apache.cassandra.index.internal

Name                           Tests Errors Failures Skipped Time(s)
CassandraIndexTest-cdc         27    0      0        0       20.220
CassandraIndexTest-compression 27    0      0        0       20.814
CassandraIndexTest             27    0      0        0       31.213

-------------------------------------------------------------------------------
org.apache.cassandra.index.sasi

Name                      Tests Errors Failures Skipped Time(s)
SASICQLTest-cdc           9     0      0        0       19.626
SASIIndexTest-cdc         32    0      0        0       19.156
SASICQLTest-compression   9     0      0        0       20.249
SASIIndexTest-compression 32    0      0        0       20.571
SASICQLTest               9     0      0        0       25.173
SASIIndexTest             32    0      0        0       21.835

-------------------------------------------------------------------------------
org.apache.cassandra.index.sasi.analyzer

Name                                  Tests Errors Failures Skipped Time(s)
DelimiterAnalyzerTest-cdc             12    0      0        0       0.424
NonTokenizingAnalyzerTest-cdc         3     0      0        0       0.276
StandardAnalyzerTest-cdc              10    0      0        0       0.609
DelimiterAnalyzerTest-compression     12    0      0        0       0.438
NonTokenizingAnalyzerTest-compression 3     0      0        0       0.271
StandardAnalyzerTest-compression      10    0      0        0       0.626
DelimiterAnalyzerTest                 12    0      0        0       0.388
NonTokenizingAnalyzerTest             3     0      0        0       0.236
StandardAnalyzerTest                  10    0      0        0       0.582

-------------------------------------------------------------------------------
org.apache.cassandra.index.sasi.disk

Name                                  Tests Errors Failures Skipped Time(s)
OnDiskIndexTest-cdc                   12    0      0        0       15.962
PerSSTableIndexWriterTest-cdc         2     0      0        0       5.950
TokenTreeTest-cdc                     14    0      0        0       13.263
OnDiskIndexTest-compression           12    0      0        0       15.954
PerSSTableIndexWriterTest-compression 2     0      0        0       5.925
TokenTreeTest-compression             14    0      0        0       13.566
OnDiskIndexTest                       12    0      0        0       15.739
PerSSTableIndexWriterTest             2     0      0        0       5.696
TokenTreeTest                         14    0      0        0       13.399

-------------------------------------------------------------------------------
org.apache.cassandra.index.sasi.plan

Name                       Tests Errors Failures Skipped Time(s)
ExpressionTest-cdc         2     0      0        0       0.231
OperationTest-cdc          6     0      0        0       4.501
ExpressionTest-compression 2     0      0        0       0.252
OperationTest-compression  6     0      0        0       4.774
ExpressionTest             2     0      0        0       0.212
OperationTest              6     0      0        0       4.701

-------------------------------------------------------------------------------
org.apache.cassandra.index.sasi.utils

Name                                      Tests Errors Failures Skipped Time(s)
LongIteratorTest-cdc                      2     0      0        0       0.072
MappedBufferTest-cdc                      26    0      0        0       2.220
RangeIntersectionIteratorTest-cdc         11    0      0        0       0.295
RangeUnionIteratorTest-cdc                13    0      0        0       0.297
LongIteratorTest-compression              2     0      0        0       0.075
MappedBufferTest-compression              26    0      0        0       2.186
RangeIntersectionIteratorTest-compression 11    0      0        0       0.296
RangeUnionIteratorTest-compression        13    0      0        0       0.309
LongIteratorTest                          2     0      0        0       0.065
MappedBufferTest                          26    0      0        0       3.118
RangeIntersectionIteratorTest             11    0      0        0       0.276
RangeUnionIteratorTest                    13    0      0        0       0.279

-------------------------------------------------------------------------------
org.apache.cassandra.io

Name                               Tests Errors Failures Skipped Time(s)
BloomFilterTrackerTest-cdc         3     0      0        0       0.066
DiskSpaceMetricsTest-cdc           2     0      0        0       17.776
BloomFilterTrackerTest-compression 3     0      0        0       0.071
DiskSpaceMetricsTest-compression   2     0      0        0       18.316
BloomFilterTrackerTest             3     0      0        0       0.059
DiskSpaceMetricsTest               2     0      0        0       19.172

-------------------------------------------------------------------------------
org.apache.cassandra.io.compress

Name                                     Tests Errors Failures Skipped Time(s)
CQLCompressionTest-cdc                   11    0      0        0       6.675
CompressedRandomAccessReaderTest-cdc     8     0      0        0       1.239
CompressedSequentialWriterReopenTest-cdc 4     0      0        0       7.754
CompressedSequentialWriterTest-cdc       14    0      0        0       1.799
CompressorTest-cdc                       6     0      0        0       0.802
ZstdCompressorTest-cdc                   3     0      0        0       0.294
CQLCompressionTest-compression           11    0      0        0       6.984
CompressedRandomAccessReaderTest-        8     0      0        0       1.295
compression
CompressedSequentialWriterReopenTest-    4     0      0        0       8.477
compression
CompressedSequentialWriterTest-          14    0      0        0       1.853
compression
CompressorTest-compression               6     0      0        0       0.873
ZstdCompressorTest-compression           3     0      0        0       0.275
CQLCompressionTest                       11    0      0        0       8.713
CompressedRandomAccessReaderTest         8     0      0        0       1.191
CompressedSequentialWriterReopenTest     4     0      0        0       7.785
CompressedSequentialWriterTest           14    0      0        0       1.734
CompressorTest                           6     0      0        0       0.813
ZstdCompressorTest                       3     0      0        0       0.233

-------------------------------------------------------------------------------
org.apache.cassandra.io.sstable

Name                                   Tests Errors Failures Skipped Time(s)
CQLSSTableWriterLongTest               1     0      0        0       5.983
BigTableWriterTest-cdc                 5     0      0        0       3.337
CQLSSTableWriterClientTest-cdc         1     0      0        0       1.849
CQLSSTableWriterTest-cdc               11    0      0        0       26.815
DescriptorTest-cdc                     7     0      0        0       0.917
IndexSummaryManagerTest-cdc            8     0      0        0       5.793
IndexSummaryRedistributionTest-cdc     1     0      0        0       4.143
IndexSummaryTest-cdc                   12    0      0        0       32.267
LargePartitionsTest-cdc                1     0      0        1       0.061
LegacySSTableTest-cdc                  11    0      0        1       55.843
SSTableCorruptionDetectionTest-cdc     2     0      0        0       51.790
SSTableHeaderFixTest-cdc               14    0      0        0       1.256
SSTableLoaderTest-cdc                  3     0      0        0       19.863
SSTableMetadataTest-cdc                3     0      0        0       3.607
SSTableReaderTest-cdc                  19    0      0        0       8.584
SSTableRewriterTest-cdc                20    0      0        0       12.970
SSTableScannerTest-cdc                 3     0      0        0       3.201
SSTableWriterTest-cdc                  5     0      0        0       59.307
BigTableWriterTest-compression         5     0      0        0       3.559
CQLSSTableWriterClientTest-compression 1     0      0        0       1.913
CQLSSTableWriterTest-compression       11    0      0        0       26.945
DescriptorTest-compression             7     0      0        0       0.982
IndexSummaryManagerTest-compression    8     0      0        0       6.165
IndexSummaryRedistributionTest-        1     0      0        0       4.416
compression
IndexSummaryTest-compression           12    0      0        0       32.637
LargePartitionsTest-compression        1     0      0        1       0.069
LegacySSTableTest-compression          11    0      0        1       56.831
SSTableCorruptionDetectionTest-        2     0      0        0       55.551
compression
SSTableHeaderFixTest-compression       14    0      0        0       1.280
SSTableLoaderTest-compression          3     0      0        0       21.396
SSTableMetadataTest-compression        3     0      0        0       3.746
SSTableReaderTest-compression          19    0      0        0       8.842
SSTableRewriterTest-compression        20    0      0        0       15.596
SSTableScannerTest-compression         3     0      0        0       3.380
SSTableWriterTest-compression          5     0      0        0       34.709
BigTableWriterTest                     5     0      0        0       3.335
CQLSSTableWriterClientTest             1     0      0        0       1.681
CQLSSTableWriterTest                   11    0      0        0       26.152
DescriptorTest                         7     0      0        0       0.826
IndexSummaryManagerTest                8     0      0        0       6.372
IndexSummaryRedistributionTest         1     0      0        0       3.898
IndexSummaryTest                       12    0      0        0       31.595
LargePartitionsTest                    1     0      0        1       0.054
LegacySSTableTest                      11    0      0        1       60.700
SSTableCorruptionDetectionTest         2     0      0        0       44.234
SSTableHeaderFixTest                   14    0      0        0       1.153
SSTableLoaderTest                      3     0      0        0       19.353
SSTableMetadataTest                    3     0      0        0       3.537
SSTableReaderTest                      19    0      0        0       8.919
SSTableRewriterTest                    20    0      0        0       13.721
SSTableScannerTest                     3     0      0        0       3.166
SSTableWriterTest                      5     0      0        0       29.320

-------------------------------------------------------------------------------
org.apache.cassandra.io.sstable.format

Name                                 Tests Errors Failures Skipped Time(s)
SSTableFlushObserverTest-cdc         1     0      0        0       2.091
SSTableFlushObserverTest-compression 1     0      0        0       2.252
SSTableFlushObserverTest             1     0      0        0       1.995

-------------------------------------------------------------------------------
org.apache.cassandra.io.sstable.format.big

Name                                   Tests Errors Failures Skipped Time(s)
BigTableZeroCopyWriterTest-cdc         2     0      0        0       3.463
BigTableZeroCopyWriterTest-compression 2     0      0        0       3.574
BigTableZeroCopyWriterTest             2     0      0        0       3.450

-------------------------------------------------------------------------------
org.apache.cassandra.io.sstable.metadata

Name                               Tests Errors Failures Skipped Time(s)
MetadataSerializerTest-cdc         9     0      0        0       1.082
MetadataSerializerTest-compression 9     0      0        0       1.145
MetadataSerializerTest             9     0      0        0       0.977

-------------------------------------------------------------------------------
org.apache.cassandra.io.util

Name                                     Tests Errors Failures Skipped Time(s)
BufferedDataOutputStreamTest-cdc         16    0      0        0       27.758
BufferedRandomAccessFileTest-cdc         17    0      0        0       1.083
ChecksummedRandomAccessReaderTest-cdc    3     0      0        0       0.902
ChecksummedSequentialWriterTest-cdc      7     0      0        0       0.893
DataOutputTest-cdc                       15    0      0        0       0.918
DiskOptimizationStrategyTest-cdc         5     0      0        0       0.072
FileSegmentInputStreamTest-cdc           7     0      0        0       0.091
FileUtilsTest-cdc                        4     0      0        0       0.815
MemoryTest-cdc                           2     0      0        0       0.307
MmappedRegionsTest-cdc                   12    0      0        0       1.067
NIODataInputStreamTest-cdc               17    0      0        0       8.997
RandomAccessReaderTest-cdc               11    0      0        0       1.425
RewindableDataInputStreamPlusTest-cdc    8     0      0        0       0.251
SafeMemoryWriterTest-cdc                 2     0      0        0       2.553
SequentialWriterTest-cdc                 7     0      0        0       0.840
BufferedDataOutputStreamTest-compression 16    0      0        0       25.751
BufferedRandomAccessFileTest-compression 17    0      0        0       1.192
ChecksummedRandomAccessReaderTest-       3     0      0        0       0.935
compression
ChecksummedSequentialWriterTest-         7     0      0        0       0.926
compression
DataOutputTest-compression               15    0      0        0       0.953
DiskOptimizationStrategyTest-compression 5     0      0        0       0.079
FileSegmentInputStreamTest-compression   7     0      0        0       0.103
FileUtilsTest-compression                4     0      0        0       0.887
MemoryTest-compression                   2     0      0        0       0.330
MmappedRegionsTest-compression           12    0      0        0       1.052
NIODataInputStreamTest-compression       17    0      0        0       9.046
RandomAccessReaderTest-compression       11    0      0        0       1.395
RewindableDataInputStreamPlusTest-       8     0      0        0       0.256
compression
SafeMemoryWriterTest-compression         2     0      0        0       2.648
SequentialWriterTest-compression         7     0      0        0       0.916
BufferedDataOutputStreamTest             16    0      0        0       23.841
BufferedRandomAccessFileTest             17    0      0        0       1.007
ChecksummedRandomAccessReaderTest        3     0      0        0       0.804
ChecksummedSequentialWriterTest          7     0      0        0       0.779
DataOutputTest                           15    0      0        0       0.816
DiskOptimizationStrategyTest             5     0      0        0       0.067
FileSegmentInputStreamTest               7     0      0        0       0.083
FileUtilsTest                            4     0      0        0       0.781
MemoryTest                               2     0      0        0       0.261
MmappedRegionsTest                       12    0      0        0       0.947
NIODataInputStreamTest                   17    0      0        0       8.990
RandomAccessReaderTest                   11    0      0        0       1.323
RewindableDataInputStreamPlusTest        8     0      0        0       0.221
SafeMemoryWriterTest                     2     0      0        0       2.139
SequentialWriterTest                     7     0      0        0       0.794

-------------------------------------------------------------------------------
org.apache.cassandra.locator

Name                                      Tests Errors Failures Skipped Time(s)
DynamicEndpointSnitchLongTest             1     0      0        0       25.009
AlibabaCloudSnitchTest-cdc                2     0      0        0       10.637
CloudstackSnitchTest-cdc                  2     0      0        0       10.638
DynamicEndpointSnitchTest-cdc             1     0      0        0       2.244
EC2SnitchTest-cdc                         13    0      0        0       10.601
GoogleCloudSnitchTest-cdc                 2     0      0        0       10.597
GossipingPropertyFileSnitchTest-cdc       1     0      0        0       0.840
InetAddressAndPortSerializerTest-cdc      1     0      0        0       0.263
InetAddressAndPortTest-cdc                4     0      0        0       0.148
NetworkTopologyStrategyTest-cdc           5     0      0        0       2.979
PendingRangeMapsTest-cdc                  2     0      0        0       0.454
PendingRangesTest-cdc                     1     0      0        0       0.927
PropertyFileSnitchTest-cdc                5     0      0        0       15.942
ReconnectableSnitchHelperTest-cdc         1     0      0        0       1.035
ReplicaCollectionTest-cdc                 6     0      0        0       0.766
ReplicaLayoutTest-cdc                     1     0      0        0       0.453
ReplicaPlansTest-cdc                      1     0      0        0       0.994
ReplicationFactorTest-cdc                 2     0      0        0       0.896
ReplicationStrategyEndpointCacheTest-cdc  2     0      0        0       2.997
SimpleStrategyTest-cdc                    7     0      0        0       3.082
TokenMetadataTest-cdc                     6     0      0        0       0.917
AlibabaCloudSnitchTest-compression        2     0      0        0       10.743
CloudstackSnitchTest-compression          2     0      0        0       10.795
DynamicEndpointSnitchTest-compression     1     0      0        0       2.255
EC2SnitchTest-compression                 13    0      0        0       10.763
GoogleCloudSnitchTest-compression         2     0      0        0       10.724
GossipingPropertyFileSnitchTest-          1     0      0        0       0.867
compression
InetAddressAndPortSerializerTest-         1     0      0        0       0.270
compression
InetAddressAndPortTest-compression        4     0      0        0       0.155
NetworkTopologyStrategyTest-compression   5     0      0        0       3.097
PendingRangeMapsTest-compression          2     0      0        0       0.453
PendingRangesTest-compression             1     0      0        0       1.000
PropertyFileSnitchTest-compression        5     0      0        0       16.013
ReconnectableSnitchHelperTest-compression 1     0      0        0       1.083
ReplicaCollectionTest-compression         6     0      0        0       0.825
ReplicaLayoutTest-compression             1     0      0        0       0.460
ReplicaPlansTest-compression              1     0      0        0       1.030
ReplicationFactorTest-compression         2     0      0        0       0.906
ReplicationStrategyEndpointCacheTest-     2     0      0        0       3.176
compression
SimpleStrategyTest-compression            7     0      0        0       3.302
TokenMetadataTest-compression             6     0      0        0       0.964
AlibabaCloudSnitchTest                    2     0      0        0       10.587
CloudstackSnitchTest                      2     0      0        0       10.532
DynamicEndpointSnitchTest                 1     0      0        0       2.088
EC2SnitchTest                             13    0      0        0       10.511
GoogleCloudSnitchTest                     2     0      0        0       10.499
GossipingPropertyFileSnitchTest           1     0      0        0       0.747
InetAddressAndPortSerializerTest          1     0      0        0       0.231
InetAddressAndPortTest                    4     0      0        0       0.118
NetworkTopologyStrategyTest               5     0      0        0       2.886
PendingRangeMapsTest                      2     0      0        0       0.394
PendingRangesTest                         1     0      0        0       0.843
PropertyFileSnitchTest                    5     0      0        0       15.873
ReconnectableSnitchHelperTest             1     0      0        0       0.946
ReplicaCollectionTest                     6     0      0        0       0.708
ReplicaLayoutTest                         1     0      0        0       0.401
ReplicaPlansTest                          1     0      0        0       0.889
ReplicationFactorTest                     2     0      0        0       0.781
ReplicationStrategyEndpointCacheTest      2     0      0        0       2.931
SimpleStrategyTest                        7     0      0        0       3.027
TokenMetadataTest                         6     0      0        0       0.803

-------------------------------------------------------------------------------
org.apache.cassandra.metrics

Name                                     Tests Errors Failures Skipped Time(s)
BatchMetricsTest-cdc                     3     0      0        0       10.281
BufferPoolMetricsTest-cdc                4     0      0        0       1.006
CQLMetricsTest-cdc                       4     0      0        0       6.305
CassandraMetricsRegistryTest-cdc         5     0      0        0       0.323
DecayingEstimatedHistogramReservoirTest- 15    0      0        1       12.611
cdc
HintedHandOffMetricsTest-cdc             1     0      0        0       2.060
KeyspaceMetricsTest-cdc                  1     0      0        0       5.536
LatencyMetricsTest-cdc                   3     0      0        0       0.335
MaxSamplerTest-cdc                       8     0      0        0       5.248
SamplerTest-cdc                          5     0      0        0       1.176
TableMetricsTest-cdc                     9     0      0        0       9.306
TopFrequencySamplerTest-cdc              6     0      0        0       2.058
BatchMetricsTest-compression             3     0      0        0       9.890
BufferPoolMetricsTest-compression        4     0      0        0       1.040
CQLMetricsTest-compression               4     0      0        0       6.631
CassandraMetricsRegistryTest-compression 5     0      0        0       0.312
DecayingEstimatedHistogramReservoirTest- 15    0      0        1       12.068
compression
HintedHandOffMetricsTest-compression     1     0      0        0       2.216
KeyspaceMetricsTest-compression          1     0      0        0       5.887
LatencyMetricsTest-compression           3     0      0        0       0.339
MaxSamplerTest-compression               8     0      0        0       5.186
SamplerTest-compression                  5     0      0        0       1.197
TableMetricsTest-compression             9     0      0        0       9.715
TopFrequencySamplerTest-compression      6     0      0        0       2.067
BatchMetricsTest                         3     0      0        0       14.557
BufferPoolMetricsTest                    4     0      0        0       0.897
CQLMetricsTest                           4     0      0        0       6.557
CassandraMetricsRegistryTest             5     0      0        0       0.270
DecayingEstimatedHistogramReservoirTest  15    0      0        1       12.248
HintedHandOffMetricsTest                 1     0      0        0       1.848
KeyspaceMetricsTest                      1     0      0        0       5.931
LatencyMetricsTest                       3     0      0        0       0.280
MaxSamplerTest                           8     0      0        0       5.057
SamplerTest                              5     0      0        0       1.052
TableMetricsTest                         9     0      0        0       10.549
TopFrequencySamplerTest                  6     0      0        0       2.003

-------------------------------------------------------------------------------
org.apache.cassandra.net

Name                                      Tests Errors Failures Skipped Time(s)
ConnectionBurnTest                        1     0      0        0       123.741
AsyncChannelPromiseTest-cdc               4     0      0        0       0.449
AsyncMessageOutputPlusTest-cdc            1     0      0        0       0.963
AsyncOneResponseTest-cdc                  2     0      0        0       4.254
AsyncPromiseTest-cdc                      4     0      0        0       0.380
AsyncStreamingInputPlusTest-cdc           13    0      0        0       1.410
AsyncStreamingOutputPlusTest-cdc          3     0      0        0       0.974
ChunkedInputPlusTest-cdc                  5     0      0        0       0.504
ConnectionTest-cdc                        13    1      0        0       105.592
ForwardingInfoTest-cdc                    2     0      0        0       0.275
FramingTest-cdc                           4     0      0        0       24.157
HandshakeTest-cdc                         13    0      0        0       2.326
ManyToOneConcurrentLinkedQueueTest-cdc    22    0      0        0       1.661
MessageTest-cdc                           7     0      0        0       1.397
MessagingServiceTest-cdc                  14    0      0        0       2.459
MockMessagingServiceTest-cdc              1     0      0        0       3.780
OutboundConnectionSettingsTest-cdc        9     0      0        0       2.177
OutboundConnectionsTest-cdc               6     0      0        0       2.263
OutboundMessageQueueTest-cdc              3     0      0        0       0.935
ProxyHandlerConnectionsTest-cdc           5     0      0        0       35.918
PrunableArrayQueueTest-cdc                9     0      0        0       0.073
ResourceLimitsTest-cdc                    4     0      0        0       0.153
StartupClusterConnectivityCheckerTest-cdc 7     0      0        0       1.175
VerbTest-cdc                              1     0      0        0       0.147
WriteCallbackInfoTest-cdc                 1     0      0        0       1.166
AsyncChannelPromiseTest-compression       4     0      0        0       0.458
AsyncMessageOutputPlusTest-compression    1     0      0        0       1.002
AsyncOneResponseTest-compression          2     0      0        0       4.285
AsyncPromiseTest-compression              4     0      0        0       0.397
AsyncStreamingInputPlusTest-compression   13    0      0        0       1.467
AsyncStreamingOutputPlusTest-compression  3     0      0        0       1.027
ChunkedInputPlusTest-compression          5     0      0        0       0.546
ConnectionTest-compression                13    0      0        0       77.665
ForwardingInfoTest-compression            2     0      0        0       0.294
FramingTest-compression                   4     0      0        0       24.009
HandshakeTest-compression                 13    0      0        0       2.433
ManyToOneConcurrentLinkedQueueTest-       22    0      0        0       1.637
compression
MessageTest-compression                   7     0      0        0       1.508
MessagingServiceTest-compression          14    0      0        0       2.498
MockMessagingServiceTest-compression      1     0      0        0       3.940
OutboundConnectionSettingsTest-           9     0      0        0       2.253
compression
OutboundConnectionsTest-compression       6     0      0        0       2.376
OutboundMessageQueueTest-compression      3     0      0        0       0.979
ProxyHandlerConnectionsTest-compression   5     0      0        0       35.991
PrunableArrayQueueTest-compression        9     0      0        0       0.078
ResourceLimitsTest-compression            4     0      0        0       0.144
StartupClusterConnectivityCheckerTest-    7     0      0        0       1.220
compression
VerbTest-compression                      1     0      0        0       0.154
WriteCallbackInfoTest-compression         1     0      0        0       1.249
AsyncChannelPromiseTest                   4     0      0        0       0.402
AsyncMessageOutputPlusTest                1     0      0        0       0.881
AsyncOneResponseTest                      2     0      0        0       4.244
AsyncPromiseTest                          4     0      0        0       0.365
AsyncStreamingInputPlusTest               13    0      0        0       1.446
AsyncStreamingOutputPlusTest              3     0      0        0       0.862
ChunkedInputPlusTest                      5     0      0        0       0.462
ConnectionTest                            13    1      0        0       90.436
ForwardingInfoTest                        2     0      0        0       0.362
FramingTest                               4     0      0        0       25.683
HandshakeTest                             13    0      0        0       2.794
ManyToOneConcurrentLinkedQueueTest        22    0      0        0       1.697
MessageTest                               7     0      0        0       1.315
MessagingServiceTest                      14    0      0        0       2.396
MockMessagingServiceTest                  1     0      0        0       3.693
OutboundConnectionSettingsTest            9     0      0        0       2.062
OutboundConnectionsTest                   6     0      0        0       2.138
OutboundMessageQueueTest                  3     0      0        0       0.848
ProxyHandlerConnectionsTest               5     0      0        0       36.456
PrunableArrayQueueTest                    9     0      0        0       0.076
ResourceLimitsTest                        4     0      0        0       0.155
StartupClusterConnectivityCheckerTest     7     0      0        0       1.122
VerbTest                                  1     0      0        0       0.132
WriteCallbackInfoTest                     1     0      0        0       1.176

-------------------------------------------------------------------------------
org.apache.cassandra.net.proxy

Name                         Tests Errors Failures Skipped Time(s)
ProxyHandlerTest-cdc         3     0      0        0       0.768
ProxyHandlerTest-compression 3     0      0        0       0.792
ProxyHandlerTest             3     0      0        0       0.816

-------------------------------------------------------------------------------
org.apache.cassandra.repair

Name                                    Tests Errors Failures Skipped Time(s)
AbstractRepairTest-cdc                  1     0      0        1       0.059
LocalSyncTaskTest-cdc                   6     0      0        0       4.179
RepairJobTest-cdc                       16    0      0        0       4.201
RepairRunnableTest-cdc                  2     0      0        0       0.843
RepairSessionTest-cdc                   1     0      0        0       0.933
StreamingRepairTaskTest-cdc             2     0      0        0       3.136
SymmetricRemoteSyncTaskTest-cdc         1     0      0        0       0.916
ValidatorTest-cdc                       6     0      0        0       29.072
AbstractRepairTest-compression          1     0      0        1       0.062
LocalSyncTaskTest-compression           6     0      0        0       4.324
RepairJobTest-compression               16    0      0        0       4.428
RepairRunnableTest-compression          2     0      0        0       0.888
RepairSessionTest-compression           1     0      0        0       0.986
StreamingRepairTaskTest-compression     2     0      0        0       3.320
SymmetricRemoteSyncTaskTest-compression 1     0      0        0       0.956
ValidatorTest-compression               6     0      0        0       29.698
AbstractRepairTest                      1     0      0        1       0.070
LocalSyncTaskTest                       6     0      0        0       4.584
RepairJobTest                           16    0      0        0       4.155
RepairRunnableTest                      2     0      0        0       0.754
RepairSessionTest                       1     0      0        0       0.909
StreamingRepairTaskTest                 2     0      0        0       3.278
SymmetricRemoteSyncTaskTest             1     0      0        0       0.834
ValidatorTest                           6     0      0        0       27.486

-------------------------------------------------------------------------------
org.apache.cassandra.repair.asymmetric

Name                              Tests Errors Failures Skipped Time(s)
DifferenceHolderTest-cdc          2     0      0        0       0.340
RangeDenormalizerTest-cdc         3     0      0        0       0.265
ReduceHelperTest-cdc              5     0      0        0       0.301
StreamFromOptionsTest-cdc         3     0      0        0       0.282
DifferenceHolderTest-compression  2     0      0        0       0.344
RangeDenormalizerTest-compression 3     0      0        0       0.289
ReduceHelperTest-compression      5     0      0        0       0.343
StreamFromOptionsTest-compression 3     0      0        0       0.292
DifferenceHolderTest              2     0      0        0       0.292
RangeDenormalizerTest             3     0      0        0       0.248
ReduceHelperTest                  5     0      0        0       0.276
StreamFromOptionsTest             3     0      0        0       0.250

-------------------------------------------------------------------------------
org.apache.cassandra.repair.consistent

Name                                      Tests Errors Failures Skipped Time(s)
AbstractConsistentSessionTest-cdc         1     0      0        1       0.058
CoordinatorMessagingTest-cdc              7     0      0        0       5.715
CoordinatorSessionTest-cdc                7     0      0        0       1.042
CoordinatorSessionsTest-cdc               7     0      0        0       3.110
LocalSessionTest-cdc                      40    0      0        0       4.394
AbstractConsistentSessionTest-compression 1     0      0        1       0.066
CoordinatorMessagingTest-compression      7     0      0        0       5.812
CoordinatorSessionTest-compression        7     0      0        0       1.061
CoordinatorSessionsTest-compression       7     0      0        0       3.144
LocalSessionTest-compression              40    0      0        0       4.717
AbstractConsistentSessionTest             1     0      0        1       0.056
CoordinatorMessagingTest                  7     0      0        0       5.862
CoordinatorSessionTest                    7     0      0        0       1.035
CoordinatorSessionsTest                   7     0      0        0       3.065
LocalSessionTest                          40    0      0        0       5.358

-------------------------------------------------------------------------------
org.apache.cassandra.repair.messages

Name                                    Tests Errors Failures Skipped Time(s)
RepairMessageSerializationsTest-cdc     8     0      0        0       0.943
RepairMessageSerializerTest-cdc         6     0      0        0       0.516
RepairOptionTest-cdc                    4     0      0        0       0.913
RepairMessageSerializationsTest-        8     0      0        0       1.015
compression
RepairMessageSerializerTest-compression 6     0      0        0       0.532
RepairOptionTest-compression            4     0      0        0       0.894
RepairMessageSerializationsTest         8     0      0        0       0.875
RepairMessageSerializerTest             6     0      0        0       0.467
RepairOptionTest                        4     0      0        0       0.816

-------------------------------------------------------------------------------
org.apache.cassandra.schema

Name                                     Tests Errors Failures Skipped Time(s)
CreateTableValidationTest-cdc            1     0      0        0       3.248
IndexMetadataTest-cdc                    3     0      0        0       0.236
MigrationManagerTest-cdc                 17    0      0        0       5.210
SchemaKeyspaceTest-cdc                   5     0      0        0       3.534
SchemaTest-cdc                           1     0      0        0       2.371
TupleTypesRepresentationTest-cdc         2     0      0        1       0.942
ValidationTest-cdc                       4     0      0        0       0.301
CreateTableValidationTest-compression    1     0      0        0       3.456
IndexMetadataTest-compression            3     0      0        0       0.267
MigrationManagerTest-compression         17    0      0        0       5.591
SchemaKeyspaceTest-compression           5     0      0        0       3.715
SchemaTest-compression                   1     0      0        0       2.560
TupleTypesRepresentationTest-compression 2     0      0        1       0.961
ValidationTest-compression               4     0      0        0       0.310
CreateTableValidationTest                1     0      0        0       3.521
IndexMetadataTest                        3     0      0        0       0.219
MigrationManagerTest                     17    0      0        0       5.958
SchemaKeyspaceTest                       5     0      0        0       4.127
SchemaTest                               1     0      0        0       2.479
TupleTypesRepresentationTest             2     0      0        1       0.868
ValidationTest                           4     0      0        0       0.307

-------------------------------------------------------------------------------
org.apache.cassandra.security

Name                            Tests Errors Failures Skipped Time(s)
CipherFactoryTest-cdc           7     0      0        0       0.546
EncryptionUtilsTest-cdc         3     0      0        0       1.127
JKSKeyProviderTest-cdc          2     0      0        0       0.313
SSLFactoryTest-cdc              14    0      0        0       1.450
CipherFactoryTest-compression   7     0      0        0       0.561
EncryptionUtilsTest-compression 3     0      0        0       1.205
JKSKeyProviderTest-compression  2     0      0        0       0.324
SSLFactoryTest-compression      14    0      0        0       1.418
CipherFactoryTest               7     0      0        0       0.484
EncryptionUtilsTest             3     0      0        0       1.052
JKSKeyProviderTest              2     0      0        0       0.298
SSLFactoryTest                  14    0      0        0       1.246

-------------------------------------------------------------------------------
org.apache.cassandra.serializers

Name                                 Tests Errors Failures Skipped Time(s)
SimpleDateSerializerTest-cdc         9     0      0        0       0.270
TimeSerializerTest-cdc               16    0      0        0       0.079
TimestampSerializerTest-cdc          7     0      0        0       0.313
SimpleDateSerializerTest-compression 9     0      0        0       0.279
TimeSerializerTest-compression       16    0      0        0       0.083
TimestampSerializerTest-compression  7     0      0        0       0.329
SimpleDateSerializerTest             9     0      0        0       0.278
TimeSerializerTest                   16    0      0        0       0.076
TimestampSerializerTest              7     0      0        0       0.311

-------------------------------------------------------------------------------
org.apache.cassandra.service

Name                                   Tests Errors Failures Skipped Time(s)
ActiveRepairServiceTest-cdc            11    0      0        0       3.700
BootstrapTransientTest-cdc             1     0      0        0       0.931
ClientWarningsTest-cdc                 4     0      0        0       26.665
GCInspectorTest-cdc                    6     0      0        0       0.861
JoinTokenRingTest-cdc                  1     0      0        0       4.672
LeaveAndBootstrapTest-cdc              8     0      0        0       5.088
LegacyAuthFailTest-cdc                 1     0      0        0       4.483
MoveTest-cdc                           7     0      0        0       21.264
MoveTransientTest-cdc                  19    0      0        0       1.194
NativeTransportServiceTest-cdc         11    0      0        0       7.772
PaxosStateTest-cdc                     2     0      0        0       4.608
ProtocolBetaVersionTest-cdc            2     0      0        0       12.607
QueryPagerTest-cdc                     8     0      0        0       3.441
RMIServerSocketFactoryImplTest-cdc     1     0      0        0       0.075
RemoveTest-cdc                         4     0      0        0       5.900
SerializationsTest-cdc                 4     0      0        0       0.935
StartupChecksTest-cdc                  3     0      0        0       2.910
StorageProxyTest-cdc                   4     0      0        0       1.072
StorageServiceServerTest-cdc           19    0      0        1       8.870
StorageServiceTest-cdc                 1     0      0        0       0.967
WriteResponseHandlerTest-cdc           5     0      0        0       3.255
WriteResponseHandlerTransientTest-cdc  4     0      0        0       3.141
ActiveRepairServiceTest-compression    11    0      0        0       3.897
BootstrapTransientTest-compression     1     0      0        0       1.024
ClientWarningsTest-compression         4     0      0        0       28.517
GCInspectorTest-compression            6     0      0        0       0.891
JoinTokenRingTest-compression          1     0      0        0       6.522
LeaveAndBootstrapTest-compression      8     0      0        0       7.151
LegacyAuthFailTest-compression         1     0      0        0       4.789
MoveTest-compression                   7     0      0        0       23.445
MoveTransientTest-compression          19    0      0        0       1.281
NativeTransportServiceTest-compression 11    0      0        0       7.828
PaxosStateTest-compression             2     0      0        0       7.377
ProtocolBetaVersionTest-compression    2     0      0        0       15.004
QueryPagerTest-compression             8     0      0        0       4.839
RMIServerSocketFactoryImplTest-        1     0      0        0       0.110
compression
RemoveTest-compression                 4     0      0        0       7.074
SerializationsTest-compression         4     0      0        0       1.183
StartupChecksTest-compression          3     0      0        0       3.941
StorageProxyTest-compression           4     0      0        0       1.438
StorageServiceServerTest-compression   19    0      0        1       8.854
StorageServiceTest-compression         1     0      0        0       1.065
WriteResponseHandlerTest-compression   5     0      0        0       3.585
WriteResponseHandlerTransientTest-     4     0      0        0       3.385
compression
ActiveRepairServiceTest                11    0      0        0       4.131
BootstrapTransientTest                 1     0      0        0       1.042
ClientWarningsTest                     4     0      0        0       29.346
GCInspectorTest                        6     0      0        0       0.826
JoinTokenRingTest                      1     0      0        0       5.330
LeaveAndBootstrapTest                  8     0      0        0       5.982
LegacyAuthFailTest                     1     0      0        0       4.905
MoveTest                               7     0      0        0       22.224
MoveTransientTest                      19    0      0        0       1.082
NativeTransportServiceTest             11    0      0        0       7.652
PaxosStateTest                         2     0      0        0       5.072
ProtocolBetaVersionTest                2     0      0        0       13.455
QueryPagerTest                         8     0      0        0       3.688
RMIServerSocketFactoryImplTest         1     0      0        0       0.084
RemoveTest                             4     0      0        0       5.693
SerializationsTest                     4     0      0        0       1.180
StartupChecksTest                      3     0      0        0       3.344
StorageProxyTest                       4     0      0        0       1.053
StorageServiceServerTest               19    0      0        1       8.663
StorageServiceTest                     1     0      0        0       0.900
WriteResponseHandlerTest               5     0      0        0       3.500
WriteResponseHandlerTransientTest      4     0      0        0       3.343

-------------------------------------------------------------------------------
org.apache.cassandra.service.pager

Name                        Tests Errors Failures Skipped Time(s)
PagingStateTest-cdc         7     0      0        0       1.058
PagingStateTest-compression 7     0      0        0       1.095
PagingStateTest             7     0      0        0       1.056

-------------------------------------------------------------------------------
org.apache.cassandra.service.reads

Name                                  Tests Errors Failures Skipped Time(s)
AbstractReadResponseTest-cdc          1     0      0        1       0.065
DataResolverTest-cdc                  32    0      0        0       3.901
DigestResolverTest-cdc                5     0      0        0       3.722
ReadExecutorTest-cdc                  3     0      0        0       4.087
SpeculativeRetryParseTest-cdc         78    0      0        0       0.162
AbstractReadResponseTest-compression  1     0      0        1       0.071
DataResolverTest-compression          32    0      0        0       3.711
DigestResolverTest-compression        5     0      0        0       3.537
ReadExecutorTest-compression          3     0      0        0       3.775
SpeculativeRetryParseTest-compression 78    0      0        0       0.133
AbstractReadResponseTest              1     0      0        1       0.063
DataResolverTest                      32    0      0        0       3.664
DigestResolverTest                    5     0      0        0       3.593
ReadExecutorTest                      3     0      0        0       3.568
SpeculativeRetryParseTest             78    0      0        0       0.127

-------------------------------------------------------------------------------
org.apache.cassandra.service.reads.repair

Name                                 Tests Errors Failures Skipped Time(s)
AbstractReadRepairTest-cdc           1     0      0        1       0.085
BlockingReadRepairTest-cdc           9     0      0        0       4.542
DiagEventsBlockingReadRepairTest-cdc 3     0      0        0       4.528
ReadOnlyReadRepairTest-cdc           4     0      0        0       4.317
ReadRepairTest-cdc                   7     0      0        0       4.426
RepairedDataVerifierTest-cdc         10    0      0        0       6.334
AbstractReadRepairTest-compression   1     0      0        1       0.077
BlockingReadRepairTest-compression   9     0      0        0       4.187
DiagEventsBlockingReadRepairTest-    3     0      0        0       3.597
compression
ReadOnlyReadRepairTest-compression   4     0      0        0       3.294
ReadRepairTest-compression           7     0      0        0       3.581
RepairedDataVerifierTest-compression 10    0      0        0       7.217
AbstractReadRepairTest               1     0      0        1       0.054
BlockingReadRepairTest               9     0      0        0       3.813
DiagEventsBlockingReadRepairTest     3     0      0        0       3.490
ReadOnlyReadRepairTest               4     0      0        0       3.431
ReadRepairTest                       7     0      0        0       3.349
RepairedDataVerifierTest             10    0      0        0       5.049

-------------------------------------------------------------------------------
org.apache.cassandra.streaming

Name                                         Tests Errors Failures Skipped Time(s)
LongStreamingTest                            2     0      0        0       195.273
EntireSSTableStreamingCorrectFilesCountTest- 1     0      0        0       4.588
cdc
SessionInfoTest-cdc                          1     0      0        0       0.614
StreamOperationTest-cdc                      1     0      0        0       0.089
StreamTransferTaskTest-cdc                   2     0      0        0       3.688
StreamingTransferTest-cdc                    5     0      0        0       14.708
EntireSSTableStreamingCorrectFilesCountTest- 1     0      0        0       3.768
compression
SessionInfoTest-compression                  1     0      0        0       0.521
StreamOperationTest-compression              1     0      0        0       0.071
StreamTransferTaskTest-compression           2     0      0        0       3.446
StreamingTransferTest-compression            5     0      0        0       14.094
EntireSSTableStreamingCorrectFilesCountTest  1     0      0        0       3.373
SessionInfoTest                              1     0      0        0       0.454
StreamOperationTest                          1     0      0        0       0.059
StreamTransferTaskTest                       2     0      0        0       3.417
StreamingTransferTest                        5     0      0        0       15.494

-------------------------------------------------------------------------------
org.apache.cassandra.streaming.async

Name                                    Tests Errors Failures Skipped Time(s)
NettyStreamingMessageSenderTest-cdc     10    0      0        0       1.041
StreamCompressionSerializerTest-cdc     2     0      0        0       0.831
StreamingInboundHandlerTest-cdc         7     0      0        0       1.073
NettyStreamingMessageSenderTest-        10    0      0        0       1.070
compression
StreamCompressionSerializerTest-        2     0      0        0       0.875
compression
StreamingInboundHandlerTest-compression 7     0      0        0       1.175
NettyStreamingMessageSenderTest         10    0      0        0       1.008
StreamCompressionSerializerTest         2     0      0        0       0.830
StreamingInboundHandlerTest             7     0      0        0       1.020

-------------------------------------------------------------------------------
org.apache.cassandra.streaming.compression

Name                                  Tests Errors Failures Skipped Time(s)
CompressedInputStreamTest-cdc         6     0      0        0       1.071
CompressedInputStreamTest-compression 6     0      0        0       1.214
CompressedInputStreamTest             6     0      0        0       1.196

-------------------------------------------------------------------------------
org.apache.cassandra.stress.generate

Name                     Tests Errors Failures Skipped Time(s)
DistributionGaussianTest 2     0      0        0       0.107
DistributionSequenceTest 4     0      0        0       0.073

-------------------------------------------------------------------------------
org.apache.cassandra.stress.settings

Name                  Tests Errors Failures Skipped Time(s)
OptionReplicationTest 1     0      0        0       0.089
SettingsMiscTest      4     0      0        0       0.088
SettingsNodeTest      2     0      0        0       0.067
StressSettingsTest    1     0      0        0       0.525

-------------------------------------------------------------------------------
org.apache.cassandra.stress.util

Name                  Tests Errors Failures Skipped Time(s)
MultiResultLoggerTest 5     0      0        0       0.069

-------------------------------------------------------------------------------
org.apache.cassandra.tools

Name                                    Tests Errors Failures Skipped Time(s)
AuditLogViewerTest-cdc                  5     0      0        0       0.619
BulkLoaderTest-cdc                      6     0      0        0       12.848
ClearSnapshotTest-cdc                   4     0      0        0       14.984
CompactionStressTest-cdc                2     0      0        0       16.074
GetVersionTest-cdc                      1     0      0        0       0.466
LoaderOptionsTest-cdc                   1     0      0        0       0.580
SSTableExpiredBlockersTest-cdc          2     0      0        0       2.157
SSTableExportTest-cdc                   2     0      0        0       1.093
SSTableLevelResetterTest-cdc            2     0      0        0       2.164
SSTableMetadataViewerTest-cdc           2     0      0        0       0.502
SSTableOfflineRelevelTest-cdc           2     0      0        0       2.169
SSTableRepairedAtSetterTest-cdc         2     0      0        0       1.023
StandaloneSSTableUtilTest-cdc           2     0      0        0       2.182
StandaloneScrubberTest-cdc              2     0      0        0       2.283
StandaloneSplitterTest-cdc              1     0      0        0       0.448
StandaloneUpgraderTest-cdc              2     0      0        0       2.397
StandaloneVerifierTest-cdc              2     0      0        0       2.659
TopPartitionsTest-cdc                   2     0      0        0       4.255
AuditLogViewerTest-compression          5     0      0        0       0.650
BulkLoaderTest-compression              6     0      0        0       12.927
ClearSnapshotTest-compression           4     0      0        0       14.810
CompactionStressTest-compression        2     0      0        0       15.593
GetVersionTest-compression              1     0      0        0       0.463
LoaderOptionsTest-compression           1     0      0        0       0.676
SSTableExpiredBlockersTest-compression  2     0      0        0       2.794
SSTableExportTest-compression           2     0      0        0       1.280
SSTableLevelResetterTest-compression    2     0      0        0       2.568
SSTableMetadataViewerTest-compression   2     0      0        0       0.587
SSTableOfflineRelevelTest-compression   2     0      0        0       2.528
SSTableRepairedAtSetterTest-compression 2     0      0        0       1.046
StandaloneSSTableUtilTest-compression   2     0      0        0       2.604
StandaloneScrubberTest-compression      2     0      0        0       3.124
StandaloneSplitterTest-compression      1     0      0        0       0.672
StandaloneUpgraderTest-compression      2     0      0        0       3.376
StandaloneVerifierTest-compression      2     0      0        0       2.267
TopPartitionsTest-compression           2     0      0        0       3.876
AuditLogViewerTest                      5     0      0        0       0.606
BulkLoaderTest                          6     0      0        0       12.840
ClearSnapshotTest                       4     0      0        0       14.672
CompactionStressTest                    2     0      0        0       15.123
GetVersionTest                          1     0      0        0       0.390
LoaderOptionsTest                       1     0      0        0       0.586
SSTableExpiredBlockersTest              2     0      0        0       2.016
SSTableExportTest                       2     0      0        0       0.996
SSTableLevelResetterTest                2     0      0        0       2.355
SSTableMetadataViewerTest               2     0      0        0       0.437
SSTableOfflineRelevelTest               2     0      0        0       2.020
SSTableRepairedAtSetterTest             2     0      0        0       0.924
StandaloneSSTableUtilTest               2     0      0        0       2.276
StandaloneScrubberTest                  2     0      0        0       2.251
StandaloneSplitterTest                  1     0      0        0       0.467
StandaloneUpgraderTest                  2     0      0        0       2.303
StandaloneVerifierTest                  2     0      0        0       2.121
TopPartitionsTest                       2     0      0        0       3.896

-------------------------------------------------------------------------------
org.apache.cassandra.tools.nodetool.formatter

Name                         Tests Errors Failures Skipped Time(s)
TableBuilderTest-cdc         6     0      0        0       0.072
TableBuilderTest-compression 6     0      0        0       0.096
TableBuilderTest             6     0      0        0       0.064

-------------------------------------------------------------------------------
org.apache.cassandra.tools.nodetool.stats

Name                                 Tests Errors Failures Skipped Time(s)
StatsTableComparatorTest-cdc         6     0      0        0       0.243
TableStatsPrinterTest-cdc            2     0      0        0       0.096
StatsTableComparatorTest-compression 6     0      0        0       0.261
TableStatsPrinterTest-compression    2     0      0        0       0.132
StatsTableComparatorTest             6     0      0        0       0.233
TableStatsPrinterTest                2     0      0        0       0.082

-------------------------------------------------------------------------------
org.apache.cassandra.tracing

Name                    Tests Errors Failures Skipped Time(s)
TracingTest-cdc         6     0      0        0       0.885
TracingTest-compression 6     0      0        0       1.497
TracingTest             6     0      0        0       0.820

-------------------------------------------------------------------------------
org.apache.cassandra.transport

Name                                   Tests Errors Failures Skipped Time(s)
CBUtilTest-cdc                         4     0      0        0       0.339
CQLUserAuditTest-cdc                   8     0      0        0       28.382
DataTypeTest-cdc                       3     0      0        0       0.357
ErrorMessageTest-cdc                   7     0      0        0       0.406
IdleDisconnectTest-cdc                 2     0      0        0       17.399
InflightRequestPayloadTrackerTest-cdc  6     0      0        0       15.532
MessagePayloadTest-cdc                 3     0      0        0       14.752
ProtocolErrorTest-cdc                  6     0      0        0       1.093
ProtocolVersionTest-cdc                4     0      0        0       1.078
ProtocolVersionTrackerTest-cdc         3     0      0        0       0.422
SerDeserTest-cdc                       6     0      0        0       1.933
ServerMetricsTest-cdc                  1     0      0        0       13.630
StartupMessageTest-cdc                 1     0      0        0       13.417
CBUtilTest-compression                 4     0      0        0       0.474
CQLUserAuditTest-compression           8     0      0        0       28.434
DataTypeTest-compression               3     0      0        0       0.408
ErrorMessageTest-compression           7     0      0        0       0.455
IdleDisconnectTest-compression         2     0      0        0       18.876
InflightRequestPayloadTrackerTest-     6     0      0        0       17.155
compression
MessagePayloadTest-compression         3     0      0        0       17.263
ProtocolErrorTest-compression          6     0      0        0       1.175
ProtocolVersionTest-compression        4     0      0        0       1.008
ProtocolVersionTrackerTest-compression 3     0      0        0       0.345
SerDeserTest-compression               6     0      0        0       1.775
ServerMetricsTest-compression          1     0      0        0       18.613
StartupMessageTest-compression         1     0      0        0       14.083
CBUtilTest                             4     0      0        0       0.355
CQLUserAuditTest                       8     0      0        0       29.323
DataTypeTest                           3     0      0        0       0.359
ErrorMessageTest                       7     0      0        0       0.408
IdleDisconnectTest                     2     0      0        0       18.090
InflightRequestPayloadTrackerTest      6     0      0        0       15.569
MessagePayloadTest                     3     0      0        0       14.231
ProtocolErrorTest                      6     0      0        0       0.983
ProtocolVersionTest                    4     0      0        0       0.805
ProtocolVersionTrackerTest             3     0      0        0       0.276
SerDeserTest                           6     0      0        0       1.406
ServerMetricsTest                      1     0      0        0       12.280
StartupMessageTest                     1     0      0        0       12.808

-------------------------------------------------------------------------------
org.apache.cassandra.transport.frame.checksum

Name                                          Tests Errors Failures Skipped Time
                                                                            (s)
ChecksummingTransformerTest-cdc               5     0      1        0       15.382
ChecksummingWithCorruptedLZ4DoesNotCrashTest- 1     0      0        0       25.761
cdc
ChecksummingTransformerTest-compression       5     0      0        0       18.026
ChecksummingWithCorruptedLZ4DoesNotCrashTest- 1     0      0        0       23.298
compression
ChecksummingTransformerTest                   5     0      0        0       19.955
ChecksummingWithCorruptedLZ4DoesNotCrashTest  1     0      0        0       24.091

-------------------------------------------------------------------------------
org.apache.cassandra.transport.messages

Name                                Tests Errors Failures Skipped Time(s)
AuthenticateMessageTest-cdc         1     0      0        0       0.432
PrepareMessageTest-cdc              1     0      0        0       0.409
AuthenticateMessageTest-compression 1     0      0        0       0.398
PrepareMessageTest-compression      1     0      0        0       0.381
AuthenticateMessageTest             1     0      0        0       0.317
PrepareMessageTest                  1     0      0        0       0.318

-------------------------------------------------------------------------------
org.apache.cassandra.triggers

Name                            Tests Errors Failures Skipped Time(s)
TriggerExecutorTest-cdc         9     0      0        0       2.041
TriggersSchemaTest-cdc          4     0      0        0       4.941
TriggersTest-cdc                7     0      0        0       5.635
TriggerExecutorTest-compression 9     0      0        0       1.738
TriggersSchemaTest-compression  4     0      0        0       4.433
TriggersTest-compression        7     0      0        0       5.860
TriggerExecutorTest             9     0      0        0       1.474
TriggersSchemaTest              4     0      0        0       3.804
TriggersTest                    7     0      0        0       4.855

-------------------------------------------------------------------------------
org.apache.cassandra.utils

Name                                    Tests Errors Failures Skipped Time(s)
LongBloomFilterTest                     5     0      0        0       119.862
LongBTreeTest                           15    0      0        0       620.708
AbstractIteratorTest-cdc                9     0      0        0       0.120
BloomFilterTest-cdc                     11    0      0        2       0.796
ByteBufferUtilTest-cdc                  12    0      0        0       0.465
BytesReadTrackerTest-cdc                4     0      0        0       0.081
CassandraVersionTest-cdc                11    0      0        0       0.571
EstimatedHistogramTest-cdc              6     0      0        0       0.086
FBUtilitiesTest-cdc                     7     0      0        0       0.848
FastByteOperationsTest-cdc              2     0      0        0       5.496
HexTest-cdc                             2     0      0        0       0.301
HistogramBuilderTest-cdc                5     0      0        0       0.108
IntegerIntervalsTest-cdc                6     0      0        0       55.046
IntervalTreeTest-cdc                    3     0      0        0       0.315
JVMStabilityInspectorTest-cdc           3     0      0        0       1.028
JavaUtilsTest-cdc                       1     0      0        0       0.292
MergeIteratorComparisonTest-cdc         16    0      0        0       14.875
MergeIteratorTest-cdc                   1     0      0        0       0.080
MerkleTreeTest-cdc                      27    0      0        0       9.546
MerkleTreesTest-cdc                     13    0      0        0       0.929
MonotonicClockTest-cdc                  1     0      0        0       20.789
NativeLibraryTest-cdc                   2     0      0        0       0.443
NoSpamLoggerTest-cdc                    4     0      0        0       0.079
OverlapIteratorTest-cdc                 1     0      0        0       13.028
SerializationsTest-cdc                  3     0      0        0       1.620
SlidingTimeRateTest-cdc                 7     0      0        0       0.569
StatusLoggerTest-cdc                    1     0      0        0       4.745
AbstractIteratorTest-compression        9     0      0        0       0.149
BloomFilterTest-compression             11    0      0        2       0.823
ByteBufferUtilTest-compression          12    0      0        0       0.591
BytesReadTrackerTest-compression        4     0      0        0       0.112
CassandraVersionTest-compression        11    0      0        0       0.618
EstimatedHistogramTest-compression      6     0      0        0       0.103
FBUtilitiesTest-compression             7     0      0        0       0.886
FastByteOperationsTest-compression      2     0      0        0       5.180
HexTest-compression                     2     0      0        0       0.337
HistogramBuilderTest-compression        5     0      0        0       0.131
IntegerIntervalsTest-compression        6     0      0        0       53.920
IntervalTreeTest-compression            3     0      0        0       0.326
JVMStabilityInspectorTest-compression   3     0      0        0       1.078
JavaUtilsTest-compression               1     0      0        0       0.317
MergeIteratorComparisonTest-compression 16    0      0        0       13.527
MergeIteratorTest-compression           1     0      0        0       0.093
MerkleTreeTest-compression              27    0      0        0       8.310
MerkleTreesTest-compression             13    0      0        0       1.017
MonotonicClockTest-compression          1     0      0        0       20.542
NativeLibraryTest-compression           2     0      0        0       0.752
NoSpamLoggerTest-compression            4     0      0        0       0.107
OverlapIteratorTest-compression         1     0      0        0       11.933
SerializationsTest-compression          3     0      0        0       1.559
SlidingTimeRateTest-compression         7     0      0        0       0.568
StatusLoggerTest-compression            1     0      0        0       3.897
AbstractIteratorTest                    9     0      0        0       0.087
BloomFilterTest                         11    0      0        2       0.850
ByteBufferUtilTest                      12    0      0        0       0.375
BytesReadTrackerTest                    4     0      0        0       0.060
CassandraVersionTest                    11    0      0        0       0.382
EstimatedHistogramTest                  6     0      0        0       0.065
FBUtilitiesTest                         7     0      0        0       0.651
FastByteOperationsTest                  2     0      0        0       3.825
HexTest                                 2     0      0        0       0.205
HistogramBuilderTest                    5     0      0        0       0.098
IntegerIntervalsTest                    6     0      0        0       46.170
IntervalTreeTest                        3     0      0        0       0.280
JVMStabilityInspectorTest               3     0      0        0       0.742
JavaUtilsTest                           1     0      0        0       0.228
MergeIteratorComparisonTest             16    0      0        0       11.277
MergeIteratorTest                       1     0      0        0       0.071
MerkleTreeTest                          27    0      0        0       6.773
MerkleTreesTest                         13    0      0        0       0.890
MonotonicClockTest                      1     0      0        0       7.509
NativeLibraryTest                       2     0      0        0       0.396
NoSpamLoggerTest                        4     0      0        0       0.078
OverlapIteratorTest                     1     0      0        0       11.432
SerializationsTest                      3     0      0        0       1.461
SlidingTimeRateTest                     7     0      0        0       0.517
StatusLoggerTest                        1     0      0        0       3.426

-------------------------------------------------------------------------------
org.apache.cassandra.utils.binlog

Name                             Tests Errors Failures Skipped Time(s)
BinLogTest-cdc                   13    0      0        0       11.495
DeletingArchiverTest-cdc         3     0      0        0       0.248
ExternalArchiverTest-cdc         5     0      0        0       10.429
BinLogTest-compression           13    0      0        0       12.240
DeletingArchiverTest-compression 3     0      0        0       0.267
ExternalArchiverTest-compression 5     0      0        0       10.466
BinLogTest                       13    0      0        0       11.332
DeletingArchiverTest             3     0      0        0       0.225
ExternalArchiverTest             5     0      0        0       10.562

-------------------------------------------------------------------------------
org.apache.cassandra.utils.btree

Name                                Tests Errors Failures Skipped Time(s)
BTreeRemovalTest-cdc                22    0      0        0       0.217
BTreeSearchIteratorTest-cdc         4     0      0        0       0.075
BTreeTest-cdc                       14    0      0        0       0.412
BTreeRemovalTest-compression        22    0      0        0       0.231
BTreeSearchIteratorTest-compression 4     0      0        0       0.083
BTreeTest-compression               14    0      0        0       0.476
BTreeRemovalTest                    22    0      0        0       0.199
BTreeSearchIteratorTest             4     0      0        0       0.068
BTreeTest                           14    0      0        0       0.444

-------------------------------------------------------------------------------
org.apache.cassandra.utils.concurrent

Name                                  Tests Errors Failures Skipped Time(s)
AbstractTransactionalTest-cdc         1     0      0        1       0.061
AccumulatorTest-cdc                   4     0      0        0       0.069
RefCountedTest-cdc                    12    0      0        0       6.209
WeightedQueueTest-cdc                 46    0      0        0       1.036
AbstractTransactionalTest-compression 1     0      0        1       0.072
AccumulatorTest-compression           4     0      0        0       0.076
RefCountedTest-compression            12    0      0        0       6.574
WeightedQueueTest-compression         46    0      0        0       1.004
AbstractTransactionalTest             1     0      0        1       0.056
AccumulatorTest                       4     0      0        0       0.060
RefCountedTest                        12    0      0        0       6.141
WeightedQueueTest                     46    0      0        0       0.944

-------------------------------------------------------------------------------
org.apache.cassandra.utils.memory

Name                            Tests Errors Failures Skipped Time(s)
LongBufferPoolTest              1     0      0        0       120.858
BufferPoolTest-cdc              32    0      0        0       8.376
NativeAllocatorTest-cdc         1     0      0        0       0.433
BufferPoolTest-compression      32    0      0        0       8.141
NativeAllocatorTest-compression 1     0      0        0       0.472
BufferPoolTest                  32    0      0        0       8.694
NativeAllocatorTest             1     0      0        0       0.352

-------------------------------------------------------------------------------
org.apache.cassandra.utils.obs

Name                          Tests Errors Failures Skipped Time(s)
OffHeapBitSetTest-cdc         4     0      0        0       0.532
OffHeapBitSetTest-compression 4     0      0        0       0.515
OffHeapBitSetTest             4     0      0        0       0.456

-------------------------------------------------------------------------------
org.apache.cassandra.utils.streamhist

Name                                    Tests Errors Failures Skipped Time(s)
StreamingTombstoneHistogramBuilderTest- 11    0      0        0       2.085
cdc
StreamingTombstoneHistogramBuilderTest- 11    0      0        0       1.962
compression
StreamingTombstoneHistogramBuilderTest  11    0      0        0       1.919

-------------------------------------------------------------------------------
org.apache.cassandra.utils.vint

Name                       Tests Errors Failures Skipped Time(s)
VIntCodingTest-cdc         4     0      0        0       0.297
VIntCodingTest-compression 4     0      0        0       0.253
VIntCodingTest             4     0      0        0       0.216

-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Failures
-------------------------------------------------------------------------------

Cassandra dtests // test_tracing_simple // Failure
ccmlib.node.ToolError: Subprocess ['cqlsh', 'CONSISTENCY ALL; TRACING ON; SELECT firstname, lastname FROM ks.users WHERE userid = 550e8400-e29b-41d4-a716-446655440000', None] exited with non-zero status; exit status: 2; stdout: Consistency level set to ALL. Now Tracing is enabled ; stderr: <stdin>:4:OperationTimedOut: errors={'127.0.0.1:9042': 'Client request timeout. See Session.execute[_async](timeout)'}, last_host=127.0.0.1:9042

self = <cql_tracing_test.TestCqlTracing object at 0x7f4c811a1c40>

@since('2.2')
def test_tracing_simple(self):
"""
Test tracing using the default tracing class. See trace().

@jira_ticket CASSANDRA-10392
@jira_ticket CASSANDRA-11598
# Restricted to 2.2+ due to flakiness on 2.1. See CASSANDRA-11598 and CASSANDRA-12407 for details.
"""
session = self.prepare()
> self.trace(session)

cql_tracing_test.py:115:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
cql_tracing_test.py:93: in trace
out, err, _ = node1.run_cqlsh('CONSISTENCY ALL; TRACING ON; '
../venv/src/ccm/ccmlib/node.py:976: in run_cqlsh
return handle_external_tool_process(p, ['cqlsh', cmds, cqlsh_options])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

process = <subprocess.Popen object at 0x7f4c80b2fa30>
cmd_args = ['cqlsh', 'CONSISTENCY ALL; TRACING ON; SELECT firstname, lastname FROM ks.users WHERE userid = 550e8400-e29b-41d4-a716-446655440000', None]

def handle_external_tool_process(process, cmd_args):
out, err = process.communicate()
if (out is not None) and isinstance(out, bytes):
out = out.decode()
if (err is not None) and isinstance(err, bytes):
err = err.decode()
rc = process.returncode

if rc != 0:
> raise ToolError(cmd_args, rc, out, err)
E ccmlib.node.ToolError: Subprocess ['cqlsh', 'CONSISTENCY ALL; TRACING ON; SELECT firstname, lastname FROM ks.users WHERE userid = 550e8400-e29b-41d4-a716-446655440000', None] exited with non-zero status; exit status: 2;
E stdout: Consistency level set to ALL.
E Now Tracing is enabled
E ;
E stderr: <stdin>:4:OperationTimedOut: errors={'127.0.0.1:9042': 'Client request timeout. See Session.execute[_async](timeout)'}, last_host=127.0.0.1:9042

../venv/src/ccm/ccmlib/node.py:2162: ToolError
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Cassandra dtests // test_tracing_default_impl // Failure
ccmlib.node.ToolError: Subprocess ['cqlsh', 'CONSISTENCY ALL; TRACING ON; SELECT firstname, lastname FROM ks.users WHERE userid = 550e8400-e29b-41d4-a716-446655440000', None] exited with non-zero status; exit status: 2; stdout: Consistency level set to ALL. Now Tracing is enabled ; stderr: <stdin>:4:OperationTimedOut: errors={'127.0.0.1:9042': 'Client request timeout. See Session.execute[_async](timeout)'}, last_host=127.0.0.1:9042

self = <cql_tracing_test.TestCqlTracing object at 0x7f2daba55a90>

@since('3.4')
def test_tracing_default_impl(self):
"""
Test that Cassandra logs an error, but keeps its default tracing
behavior, when the default tracing class is specified.

This doesn't work because the constructor for the default
implementation isn't accessible.

* set the default tracing class as a custom tracing class
* run trace()
* if running the test on a version with custom tracing classes
implemented, check that an error about the class was
logged.

@jira_ticket CASSANDRA-10392
"""
expected_error = 'Cannot use class org.apache.cassandra.tracing.TracingImpl'
self.fixture_dtest_setup.ignore_log_patterns = [expected_error]
session = self.prepare(jvm_args=['-Dcassandra.custom_tracing_class=org.apache.cassandra.tracing.TracingImpl'])
> self.trace(session)

cql_tracing_test.py:167:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
cql_tracing_test.py:93: in trace
out, err, _ = node1.run_cqlsh('CONSISTENCY ALL; TRACING ON; '
../venv/src/ccm/ccmlib/node.py:976: in run_cqlsh
return handle_external_tool_process(p, ['cqlsh', cmds, cqlsh_options])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

process = <subprocess.Popen object at 0x7f2dab922190>
cmd_args = ['cqlsh', 'CONSISTENCY ALL; TRACING ON; SELECT firstname, lastname FROM ks.users WHERE userid = 550e8400-e29b-41d4-a716-446655440000', None]

def handle_external_tool_process(process, cmd_args):
out, err = process.communicate()
if (out is not None) and isinstance(out, bytes):
out = out.decode()
if (err is not None) and isinstance(err, bytes):
err = err.decode()
rc = process.returncode

if rc != 0:
> raise ToolError(cmd_args, rc, out, err)
E ccmlib.node.ToolError: Subprocess ['cqlsh', 'CONSISTENCY ALL; TRACING ON; SELECT firstname, lastname FROM ks.users WHERE userid = 550e8400-e29b-41d4-a716-446655440000', None] exited with non-zero status; exit status: 2;
E stdout: Consistency level set to ALL.
E Now Tracing is enabled
E ;
E stderr: <stdin>:4:OperationTimedOut: errors={'127.0.0.1:9042': 'Client request timeout. See Session.execute[_async](timeout)'}, last_host=127.0.0.1:9042

../venv/src/ccm/ccmlib/node.py:2162: ToolError
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------