Skip to content

Instantly share code, notes, and snippets.

@nestharus
Last active August 25, 2019 10:11
Show Gist options
  • Save nestharus/ec4bf81372dff4a0cadb15f7dfd6cda7 to your computer and use it in GitHub Desktop.
Save nestharus/ec4bf81372dff4a0cadb15f7dfd6cda7 to your computer and use it in GitHub Desktop.
# 2 [ 1]
# 3 [ 3, 1]
# 5 [5, 3, 1, 3, 1, 3, 5, 1]
# (19) 7 [9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3********************************************************************, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 1]
# ( 9) 11 [11, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3********************************************************************, 1, 3, 5, 1, 9, 1, 3, 1, 11, 9, 1, 3, 1, 3, 5, 1, 5, 3, 5, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 5, 7, 5, 9, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 5, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 3, 11, 1, 5, 3, 1, 5, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 9, 1, 3,5, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 5, 5, 1, 5, 5, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 5,3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 3, 1, 9, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 7, 5, 3, 1, 3,5, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 5, 5, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1,3, 1, 9, 1, 9, 1, 5, 3, 5, 1, 5, 3, 1, 3, 5, 5, 7, 3, 1, 5, 9, 7, 3, 1, 3, 1, 3, 7, 9, 5, 1,3, 7, 5, 5, 3, 1, 3, 5, 1, 5, 3, 5, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 5,5, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 5, 3, 1, 3, 5, 7, 3, 1, 3, 1, 9, 1, 9, 1,3, 1, 3, 5, 1, 9, 1, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 5, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5,3, 5, 5, 1, 5, 5, 3, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 9, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3,1, 3, 1, 11, 5, 3, 5, 1, 3, 5, 1, 11, 3, 1, 3, 7, 5, 3, 1, 3, 1, 9, 1, 9, 5, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 9, 5, 7, 5, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 5, 3, 5, 1, 5, 3, 1, 3, 1, 9, 11, 1, 3, 1, 9, 1, 5, 3, 1, 3, 5, 5, 1, 9, 1, 5, 3, 13, 3, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1]
# (22) 13 [15, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1********************************************************************, 5, 3, 13, 3, 1,3, 5, 7, 5, 9, 1, 3, 5, 1, 5, 5, 5, 3, 5, 1, 5, 3, 7, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 3, 11, 7, 3, 1, 5, 3, 5, 11, 1, 3, 1, 11, 5, 3, 5, 5, 5, 1, 5, 9, 1, 3, 5, 1, 5, 5, 3, 1, 9, 1, 9,1, 3, 5, 5, 1, 5, 5, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 1, 5, 3, 7, 5, 3, 7, 3, 5, 7, 9, 1, 9,1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 13, 3, 1, 3, 5, 5, 1, 5, 3, 7, 9, 7, 3, 1, 3, 5, 7, 5, 3, 5, 5, 5, 1, 5, 5, 3, 1, 3, 5, 1, 9, 1, 3, 1, 9, 1, 9, 1, 5, 3, 7, 5, 3, 1, 3, 5, 5, 7, 3, 1, 5, 9, 7, 3, 1, 5, 3, 7, 9, 5, 1, 3, 7, 5, 5, 3, 1, 3, 5, 1, 5, 3, 5, 1, 9, 11, 1, 3, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 5, 5, 9, 5, 7, 3, 1, 3, 1, 3, 7, 5, 11, 3, 5, 1, 11, 3, 1, 3, 5, 7, 3, 1, 3, 1, 11, 9, 1, 3, 1, 3, 5, 1, 9, 1, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 5, 1, 3, 7, 5,3, 5, 1, 3, 5, 1, 5, 5, 3, 5, 5, 7, 5, 3, 1, 9, 1, 9, 1, 3, 1, 9, 1, 5, 3, 1, 9, 5, 1, 5, 3,1, 5, 3, 5, 7, 5, 3, 1, 11, 9, 5, 1, 3, 5, 1, 11, 3, 1, 3, 7, 5, 3, 1, 3, 1, 9, 1, 9, 5, 1, 3, 5, 1, 5, 3, 1, 9, 5, 1, 5, 3, 11, 5, 7, 5, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 5, 3, 5, 1,5, 3, 1, 3, 1, 9, 11, 1, 3, 11, 1, 5, 3, 1, 3, 5, 5, 1, 11, 5, 3, 17, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 7, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 11, 5, 3, 5, 1, 5, 3, 5, 5, 5, 1, 5, 3, 1,5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 1, 9, 1, 9, 1, 3, 13, 9, 1, 3, 1, 3, 5, 1, 5, 9, 5, 5, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 5, 7, 5, 9, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 5, 9, 1, 9, 5, 1, 3, 5, 7, 3, 1, 3, 11, 1, 5, 3, 1, 5, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3, 5, 1, 9, 1, 5, 9, 5, 5, 1, 5, 3, 1, 3, 1, 9, 1, 11, 3, 5, 5, 1, 11, 3, 5, 5, 1, 5, 3, 1, 5,3, 13, 3, 1, 5, 3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 5, 9, 1, 5, 3, 5, 1, 9, 1, 9, 1, 3, 1, 3, 7, 5, 3, 1, 3, 5, 5, 7, 3, 7, 3, 5, 7, 3, 1, 3, 1, 11, 5, 3, 5, 5, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 5, 3, 1, 9, 1, 9, 1, 5, 3, 5, 1, 5, 3, 1, 3, 5, 13, 3, 1, 5, 9, 7, 3, 1, 3, 1, 3, 7, 9, 7, 3,7, 5, 9, 1, 3, 5, 1, 5, 3, 5, 1, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 3, 5, 5, 1, 5, 5, 5, 9, 7,3, 1, 3, 5, 7, 5, 3, 7, 3, 5, 1, 5, 5, 3, 1, 3, 5, 11, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 7, 9, 1, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 7, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 5, 5, 1, 5, 5, 3, 1, 9, 11, 1, 3, 1, 3, 5, 1, 5, 3, 1, 15, 1, 5, 3, 1, 9, 5, 7, 3, 1, 3, 1, 11, 5, 9, 1, 3, 5, 1, 11, 3, 1, 3, 7, 5, 3, 1, 3, 1, 11, 9, 5, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 9, 5, 7,9, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 5, 3, 5, 7, 3, 1, 3, 1, 9, 11, 1, 3, 1, 9, 1, 5, 3, 1, 3, 5, 5, 1, 9, 1, 5, 3, 13, 5, 3, 1, 3, 7, 9, 5, 1, 3, 5, 1, 5, 5, 3, 1, 3, 7, 5, 3, 1, 3, 11, 1, 11, 3, 1, 3, 5, 1, 5, 3, 1, 9, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 7, 5, 3, 1, 3, 5, 1, 9, 1, 3, 1, 11, 9, 1, 3, 5, 5, 1, 5, 3, 5, 5, 5, 1, 5, 5, 5, 3, 5, 11, 1, 3, 5, 7, 5, 9, 1, 3, 7, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 5, 9, 1, 9, 1, 5, 3, 5, 7, 3, 5, 11, 1, 5, 3, 1, 5, 3, 5, 11, 1, 3, 1, 3, 13, 3, 5, 1, 3, 5, 1, 5, 9, 1, 9, 1, 5, 3, 1, 3, 11, 1, 9, 1, 3, 5, 5, 1, 5, 5, 3, 5, 5, 1, 9, 1, 5, 3, 5, 7, 3, 1, 5, 3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 3, 1, 9, 1, 5, 3, 1, 5, 9, 1, 9, 5, 1, 3, 7, 5, 3, 1, 3, 5, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 5, 11, 1, 5, 5, 3, 5, 5, 1, 5, 3, 1, 3, 1, 9, 1, 11, 5, 3, 5, 1, 9, 1, 3, 5, 5, 7, 3, 1, 5, 17, 3, 1, 3, 1, 3, 7, 9, 5, 1, 3, 7, 5, 5, 5, 3, 5, 1, 5, 3, 5, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 7, 5, 5, 3, 5, 7, 3, 1, 3, 1, 11, 5, 3, 11, 5, 1, 5, 5, 3, 1, 3, 5, 7, 5, 3, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 9, 1, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 5, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 9, 5, 1, 5, 3, 1, 5, 9, 7, 3, 1, 3, 13, 5, 3, 5, 1, 3, 5, 1, 11, 3, 1, 3, 7, 9, 1, 3, 1, 9, 1, 9, 5, 1,3, 7, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 9, 5, 7, 5, 5, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 5, 3, 5,1, 5, 3, 1, 3, 1, 9, 11, 1, 3, 1, 9, 1, 5, 3, 1, 3, 11, 1, 9, 1, 9, 13, 3, 1, 3, 1, 3, 7, 5,9, 1, 3, 5, 1, 11, 3, 1, 3, 5, 1, 5, 3, 1, 3, 13, 11, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5,3, 1, 5, 3, 5, 7, 3, 5, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 1, 3, 5, 11, 1, 3, 1, 11, 9, 1, 3,1, 9, 1, 5, 3, 5, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 5, 3, 5, 7, 15, 1, 3, 5, 1, 5, 5, 3, 1, 3, 7, 5, 3, 1, 5, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 15, 1, 5, 3, 7, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3,5, 1, 3, 5, 7, 9, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 5, 5, 1, 5, 5, 3, 5, 5, 1, 5, 5,5, 3, 5, 11, 1, 5, 3, 7, 5, 3, 5, 1, 3, 13, 5, 3, 1, 9, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 5, 3, 7, 5, 3, 5, 5, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 5, 5, 1, 5, 5, 3, 1, 9, 1, 5,3, 1, 3, 11, 1, 9, 1, 5, 3, 5, 1, 5, 5, 3, 5, 5, 11, 1, 5, 9, 7, 3, 1, 3, 1, 3, 7, 9, 5, 1, 3, 7, 5, 5, 3, 1, 3, 5, 1, 5, 3, 7, 9, 1, 9, 5, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 5, 5, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 7, 9, 1, 5, 5, 3, 5, 5, 7, 3, 1, 3, 1, 9, 1, 11, 3, 1, 3, 5, 1,9, 1, 3, 5, 7, 5, 3, 1, 5, 3, 13, 3, 5, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 9, 5, 1, 5, 9, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 9, 5, 7, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 11, 5, 3, 5, 5, 5, 1, 11, 3, 1, 3, 7, 5, 5, 3, 1, 9, 1, 9, 5, 1, 3, 5, 1, 5, 3, 1, 3, 5, 7, 5, 3, 1, 9, 5, 7,5, 3, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 11, 3, 5, 1, 5, 3, 1, 3, 1, 9, 11, 1, 3, 1, 9, 7, 3, 1, 3, 5, 5, 1, 9, 1, 5, 17, 3, 1, 3, 5, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 9, 1, 3, 11, 1, 11, 3, 1, 3, 7, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 5, 3, 13, 3, 5, 1, 9, 1,5, 5, 3, 1, 3, 5, 1, 9, 1, 3, 1, 21, 1, 3, 1, 3, 5, 1, 5, 3, 5, 11, 1, 5, 3, 1, 9, 5, 7, 3, 1, 3, 5, 7, 5, 9, 1, 3, 5, 1, 11, 3, 1, 3, 5, 1, 5, 3, 1, 5, 11, 9, 1, 3, 1, 3, 5, 7, 3, 1, 3, 11, 1, 5, 3, 1, 5, 3, 5, 11, 5, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 9, 1, 3, 5, 7, 3, 1, 3, 1,9, 1, 9, 1, 3, 11, 1, 5, 5, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 5, 5, 3, 7, 9, 5, 1, 3, 5, 7, 5, 3, 1, 11, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 7, 5, 3, 1, 9, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 5, 5, 5, 7, 5, 3, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 9, 5, 1, 5, 3, 1, 3, 5, 5, 7, 5, 5, 9, 11, 1, 3, 1, 3, 7, 9, 5, 1, 3, 7, 5, 5, 3, 1, 3, 5, 1, 5, 3, 5, 1, 9, 1,9, 1, 5, 3, 5, 1, 5, 3, 5, 5, 5, 1, 5, 5, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 7, 3, 5, 1, 5, 5, 3, 1, 9, 7, 3, 1, 3, 11, 1, 9, 1, 3, 1, 3, 5, 1, 11, 3, 5, 7, 9, 1, 5, 3, 5, 7, 3, 5, 1, 3,7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 5, 5, 1, 5, 5, 5, 9, 1, 9, 5, 1, 3, 5, 1, 5, 3, 1, 9, 5, 1,5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 11, 5, 3, 5, 1, 9, 1, 11, 3, 5, 7, 5, 3, 1, 3, 1, 9, 1, 15,1, 3, 5, 1, 9, 1, 3, 5, 5, 1, 5, 3, 1, 9, 13, 5, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 5, 3, 5, 1, 5, 3, 5, 1, 9, 11, 1, 3, 1, 9, 1, 5, 3, 1, 3, 5, 5, 11, 1, 5, 3, 13, 3, 1, 3, 1, 11, 5, 3, 5, 5, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 5, 3, 11, 1, 11, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 7, 9, 1, 5, 9, 1, 3, 5, 1, 9, 1, 3, 1, 11, 9, 1, 3,1, 3, 5, 7, 3, 5, 5, 5, 1, 5, 3, 1, 5, 9, 7, 3, 1, 3, 5, 7, 5, 9, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 9, 1, 5, 9, 1, 9, 1, 3, 1, 3, 13, 3, 1, 3, 11, 1, 5, 3, 1, 5, 3, 5, 11, 1, 5, 3, 7, 5,3, 5, 1, 3, 5, 1, 5, 9, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 11, 1, 3, 5, 5, 1, 5, 5, 3, 11, 1, 5, 3, 1, 9, 5, 7, 3, 1, 5, 3, 7, 5, 9, 1, 3, 5, 13, 3, 1, 9, 1, 5, 3, 1, 3, 1, 11, 9, 1, 3, 1, 3, 7, 5, 3, 1, 3, 5, 5, 1, 5, 3, 7, 3, 5, 7, 3, 5, 1, 3, 7, 5, 3, 5, 5, 5, 1, 5, 5, 3, 1, 3, 5, 7, 3, 1, 3, 1, 9, 1, 9, 1, 5, 9, 1, 5, 3, 1, 3, 5, 5, 7, 3, 1, 5, 9, 7, 5, 3, 1, 3, 7, 9, 5, 1, 3, 7, 5, 5, 3, 1, 3, 7, 5, 3, 5, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 9, 5, 1, 5, 11, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 7, 3, 5, 7, 5, 3, 1, 3, 5, 7, 3, 1, 3, 1, 9, 1, 9, 1, 3, 5, 5, 1, 9, 1, 3, 5, 7, 5, 5, 5, 3, 5, 11, 5, 1, 3, 7, 5, 3, 5, 1, 3, 7, 5, 5, 3, 5, 5, 1, 5, 5,3, 1, 9, 1, 9, 1, 5, 3, 5, 1, 5, 3, 11, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 17, 3, 5, 1, 3, 5, 1, 11, 3, 1, 11, 5, 3, 1, 3, 11, 1, 9, 5, 1, 3, 5, 1, 5, 5, 3, 5, 5, 1, 9, 1, 9, 5, 7, 5, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 5, 3, 5, 1, 5, 3, 1, 5, 9, 11, 5, 1, 9, 1, 5, 3, 1,3, 5, 5, 1, 9, 1, 5, 3, 13, 3, 1, 3, 1, 3, 7, 5, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 5, 3, 1, 3, 11, 1, 11, 3, 1, 3, 5, 1, 9, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 13, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 5, 3, 5, 1, 9, 5, 1, 11, 9, 1, 3, 1, 3, 5, 1, 5, 3, 5, 5, 5, 7, 3, 1, 5, 3, 5, 7,3, 1, 3, 13, 5, 9, 5, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 5, 5, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 3, 13, 5, 3, 1, 5, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 9, 1, 3, 5, 1, 5, 3, 1, 3, 1,9, 1, 9, 1, 3, 5, 5, 7, 5, 3, 5, 5, 1, 5, 3, 1, 5, 9, 7, 3, 1, 9, 7, 5, 3, 5, 1, 3, 5, 7, 5,3, 1, 9, 1, 9, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 7, 5, 3, 1, 3, 5, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1,5, 3, 7, 5, 3, 5, 5, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 11, 1, 5, 3, 5, 1, 5, 3, 1, 3, 11, 7, 3, 1, 15, 7, 3, 1, 3, 1, 3, 7, 15, 1, 3, 7, 11, 3, 1, 3, 5, 1, 5, 3, 5, 1, 11, 9,1, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 5, 5, 3, 5, 7, 3, 5, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5,5, 3, 1, 3, 5, 7, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 9, 1, 9, 1, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 9,1, 3, 7, 9, 5, 1, 3, 5, 1, 5, 5, 3, 5, 7, 5, 5, 3, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 9,5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 3, 1, 11, 5, 3, 5, 1, 3, 5, 13, 3, 1, 3, 7, 5, 3, 1, 3, 1, 9, 1, 9, 5, 5, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 5, 9, 5, 13, 3, 1, 3, 7, 5, 3, 5, 1, 3, 7, 5, 5, 5,3, 5, 1, 5, 3, 1, 3, 1, 9, 11, 1, 5, 9, 1, 5, 3, 5, 5, 5, 1, 9, 1, 5, 3, 13, 3, 1, 3, 1, 3, 13, 3, 5, 1, 3, 5, 1, 5, 5, 3, 1, 9, 1, 5, 3, 1, 3, 11, 1, 11, 3, 1, 3, 5, 1, 5, 5, 3, 5, 5, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 1, 3, 5, 1, 9, 1, 5, 11, 9, 5, 1, 3, 5, 1, 5, 3, 5, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 5, 7, 5, 9, 1, 9, 1, 5, 5, 3, 5, 5, 1, 5, 3, 1, 5, 9, 1, 11, 3, 1, 3, 5, 11, 1, 3, 11, 1, 5, 3, 1, 5, 3, 17, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 11, 3, 5, 1, 5, 3, 5, 1, 9, 1, 9, 1, 3, 5, 5, 1, 5, 5, 3, 5, 5, 7, 3,1, 5, 3, 5, 7, 3, 1, 5, 11, 5, 3, 5, 5, 5, 7, 5, 3, 1, 9, 1, 5, 5, 3, 1, 9, 1, 9, 1, 3, 1, 3, 7, 5, 3, 1, 3, 5, 7, 5, 3, 7, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 11, 5, 1, 5, 9, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 5, 5, 7, 3, 1, 5, 9, 7, 3, 1, 3, 5, 7, 9, 5, 1, 3, 7, 5, 5, 3, 1, 3, 5, 1, 9, 5, 1, 9, 1, 9, 1, 3, 1, 3, 7, 5, 3, 1, 3, 5, 5, 1, 5, 5, 5, 3, 5, 7, 3, 1, 5, 3, 7, 5, 3, 7, 3, 5, 1, 5, 5, 3, 1, 3, 5, 7, 3, 1, 3, 1, 9, 11, 1, 3, 1, 3,5, 1, 9, 1, 3, 13, 5, 3, 1, 9, 5, 7, 3, 5, 1, 3, 7, 5, 9, 1, 3, 5, 1, 11, 3, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 9, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 5, 1, 11, 5, 3, 5, 1, 3, 5, 1, 11, 3, 1, 3, 13, 3, 1, 3, 1, 9, 1, 9, 5, 1, 9, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 9,5, 7, 5, 3, 1, 3, 7, 9, 5, 1, 3, 5, 1, 5, 5, 5, 3, 7, 5, 3, 1, 3, 1, 9, 11, 1, 3, 1, 9, 1, 5, 3, 1, 9, 5, 1, 9, 7, 3, 13, 3, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 3, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 11, 3, 5, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 5, 5, 3, 5, 11, 1, 3, 1, 3, 13, 3, 5, 1,11, 5, 5, 3, 1, 3, 5, 1, 9, 1, 3, 1, 11, 9, 1, 5, 3, 5, 1, 5, 3, 5, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 5, 13, 9, 1, 3, 5, 1, 5, 5, 3, 1, 9, 1, 5, 3, 1, 15, 1, 9, 1, 3, 1, 3, 5, 7, 5, 3, 11, 1, 9, 1, 5, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 9, 1, 3, 5, 1, 5, 3, 1,5, 9, 1, 9, 5, 5, 5, 1, 5, 5, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 5, 3, 7, 5, 3, 5, 1, 9,7, 5, 3, 11, 1, 5, 3, 1, 3, 1, 9, 1, 11, 3, 1, 3, 7, 9, 1, 3, 5, 5, 1, 5, 3, 7, 3, 13, 3, 1,3, 1, 3, 7, 5, 3, 5, 5, 5, 1, 5, 5, 5, 3, 5, 1, 5, 3, 5, 1, 9, 1, 9, 1, 5, 3, 5, 1, 5, 3, 1,3, 5, 5, 7, 3, 1, 5, 9, 7, 3, 1, 3, 1, 11, 9, 5, 5, 7, 5, 5, 3, 1, 3, 5, 1, 5, 9, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 7, 5, 5, 5, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 9, 1, 3, 5, 7, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 5, 11, 1, 3, 5, 7, 5, 3, 1, 5, 9, 7, 3, 5, 5, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 5, 5, 1, 11, 3, 1, 9, 1, 9, 1, 3, 1, 3, 7, 5, 3, 1, 9, 5,1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 5, 11, 5, 3, 5, 1, 3, 5, 1, 11, 3, 1, 3, 7, 5, 3, 1, 3, 1, 9, 11, 5, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 5, 3, 1, 9, 5, 7, 5, 3, 1, 3, 7, 5, 9, 1, 3, 5, 1, 11, 5, 3, 5, 1, 5, 3, 1, 3, 1, 21, 1, 3, 1, 9, 1, 5, 3, 1, 3, 5, 5, 1, 9, 1, 5, 3, 13, 3, 5, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 7, 3, 1, 3, 11, 1, 11, 3, 1, 9, 1, 5, 3, 1, 3, 5,5, 1, 5, 3, 1, 5, 3, 5, 7, 5, 3, 1, 3, 17, 5, 1, 9, 1, 5, 5, 3, 1, 3, 7, 9, 1, 3, 1, 11, 9, 1, 3, 1, 3, 5, 1, 5, 3, 11, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 3, 5, 7, 5, 9, 1, 3, 5, 7, 5, 3, 1,3, 5, 1, 5, 3, 1, 5, 9, 1, 9, 1, 3, 5, 5, 7, 3, 1, 3, 11, 1, 5, 5, 5, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 7, 5, 9, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 9, 5, 1, 5, 9, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 5, 3, 13, 3, 5, 1, 3, 5, 7, 5, 3, 1, 9, 1, 5, 3, 1, 3, 11, 1, 9, 1, 3, 1, 3, 7, 5, 5, 3, 5, 5, 1, 9, 7, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 5, 5, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 5, 9, 1, 9, 7, 3, 5, 1, 5, 3, 1, 3, 5, 5, 7, 3, 1, 5, 9, 7, 3, 1, 3, 1, 3, 7, 9, 5, 1, 11, 5, 5, 3, 5, 5, 1, 5, 3, 5, 1, 9, 1, 11, 3, 1, 3, 5, 1, 9, 1, 3, 5, 5, 1, 5, 5,5, 3, 13, 3, 1, 3, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 5, 5, 3, 5, 7, 3, 5, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 9, 1, 3, 5, 13, 3, 1, 5, 3, 5, 7, 3, 5, 1, 11, 5, 3, 5, 5, 5, 1, 5, 5, 3, 5, 5, 1, 5,5, 3, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 5, 3, 1, 9, 7, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 11, 5, 3, 7, 3, 5, 1, 15, 1, 3, 7, 5, 3, 1, 3, 1, 9, 1, 9, 5, 1, 3, 5, 7, 3, 1, 3, 5, 5, 1, 5, 3, 1, 15, 7, 5, 3, 5, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 5, 3, 5, 1, 9, 1, 3, 1, 9, 11, 1, 3, 1, 11, 5, 3, 1, 3, 5, 5, 1, 9, 1, 5, 3, 13, 3, 1, 5, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5,3, 1, 3, 11, 13, 3, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 5, 3, 1, 9, 5, 7, 3, 1, 3, 1, 3, 13, 9, 1, 9, 1, 11, 3, 1, 3, 5, 1, 9, 1, 3, 1, 11, 9, 1, 3, 1, 3, 5, 1, 5, 3, 5, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 5, 5, 7, 5, 9, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 7, 3, 1, 5, 9, 1, 9, 1, 3, 1, 9, 7,3, 1, 3, 11, 1, 5, 3, 1, 5, 3, 5, 13, 3, 1, 3, 7, 9, 5, 1, 3, 5, 1, 5, 9, 1, 3, 7, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 5, 5, 1, 5, 5, 9, 5, 1, 5, 3, 7, 3, 5, 7, 3, 1, 5, 3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 3, 1, 9, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 5, 7, 5, 3, 1, 3, 5, 5, 1, 5, 11, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3, 5, 5, 7, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 5, 3, 5, 1, 5, 3, 5, 5, 5, 7, 3, 1, 5, 9, 7, 3, 1, 3, 1, 3, 17, 5, 1, 3, 7, 5, 5, 3, 1, 9, 1, 5, 3, 5, 11,1, 9, 1, 3, 1, 3, 5, 1, 5, 5, 3, 5, 5, 1, 11, 5, 3, 5, 7, 3, 1, 3, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 5, 3, 1, 3, 5, 7, 3, 1, 5, 9, 1, 9, 5, 1, 3, 5, 1, 9, 1, 3, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 5, 1, 3, 7, 5, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 5, 5, 3, 1, 9, 1, 11, 3, 1, 3, 5, 1, 9, 1, 9, 5, 1, 5, 3, 1, 5, 3, 13, 3, 1, 3, 1, 11, 5, 3, 5, 1, 3, 5, 1, 11, 5, 3, 7, 5, 3, 5, 1, 9, 1, 9, 5, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 7, 3, 1, 9, 5, 7, 5, 3, 1, 11, 5, 3, 5, 5, 5, 1, 5, 5,5, 3, 5, 1, 5, 5, 3, 1, 9, 11, 1, 3, 1, 9, 1, 5, 3, 1, 3, 5, 7, 9, 1, 5, 3, 13, 3, 1, 3, 1, 3, 7, 5, 3, 7, 3, 5, 1, 5, 9, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 11, 3, 1, 3, 5, 7, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 9, 7, 3, 1, 3, 5, 13, 3, 5, 1, 9, 1, 5, 5, 3, 1, 3, 5, 1, 9, 1, 3, 1, 11, 9,1, 3, 1, 3, 7, 5, 3, 5, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 9, 7, 5, 9, 1, 3, 5, 1, 5, 5, 3,1, 3, 5, 1, 5, 3, 1, 5, 9, 11, 1, 3, 1, 3, 5, 7, 3, 1, 3, 11, 1, 5, 3, 1, 9, 5, 11, 1, 3, 1,3, 7, 5, 9, 1, 3, 5, 1, 15, 1, 3, 5, 1, 5, 3, 1, 3, 1, 11, 9, 1, 3, 5, 5, 1, 5, 5, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 7, 3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 3, 1, 9, 7, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 11, 5, 3, 1, 3, 5, 5, 1, 5, 3, 7, 3, 5, 7, 5, 3, 1, 3, 7, 9, 5, 5, 5, 1, 5, 5, 3, 1,3, 7, 5, 3, 1, 3, 1, 9, 1, 9, 1, 5, 3, 5, 1, 5, 3, 1, 9, 5, 7, 3, 7, 9, 7, 3, 1, 3, 1, 3, 7,9, 5, 1, 3, 13, 5, 3, 1, 3, 5, 1, 5, 3, 5, 1, 9, 1, 9, 1, 3, 5, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 5, 5, 3, 5, 11, 1, 3, 1, 3, 7, 5, 3, 7, 3, 7, 5, 5, 3, 1, 3, 5, 7, 3, 1, 3, 1, 9, 1, 9, 1, 5, 3, 5, 1, 9, 5, 5, 7, 5, 3, 1, 5, 3, 5, 7, 3, 5, 1, 3, 13, 3, 5, 1, 3, 5, 1, 5, 5, 3, 11, 1, 5, 5, 3, 11, 1, 9, 1, 3, 1, 3, 5, 1, 5, 5, 9, 5, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 1, 11, 5, 3,5, 1, 3, 5, 1, 11, 3, 1, 3, 7, 5, 3, 1, 5, 9, 1, 9, 5, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 9, 5, 7, 5, 3, 1, 3, 7, 5, 3, 5, 1, 9, 1, 5, 5, 9, 5, 1, 5, 3, 1, 3, 1, 9, 13, 3, 1, 9, 1, 9, 1, 3, 5, 5, 1, 9, 1, 5, 3, 13, 3, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 5, 3, 5, 1,5, 3, 5, 11, 1, 11, 3, 1, 3, 5, 1, 5, 3, 1, 3, 5, 5, 7, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 17, 3,5, 11, 1, 5, 5, 3, 1, 3, 5, 1, 11, 3, 1, 11, 9, 1, 3, 1, 3, 5, 1, 5, 3, 5, 5, 7, 5, 3, 1, 5,3, 5, 7, 3, 1, 3, 5, 7, 5, 11, 3, 5, 1, 5, 9, 1, 3, 5, 1, 5, 3, 1, 5, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 3, 11, 1, 5, 3, 1, 5, 9, 11, 1, 3, 5, 7, 5, 3, 5, 1, 3, 5, 1, 5, 9, 1, 3, 5, 1, 9,1, 3, 1, 9, 1, 9, 1, 3, 5, 7, 5, 5, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 5, 3, 7, 5, 3, 5,1, 3, 5, 7, 5, 3, 1, 9, 1, 5, 3, 1, 3, 1, 9, 11, 1, 3, 1, 3, 7, 5, 3, 1, 3, 11, 1, 5, 3, 11,5, 7, 3, 1, 3, 1, 3, 7, 5, 9, 5, 5, 1, 11, 3, 1, 3, 5, 1, 5, 3, 1, 3, 1, 11, 9, 1, 5, 3, 5, 1, 5, 3, 1, 3, 5, 5, 7, 3, 1, 5, 9, 7, 3, 5, 1, 3, 7, 9, 5, 1, 3, 7, 5, 5, 3, 1, 3, 5, 7, 3, 5, 1, 9, 1, 9, 1, 3, 1, 9, 1, 5, 3, 1, 3, 5, 5, 1, 5, 5, 5, 3, 5, 7, 5, 3, 1, 3, 7, 9, 7, 3, 5, 1, 5, 5, 3, 1, 3, 13, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 5, 1, 9, 1, 9, 7, 5, 3, 7, 3, 5, 7,3, 5, 1, 3, 7, 5, 3, 5, 1, 3, 5, 7, 5, 3, 5, 5, 1, 5, 5, 3, 1, 9, 1, 9, 1, 3, 5, 5, 1, 5, 3,1, 9, 5, 1, 5, 5, 5, 3, 5, 11, 1, 3, 1, 11, 5, 3, 5, 1, 3, 7, 11, 3, 1, 3, 7, 5, 3, 1, 3, 1,9, 1, 9, 7, 3, 5, 1, 5, 3, 5, 5, 5, 1, 5, 3, 1, 9, 5, 7, 5, 3, 1, 3, 13, 3, 5, 1, 3, 5, 1, 5, 5, 5, 9, 1, 5, 3, 1, 3, 11, 11, 1, 3, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 5, 3, 13, 3, 1, 3, 1, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 5, 3, 1, 3, 5, 1, 5, 3, 1, 15, 1]
# (11) 17 [17, 3, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5********************************************************************, 1, 5, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 3, 1, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1, 5, 11, 5, 3, 5, 5, 5, 1, 5, 9, 1, 3, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 5, 5, 3, 5, 7, 9, 1, 5, 3, 5, 7, 5, 5, 3, 7, 5, 3, 7, 3, 5, 7, 9, 11, 1, 5, 3, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 13, 3, 1, 3, 5, 5, 7, 3, 7, 9, 7, 3, 1, 3, 5, 7, 5, 3, 5, 5, 5, 1, 5]
# (27) 19 [21, 5, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5, 7, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1********************************************************************, 5, 11, 5, 9, 5, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 5, 5, 3, 5, 7, 9, 7, 3, 5, 7, 5, 5, 3, 7, 5, 3, 7, 3, 13, 9, 11, 1, 9, 1, 3, 1, 9, 1, 9, 1, 3, 1, 3, 13, 3, 1, 3, 11, 7, 3, 7, 9, 7, 3, 1, 3, 5, 7, 5, 3, 5, 5, 5, 1, 5]
# (47) 23 [27, 1, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5, 7, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1, 17, 5, 9, 5, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 11, 3, 5, 7, 9, 7, 9, 7, 5, 5, 3, 7, 5, 3, 7, 3, 13, 9, 11, 1, 9, 1, 3, 1, 9********************************************************************, 1, 11, 3, 1, 3, 13, 3, 1, 3, 11, 7, 3, 7, 9, 7, 3, 5, 5, 7, 5, 3, 5, 5, 7, 5, 11, 3, 5, 1, 9, 1, 5, 9, 1, 9, 1, 5, 3, 13, 3, 1, 3, 5, 5, 7, 5, 5, 17, 3, 1, 9, 7, 9, 5, 1, 3, 7, 11, 3, 5, 5, 1, 5]
# (16) 29 [29, 5, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5, 7, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1, 17, 5, 9, 5, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 11, 3, 5, 7, 9, 7, 9, 7, 5, 5, 3, 7, 5, 3, 7, 3, 13, 9, 11, 1, 9, 1, 3, 1, 9, 13, 3, 1, 3, 13, 3, 1, 3, 19, 3, 7, 9, 7, 3, 5, 5********************************************************************, 7, 5, 3, 5, 5, 7, 5, 11, 3, 5, 1, 9, 1, 5, 9, 1, 9, 1, 5, 17, 3, 1, 3, 5, 5, 7, 5, 5, 17, 3, 1, 9, 7, 9, 5, 5, 7, 11, 3, 5, 5, 1, 5, 11, 9, 11, 5, 1]
# (57) 31 [35, 3, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5, 7, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1, 17, 5, 9, 5, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 11, 3, 5, 7, 9, 7, 9, 7, 5, 5, 3, 7, 5, 3, 7, 3, 13, 9, 11, 1, 9, 1, 3, 1, 9, 13, 3, 1, 3, 13, 3, 1, 3, 19, 3, 7, 9, 7, 3, 5, 5, 13, 3, 5, 5, 7, 5, 11, 3, 5, 1, 9, 1, 5, 9, 1, 9, 1, 5, 17, 3, 1, 3, 5, 5, 7, 5, 5, 21, 1, 9, 7, 9, 5, 5, 7, 11, 3, 5, 5, 1, 5, 11, 9, 17, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 5, 33, 5********************************************************************, 1, 3, 7, 17, 9, 13, 3, 1, 3, 5, 7, 3, 1, 5, 11, 9, 1, 3, 1, 3, 5, 11, 5, 5, 7, 11, 5, 3, 5, 7, 3, 7, 3, 7, 5, 3, 5, 1, 3, 5, 1, 5, 9, 19, 5, 3, 1, 11, 11, 3, 1, 9, 11, 1, 9, 5, 1, 5, 5, 5, 3, 13, 5, 3, 1, 11, 9, 11, 7, 15, 1, 11, 5, 3, 1, 3, 1, 9, 11, 5, 5, 13, 3, 1, 15, 1, 9, 11, 5, 7, 5, 3, 1, 3, 7, 5, 3, 5, 1, 9, 13, 9, 5, 11, 1, 3, 1, 9, 11, 1, 15, 1, 5, 3, 1, 9, 7, 11, 5, 3, 19, 3, 1, 3, 7, 15, 1, 3, 7, 5, 9, 1, 3, 5, 1, 5, 5, 3, 11, 1, 21, 5, 1, 5, 3, 5, 13, 5, 3, 1, 5, 3, 5, 11, 5, 1, 3, 13, 3, 5, 11, 7, 5, 3, 1, 11, 9, 1, 17, 9, 5, 1, 3, 5, 1, 5, 21, 11, 1, 15, 7, 3, 1, 3, 5, 13, 9, 1, 3, 7, 5, 5]
# (44) 37 [39, 1, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5, 7, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1, 17, 5, 9, 5, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 11, 3, 5, 7, 9, 7, 9, 7, 5, 5, 3, 7, 5, 3, 7, 3, 13, 9, 11, 1, 9, 1, 3, 1, 9, 13, 3, 1, 3, 13, 3, 1, 3, 19, 3, 7, 9, 7, 3, 5, 5, 13, 3, 5, 5, 7, 5, 11, 3, 5, 1, 9, 1, 5, 9, 1, 9, 1, 5, 17, 3, 1, 3, 5, 5, 7, 5, 5, 21, 1, 9, 7, 9, 5, 5, 7, 11, 3, 5, 5, 1, 5, 11, 9, 17, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 5, 33, 5, 5, 7, 17, 9, 13, 3, 1, 3, 5, 7, 3, 1, 5, 11, 9, 1, 3, 1, 3, 5, 11, 11, 7, 11, 5, 3, 5, 7, 3, 7, 3, 13, 3, 5, 1, 3, 5, 1, 5, 9, 19, 5, 3, 1********************************************************************, 11, 11, 3, 1, 9, 11, 1, 9, 7, 5, 5, 5, 3, 13, 5, 3, 1, 11, 9, 11, 7, 15, 1, 11, 5, 3, 1, 3, 1, 9, 11, 5, 5, 13, 3, 1, 15, 1, 21, 5, 7, 5, 3, 1, 3, 7, 5, 3, 5, 1, 9, 13, 9, 5, 11, 1, 3, 1, 9, 11, 1, 15, 1, 5, 3, 1, 9, 7, 11, 5, 23, 3, 1, 3, 7, 15, 1, 3, 7, 15, 1, 3, 5, 1, 5, 5, 3, 11, 1, 21, 5, 1, 5, 3, 5, 13, 5, 3, 1, 5, 3, 5, 11, 5, 1, 3, 13, 3, 5, 11, 7, 5, 3, 13, 9, 1, 17, 9, 5, 1, 3, 5, 1, 5, 21, 11, 1, 15, 7, 3, 1, 9, 13, 9, 1, 3, 7, 5, 5, 3, 1, 3, 5, 7, 3, 1, 5, 9, 1]
# (20) 41 [41, 3, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5, 7, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1, 17, 5, 9, 5, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 11, 3, 5, 7, 9, 7, 9, 7, 5, 5, 3, 7, 5, 3, 7, 3, 13, 9, 11, 1, 9, 1, 3, 1, 9, 13, 3, 1, 3, 13, 3, 1, 3, 19, 3, 7, 9, 7, 3, 5, 5, 13, 3, 5, 5, 7, 5, 11, 3, 5, 1, 9, 1, 5, 9, 1, 9, 1, 5, 17, 3, 1, 3, 5, 5, 7, 5, 5, 21, 1, 9, 7, 9, 5, 5, 7, 11, 3, 5, 5, 1, 5, 11, 9, 17, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 5, 33, 5, 5, 7, 17, 9, 13, 3, 1, 3, 5, 7, 3, 1, 5, 11, 9, 1, 3, 1, 3, 5, 11, 11, 7, 11, 5, 3, 5, 7, 3, 7, 3, 13, 3, 5, 1, 3, 5, 1, 5, 9, 19, 5, 3, 1, 23, 3, 1, 9, 11, 1, 9, 7, 5, 5, 5, 17, 5, 3, 1, 11, 9, 11, 7, 15********************************************************************, 1, 11, 5, 3, 1, 3, 1, 9, 11, 5, 5, 17, 1, 15, 1, 21, 5, 7, 5, 3, 1, 3, 7, 5, 3, 5, 1, 9, 13, 9, 5, 11, 1, 3, 1, 9, 11, 1, 15, 1, 5, 3, 1, 9, 7, 17, 23, 3, 1, 3, 7, 15, 1, 3, 7, 15, 1, 3, 5, 1, 5, 5, 3, 11, 1, 21, 5, 1, 5, 3, 5, 13, 5, 3, 1, 5, 3, 5, 11, 5, 5, 13, 3, 5, 11, 7, 5, 3, 13, 11, 17, 9, 5, 1, 3, 5, 1, 5, 21, 11, 1, 15, 7, 3, 1, 9, 13, 9, 1, 3, 7, 5, 5, 3, 1, 3, 5, 7, 3, 1, 5, 9, 1, 9, 7, 3, 13, 5, 3, 11]
# 43 [45, 5, 5, 1, 5, 3, 1, 5, 3, 5, 7, 3, 1, 3, 1, 3, 13, 3, 5, 1, 9, 1, 5, 5, 3, 5, 5, 1, 9, 1, 3, 1, 11, 11, 3, 1, 3, 5, 1, 9, 5, 5, 5, 1, 5, 3, 1, 9, 13, 3, 1, 3, 13, 5, 9, 1, 3, 5, 7, 5, 5, 3, 5, 7, 3, 7, 9, 1, 9, 1, 5, 3, 5, 7, 3, 1, 3, 11, 7, 3, 7, 3, 5, 11, 1, 17, 5, 9, 5, 5, 1, 5, 9, 5, 5, 1, 5, 5, 3, 1, 11, 9, 1, 3, 5, 5, 1, 11, 3, 5, 7, 9, 7, 9, 7, 5, 5, 3, 7, 5, 3, 7, 3, 13, 9, 11, 1, 9, 1, 3, 1, 9, 13, 3, 1, 3, 13, 3, 1, 3, 19, 3, 7, 9, 7, 3, 5, 5, 13, 3, 5, 5, 7, 5, 11, 3, 5, 1, 9, 1, 5, 9, 1, 9, 1, 5, 17, 3, 1, 3, 5, 5, 7, 5, 5, 21, 1, 9, 7, 9, 5, 5, 7, 11, 3, 5, 5, 1, 5, 11, 9, 17, 1, 3, 5, 1, 5, 3, 1, 3, 11, 1, 5, 33, 5, 5, 7, 17, 9, 13, 3, 1, 3, 5, 7, 3, 1, 5, 11, 9, 1, 3, 1, 3, 5, 11, 11, 7, 11, 5, 3, 5, 7, 3, 7, 3, 13, 3, 5, 1, 3, 5, 1, 5, 9, 19, 5, 3, 1, 23, 3, 1, 9, 11, 1, 9, 7, 5, 5, 5, 17, 5, 3, 1, 11, 9, 11, 7, 15, 13, 5, 3, 1, 3, 1, 9, 11, 5, 5, 17, 1, 15, 1, 21, 5, 7, 5, 3, 1, 3, 7, 5, 9, 1, 9, 13, 9, 5, 11, 1, 3, 1, 9, 11, 1, 15, 1, 5, 3, 1, 9, 7, 17, 23, 3, 1, 3, 7, 15, 1, 3, 7, 15, 1, 3, 7, 5, 5, 3, 11, 1, 21, 5, 1, 5, 3, 5, 13, 5, 3, 1, 5, 3, 5, 11, 5, 5, 13, 3, 5, 11, 7, 5, 3, 13, 11, 17, 9, 7, 3, 5, 1, 5, 21, 11, 1, 15, 7, 3, 11, 13, 9, 1, 3, 7, 5, 5, 3, 1, 3, 5, 7, 3, 1, 5, 9, 1, 9, 7, 3, 13, 5, 3, 11, 1, 5, 3, 1, 5, 9]
# python to generate a distribution given a prime
# can generate complete patterns given enough samples
# only set up to work up through 61 right now, but can modify it to work with higher primes
def display(number, count, minimum = 0):
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61]
numbers = [[(c + 1)*number, True] for c in range(count)]
for prime in primes:
for index in range(prime - 1, len(numbers), prime):
# print(f'({minimum} < {prime} or {numbers[index][0]}/{number} ({numbers[index][0]/number}) == {prime})')
numbers[index][1] = (minimum < prime or prime > number) and numbers[index][1] and (minimum < prime or numbers[index][0]/number == prime)
numbers = [item for sub in numbers if sub[1] for item in sub if type(item) == int]
return numbers
def pattern(numbers):
prime = numbers[0]
skips = []
for index in range(len(numbers)):
if index == len(numbers) - 1:
break
skips.append(int((numbers[index + 1] - numbers[index]) / prime - 1))
return skips
def find_pattern(numbers):
for x in range(int(len(numbers)/2), 0, -1):
is_pattern = True
for y in range(x):
if numbers[y] != numbers[y + x]:
is_pattern = False
break
if is_pattern:
return find_pattern(numbers[:x])
return numbers
def generate_pattern(number, size, minimum = 0):
return pattern(display(number, size, minimum))
def skip_to_delta(numbers, prime):
return [number*prime + prime for number in numbers]
def delta_pattern(number, size):
return skip_to_delta(find_pattern(generate_pattern(number, size)), number)
number = 43
peek = 400
samples = 5000
the_pattern = find_pattern(generate_pattern(number, samples, number))
print(f'{the_pattern[:peek]}')
# print(len(the_pattern))
# print(f'{the_pattern[:peek]} ... {the_pattern[len(the_pattern) - peek:]}')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment