position

 

 

 

 

 

 

C:\Python36\python.exe D:/pymine/clean/chained_located/chained_located_dynamic_input.py
'-69,-47,,,-72,-40,-37,-96,-36,-97,-67,-67,-43,,-100,-70,-54,-62,-92,-98,,-33,-77,-17,-17,,-98,-76,-61,-83,-19,-38,-29,-34,-50,-56,,,-50,-63;-43,-58,-75,-97,,-42,-37,-48,-94,-92,-35,-61,,-100,-89,-26,,-59,-15,-93,-72,-34,-35,-57,-25,-46,,-68,,,-30,,-90,-26,-56,-34,-20,-91,-90,-87;-41,,-24,-26,-41,-39,,-58,-76,-50,-89,-26,-17,-21,-38,-92,,-53,-59,-74,-36,-43,-23,-34,-22,-33,-70,-78,,-96,-77,,-55,-39,,-66,-41,-29,-81,-59;-24,-58,-22,-17,,-29,-23,-39,-46,-90,-87,-41,,-77,-17,-81,-58,-44,-39,-48,-40,-67,-72,-69,-65,,-31,-21,-57,-62,-90,-21,-35,-43,,,,,-43,;-15,,-83,-67,-43,-90,-16,-46,-38,-67,-22,-21,,-89,-33,-63,-29,-97,-19,-29,,-96,-94,,-43,-33,-77,-16,-71,,-52,-67,-45,-92,-20,-91,,-92,-28,;-36,,,,-41,-32,-15,-33,-44,-40,-37,,-61,-71,-70,-73,-78,-69,-64,-66,,-20,-86,-67,-24,-92,-91,-15,-64,-51,,-84,-93,-30,-40,-49,,-86,-41,-40;-80,-34,,-73,-65,-47,-54,-50,-85,-79,-27,-57,-86,-29,-93,-68,-87,-43,-41,-25,-67,-15,-80,,-99,-73,-60,-95,,-68,-94,,-25,-74,-22,-70,-83,-31,-61,-26;,-24,,-51,-94,-90,-58,,-40,-93,-86,-70,-36,,-84,-95,-74,-57,-99,-59,-63,-61,,-51,-23,-37,-51,,-27,-50,-89,,-16,,-34,-27,-78,-73,-88,-19;-69,-84,-32,-45,-51,-55,-18,,-26,-98,,-35,-39,-28,-93,-35,,,-40,-98,-97,-82,-41,-33,,,-45,-52,-82,-24,-71,-24,-32,-27,-80,,-62,-57,-51,-79;-100,-18,-26,,-79,-57,-50,-57,-20,-68,-91,-92,-24,-39,,-70,-19,-100,-71,-68,,-29,-53,-55,-89,-55,-67,-45,-81,-97,-43,,-71,-38,-17,-72,-73,-41,-18,;-92,-81,-50,-51,-28,-16,-91,-19,-18,-48,-32,-18,-51,-53,,-57,-85,-37,-53,-86,-90,-54,-36,-71,-49,-65,-59,-17,,-96,-85,-89,-71,,,-76,-25,-94,-60,-48;-55,-36,-52,-15,-83,-67,-77,-97,,-72,-29,-37,-54,-43,-37,-45,-62,-15,-79,-98,-96,-49,-80,-55,-91,-81,-52,-62,,-87,-57,-74,,-18,-55,,-26,-34,-62,-18;,-85,-89,-48,-36,-91,,-69,-88,-58,-19,,-28,,-63,-59,-40,-49,,-50,-25,-87,-68,-94,-24,-65,-60,-60,,-54,-48,-98,-68,-71,-81,-17,-25,-56,-64,;-43,-96,-37,-65,-39,-87,-54,-88,-59,-22,-51,-85,-95,-15,-36,-44,-31,-79,,-35,-44,-84,-16,,-99,-54,-74,-70,-86,-74,-29,-92,-67,-53,-68,,-95,-59,-96,;-64,-95,,-86,-15,-69,-76,-53,-69,-39,-23,-81,,-32,-90,-80,-58,-78,-80,-36,,-57,-61,-56,-36,-27,-53,-29,-28,,-35,-73,-58,-46,-32,-91,-75,-31,-54,-40;-86,,-58,-79,,-82,-85,-25,-64,-79,-64,-37,-34,-59,-67,-56,-35,-87,-62,-71,-73,-53,-21,-39,-27,-90,-59,-35,-77,-28,-95,-30,-99,-66,,-90,-19,-22,-73,-19;,-37,-27,,-74,-23,-56,-63,-19,-32,-56,-25,-81,-95,-78,-77,-79,,-81,-77,-55,,-51,-82,-68,-57,-41,-71,-64,-75,-56,-42,-93,,,-70,-70,-60,-51,-72;-84,-59,-83,-56,-63,,-76,-85,-86,-88,-53,-33,,-45,-36,-86,-21,-40,-90,-50,-35,-71,-42,-45,-67,-39,-90,,,-57,-42,-65,-66,,-59,-67,-61,-80,-48,-60;,-82,-62,,-68,-38,,,-83,-85,-48,-96,,-38,-37,-67,-61,,-77,-34,-52,-51,-35,-39,-82,-42,-50,,,-30,-75,-48,-87,-44,-68,-16,-39,,-92,-42;-99,-79,-63,-17,-69,,-79,-22,,,-78,,-78,-70,-53,,-38,,-47,-23,-65,-65,-82,-25,,-77,,-74,-31,-36,-77,-94,-91,-22,-66,-49,,-88,-26,-81;-52,-83,-59,-56,,-29,-81,-87,-51,-61,-72,-75,-95,-83,-69,-62,-74,-36,-28,-18,-22,-39,-39,,-69,,-69,,,-72,-32,-47,-62,-58,-62,-15,-89,,-94,-55;-16,-73,-75,-65,,-81,-34,,-68,-59,-80,-72,-45,,-97,,,-89,,-90,-15,-94,-60,-31,-59,,-67,-16,-23,-20,-64,-96,,-32,-62,-62,-28,-36,-89,-29;,-41,,-96,-39,-84,,-78,-48,-40,-87,-41,,-95,-35,-96,-92,-66,-23,-21,,-25,,,,-97,-95,-87,-72,-51,-74,-28,-55,,-60,-15,-78,-55,-50,-30;-88,-29,-90,-17,-36,-71,-30,-35,-26,-94,,-46,-78,-47,-85,,,-34,-61,-43,-56,,-81,-98,-72,-68,-50,-54,-34,-68,-69,,-40,-19,-47,-15,-43,,-61,;-99,-67,-61,-29,-65,-68,-74,-17,-78,-96,-15,-57,-44,-31,-77,,-85,-64,-60,-38,-82,,-38,-90,-19,,,,-94,-71,,,,-76,-61,-36,-100,-92,-89,-23;-43,,-89,-65,-16,-91,-57,,-81,-23,-25,-85,-41,-19,,-97,-86,,,,,-54,-98,-86,,-32,-87,-64,-69,-89,-89,-54,-47,-46,-69,-19,-61,-45,-93,-66;,-62,-30,,-35,-58,-32,-69,-62,-84,-87,-93,-64,-20,-45,-30,-25,-37,-72,-33,-96,-68,-21,,-35,-42,-37,-50,-33,-89,-21,,-78,,-88,,-74,-83,-42,-98;-61,-65,-86,-66,-53,,-92,-59,-82,-58,,-76,-26,-82,,-38,-93,-31,-83,-48,-55,-92,-73,-24,-55,-25,-69,-60,-70,-41,-23,-99,-92,-88,-66,-31,-26,,-61,-55;,-31,-76,-74,-41,-40,-30,-31,-45,-96,-16,-21,-82,-42,,-85,-79,-86,-69,-44,-40,-53,-43,-36,-70,-29,-39,-43,,-30,-77,-55,-29,-58,-79,-19,-57,-55,-15,-43;-100,-49,-32,,-57,-15,-33,,-82,-94,-17,-71,,-74,,-83,-27,,-24,-68,-63,-33,-64,-53,-81,-55,,-33,-27,-19,-72,-95,-19,-54,-23,-56,,,-20,-72;-63,-87,-26,,-75,-22,-53,-26,-43,-43,-81,-83,,-91,,-76,-63,-54,,,-38,-100,-61,-88,-43,-28,-89,-62,-78,,-50,-49,-61,,-76,-41,-71,-84,-70,-38;-36,-87,-26,-93,-75,-97,-68,-81,-65,,-19,-74,-67,-52,-50,-69,,-82,-66,,-19,-94,,-89,-53,-82,,-49,-69,,-45,-91,-57,-92,-23,-84,-28,-61,-60,-48;,-80,-25,-48,-67,-59,-16,-56,-29,-87,-29,-78,-82,,-55,,-40,-83,-72,-18,-95,-80,-50,-51,-96,-58,-81,-54,,-80,-25,-19,-68,-15,-15,-25,-39,-34,-35,-26;-23,,,,-25,-61,,-15,-76,-77,,-31,-21,-27,-49,-28,-55,-89,-97,,-93,-76,,-32,-76,,-61,-50,-39,-59,-95,,-77,-58,-68,-87,-69,,-32,;-33,-99,-87,-27,,-40,-25,-24,,-66,,-83,-20,-86,,-37,-79,-30,-43,-62,,-86,-64,-41,-70,,-76,-28,-45,,-34,-80,-65,-26,-94,-49,-71,-44,-66,-96;-56,-30,-77,-30,-15,,-76,,-23,-72,-82,-44,-95,-95,-56,-69,-46,,-59,-44,-69,-35,,-63,-33,-16,,,-50,-39,-18,,,-94,,-97,,-51,-44,-37;,-100,-29,-94,-27,-92,-39,-56,-45,-34,,-26,-70,,-86,-84,-72,-15,-34,-15,-61,-93,-15,-20,-94,-50,,-81,,,-68,-91,-45,-85,-24,-18,-96,-26,,;,-96,-41,-16,-79,-18,-91,-16,,-81,-62,-49,,,-72,-62,,-43,-28,-39,-87,-62,-37,,,-62,-44,-28,-98,-94,,-54,-78,,-74,-80,-27,-64,-18,-77;-49,-40,-75,-62,-69,-83,-15,-88,-36,-71,,,-15,-85,-53,-38,,-32,-54,-44,-79,-50,,-92,-86,-32,,-64,-59,-45,-34,-21,,-47,-62,-48,-26,-27,,-89;-29,-78,-15,-64,-53,,-86,-66,-31,-31,-27,-68,-24,,-91,-77,-18,-32,-17,-50,-60,-17,,-65,-52,-86,-94,-59,-65,-56,,-67,-90,-40,-65,-47,-55,-83,-49,-76;'
{1: {1: 0,
     2: '-69',
     3: '-47',
     4: '-24',
     5: '-15',
     6: '-72',
     7: '-40',
     8: '-37',
     9: '-96',
     10: '-36',
     11: '-97',
     12: '-67',
     13: '-67',
     14: '-43',
     15: '-64',
     16: '-100',
     17: '-70',
     18: '-54',
     19: '-62',
     20: '-92',
     21: '-98',
     22: '-16',
     23: '-33',
     24: '-77',
     25: '-17',
     26: '-17',
     27: '-999',
     28: '-98',
     29: '-76',
     30: '-61',
     31: '-83',
     32: '-19',
     33: '-38',
     34: '-29',
     35: '-34',
     36: '-50',
     37: '-56',
     38: '-999',
     39: '-49',
     40: '-50'},
 2: {1: '-43',
     2: 0,
     3: '-58',
     4: '-75',
     5: '-97',
     6: '-999',
     7: '-42',
     8: '-37',
     9: '-48',
     10: '-94',
     11: '-92',
     12: '-35',
     13: '-61',
     14: '-96',
     15: '-100',
     16: '-89',
     17: '-26',
     18: '-59',
     19: '-59',
     20: '-15',
     21: '-93',
     22: '-72',
     23: '-34',
     24: '-35',
     25: '-57',
     26: '-25',
     27: '-46',
     28: '-65',
     29: '-68',
     30: '-49',
     31: '-87',
     32: '-30',
     33: '-80',
     34: '-90',
     35: '-26',
     36: '-56',
     37: '-34',
     38: '-20',
     39: '-91',
     40: '-90'},
 3: {1: '-41',
     2: '-58',
     3: 0,
     4: '-24',
     5: '-26',
     6: '-41',
     7: '-39',
     8: '-999',
     9: '-58',
     10: '-76',
     11: '-50',
     12: '-89',
     13: '-26',
     14: '-17',
     15: '-21',
     16: '-38',
     17: '-92',
     18: '-83',
     19: '-53',
     20: '-59',
     21: '-74',
     22: '-36',
     23: '-43',
     24: '-23',
     25: '-34',
     26: '-22',
     27: '-33',
     28: '-70',
     29: '-78',
     30: '-32',
     31: '-96',
     32: '-77',
     33: '-25',
     34: '-55',
     35: '-39',
     36: '-77',
     37: '-66',
     38: '-41',
     39: '-29',
     40: '-81'},
 4: {1: '-24',
     2: '-58',
     3: '-22',
     4: 0,
     5: '-17',
     6: '-999',
     7: '-29',
     8: '-23',
     9: '-39',
     10: '-46',
     11: '-90',
     12: '-87',
     13: '-41',
     14: '-65',
     15: '-77',
     16: '-17',
     17: '-81',
     18: '-58',
     19: '-44',
     20: '-39',
     21: '-48',
     22: '-40',
     23: '-67',
     24: '-72',
     25: '-69',
     26: '-65',
     27: '-999',
     28: '-31',
     29: '-21',
     30: '-57',
     31: '-62',
     32: '-90',
     33: '-21',
     34: '-35',
     35: '-43',
     36: '-30',
     37: '-94',
     38: '-16',
     39: '-62',
     40: '-43'},
 5: {1: '-15',
     2: '-97',
     3: '-83',
     4: '-67',
     5: 0,
     6: '-43',
     7: '-90',
     8: '-16',
     9: '-46',
     10: '-38',
     11: '-67',
     12: '-22',
     13: '-21',
     14: '-39',
     15: '-89',
     16: '-33',
     17: '-63',
     18: '-29',
     19: '-97',
     20: '-19',
     21: '-29',
     22: '-999',
     23: '-96',
     24: '-94',
     25: '-65',
     26: '-43',
     27: '-33',
     28: '-77',
     29: '-16',
     30: '-71',
     31: '-75',
     32: '-52',
     33: '-67',
     34: '-45',
     35: '-92',
     36: '-20',
     37: '-91',
     38: '-79',
     39: '-92',
     40: '-28'},
 6: {1: '-36',
     2: '-999',
     3: '-41',
     4: '-999',
     5: '-41',
     6: 0,
     7: '-32',
     8: '-15',
     9: '-33',
     10: '-44',
     11: '-40',
     12: '-37',
     13: '-91',
     14: '-61',
     15: '-71',
     16: '-70',
     17: '-73',
     18: '-78',
     19: '-69',
     20: '-64',
     21: '-66',
     22: '-81',
     23: '-20',
     24: '-86',
     25: '-67',
     26: '-24',
     27: '-92',
     28: '-91',
     29: '-15',
     30: '-64',
     31: '-51',
     32: '-97',
     33: '-84',
     34: '-93',
     35: '-30',
     36: '-40',
     37: '-49',
     38: '-18',
     39: '-86',
     40: '-41'},
 7: {1: '-80',
     2: '-34',
     3: '-39',
     4: '-73',
     5: '-65',
     6: '-47',
     7: 0,
     8: '-54',
     9: '-50',
     10: '-85',
     11: '-79',
     12: '-27',
     13: '-57',
     14: '-86',
     15: '-29',
     16: '-93',
     17: '-68',
     18: '-87',
     19: '-43',
     20: '-41',
     21: '-25',
     22: '-67',
     23: '-15',
     24: '-80',
     25: '-74',
     26: '-99',
     27: '-73',
     28: '-60',
     29: '-95',
     30: '-33',
     31: '-68',
     32: '-94',
     33: '-16',
     34: '-25',
     35: '-74',
     36: '-22',
     37: '-70',
     38: '-83',
     39: '-31',
     40: '-61'},
 8: {1: '-37',
     2: '-24',
     3: '-999',
     4: '-51',
     5: '-94',
     6: '-90',
     7: '-58',
     8: 0,
     9: '-999',
     10: '-40',
     11: '-93',
     12: '-86',
     13: '-70',
     14: '-36',
     15: '-53',
     16: '-84',
     17: '-95',
     18: '-74',
     19: '-57',
     20: '-99',
     21: '-59',
     22: '-63',
     23: '-61',
     24: '-35',
     25: '-51',
     26: '-23',
     27: '-37',
     28: '-51',
     29: '-31',
     30: '-27',
     31: '-50',
     32: '-89',
     33: '-56',
     34: '-16',
     35: '-24',
     36: '-34',
     37: '-27',
     38: '-78',
     39: '-73',
     40: '-88'},
 9: {1: '-69',
     2: '-84',
     3: '-32',
     4: '-45',
     5: '-51',
     6: '-55',
     7: '-18',
     8: '-999',
     9: 0,
     10: '-26',
     11: '-98',
     12: '-999',
     13: '-35',
     14: '-39',
     15: '-28',
     16: '-93',
     17: '-35',
     18: '-86',
     19: '-83',
     20: '-40',
     21: '-98',
     22: '-97',
     23: '-82',
     24: '-41',
     25: '-33',
     26: '-81',
     27: '-62',
     28: '-45',
     29: '-52',
     30: '-82',
     31: '-24',
     32: '-71',
     33: '-24',
     34: '-32',
     35: '-27',
     36: '-80',
     37: '-45',
     38: '-62',
     39: '-57',
     40: '-51'},
 10: {1: '-100',
      2: '-18',
      3: '-26',
      4: '-46',
      5: '-79',
      6: '-57',
      7: '-50',
      8: '-57',
      9: '-20',
      10: 0,
      11: '-68',
      12: '-91',
      13: '-92',
      14: '-24',
      15: '-39',
      16: '-79',
      17: '-70',
      18: '-19',
      19: '-100',
      20: '-71',
      21: '-68',
      22: '-59',
      23: '-29',
      24: '-53',
      25: '-55',
      26: '-89',
      27: '-55',
      28: '-67',
      29: '-45',
      30: '-81',
      31: '-97',
      32: '-43',
      33: '-87',
      34: '-71',
      35: '-38',
      36: '-17',
      37: '-72',
      38: '-73',
      39: '-41',
      40: '-18'},
 11: {1: '-92',
      2: '-81',
      3: '-50',
      4: '-51',
      5: '-28',
      6: '-16',
      7: '-91',
      8: '-19',
      9: '-18',
      10: '-48',
      11: 0,
      12: '-32',
      13: '-18',
      14: '-51',
      15: '-53',
      16: '-64',
      17: '-57',
      18: '-85',
      19: '-37',
      20: '-53',
      21: '-86',
      22: '-90',
      23: '-54',
      24: '-36',
      25: '-71',
      26: '-49',
      27: '-65',
      28: '-59',
      29: '-17',
      30: '-17',
      31: '-96',
      32: '-85',
      33: '-89',
      34: '-71',
      35: '-999',
      36: '-82',
      37: '-76',
      38: '-25',
      39: '-94',
      40: '-60'},
 12: {1: '-55',
      2: '-36',
      3: '-52',
      4: '-15',
      5: '-83',
      6: '-67',
      7: '-77',
      8: '-97',
      9: '-999',
      10: '-72',
      11: '-29',
      12: 0,
      13: '-37',
      14: '-54',
      15: '-43',
      16: '-37',
      17: '-45',
      18: '-62',
      19: '-15',
      20: '-79',
      21: '-98',
      22: '-96',
      23: '-49',
      24: '-80',
      25: '-55',
      26: '-91',
      27: '-81',
      28: '-52',
      29: '-62',
      30: '-71',
      31: '-87',
      32: '-57',
      33: '-74',
      34: '-31',
      35: '-18',
      36: '-55',
      37: '-26',
      38: '-26',
      39: '-34',
      40: '-62'},
 13: {1: '-67',
      2: '-85',
      3: '-89',
      4: '-48',
      5: '-36',
      6: '-91',
      7: '-57',
      8: '-69',
      9: '-88',
      10: '-58',
      11: '-19',
      12: '-37',
      13: 0,
      14: '-28',
      15: '-999',
      16: '-63',
      17: '-59',
      18: '-40',
      19: '-49',
      20: '-78',
      21: '-50',
      22: '-25',
      23: '-87',
      24: '-68',
      25: '-94',
      26: '-24',
      27: '-65',
      28: '-60',
      29: '-60',
      30: '-999',
      31: '-54',
      32: '-48',
      33: '-98',
      34: '-68',
      35: '-71',
      36: '-81',
      37: '-17',
      38: '-25',
      39: '-56',
      40: '-64'},
 14: {1: '-43',
      2: '-96',
      3: '-37',
      4: '-65',
      5: '-39',
      6: '-87',
      7: '-54',
      8: '-88',
      9: '-59',
      10: '-22',
      11: '-51',
      12: '-85',
      13: '-95',
      14: 0,
      15: '-15',
      16: '-36',
      17: '-44',
      18: '-31',
      19: '-79',
      20: '-70',
      21: '-35',
      22: '-44',
      23: '-84',
      24: '-16',
      25: '-31',
      26: '-99',
      27: '-54',
      28: '-74',
      29: '-70',
      30: '-86',
      31: '-74',
      32: '-29',
      33: '-92',
      34: '-67',
      35: '-53',
      36: '-68',
      37: '-999',
      38: '-95',
      39: '-59',
      40: '-96'},
 15: {1: '-64',
      2: '-95',
      3: '-21',
      4: '-86',
      5: '-15',
      6: '-69',
      7: '-76',
      8: '-53',
      9: '-69',
      10: '-39',
      11: '-23',
      12: '-81',
      13: '-999',
      14: '-32',
      15: 0,
      16: '-90',
      17: '-80',
      18: '-58',
      19: '-78',
      20: '-80',
      21: '-36',
      22: '-97',
      23: '-57',
      24: '-61',
      25: '-56',
      26: '-36',
      27: '-27',
      28: '-53',
      29: '-29',
      30: '-28',
      31: '-999',
      32: '-35',
      33: '-73',
      34: '-58',
      35: '-46',
      36: '-32',
      37: '-91',
      38: '-75',
      39: '-31',
      40: '-54'},
 16: {1: '-86',
      2: '-89',
      3: '-58',
      4: '-79',
      5: '-33',
      6: '-82',
      7: '-85',
      8: '-25',
      9: '-64',
      10: '-79',
      11: '-64',
      12: '-37',
      13: '-34',
      14: '-59',
      15: '-67',
      16: 0,
      17: '-56',
      18: '-35',
      19: '-87',
      20: '-62',
      21: '-71',
      22: '-73',
      23: '-53',
      24: '-21',
      25: '-39',
      26: '-27',
      27: '-90',
      28: '-59',
      29: '-35',
      30: '-77',
      31: '-28',
      32: '-95',
      33: '-30',
      34: '-99',
      35: '-66',
      36: '-69',
      37: '-90',
      38: '-19',
      39: '-22',
      40: '-73'},
 17: {1: '-70',
      2: '-37',
      3: '-27',
      4: '-81',
      5: '-74',
      6: '-23',
      7: '-56',
      8: '-63',
      9: '-19',
      10: '-32',
      11: '-56',
      12: '-25',
      13: '-81',
      14: '-95',
      15: '-78',
      16: '-77',
      17: 0,
      18: '-79',
      19: '-61',
      20: '-81',
      21: '-77',
      22: '-55',
      23: '-92',
      24: '-51',
      25: '-82',
      26: '-68',
      27: '-57',
      28: '-41',
      29: '-71',
      30: '-64',
      31: '-75',
      32: '-56',
      33: '-42',
      34: '-93',
      35: '-79',
      36: '-46',
      37: '-70',
      38: '-70',
      39: '-60',
      40: '-51'},
 18: {1: '-84',
      2: '-59',
      3: '-83',
      4: '-56',
      5: '-63',
      6: '-78',
      7: '-76',
      8: '-85',
      9: '-86',
      10: '-88',
      11: '-53',
      12: '-33',
      13: '-40',
      14: '-45',
      15: '-36',
      16: '-86',
      17: '-21',
      18: 0,
      19: '-40',
      20: '-90',
      21: '-50',
      22: '-35',
      23: '-71',
      24: '-42',
      25: '-45',
      26: '-67',
      27: '-39',
      28: '-90',
      29: '-86',
      30: '-999',
      31: '-57',
      32: '-42',
      33: '-65',
      34: '-66',
      35: '-30',
      36: '-59',
      37: '-67',
      38: '-61',
      39: '-80',
      40: '-48'},
 19: {1: '-62',
      2: '-82',
      3: '-62',
      4: '-44',
      5: '-68',
      6: '-38',
      7: '-43',
      8: '-57',
      9: '-83',
      10: '-85',
      11: '-48',
      12: '-96',
      13: '-49',
      14: '-38',
      15: '-37',
      16: '-67',
      17: '-61',
      18: '-40',
      19: 0,
      20: '-77',
      21: '-34',
      22: '-52',
      23: '-51',
      24: '-35',
      25: '-39',
      26: '-82',
      27: '-42',
      28: '-50',
      29: '-69',
      30: '-24',
      31: '-30',
      32: '-75',
      33: '-48',
      34: '-87',
      35: '-44',
      36: '-68',
      37: '-16',
      38: '-39',
      39: '-54',
      40: '-92'},
 20: {1: '-99',
      2: '-79',
      3: '-63',
      4: '-17',
      5: '-69',
      6: '-64',
      7: '-79',
      8: '-22',
      9: '-40',
      10: '-71',
      11: '-78',
      12: '-79',
      13: '-78',
      14: '-70',
      15: '-53',
      16: '-62',
      17: '-38',
      18: '-90',
      19: '-47',
      20: 0,
      21: '-23',
      22: '-65',
      23: '-65',
      24: '-82',
      25: '-25',
      26: '-999',
      27: '-77',
      28: '-48',
      29: '-74',
      30: '-31',
      31: '-36',
      32: '-77',
      33: '-94',
      34: '-91',
      35: '-22',
      36: '-66',
      37: '-49',
      38: '-39',
      39: '-88',
      40: '-26'},
 21: {1: '-52',
      2: '-83',
      3: '-59',
      4: '-56',
      5: '-29',
      6: '-29',
      7: '-81',
      8: '-87',
      9: '-51',
      10: '-61',
      11: '-72',
      12: '-75',
      13: '-95',
      14: '-83',
      15: '-69',
      16: '-62',
      17: '-74',
      18: '-36',
      19: '-28',
      20: '-18',
      21: 0,
      22: '-22',
      23: '-39',
      24: '-39',
      25: '-82',
      26: '-69',
      27: '-96',
      28: '-69',
      29: '-40',
      30: '-63',
      31: '-72',
      32: '-32',
      33: '-47',
      34: '-62',
      35: '-58',
      36: '-62',
      37: '-15',
      38: '-89',
      39: '-79',
      40: '-94'},
 22: {1: '-16',
      2: '-73',
      3: '-75',
      4: '-65',
      5: '-999',
      6: '-81',
      7: '-34',
      8: '-63',
      9: '-68',
      10: '-59',
      11: '-80',
      12: '-72',
      13: '-45',
      14: '-44',
      15: '-97',
      16: '-73',
      17: '-55',
      18: '-89',
      19: '-52',
      20: '-90',
      21: '-15',
      22: 0,
      23: '-94',
      24: '-60',
      25: '-31',
      26: '-59',
      27: '-68',
      28: '-67',
      29: '-16',
      30: '-23',
      31: '-20',
      32: '-64',
      33: '-96',
      34: '-76',
      35: '-32',
      36: '-62',
      37: '-62',
      38: '-28',
      39: '-36',
      40: '-89'},
 23: {1: '-33',
      2: '-41',
      3: '-43',
      4: '-96',
      5: '-39',
      6: '-84',
      7: '-15',
      8: '-78',
      9: '-48',
      10: '-40',
      11: '-87',
      12: '-41',
      13: '-87',
      14: '-95',
      15: '-35',
      16: '-96',
      17: '-92',
      18: '-66',
      19: '-23',
      20: '-21',
      21: '-39',
      22: '-25',
      23: 0,
      24: '-81',
      25: '-38',
      26: '-98',
      27: '-97',
      28: '-95',
      29: '-87',
      30: '-72',
      31: '-51',
      32: '-74',
      33: '-28',
      34: '-55',
      35: '-64',
      36: '-60',
      37: '-15',
      38: '-78',
      39: '-55',
      40: '-50'},
 24: {1: '-88',
      2: '-29',
      3: '-90',
      4: '-17',
      5: '-36',
      6: '-71',
      7: '-30',
      8: '-35',
      9: '-26',
      10: '-94',
      11: '-36',
      12: '-46',
      13: '-78',
      14: '-47',
      15: '-85',
      16: '-21',
      17: '-51',
      18: '-34',
      19: '-61',
      20: '-43',
      21: '-56',
      22: '-60',
      23: '-81',
      24: 0,
      25: '-98',
      26: '-72',
      27: '-68',
      28: '-50',
      29: '-54',
      30: '-34',
      31: '-68',
      32: '-69',
      33: '-51',
      34: '-40',
      35: '-19',
      36: '-47',
      37: '-15',
      38: '-43',
      39: '-92',
      40: '-61'},
 25: {1: '-99',
      2: '-67',
      3: '-61',
      4: '-29',
      5: '-65',
      6: '-68',
      7: '-74',
      8: '-17',
      9: '-78',
      10: '-96',
      11: '-15',
      12: '-57',
      13: '-44',
      14: '-31',
      15: '-77',
      16: '-39',
      17: '-85',
      18: '-64',
      19: '-60',
      20: '-38',
      21: '-82',
      22: '-31',
      23: '-38',
      24: '-90',
      25: 0,
      26: '-19',
      27: '-35',
      28: '-55',
      29: '-70',
      30: '-94',
      31: '-71',
      32: '-53',
      33: '-96',
      34: '-76',
      35: '-76',
      36: '-61',
      37: '-36',
      38: '-100',
      39: '-92',
      40: '-89'},
 26: {1: '-43',
      2: '-25',
      3: '-89',
      4: '-65',
      5: '-16',
      6: '-91',
      7: '-57',
      8: '-23',
      9: '-81',
      10: '-23',
      11: '-25',
      12: '-85',
      13: '-41',
      14: '-19',
      15: '-36',
      16: '-97',
      17: '-86',
      18: '-67',
      19: '-82',
      20: '-999',
      21: '-69',
      22: '-54',
      23: '-98',
      24: '-86',
      25: '-19',
      26: 0,
      27: '-32',
      28: '-87',
      29: '-64',
      30: '-69',
      31: '-89',
      32: '-89',
      33: '-54',
      34: '-47',
      35: '-46',
      36: '-69',
      37: '-19',
      38: '-61',
      39: '-45',
      40: '-93'},
 27: {1: '-999',
      2: '-62',
      3: '-30',
      4: '-999',
      5: '-35',
      6: '-58',
      7: '-32',
      8: '-69',
      9: '-62',
      10: '-84',
      11: '-87',
      12: '-93',
      13: '-64',
      14: '-20',
      15: '-45',
      16: '-30',
      17: '-25',
      18: '-37',
      19: '-72',
      20: '-33',
      21: '-96',
      22: '-68',
      23: '-21',
      24: '-68',
      25: '-35',
      26: '-42',
      27: 0,
      28: '-37',
      29: '-50',
      30: '-33',
      31: '-89',
      32: '-21',
      33: '-81',
      34: '-78',
      35: '-76',
      36: '-88',
      37: '-999',
      38: '-74',
      39: '-83',
      40: '-42'},
 28: {1: '-61',
      2: '-65',
      3: '-86',
      4: '-66',
      5: '-53',
      6: '-91',
      7: '-92',
      8: '-59',
      9: '-82',
      10: '-58',
      11: '-59',
      12: '-76',
      13: '-26',
      14: '-82',
      15: '-53',
      16: '-38',
      17: '-93',
      18: '-31',
      19: '-83',
      20: '-48',
      21: '-55',
      22: '-92',
      23: '-73',
      24: '-24',
      25: '-55',
      26: '-25',
      27: '-69',
      28: 0,
      29: '-60',
      30: '-70',
      31: '-41',
      32: '-23',
      33: '-99',
      34: '-92',
      35: '-88',
      36: '-66',
      37: '-31',
      38: '-26',
      39: '-64',
      40: '-61'},
 29: {1: '-76',
      2: '-31',
      3: '-76',
      4: '-74',
      5: '-41',
      6: '-40',
      7: '-30',
      8: '-31',
      9: '-45',
      10: '-96',
      11: '-16',
      12: '-21',
      13: '-82',
      14: '-42',
      15: '-29',
      16: '-85',
      17: '-79',
      18: '-86',
      19: '-69',
      20: '-44',
      21: '-40',
      22: '-53',
      23: '-43',
      24: '-36',
      25: '-70',
      26: '-29',
      27: '-39',
      28: '-43',
      29: 0,
      30: '-27',
      31: '-30',
      32: '-77',
      33: '-55',
      34: '-29',
      35: '-58',
      36: '-79',
      37: '-19',
      38: '-57',
      39: '-55',
      40: '-15'},
 30: {1: '-100',
      2: '-49',
      3: '-32',
      4: '-57',
      5: '-57',
      6: '-15',
      7: '-33',
      8: '-27',
      9: '-82',
      10: '-94',
      11: '-17',
      12: '-71',
      13: '-999',
      14: '-74',
      15: '-28',
      16: '-83',
      17: '-27',
      18: '-999',
      19: '-24',
      20: '-68',
      21: '-63',
      22: '-33',
      23: '-64',
      24: '-53',
      25: '-81',
      26: '-55',
      27: '-33',
      28: '-33',
      29: '-27',
      30: 0,
      31: '-19',
      32: '-72',
      33: '-95',
      34: '-19',
      35: '-54',
      36: '-23',
      37: '-56',
      38: '-94',
      39: '-45',
      40: '-20'},
 31: {1: '-63',
      2: '-87',
      3: '-26',
      4: '-62',
      5: '-75',
      6: '-22',
      7: '-53',
      8: '-26',
      9: '-43',
      10: '-43',
      11: '-81',
      12: '-83',
      13: '-54',
      14: '-91',
      15: '-999',
      16: '-76',
      17: '-63',
      18: '-54',
      19: '-30',
      20: '-36',
      21: '-38',
      22: '-100',
      23: '-61',
      24: '-88',
      25: '-43',
      26: '-28',
      27: '-89',
      28: '-62',
      29: '-78',
      30: '-19',
      31: 0,
      32: '-50',
      33: '-49',
      34: '-61',
      35: '-34',
      36: '-76',
      37: '-41',
      38: '-71',
      39: '-84',
      40: '-70'},
 32: {1: '-36',
      2: '-87',
      3: '-26',
      4: '-93',
      5: '-75',
      6: '-97',
      7: '-68',
      8: '-81',
      9: '-65',
      10: '-43',
      11: '-19',
      12: '-74',
      13: '-67',
      14: '-52',
      15: '-50',
      16: '-69',
      17: '-56',
      18: '-82',
      19: '-66',
      20: '-77',
      21: '-19',
      22: '-94',
      23: '-74',
      24: '-89',
      25: '-53',
      26: '-82',
      27: '-21',
      28: '-49',
      29: '-69',
      30: '-72',
      31: '-45',
      32: 0,
      33: '-91',
      34: '-57',
      35: '-92',
      36: '-23',
      37: '-84',
      38: '-28',
      39: '-61',
      40: '-60'},
 33: {1: '-38',
      2: '-80',
      3: '-25',
      4: '-48',
      5: '-67',
      6: '-59',
      7: '-16',
      8: '-56',
      9: '-29',
      10: '-87',
      11: '-29',
      12: '-78',
      13: '-82',
      14: '-92',
      15: '-55',
      16: '-30',
      17: '-40',
      18: '-83',
      19: '-72',
      20: '-18',
      21: '-95',
      22: '-80',
      23: '-50',
      24: '-51',
      25: '-96',
      26: '-58',
      27: '-81',
      28: '-54',
      29: '-55',
      30: '-80',
      31: '-25',
      32: '-19',
      33: 0,
      34: '-68',
      35: '-15',
      36: '-15',
      37: '-25',
      38: '-39',
      39: '-34',
      40: '-35'},
 34: {1: '-23',
      2: '-90',
      3: '-55',
      4: '-35',
      5: '-25',
      6: '-61',
      7: '-25',
      8: '-15',
      9: '-76',
      10: '-77',
      11: '-71',
      12: '-31',
      13: '-21',
      14: '-27',
      15: '-49',
      16: '-28',
      17: '-55',
      18: '-89',
      19: '-97',
      20: '-91',
      21: '-93',
      22: '-76',
      23: '-55',
      24: '-32',
      25: '-76',
      26: '-47',
      27: '-61',
      28: '-50',
      29: '-39',
      30: '-59',
      31: '-95',
      32: '-57',
      33: '-77',
      34: 0,
      35: '-58',
      36: '-68',
      37: '-87',
      38: '-69',
      39: '-47',
      40: '-32'},
 35: {1: '-33',
      2: '-99',
      3: '-87',
      4: '-27',
      5: '-92',
      6: '-40',
      7: '-25',
      8: '-24',
      9: '-27',
      10: '-66',
      11: '-999',
      12: '-83',
      13: '-20',
      14: '-86',
      15: '-46',
      16: '-37',
      17: '-79',
      18: '-30',
      19: '-43',
      20: '-62',
      21: '-58',
      22: '-86',
      23: '-64',
      24: '-41',
      25: '-70',
      26: '-46',
      27: '-76',
      28: '-28',
      29: '-45',
      30: '-54',
      31: '-34',
      32: '-80',
      33: '-65',
      34: '-26',
      35: 0,
      36: '-94',
      37: '-49',
      38: '-71',
      39: '-44',
      40: '-66'},
 36: {1: '-56',
      2: '-30',
      3: '-77',
      4: '-30',
      5: '-15',
      6: '-40',
      7: '-76',
      8: '-34',
      9: '-23',
      10: '-72',
      11: '-82',
      12: '-44',
      13: '-95',
      14: '-95',
      15: '-56',
      16: '-69',
      17: '-46',
      18: '-59',
      19: '-59',
      20: '-44',
      21: '-69',
      22: '-35',
      23: '-60',
      24: '-63',
      25: '-33',
      26: '-16',
      27: '-88',
      28: '-66',
      29: '-50',
      30: '-39',
      31: '-18',
      32: '-23',
      33: '-15',
      34: '-94',
      35: '-94',
      36: 0,
      37: '-97',
      38: '-80',
      39: '-51',
      40: '-44'},
 37: {1: '-56',
      2: '-100',
      3: '-29',
      4: '-94',
      5: '-27',
      6: '-92',
      7: '-39',
      8: '-56',
      9: '-45',
      10: '-34',
      11: '-76',
      12: '-26',
      13: '-70',
      14: '-999',
      15: '-86',
      16: '-84',
      17: '-72',
      18: '-15',
      19: '-34',
      20: '-15',
      21: '-61',
      22: '-93',
      23: '-15',
      24: '-20',
      25: '-94',
      26: '-50',
      27: '-999',
      28: '-81',
      29: '-19',
      30: '-56',
      31: '-68',
      32: '-91',
      33: '-45',
      34: '-85',
      35: '-24',
      36: '-18',
      37: 0,
      38: '-96',
      39: '-26',
      40: '-55'},
 38: {1: '-999',
      2: '-96',
      3: '-41',
      4: '-16',
      5: '-79',
      6: '-18',
      7: '-91',
      8: '-16',
      9: '-62',
      10: '-81',
      11: '-62',
      12: '-49',
      13: '-25',
      14: '-95',
      15: '-72',
      16: '-62',
      17: '-70',
      18: '-43',
      19: '-28',
      20: '-39',
      21: '-87',
      22: '-62',
      23: '-37',
      24: '-43',
      25: '-100',
      26: '-62',
      27: '-44',
      28: '-28',
      29: '-98',
      30: '-94',
      31: '-71',
      32: '-54',
      33: '-78',
      34: '-69',
      35: '-74',
      36: '-80',
      37: '-27',
      38: 0,
      39: '-64',
      40: '-18'},
 39: {1: '-49',
      2: '-40',
      3: '-75',
      4: '-62',
      5: '-69',
      6: '-83',
      7: '-15',
      8: '-88',
      9: '-36',
      10: '-71',
      11: '-94',
      12: '-34',
      13: '-15',
      14: '-85',
      15: '-53',
      16: '-38',
      17: '-60',
      18: '-32',
      19: '-54',
      20: '-44',
      21: '-79',
      22: '-50',
      23: '-55',
      24: '-92',
      25: '-86',
      26: '-32',
      27: '-83',
      28: '-64',
      29: '-59',
      30: '-45',
      31: '-34',
      32: '-21',
      33: '-34',
      34: '-47',
      35: '-62',
      36: '-48',
      37: '-26',
      38: '-27',
      39: 0,
      40: '-49'},
 40: {1: '-29',
      2: '-78',
      3: '-15',
      4: '-64',
      5: '-53',
      6: '-41',
      7: '-86',
      8: '-66',
      9: '-31',
      10: '-31',
      11: '-27',
      12: '-68',
      13: '-24',
      14: '-96',
      15: '-91',
      16: '-77',
      17: '-18',
      18: '-32',
      19: '-17',
      20: '-50',
      21: '-60',
      22: '-17',
      23: '-50',
      24: '-65',
      25: '-52',
      26: '-86',
      27: '-94',
      28: '-59',
      29: '-65',
      30: '-56',
      31: '-70',
      32: '-67',
      33: '-90',
      34: '-40',
      35: '-65',
      36: '-47',
      37: '-55',
      38: '-83',
      39: '-49',
      40: 0}}
{1: {1: 0.0,
     2: 57.48912940721924,
     3: 44.10215414239989,
     4: 24.0,
     5: 15.0,
     6: 56.92099788303083,
     7: 63.245553203367585,
     8: 37.0,
     9: 83.59724875855665,
     10: 75.15317691222374,
     11: 94.53306299914333,
     12: 61.29437168288782,
     13: 67.0,
     14: 43.0,
     15: 64.0,
     16: 93.26306878931231,
     17: 70.0,
     18: 70.61161377563892,
     19: 62.0,
     20: 95.56411460375699,
     21: 78.44743462982075,
     22: 16.0,
     23: 33.0,
     24: 82.68313008105099,
     25: 71.02816342831905,
     26: 32.69556544854363,
     27: 100,
     28: 81.62413858657254,
     29: 76.0,
     30: 82.82813531644908,
     31: 73.68174807915459,
     32: 28.78367592924851,
     33: 38.0,
     34: 26.1725046566048,
     35: 33.50373113550191,
     36: 53.08483775994799,
     37: 56.0,
     38: 100,
     39: 49.0,
     40: 40.87175063537161},
 2: {1: 57.48912940721924,
     2: 0.0,
     3: 58.0,
     4: 67.04103221162394,
     5: 97.0,
     6: 100,
     7: 38.2099463490856,
     8: 31.184932259025352,
     9: 68.41052550594829,
     10: 67.67569726275453,
     11: 86.67467911679859,
     12: 35.503520952153465,
     13: 73.97972695272672,
     14: 96.0,
     15: 97.5320460156558,
     16: 89.0,
     17: 31.976553910638962,
     18: 59.0,
     19: 71.43178564196754,
     20: 56.859475903318,
     21: 88.14193099768123,
     22: 72.50172411743047,
     23: 37.662979170532964,
     24: 32.14031735997639,
     25: 62.20128616033595,
     26: 25.0,
     27: 54.589376255824725,
     28: 65.0,
     29: 52.8441103624614,
     30: 49.0,
     31: 87.0,
     32: 65.07303589045158,
     33: 80.0,
     34: 90.0,
     35: 72.37748268626092,
     36: 44.9221548904324,
     37: 74.68600939935136,
     38: 69.33974329343886,
     39: 70.28869041318099,
     40: 84.2140130857092},
 3: {1: 44.10215414239989,
     2: 58.0,
     3: 0.0,
     4: 23.021728866442675,
     5: 61.50203248673982,
     6: 41.0,
     7: 39.0,
     8: 100,
     9: 46.84015371452148,
     10: 56.79788728465171,
     11: 50.0,
     12: 72.88689868556625,
     13: 65.56294685262401,
     14: 28.792360097775937,
     15: 21.0,
     16: 49.03060268852505,
     17: 67.79749257900325,
     18: 83.0,
     19: 57.67581815631227,
     20: 61.032778078668514,
     21: 66.9215959164155,
     22: 58.826014653382735,
     23: 43.0,
     24: 65.68485365744526,
     25: 49.381170500505554,
     26: 64.82669203345178,
     27: 31.535694062442957,
     28: 78.40918313565064,
     29: 77.00649323271382,
     30: 32.0,
     31: 70.32780389006896,
     32: 57.467382052778426,
     33: 25.0,
     34: 55.0,
     35: 67.4166151627327,
     36: 77.0,
     37: 50.97548430373173,
     38: 41.0,
     39: 56.859475903318,
     40: 58.249463516842795},
 4: {1: 24.0,
     2: 67.04103221162394,
     3: 23.021728866442675,
     4: 0.0,
     5: 48.877397639399746,
     6: 100,
     7: 55.54277630799526,
     8: 39.56008088970496,
     9: 42.1070065428546,
     10: 46.0,
     11: 73.14711204141965,
     12: 62.42595614005443,
     13: 44.637428241331286,
     14: 65.0,
     15: 81.62413858657254,
     16: 57.14017850864661,
     17: 81.0,
     18: 57.0087712549569,
     19: 44.0,
     20: 30.083217912982647,
     21: 52.15361924162119,
     22: 53.96758286230726,
     23: 82.77982846080317,
     24: 52.31156659860226,
     25: 52.92447448959697,
     26: 65.0,
     27: 100,
     28: 51.56064390598706,
     29: 54.39209501388966,
     30: 57.0,
     31: 62.0,
     32: 91.51229425601787,
     33: 37.04726710568541,
     34: 35.0,
     35: 35.90264614203248,
     36: 30.0,
     37: 94.0,
     38: 16.0,
     39: 62.0,
     40: 54.52063829413592},
 5: {1: 15.0,
     2: 97.0,
     3: 61.50203248673982,
     4: 48.877397639399746,
     5: 0.0,
     6: 42.01190307520001,
     7: 78.50159234053791,
     8: 67.42403132415029,
     9: 48.56439024635232,
     10: 61.98790204547981,
     11: 51.34685968976097,
     12: 60.71655457945551,
     13: 29.47032405658275,
     14: 39.0,
     15: 63.8200595424354,
     16: 33.0,
     17: 68.72044819411468,
     18: 49.040799340956916,
     19: 83.7645509747411,
     20: 50.60632371551998,
     21: 29.0,
     22: 100,
     23: 73.27004845091888,
     24: 71.17583859709698,
     25: 65.0,
     26: 32.44225639501667,
     27: 34.0147027033899,
     28: 66.09841147864296,
     29: 31.12073263919087,
     30: 64.38167441127949,
     31: 75.0,
     32: 64.53293732660865,
     33: 67.0,
     34: 36.40054944640259,
     35: 92.0,
     36: 17.67766952966369,
     37: 67.11929677819934,
     38: 79.0,
     39: 81.31727983645297,
     40: 42.38513890504548},
 6: {1: 56.92099788303083,
     2: 100,
     3: 41.0,
     4: 100,
     5: 42.01190307520001,
     6: 0.0,
     7: 40.20572098594925,
     8: 64.5174395028197,
     9: 45.35416188179427,
     10: 50.91659847240387,
     11: 30.463092423455635,
     12: 54.120236510939236,
     13: 91.0,
     14: 75.13321502504735,
     15: 70.00714249274856,
     16: 76.23647421018367,
     17: 54.120236510939236,
     18: 78.0,
     19: 55.70008976653449,
     20: 64.0,
     21: 50.97548430373173,
     22: 81.0,
     23: 61.05735008989499,
     24: 78.85746635544412,
     25: 67.50185182644992,
     26: 66.54697588921678,
     27: 76.90253571892151,
     28: 91.0,
     29: 30.20761493398643,
     30: 46.4811789867684,
     31: 39.274673773310965,
     32: 97.0,
     33: 72.58443359288546,
     34: 78.64477096412705,
     35: 35.35533905932738,
     36: 40.0,
     37: 73.70549504616328,
     38: 18.0,
     39: 84.5133125608031,
     40: 41.0},
 7: {1: 63.245553203367585,
     2: 38.2099463490856,
     3: 39.0,
     4: 55.54277630799526,
     5: 78.50159234053791,
     6: 40.20572098594925,
     7: 0.0,
     8: 56.0357029044876,
     9: 37.57658845611187,
     10: 69.73162840490677,
     11: 85.21150157109074,
     12: 57.697486947006624,
     13: 57.0,
     14: 71.80529228406496,
     15: 57.51956188984753,
     16: 89.08984229416954,
     17: 62.289646009589745,
     18: 81.68537200747757,
     19: 43.0,
     20: 62.93647591023825,
     21: 59.941638282582836,
     22: 53.12720583655798,
     23: 15.0,
     24: 60.41522986797286,
     25: 74.0,
     26: 80.77747210701756,
     27: 56.360447123847415,
     28: 77.6659513557904,
     29: 70.44501401802685,
     30: 33.0,
     31: 60.96310359553556,
     32: 82.03657720797473,
     33: 16.0,
     34: 25.0,
     35: 55.231331687729565,
     36: 55.94640292279746,
     37: 56.66127425323225,
     38: 87.09190547921202,
     39: 24.351591323771842,
     40: 74.55534856735632},
 8: {1: 37.0,
     2: 31.184932259025352,
     3: 100,
     4: 39.56008088970496,
     5: 67.42403132415029,
     6: 64.5174395028197,
     7: 56.0357029044876,
     8: 0.0,
     9: 100,
     10: 49.23921201644072,
     11: 67.11929677819934,
     12: 91.6651515026294,
     13: 69.50179853787958,
     14: 67.23094525588644,
     15: 53.0,
     16: 61.97176776565277,
     17: 80.60397012554654,
     18: 79.69002446981679,
     19: 57.0,
     20: 71.71122645722913,
     21: 74.33034373659252,
     22: 63.0,
     23: 70.01785486574121,
     24: 35.0,
     25: 38.01315561749642,
     26: 23.0,
     27: 55.362442142665635,
     28: 55.14526271584895,
     29: 31.0,
     30: 27.0,
     31: 39.84971769034255,
     32: 85.09406559801923,
     33: 56.0,
     34: 15.508062419270823,
     35: 24.0,
     36: 34.0,
     37: 43.96020928066653,
     38: 56.302753041036986,
     39: 80.84862398334309,
     40: 77.78174593052023},
 9: {1: 83.59724875855665,
     2: 68.41052550594829,
     3: 46.84015371452148,
     4: 42.1070065428546,
     5: 48.56439024635232,
     6: 45.35416188179427,
     7: 37.57658845611187,
     8: 100,
     9: 0.0,
     10: 23.194827009486403,
     11: 70.45565981523414,
     12: 100,
     13: 66.9664094901317,
     14: 50.00999900019995,
     15: 52.65453446760307,
     16: 79.82793997091494,
     17: 28.160255680657446,
     18: 86.0,
     19: 83.0,
     20: 40.0,
     21: 78.1184997295775,
     22: 83.7645509747411,
     23: 67.1863081289633,
     24: 34.32928778754374,
     25: 59.88739433303139,
     26: 81.0,
     27: 62.0,
     28: 66.14000302388865,
     29: 48.62612466565683,
     30: 82.0,
     31: 34.8209706929603,
     32: 68.06614430096654,
     33: 26.61766330841233,
     34: 58.309518948453004,
     35: 27.0,
     36: 58.86000339789321,
     37: 45.0,
     38: 62.0,
     39: 47.67074574621211,
     40: 42.20189569201838},
 10: {1: 75.15317691222374,
      2: 67.67569726275453,
      3: 56.79788728465171,
      4: 46.0,
      5: 61.98790204547981,
      6: 50.91659847240387,
      7: 69.73162840490677,
      8: 49.23921201644072,
      9: 23.194827009486403,
      10: 0.0,
      11: 58.855755878248644,
      12: 82.05181289892381,
      13: 76.90253571892151,
      14: 23.021728866442675,
      15: 39.0,
      16: 79.0,
      17: 54.42425929675111,
      18: 63.65924913160695,
      19: 92.80355596635293,
      20: 71.0,
      21: 64.59489143887464,
      22: 59.0,
      23: 34.935655139126844,
      24: 76.3053078101386,
      25: 78.23362448461658,
      26: 65.0,
      27: 70.9964787859229,
      28: 62.66179059043876,
      29: 74.9699939975988,
      30: 87.7410964143941,
      31: 75.02666192761077,
      32: 43.0,
      33: 87.0,
      34: 74.06078584514209,
      35: 53.85164807134504,
      36: 52.31156659860226,
      37: 56.302753041036986,
      38: 77.10382610480494,
      39: 57.97413216254298,
      40: 25.347583711273153},
 11: {1: 94.53306299914333,
      2: 86.67467911679859,
      3: 50.0,
      4: 73.14711204141965,
      5: 51.34685968976097,
      6: 30.463092423455635,
      7: 85.21150157109074,
      8: 67.11929677819934,
      9: 70.45565981523414,
      10: 58.855755878248644,
      11: 0.0,
      12: 30.53686296920494,
      13: 18.506755523321747,
      14: 51.0,
      15: 40.85339643163099,
      16: 64.0,
      17: 56.50221234606659,
      18: 70.83078426785913,
      19: 42.85440467443224,
      20: 66.68208155119335,
      21: 79.30952023559341,
      22: 85.14693182963201,
      23: 72.40511031688303,
      24: 36.0,
      25: 51.31276644267,
      26: 38.897300677553446,
      27: 76.79192665899195,
      28: 59.0,
      29: 16.507574019219177,
      30: 17.0,
      31: 88.81722805852478,
      32: 61.587336360651285,
      33: 66.18912297349165,
      34: 71.0,
      35: 100,
      36: 82.0,
      37: 76.0,
      38: 47.270498199193966,
      39: 94.0,
      40: 46.52418725781247},
 12: {1: 61.29437168288782,
      2: 35.503520952153465,
      3: 72.88689868556625,
      4: 62.42595614005443,
      5: 60.71655457945551,
      6: 54.120236510939236,
      7: 57.697486947006624,
      8: 91.6651515026294,
      9: 100,
      10: 82.05181289892381,
      11: 30.53686296920494,
      12: 0.0,
      13: 37.0,
      14: 71.207443431147,
      15: 64.8459713474939,
      16: 37.0,
      17: 36.40054944640259,
      18: 49.663870167356066,
      19: 68.70589494359272,
      20: 79.0,
      21: 87.26110244547682,
      22: 84.8528137423857,
      23: 45.17742799230607,
      24: 65.25335240430181,
      25: 56.00892785976178,
      26: 88.05112151472007,
      27: 87.20665112249179,
      28: 65.11528238439882,
      29: 46.28714724413247,
      30: 71.0,
      31: 85.0235261559999,
      32: 66.04922406811453,
      33: 76.02631123499285,
      34: 31.0,
      35: 60.054142238483436,
      36: 49.80461825975579,
      37: 26.0,
      38: 39.223717314910374,
      39: 34.0,
      40: 65.06919393998976},
 13: {1: 67.0,
      2: 73.97972695272672,
      3: 65.56294685262401,
      4: 44.637428241331286,
      5: 29.47032405658275,
      6: 91.0,
      7: 57.0,
      8: 69.50179853787958,
      9: 66.9664094901317,
      10: 76.90253571892151,
      11: 18.506755523321747,
      12: 37.0,
      13: 0.0,
      14: 70.03213548079196,
      15: 100,
      16: 50.62114182829147,
      17: 70.8590149522275,
      18: 40.0,
      19: 49.0,
      20: 78.0,
      21: 75.91113225344488,
      22: 36.40054944640259,
      23: 87.0,
      24: 73.17103251970687,
      25: 73.38937252763509,
      26: 33.59315406448165,
      27: 64.50193795538239,
      28: 46.238512086787566,
      29: 71.84705978674423,
      30: 100,
      31: 54.0,
      32: 58.27949896833363,
      33: 90.35485598461214,
      34: 50.32395056034453,
      35: 52.15841255253078,
      36: 88.2779700718135,
      37: 50.936234646860186,
      38: 25.0,
      39: 40.99390198553927,
      40: 48.33218389437829},
 14: {1: 43.0,
      2: 96.0,
      3: 28.792360097775937,
      4: 65.0,
      5: 39.0,
      6: 75.13321502504735,
      7: 71.80529228406496,
      8: 67.23094525588644,
      9: 50.00999900019995,
      10: 23.021728866442675,
      11: 51.0,
      12: 71.207443431147,
      13: 70.03213548079196,
      14: 0.0,
      15: 24.9899979991996,
      16: 48.87228253314961,
      17: 74.03039916142558,
      18: 38.63935817272331,
      19: 61.98790204547981,
      20: 70.0,
      21: 63.694583757176716,
      22: 44.0,
      23: 89.6688351658479,
      24: 35.106979363083916,
      25: 31.0,
      26: 71.28113354878694,
      27: 40.718546143004666,
      28: 78.10249675906654,
      29: 57.723478758647246,
      30: 80.22468448052632,
      31: 82.936722867497,
      32: 42.101068870041765,
      33: 92.0,
      34: 51.07837115648854,
      35: 71.43178564196754,
      36: 82.61053201620238,
      37: 100,
      38: 95.0,
      39: 73.16419889536138,
      40: 96.0},
 15: {1: 64.0,
      2: 97.5320460156558,
      3: 21.0,
      4: 81.62413858657254,
      5: 63.8200595424354,
      6: 70.00714249274856,
      7: 57.51956188984753,
      8: 53.0,
      9: 52.65453446760307,
      10: 39.0,
      11: 40.85339643163099,
      12: 64.8459713474939,
      13: 100,
      14: 24.9899979991996,
      15: 0.0,
      16: 79.33788502348673,
      17: 79.00632886041473,
      18: 48.27007354458868,
      19: 61.04506532063014,
      20: 67.85646616203941,
      21: 55.03180898353242,
      22: 97.0,
      23: 47.29693436154187,
      24: 73.97972695272672,
      25: 67.3238442158497,
      26: 36.0,
      27: 37.107950630558946,
      28: 53.0,
      29: 29.0,
      30: 28.0,
      31: 100,
      32: 43.15669125408017,
      33: 64.6297145282261,
      34: 53.688918782184466,
      35: 46.0,
      36: 45.60701700396552,
      37: 88.5353036929337,
      38: 73.51530452905708,
      39: 43.41658669218482,
      40: 74.82312476768128},
 16: {1: 93.26306878931231,
      2: 89.0,
      3: 49.03060268852505,
      4: 57.14017850864661,
      5: 33.0,
      6: 76.23647421018367,
      7: 89.08984229416954,
      8: 61.97176776565277,
      9: 79.82793997091494,
      10: 79.0,
      11: 64.0,
      12: 37.0,
      13: 50.62114182829147,
      14: 48.87228253314961,
      15: 79.33788502348673,
      16: 0.0,
      17: 67.3238442158497,
      18: 65.65439817712138,
      19: 77.64663547121665,
      20: 62.0,
      21: 66.65208173793224,
      22: 73.0,
      23: 77.54031209635411,
      24: 21.0,
      25: 39.0,
      26: 71.19691004531025,
      27: 67.08203932499369,
      28: 49.62358310319802,
      29: 65.0,
      30: 80.05623023850174,
      31: 57.271284253105414,
      32: 83.02409288875127,
      33: 30.0,
      34: 72.74957044546724,
      35: 53.50233639758174,
      36: 69.0,
      37: 87.05170877128145,
      38: 45.8530260724415,
      39: 31.04834939252005,
      40: 75.02666192761077},
 17: {1: 70.0,
      2: 31.976553910638962,
      3: 67.79749257900325,
      4: 81.0,
      5: 68.72044819411468,
      6: 54.120236510939236,
      7: 62.289646009589745,
      8: 80.60397012554654,
      9: 28.160255680657446,
      10: 54.42425929675111,
      11: 56.50221234606659,
      12: 36.40054944640259,
      13: 70.8590149522275,
      14: 74.03039916142558,
      15: 79.00632886041473,
      16: 67.3238442158497,
      17: 0.0,
      18: 57.8013840664737,
      19: 61.0,
      20: 63.265314351546536,
      21: 75.51489919214617,
      22: 55.0,
      23: 92.0,
      24: 51.0,
      25: 83.5134719671024,
      26: 77.52418977325722,
      27: 44.01136216933077,
      28: 71.8679344353238,
      29: 75.1065909225016,
      30: 49.11720676097125,
      31: 69.26037828369117,
      32: 56.0,
      33: 41.012193308819754,
      34: 76.40026177965623,
      35: 79.0,
      36: 46.0,
      37: 71.00704190430693,
      38: 70.0,
      39: 60.0,
      40: 38.242646351945886},
 18: {1: 70.61161377563892,
      2: 59.0,
      3: 83.0,
      4: 57.0087712549569,
      5: 49.040799340956916,
      6: 78.0,
      7: 81.68537200747757,
      8: 79.69002446981679,
      9: 86.0,
      10: 63.65924913160695,
      11: 70.83078426785913,
      12: 49.663870167356066,
      13: 40.0,
      14: 38.63935817272331,
      15: 48.27007354458868,
      16: 65.65439817712138,
      17: 57.8013840664737,
      18: 0.0,
      19: 40.0,
      20: 90.0,
      21: 43.56604182158393,
      22: 67.62396025078685,
      23: 68.54560525664647,
      24: 38.2099463490856,
      25: 55.32178594369491,
      26: 67.0,
      27: 38.01315561749642,
      28: 67.30898899849856,
      29: 86.0,
      30: 100,
      31: 55.520266569965244,
      32: 65.14598989960932,
      33: 74.54528824815154,
      34: 78.34858007647618,
      35: 30.0,
      36: 59.0,
      37: 48.54894437575342,
      38: 52.773099207835045,
      39: 60.92618484691127,
      40: 40.792156108742276},
 19: {1: 62.0,
      2: 71.43178564196754,
      3: 57.67581815631227,
      4: 44.0,
      5: 83.7645509747411,
      6: 55.70008976653449,
      7: 43.0,
      8: 57.0,
      9: 83.0,
      10: 92.80355596635293,
      11: 42.85440467443224,
      12: 68.70589494359272,
      13: 49.0,
      14: 61.98790204547981,
      15: 61.04506532063014,
      16: 77.64663547121665,
      17: 61.0,
      18: 40.0,
      19: 0.0,
      20: 63.788713735268246,
      21: 31.144823004794873,
      22: 52.0,
      23: 39.56008088970496,
      24: 49.72926703662542,
      25: 50.601383380299005,
      26: 82.0,
      27: 58.9406481131655,
      28: 68.51642138932827,
      29: 69.0,
      30: 24.0,
      31: 30.0,
      32: 70.64347103589971,
      33: 61.18823416311342,
      34: 92.13576938409967,
      35: 43.502873468312416,
      36: 63.65924913160695,
      37: 26.570660511172846,
      38: 33.94849039353591,
      39: 54.0,
      40: 66.15512073906298},
 20: {1: 95.56411460375699,
      2: 56.859475903318,
      3: 61.032778078668514,
      4: 30.083217912982647,
      5: 50.60632371551998,
      6: 64.0,
      7: 62.93647591023825,
      8: 71.71122645722913,
      9: 40.0,
      10: 71.0,
      11: 66.68208155119335,
      12: 79.0,
      13: 78.0,
      14: 70.0,
      15: 67.85646616203941,
      16: 62.0,
      17: 63.265314351546536,
      18: 90.0,
      19: 63.788713735268246,
      20: 0.0,
      21: 20.65187642806338,
      22: 78.50159234053791,
      23: 48.30113870293329,
      24: 65.47136778775895,
      25: 32.16364407215078,
      26: 100,
      27: 59.23681287847955,
      28: 48.0,
      29: 60.876925020897694,
      30: 52.8441103624614,
      31: 36.0,
      32: 77.0,
      33: 67.67569726275453,
      34: 91.0,
      35: 46.51881339845203,
      36: 56.089214649520635,
      37: 36.235341863986875,
      38: 39.0,
      39: 69.57010852370435,
      40: 39.84971769034255},
 21: {1: 78.44743462982075,
      2: 88.14193099768123,
      3: 66.9215959164155,
      4: 52.15361924162119,
      5: 29.0,
      6: 50.97548430373173,
      7: 59.941638282582836,
      8: 74.33034373659252,
      9: 78.1184997295775,
      10: 64.59489143887464,
      11: 79.30952023559341,
      12: 87.26110244547682,
      13: 75.91113225344488,
      14: 63.694583757176716,
      15: 55.03180898353242,
      16: 66.65208173793224,
      17: 75.51489919214617,
      18: 43.56604182158393,
      19: 31.144823004794873,
      20: 20.65187642806338,
      21: 0.0,
      22: 18.828170383762732,
      23: 39.0,
      24: 48.25453346577915,
      25: 82.0,
      26: 69.0,
      27: 96.0,
      28: 62.39390995922599,
      29: 40.0,
      30: 63.0,
      31: 57.56735185849702,
      32: 26.315394733881533,
      33: 74.94664769020693,
      34: 79.03480246068817,
      35: 58.0,
      36: 65.59344479443048,
      37: 44.41846462902562,
      38: 88.0056816347672,
      39: 79.0,
      40: 78.85429601486528},
 22: {1: 16.0,
      2: 72.50172411743047,
      3: 58.826014653382735,
      4: 53.96758286230726,
      5: 100,
      6: 81.0,
      7: 53.12720583655798,
      8: 63.0,
      9: 83.7645509747411,
      10: 59.0,
      11: 85.14693182963201,
      12: 84.8528137423857,
      13: 36.40054944640259,
      14: 44.0,
      15: 97.0,
      16: 73.0,
      17: 55.0,
      18: 67.62396025078685,
      19: 52.0,
      20: 78.50159234053791,
      21: 18.828170383762732,
      22: 0.0,
      23: 68.77863040218233,
      24: 60.0,
      25: 31.0,
      26: 56.555282688710875,
      27: 68.0,
      28: 80.47670470390796,
      29: 39.147158262126766,
      30: 28.442925306655784,
      31: 72.11102550927978,
      32: 80.4114419718985,
      33: 88.36288813749809,
      34: 76.0,
      35: 64.88451279003334,
      36: 50.34381789256751,
      37: 79.03480246068817,
      38: 48.104053883222775,
      39: 43.56604182158393,
      40: 64.07027391856539},
 23: {1: 33.0,
      2: 37.662979170532964,
      3: 43.0,
      4: 82.77982846080317,
      5: 73.27004845091888,
      6: 61.05735008989499,
      7: 15.0,
      8: 70.01785486574121,
      9: 67.1863081289633,
      10: 34.935655139126844,
      11: 72.40511031688303,
      12: 45.17742799230607,
      13: 87.0,
      14: 89.6688351658479,
      15: 47.29693436154187,
      16: 77.54031209635411,
      17: 92.0,
      18: 68.54560525664647,
      19: 39.56008088970496,
      20: 48.30113870293329,
      21: 39.0,
      22: 68.77863040218233,
      23: 0.0,
      24: 81.0,
      25: 38.0,
      26: 98.0,
      27: 70.178344238091,
      28: 84.71717653463199,
      29: 68.62215385719105,
      30: 68.11754546370561,
      31: 56.22277118748239,
      32: 74.0,
      33: 40.52159917870962,
      34: 55.0,
      35: 64.0,
      36: 60.0,
      37: 15.0,
      38: 61.04506532063014,
      39: 55.0,
      40: 50.0},
 24: {1: 82.68313008105099,
      2: 32.14031735997639,
      3: 65.68485365744526,
      4: 52.31156659860226,
      5: 71.17583859709698,
      6: 78.85746635544412,
      7: 60.41522986797286,
      8: 35.0,
      9: 34.32928778754374,
      10: 76.3053078101386,
      11: 36.0,
      12: 65.25335240430181,
      13: 73.17103251970687,
      14: 35.106979363083916,
      15: 73.97972695272672,
      16: 21.0,
      17: 51.0,
      18: 38.2099463490856,
      19: 49.72926703662542,
      20: 65.47136778775895,
      21: 48.25453346577915,
      22: 60.0,
      23: 81.0,
      24: 0.0,
      25: 94.08506789071261,
      26: 79.30952023559341,
      27: 68.0,
      28: 39.21734310225516,
      29: 45.89117562233506,
      30: 44.52527372178637,
      31: 78.63841300535,
      32: 79.63039620647382,
      33: 51.0,
      34: 36.22154055254967,
      35: 31.953090617340916,
      36: 55.57877292636101,
      37: 17.67766952966369,
      38: 43.0,
      39: 92.0,
      40: 63.0317380372777},
 25: {1: 71.02816342831905,
      2: 62.20128616033595,
      3: 49.381170500505554,
      4: 52.92447448959697,
      5: 65.0,
      6: 67.50185182644992,
      7: 74.0,
      8: 38.01315561749642,
      9: 59.88739433303139,
      10: 78.23362448461658,
      11: 51.31276644267,
      12: 56.00892785976178,
      13: 73.38937252763509,
      14: 31.0,
      15: 67.3238442158497,
      16: 39.0,
      17: 83.5134719671024,
      18: 55.32178594369491,
      19: 50.601383380299005,
      20: 32.16364407215078,
      21: 82.0,
      22: 31.0,
      23: 38.0,
      24: 94.08506789071261,
      25: 0.0,
      26: 19.0,
      27: 35.0,
      28: 55.0,
      29: 70.0,
      30: 87.7410964143941,
      31: 58.69412236331676,
      32: 53.0,
      33: 96.0,
      34: 76.0,
      35: 73.06161783043132,
      36: 49.040799340956916,
      37: 71.17583859709698,
      38: 100.0,
      39: 89.05054744357274,
      40: 72.88689868556625},
 26: {1: 32.69556544854363,
      2: 25.0,
      3: 64.82669203345178,
      4: 65.0,
      5: 32.44225639501667,
      6: 66.54697588921678,
      7: 80.77747210701756,
      8: 23.0,
      9: 81.0,
      10: 65.0,
      11: 38.897300677553446,
      12: 88.05112151472007,
      13: 33.59315406448165,
      14: 71.28113354878694,
      15: 36.0,
      16: 71.19691004531025,
      17: 77.52418977325722,
      18: 67.0,
      19: 82.0,
      20: 100,
      21: 69.0,
      22: 56.555282688710875,
      23: 98.0,
      24: 79.30952023559341,
      25: 19.0,
      26: 0.0,
      27: 37.33630940518894,
      28: 64.00781202322104,
      29: 49.684001449158664,
      30: 62.39390995922599,
      31: 65.97347952018296,
      32: 85.57160744078611,
      33: 56.0357029044876,
      34: 47.0,
      35: 46.0,
      36: 50.08492787256461,
      37: 37.821951298154886,
      38: 61.50203248673982,
      39: 39.04484601070928,
      40: 89.56840960963859},
 27: {1: 100,
      2: 54.589376255824725,
      3: 31.535694062442957,
      4: 100,
      5: 34.0147027033899,
      6: 76.90253571892151,
      7: 56.360447123847415,
      8: 55.362442142665635,
      9: 62.0,
      10: 70.9964787859229,
      11: 76.79192665899195,
      12: 87.20665112249179,
      13: 64.50193795538239,
      14: 40.718546143004666,
      15: 37.107950630558946,
      16: 67.08203932499369,
      17: 44.01136216933077,
      18: 38.01315561749642,
      19: 58.9406481131655,
      20: 59.23681287847955,
      21: 96.0,
      22: 68.0,
      23: 70.178344238091,
      24: 68.0,
      25: 35.0,
      26: 37.33630940518894,
      27: 0.0,
      28: 55.362442142665635,
      29: 44.83859944289072,
      30: 33.0,
      31: 89.0,
      32: 21.0,
      33: 81.0,
      34: 70.01785486574121,
      35: 76.0,
      36: 88.0,
      37: 100,
      38: 60.876925020897694,
      39: 83.0,
      40: 72.80109889280519},
 28: {1: 81.62413858657254,
      2: 65.0,
      3: 78.40918313565064,
      4: 51.56064390598706,
      5: 66.09841147864296,
      6: 91.0,
      7: 77.6659513557904,
      8: 55.14526271584895,
      9: 66.14000302388865,
      10: 62.66179059043876,
      11: 59.0,
      12: 65.11528238439882,
      13: 46.238512086787566,
      14: 78.10249675906654,
      15: 53.0,
      16: 49.62358310319802,
      17: 71.8679344353238,
      18: 67.30898899849856,
      19: 68.51642138932827,
      20: 48.0,
      21: 62.39390995922599,
      22: 80.47670470390796,
      23: 84.71717653463199,
      24: 39.21734310225516,
      25: 55.0,
      26: 64.00781202322104,
      27: 55.362442142665635,
      28: 0.0,
      29: 52.19674319342156,
      30: 54.7220248163388,
      31: 52.55949010407159,
      32: 38.27531841800928,
      33: 79.74020316001207,
      34: 74.04052944165107,
      35: 65.29931086925804,
      36: 66.0,
      37: 61.326992425847855,
      38: 27.018512172212592,
      39: 64.0,
      40: 60.00833275470999},
 29: {1: 76.0,
      2: 52.8441103624614,
      3: 77.00649323271382,
      4: 54.39209501388966,
      5: 31.12073263919087,
      6: 30.20761493398643,
      7: 70.44501401802685,
      8: 31.0,
      9: 48.62612466565683,
      10: 74.9699939975988,
      11: 16.507574019219177,
      12: 46.28714724413247,
      13: 71.84705978674423,
      14: 57.723478758647246,
      15: 29.0,
      16: 65.0,
      17: 75.1065909225016,
      18: 86.0,
      19: 69.0,
      20: 60.876925020897694,
      21: 40.0,
      22: 39.147158262126766,
      23: 68.62215385719105,
      24: 45.89117562233506,
      25: 70.0,
      26: 49.684001449158664,
      27: 44.83859944289072,
      28: 52.19674319342156,
      29: 0.0,
      30: 27.0,
      31: 59.09314681077663,
      32: 73.10950690573696,
      33: 55.0,
      34: 34.36568055487916,
      35: 51.90857347298228,
      36: 66.10975722236469,
      37: 19.0,
      38: 80.1654539062806,
      39: 57.0350769263968,
      40: 47.16990566028302},
 30: {1: 82.82813531644908,
      2: 49.0,
      3: 32.0,
      4: 57.0,
      5: 64.38167441127949,
      6: 46.4811789867684,
      7: 33.0,
      8: 27.0,
      9: 82.0,
      10: 87.7410964143941,
      11: 17.0,
      12: 71.0,
      13: 100,
      14: 80.22468448052632,
      15: 28.0,
      16: 80.05623023850174,
      17: 49.11720676097125,
      18: 100,
      19: 24.0,
      20: 52.8441103624614,
      21: 63.0,
      22: 28.442925306655784,
      23: 68.11754546370561,
      24: 44.52527372178637,
      25: 87.7410964143941,
      26: 62.39390995922599,
      27: 33.0,
      28: 54.7220248163388,
      29: 27.0,
      30: 0.0,
      31: 19.0,
      32: 72.0,
      33: 87.82084035125148,
      34: 43.829214001622255,
      35: 54.0,
      36: 32.01562118716424,
      37: 56.0,
      38: 94.0,
      39: 45.0,
      40: 42.04759208325728},
 31: {1: 73.68174807915459,
      2: 87.0,
      3: 70.32780389006896,
      4: 62.0,
      5: 75.0,
      6: 39.274673773310965,
      7: 60.96310359553556,
      8: 39.84971769034255,
      9: 34.8209706929603,
      10: 75.02666192761077,
      11: 88.81722805852478,
      12: 85.0235261559999,
      13: 54.0,
      14: 82.936722867497,
      15: 100,
      16: 57.271284253105414,
      17: 69.26037828369117,
      18: 55.520266569965244,
      19: 30.0,
      20: 36.0,
      21: 57.56735185849702,
      22: 72.11102550927978,
      23: 56.22277118748239,
      24: 78.63841300535,
      25: 58.69412236331676,
      26: 65.97347952018296,
      27: 89.0,
      28: 52.55949010407159,
      29: 59.09314681077663,
      30: 19.0,
      31: 0.0,
      32: 47.56574397610112,
      33: 38.897300677553446,
      34: 79.83107164506812,
      35: 34.0,
      36: 55.226805085936306,
      37: 56.14712815451918,
      38: 71.0,
      39: 64.07807737440318,
      40: 70.0},
 32: {1: 28.78367592924851,
      2: 65.07303589045158,
      3: 57.467382052778426,
      4: 91.51229425601787,
      5: 64.53293732660865,
      6: 97.0,
      7: 82.03657720797473,
      8: 85.09406559801923,
      9: 68.06614430096654,
      10: 43.0,
      11: 61.587336360651285,
      12: 66.04922406811453,
      13: 58.27949896833363,
      14: 42.101068870041765,
      15: 43.15669125408017,
      16: 83.02409288875127,
      17: 56.0,
      18: 65.14598989960932,
      19: 70.64347103589971,
      20: 77.0,
      21: 26.315394733881533,
      22: 80.4114419718985,
      23: 74.0,
      24: 79.63039620647382,
      25: 53.0,
      26: 85.57160744078611,
      27: 21.0,
      28: 38.27531841800928,
      29: 73.10950690573696,
      30: 72.0,
      31: 47.56574397610112,
      32: 0.0,
      33: 65.73431371817918,
      34: 57.0,
      35: 86.20904824900923,
      36: 23.0,
      37: 87.56997202237763,
      38: 43.01162633521314,
      39: 45.617978911828175,
      40: 63.5963835449784},
 33: {1: 38.0,
      2: 80.0,
      3: 25.0,
      4: 37.04726710568541,
      5: 67.0,
      6: 72.58443359288546,
      7: 16.0,
      8: 56.0,
      9: 26.61766330841233,
      10: 87.0,
      11: 66.18912297349165,
      12: 76.02631123499285,
      13: 90.35485598461214,
      14: 92.0,
      15: 64.6297145282261,
      16: 30.0,
      17: 41.012193308819754,
      18: 74.54528824815154,
      19: 61.18823416311342,
      20: 67.67569726275453,
      21: 74.94664769020693,
      22: 88.36288813749809,
      23: 40.52159917870962,
      24: 51.0,
      25: 96.0,
      26: 56.0357029044876,
      27: 81.0,
      28: 79.74020316001207,
      29: 55.0,
      30: 87.82084035125148,
      31: 38.897300677553446,
      32: 65.73431371817918,
      33: 0.0,
      34: 72.63952092353033,
      35: 47.16990566028302,
      36: 15.0,
      37: 36.40054944640259,
      38: 61.6644143732834,
      39: 34.0,
      40: 68.28250141873832},
 34: {1: 26.1725046566048,
      2: 90.0,
      3: 55.0,
      4: 35.0,
      5: 36.40054944640259,
      6: 78.64477096412705,
      7: 25.0,
      8: 15.508062419270823,
      9: 58.309518948453004,
      10: 74.06078584514209,
      11: 71.0,
      12: 31.0,
      13: 50.32395056034453,
      14: 51.07837115648854,
      15: 53.688918782184466,
      16: 72.74957044546724,
      17: 76.40026177965623,
      18: 78.34858007647618,
      19: 92.13576938409967,
      20: 91.0,
      21: 79.03480246068817,
      22: 76.0,
      23: 55.0,
      24: 36.22154055254967,
      25: 76.0,
      26: 47.0,
      27: 70.01785486574121,
      28: 74.04052944165107,
      29: 34.36568055487916,
      30: 43.829214001622255,
      31: 79.83107164506812,
      32: 57.0,
      33: 72.63952092353033,
      34: 0.0,
      35: 44.94441010848846,
      36: 82.03657720797473,
      37: 86.00581375697809,
      38: 69.0,
      39: 47.0,
      40: 36.22154055254967},
 35: {1: 33.50373113550191,
      2: 72.37748268626092,
      3: 67.4166151627327,
      4: 35.90264614203248,
      5: 92.0,
      6: 35.35533905932738,
      7: 55.231331687729565,
      8: 24.0,
      9: 27.0,
      10: 53.85164807134504,
      11: 100,
      12: 60.054142238483436,
      13: 52.15841255253078,
      14: 71.43178564196754,
      15: 46.0,
      16: 53.50233639758174,
      17: 79.0,
      18: 30.0,
      19: 43.502873468312416,
      20: 46.51881339845203,
      21: 58.0,
      22: 64.88451279003334,
      23: 64.0,
      24: 31.953090617340916,
      25: 73.06161783043132,
      26: 46.0,
      27: 76.0,
      28: 65.29931086925804,
      29: 51.90857347298228,
      30: 54.0,
      31: 34.0,
      32: 86.20904824900923,
      33: 47.16990566028302,
      34: 44.94441010848846,
      35: 0.0,
      36: 94.0,
      37: 38.58108344772085,
      38: 72.51551558114994,
      39: 53.75872022286245,
      40: 65.50190836914601},
 36: {1: 53.08483775994799,
      2: 44.9221548904324,
      3: 77.0,
      4: 30.0,
      5: 17.67766952966369,
      6: 40.0,
      7: 55.94640292279746,
      8: 34.0,
      9: 58.86000339789321,
      10: 52.31156659860226,
      11: 82.0,
      12: 49.80461825975579,
      13: 88.2779700718135,
      14: 82.61053201620238,
      15: 45.60701700396552,
      16: 69.0,
      17: 46.0,
      18: 59.0,
      19: 63.65924913160695,
      20: 56.089214649520635,
      21: 65.59344479443048,
      22: 50.34381789256751,
      23: 60.0,
      24: 55.57877292636101,
      25: 49.040799340956916,
      26: 50.08492787256461,
      27: 88.0,
      28: 66.0,
      29: 66.10975722236469,
      30: 32.01562118716424,
      31: 55.226805085936306,
      32: 23.0,
      33: 15.0,
      34: 82.03657720797473,
      35: 94.0,
      36: 0.0,
      37: 69.76030389842063,
      38: 80.0,
      39: 49.52272205765753,
      40: 45.52471856036015},
 37: {1: 56.0,
      2: 74.68600939935136,
      3: 50.97548430373173,
      4: 94.0,
      5: 67.11929677819934,
      6: 73.70549504616328,
      7: 56.66127425323225,
      8: 43.96020928066653,
      9: 45.0,
      10: 56.302753041036986,
      11: 76.0,
      12: 26.0,
      13: 50.936234646860186,
      14: 100,
      15: 88.5353036929337,
      16: 87.05170877128145,
      17: 71.00704190430693,
      18: 48.54894437575342,
      19: 26.570660511172846,
      20: 36.235341863986875,
      21: 44.41846462902562,
      22: 79.03480246068817,
      23: 15.0,
      24: 17.67766952966369,
      25: 71.17583859709698,
      26: 37.821951298154886,
      27: 100,
      28: 61.326992425847855,
      29: 19.0,
      30: 56.0,
      31: 56.14712815451918,
      32: 87.56997202237763,
      33: 36.40054944640259,
      34: 86.00581375697809,
      35: 38.58108344772085,
      36: 69.76030389842063,
      37: 0.0,
      38: 70.51595564125896,
      39: 26.0,
      40: 55.0},
 38: {1: 100,
      2: 69.33974329343886,
      3: 41.0,
      4: 16.0,
      5: 79.0,
      6: 18.0,
      7: 87.09190547921202,
      8: 56.302753041036986,
      9: 62.0,
      10: 77.10382610480494,
      11: 47.270498199193966,
      12: 39.223717314910374,
      13: 25.0,
      14: 95.0,
      15: 73.51530452905708,
      16: 45.8530260724415,
      17: 70.0,
      18: 52.773099207835045,
      19: 33.94849039353591,
      20: 39.0,
      21: 88.0056816347672,
      22: 48.104053883222775,
      23: 61.04506532063014,
      24: 43.0,
      25: 100.0,
      26: 61.50203248673982,
      27: 60.876925020897694,
      28: 27.018512172212592,
      29: 80.1654539062806,
      30: 94.0,
      31: 71.0,
      32: 43.01162633521314,
      33: 61.6644143732834,
      34: 69.0,
      35: 72.51551558114994,
      36: 80.0,
      37: 70.51595564125896,
      38: 0.0,
      39: 49.11720676097125,
      40: 60.054142238483436},
 39: {1: 49.0,
      2: 70.28869041318099,
      3: 56.859475903318,
      4: 62.0,
      5: 81.31727983645297,
      6: 84.5133125608031,
      7: 24.351591323771842,
      8: 80.84862398334309,
      9: 47.67074574621211,
      10: 57.97413216254298,
      11: 94.0,
      12: 34.0,
      13: 40.99390198553927,
      14: 73.16419889536138,
      15: 43.41658669218482,
      16: 31.04834939252005,
      17: 60.0,
      18: 60.92618484691127,
      19: 54.0,
      20: 69.57010852370435,
      21: 79.0,
      22: 43.56604182158393,
      23: 55.0,
      24: 92.0,
      25: 89.05054744357274,
      26: 39.04484601070928,
      27: 83.0,
      28: 64.0,
      29: 57.0350769263968,
      30: 45.0,
      31: 64.07807737440318,
      32: 45.617978911828175,
      33: 34.0,
      34: 47.0,
      35: 53.75872022286245,
      36: 49.52272205765753,
      37: 26.0,
      38: 49.11720676097125,
      39: 0.0,
      40: 49.0},
 40: {1: 40.87175063537161,
      2: 84.2140130857092,
      3: 58.249463516842795,
      4: 54.52063829413592,
      5: 42.38513890504548,
      6: 41.0,
      7: 74.55534856735632,
      8: 77.78174593052023,
      9: 42.20189569201838,
      10: 25.347583711273153,
      11: 46.52418725781247,
      12: 65.06919393998976,
      13: 48.33218389437829,
      14: 96.0,
      15: 74.82312476768128,
      16: 75.02666192761077,
      17: 38.242646351945886,
      18: 40.792156108742276,
      19: 66.15512073906298,
      20: 39.84971769034255,
      21: 78.85429601486528,
      22: 64.07027391856539,
      23: 50.0,
      24: 63.0317380372777,
      25: 72.88689868556625,
      26: 89.56840960963859,
      27: 72.80109889280519,
      28: 60.00833275470999,
      29: 47.16990566028302,
      30: 42.04759208325728,
      31: 70.0,
      32: 63.5963835449784,
      33: 68.28250141873832,
      34: 36.22154055254967,
      35: 65.50190836914601,
      36: 45.52471856036015,
      37: 55.0,
      38: 60.054142238483436,
      39: 49.0,
      40: 0.0}}
