Last active
December 18, 2023 04:01
-
-
Save Enkerli/dc9dcf317a015b0ce02ab596e02cee24 to your computer and use it in GitHub Desktop.
Simple Python code to create MIDI files from melodic patterns formatted as arrays of intervals in semitones (from #DigThatLick). Created with the kind help of ChatGPT 4 (because I’m a noncoder and it was a valuable learning exercise).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Pattern | ID | Instances | |
---|---|---|---|
[-1, -1, -1, -2, -2, -1] | r3prd0u5e1 | 127 | |
[-1, -1, -1, -1, -1, -2] | k68sn02uof | 126 | |
[-3, 1, 2, 1, 2, 2] | 2bf2a3yced | 122 | |
[-2, -1, -2, -2, -2, -1] | lv7dtm7aeu | 110 | |
[-2, -1, -1, -1, -1, -1] | pghi0goc5x | 106 | |
[-2, -1, -2, -2, -1, -1] | 7b2ryh0s2e | 98 | |
[1, 2, 2, 2, 1, 2] | yt0htbzb45 | 95 | |
[2, 1, 2, 2, 2, 1] | janxn6gkmj | 94 | |
[-1, -2, -2, -2, -1, -2] | 6sjw0i0kzw | 93 | |
[-2, -2, -1, -2, -2, -2] | vqa271mzru | 88 | |
[-1, -1, -1, -1, -2, -1] | 06xg6x4q47 | 83 | |
[-1, -1, -2, -1, -2, -1] | aruwh8so82 | 83 | |
[-2, -2, -2, -1, -2, -2] | hiwu2n5v5n | 80 | |
[1, -1, -1, -1, -1, -1] | j4xv9o9o82 | 78 | |
[-1, -1, -1, -2, -1, -2] | ue3mz8p5r9 | 73 | |
[-1, -2, -1, -1, -1, -1] | vkjippytri | 73 | |
[2, 2, 1, 2, 2, 2] | 6h9jb9eo9o | 71 | |
[2, 2, 2, 1, 2, 2] | zv3suhltyi | 71 | |
[-1, -2, -2, -1, -1, -1] | afm41109og | 70 | |
[-1, -1, -1, -2, -1, -1] | qpi42qiz15 | 67 | |
[1, 2, 1, 2, 2, 3] | rjm5xnhqx1 | 64 | |
[3, -3, 1, 2, 1, 2] | hyzodowcve | 62 | |
[-2, -1, -2, -2, 2, 2] | 86ggrbch8t | 61 | |
[1, 1, 1, -1, -1, -1] | 47ixwv50wu | 61 | |
[2, 1, 2, 2, 3, -1] | cnj69rfh6s | 61 | |
[-1, -1, -1, -1, -1, -1, -2] | 5djhcbgq2n | 60 | |
[-1, -1, -2, -2, -1, -2] | zgsbjbf19o | 60 | |
[1, 2, 1, 2, 2, 2] | wssyhmwqxw | 60 | |
[-2, -2, -1, -2, -2, -2, -1] | cn0ru26du2 | 59 | |
[-1, -2, -2, -1, -2, -1] | r9e8iu8nom | 58 | |
[-2, -2, -1, -1, -1, -1] | fyp0mfxc4n | 58 | |
[-1, -1, -2, -1, -2, -2] | wxagva22fs | 57 | |
[-2, -2, -1, -2, -2, -1, -1] | ay4c561p9y | 55 | |
[-1, -1, -2, -1, -1, -1] | aw6qoxytb6 | 53 | |
[-1, -2, -2, -2, -1, -2, -2] | y4vlg0d2xt | 53 | |
[-2, -2, -1, -1, -1, -2] | q3a3xn2qkz | 53 | |
[-1, -1, -1, -1, -1, -2, -1] | ia99etpi73 | 52 | |
[-1, -1, -1, -1, -2, -2] | eoz7ac41n8 | 50 | |
[2, -2, -2, -1, -2, -2] | j0scng2ryu | 50 | |
[2, 1, 2, 2, 2, 1, 2] | 569kp33rf6 | 50 | |
[2, 2, 1, 2, -3, 1] | o7vwpo8gsf | 50 | |
[-1, -1, -1, -2, -2, -1, -2] | umz7hg63hp | 49 | |
[-2, -1, -1, -1, -1, -1, -1] | 29c8n3qwg7 | 49 | |
[-2, -1, -2, -2, -2, -1, -2] | t3src2bsn2 | 49 | |
[1, 1, -1, -1, -1, -1] | av9ky7r2h5 | 49 | |
[1, -1, -1, -1, -1, -1, -1] | hpsr1v83r8 | 48 | |
[-1, -2, -1, -2, -2, -1] | z9z48eu85v | 47 | |
[-2, -1, -2, -1, -1, -1] | mgzw5zvo1m | 47 | |
[1, 2, 1, 2, 1, 1] | 3z2wdjwyj0 | 47 | |
[1, 2, 2, 2, 1, 2, 2] | ma8imclwhl | 47 | |
[2, 2, 1, -1, -2, -2] | 6gbmr9efvp | 47 | |
[2, 2, 1, 2, 1, 2] | 20dogxzlua | 47 | |
[-2, -1, -1, -1, -2, -2] | elwngp6d46 | 46 | |
[-2, -2, -2, -1, -2, -1] | tbqb30zjrb | 45 | |
[1, 2, 1, 1, 1, 1] | tl9ymv45s7 | 45 | |
[1, -1, -2, -2, -1, -2] | 1kmpo6xnej | 44 | |
[2, 2, 3, -3, 1, 2] | 7z7kz2374t | 44 | |
[-2, -2, -1, -2, -2, 2] | 036l5p73xs | 43 | |
[1, 2, 2, 1, 2, 2, 2] | r3ja8105zi | 43 | |
[2, 1, 2, -3, 1, 2] | bu6ivkw684 | 43 | |
[2, 1, 2, 2, -2, -2] | sv0787nrh9 | 43 | |
[-2, 1, -1, -1, -1, -1] | 18jh2n2ntu | 42 | |
[1, 2, -3, 1, 2, 1] | 5dzpamkfb0 | 42 | |
[2, -3, 1, 2, 1, 2] | sgxipm6xw2 | 42 | |
[-1, -2, -1, -1, -1, -2] | cx1ar7yzi6 | 41 | |
[-1, -2, -2, 2, 2, 3] | bfmhhg61f5 | 41 | |
[-1, -1, -1, -1, 2, 2] | yrii4tgu5n | 40 | |
[2, 2, 1, 2, 2, 2, 1] | krcm1p8p76 | 40 | |
[-1, -2, -1, 3, 3, 3] | smmktv9pt6 | 39 | |
[-2, -1, 3, 3, 3, -1] | o45v2holdt | 39 | |
[1, 2, 2, 3, -1, -2] | ka8bjppofc | 39 | |
[2, 2, 2, 1, 2, 1] | 3gx33bizmk | 39 | |
[-1, -2, -1, -1, -1, -1, -1] | 38xqjd9lo5 | 38 | |
[-2, -1, -2, -1, -2, 1] | gfpb5g1lwt | 38 | |
[-2, -2, -1, -2, -2, -3] | uh27odhgee | 38 | |
[-1, -2, -2, -1, -2, -2, -2] | a3pdvulrrh | 37 | |
[2, 1, 2, 1, 2, 2] | 7u014ly4ty | 37 | |
[2, 2, 1, 2, -2, -1] | 6izxrap7y7 | 37 | |
[-1, -2, -2, -2, -1, 3] | 51nzazcusl | 36 | |
[-2, -2, -1, -2, -1, -1] | 6b0uvo7pm1 | 36 | |
[1, 2, 2, 1, 1, 1] | 3myamr94sb | 36 | |
[2, 1, 2, -2, -1, -2] | 54qlgqnn19 | 36 | |
[-1, -1, -1, -2, -1, -1, -1] | nag1igi5si | 35 | |
[-2, -1, -2, -1, -2, -2] | y9wk06hm67 | 35 | |
[1, 2, 2, 1, 2, -3] | ju7cwgyptz | 35 | |
[2, -1, -1, -1, -1, -1] | 7msm7qqg78 | 35 | |
[2, 2, -2, -2, -1, -2] | vfluq91n4z | 35 | |
[-1, -1, -2, -2, -1, -2, -2] | su3qugqml6 | 34 | |
[-2, -1, -2, -1, 3, 3] | hsucvsg60h | 34 | |
[1, -1, -1, -1, -1, -2] | j2bq9jbou5 | 34 | |
[1, -1, -1, -1, -2, -1] | w9j9hxfs4x | 34 | |
[2, 2, 3, -1, -2, -2] | 41tb3gmwli | 34 | |
[3, -3, 1, 2, 1, 2, 2] | mrgff1va1z | 34 | |
[-1, -1, -1, -1, -1, -3] | mu8s519t9c | 33 | |
[-2, -2, -1, -2, -1, -2] | fv24ckn9jy | 33 | |
[-3, 1, 2, 2, 2, 1] | bfto7srza8 | 33 | |
[1, -1, -2, -2, -2, -1] | r8bjbn9cf4 | 33 | |
[1, 2, -2, -1, -2, -1] | psgdr0o6iz | 33 | |
[2, 1, -1, -2, -2, -1] | txz4h9fruh | 33 | |
[3, -3, 1, 2, 2, 3] | psteigqty8 | 33 | |
[-2, -1, -1, -1, -2, -1] | ph69ynogo5 | 32 | |
[1, 2, -2, -1, -2, -2] | fop1somy3n | 32 | |
[1, 2, 2, 1, 2, 1] | jmeegjiu0t | 32 | |
[2, 1, 2, 2, 3, -1, -2] | 9kk0shyhgq | 32 | |
[-1, -1, -1, -1, -1, 4] | 3wny48qw5z | 31 | |
[-1, -2, -2, -1, -1, 4] | fbhawtjs6s | 31 | |
[-2, -1, -2, -2, 2, 2, 3] | u7hxljsxz1 | 31 | |
[-3, 1, 2, 1, 2, 2, 3] | 18ocqynsw0 | 31 | |
[1, 1, 1, 1, 1, 2] | 2tjzpz9ehb | 31 | |
[1, 2, 1, 1, 1, 1, 1] | owuz444ql0 | 31 | |
[2, 1, 2, 2, 2, 1, 2, 2] | wpa228gdxw | 31 | |
[2, 2, 1, 2, 1, 1] | rc2wwujzwd | 31 | |
[2, 2, 1, 2, 2, 3] | kgap7cljue | 31 | |
[-1, -1, -1, -2, -2, -1, -2, -2] | mtdjer5lyt | 30 | |
[-2, -1, -1, -2, -1, -2] | pchs54k36a | 30 | |
[-2, -2, -1, 1, 2, 2] | 85g43is1xr | 30 | |
[1, -1, 1, -1, 1, -2] | kpcfoz8b0q | 30 | |
[2, 2, 2, 2, 1, 2] | iu2tioh7oy | 30 | |
[3, 2, 2, 3, -3, 1] | hpxuozlr5h | 29 | |
[-1, -1, -1, -1, -2, -1, -2] | og35u5wjwc | 28 | |
[-2, -1, -3, -1, -2, -2] | 6zdt65iak3 | 28 | |
[-2, -2, -1, -1, 2, 2] | ey2dwd9zgg | 28 | |
[0, 0, 0, 0, 0, 1] | 9myuoucrkf | 28 | |
[1, 2, 2, 1, 2, 2, 2, 1] | qc63fftk0f | 28 | |
[1, 2, 2, 2, 1, -1] | 2lq7du2gi3 | 28 | |
[3, -1, -2, -2, -1, -1] | o5y5n7w9wl | 28 | |
[-1, -2, -1, -2, -2, -2] | yput9cep2o | 27 | |
[-1, 1, -1, -1, -1, -1] | 87zoeme081 | 27 | |
[-2, -1, -2, -2, -2, -1, -2, -2] | 49mltp83oo | 27 | |
[-2, -2, -1, -2, -2, -2, -1, -2] | 1yfep2qkfn | 27 | |
[-2, -2, 2, 2, 3, 5] | bare5ucy7f | 27 | |
[-2, 1, 2, 1, 2, 2] | ach0q7kalx | 27 | |
[-3, 1, 2, -2, -1, -2] | 6f4ut04loh | 27 | |
[2, 2, 1, 2, -3, 1, 2] | w6rm5c2rl3 | 27 | |
[-1, -1, -1, -1, 4, -2] | 8lovq2pmlm | 26 | |
[-2, -1, -2, -2, -1, 3] | ulfarpvnqo | 26 | |
[-2, -2, -1, -2, -2, 2, 2] | 7pgpplpjy4 | 26 | |
[1, -2, -2, -1, -2, -2] | ptbu7c6ewq | 26 | |
[-1, -1, -1, -1, -1, -1, -2, -1] | loqdp7j611 | 25 | |
[-1, -1, -1, -1, -1, 3] | l0fzjmc20e | 25 | |
[-1, -2, -1, 3, 3, 3, -1] | d4llc0s5ch | 25 | |
[-3, -1, -1, -1, -1, -1] | i095grngp4 | 25 | |
[0, -1, -1, -1, -1, -1] | iox1iuee6o | 25 | |
[-1, -1, -1, -2, -1, -1, -1, -1] | dnyfhkmh4q | 24 | |
[-1, -2, -1, -2, -2, 2] | t4jqe87kvx | 24 | |
[-1, 1, 2, 1, 2, 2] | 96tc1tq8zh | 24 | |
[-2, -1, -2, -2, -3, 1] | imnswgkzh0 | 24 | |
[-2, -1, -2, 1, 2, 2] | we35hmptwb | 24 | |
[-2, -1, 1, 2, 2, 1] | w3ejyavomk | 24 | |
[-3, -2, -2, 2, 2, 3] | dwn8oziehe | 24 | |
[2, 1, 2, 2, 1, -1] | e58kza0xyt | 24 | |
[2, 2, 1, 2, 2, -4] | mivsgcslkd | 24 | |
[4, -2, -2, -1, -2, -2] | 91fkhxtb2v | 24 | |
[-1, -1, 2, 2, 3, 4] | 61odsmm1n8 | 23 | |
[-1, -2, -2, -1, -1, -1, -1] | sl04d7xhdf | 23 | |
[-1, -2, -2, -1, 3, 3] | jtrc3oci0h | 23 | |
[-1, -2, -2, -2, -1, -2, -1] | 83dnnrg92z | 23 | |
[-1, -2, 1, 2, 1, 2] | c0a95gbjb0 | 23 | |
[-2, -1, -2, -1, 3, 3, 3] | vz6hq972qi | 23 | |
[-2, -2, -1, -2, -1, -1, -1] | dpb9wmx42u | 23 | |
[-2, 2, -2, 2, -2, -2] | aqwg0vb0s1 | 23 | |
[-2, 2, 1, -1, -2, 2] | yhu9q50m9o | 23 | |
[1, 1, -1, -1, -1, -1, -1] | 3do71f9x6s | 23 | |
[1, 1, -1, 1, -1, 1] | 70dtwdnxiw | 23 | |
[1, 2, 1, 2, 2, -2] | x0ecrhxlv0 | 23 | |
[1, 2, 2, 2, 2, 1] | s82pivei5s | 23 | |
[2, 1, 2, 2, 1, 2, 2, 2] | vzqcw8m8sn | 23 | |
[2, 1, 2, 2, 2, 2] | 9pbjpbs130 | 23 | |
[2, 2, 1, 2, 1, 2, 2] | y20ag9kco6 | 23 | |
[3, -3, 1, 4, 3, 4] | hzpureyer1 | 23 | |
[3, 2, 2, 1, 2, 2] | 9qjsq6gf5f | 23 | |
[-1, -1, -1, -1, -2, -1, -1] | bab3449cwd | 22 | |
[-1, 1, 2, 2, 1, 2] | 69kfuhbpj3 | 22 | |
[-2, -1, 3, -2, -2, -1] | 47elc6whnu | 22 | |
[-2, -3, -2, -2, -1, -2] | d1ddnjgb98 | 22 | |
[0, 0, 0, 0, 0, 2] | b11lazps34 | 22 | |
[1, -2, -1, -2, -1, -2] | bxtxm9xnwc | 22 | |
[1, 2, 1, 2, 2, 2, 1] | wo5nil90cr | 22 | |
[2, 1, 2, 2, -4, -1, -2] | 9xo4419dkb | 22 | |
[2, 1, 2, 2, 2, 3] | t2urdf6hxc | 22 | |
[-1, -1, -1, -1, -1, 1] | f0xecc97ac | 21 | |
[-1, -1, -1, -2, -1, -2, -2] | qm26zfcrn5 | 21 | |
[-1, -1, 4, -2, -3, -2] | emuutl9ctr | 21 | |
[-2, -1, -1, -1, -1, -1, -1, -1] | geajmf8kse | 21 | |
[-2, -2, -1, 3, 3, 4] | ncizqhhxon | 21 | |
[-2, 1, 2, 2, 1, 2] | b68fcg3a17 | 21 | |
[-2, 2, 1, 2, 2, 3] | yigw2ausos | 21 | |
[1, -2, 1, -1, -1, -1, -1] | a27wao3mhy | 21 | |
[2, 1, 2, 2, 2, 5] | znc9excgiu | 21 | |
[2, 2, 3, -1, -1, -1] | waez8tu3t1 | 21 | |
[4, -2, -2, -1, -2, -1] | m7s5uezj57 | 21 | |
[-1, -1, 2, -1, -1, -1] | fizomutzbf | 20 | |
[-1, -1, 4, -2, -2, -1] | nmo6q9ysv4 | 20 | |
[-1, -2, -1, -1, -1, -1, -1, -1] | ywrnjds48s | 20 | |
[-1, -2, -1, 3, -2, -2] | btrq5y9wrq | 20 | |
[-2, -1, -2, -2, -2, -2] | 2cb0hwq7i1 | 20 | |
[-3, -2, -3, -1, -1, -2] | 1vr4o8q2ct | 20 | |
[0, 0, 0, 0, 0, 0, 1] | w8rza02dpo | 20 | |
[1, 1, 1, 1, 1, -3] | 9lqm5a6s5a | 20 | |
[1, 2, 2, 2, 1, 2, 1] | ujwte10gkr | 20 | |
[1, 2, 2, 2, 1, 2, 2, 1] | wpmlm9rjib | 20 | |
[2, 1, 1, 1, 1, 1, 1] | eqv9ojuoty | 20 | |
[2, 2, 1, 2, 2, -2] | lb5dl89zlj | 20 | |
[3, -1, -1, -1, -1, -1] | 1xwh724qvt | 20 | |
[-1, -1, -1, -1, -1, -1, 4] | cepimnffu4 | 19 | |
[-1, -1, -1, 2, 2, 3] | ly3jx7sy41 | 19 | |
[-1, -2, -1, -2, -2, -1, -1] | zex7tzjtsb | 19 | |
[-2, -1, 1, 4, 3, 2] | sh4d6vwisb | 19 | |
[-3, 1, 2, 2, 3, 4] | 8j8r17ssm7 | 19 | |
[1, -1, -2, -2, -1, -2, -2] | oo8aoveill | 19 | |
[1, 1, 1, 2, 2, 1] | yvr50ftedx | 19 | |
[1, 2, 2, 1, 2, -3, 1] | nd9640na08 | 19 | |
[2, -2, -2, -1, -2, -1] | 6jjipnyhb2 | 19 | |
[3, 3, 3, -3, 1, 1] | nwp5w9chsb | 19 | |
[-1, -1, -1, 4, -2, -3] | otyzow45vm | 18 | |
[-1, 3, 3, 3, -1, -2] | p7x4vztwt3 | 18 | |
[-3, -2, -2, -3, -2, -3] | 73u4m7r2u6 | 18 | |
[3, -2, -1, 1, 4, 3] | xufi7xeo3q | 18 | |
[-1, -2, -1, -2, -2, 2, 2] | jqv9qvync0 | 17 | |
[-2, -1, -2, -2, -3, -2] | 7rorbxrkaw | 17 | |
[-2, -1, -9, 3, 3, -1] | ncmsl03owp | 17 | |
[-2, -2, -2, -1, -2, -2, 2] | 6f5bqtqveu | 17 | |
[-2, 1, -2, -3, 1, 1] | 4b09qj4eve | 17 | |
[1, 2, 1, 2, 2, 3, -1, -2] | mwgjihgebb | 17 | |
[2, -2, -1, -2, -1, 3] | gi19rfb0wx | 17 | |
[2, -2, -2, -1, -2, -2, -2] | g1ooi25erf | 17 | |
[2, 0, 0, 0, 0, 0, 0] | sicb0lhro6 | 17 | |
[2, 1, 2, -3, -1, -1] | 6tb29xx387 | 17 | |
[2, 1, 2, -3, -2, -2] | d1weu6fp2b | 17 | |
[2, 1, 2, 2, -2, -2, -1, -2] | ypuo7sgf90 | 17 | |
[2, 2, 3, -2, -1, -2] | g5lk1m0l3r | 17 | |
[2, 2, 3, 2, 3, 2] | o5xg6leab5 | 17 | |
[2, 3, 2, 3, 2, 2] | d02kerr6vx | 17 | |
[3, 2, 2, 3, -2, -1] | 8bfm578psd | 17 | |
[5, -1, -1, -1, -1, -1] | svktcdl9rq | 17 | |
[-2, -1, -1, -1, -2, -1, -1] | 2dxxshx10o | 16 | |
[-2, -1, -2, -1, -2, -2, -1] | e9fa1fzq8n | 16 | |
[-2, -1, -2, -1, -2, 1, 2] | bo9gq2vky6 | 16 | |
[-2, -1, -2, -2, 2, 2, 3, 5] | udcfswcpg5 | 16 | |
[-2, -1, 3, 3, 3, -1, -2] | tz2qccj52u | 16 | |
[-4, 2, 2, 1, 2, 2] | g4ef0yjy4n | 16 | |
[0, -2, 2, -2, 2, -2] | tmzdtd4bnp | 16 | |
[0, 0, 0, 0, 0, 0, 0, 1] | te8915h8be | 16 | |
[1, 1, -1, -1, -1, -1, -1, -1] | ljt0ussqsl | 16 | |
[2, 1, 2, 1, -2, 1] | v59mpxvjqm | 16 | |
[2, 1, 2, 2, -4, 2] | 0upmp5o1rt | 16 | |
[2, 2, 1, 2, 1, 1, 1] | xeewlrssyk | 16 | |
[2, 3, -3, -2, -2, -3] | 6gmfvxwy7c | 16 | |
[3, 2, 3, 2, 2, 3] | y49yt3hs1p | 16 | |
[-1, -1, -2, -1, -2, -1, -2] | lseca4dcky | 15 | |
[-1, -2, -1, -2, 1, 2, 2] | 7atqiwpcty | 15 | |
[-1, -2, -1, -9, 3, 3] | pks7t73n6g | 15 | |
[-1, 0, 0, 0, 0, 0, 0] | ojlm1t4j5e | 15 | |
[-2, -1, -1, -1, -1, 2] | q5u7i971q2 | 15 | |
[-2, -1, -1, 4, -5, -2] | owbxmt66jc | 15 | |
[-2, -1, -2, -1, 3, 3, 3, -1] | bg6pew73nu | 15 | |
[-2, -1, 9, -3, 1, 1] | mr4gs24o8a | 15 | |
[-2, -2, -1, 3, 3, 3] | gl87p6nymh | 15 | |
[-2, -2, 2, 2, 3, 4] | j6mcpina5y | 15 | |
[-3, 3, 4, -4, 4, 3] | ld2ig9n8oj | 15 | |
[1, -1, -2, -2, -2, -1, -2] | jl0hdojqg6 | 15 | |
[2, 1, 2, 1, 1, 1, 1, 1] | aubtl6fy9a | 15 | |
[2, 1, 2, 2, 1, 2, 2, 2, 1] | xbgf8v44mv | 15 | |
[2, 2, 3, -3, -2, -2] | dvtm577n7v | 15 | |
[2, 3, 2, 2, 1, 2] | z360nel81q | 15 | |
[4, -2, -2, -2, -1, -2] | za8v3jiz24 | 15 | |
[-1, -1, -1, -1, 4, -5] | bxqo2x9nk1 | 14 | |
[-1, -1, -1, 1, -1, -1, -1] | ob7id64wbh | 14 | |
[-1, -2, -2, -1, -2, -1, 3] | 1ijgpo2o4d | 14 | |
[-1, -3, -1, -1, -1, -1] | 6z9c6yc1av | 14 | |
[-1, 1, -1, 1, -1, -1] | j4dwcixq1s | 14 | |
[-2, -1, -2, 1, 2, 1] | ek9s1thyx3 | 14 | |
[-2, -2, -1, -2, -2, -2, -1, -2, -2] | bjma9raxt8 | 14 | |
[-3, -2, -3, -1, -1, -2, -3] | kdeh5jotjs | 14 | |
[1, -1, 1, -1, -1, -1] | i9pwg1n1ik | 14 | |
[2, -2, -1, -2, -2, -1] | ufc5c2sp7o | 14 | |
[2, 1, 2, 1, 1, -2] | 3d2fbkxfjx | 14 | |
[2, 2, 2, 1, -1, -1] | zzvbjbsqgb | 14 | |
[2, 2, 2, 2, 1, 2, 1] | wvnehtv2n7 | 14 | |
[3, -2, -2, -1, -2, -1] | y87xh73k9y | 14 | |
[3, 4, 3, -2, -1, -2] | ectg98u8jb | 14 | |
[-1, -1, -1, -1, 2, 2, 3] | v2hucdfslo | 13 | |
[-1, -1, -1, 4, -2, -3, -2] | vww20d13gm | 13 | |
[-1, -2, -3, 1, 2, 2] | ltkf34gaxm | 13 | |
[-2, -1, -1, -2, -1, -2, -2] | kic8v1yimn | 13 | |
[-2, -2, -1, -1, 2, 2, 3] | uz66kpr4qb | 13 | |
[-2, -2, -3, -2, -3, -2] | f9j1e71mcd | 13 | |
[-3, -4, -3, 9, -2, -2] | 5nkncelj54 | 13 | |
[-3, 1, -2, 1, -1, -1] | 16eazssl1m | 13 | |
[1, 1, 1, 1, 2, 2] | ao0699qzwa | 13 | |
[1, 2, 1, 2, -3, -2] | cbuej05vqy | 13 | |
[1, 2, 2, 2, -2, -2] | a8qey2oa6f | 13 | |
[1, 2, 2, 2, 1, 1, 1] | o0fur3g6l3 | 13 | |
[2, -2, 2, -2, -2, -3] | ef89fz7ust | 13 | |
[2, 1, 1, 1, 1, 1, 2] | 09f2m9k5qt | 13 | |
[2, 2, -2, -2, 2, 2] | wlzslzi280 | 13 | |
[2, 2, 1, -1, -1, -1] | 7f1io7h484 | 13 | |
[2, 2, 2, -2, -2, -2] | qe2qcibygj | 13 | |
[2, 2, 2, 1, -1, -2] | iqbq76glok | 13 | |
[2, 2, 2, 1, 2, -3, 1] | wyhk61laiu | 13 | |
[3, 2, 2, 3, 2, 3] | 5k35auvwuc | 13 | |
[3, 4, -1, -1, -1, -1] | r4dwvqu386 | 13 | |
[4, -4, 4, 3, -3, 3] | ixcslfdgo1 | 13 | |
[-1, -2, -1, -9, 3, 3, -1] | bkps013j8d | 12 | |
[-2, -1, -2, -1, -2, 1, 2, 2] | fw3qsep7kx | 12 | |
[-2, -1, 3, 3, 4, -2] | kk7as0pqr2 | 12 | |
[-2, -2, -1, -2, -1, -2, -1] | 0qm7jth1mi | 12 | |
[-2, -2, -2, -1, -2, -2, 2, 2] | bt01vzr8c8 | 12 | |
[-2, 1, 2, 1, 2, 2, 3] | segfoc5rsa | 12 | |
[-2, 2, -2, -3, 3, -3] | i7vcxli3m6 | 12 | |
[-2, 2, 1, 2, 2, 1] | rfwn4hzgze | 12 | |
[-3, 2, -2, -2, -2, -1] | dz98joowva | 12 | |
[1, -1, -2, -2, -3, 1] | 37yxop4uin | 12 | |
[1, 2, 2, 1, 2, 0] | 8l48ym1tmi | 12 | |
[1, 2, 2, 2, 1, 2, 2, 1, 2] | fw59li8fie | 12 | |
[1, 2, 2, 2, 2, 1, 2] | av4a9s9ufn | 12 | |
[2, 0, 0, 0, 0, 0, 0, 0] | 88mg0rxwbc | 12 | |
[2, 1, 1, -1, -1, -1, -1] | 25620ks2h0 | 12 | |
[2, 1, 1, 1, 1, 1, -3] | 6y5f6poj8v | 12 | |
[2, 2, -1, -1, -1, -1] | 7ze1h2fasf | 12 | |
[2, 2, -2, -2, -1, -1] | jzognrdv1d | 12 | |
[2, 2, 1, 2, 2, -2, -2] | mc7kgazkf5 | 12 | |
[2, 2, 1, 2, 2, 1, 2, -3] | xxt5m0vtm9 | 12 | |
[2, 2, 1, 2, 2, 1, 2, 2, 2] | iwh3uzw3wq | 12 | |
[2, 2, 1, 2, 2, 2, 1, 2, 2] | 2q3pd2hf3k | 12 | |
[2, 2, 2, 1, 2, 1, 2] | 3iw0moz6m8 | 12 | |
[3, -3, 1, 2, -2, -1] | sblza9e4cq | 12 | |
[-1, -1, -1, -1, -1, 4, -2] | xkahhdo5ui | 11 | |
[-1, -2, -2, -1, 3, 3, 4] | 6ftmo6q05s | 11 | |
[-1, -3, -1, -1, -1, -1, -1] | lzhv8eam6c | 11 | |
[-2, -1, -1, 2, 2, 3, 4] | 4ygp86t1jl | 11 | |
[-2, -1, -2, -1, -9, 3] | xwtb03ak4i | 11 | |
[-2, -1, 3, 4, 3, -2] | hhvqalj7uc | 11 | |
[-2, -2, -1, -1, 2, 2, 2] | 4kbbadsxs8 | 11 | |
[-2, -2, -2, -1, -2, -1, 3] | zarqeooarn | 11 | |
[-2, 1, 1, 1, 1, 1] | smx2uzgdpf | 11 | |
[-3, 1, 4, 3, 4, 1] | 5vlb8v2lkd | 11 | |
[-4, 5, 2, 1, 2, 2] | pvlcb1uzpu | 11 | |
[0, 2, -2, 2, -2, 2] | uhgqsvkg4i | 11 | |
[1, -1, -2, 2, 1, -1, -2] | yn7un54wwu | 11 | |
[1, 1, -2, 1, -1, -1, -1, -1] | al7x04lh56 | 11 | |
[1, 1, 2, 2, 2, 1] | os4wyraf2f | 11 | |
[1, 2, 1, 1, 3, -3] | 5vqdbn3ghs | 11 | |
[2, 1, 1, 1, 2, 1] | sulqpqsqt4 | 11 | |
[2, 2, -4, 2, 2, 1] | o3zgwf6fsu | 11 | |
[3, -3, -2, -2, -3, -2] | ti7zjodzis | 11 | |
[3, 2, 1, 2, 2, 2] | a2p467zxm7 | 11 | |
[4, -2, -2, -1, -1, -1] | 5pg6m59xtl | 11 | |
[-1, -1, -1, -1, -1, 4, -5] | 5x6oqkfl7a | 10 | |
[-1, -2, -1, -2, -1, -2, -2] | 34y5semfyd | 10 | |
[-1, -2, -1, -2, -2, 2, 2, 3] | 4xrnx1cwtn | 10 | |
[-1, -2, -1, -4, 2, 2] | orhl94uzj4 | 10 | |
[-1, -2, -2, -1, -1, 2, 2] | zzyz4e7lty | 10 | |
[-1, 1, -1, -1, -1, 2] | zwil5o23pr | 10 | |
[-2, -1, -2, -2, -3, -2, -2] | 2s37t82rw6 | 10 | |
[-2, -1, -9, 3, 3, -1, -2] | lb3on64555 | 10 | |
[-2, 1, -1, -1, -1, -2] | lr45eeu70z | 10 | |
[-3, -2, -1, -1, -1, -1] | 1h1yxco9j0 | 10 | |
[-3, 1, -1, -1, -1, -1] | 6hybym9nid | 10 | |
[-3, 1, -2, 1, -1, -1, -1] | mizifby78p | 10 | |
[1, 2, -1, -1, -1, -1] | md5qh7gtk0 | 10 | |
[1, 2, -2, -2, -1, -2] | utscxnqlqj | 10 | |
[1, 2, 1, 1, 1, 1, 1, 1] | 35hshqexyi | 10 | |
[1, 2, 1, 2, 2, 2, 2] | qjs9vo2er2 | 10 | |
[1, 2, 2, 2, 1, -1, -2] | 6kwehzmxjt | 10 | |
[1, 2, 2, 2, 3, -1] | 5qjve7i9op | 10 | |
[1, 3, 4, 3, -3, 1] | rjl9ytq00t | 10 | |
[2, 3, -2, -1, 1, 4] | 6m4mgps0ob | 10 | |
[3, -2, -1, -2, -2, -3] | frymksws5v | 10 | |
[3, 4, 1, -1, -2, -2] | bekgnuj7ih | 10 | |
[4, 3, 4, -1, -1, -1] | 6w3p29b53v | 10 | |
[-1, -2, -1, -2, 1, 2, 2, 1, 2] | sy1i05pigh | 9 | |
[-1, -2, -1, 3, 4, 3] | ntf33hb423 | 9 | |
[-1, -2, -2, -1, 3, 3, 3] | p5a57kokzr | 9 | |
[-1, 1, 1, -1, -1, 1, 1, -1, -1, 1] | ooskoz8id5 | 9 | |
[-2, -1, -2, -1, -9, 3, 3] | qbbimi34u3 | 9 | |
[-2, -2, -1, -1, 2, 2, 3, 4] | yt7r7t8eu7 | 9 | |
[-2, -2, -1, -2, -1, 3, 3, 3] | y1o6rew409 | 9 | |
[-3, -2, -2, -3, 3, 2] | jkal1jlue8 | 9 | |
[-3, 1, -2, -1, -2, -2] | 9a6eiqnwez | 9 | |
[-3, 1, 1, -4, 1, 1] | nr4rrwuje6 | 9 | |
[0, 0, 0, -2, 2, 0] | 6q1j9wmpxi | 9 | |
[1, -2, 1, -2, 1, 2] | 72py15can9 | 9 | |
[1, 1, -1, 1, -1, 1, -1, 1] | r2uaukxshx | 9 | |
[1, 1, 2, 2, 1, 1] | h4q6fn17i8 | 9 | |
[1, 2, 1, -2, 1, -2] | kymzu37iv8 | 9 | |
[1, 2, 2, 1, 3, 1] | fv885v0oc2 | 9 | |
[2, 1, -1, -1, 2, 1] | ot872oj8lr | 9 | |
[2, 1, 2, -2, -1, -2, -1] | jso2isoeic | 9 | |
[2, 2, 3, -3, -2, -2, -3] | 1tbhyejkr2 | 9 | |
[2, 2, 3, 2, 1, 2] | 4g5wbij63q | 9 | |
[4, -2, -2, -2, -1, -2, -2] | st80bf1lmb | 9 | |
[-1, -1, -1, -1, 2, 2, -4, 2] | pnyqy3rsvd | 8 | |
[-1, -1, -1, 2, 1, 2, -3] | 6cehoeoq7e | 8 | |
[-1, -1, -1, 4, -2, -2] | au8si89lsk | 8 | |
[-1, -1, -2, -2, -1, -2, -2, -2] | naakkoav0k | 8 | |
[-1, -1, 4, -2, -2, -1, -2] | yebc53gm5h | 8 | |
[-1, -1, 4, -2, -4, -3] | imwgyokbgl | 8 | |
[-1, -2, -1, -9, 3, 3, -1, -2] | p8dgczupg2 | 8 | |
[-1, -2, -2, -2, -2, -3] | d2akhdestq | 8 | |
[-2, -1, -2, -1, -1, -1, 2] | ukkuh3daa0 | 8 | |
[-2, -1, -2, -1, -2, 1, 2, 2, 1, 2] | dm23s7t5bw | 8 | |
[-2, -1, -2, -2, -1, 3, 3] | 29lkpzz1jz | 8 | |
[-2, -1, 3, -2, 2, 1, 2] | y6iqj90cxa | 8 | |
[-2, -3, 2, 1, 2, 2] | 016bvnpgzz | 8 | |
[-3, -2, -2, -1, -1, 2] | 8385vzr8oz | 8 | |
[-4, -1, -1, -1, 2, 1, 2] | vl00oljoe9 | 8 | |
[1, -2, 1, -2, -1, 3] | 3x4xqci269 | 8 | |
[1, -2, 1, 1, 1, 1] | daloby2gbq | 8 | |
[1, 2, -2, -1, -2, -1, 3] | xeoxdxkqfo | 8 | |
[2, -2, -1, 1, 4, 3] | x08537rt6a | 8 | |
[2, 1, 2, 2, -2, -3] | wdwg4u1m54 | 8 | |
[2, 1, 2, 2, 1, -1, -1] | y5ktycgryo | 8 | |
[2, 2, 2, 1, 2, 2, -4] | b7fii848pr | 8 | |
[2, 2, 2, 3, 2, 1, 2] | p38jvgjcgr | 8 | |
[2, 2, 3, -1, -2, -1] | zc3ekkcy94 | 8 | |
[3, 4, 3, -2, 2, 2] | xcz8zegx27 | 8 | |
[-1, -1, -1, 4, -2, -4] | ijy5kjrtkd | 7 | |
[-1, -1, -3, 1, -2, 1] | pfh1ef690t | 7 | |
[-1, -1, -5, -3, 5, -2] | qliaye5loe | 7 | |
[-2, -1, -2, -1, -4, 2, 2] | 7aw0ib2yt0 | 7 | |
[-2, -1, -4, 2, 2, 1, 2] | 5lqnwyr6bt | 7 | |
[-2, -2, -1, -2, -2, -1, 3, 3] | 3gollut1gc | 7 | |
[-2, -2, -1, 3, 3, 3, -1] | 16gq8m4u39 | 7 | |
[-2, -2, -3, -4, -3, 9] | idtqjf6ghv | 7 | |
[-2, -2, 2, 2, 3, 5, -3] | edybpl134w | 7 | |
[-2, -3, 1, 2, 2, 1] | f2xkg5gutc | 7 | |
[-2, 1, -2, -1, 3, 3] | 5i910q3ukd | 7 | |
[-2, 1, 1, 1, 1, 1, 1] | 08ouedzlvp | 7 | |
[-2, 1, 3, 2, 2, 3] | 67vmk0q57n | 7 | |
[-2, 2, -2, -3, 2, -2] | pr1c9koj7g | 7 | |
[-3, -4, -3, 9, -2, -2, -2] | livbcdoe31 | 7 | |
[-3, 1, -2, 1, -1, -1, -1, -1] | to9nam8dzp | 7 | |
[-3, 1, 0, -1, -1, -1, -1, -1] | k5xv171zhb | 7 | |
[-4, -1, -2, 5, -2, -3] | csfpv7v6hs | 7 | |
[1, 1, -2, -2, -1, -2] | 8b1aev7pl7 | 7 | |
[1, 2, -2, -1, -4, -3] | do09gqkuqx | 7 | |
[1, 2, -2, -1, 1, 4] | yil7ikwz7m | 7 | |
[10, -1, -5, 3, -2, -1] | tq0djk8j8f | 7 | |
[2, -4, -1, -2, 5, -1, -1, -1] | pr7zptgtof | 7 | |
[2, 2, 1, 2, 2, 1, 2, -3, 1] | 409gtz38wi | 7 | |
[2, 2, 2, 1, -2, 1] | elivpur9wx | 7 | |
[2, 2, 2, 2, 1, 2, 1, 2] | q1gbekng4y | 7 | |
[2, 3, 2, 3, 2, -2] | 69a02fsxg0 | 7 | |
[3, -1, -2, -1, 3, -2] | aelo9ddh05 | 7 | |
[3, -2, -1, -2, -2, -2] | b0cntdb691 | 7 | |
[3, -2, 2, 2, 3, 2] | dt37i4q6gu | 7 | |
[3, 3, 3, -3, 1, 1, -2] | oqqj8n9v0g | 7 | |
[3, 4, -2, -1, -2, -1] | 8mvb7ddwui | 7 | |
[3, 4, 3, -3, 1, 1] | 2qu1tq3x2m | 7 | |
[-1, -1, -1, -1, 2, 1, -2, 1, -1, -1, 4] | jtje0677b8 | 6 | |
[-1, -1, 2, 2, 2, 2] | oh37ukku8d | 6 | |
[-1, -1, 4, -1, -5, -3, -2, 7, -2] | bunf1qe2qu | 6 | |
[-1, -2, -1, -2, 1, 2, 1] | 5m050iu134 | 6 | |
[-1, -3, 1, 2, -2, -1] | 1jpo7jo17j | 6 | |
[-2, -1, -2, -1, -2, -2, 2] | q3t5yt9m0i | 6 | |
[-2, -2, -1, -2, -1, -1, -1, -1, -1] | z9qv0flj94 | 6 | |
[-2, -2, -1, -2, -1, -1, -1, 2] | 6600rt9hvz | 6 | |
[-2, -3, -4, 2, 2, 3] | kg0mhzrpuh | 6 | |
[-2, 1, -4, -1, -1, -1] | eemfiyd035 | 6 | |
[-2, 2, 2, 3, 2, 3] | bbz506uf47 | 6 | |
[-3, 1, -4, 3, -3, 1] | sizqi2k1gt | 6 | |
[-3, 1, 1, -2, -1, 3] | leny5g0cts | 6 | |
[-3, 1, 2, -2, -1, -4] | ht2r9lvcq7 | 6 | |
[-3, 3, 2, 2, 3, -3] | 70ueipyf1b | 6 | |
[-4, -1, -2, -1, -2, -2] | gjvr7hhx3e | 6 | |
[0, 0, 0, 0, 1, 2] | iub4okdx12 | 6 | |
[1, -2, 1, -1, -1, -1, -1, 2, 2] | 3ophj7rvcv | 6 | |
[1, -4, -3, -1, -2, -1] | n7uyhp64zn | 6 | |
[1, 1, 1, 1, 2, 1, 2, 2] | tc7dgh9sgi | 6 | |
[1, 1, 1, 2, -2, -2, -1] | j12f9r20mt | 6 | |
[1, 2, 1, 2, 2, 2, 2, 1] | gjyj6hrb76 | 6 | |
[1, 2, 2, 1, 2, 2, 2, 1, -1] | 12hhdrewal | 6 | |
[1, 2, 2, 2, 1, -1, -1, 2] | t82v81b8nk | 6 | |
[1, 3, 4, 3, -2, -1] | hnpjg67lhs | 6 | |
[2, 1, -2, 1, -2, 1] | f5z2uluvuf | 6 | |
[2, 1, 2, 1, 1, 1, 1, 1, 1] | c0rglmvp64 | 6 | |
[2, 1, 2, 2, 2, 1, -1, -2] | qdbnfe4xqc | 6 | |
[2, 2, -9, 5, 2, 2] | 7jttj7v0sy | 6 | |
[2, 2, 1, 2, 0, 0] | xhwvrrt26a | 6 | |
[2, 2, 3, -3, -4, -3] | tvnl82mgy1 | 6 | |
[2, 3, -2, -1, 1, 4, 3] | 42g6atieo0 | 6 | |
[2, 3, 2, 1, 2, 2, 2] | 5p2fu9a2qy | 6 | |
[2, 3, 2, 2, -4, 2] | z76twjs9hh | 6 | |
[3, -1, -2, -1, 3, 3] | tf4c65evq2 | 6 | |
[3, -3, 1, -2, -1, -2, -2] | 8mjts85qhq | 6 | |
[3, -3, 3, -3, -2, -2] | z1w6y1jodt | 6 | |
[3, 2, 2, 3, -3, -2] | ru69ti79ld | 6 | |
[3, 3, 3, -1, -2, -1] | xpg5pxl6tf | 6 | |
[4, 3, 4, -1, -1, -1, -1] | 4tmv25mg66 | 6 | |
[5, 2, 1, 2, 2, -2] | k4gi69g68s | 6 | |
[-1, -1, -1, -1, -1, 4, -3] | i2rwjx7zvd | 5 | |
[-1, -1, -1, -1, 3, -4] | 2asgwjj7lu | 5 | |
[-1, -1, -1, -1, 4, -2, -2] | jinbs1qoq4 | 5 | |
[-1, -1, -1, 2, -2, 2] | v7n7k7irtm | 5 | |
[-1, -1, 2, -1, -1, -1, -1, -1, 2, 1, -2, 1, -1] | egfik3q5yc | 5 | |
[-1, -1, 2, 2, 3, 4, 3] | 8rlzs6zlxq | 5 | |
[-1, -1, 4, -2, -2, -1, -2, -2] | bsj683fct9 | 5 | |
[-1, -2, -2, 0, 2, 2] | os2hy2tgly | 5 | |
[-1, -2, -2, 2, 3, 2] | qg0keg2i5o | 5 | |
[-1, 1, 2, 2, 2, 1, 2] | w6ua4xftdy | 5 | |
[-2, -1, -2, 1, 2, 2, 2, 1] | ltvr04erm4 | 5 | |
[-2, -1, 1, 4, 3, 2, 2] | 3xviz0cday | 5 | |
[-2, -2, -1, 3, 3, 4, -2] | ma0lmitg54 | 5 | |
[-2, 1, 0, 0, 0, 0] | xziqpilut9 | 5 | |
[-3, -2, -2, -1, 2, 2] | 11v6orrqly | 5 | |
[-3, -2, 5, 1, -1, -1] | 9twd94syd0 | 5 | |
[-3, 5, -3, 1, 2, 1] | bxmwe3tcto | 5 | |
[-4, -1, 3, -2, -3, -1, 3, -2] | inx7ohs7g4 | 5 | |
[0, 0, 0, 1, -1, 1] | 4wscztvxsm | 5 | |
[1, -1, -1, -1, 2, -2, -1] | vpzsmxrbi2 | 5 | |
[1, -1, -2, -2, -1, -1, 4] | jg1mv6asqd | 5 | |
[1, -1, 1, -1, 1, -2, -2] | mp8vm4ktkk | 5 | |
[1, -2, -2, -1, -1, -1, -1] | nm6ps0uaqv | 5 | |
[1, 1, -2, 1, -1, -1, -1, -1, 2, 2] | cm70ig7gcs | 5 | |
[1, 2, 2, 2, 2, 1, 2, 1] | w5lnewoj75 | 5 | |
[2, -2, -3, 2, -2, -2] | iol0gpleui | 5 | |
[2, -2, 1, 1, -2, 2] | b7ika4xfnx | 5 | |
[2, -4, -3, 5, -3, -4, 5] | yvef7cyicm | 5 | |
[2, 1, -1, -1, 2, 1, 1] | s2gb8gginz | 5 | |
[2, 2, 1, 2, 1, -3] | 9x9veu9c6u | 5 | |
[2, 2, 2, 2, 1, 2, 1, 2, 2] | zd88cvuot0 | 5 | |
[2, 2, 2, 3, -1, -1] | odqpwcrq7t | 5 | |
[2, 2, 3, -6, 2, 2] | veg2b81c76 | 5 | |
[2, 3, -1, -2, 1, -3] | hohxq6ue5j | 5 | |
[3, -2, -3, -2, 5, 1] | 5ay1hus7gl | 5 | |
[3, 1, -1, 1, -1, 1, -1] | 1qui2fzo2r | 5 | |
[3, 2, 1, 2, -2, -1] | 4e5ouyygsb | 5 | |
[3, 3, -1, -1, -1, -3] | etlcspdn76 | 5 | |
[5, -3, 1, 2, 1, 2, 2] | pq7luuzvte | 5 | |
[-1, -1, -1, -1, 2, 1, -2, 1, -1, -1, 4, -2] | eeow0rla09 | 4 | |
[-1, -1, -1, -1, 2, 2, -4, 2, -1, -1, 4, -2] | kgyefj1zpy | 4 | |
[-1, -1, -1, -1, 4, -3, 1] | kzo8eyvxh4 | 4 | |
[-1, -1, 2, -1, -1, -1, -1, -1, 2, 1, -2, 1, -1, -1, 4] | csl0dt5cyr | 4 | |
[-1, -1, 2, -1, -1, -1, -1, -1, 2, 2] | joo1mtedjv | 4 | |
[-1, -1, 3, -2, -3, -2, 5, 1] | rejk96ull1 | 4 | |
[-1, -2, -2, -1, 3, 3, 3, -1] | wdn7b6chvb | 4 | |
[-1, -2, -2, -1, 3, 3, 4, -2] | 860jytxmd9 | 4 | |
[-1, 2, 2, 2, 1, 2, 2] | vic14w3ewz | 4 | |
[-2, -1, -2, -1, -2, 1, 2, 2, 1, 2, 2] | vzxz85df00 | 4 | |
[-2, -1, -2, -2, -1, 3, 3, 4] | 61i6pvw69w | 4 | |
[-2, -1, -2, -2, 2, 5] | j2j43ha21n | 4 | |
[-2, -1, 3, -3, -2, -2, 2] | 9z3q4pu9kb | 4 | |
[-2, -1, 3, -3, 1, -5] | 9z2qqj2xud | 4 | |
[-2, -2, -1, -2, -2, -1, 3, 3, 4] | u5txcenoz5 | 4 | |
[-2, -3, -2, 5, 1, -1, -1] | 2hjnh6mi2g | 4 | |
[-2, -8, 1, 5, -1, -4] | vroayzyqlv | 4 | |
[-2, 1, -1, -1, 2, 1] | v90n4ll30p | 4 | |
[-2, 1, -1, -1, 4, -3] | m06xkzdtta | 4 | |
[-2, 1, -4, -4, -4, 7] | l6mfnylt0r | 4 | |
[-2, 1, 2, 2, 1, 2, 2, 2] | i4a5bxiwbi | 4 | |
[-3, -2, -2, -3, -2, -3, 5] | vl6343v4k3 | 4 | |
[-3, -2, -2, 2, 2, -4, 2] | 3mt792ctc1 | 4 | |
[-3, 1, 1, 1, 2, 2, 2] | tamz3docum | 4 | |
[-3, 2, 3, -2, -1, 1, 4] | hgmjioug88 | 4 | |
[-3, 2, 3, -2, -1, 1] | hbrwbby9j3 | 4 | |
[-4, -1, -1, -1, 2, 2] | s1yzzqb9kq | 4 | |
[-4, -1, -1, 2, 2, 3] | 1iu9fngatj | 4 | |
[-4, -1, -2, -1, 1, 5, -2] | 5od395nl0g | 4 | |
[-5, 3, -3, -2, -2, -3] | zmce4quvxe | 4 | |
[1, -1, -1, -1, -1, 2, 2, -4] | 7hq3jo5t7k | 4 | |
[1, -1, 1, -2, -2, -5] | 19xyqe3tra | 4 | |
[1, 1, 1, 2, -2, -2, -1, -2] | tnh0wx3qvd | 4 | |
[1, 2, 2, 1, 1, -1] | mfn4bap4my | 4 | |
[1, 2, 2, 2, 1, -1, -1, 2, 1] | ug7wibjrzq | 4 | |
[2, -2, -3, 3, -3, 0] | 9x7sb5opzt | 4 | |
[2, 1, -2, 1, -1, -1, -1] | 6m7tyq16bx | 4 | |
[2, 1, 2, 2, 1, -1, -1, -1] | osr8iqp3d7 | 4 | |
[2, 1, 2, 2, 2, 2, 1, 2, 1] | gsmtn0qmem | 4 | |
[2, 2, 1, 2, -3, 1, 4, 3] | vumv9sna06 | 4 | |
[2, 2, 1, 2, 2, 1, -1, -1] | b5a0s35om1 | 4 | |
[3, -2, 2, 2, 3, 5] | oo9t2k27sm | 4 | |
[3, -3, -2, -2, -3, -2, -2] | nyq283l0i9 | 4 | |
[3, -3, 2, 3, 3, 3] | hibty7xcml | 4 | |
[3, 2, 3, 1, 1, 1, 1] | lbcvy94fkw | 4 | |
[3, 3, -1, -2, -1, 3] | 24h1x23c5i | 4 | |
[3, 3, 3, -1, -2, -3, 1] | 5tazogyxfd | 4 | |
[3, 4, -2, -1, -2, -1, -2] | m59zzwnw60 | 4 | |
[4, -2, -1, -2, -1, -2, -2] | 2cdkg5uuzi | 4 | |
[-1, -1, -1, 2, -1, -1, -1, -1, -1] | zjpkml6sys | 3 | |
[-1, -1, -2, 1, 1, -2, 1] | 15mv5la9ej | 3 | |
[-1, -1, -3, 1, 2, -2, -1] | k8ss2rp84r | 3 | |
[-1, -1, 1, -2, 1, -2, 1] | hjuads3xjx | 3 | |
[-1, -1, 1, 3, 2, 1] | vurupzdwtk | 3 | |
[-1, -1, 2, 2, 2, 1, 2, 2] | empaqxsk2d | 3 | |
[-1, -1, 3, -2, -3, -2, -2] | tis0humb24 | 3 | |
[-1, -1, 3, -2, -3, -2, 5, 1, -1, -1] | u6k5sejc5z | 3 | |
[-1, -1, 4, -2, -3, -4, -2] | f4wh06w4dv | 3 | |
[-1, -2, -1, -1, -1, 2, -3] | ic7nmq4vvd | 3 | |
[-1, -2, -2, -1, -1, 2, 2, 2, 1, 2] | awnu394k64 | 3 | |
[-2, -1, -4, -3, -2, 7] | 9c5j6o3gre | 3 | |
[-2, -1, -4, 2, 2, 1, 2, 2] | w8qqk6ye0s | 3 | |
[-2, -1, 3, -3, 1, -5, -2] | qs9ysdt0vc | 3 | |
[-2, -1, 3, 3, 3, -1, -2, -1] | xesna3ol9l | 3 | |
[-2, -2, -3, -2, -1, -2] | m4w0q88bqe | 3 | |
[-2, 1, -3, 1, 2, 2] | 32fm6xysm7 | 3 | |
[-2, 1, 1, -2, 1, -1, -1] | htbvdbwnn1 | 3 | |
[-3, 1, 2, -2, -1, -4, -3] | cr04x7y8qt | 3 | |
[-3, 5, -3, -4, 5, -1] | kc9qwa75lo | 3 | |
[-4, -1, -1, -1, 2, 2, 3] | nk2zdb236w | 3 | |
[-4, -3, -1, 2, 2, 3] | b4nsej19e1 | 3 | |
[-4, -3, 2, 3, -3, 1] | rm9ufyp8ea | 3 | |
[-9, 2, 3, -1, -2, 1] | gfpzbj4rx3 | 3 | |
[0, -1, -1, -1, -1, -1, 3] | mpddby7f37 | 3 | |
[0, 0, -1, -2, 0, 0, 0, 0] | l5s13byrqc | 3 | |
[0, 1, 2, 2, 2, -2, -2, -2, -1] | ax9xd048p7 | 3 | |
[1, -1, -1, -1, -1, 2, 1] | 4myk8topzl | 3 | |
[1, -1, -1, -3, -3, 3] | ha74aq5gq5 | 3 | |
[1, -1, -1, 1, 1, -1, -1, 1, 1, -1, -1, 1, 1, -1, -1, 1, 1, -1, -1, 1] | wj7nd9268x | 3 | |
[1, -1, -1, 4, -1, -5, -3, -2] | bn8p8xvmzu | 3 | |
[1, -2, -1, 1, 4, 3, 2] | 2y6qgc5zse | 3 | |
[1, -2, 1, -1, -1, 4, -2, -3] | 8yflxjf2ai | 3 | |
[1, 1, -2, -1, 1, 4, 3] | 00k1jx6cd2 | 3 | |
[1, 1, -2, 1, -1, -1, -1, -1, 2, 2, -4, 2] | slfdsltn17 | 3 | |
[1, 3, 4, 3, -2, -1, -2] | xl6cizef0x | 3 | |
[2, 1, 1, 1, -1, -1, 4] | d6hhbo4ziv | 3 | |
[2, 1, 2, 2, 3, -6] | heoylotshl | 3 | |
[2, 2, -4, 2, -1, -1, 4, -2, -3] | eep2xuesql | 3 | |
[3, -2, -1, -2, -1, -2, -2] | 13ujy4ekbv | 3 | |
[3, 4, 3, -2, -1, -2, -2] | vphyv7dmh9 | 3 | |
[4, -2, -2, -1, -2, -1, -1, -1] | lcfatagwif | 3 | |
[5, -2, -2, -1, 5, -2, -2, -1, 5, -2, -2, -1, 5, -2, -2, -1] | 2tvgukrl76 | 3 | |
[-1, -1, -1, -1, 2, 1, -2, 1, -1, -1, 4, -2, -3] | oz4o1yfqkc | 2 | |
[-1, -1, -1, -1, 2, 2, -4, 2, -1, -1, 4, -2, -3] | 4gk30k80ob | 2 | |
[-1, -1, -1, -1, 2, 2, 3, -1] | oni1nvmb7s | 2 | |
[-1, -1, -1, -2, 2, 1, 2, -3, -2] | qu3t2jih4k | 2 | |
[-1, -1, -1, 1, 1, -2, 1, -1, -1, -1, -1] | 4exf79buer | 2 | |
[-1, -1, 4, -1, -5, -3, -2, 7, -2, -5] | khq1o1w6as | 2 | |
[-1, 1, 0, -1, -1, -1, -1, 2] | kymtdjirxm | 2 | |
[-1, 1, 1, -2, 1, -1, -1, -1, -1, 2] | ticmdilwxc | 2 | |
[-2, -2, -1, 5, -2, -2, -1, 5, -2, -2, -1, 5, -2, -2, -1, 5, -2, -2, -1] | yne347ko7x | 2 | |
[-3, 1, 1, -4, 1, 1, -2, -2, -1, -2, -2, -1, 3, 3] | s9l5bpf6s3 | 2 | |
[-3, 1, 1, -4, 1, 1, -2, -2] | w55j9bbfei | 2 | |
[-4, -1, -1, 4, -2, -4, -3, 6] | 83x5a0a6sw | 2 | |
[-4, -3, 1, -4, -3, -4, 5] | e1y4gik86b | 2 | |
[-4, -3, 2, -4, -3, -4, 5] | mz2atyifiq | 2 | |
[-4, -4, 1, 2, 2, 3, 5] | jt21nugvym | 2 | |
[-4, 4, 1, 2, -3, 1, 2] | osvi3x2gpk | 2 | |
[1, -1, -1, 4, -1, -5, -3, -2, 7, -2] | wel3x3e7oo | 2 | |
[1, -1, -1, 4, -2, -3, -4, -2] | cyvkh0ozck | 2 | |
[2, -2, 1, -1, -1, 1, -2, -1, -1] | nmglju7d4y | 2 | |
[2, -3, -2, -2, 2, 2, -4, 2, -2, -3] | ea62zuq136 | 2 | |
[2, 1, 2, -3, 3, 5, 2, 2] | 534ubs54ii | 2 | |
[3, -3, 1, 1, -4, 1, 1, -2, -2, -1, -2, -2, -1] | 5diypsgm16 | 2 | |
[3, -3, 1, 1, -4, 1, 1, -2] | jowjgcvhy7 | 2 | |
[3, 4, 3, -3, 1, 1, -4, 1, 1, -2, -2, -1, -2, -2, -1] | 0de75ac7pd | 2 | |
[3, 4, 3, -3, 1, 1, -4, 1, 1, -2, -2, -1, -2, -2] | ktqcqf8vak | 2 | |
[4, -4, 4, 2, 3, -5, 2, 3, 3, 4] | eu907v34a9 | 2 | |
[4, 3, -3, 1, 1, -4, 1, 1, -2, -2, -1, -2, -2, -1, 3, 3] | 23hjg2dlfx | 2 | |
[5, -5, -4, 4, -2, -5, -2] | uytstxb3ut | 2 | |
[1, 3, 4, 3, -3, 1, 1, -4, 1, 1, -2, -2, -1] | mqzkak64b8 | 1 | |
[1, 3, 4, 3, -3, 1, 1, -4, 1, 1, -2, -2] | og420b0r9z | 1 | |
[1, 3, 4, 3, -3, 1, 1, -4, 1, 1] | drc13xfxji | 1 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import mido | |
from mido import MidiFile, MidiTrack, Message | |
import csv | |
import ast | |
def intervals_to_midi_pattern(intervals, start_note=60): | |
""" | |
Converts a list of intervals into a MIDI pattern (sequence of notes). | |
:param intervals: A list of intervals (difference in pitch between notes). | |
:param start_note: The MIDI note number to start the pattern from. | |
:return: A list of MIDI note numbers forming the pattern. | |
""" | |
pattern = [start_note] | |
for interval in intervals: | |
pattern.append(pattern[-1] + interval) | |
return pattern | |
def append_pattern_to_track(track, pattern, bar_duration=1920): | |
""" | |
Appends a MIDI pattern to a track, followed by silence to align the next pattern to a new bar. | |
:param track: The MIDI track to append the pattern to. | |
:param pattern: The MIDI pattern to append. | |
:param bar_duration: The duration of a bar in MIDI ticks (default is 1920 for a 4/4 bar). | |
""" | |
is_first_note = True | |
pattern_duration = 0 | |
previous_note = None # Initialize previous note | |
for note in pattern: | |
# Duration of a note alternates for a swing rhythm | |
note_duration = 320 if is_first_note else 160 | |
# Accentuate notes on the downbeat that are higher than the previous note | |
if is_first_note and (previous_note is None or note > previous_note): | |
velocity = 120 # Higher velocity for accented note | |
else: | |
velocity = 30 # Regular velocity | |
note_on = Message('note_on', note=note, velocity=velocity, time=0) | |
note_off = Message('note_off', note=note, velocity=velocity, time=note_duration) | |
track.append(note_on) | |
track.append(note_off) | |
previous_note = note # Update the previous note | |
pattern_duration += note_duration | |
is_first_note = not is_first_note | |
# Add silence to align the start of the next pattern with a new bar | |
remaining_duration = bar_duration - (pattern_duration % bar_duration) | |
if remaining_duration < bar_duration: | |
track.append(Message('note_off', note=0, velocity=0, time=remaining_duration)) | |
# Add an extra bar of silence | |
track.append(Message('note_off', note=0, velocity=0, time=bar_duration)) | |
def create_combined_midi(patterns, output_file): | |
""" | |
Creates a single MIDI file from a list of MIDI patterns, each starting at a new bar. | |
:param patterns: A list of MIDI patterns. | |
:param output_file: The filename for the output MIDI file. | |
""" | |
mid = MidiFile() | |
track = MidiTrack() | |
mid.tracks.append(track) | |
for pattern in patterns: | |
append_pattern_to_track(track, pattern) | |
mid.save(output_file) | |
def create_midi_for_single_pattern(pattern, pattern_id, index, num_instances, bar_duration=1920): | |
""" | |
Creates an individual MIDI file for a given pattern. | |
:param pattern: The MIDI pattern. | |
:param pattern_id: The ID of the pattern. | |
:param index: The index number of the pattern. | |
:param num_instances: The number of instances of the pattern. | |
:param bar_duration: The duration of a bar in MIDI ticks. | |
""" | |
filename = f"pattern_{index}_{num_instances}_{pattern_id}.mid" | |
mid = MidiFile() | |
track = MidiTrack() | |
mid.tracks.append(track) | |
append_pattern_to_track(track, pattern, bar_duration) | |
mid.save(filename) | |
# Read melodic patterns from CSV file and create individual MIDI files | |
with open('JazzPatt.csv', newline='') as csvfile: | |
reader = csv.reader(csvfile, delimiter=';') | |
next(reader) # Skip the header row | |
for index, row in enumerate(reader, start=1): | |
pattern = ast.literal_eval(row[0]) | |
pattern_id = row[1] | |
num_instances = row[2] | |
midi_pattern = intervals_to_midi_pattern(pattern) | |
create_midi_for_single_pattern(midi_pattern, pattern_id, index, num_instances) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment