# HG changeset patch
# User galaxyp
# Date 1645562877 0
# Node ID c4df3005e04dec0d13fb0834c78f67c91a92ac3c
# Parent 5629069fca8fd39c55f3a638ff3ce1a145eb1b0f
"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/cardinal commit badc51fcd74ba0c14cd1ae64d5f524291fa11441"
diff -r 5629069fca8f -r c4df3005e04d macros.xml
--- a/macros.xml Sun Aug 29 07:35:34 2021 +0000
+++ b/macros.xml Tue Feb 22 20:47:57 2022 +0000
@@ -178,7 +178,7 @@
- MSI data: 3 types of input data can be used:
- - imzml file (upload imzml and ibd file via the "composite" function) `Introduction to the imzml format `_
+ - imzml file (upload imzml and ibd file via the "composite" function) `Introduction to the imzml format `_
- Analyze7.5 (upload hdr, img and t2m file via the "composite" function)
- Cardinal "MSImageSet" or "MSImagingExperiment" saved as .RData
]]>
@@ -219,21 +219,21 @@
]]>
diff -r 5629069fca8f -r c4df3005e04d test-data/DGMM_annotations.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/DGMM_annotations.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,401 @@
+x y design
+1 1 bg
+2 1 bg
+3 1 circle
+4 1 circle
+5 1 circle
+6 1 circle
+7 1 bg
+8 1 bg
+9 1 bg
+10 1 bg
+11 1 bg
+12 1 bg
+13 1 bg
+14 1 bg
+15 1 bg
+16 1 bg
+17 1 bg
+18 1 bg
+19 1 bg
+20 1 bg
+1 2 circle
+2 2 circle
+3 2 circle
+4 2 circle
+5 2 circle
+6 2 circle
+7 2 circle
+8 2 circle
+9 2 bg
+10 2 bg
+11 2 bg
+12 2 bg
+13 2 bg
+14 2 bg
+15 2 bg
+16 2 bg
+17 2 bg
+18 2 bg
+19 2 bg
+20 2 bg
+1 3 circle
+2 3 circle
+3 3 circle
+4 3 circle
+5 3 circle
+6 3 circle
+7 3 circle
+8 3 circle
+9 3 circle
+10 3 bg
+11 3 bg
+12 3 bg
+13 3 bg
+14 3 bg
+15 3 bg
+16 3 bg
+17 3 bg
+18 3 bg
+19 3 bg
+20 3 bg
+1 4 circle
+2 4 circle
+3 4 circle
+4 4 circle
+5 4 circle
+6 4 circle
+7 4 circle
+8 4 circle
+9 4 circle
+10 4 bg
+11 4 bg
+12 4 bg
+13 4 bg
+14 4 bg
+15 4 bg
+16 4 bg
+17 4 bg
+18 4 bg
+19 4 bg
+20 4 bg
+1 5 circle
+2 5 circle
+3 5 circle
+4 5 circle
+5 5 circle
+6 5 circle
+7 5 circle
+8 5 circle
+9 5 circle
+10 5 bg
+11 5 bg
+12 5 bg
+13 5 bg
+14 5 bg
+15 5 bg
+16 5 bg
+17 5 bg
+18 5 bg
+19 5 bg
+20 5 bg
+1 6 circle
+2 6 circle
+3 6 circle
+4 6 circle
+5 6 circle
+6 6 circle
+7 6 circle
+8 6 circle
+9 6 circle
+10 6 circle
+11 6 bg
+12 6 bg
+13 6 bg
+14 6 bg
+15 6 bg
+16 6 bg
+17 6 bg
+18 6 bg
+19 6 bg
+20 6 bg
+1 7 circle
+2 7 circle
+3 7 circle
+4 7 circle
+5 7 circle
+6 7 circle
+7 7 circle
+8 7 circle
+9 7 circle
+10 7 circle
+11 7 bg
+12 7 bg
+13 7 bg
+14 7 bg
+15 7 bg
+16 7 bg
+17 7 bg
+18 7 bg
+19 7 bg
+20 7 bg
+1 8 circle
+2 8 circle
+3 8 circle
+4 8 circle
+5 8 circle
+6 8 circle
+7 8 circle
+8 8 circle
+9 8 circle
+10 8 bg
+11 8 bg
+12 8 bg
+13 8 bg
+14 8 bg
+15 8 bg
+16 8 bg
+17 8 bg
+18 8 bg
+19 8 bg
+20 8 bg
+1 9 circle
+2 9 circle
+3 9 circle
+4 9 circle
+5 9 circle
+6 9 circle
+7 9 circle
+8 9 circle
+9 9 circle
+10 9 bg
+11 9 bg
+12 9 bg
+13 9 bg
+14 9 bg
+15 9 bg
+16 9 bg
+17 9 bg
+18 9 bg
+19 9 bg
+20 9 bg
+1 10 circle
+2 10 circle
+3 10 circle
+4 10 circle
+5 10 circle
+6 10 circle
+7 10 circle
+8 10 circle
+9 10 bg
+10 10 bg
+11 10 bg
+12 10 bg
+13 10 bg
+14 10 bg
+15 10 bg
+16 10 bg
+17 10 bg
+18 10 bg
+19 10 bg
+20 10 bg
+1 11 bg
+2 11 circle
+3 11 circle
+4 11 circle
+5 11 circle
+6 11 circle
+7 11 circle
+8 11 square
+9 11 square
+10 11 square
+11 11 square
+12 11 square
+13 11 square
+14 11 square
+15 11 square
+16 11 square
+17 11 square
+18 11 square
+19 11 square
+20 11 square
+1 12 bg
+2 12 bg
+3 12 bg
+4 12 bg
+5 12 bg
+6 12 bg
+7 12 bg
+8 12 square
+9 12 square
+10 12 square
+11 12 square
+12 12 square
+13 12 square
+14 12 square
+15 12 square
+16 12 square
+17 12 square
+18 12 square
+19 12 square
+20 12 square
+1 13 bg
+2 13 bg
+3 13 bg
+4 13 bg
+5 13 bg
+6 13 bg
+7 13 bg
+8 13 square
+9 13 square
+10 13 square
+11 13 square
+12 13 square
+13 13 square
+14 13 square
+15 13 square
+16 13 square
+17 13 square
+18 13 square
+19 13 square
+20 13 square
+1 14 bg
+2 14 bg
+3 14 bg
+4 14 bg
+5 14 bg
+6 14 bg
+7 14 bg
+8 14 square
+9 14 square
+10 14 square
+11 14 square
+12 14 square
+13 14 square
+14 14 square
+15 14 square
+16 14 square
+17 14 square
+18 14 square
+19 14 square
+20 14 square
+1 15 bg
+2 15 bg
+3 15 bg
+4 15 bg
+5 15 bg
+6 15 bg
+7 15 bg
+8 15 square
+9 15 square
+10 15 square
+11 15 square
+12 15 square
+13 15 square
+14 15 square
+15 15 square
+16 15 square
+17 15 square
+18 15 square
+19 15 square
+20 15 square
+1 16 bg
+2 16 bg
+3 16 bg
+4 16 bg
+5 16 bg
+6 16 bg
+7 16 bg
+8 16 square
+9 16 square
+10 16 square
+11 16 square
+12 16 square
+13 16 square
+14 16 square
+15 16 square
+16 16 square
+17 16 square
+18 16 square
+19 16 square
+20 16 square
+1 17 bg
+2 17 bg
+3 17 bg
+4 17 bg
+5 17 bg
+6 17 bg
+7 17 bg
+8 17 square
+9 17 square
+10 17 square
+11 17 square
+12 17 square
+13 17 square
+14 17 square
+15 17 square
+16 17 square
+17 17 square
+18 17 square
+19 17 square
+20 17 square
+1 18 bg
+2 18 bg
+3 18 bg
+4 18 bg
+5 18 bg
+6 18 bg
+7 18 bg
+8 18 square
+9 18 square
+10 18 square
+11 18 square
+12 18 square
+13 18 square
+14 18 square
+15 18 square
+16 18 square
+17 18 square
+18 18 square
+19 18 square
+20 18 square
+1 19 bg
+2 19 bg
+3 19 bg
+4 19 bg
+5 19 bg
+6 19 bg
+7 19 bg
+8 19 square
+9 19 square
+10 19 square
+11 19 square
+12 19 square
+13 19 square
+14 19 square
+15 19 square
+16 19 square
+17 19 square
+18 19 square
+19 19 square
+20 19 square
+1 20 bg
+2 20 bg
+3 20 bg
+4 20 bg
+5 20 bg
+6 20 bg
+7 20 bg
+8 20 square
+9 20 square
+10 20 square
+11 20 square
+12 20 square
+13 20 square
+14 20 square
+15 20 square
+16 20 square
+17 20 square
+18 20 square
+19 20 square
+20 20 square
diff -r 5629069fca8f -r c4df3005e04d test-data/coloc1.pdf
Binary file test-data/coloc1.pdf has changed
diff -r 5629069fca8f -r c4df3005e04d test-data/coloc2.pdf
Binary file test-data/coloc2.pdf has changed
diff -r 5629069fca8f -r c4df3005e04d test-data/coloc3.pdf
Binary file test-data/coloc3.pdf has changed
diff -r 5629069fca8f -r c4df3005e04d test-data/coloc_table1.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/coloc_table1.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,11 @@
+mz correlation M1 M2
+1023.70806884766 1 1 1
+1135.93347167969 0.94302593356566 0.875 0.875
+1200.46533203125 0.929209321928257 0.865 0.865
+1361.26818847656 0.671211137378556 0.71 0.71
+1227.93798828125 0.667168853181017 0.675 0.675
+1453.50952148438 0.665731065791311 0.695 0.695
+1858.89855957031 0.662094302798731 0.705 0.705
+781.236755371094 0.389123692250897 0.65 0.65
+473.920562744141 0.363240913030914 0.6 0.6
+788.86328125 0.337801573243261 0.605 0.605
diff -r 5629069fca8f -r c4df3005e04d test-data/coloc_table2.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/coloc_table2.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,6 @@
+mz correlation M1 M2
+473.920562744141 0.894244530237853 1 0.455
+788.86328125 0.767668409422198 1 0.455
+781.236755371094 0.702693174822292 0.989010989010989 0.45
+1135.93347167969 0.41173637823825 0.846153846153846 0.385
+1023.70806884766 0.332982169243747 0.791208791208791 0.36
diff -r 5629069fca8f -r c4df3005e04d test-data/coloc_table3.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/coloc_table3.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,51 @@
+mz correlation M1 M2
+100.583335876465 1 1 1
+100.666664123535 1 1 1
+100.75 1 1 1
+101.416664123535 1 1 1
+101.916664123535 1 1 1
+102 1 1 1
+102.416664123535 1 1 1
+103 1 1 1
+103.083335876465 1 1 1
+103.5 1 1 1
+103.583335876465 1 1 1
+104.083335876465 1 1 1
+104.583335876465 1 1 1
+104.666664123535 1 1 1
+105.166664123535 1 1 1
+113.5 1 1 0.4
+114.583335876465 1 1 0.666666666666667
+114.666664123535 1 1 0.666666666666667
+119.166664123535 1 1 1
+121.666664123535 1 1 1
+122.166664123535 1 1 1
+122.25 1 1 1
+127.083335876465 1 1 0.666666666666667
+127.166664123535 1 1 0.333333333333333
+127.25 1 1 0.333333333333333
+127.333335876465 1 1 0.4
+127.666664123535 1 1 0.666666666666667
+127.75 1 1 0.333333333333333
+128.25 1 1 0.333333333333333
+128.33332824707 1 1 0.333333333333333
+128.41667175293 1 1 0.4
+134.91667175293 1 1 0.5
+135.58332824707 1 1 0.5
+136.08332824707 1 1 0.5
+138.5 1 1 0.666666666666667
+166.33332824707 1 1 0.4
+166.83332824707 1 1 0.666666666666667
+166.91667175293 1 1 0.5
+167.41667175293 1 1 0.666666666666667
+167.83332824707 1 1 0.333333333333333
+167.91667175293 1 1 0.666666666666667
+168 1 1 1
+168.08332824707 1 1 1
+168.41667175293 1 1 0.5
+168.5 1 1 0.666666666666667
+168.58332824707 1 1 1
+169 1 1 0.666666666666667
+169.08332824707 1 1 1
+169.16667175293 1 1 1
+169.58332824707 1 1 0.666666666666667
diff -r 5629069fca8f -r c4df3005e04d test-data/dgmm_summary1.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/dgmm_summary1.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,11 @@
+r k Classes/group m/z Feature
+1 6 2 473.920562744141 1
+1 6 4 781.236755371094 2
+1 6 1 788.86328125 3
+1 6 3 1023.70806884766 4
+1 6 3 1135.93347167969 5
+1 6 4 1200.46533203125 6
+1 6 2 1227.93798828125 7
+1 6 2 1361.26818847656 8
+1 6 2 1453.50952148438 9
+1 6 2 1858.89855957031 10
diff -r 5629069fca8f -r c4df3005e04d test-data/dgmm_summary2.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/dgmm_summary2.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,11 @@
+r k Classes/group m/z Feature
+2 10 1 473.920562744141 1
+2 10 2 781.236755371094 2
+2 10 1 788.86328125 3
+2 10 1.67 1023.70806884766 4
+2 10 1.67 1135.93347167969 5
+2 10 1.67 1200.46533203125 6
+2 10 1 1227.93798828125 7
+2 10 1.67 1361.26818847656 8
+2 10 1 1453.50952148438 9
+2 10 1.33 1858.89855957031 10
diff -r 5629069fca8f -r c4df3005e04d test-data/dgmm_test1.pdf
Binary file test-data/dgmm_test1.pdf has changed
diff -r 5629069fca8f -r c4df3005e04d test-data/dgmm_test2.RData
Binary file test-data/dgmm_test2.RData has changed
diff -r 5629069fca8f -r c4df3005e04d test-data/dgmm_test2.pdf
Binary file test-data/dgmm_test2.pdf has changed
diff -r 5629069fca8f -r c4df3005e04d test-data/estimates_r1_k6_mz1135.93347167969.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/estimates_r1_k6_mz1135.93347167969.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,4 @@
+group class mean var
+files_ 1 0.172268980321456 0.133976695047921
+files_ 2 4.88607208725277 0.301220362077463
+files_ 3 6.64940193494161 0.752878508867188
diff -r 5629069fca8f -r c4df3005e04d test-data/estimates_r2_k10_mz1200.46533203125.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/estimates_r2_k10_mz1200.46533203125.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,6 @@
+group class mean var
+bg 1 0.216553505243044 0.158967083338173
+bg 2 4.13395686852547 0.859771560896229
+circle 3 3.16694802842791 0.372813860593546
+circle 4 4.48944198265987 1.71739690046886
+square 5 3.8928901507304 1.21620428871296
diff -r 5629069fca8f -r c4df3005e04d test-data/probability_r1_k6_mz1023.70806884766.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/probability_r1_k6_mz1023.70806884766.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,401 @@
+x y pixel_names class X1 X2 X3
+1 1 xy_1_1 3 0.0917647853727095 0.0922578863762729 0.815977328251018
+2 1 xy_2_1 2 0.100600898069221 0.796592711289945 0.102806390640834
+3 1 xy_3_1 2 0.0667865935968222 0.862320681023267 0.070892725379911
+4 1 xy_4_1 2 0.0989488158618163 0.800884528474502 0.100166655663682
+5 1 xy_5_1 2 0.0799636103030095 0.838443782101855 0.0815926075951352
+6 1 xy_6_1 2 0.0759173557100512 0.84637410749561 0.0777085367943388
+7 1 xy_7_1 2 0.0834313744936965 0.831348154231328 0.0852204712749755
+8 1 xy_8_1 1 0.882194666445594 0.0589026668387033 0.0589026667157024
+9 1 xy_9_1 1 0.508654850424931 0.245680248523029 0.245664901052041
+10 1 xy_10_1 1 0.900393171884896 0.0498034140752459 0.0498034140398578
+11 1 xy_11_1 1 0.902126529015311 0.0489367355069679 0.0489367354777208
+12 1 xy_12_1 1 0.902579224334508 0.048710387853706 0.0487103878117857
+13 1 xy_13_1 1 0.90367693551051 0.0481615322610204 0.0481615322284697
+14 1 xy_14_1 1 0.910220787783621 0.0448896061367734 0.0448896060796057
+15 1 xy_15_1 1 0.914264421208645 0.0428677894818022 0.0428677893095529
+16 1 xy_16_1 1 0.902299530246567 0.0488502348910334 0.0488502348623992
+17 1 xy_17_1 1 0.91438095830872 0.0428095210429658 0.0428095206483141
+18 1 xy_18_1 1 0.86965703861106 0.0651714899324875 0.0651714714564528
+19 1 xy_19_1 1 0.914391215329777 0.0428043924181907 0.0428043922520326
+20 1 xy_20_1 1 0.901958380226524 0.0490208099016594 0.0490208098718167
+1 2 xy_1_2 3 0.116318148103275 0.176392372066194 0.70728947983053
+2 2 xy_2_2 2 0.123338375854007 0.549106377317356 0.327555246828637
+3 2 xy_3_2 3 0.134579979985956 0.341119648223749 0.524300371790295
+4 2 xy_4_2 2 0.0838378594767496 0.794100545607835 0.122061594915415
+5 2 xy_5_2 2 0.0700322328721887 0.847048535383228 0.0829192317445829
+6 2 xy_6_2 2 0.10571548893396 0.786723740682465 0.107560770383575
+7 2 xy_7_2 2 0.120654297668623 0.757639098250182 0.121706604081195
+8 2 xy_8_2 2 0.0745041101722362 0.838850047275982 0.0866458425517821
+9 2 xy_9_2 1 0.885646212670759 0.0571768937198632 0.0571768936093778
+10 2 xy_10_2 1 0.901918219379856 0.0490408903250647 0.0490408902950796
+11 2 xy_11_2 1 0.911851747877081 0.0440741261503712 0.0440741259725482
+12 2 xy_12_2 1 0.458188446483415 0.270920654766878 0.270890898749708
+13 2 xy_13_2 1 0.901092260265631 0.0494538698836403 0.0494538698507288
+14 2 xy_14_2 1 0.908271043095531 0.0458644790803883 0.0458644778240806
+15 2 xy_15_2 1 0.818239574229709 0.0908802634162467 0.0908801623540444
+16 2 xy_16_2 1 0.900670043902778 0.0496649780658142 0.0496649780314072
+17 2 xy_17_2 1 0.914715247493364 0.0426423764314419 0.0426423760751942
+18 2 xy_18_2 1 0.910017175529711 0.0449914127350249 0.0449914117352645
+19 2 xy_19_2 1 0.906032199565997 0.0469839002403685 0.0469839001936342
+20 2 xy_20_2 1 0.857081637302068 0.071459196922199 0.0714591657757334
+1 3 xy_1_3 3 0.126204708631798 0.245175640430091 0.62861965093811
+2 3 xy_2_3 3 0.130418313462894 0.294933049458422 0.574648637078684
+3 3 xy_3_3 3 0.131282329544912 0.368098851058401 0.500618819396688
+4 3 xy_4_3 3 0.106831148359284 0.1294053131308 0.763763538509917
+5 3 xy_5_3 3 0.0925246507063288 0.0952944115907079 0.812180937702963
+6 3 xy_6_3 3 0.113160965188836 0.161728539920457 0.725110494890707
+7 3 xy_7_3 2 0.103237414255951 0.692531301852543 0.204231283891506
+8 3 xy_8_3 2 0.117149966742924 0.764615706627007 0.118234326630069
+9 3 xy_9_3 2 0.0730270066859421 0.845127819894521 0.0818451734195372
+10 3 xy_10_3 1 0.890832828276991 0.0545835859011135 0.0545835858218956
+11 3 xy_11_3 1 0.744907732236447 0.12754642407129 0.127545843692263
+12 3 xy_12_3 1 0.907892806571312 0.0460535973638291 0.0460535960648594
+13 3 xy_13_3 1 0.915221334831678 0.0423893327019348 0.0423893324663876
+14 3 xy_14_3 1 0.90829104105614 0.0458544794945152 0.0458544794493445
+15 3 xy_15_3 1 0.911037209786342 0.0444813951710636 0.0444813950425943
+16 3 xy_16_3 1 0.649962029956908 0.175020140294995 0.175017829748097
+17 3 xy_17_3 1 0.909081767724795 0.0454591165124939 0.0454591157627105
+18 3 xy_18_3 1 0.901877394030458 0.0490613042779205 0.0490613016916218
+19 3 xy_19_3 1 0.736910429273539 0.131545109843971 0.131544460882491
+20 3 xy_20_3 1 0.910530646261975 0.0447346772864408 0.0447346764515846
+1 4 xy_1_4 3 0.0997678984329619 0.104623849697717 0.795608251869321
+2 4 xy_2_4 2 0.0722812251922054 0.838645502446138 0.0890732723616571
+3 4 xy_3_4 2 0.101443761511057 0.717691367673289 0.180864870815655
+4 4 xy_4_4 2 0.117179425680132 0.607170806693979 0.275649767625889
+5 4 xy_5_4 2 0.111358215106017 0.653997179706536 0.234644605187447
+6 4 xy_6_4 3 0.125429138424958 0.234940671226822 0.639630190348219
+7 4 xy_7_4 3 0.131856533327411 0.375691175419097 0.492452291253492
+8 4 xy_8_4 2 0.0758793105155353 0.829007789867553 0.0951128996169117
+9 4 xy_9_4 3 0.130051106711148 0.352732237310778 0.517216655978074
+10 4 xy_10_4 3 0.107525474303663 0.130896424249335 0.761578101447002
+11 4 xy_11_4 1 0.732010418781159 0.133995121122072 0.133994460096768
+12 4 xy_12_4 1 0.910070170588789 0.0449649147802751 0.0449649146309357
+13 4 xy_13_4 1 0.902425109350964 0.0487874453386127 0.0487874453104234
+14 4 xy_14_4 1 0.913559047477079 0.0432204764928022 0.0432204760301185
+15 4 xy_15_4 1 0.714873004013856 0.142563940943742 0.142563055042402
+16 4 xy_16_4 1 0.895209647629921 0.0523951762119165 0.0523951761581622
+17 4 xy_17_4 1 0.360003040136079 0.320103598596046 0.319893361267875
+18 4 xy_18_4 1 0.907984334374493 0.0460078328476248 0.0460078327778822
+19 4 xy_19_4 1 0.913187913652857 0.0434060433038897 0.0434060430432531
+20 4 xy_20_4 1 0.902276018937731 0.0488619905454932 0.0488619905167757
+1 5 xy_1_5 2 0.0794067440147089 0.838690709455799 0.0819025465294916
+2 5 xy_2_5 2 0.0665348565985361 0.859624361204301 0.0738407821971629
+3 5 xy_3_5 2 0.132392816862757 0.488158318554805 0.379448864582438
+4 5 xy_4_5 3 0.13283019912277 0.33048507315628 0.536684727720951
+5 5 xy_5_5 2 0.0763471158482541 0.844357828578868 0.0792950555728777
+6 5 xy_6_5 2 0.101058008654936 0.71632717220147 0.182614819143594
+7 5 xy_7_5 3 0.101521466157146 0.113672216209305 0.784806317633549
+8 5 xy_8_5 2 0.117190624588043 0.581411457487266 0.301397917924691
+9 5 xy_9_5 3 0.103132113425548 0.126379812847442 0.77048807372701
+10 5 xy_10_5 3 0.0877963539479687 0.0897130762470359 0.822490569804995
+11 5 xy_11_5 1 0.885312328479353 0.0573438360963079 0.0573438354243386
+12 5 xy_12_5 2 0.330173217101998 0.339723603968013 0.330103178929989
+13 5 xy_13_5 1 0.909433031754002 0.045283484645646 0.0452834836003518
+14 5 xy_14_5 1 0.913300956600983 0.0433495217460676 0.043349521652949
+15 5 xy_15_5 1 0.902109298493865 0.048945350774209 0.0489453507319263
+16 5 xy_16_5 1 0.899243495298089 0.050378252370686 0.050378252331225
+17 5 xy_17_5 1 0.900605866763787 0.0496970666354246 0.0496970666007881
+18 5 xy_18_5 1 0.915064527986762 0.0424677361201685 0.0424677358930697
+19 5 xy_19_5 1 0.909220745900832 0.0453896270754161 0.0453896270237519
+20 5 xy_20_5 1 0.902162459960925 0.0489187700340975 0.0489187700049777
+1 6 xy_1_6 2 0.0935272976597069 0.811604372377123 0.0948683299631704
+2 6 xy_2_6 2 0.0726643505818426 0.841008746142142 0.0863269032760154
+3 6 xy_3_6 2 0.0944878665533276 0.740717856844409 0.164794276602264
+4 6 xy_4_6 3 0.110041307351852 0.135191313526999 0.754767379121149
+5 6 xy_5_6 2 0.0667342905421378 0.861887447062546 0.0713782623953161
+6 6 xy_6_6 2 0.0898241470940841 0.818298899102155 0.091876953803761
+7 6 xy_7_6 3 0.0882812114169917 0.0914632043112569 0.820255584271751
+8 6 xy_8_6 3 0.101793617966855 0.102477749625965 0.79572863240718
+9 6 xy_9_6 3 0.100217154315371 0.117663615332318 0.782119230352311
+10 6 xy_10_6 3 0.0965353851056365 0.0976701665643817 0.805794448329982
+11 6 xy_11_6 1 0.340645523800873 0.329940079547579 0.329414396651548
+12 6 xy_12_6 1 0.904374923906705 0.0478125384170331 0.0478125376762616
+13 6 xy_13_6 1 0.908086263734836 0.0459568681559784 0.0459568681091856
+14 6 xy_14_6 1 0.902104479467235 0.0489477602810452 0.04894776025172
+15 6 xy_15_6 1 0.882117434297144 0.0589412879987184 0.058941277704138
+16 6 xy_16_6 1 0.673887654652939 0.163057036575921 0.163055308771139
+17 6 xy_17_6 1 0.911821539678864 0.044089230437084 0.0440892298840518
+18 6 xy_18_6 1 0.902257268308627 0.0488713658600786 0.0488713658312947
+19 6 xy_19_6 1 0.901653808359015 0.0491730958359534 0.0491730958050316
+20 6 xy_20_6 1 0.902234718610015 0.0488826407094243 0.0488826406805605
+1 7 xy_1_7 2 0.0790513801907387 0.823788730287456 0.0971598895218055
+2 7 xy_2_7 2 0.0745591315063055 0.830447623795639 0.0949932446980552
+3 7 xy_3_7 3 0.114735096836557 0.115719399569363 0.76954550359408
+4 7 xy_4_7 2 0.127555467491187 0.491378577673049 0.381065954835765
+5 7 xy_5_7 2 0.0812907901948555 0.8112738194389 0.107435390366244
+6 7 xy_6_7 2 0.0700149857338754 0.847218507364341 0.082766506901784
+7 7 xy_7_7 3 0.10329363514949 0.121038642970776 0.775667721879735
+8 7 xy_8_7 2 0.0935378714037525 0.746686035631692 0.159776092964556
+9 7 xy_9_7 3 0.136280803534778 0.368228719370228 0.495490477094994
+10 7 xy_10_7 2 0.115154828040437 0.763674660186893 0.121170511772669
+11 7 xy_11_7 1 0.882453389868164 0.058773305118442 0.0587733050133941
+12 7 xy_12_7 1 0.606883051594775 0.196560704039646 0.196556244365579
+13 7 xy_13_7 1 0.910633214513219 0.0446833928241427 0.044683392662638
+14 7 xy_14_7 1 0.904848217593814 0.0475758912214572 0.0475758911847286
+15 7 xy_15_7 1 0.893933505784821 0.053033249498078 0.0530332447171007
+16 7 xy_16_7 1 0.900893285226992 0.0495533574033123 0.0495533573696961
+17 7 xy_17_7 1 0.859620537691133 0.0701897459079739 0.0701897164008931
+18 7 xy_18_7 1 0.909572777142914 0.0452136119285048 0.0452136109285814
+19 7 xy_19_7 1 0.715068457208975 0.142466229396712 0.142465313394313
+20 7 xy_20_7 1 0.913792307191647 0.0431038464747351 0.043103846333618
+1 8 xy_1_8 2 0.065833224021723 0.864540305001862 0.0696264709764146
+2 8 xy_2_8 2 0.112669575522018 0.65938968983171 0.227940734646272
+3 8 xy_3_8 3 0.13279971708245 0.387117616318919 0.480082666598631
+4 8 xy_4_8 2 0.0741727126886009 0.84133865742369 0.0844886298877096
+5 8 xy_5_8 2 0.0681648855405363 0.853475305574246 0.0783598088852173
+6 8 xy_6_8 3 0.132130876327473 0.290938662607416 0.576930461065112
+7 8 xy_7_8 3 0.122403392864139 0.210938327021372 0.666658280114489
+8 8 xy_8_8 3 0.132614497198782 0.242369356980332 0.625016145820886
+9 8 xy_9_8 2 0.096088807275661 0.756720092864584 0.147191099859755
+10 8 xy_10_8 1 0.881472585511207 0.059263707313355 0.0592637071754377
+11 8 xy_11_8 1 0.899256004175224 0.050371997929223 0.0503719978955527
+12 8 xy_12_8 1 0.894449068053546 0.0527754659983987 0.0527754659480549
+13 8 xy_13_8 1 0.900198618776358 0.0499006906277368 0.0499006905959055
+14 8 xy_14_8 1 0.902637953412332 0.0486810233130181 0.0486810232746498
+15 8 xy_15_8 1 0.892268031335805 0.0538659867591018 0.0538659819050932
+16 8 xy_16_8 1 0.909670983180376 0.0451645087304056 0.0451645080892183
+17 8 xy_17_8 1 0.720861790297595 0.139569564571691 0.139568645130713
+18 8 xy_18_8 1 0.804885498388249 0.0975573409597699 0.0975571606519813
+19 8 xy_19_8 1 0.895271719937063 0.0523641400574718 0.052364140005465
+20 8 xy_20_8 1 0.911293864884748 0.0443530676188092 0.0443530674964431
+1 9 xy_1_9 2 0.0969394493359614 0.746466213406626 0.156594337257413
+2 9 xy_2_9 2 0.134206702444808 0.504402691513427 0.361390606041765
+3 9 xy_3_9 2 0.117775268956157 0.61752391860272 0.264700812441124
+4 9 xy_4_9 2 0.0669758223562964 0.863070940850594 0.0699532367931099
+5 9 xy_5_9 2 0.08539524593618 0.827826631102627 0.0867781229611929
+6 9 xy_6_9 2 0.088205584353838 0.819293394423095 0.0925010212230673
+7 9 xy_7_9 3 0.122597400911275 0.124130500534211 0.753272098554514
+8 9 xy_8_9 3 0.318024361405949 0.318024362164247 0.363951276429804
+9 9 xy_9_9 3 0.333290282500456 0.333290282500456 0.333419434999089
+10 9 xy_10_9 3 0.0902846043656592 0.091236666157802 0.818478729476539
+11 9 xy_11_9 3 0.0921884982542905 0.0923801289771033 0.815431372768606
+12 9 xy_12_9 3 0.0887915853693786 0.0893681396964587 0.821840274934163
+13 9 xy_13_9 3 0.118915777799209 0.172095596368007 0.708988625832785
+14 9 xy_14_9 3 0.094477790765863 0.099259967835644 0.806262241398493
+15 9 xy_15_9 3 0.112101362854805 0.112745074172596 0.7751535629726
+16 9 xy_16_9 2 0.0819816819914626 0.802604934379418 0.115413383629119
+17 9 xy_17_9 2 0.0742512141526311 0.837134385378988 0.0886144004683809
+18 9 xy_18_9 2 0.147909560044012 0.702737202982293 0.149353236973695
+19 9 xy_19_9 3 0.138779385598382 0.343595084230091 0.517625530171527
+20 9 xy_20_9 3 0.130882381564942 0.279542711718501 0.589574906716556
+1 10 xy_1_10 2 0.0638529631560985 0.868242630006697 0.0679044068372045
+2 10 xy_2_10 2 0.0725977481979609 0.851890006098279 0.0755122457037602
+3 10 xy_3_10 2 0.0728644439814123 0.839899145750786 0.0872364102678019
+4 10 xy_4_10 2 0.0749256664918082 0.830014475905095 0.0950598576030972
+5 10 xy_5_10 2 0.0648521812042809 0.865439717045815 0.0697081017499038
+6 10 xy_6_10 2 0.242870053396716 0.513714256423315 0.243415690179969
+7 10 xy_7_10 2 0.0987224298755594 0.795274721437164 0.106002848687277
+8 10 xy_8_10 3 0.33270321445817 0.332703214458183 0.334593571083647
+9 10 xy_9_10 3 0.091108671799492 0.092398574705219 0.816492753495289
+10 10 xy_10_10 3 0.0876375042234349 0.0915149213387475 0.820847574437818
+11 10 xy_11_10 3 0.100274646729401 0.100335952956583 0.799389400314016
+12 10 xy_12_10 3 0.0846309404996657 0.0861017360706173 0.829267323429717
+13 10 xy_13_10 3 0.0960194912843992 0.0963306496855065 0.807649859030094
+14 10 xy_14_10 3 0.130598753992761 0.36569974487252 0.503701501134719
+15 10 xy_15_10 3 0.13222146029341 0.346801543999293 0.520976995707297
+16 10 xy_16_10 2 0.0726439714499434 0.849134266335455 0.0782217622146014
+17 10 xy_17_10 2 0.0726074064066283 0.852504590883407 0.0748880027099644
+18 10 xy_18_10 2 0.073722245290729 0.849234599898471 0.0770431548107997
+19 10 xy_19_10 2 0.103736729041971 0.701260040362589 0.19500323059544
+20 10 xy_20_10 3 0.108156178611857 0.14224865013884 0.749595171249303
+1 11 xy_1_11 2 0.0764570196330052 0.844997445937541 0.0785455344294535
+2 11 xy_2_11 2 0.093095436418024 0.782278609152597 0.124625954429379
+3 11 xy_3_11 2 0.0766967952878851 0.825900276463259 0.0974029282488557
+4 11 xy_4_11 3 0.118374075239596 0.140752804519855 0.740873120240549
+5 11 xy_5_11 2 0.0714531177294108 0.842959431332296 0.0855874509382936
+6 11 xy_6_11 2 0.0849090824778179 0.799389615482753 0.11570130203943
+7 11 xy_7_11 2 0.121753809241131 0.648359104568171 0.229887086190698
+8 11 xy_8_11 3 0.0922377535085369 0.0947356683636785 0.813026578127785
+9 11 xy_9_11 3 0.190415006117956 0.190416074904634 0.61916891897741
+10 11 xy_10_11 3 0.101263420240669 0.12012928710192 0.778607292657411
+11 11 xy_11_11 3 0.0865902052095996 0.0882669627347373 0.825142832055663
+12 11 xy_12_11 3 0.104810721608794 0.129284705814709 0.765904572576496
+13 11 xy_13_11 2 0.0944094051582589 0.739953224543563 0.165637370298179
+14 11 xy_14_11 3 0.121202386525801 0.121318558046288 0.757479055427911
+15 11 xy_15_11 2 0.080234099968769 0.80750363670805 0.112262263323181
+16 11 xy_16_11 3 0.117754770187046 0.159611373146119 0.722633856666835
+17 11 xy_17_11 2 0.185085280180606 0.628500179629972 0.186414540189422
+18 11 xy_18_11 3 0.1206226303427 0.120963131803458 0.758414237853842
+19 11 xy_19_11 3 0.129544546304927 0.406525859363668 0.463929594331405
+20 11 xy_20_11 3 0.0940999747177908 0.103522097805019 0.80237792747719
+1 12 xy_1_12 1 0.911129213183687 0.0444353938269318 0.0444353929893814
+2 12 xy_2_12 1 0.902078297371716 0.0489608513381315 0.0489608512901525
+3 12 xy_3_12 1 0.896458367135658 0.0517708164647999 0.0517708163995425
+4 12 xy_4_12 2 0.0803648808731315 0.818182620131139 0.101452498995729
+5 12 xy_5_12 2 0.0759271179223101 0.833901891649647 0.0901709904280433
+6 12 xy_6_12 1 0.645281163682503 0.177360974917922 0.177357861399575
+7 12 xy_7_12 1 0.884676721357585 0.0576616393715683 0.0576616392708465
+8 12 xy_8_12 3 0.118335525611268 0.118362140916676 0.763302333472056
+9 12 xy_9_12 3 0.116894261762328 0.174358715424825 0.708747022812847
+10 12 xy_10_12 3 0.115221878231396 0.169329082791028 0.715449038977576
+11 12 xy_11_12 2 0.12948771443786 0.480899461272054 0.389612824290086
+12 12 xy_12_12 2 0.0827718621110195 0.801012614220267 0.116215523668713
+13 12 xy_13_12 2 0.0883987729967707 0.785134219447583 0.126467007555646
+14 12 xy_14_12 2 0.123541795053153 0.584782001905248 0.291676203041599
+15 12 xy_15_12 2 0.0784652835912448 0.839934532133064 0.0816001842756911
+16 12 xy_16_12 2 0.25909107375439 0.48132716123422 0.25958176501139
+17 12 xy_17_12 3 0.132555963325521 0.359192980300451 0.508251056374029
+18 12 xy_18_12 2 0.128457174495549 0.43971505428718 0.431827771217271
+19 12 xy_19_12 3 0.095397062680206 0.101375399164385 0.803227538155409
+20 12 xy_20_12 3 0.0900644970614582 0.0902740322106201 0.819661470727922
+1 13 xy_1_13 1 0.902175869774546 0.0489120651272634 0.0489120650981911
+2 13 xy_2_13 1 0.902083667142401 0.0489581664434992 0.0489581664141002
+3 13 xy_3_13 1 0.902055719046263 0.0489721404916176 0.0489721404621196
+4 13 xy_4_13 1 0.91276483515272 0.0436175826606146 0.0436175821866659
+5 13 xy_5_13 1 0.900333000693739 0.0498334996739935 0.0498334996322676
+6 13 xy_6_13 1 0.901371024585686 0.0493144877231188 0.0493144876911951
+7 13 xy_7_13 1 0.899778538733868 0.0501107306491762 0.0501107306169555
+8 13 xy_8_13 3 0.0997409874867519 0.11309071579333 0.787168296719918
+9 13 xy_9_13 3 0.112709769780709 0.155370116038728 0.731920114180563
+10 13 xy_10_13 3 0.245107176033218 0.245107308674225 0.509785515292557
+11 13 xy_11_13 2 0.0699778729500886 0.849287902885563 0.0807342241643489
+12 13 xy_12_13 2 0.0782868813818537 0.840115953688025 0.0815971649301216
+13 13 xy_13_13 2 0.140830025308457 0.717025169371012 0.142144805320531
+14 13 xy_14_13 2 0.118507348362344 0.648102344118003 0.233390307519653
+15 13 xy_15_13 2 0.166919016532188 0.665207878101911 0.167873105365901
+16 13 xy_16_13 2 0.130083937286141 0.738119352104811 0.131796710609047
+17 13 xy_17_13 3 0.103355653690454 0.106039506292513 0.790604840017033
+18 13 xy_18_13 2 0.105789306439892 0.6786328037692 0.215577889790909
+19 13 xy_19_13 3 0.0945384664931473 0.102861411448808 0.802600122058044
+20 13 xy_20_13 3 0.11029901631184 0.110336009191047 0.779364974497114
+1 14 xy_1_14 1 0.898520576727147 0.0507397116574386 0.0507397116154145
+2 14 xy_2_14 1 0.902115245308793 0.0489423773602468 0.0489423773309598
+3 14 xy_3_14 1 0.902096537043455 0.0489517314929491 0.0489517314635958
+4 14 xy_4_14 1 0.902136099742522 0.0489319501433454 0.0489319501141322
+5 14 xy_5_14 1 0.913019323760487 0.0434903381640992 0.0434903380754136
+6 14 xy_6_14 1 0.91426310739122 0.0428684465053506 0.0428684461034298
+7 14 xy_7_14 1 0.900483602517188 0.0497581987565263 0.0497581987262858
+8 14 xy_8_14 3 0.128578110132476 0.128590177837431 0.742831712030093
+9 14 xy_9_14 3 0.112198537286465 0.112235826075023 0.775565636638512
+10 14 xy_10_14 3 0.132159468044661 0.132182236123259 0.73565829583208
+11 14 xy_11_14 2 0.0715022067855027 0.849463410303652 0.0790343829108449
+12 14 xy_12_14 2 0.240724705009502 0.51796915381371 0.241306141176788
+13 14 xy_13_14 2 0.286173337214721 0.427318562008186 0.286508100777093
+14 14 xy_14_14 2 0.0705546679510066 0.847768945944994 0.0816763861039996
+15 14 xy_15_14 2 0.0713517581064038 0.845105592037635 0.083542649855961
+16 14 xy_16_14 2 0.093382083553703 0.811091382681226 0.0955265337650704
+17 14 xy_17_14 2 0.0713669934702603 0.848119482089722 0.0805135244400177
+18 14 xy_18_14 3 0.131624018780648 0.219344421963393 0.649031559255959
+19 14 xy_19_14 2 0.120171029971928 0.56087811718522 0.318950852842852
+20 14 xy_20_14 3 0.115383653423646 0.172160312812746 0.712456033763608
+1 15 xy_1_15 1 0.388811466849963 0.305641324705525 0.305547208444512
+2 15 xy_2_15 1 0.908084488876952 0.045957755606385 0.045957755516663
+3 15 xy_3_15 1 0.903596596420709 0.048201702856177 0.0482017007231137
+4 15 xy_4_15 1 0.900376182384166 0.0498119088256414 0.0498119087901928
+5 15 xy_5_15 1 0.909623511525365 0.0451882447664319 0.0451882437082029
+6 15 xy_6_15 1 0.904898740946872 0.0475506295437968 0.0475506295093307
+7 15 xy_7_15 1 0.907403942250427 0.0462980289042521 0.0462980288453213
+8 15 xy_8_15 3 0.0943164068923337 0.0945133379116579 0.811170255196008
+9 15 xy_9_15 3 0.0997312437730775 0.115626677218216 0.784642079008707
+10 15 xy_10_15 3 0.105189477737864 0.105259690746731 0.789550831515405
+11 15 xy_11_15 3 0.165314780262143 0.165320154748173 0.669365064989685
+12 15 xy_12_15 2 0.0996180910117116 0.796688206536158 0.10369370245213
+13 15 xy_13_15 2 0.0677351562316974 0.859234018872315 0.073030824895988
+14 15 xy_14_15 2 0.277857288088051 0.443926363346973 0.278216348564975
+15 15 xy_15_15 2 0.178755094167855 0.64116068537445 0.180084220457695
+16 15 xy_16_15 2 0.265838638783775 0.46794287349743 0.266218487718796
+17 15 xy_17_15 2 0.0795656416501215 0.838839401724596 0.0815949566252829
+18 15 xy_18_15 2 0.0761314580896484 0.824265247195964 0.0996032947143871
+19 15 xy_19_15 3 0.130912517265182 0.352138033751746 0.516949448983073
+20 15 xy_20_15 3 0.0958831490378979 0.106468555453657 0.797648295508445
+1 16 xy_1_16 1 0.399794580593489 0.300139813794642 0.300065605611869
+2 16 xy_2_16 1 0.900711149499459 0.0496444252674017 0.0496444252331396
+3 16 xy_3_16 1 0.908114297735923 0.0459428511685162 0.0459428510955607
+4 16 xy_4_16 1 0.432283116633659 0.283880144336972 0.283836739029369
+5 16 xy_5_16 1 0.897987539418427 0.0510062303127423 0.0510062302688307
+6 16 xy_6_16 1 0.896858851098702 0.0515705763550653 0.0515705725462323
+7 16 xy_7_16 1 0.900284608941102 0.0498576955444693 0.0498576955144291
+8 16 xy_8_16 3 0.0899990944326832 0.0904334346136801 0.819567470953637
+9 16 xy_9_16 3 0.133934612996652 0.133944890780802 0.732120496222546
+10 16 xy_10_16 3 0.0898566138271755 0.0901186210454777 0.820024765127347
+11 16 xy_11_16 3 0.119874646618226 0.197683784681983 0.682441568699791
+12 16 xy_12_16 3 0.0971642576058268 0.107369199282859 0.795466543111314
+13 16 xy_13_16 2 0.126567399180768 0.745293731791467 0.128138869027765
+14 16 xy_14_16 2 0.255135254920717 0.489078742554032 0.255786002525251
+15 16 xy_15_16 2 0.196274629688203 0.606636087743719 0.197089282568078
+16 16 xy_16_16 2 0.0679337746027906 0.859619792537578 0.0724464328596309
+17 16 xy_17_16 2 0.0925431591594943 0.780928350006085 0.12652849083442
+18 16 xy_18_16 2 0.0862347247965391 0.825914560355471 0.0878507148479895
+19 16 xy_19_16 2 0.106586630973236 0.784615504436465 0.108797864590299
+20 16 xy_20_16 3 0.0988037144252958 0.0992810803144452 0.801915205260259
+1 17 xy_1_17 1 0.90030600978777 0.0498469951239639 0.0498469950882664
+2 17 xy_2_17 1 0.902029844893822 0.0489850775678838 0.0489850775382942
+3 17 xy_3_17 1 0.902307396425343 0.0488463018016315 0.0488463017730252
+4 17 xy_4_17 1 0.912446580432607 0.043776709857438 0.0437767097099546
+5 17 xy_5_17 1 0.902274707567036 0.0488626462308429 0.0488626462021208
+6 17 xy_6_17 1 0.914680902433416 0.0426595489640515 0.0426595486025324
+7 17 xy_7_17 1 0.911154717080354 0.0444226415093819 0.0444226414102645
+8 17 xy_8_17 3 0.102936015687119 0.103089580041563 0.793974404271318
+9 17 xy_9_17 3 0.263570006063207 0.26357006046951 0.472859933467282
+10 17 xy_10_17 3 0.0956493778948183 0.10504149197932 0.799309130125862
+11 17 xy_11_17 2 0.0927492429587289 0.749430872369244 0.157819884672027
+12 17 xy_12_17 3 0.100316234834819 0.114723021045966 0.784960744119215
+13 17 xy_13_17 2 0.0913885552790636 0.813420000138883 0.0951914445820529
+14 17 xy_14_17 3 0.138041430758131 0.314614456761272 0.547344112480597
+15 17 xy_15_17 2 0.0941153868880839 0.8086595516089 0.0972250615030158
+16 17 xy_16_17 2 0.078922512049914 0.840530088621494 0.0805473993285918
+17 17 xy_17_17 2 0.0817697748713893 0.834203200416252 0.0840270247123582
+18 17 xy_18_17 2 0.0675761853736317 0.855587416742908 0.0768363978834603
+19 17 xy_19_17 2 0.069262011440486 0.856972855844455 0.0737651327150592
+20 17 xy_20_17 2 0.105579264582746 0.694353517103249 0.200067218314005
+1 18 xy_1_18 1 0.902066548815226 0.0489667256071167 0.0489667255776571
+2 18 xy_2_18 1 0.902199262768539 0.0489003686302254 0.048900368601236
+3 18 xy_3_18 1 0.913477818100173 0.043261091131841 0.0432610907679856
+4 18 xy_4_18 1 0.913738129419583 0.0431309353613467 0.0431309352190704
+5 18 xy_5_18 1 0.897337327561864 0.051331338167388 0.051331334270748
+6 18 xy_6_18 1 0.913595825132683 0.043202087485663 0.0432020873816538
+7 18 xy_7_18 1 0.900482579612715 0.0497587102085274 0.0497587101787579
+8 18 xy_8_18 3 0.100661041994822 0.111777563988889 0.787561394016289
+9 18 xy_9_18 3 0.218805275715056 0.218805814360147 0.562388909924797
+10 18 xy_10_18 3 0.0943380904983484 0.101611864235734 0.804050045265918
+11 18 xy_11_18 2 0.0879255129068374 0.773459063424058 0.138615423669105
+12 18 xy_12_18 2 0.0723809493986483 0.838214639188581 0.0894044114127705
+13 18 xy_13_18 2 0.0998705966838915 0.748324194216089 0.151805209100019
+14 18 xy_14_18 2 0.0887680597806246 0.772922749654353 0.138309190565022
+15 18 xy_15_18 2 0.127365521128288 0.591426199171917 0.281208279699795
+16 18 xy_16_18 2 0.0716809935219588 0.846869789245559 0.0814492172324823
+17 18 xy_17_18 3 0.0992944832459503 0.100000279339447 0.800705237414603
+18 18 xy_18_18 3 0.149160275039719 0.149173129832998 0.701666595127284
+19 18 xy_19_18 3 0.124044529514264 0.214509603001992 0.661445867483744
+20 18 xy_20_18 3 0.298206353880715 0.298206365979432 0.403587280139853
+1 19 xy_1_19 1 0.901467068768052 0.0492664656317658 0.0492664656001824
+2 19 xy_2_19 1 0.910472874342532 0.0447635629467508 0.0447635627107167
+3 19 xy_3_19 2 0.319097788681865 0.361652569315614 0.319249642002521
+4 19 xy_4_19 1 0.853337611696352 0.0733312150363963 0.0733311732672519
+5 19 xy_5_19 1 0.476130218521133 0.261945618707894 0.261924162770974
+6 19 xy_6_19 1 0.900661345681064 0.0496693271766869 0.0496693271422489
+7 19 xy_7_19 1 0.9004538967094 0.0497730516611383 0.0497730516294619
+8 19 xy_8_19 3 0.184998192839756 0.18500149883232 0.630000308327925
+9 19 xy_9_19 2 0.101366660241051 0.703689287536771 0.194944052222178
+10 19 xy_10_19 2 0.127983226929513 0.439518299555569 0.432498473514919
+11 19 xy_11_19 3 0.116695681449869 0.175222949789748 0.708081368760382
+12 19 xy_12_19 2 0.126464999826248 0.469868960215139 0.403666039958612
+13 19 xy_13_19 2 0.0834949820140702 0.793222654862791 0.123282363123139
+14 19 xy_14_19 3 0.0975704229291543 0.103922066804347 0.798507510266499
+15 19 xy_15_19 2 0.0752794747324414 0.833050450952555 0.0916700743150031
+16 19 xy_16_19 3 0.112011523712363 0.156434393516434 0.731554082771203
+17 19 xy_17_19 3 0.124074562068715 0.216954741947342 0.658970695983943
+18 19 xy_18_19 3 0.327036346426534 0.327036346443892 0.345927307129575
+19 19 xy_19_19 3 0.119654523583967 0.191899636986857 0.688445839429176
+20 19 xy_20_19 2 0.120437555845443 0.558842981535804 0.320719462618753
+1 20 xy_1_20 1 0.859659383600228 0.0701703229501636 0.0701702934496088
+2 20 xy_2_20 1 0.61095369217908 0.194525266271828 0.194521041549092
+3 20 xy_3_20 1 0.895924101065721 0.0520379494930225 0.0520379494412562
+4 20 xy_4_20 1 0.913550485426305 0.0432247573725399 0.0432247572011546
+5 20 xy_5_20 1 0.901332644074553 0.049333677982666 0.0493336779427807
+6 20 xy_6_20 1 0.898484216329085 0.0507578935125244 0.0507578901583903
+7 20 xy_7_20 1 0.911108148117435 0.0444459259995828 0.0444459258829826
+8 20 xy_8_20 3 0.0979950762955691 0.108117839198438 0.793887084505993
+9 20 xy_9_20 3 0.0993699095116269 0.11629098029036 0.784339110198013
+10 20 xy_10_20 3 0.0864978548491614 0.0891226350383335 0.824379510112505
+11 20 xy_11_20 3 0.0848150701337741 0.0855288027656947 0.829656127100531
+12 20 xy_12_20 3 0.091615410020144 0.0988675607035835 0.809517029276273
+13 20 xy_13_20 3 0.0972624365126445 0.111199648890651 0.791537914596704
+14 20 xy_14_20 3 0.0958719000403978 0.107502736786978 0.796625363172624
+15 20 xy_15_20 3 0.0896261651696165 0.0944402457726828 0.815933589057701
+16 20 xy_16_20 3 0.0857045215447479 0.0861953636303524 0.8281001148249
+17 20 xy_17_20 3 0.101389342447365 0.10146607633283 0.797144581219806
+18 20 xy_18_20 3 0.162944365129731 0.162948264159431 0.674107370710838
+19 20 xy_19_20 3 0.11213452896389 0.112173432312576 0.775692038723534
+20 20 xy_20_20 3 0.0915275910703783 0.0961831985338147 0.812289210395807
diff -r 5629069fca8f -r c4df3005e04d test-data/probability_r2_k10_mz1135.93347167969.tabular
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/probability_r2_k10_mz1135.93347167969.tabular Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,401 @@
+x y pixel_names class X1 X2 X3 X4 X5
+1 1 xy_1_1 2 0.103020335449098 0.896979664550903 NA NA NA
+2 1 xy_2_1 2 0.105473181113881 0.894526818886119 NA NA NA
+3 1 xy_3_1 3 NA NA 0.875615363102476 0.124384636897524 NA
+4 1 xy_4_1 3 NA NA 0.851266299854111 0.148733700145889 NA
+5 1 xy_5_1 3 NA NA 0.860051638085976 0.139948361914025 NA
+6 1 xy_6_1 3 NA NA 0.761647436676139 0.238352563323861 NA
+7 1 xy_7_1 2 0.182529426057793 0.817470573942208 NA NA NA
+8 1 xy_8_1 1 0.941039895576799 0.0589601044232009 NA NA NA
+9 1 xy_9_1 1 0.943908265739545 0.0560917342604552 NA NA NA
+10 1 xy_10_1 1 0.946144146674231 0.0538558533257694 NA NA NA
+11 1 xy_11_1 1 0.946407758474576 0.0535922415254241 NA NA NA
+12 1 xy_12_1 1 0.954188476238198 0.0458115237618019 NA NA NA
+13 1 xy_13_1 1 0.946620679361554 0.0533793206384464 NA NA NA
+14 1 xy_14_1 1 0.946383603328925 0.0536163966710746 NA NA NA
+15 1 xy_15_1 1 0.954534262297142 0.0454657377028575 NA NA NA
+16 1 xy_16_1 1 0.946937989073607 0.053062010926393 NA NA NA
+17 1 xy_17_1 1 0.947433161876214 0.0525668381237858 NA NA NA
+18 1 xy_18_1 1 0.947739055467613 0.0522609445323874 NA NA NA
+19 1 xy_19_1 1 0.947751293668412 0.0522487063315876 NA NA NA
+20 1 xy_20_1 1 0.952255848236646 0.0477441517633543 NA NA NA
+1 2 xy_1_2 3 NA NA 0.859206228983602 0.140793771016398 NA
+2 2 xy_2_2 3 NA NA 0.868966809797105 0.131033190202895 NA
+3 2 xy_3_2 3 NA NA 0.875160479466722 0.124839520533278 NA
+4 2 xy_4_2 3 NA NA 0.804220530331249 0.195779469668752 NA
+5 2 xy_5_2 3 NA NA 0.794510153832606 0.205489846167394 NA
+6 2 xy_6_2 3 NA NA 0.856628649807154 0.143371350192846 NA
+7 2 xy_7_2 3 NA NA 0.855718253316932 0.144281746683068 NA
+8 2 xy_8_2 3 NA NA 0.827753889743415 0.172246110256585 NA
+9 2 xy_9_2 1 0.946284298320806 0.0537157016791942 NA NA NA
+10 2 xy_10_2 1 0.769374657306886 0.230625342693115 NA NA NA
+11 2 xy_11_2 1 0.945090766923877 0.0549092330761232 NA NA NA
+12 2 xy_12_2 1 0.945737335422033 0.054262664577967 NA NA NA
+13 2 xy_13_2 1 0.945600558567459 0.0543994414325411 NA NA NA
+14 2 xy_14_2 1 0.950847256021339 0.0491527439786609 NA NA NA
+15 2 xy_15_2 1 0.945219115579397 0.0547808844206027 NA NA NA
+16 2 xy_16_2 1 0.94620821674802 0.0537917832519801 NA NA NA
+17 2 xy_17_2 1 0.953530272335786 0.0464697276642139 NA NA NA
+18 2 xy_18_2 1 0.951570612821144 0.0484293871788565 NA NA NA
+19 2 xy_19_2 1 0.955821461571265 0.0441785384287349 NA NA NA
+20 2 xy_20_2 1 0.947743776276186 0.0522562237238136 NA NA NA
+1 3 xy_1_3 3 NA NA 0.835481115700174 0.164518884299826 NA
+2 3 xy_2_3 3 NA NA 0.695409629420474 0.304590370579526 NA
+3 3 xy_3_3 3 NA NA 0.876462568112197 0.123537431887803 NA
+4 3 xy_4_3 3 NA NA 0.85082264789337 0.14917735210663 NA
+5 3 xy_5_3 3 NA NA 0.878890510088586 0.121109489911414 NA
+6 3 xy_6_3 3 NA NA 0.870311243843917 0.129688756156083 NA
+7 3 xy_7_3 3 NA NA 0.87300813797666 0.12699186202334 NA
+8 3 xy_8_3 3 NA NA 0.811661586530175 0.188338413469825 NA
+9 3 xy_9_3 3 NA NA 0.856157399446096 0.143842600553904 NA
+10 3 xy_10_3 1 0.865627377090542 0.134372622909458 NA NA NA
+11 3 xy_11_3 1 0.94682656889567 0.0531734311043297 NA NA NA
+12 3 xy_12_3 1 0.893467278448154 0.106532721551846 NA NA NA
+13 3 xy_13_3 1 0.664961582397203 0.335038417602797 NA NA NA
+14 3 xy_14_3 1 0.944081001351204 0.0559189986487956 NA NA NA
+15 3 xy_15_3 2 0.490705121594534 0.509294878405466 NA NA NA
+16 3 xy_16_3 1 0.945709649905103 0.054290350094897 NA NA NA
+17 3 xy_17_3 1 0.954438913225744 0.0455610867742563 NA NA NA
+18 3 xy_18_3 1 0.947733594972515 0.0522664050274855 NA NA NA
+19 3 xy_19_3 1 0.940190235235463 0.0598097647645374 NA NA NA
+20 3 xy_20_3 1 0.947744927295705 0.0522550727042953 NA NA NA
+1 4 xy_1_4 3 NA NA 0.859290347356755 0.140709652643245 NA
+2 4 xy_2_4 3 NA NA 0.848944520847906 0.151055479152094 NA
+3 4 xy_3_4 3 NA NA 0.862233623147597 0.137766376852403 NA
+4 4 xy_4_4 3 NA NA 0.877889844474806 0.122110155525194 NA
+5 4 xy_5_4 3 NA NA 0.832791852661168 0.167208147338832 NA
+6 4 xy_6_4 3 NA NA 0.86141090652765 0.13858909347235 NA
+7 4 xy_7_4 3 NA NA 0.856725598854547 0.143274401145453 NA
+8 4 xy_8_4 3 NA NA 0.862594653289558 0.137405346710442 NA
+9 4 xy_9_4 4 NA NA 0.311020143922041 0.688979856077959 NA
+10 4 xy_10_4 2 0.310400596407974 0.689599403592026 NA NA NA
+11 4 xy_11_4 1 0.949122117640388 0.0508778823596118 NA NA NA
+12 4 xy_12_4 1 0.94771473811543 0.0522852618845697 NA NA NA
+13 4 xy_13_4 1 0.945144439831975 0.0548555601680247 NA NA NA
+14 4 xy_14_4 1 0.9479921938618 0.0520078061382 NA NA NA
+15 4 xy_15_4 1 0.952856502465909 0.0471434975340905 NA NA NA
+16 4 xy_16_4 1 0.94603823314778 0.0539617668522203 NA NA NA
+17 4 xy_17_4 1 0.947140448639676 0.0528595513603244 NA NA NA
+18 4 xy_18_4 1 0.948394566672814 0.0516054333271861 NA NA NA
+19 4 xy_19_4 1 0.955877385436828 0.0441226145631717 NA NA NA
+20 4 xy_20_4 1 0.954608847759487 0.0453911522405126 NA NA NA
+1 5 xy_1_5 3 NA NA 0.708678816602691 0.291321183397309 NA
+2 5 xy_2_5 3 NA NA 0.866688795169369 0.133311204830631 NA
+3 5 xy_3_5 3 NA NA 0.83124092507812 0.16875907492188 NA
+4 5 xy_4_5 3 NA NA 0.871056045374113 0.128943954625887 NA
+5 5 xy_5_5 3 NA NA 0.864944964416311 0.135055035583689 NA
+6 5 xy_6_5 3 NA NA 0.828342523056709 0.171657476943291 NA
+7 5 xy_7_5 3 NA NA 0.854440891173953 0.145559108826047 NA
+8 5 xy_8_5 3 NA NA 0.835531654327779 0.164468345672221 NA
+9 5 xy_9_5 4 NA NA 0.426778235447402 0.573221764552598 NA
+10 5 xy_10_5 2 0.35257154017378 0.64742845982622 NA NA NA
+11 5 xy_11_5 1 0.949826176399276 0.0501738236007243 NA NA NA
+12 5 xy_12_5 1 0.944645411896293 0.0553545881037068 NA NA NA
+13 5 xy_13_5 1 0.94908702741833 0.0509129725816703 NA NA NA
+14 5 xy_14_5 1 0.744060336891656 0.255939663108344 NA NA NA
+15 5 xy_15_5 1 0.947108365627823 0.0528916343721766 NA NA NA
+16 5 xy_16_5 1 0.941900021236051 0.0580999787639489 NA NA NA
+17 5 xy_17_5 1 0.946891281517419 0.0531087184825809 NA NA NA
+18 5 xy_18_5 1 0.949780896701428 0.0502191032985722 NA NA NA
+19 5 xy_19_5 1 0.947661323747976 0.0523386762520237 NA NA NA
+20 5 xy_20_5 1 0.949977005622238 0.0500229943777616 NA NA NA
+1 6 xy_1_6 3 NA NA 0.869380299659226 0.130619700340774 NA
+2 6 xy_2_6 3 NA NA 0.794275879655546 0.205724120344454 NA
+3 6 xy_3_6 3 NA NA 0.873370797064789 0.126629202935211 NA
+4 6 xy_4_6 3 NA NA 0.712786974626446 0.287213025373554 NA
+5 6 xy_5_6 3 NA NA 0.83355641643066 0.16644358356934 NA
+6 6 xy_6_6 3 NA NA 0.8717503068749 0.1282496931251 NA
+7 6 xy_7_6 3 NA NA 0.752686485226544 0.247313514773456 NA
+8 6 xy_8_6 3 NA NA 0.781766561168356 0.218233438831644 NA
+9 6 xy_9_6 3 NA NA 0.636880967319099 0.363119032680901 NA
+10 6 xy_10_6 3 NA NA 0.826838178010531 0.173161821989469 NA
+11 6 xy_11_6 1 0.948937537182194 0.0510624628178057 NA NA NA
+12 6 xy_12_6 1 0.944866378577411 0.0551336214225886 NA NA NA
+13 6 xy_13_6 1 0.945363853020618 0.0546361469793822 NA NA NA
+14 6 xy_14_6 1 0.947073716372855 0.0529262836271448 NA NA NA
+15 6 xy_15_6 1 0.952593797957732 0.0474062020422683 NA NA NA
+16 6 xy_16_6 1 0.945467682694886 0.0545323173051142 NA NA NA
+17 6 xy_17_6 1 0.923931767253487 0.0760682327465126 NA NA NA
+18 6 xy_18_6 1 0.951883203886192 0.0481167961138083 NA NA NA
+19 6 xy_19_6 1 0.955281580836861 0.0447184191631393 NA NA NA
+20 6 xy_20_6 1 0.946588971596075 0.0534110284039249 NA NA NA
+1 7 xy_1_7 3 NA NA 0.85852265104932 0.14147734895068 NA
+2 7 xy_2_7 3 NA NA 0.872285730739343 0.127714269260657 NA
+3 7 xy_3_7 3 NA NA 0.862372785126613 0.137627214873387 NA
+4 7 xy_4_7 3 NA NA 0.853013192766013 0.146986807233987 NA
+5 7 xy_5_7 3 NA NA 0.862213959733968 0.137786040266032 NA
+6 7 xy_6_7 3 NA NA 0.801964126537999 0.198035873462001 NA
+7 7 xy_7_7 3 NA NA 0.870272013894925 0.129727986105075 NA
+8 7 xy_8_7 3 NA NA 0.845666914611345 0.154333085388655 NA
+9 7 xy_9_7 3 NA NA 0.853035877491773 0.146964122508227 NA
+10 7 xy_10_7 3 NA NA 0.860125426935811 0.139874573064189 NA
+11 7 xy_11_7 1 0.939608912468137 0.0603910875318628 NA NA NA
+12 7 xy_12_7 1 0.947908320784015 0.0520916792159851 NA NA NA
+13 7 xy_13_7 1 0.606668291068225 0.393331708931775 NA NA NA
+14 7 xy_14_7 1 0.940615513158612 0.0593844868413878 NA NA NA
+15 7 xy_15_7 1 0.940378151728832 0.0596218482711677 NA NA NA
+16 7 xy_16_7 1 0.688860295443105 0.311139704556895 NA NA NA
+17 7 xy_17_7 1 0.828517790554322 0.171482209445678 NA NA NA
+18 7 xy_18_7 1 0.942697190677603 0.057302809322397 NA NA NA
+19 7 xy_19_7 1 0.943747065306261 0.0562529346937391 NA NA NA
+20 7 xy_20_7 1 0.943890883073635 0.0561091169263652 NA NA NA
+1 8 xy_1_8 3 NA NA 0.839495701300916 0.160504298699084 NA
+2 8 xy_2_8 3 NA NA 0.839363088896053 0.160636911103946 NA
+3 8 xy_3_8 3 NA NA 0.877912965382988 0.122087034617012 NA
+4 8 xy_4_8 3 NA NA 0.837582580219842 0.162417419780158 NA
+5 8 xy_5_8 3 NA NA 0.844238403629106 0.155761596370894 NA
+6 8 xy_6_8 3 NA NA 0.832619796586721 0.167380203413279 NA
+7 8 xy_7_8 3 NA NA 0.859780669074422 0.140219330925578 NA
+8 8 xy_8_8 3 NA NA 0.857307891639054 0.142692108360946 NA
+9 8 xy_9_8 3 NA NA 0.734303546133108 0.265696453866892 NA
+10 8 xy_10_8 1 0.759026035837954 0.240973964162046 NA NA NA
+11 8 xy_11_8 1 0.923943664087017 0.0760563359129831 NA NA NA
+12 8 xy_12_8 1 0.825046757803008 0.174953242196992 NA NA NA
+13 8 xy_13_8 1 0.927622210033909 0.072377789966091 NA NA NA
+14 8 xy_14_8 1 0.936520451976929 0.0634795480230711 NA NA NA
+15 8 xy_15_8 1 0.925998553689414 0.0740014463105857 NA NA NA
+16 8 xy_16_8 1 0.744143958418101 0.255856041581899 NA NA NA
+17 8 xy_17_8 1 0.927662750905109 0.072337249094891 NA NA NA
+18 8 xy_18_8 1 0.938951697428001 0.0610483025719986 NA NA NA
+19 8 xy_19_8 1 0.940928710225265 0.0590712897747354 NA NA NA
+20 8 xy_20_8 1 0.940749875626563 0.0592501243734375 NA NA NA
+1 9 xy_1_9 3 NA NA 0.87717908816612 0.12282091183388 NA
+2 9 xy_2_9 3 NA NA 0.859865853793513 0.140134146206487 NA
+3 9 xy_3_9 3 NA NA 0.791478572499058 0.208521427500942 NA
+4 9 xy_4_9 3 NA NA 0.871464501711314 0.128535498288686 NA
+5 9 xy_5_9 3 NA NA 0.851579932811066 0.148420067188934 NA
+6 9 xy_6_9 3 NA NA 0.866554360744126 0.133445639255874 NA
+7 9 xy_7_9 3 NA NA 0.842562875582308 0.157437124417692 NA
+8 9 xy_8_9 4 NA NA 0.291318152228923 0.708681847771077 NA
+9 9 xy_9_9 4 NA NA 0.281276555716685 0.718723444283315 NA
+10 9 xy_10_9 2 0.159869954330051 0.84013004566995 NA NA NA
+11 9 xy_11_9 2 0.142393408674551 0.857606591325449 NA NA NA
+12 9 xy_12_9 2 0.306234609367576 0.693765390632424 NA NA NA
+13 9 xy_13_9 2 0.170462810666442 0.829537189333558 NA NA NA
+14 9 xy_14_9 2 0.147886538161998 0.852113461838003 NA NA NA
+15 9 xy_15_9 2 0.158721406226984 0.841278593773016 NA NA NA
+16 9 xy_16_9 2 0.14649494921929 0.85350505078071 NA NA NA
+17 9 xy_17_9 2 0.237410919002814 0.762589080997186 NA NA NA
+18 9 xy_18_9 2 0.313447867489447 0.686552132510553 NA NA NA
+19 9 xy_19_9 2 0.204399189948879 0.795600810051121 NA NA NA
+20 9 xy_20_9 2 0.174736554536592 0.825263445463408 NA NA NA
+1 10 xy_1_10 3 NA NA 0.81190663657937 0.18809336342063 NA
+2 10 xy_2_10 3 NA NA 0.874723814560178 0.125276185439822 NA
+3 10 xy_3_10 3 NA NA 0.823656123246783 0.176343876753217 NA
+4 10 xy_4_10 3 NA NA 0.774037099680507 0.225962900319493 NA
+5 10 xy_5_10 3 NA NA 0.85933121538065 0.140668784619349 NA
+6 10 xy_6_10 3 NA NA 0.67165333366972 0.32834666633028 NA
+7 10 xy_7_10 3 NA NA 0.853249967623256 0.146750032376744 NA
+8 10 xy_8_10 4 NA NA 0.272273652014957 0.727726347985043 NA
+9 10 xy_9_10 2 0.312444358381102 0.687555641618898 NA NA NA
+10 10 xy_10_10 2 0.130074314004641 0.86992568599536 NA NA NA
+11 10 xy_11_10 2 0.12559212150261 0.87440787849739 NA NA NA
+12 10 xy_12_10 2 0.122160332718735 0.877839667281265 NA NA NA
+13 10 xy_13_10 2 0.156959824159884 0.843040175840116 NA NA NA
+14 10 xy_14_10 2 0.160366124748978 0.839633875251022 NA NA NA
+15 10 xy_15_10 2 0.132567710149668 0.867432289850332 NA NA NA
+16 10 xy_16_10 2 0.195072802254679 0.804927197745322 NA NA NA
+17 10 xy_17_10 2 0.192770438959689 0.807229561040311 NA NA NA
+18 10 xy_18_10 2 0.148448520214449 0.851551479785551 NA NA NA
+19 10 xy_19_10 2 0.136546130489683 0.863453869510317 NA NA NA
+20 10 xy_20_10 2 0.120212615023162 0.879787384976838 NA NA NA
+1 11 xy_1_11 2 0.2150241273944 0.7849758726056 NA NA NA
+2 11 xy_2_11 3 NA NA 0.857901219814891 0.142098780185109 NA
+3 11 xy_3_11 3 NA NA 0.879758815835409 0.120241184164591 NA
+4 11 xy_4_11 3 NA NA 0.86215582812273 0.13784417187727 NA
+5 11 xy_5_11 3 NA NA 0.877074947415041 0.122925052584959 NA
+6 11 xy_6_11 3 NA NA 0.869506801384427 0.130493198615573 NA
+7 11 xy_7_11 3 NA NA 0.790118184236069 0.209881815763931 NA
+8 11 xy_8_11 5 NA NA NA NA 1
+9 11 xy_9_11 5 NA NA NA NA 1
+10 11 xy_10_11 5 NA NA NA NA 1
+11 11 xy_11_11 5 NA NA NA NA 1
+12 11 xy_12_11 5 NA NA NA NA 1
+13 11 xy_13_11 5 NA NA NA NA 1
+14 11 xy_14_11 5 NA NA NA NA 1
+15 11 xy_15_11 5 NA NA NA NA 1
+16 11 xy_16_11 5 NA NA NA NA 1
+17 11 xy_17_11 5 NA NA NA NA 1
+18 11 xy_18_11 5 NA NA NA NA 1
+19 11 xy_19_11 5 NA NA NA NA 1
+20 11 xy_20_11 5 NA NA NA NA 1
+1 12 xy_1_12 1 0.943058830358198 0.0569411696418019 NA NA NA
+2 12 xy_2_12 1 0.941434477146507 0.058565522853493 NA NA NA
+3 12 xy_3_12 1 0.943257935940769 0.0567420640592309 NA NA NA
+4 12 xy_4_12 2 0.31461447477621 0.68538552522379 NA NA NA
+5 12 xy_5_12 2 0.241429521828265 0.758570478171735 NA NA NA
+6 12 xy_6_12 1 0.94532477492682 0.0546752250731798 NA NA NA
+7 12 xy_7_12 1 0.952565107341469 0.0474348926585312 NA NA NA
+8 12 xy_8_12 5 NA NA NA NA 1
+9 12 xy_9_12 5 NA NA NA NA 1
+10 12 xy_10_12 5 NA NA NA NA 1
+11 12 xy_11_12 5 NA NA NA NA 1
+12 12 xy_12_12 5 NA NA NA NA 1
+13 12 xy_13_12 5 NA NA NA NA 1
+14 12 xy_14_12 5 NA NA NA NA 1
+15 12 xy_15_12 5 NA NA NA NA 1
+16 12 xy_16_12 5 NA NA NA NA 1
+17 12 xy_17_12 5 NA NA NA NA 1
+18 12 xy_18_12 5 NA NA NA NA 1
+19 12 xy_19_12 5 NA NA NA NA 1
+20 12 xy_20_12 5 NA NA NA NA 1
+1 13 xy_1_13 1 0.951790456358875 0.0482095436411248 NA NA NA
+2 13 xy_2_13 1 0.819906721631564 0.180093278368436 NA NA NA
+3 13 xy_3_13 1 0.943093605778237 0.0569063942217627 NA NA NA
+4 13 xy_4_13 1 0.915348482053264 0.0846515179467357 NA NA NA
+5 13 xy_5_13 1 0.866867476422421 0.133132523577579 NA NA NA
+6 13 xy_6_13 1 0.949343699603775 0.050656300396225 NA NA NA
+7 13 xy_7_13 1 0.946185671406479 0.0538143285935212 NA NA NA
+8 13 xy_8_13 5 NA NA NA NA 1
+9 13 xy_9_13 5 NA NA NA NA 1
+10 13 xy_10_13 5 NA NA NA NA 1
+11 13 xy_11_13 5 NA NA NA NA 1
+12 13 xy_12_13 5 NA NA NA NA 1
+13 13 xy_13_13 5 NA NA NA NA 1
+14 13 xy_14_13 5 NA NA NA NA 1
+15 13 xy_15_13 5 NA NA NA NA 1
+16 13 xy_16_13 5 NA NA NA NA 1
+17 13 xy_17_13 5 NA NA NA NA 1
+18 13 xy_18_13 5 NA NA NA NA 1
+19 13 xy_19_13 5 NA NA NA NA 1
+20 13 xy_20_13 5 NA NA NA NA 1
+1 14 xy_1_14 1 0.954856940949223 0.0451430590507768 NA NA NA
+2 14 xy_2_14 1 0.946446455550009 0.0535535444499915 NA NA NA
+3 14 xy_3_14 1 0.948628143508387 0.0513718564916127 NA NA NA
+4 14 xy_4_14 1 0.945063041312098 0.0549369586879015 NA NA NA
+5 14 xy_5_14 1 0.945302236779593 0.0546977632204069 NA NA NA
+6 14 xy_6_14 1 0.941585023595873 0.0584149764041266 NA NA NA
+7 14 xy_7_14 1 0.955409642032094 0.0445903579679064 NA NA NA
+8 14 xy_8_14 5 NA NA NA NA 1
+9 14 xy_9_14 5 NA NA NA NA 1
+10 14 xy_10_14 5 NA NA NA NA 1
+11 14 xy_11_14 5 NA NA NA NA 1
+12 14 xy_12_14 5 NA NA NA NA 1
+13 14 xy_13_14 5 NA NA NA NA 1
+14 14 xy_14_14 5 NA NA NA NA 1
+15 14 xy_15_14 5 NA NA NA NA 1
+16 14 xy_16_14 5 NA NA NA NA 1
+17 14 xy_17_14 5 NA NA NA NA 1
+18 14 xy_18_14 5 NA NA NA NA 1
+19 14 xy_19_14 5 NA NA NA NA 1
+20 14 xy_20_14 5 NA NA NA NA 1
+1 15 xy_1_15 1 0.947760946153055 0.0522390538469451 NA NA NA
+2 15 xy_2_15 1 0.950505076693017 0.0494949233069829 NA NA NA
+3 15 xy_3_15 1 0.871168684941385 0.128831315058615 NA NA NA
+4 15 xy_4_15 1 0.95520668724589 0.0447933127541097 NA NA NA
+5 15 xy_5_15 1 0.947404757892649 0.0525952421073512 NA NA NA
+6 15 xy_6_15 1 0.954477349543404 0.0455226504565959 NA NA NA
+7 15 xy_7_15 1 0.955574721384912 0.0444252786150877 NA NA NA
+8 15 xy_8_15 5 NA NA NA NA 1
+9 15 xy_9_15 5 NA NA NA NA 1
+10 15 xy_10_15 5 NA NA NA NA 1
+11 15 xy_11_15 5 NA NA NA NA 1
+12 15 xy_12_15 5 NA NA NA NA 1
+13 15 xy_13_15 5 NA NA NA NA 1
+14 15 xy_14_15 5 NA NA NA NA 1
+15 15 xy_15_15 5 NA NA NA NA 1
+16 15 xy_16_15 5 NA NA NA NA 1
+17 15 xy_17_15 5 NA NA NA NA 1
+18 15 xy_18_15 5 NA NA NA NA 1
+19 15 xy_19_15 5 NA NA NA NA 1
+20 15 xy_20_15 5 NA NA NA NA 1
+1 16 xy_1_16 1 0.892415237027753 0.107584762972247 NA NA NA
+2 16 xy_2_16 1 0.948481868767842 0.0515181312321582 NA NA NA
+3 16 xy_3_16 1 0.946563595832913 0.0534364041670869 NA NA NA
+4 16 xy_4_16 1 0.954203698469389 0.045796301530611 NA NA NA
+5 16 xy_5_16 1 0.947526121294023 0.0524738787059769 NA NA NA
+6 16 xy_6_16 1 0.952666428880231 0.0473335711197694 NA NA NA
+7 16 xy_7_16 1 0.951511159933006 0.0484888400669943 NA NA NA
+8 16 xy_8_16 5 NA NA NA NA 1
+9 16 xy_9_16 5 NA NA NA NA 1
+10 16 xy_10_16 5 NA NA NA NA 1
+11 16 xy_11_16 5 NA NA NA NA 1
+12 16 xy_12_16 5 NA NA NA NA 1
+13 16 xy_13_16 5 NA NA NA NA 1
+14 16 xy_14_16 5 NA NA NA NA 1
+15 16 xy_15_16 5 NA NA NA NA 1
+16 16 xy_16_16 5 NA NA NA NA 1
+17 16 xy_17_16 5 NA NA NA NA 1
+18 16 xy_18_16 5 NA NA NA NA 1
+19 16 xy_19_16 5 NA NA NA NA 1
+20 16 xy_20_16 5 NA NA NA NA 1
+1 17 xy_1_17 1 0.950060906792099 0.0499390932079009 NA NA NA
+2 17 xy_2_17 1 0.946515465266608 0.0534845347333916 NA NA NA
+3 17 xy_3_17 1 0.793090453929008 0.206909546070992 NA NA NA
+4 17 xy_4_17 1 0.952616455037497 0.0473835449625028 NA NA NA
+5 17 xy_5_17 1 0.952145463899211 0.0478545361007892 NA NA NA
+6 17 xy_6_17 1 0.949486664118868 0.0505133358811326 NA NA NA
+7 17 xy_7_17 1 0.955041365581388 0.0449586344186117 NA NA NA
+8 17 xy_8_17 5 NA NA NA NA 1
+9 17 xy_9_17 5 NA NA NA NA 1
+10 17 xy_10_17 5 NA NA NA NA 1
+11 17 xy_11_17 5 NA NA NA NA 1
+12 17 xy_12_17 5 NA NA NA NA 1
+13 17 xy_13_17 5 NA NA NA NA 1
+14 17 xy_14_17 5 NA NA NA NA 1
+15 17 xy_15_17 5 NA NA NA NA 1
+16 17 xy_16_17 5 NA NA NA NA 1
+17 17 xy_17_17 5 NA NA NA NA 1
+18 17 xy_18_17 5 NA NA NA NA 1
+19 17 xy_19_17 5 NA NA NA NA 1
+20 17 xy_20_17 5 NA NA NA NA 1
+1 18 xy_1_18 1 0.924283612907066 0.0757163870929339 NA NA NA
+2 18 xy_2_18 1 0.833271075296862 0.166728924703139 NA NA NA
+3 18 xy_3_18 1 0.950506749170232 0.0494932508297682 NA NA NA
+4 18 xy_4_18 1 0.945030112956943 0.054969887043057 NA NA NA
+5 18 xy_5_18 1 0.947419130420145 0.0525808695798547 NA NA NA
+6 18 xy_6_18 1 0.94636686386672 0.0536331361332798 NA NA NA
+7 18 xy_7_18 1 0.946842051526658 0.0531579484733416 NA NA NA
+8 18 xy_8_18 5 NA NA NA NA 1
+9 18 xy_9_18 5 NA NA NA NA 1
+10 18 xy_10_18 5 NA NA NA NA 1
+11 18 xy_11_18 5 NA NA NA NA 1
+12 18 xy_12_18 5 NA NA NA NA 1
+13 18 xy_13_18 5 NA NA NA NA 1
+14 18 xy_14_18 5 NA NA NA NA 1
+15 18 xy_15_18 5 NA NA NA NA 1
+16 18 xy_16_18 5 NA NA NA NA 1
+17 18 xy_17_18 5 NA NA NA NA 1
+18 18 xy_18_18 5 NA NA NA NA 1
+19 18 xy_19_18 5 NA NA NA NA 1
+20 18 xy_20_18 5 NA NA NA NA 1
+1 19 xy_1_19 1 0.945469095167889 0.0545309048321114 NA NA NA
+2 19 xy_2_19 1 0.947686502636905 0.052313497363095 NA NA NA
+3 19 xy_3_19 1 0.500724657394895 0.499275342605105 NA NA NA
+4 19 xy_4_19 1 0.943283865302304 0.0567161346976964 NA NA NA
+5 19 xy_5_19 1 0.943587862592802 0.0564121374071975 NA NA NA
+6 19 xy_6_19 1 0.943792124413294 0.0562078755867061 NA NA NA
+7 19 xy_7_19 1 0.923971584962464 0.0760284150375363 NA NA NA
+8 19 xy_8_19 5 NA NA NA NA 1
+9 19 xy_9_19 5 NA NA NA NA 1
+10 19 xy_10_19 5 NA NA NA NA 1
+11 19 xy_11_19 5 NA NA NA NA 1
+12 19 xy_12_19 5 NA NA NA NA 1
+13 19 xy_13_19 5 NA NA NA NA 1
+14 19 xy_14_19 5 NA NA NA NA 1
+15 19 xy_15_19 5 NA NA NA NA 1
+16 19 xy_16_19 5 NA NA NA NA 1
+17 19 xy_17_19 5 NA NA NA NA 1
+18 19 xy_18_19 5 NA NA NA NA 1
+19 19 xy_19_19 5 NA NA NA NA 1
+20 19 xy_20_19 5 NA NA NA NA 1
+1 20 xy_1_20 1 0.945806686367799 0.054193313632201 NA NA NA
+2 20 xy_2_20 1 0.916303384573456 0.0836966154265443 NA NA NA
+3 20 xy_3_20 1 0.951763565776223 0.0482364342237765 NA NA NA
+4 20 xy_4_20 1 0.943923476961385 0.0560765230386148 NA NA NA
+5 20 xy_5_20 2 0.425906202005294 0.574093797994706 NA NA NA
+6 20 xy_6_20 1 0.940077538712559 0.0599224612874413 NA NA NA
+7 20 xy_7_20 2 0.499816861759627 0.500183138240373 NA NA NA
+8 20 xy_8_20 5 NA NA NA NA 1
+9 20 xy_9_20 5 NA NA NA NA 1
+10 20 xy_10_20 5 NA NA NA NA 1
+11 20 xy_11_20 5 NA NA NA NA 1
+12 20 xy_12_20 5 NA NA NA NA 1
+13 20 xy_13_20 5 NA NA NA NA 1
+14 20 xy_14_20 5 NA NA NA NA 1
+15 20 xy_15_20 5 NA NA NA NA 1
+16 20 xy_16_20 5 NA NA NA NA 1
+17 20 xy_17_20 5 NA NA NA NA 1
+18 20 xy_18_20 5 NA NA NA NA 1
+19 20 xy_19_20 5 NA NA NA NA 1
+20 20 xy_20_20 5 NA NA NA NA 1
diff -r 5629069fca8f -r c4df3005e04d test-data/spatial_DGMM_input.ibd
Binary file test-data/spatial_DGMM_input.ibd has changed
diff -r 5629069fca8f -r c4df3005e04d test-data/spatial_DGMM_input.imzML
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/spatial_DGMM_input.imzML Tue Feb 22 20:47:57 2022 +0000
@@ -0,0 +1,11675 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+