1 {'x': 0.0, 'y': 0.0}
2 {'x': 57.48912940721924, 'y': 0.0}
3 {'x': 16.403101068383585, 'y': 40.93822511223946}
4 {'x': -5.335791360261569, 'y': 23.399344660903605}
5 {'x': -15.0, 'y': 1.83697019872103e-15}
6 {'x': -30.049159168221248, 'y': 48.34302466005727}
7 {'x': 50.83569763769991, 'y': -37.62621221553335}
8 {'x': 32.193042738399704, 'y': -18.23754367352057}
9 {'x': 48.82227351398262, 'y': 67.85930745981624}
10 {'x': 38.03327729164443, 'y': 64.8187458877205}
11 {'x': 41.12951482098936, 'y': 85.11676104381567}
12 {'x': 50.457365242962545, 'y': -34.80020535482909}
13 {'x': 20.186425015757315, 'y': 63.88668284613944}
14 {'x': -35.328418101683, 'y': 24.513320346959873}
15 {'x': -18.364341413516406, 'y': 61.30865325912653}
16 {'x': 35.502364030297876, 'y': 86.24141782380559}
17 {'x': 62.468331613820304, 'y': -31.586508914183263}
18 {'x': 41.833995831879655, 'y': -56.88511925572694}
19 {'x': 17.799017145518036, 'y': 59.39019269756207}
20 {'x': 80.05426499678511, 'y': 52.19017777153579}
21 {'x': 14.698430967957728, 'y': 77.058134723598}
22 {'x': -14.746266098326803, 'y': 6.208674267292302}
23 {'x': 25.878805529679397, 'y': -20.47650908619521}
24 {'x': 79.21932453943364, 'y': -23.681187037728606}
25 {'x': 38.97258530616481, 'y': 59.38128993676128}
26 {'x': 32.60616431886005, 'y': -2.416205374445179}
27 {'x': 89.799585647434, 'y': 44.00039110677501}
28 {'x': 49.94422475354864, 'y': -64.56062587806147}
29 {'x': 54.69294860473497, 'y': -52.77008028153661}
30 {'x': 67.53015813651344, 'y': 47.9601682863758}
31 {'x': 10.132350341817002, 'y': 72.98174755752757}
32 {'x': -0.8784269395051606, 'y': -28.77026878762087}
33 {'x': -14.359236407158694, 'y': 35.18255718112781}
34 {'x': -26.1725046566048, 'y': 3.2052074053380265e-15}
35 {'x': -7.053507405333548, 'y': -32.75283244671985}
36 {'x': 35.702401848204985, 'y': -39.2853471700237}
37 {'x': 7.505766819732249, 'y': 55.49471564435488}
38 {'x': 73.90092777203357, 'y': 67.36952481970373}
39 {'x': 6.65778041773469, 'y': 48.54558641019005}
40 {'x': -18.407827895670124, 'y': 36.49180554814175}

  

 

 

import random
import pprint
import math
import matplotlib.pyplot as plt
import sys


def float_format(d, not_float=0.0):
    if d is not float:
        try:
            d = float(d)
        except Exception:
            d = not_float
    return d


# 填入rssi_missing_val后的修正距离
def gen_atob_dis(a, b):
    a, b = float_format(a), float_format(b)
    r = ((a ** 2 + b ** 2) * 0.5) ** 0.5
    if r > 100:
        r = 100
    return r


def chk_triangle(a, b, c):
    a, b, c = float_format(a), float_format(b), float_format(c)
    if a + b > c and a + c > b and b + c > a:
        return 1
    else:
        return 0


def compute_triangle_angle(a, b, c):
    a, b, c = float_format(a), float_format(b), float_format(c)
    cos = (a ** 2 + b ** 2 - c ** 2) / (2 * a * b)
    if abs(cos) > 1:
        if cos > 0:
            return math.acos(1)
        else:
            return math.acos(-1)
    return math.acos(cos)


def radius_coordinates_to_perpendicular_coordinates(dic_):
    polar_radius, polar_angle = dic_['polar_radius'], dic_['polar_angle']
    res_ = {}
    res_['y'], res_['x'] = polar_radius * math.sin(polar_angle), polar_radius * math.cos(polar_angle)
    return res_


# 输入参数格式:
# 字符串
# 对uuid按照固定顺序传入,如ABCD
# Iab,Iac,Iad;Iba,Ibc,Ibd;Ica,Icb,Icd;Ida,Idb,Idc;
# 如出现缺失值,则为空;如Iab,Iac,Iad;Iba,Ibc,Ibd;Ica,,Icd;,Idb,Idc;
# 注意0-分隔符的完整性1-负号莫缺失。

PI, rssi_missing_val = math.pi, '-999'
sys_argv_l = sys.argv
input_str = '-81,-81,-73,-69;-74,-55,,-79;-84,-54,-77,-72;-68,-88,-80,-78;,,-67,-99;'

input_str, simulation_num = '', 40
for i in range(0, simulation_num, 1):
    for ii in range(0, simulation_num, 1):
        r = int(-round(random.random() * 100, 0))
        if input_str == '':
            input_str = '%s' % (r)
        else:
            if r > -15:
                r = ''
            input_str = '%s%s%s' % (input_str, ',', r)
    input_str = '%s%s' % (input_str, ';')
input_str = input_str.replace(';,', ';')
if len(sys_argv_l) == 2:
    input_str = sys_argv_l[1]
input_str = input_str.replace(' ', '')
uuid_num = input_str.count(';')
uuid_num_plus = uuid_num + 1

l_row = input_str.split(';')
rssi_matrix = {}
for i in range(0, uuid_num, 1):
    i_ = i + 1
    rssi_matrix[i_] = {}
    l_one = l_row[i].split(',')
    step_ = 0
    for ii in range(0, uuid_num, 1):
        ii_ = ii + 1
        if i == ii:
            rssi_matrix[i_][ii_] = 0
        else:
            if l_one[step_] == '':
                l_one[step_] = rssi_missing_val
            rssi_matrix[i_][ii_] = l_one[step_]
            step_ += 1

for i_ in range(1, uuid_num_plus, 1):
    for ii_ in range(1, uuid_num_plus, 1):
        if rssi_matrix[i_][ii_] == rssi_missing_val:
            rssi_matrix[i_][ii_] = rssi_matrix[ii_][i_]
        if rssi_matrix[ii_][i_] == rssi_missing_val:
            rssi_matrix[ii_][i_] = rssi_matrix[i_][ii_]

rssi_distance_matrix = {}
for i in range(0, uuid_num, 1):
    i_ = i + 1
    rssi_distance_matrix[i_] = {}
    for ii in range(0, uuid_num, 1):
        ii_ = ii + 1
        a, b = rssi_matrix[i_][ii_], rssi_matrix[ii_][i_]
        rssi_distance_matrix[i_][ii_] = gen_atob_dis(a, b)
pprint.pprint(input_str)
pprint.pprint(rssi_matrix)
pprint.pprint(rssi_distance_matrix)

triangle_dic, triangle_side_list = {}, []
for i in range(1, uuid_num_plus, 1):
    for ii in range(1, uuid_num_plus, 1):
        for iii in range(1, uuid_num_plus, 1):
            if i != ii and i != iii and ii != iii:
                triangle_id_l = sorted([i, ii, iii])
                if triangle_id_l in triangle_side_list:
                    continue
                triangle_side_list.append(triangle_id_l)
                triangle_id = ','.join(str(triangle_id_l))
                triangle_dic[triangle_id] = {}
                triangle_dic[triangle_id]['length_of_side_dic'], triangle_dic[triangle_id]['is_triangle'] = [], 0

                c, b, a = rssi_distance_matrix[i][ii], rssi_distance_matrix[i][iii], rssi_distance_matrix[ii][iii]
                is_triangle = chk_triangle(a, b, c)
                triangle_dic[triangle_id]['is_triangle'] = is_triangle
                if is_triangle == 1:
                    triangle_dic[triangle_id]['length_of_side_dic'], triangle_dic[triangle_id][
                        'angle_of_side_dic'] = {}, {}
                    k12, k13, k23 = '%s%s' % (i, ii), '%s%s' % (i, iii), '%s%s' % (ii, iii)
                    triangle_dic[triangle_id]['length_of_side_dic'][k12], \
                    triangle_dic[triangle_id]['length_of_side_dic'][k13], \
                    triangle_dic[triangle_id]['length_of_side_dic'][k23] = a, b, c

# filter_  triangle rebuild
radius_coordinates = {}
radius_coordinates[1] = {}
radius_coordinates[1]['polar_angle'], radius_coordinates[1]['polar_radius'] = 0, 0
radius_coordinates[2] = {}
radius_coordinates[2]['polar_radius'], radius_coordinates[2]['polar_angle'] = rssi_distance_matrix[1][2], 0
radius_coordinates[3] = {}
radius_coordinates[3]['polar_radius'] = rssi_distance_matrix[1][3]
a, b, c = rssi_distance_matrix[1][2], rssi_distance_matrix[1][3], rssi_distance_matrix[2][3]
radius_coordinates[3]['polar_angle'] = abs(compute_triangle_angle(a, b, c))

for i in range(4, uuid_num_plus, 1):
    radius_coordinates[i] = {}
    radius_coordinates[i]['polar_radius'], radius_coordinates[i]['polar_angle'] = 0, 0
    polar_radius_i = rssi_distance_matrix[1][i]

    a, c = rssi_distance_matrix[1][2], rssi_distance_matrix[2][i]
    angle_radius_from12 = compute_triangle_angle(a, polar_radius_i, c)

    a, c = rssi_distance_matrix[1][3], rssi_distance_matrix[3][i]
    angle_radius_from13 = compute_triangle_angle(a, polar_radius_i, c)

    polar_angle_i = angle_radius_from12
    if angle_radius_from12 < angle_radius_from13:
        polar_angle_i = 2 * PI - angle_radius_from12
    radius_coordinates[i]['polar_radius'], radius_coordinates[i]['polar_angle'] = polar_radius_i, polar_angle_i

perpendicular_coordinates = {}
for i in range(1, uuid_num_plus, 1):
    dic_ = radius_coordinates[i]
    res_ = radius_coordinates_to_perpendicular_coordinates(dic_)
    perpendicular_coordinates[i] = {}
    perpendicular_coordinates[i]['x'], perpendicular_coordinates[i]['y'] = res_['x'], res_['y']

x, y = [perpendicular_coordinates[i]['x'] for i in range(1, uuid_num_plus, 1)], [perpendicular_coordinates[i]['y'] for i in range(1, uuid_num_plus, 1)]

for i in range(1, uuid_num_plus, 1):
    print(i, perpendicular_coordinates[i])
plt.plot(x, y)
plt.show()

  

posted @ 2017-09-25 18:13  papering  阅读(276)  评论(0编辑  收藏  举报