code:
4WyerVfGxNsTkzYTWn5Zlh
4g33kYin7TM4KwlB9ZxIqP
0o4ymDquSJdsx1CwXyRSow
29OrKlVi8EM1u8VDIlF4qO
4n0o6mfRSnegM6Zc1qXDPn
2NeHnSFnwNp1Z5WYgcjJ8L
0LvwrCJtecLr9mnS0h0k7U
3xZeNvglBOH5my81QfFraO

license: mit


code:
4WyerVfGxNsTkzYTWn5Zlh
4g33kYin7TM4KwlB9ZxIqP
0o4ymDquSJdsx1CwXyRSow
29OrKlVi8EM1u8VDIlF4qO
4n0o6mfRSnegM6Zc1qXDPn
2NeHnSFnwNp1Z5WYgcjJ8L
0LvwrCJtecLr9mnS0h0k7U
3xZeNvglBOH5my81QfFraO
6x6Tdl1ZrbveLc4qQISUHT
5wbBJzbd3GVKDDqS6TFqDk
7i7z3Pgq2Lnswo6PlLQtO8
2YGFjCtEo5hhNutCO8RdQf
6PVJFuMAKIL1fnvW9iTCg9
1m2EwoCsZlX5JauNr9O4zk
4lAYMPLPFOovwTCmtTt9b5
22c2pt75xtnDddA5Zlm0yy
2ENmkocNNewTRbuNd6WJpR
64Ret7Tf2M8pDE4aqbW2tX
22HYEJveCvykVDHDiEEmjZ
41kg2RvdwBuIv0OPpvBS4v
0HJRAM7Gt9jXskuXjZeFX3
6ORqU0bHbVCRjXm9AjyHyZ
3N5wUrnulGRc9LLSz0rQFb
6WlmA3HPHuNIR2mxI8LkZF
0EonrvTzzNScmk7QT4L3dw
6L89mwZXSOwYl76YXfX13s
6QewNVIDKdSl8Y3ycuHIei
4vHmY3cg7PWCPE0buO3G6t
4ePP9So5xRzspjLFVVbj90
3Y8Ff1nH44jFywAtpgmleZ
6nTiIhLmQ3FWhvrGafw2zj
3m6KkYKdnbffMpGd9Pm9FP
4COihQpsyRIzL1tMaUARvh
48UPSzbZjgc449aqz8bxox
2aibwv5hGXSgw7Yru8IYTO
4zTejQEydEnAgeaw8wYBMC
5JzF2iymNwCyFz9MTmojd0
1FkoVC85Ds3mFoK0fVqEqP
1FMm3wG5WOhi7js35KR7Ea
5pAGl4nTCwcXdce769jJuI
5jotVjBvm9rSZSHvj4QA9R
0itNMuBHye9fu392b4e9oa
1G391cbiT3v3Cywg8T7DM1
1OxcIUqVmVYxT6427tbhDW
45Ia1U4KtIjAPPU7Wv1Sea
3ZOEytgrvLwQaqXreDs2Jx
5f2ZVFERwwh3asebmurZEf
456zydWprbBxt7eUzsHJXS
10Nmj3JCNoMeBQ87uw5j8k
4Fgbu0IW4U5YQRlf5Ysjfz
3rwdLlTki1Y5YLU9DOU4ks
0vT0i6fUPaE0UB4BO74bFI
4KytLdPRCctWfEvXRhbHB4
1TJX5KxBVqwqPPUPH16MFL
56OSb0BpuPI9tp4tDvhC8i
1gij27s31tFKcTHa8f1u4g
5h8XlKa4TvIhOcJXsPvDX7
4wL7XxJ7DNtIao5EaynvuP
79Tq4tCfNGFJChySkOS5Dy
4NQJn1aSV9r6UmYErgzS4s
124CQLjNlenz6CTKVCV931
5ahPl557niKxia8Kquw1yh
1W0rNaAXmNzvfgp47JzcVQ
1is13OusVjtwAvLx5PcxcZ
3zR16RvuoDiglmh4iTacvN
31KSQBbHS275MsHgHmTD21
7KGbYZv593eAMISQjYqTDT
1EJIEPzahlUiev5IQ1HnuL
17lu4tymfnhmcIDlzBbtAb
2MCUmp0I98gsJBmey7DfZS
4dDurgTN3eGyU0ghzFJ0T1
2SiXAy7TuUkycRVbbWDEpo
6Th6ND8RQPywiyelecP5Lf
6rAy2MsMUabbqu2VygrblP
5XeMsYb1rWxQL1bUUaZajn
6J17MkMmuzBiIOjRH6MOBZ
79KUOd1p6yNjh2Jkr9IQHk
4wYq5wugZDzQiMZQYG4wVB
7EERPGGkPTXUcjXFo4o7jN
1Qvghv6QpCSB3RiycaDiWz
65Wa8Fu1ASV3B0dz2vwKNQ
4XyONPP3WOcquMO5WVj4mw
3k1WwLG1OXCm6iQ13VrJEL
6FWoYwZa13llS7nj0SG65F
73HVgj1xXW9vuiRsFAKwyr
594ONMYoHlJnqHPEx98t08
4cKoFvIkCA88axbQ6hfbRC
1OFNVz8rx3pMl9FrL1IlDE
4bP7RH0Ce8Y1XmNye0SVYs
4eutZb21bHZerJnxqW5lB0
2KmSnPWWCIsEomVsKnbE1a
75uv44LGpyL0DhyLli3aXh
5pLgH1bCkBV3bbmvm0qvom
1KBuhAHzia2qoD4u6YhvER
4feXJ5IC3avXsVW9WNFSag
3fpzBeEHvuXKOl7QeVe1iz
2d4e45fmUnguxh6yqC7gNT
0C80GCp0mMuBzLf3EAXqxv
7nemcVsXVFZF01iqpIIo2Y
2vyae4DvSU2gs8OMOGwXF2
69QHm3pustz01CJRwdo20z
7LRMbd3LEoV5wZJvXT1Lwb
08mG3Y1vljYA6bvDt4Wqkj
0LN0ASTtcGIbNTnjSHG6eO
61nSbxyL6VRPp32AMscxiF
7yjJ1oqpPUx3nH8kadQQNV
7xnaUQyUDrpSr7w6USC7FU
54Eo3yEOIsqcR9vzNVmvay
2s5eAuya9rB6PEMvOO8h62
7990Xs9HQx7FXVIDVPEwj9
2ZSCy3P1QzpJySCWA6NRIU
7c7XYLM8wxmoryem2gzMZf
0xWkIINsNdVChvGUUqIiil
4QEbXYWpDDWHzXNINdZlzW
3GhPlNJIIM0c0AR4MmTgNS
6ULwhgWVBtR6wcv4zaXkHv
05RgAMGypEvqhNs5hPCbMS
0Z7O8GMQShj9TJrm2yX1R6
6yl8Es1tCYD9WdSkeVLFw4
6FBmHx1FuaSnTnnnaThgbF
5Tyingwf7ItW5WYIoFlBHy
4c9Ea26OlBvnMQeDxtKI2f
1ZozJfi8u9cO2Ob8KwiwNT
40Gxnw5Vc8hnhGFknXHe3R
4hOohf45f0JtxYKNsEAIOV
2zYzyRzz6pRmhPzyfMEC8s
57bgtoPSgt236HzfBOd8kj
1hKdDCpiI9mqz1jVHRKG0E
2xNln5r06KzE2ABS4Vq4i2
1pMZLdY2FGoyJnR4c03dl4
1oTHteQbmJw15rPxPVXUTv
5yR0Uawj5Srl1O9DSIaLuL
2VOZ34Vi2uGbiNMGo7vKrp
0ZP7AIlXCTIfGQkqFZCkHQ
0KTni06L6T9jR9lCtVzzkN
1CHdKeush7KNLnMWhBM7Tw
6pb5BBnIM5IM7R1cqag6rE
2wO8aOvN1ogLy1N8XT1WJE
0kNkJNja8M3BynBq7AGpc9
3k7P5BL3TCvE7AjnAKvgnF
0a9RTS8ojytvxUzK8oDvU8
5y5ocwg2G3Py8ljkJp0IoN
5wGKhAtleAFv0YV2w7NvSn
1MEbfjEGUiOtdOUjNpnbdm
21gbXZ9RxnnOVklg8HuVn0
2AiEX7TdPHXr2GTXusS0mm
5OQsiBsky2k2kDKy2bX2eT
4rIyH6pdO0nHPWAXQQgO6g
2F6FfZ4w8z3eJpSxPotVO5
0C2VErfBEUgsx7nMM1v5Q3
2IdHMVUxMbLHW5HU4OvOcZ
7B9S4RiRczdw1B9ddjpFe8
4zVyMSnXjxM734u4SQTqVx
6tXnRSvuNgOq4QcxpIN54r
4rr67zXmEYf9ykLigeEsbv
3zXn67iAyxPZpxQ7FquGXV
6AbVJjzv7thIvmMCuhZrmK
4b8GTae6rqb9oPiRzVa3Gy
4XHjt7mlKGwiwPPD1owV7w
3NnHbRoChijsTVSP8kQTp2
3sHH7lklbfpcraDDvYnjo7
3pdHJCTk85ls2SGGXIJ7XH
4ut0TJ2w4uBoiIdX1uzVTB
30QcBbuGx1K2B4OymiNWNa
4irVTqwvYlEEVfS2oDP5nh
374rBVAfbGAwFnIk6XAj2H
0eE58rFwPTkITwhfXLZ3vb
6n1Ec7rtQ0BO4iwzVlsT2Q
3svN7piEFZc4fn5paLZOOJ
6ToM0uwxtPKo9CMpbPGYvM
6DNvNFhGQvEYbQSKtwewy0
25CbtOzU8Pn17SAaXFjIR3
1XTGyfJeMiZXrZ1W3NolcB
2QiqwOVUctPRVggO9G1Zs5
1wsRitfRRtWyEapl0q22o8
2rBHnIxbhkMGLpqmsNX91M
59WN2psjkt1tyaxjspN8fp
0tZ3mElWcr74OOhKEiNz1x
2oTDOIAdsxPTE7yAp4YOcv
1TALcD2QbnbneOLV9QgqES
0PUHaBjT1Id9pybq25tRCN
5iiXWdrVYjxvwglo1zfryW
6NxsCnLeLd8Ai1TrgGxzIx
6Ip2Ia3DPgc9PJ6hcQW6Xa
587bVBCHYW5Q2VNRLig4AS
3yI282DoIJyERd0vGukMoB
4YMLW13PuuO7o3jkIWlKAs
5N8Uh49f1evBiBEzwHcmRW
0s7KuDVVhYSyeUloapNxxU
6pxWv6GV35VGmcPf5dh6CH
4Jw2kipb3igPreUTRQN6fD
5hvegt2rnsuCMhDOXkPffC
1edapjizXWDfcJPt29Jg8Z
775zxx293L1nR6CyQ9Wc1q
4IwnNqIML38mYMXGKVsScD
0QwzCPyTv6UnzjAhZZ0CkB
5FCyoZGaN6nRod1oNDJIWZ
4j6KS8Pg1rFx7qlz9C3vZR
02SjT88MukDOa9KuuRuODY
7eNCd5hipdcUscAHTguegq
6X7YGtVtP4NgQERHUq5tyk
5V3mdRI2yQxbSsJGDPc5lD
0EYOdF5FCkgOJJla8DI2Md
7EXHojZmtTHEfnESp32D7N
4N0gFEksrt48B0YZQpLjkG
6y20BV5L33R8YXM0YuI38N
7r7WNowtSgD3yzLL4GO3sF
3aqovPGXQCd2VfMVburLjQ
1VL43Dq9OTXH4oxIBf0H9x
3f9ExTvZBpowrsPuRRxAxK
2JTfx7gvNHXNcK3wwW4NYr
6TppPeOUyRwrBRmXSOI6f6
0xSF7iHZQxaZYMAiBfobms
6LUfuyLgvgqrykiTE6sJHY
1foMv2HQwfQ2vntFf9HFeG
46VaDtbrBj929FWnUdTQV0
3RDB2QvuBEGv7DTK2SnMwO
4liUIZvPF9E1I2CTAuNcr5
0Q56LPrOBBRbh0XfyqbhXR
25AtRzK9p3ujgii6QIjjuR
79q7xFOodcfIVbpNHjE2gB
53a5VKWWeaxcvQC2R5gAwG
7mgaOxJqCvGFG317Q37WWc
4RIKJxNao8N2TkMeWEYlE7
5QfJs8NYlokYCxOb9TLGep
0XHWClSz0v6RIaRSGqJH3X
20yID41if3ooalNyAoBuRv
1sdH8hJyA6bVp24HPGq1gN
3j3Y99oHXkeWGsCf9TBj2r
3cbqUwQi5sl15t2wyjIkXr
7cLs5XLykhahXa5jGxOAwC
7C7c7E44ViYBpzQDUywc2w
4E1tYstXPYaSsNAcevSAAs
1u8SxF1k2NsNi31BJ1B7m7
49eHfrEx4B9bH6OP0vPLnN
6AS2EeIlSpsPktMWr8AAA1
1mUkCCQ32B7yoUCvXDN9XB
00DS0OEgFnBKeL9S6OR0Ii
5i8vMZ8AVa04DCORlftBQA
3rP2oipla6Ln9rKpNylfTk
3dyGfqWu2EJA9jGZIqxH8k
7fmmaDJBKinXoLsZAI4FKa
1xWkmg9faCFP3Yi9gJZ3fv
0KQAnZxzf14RtIp5piuq61
00qOE7OjRl0BpYiCiweZB2
1JLn8RhQzHz3qDqsChcmBl
08onVqQ8YicJ98Ycm1qoLf
7vidktgNZFQylTgH1GEnMs
5lA6mFOvaiienokVbTZEQx
7IahivnWF9l1W8DSBQe3Xv
3OcBH9Vzd1UwJkQd3r1dVG
1PpfeNl5uYRBhfFcig2Uz6
0zbSbnHtSrVl1CBaTvCLIH
2VX5J8lHfBjlcY4xU3TqtA
5A0FQhWDBk2YSPiMjSZxe5
6Acl07q1DvzOyEskfmgsdv
71koAFCnGnugRdGIDfS7f4
6rlPa5vO2PV7bpVDz1SAG5
6PuDxX1F5lw3jp6t8FsWvF
0HpJb4Lstb9R6wlu2jUBoy
0UQNHlrHiz19Htk7YTLVe5
0YPyKUa0AgAbt0ZuNWt8vS
0rOG02q8ocSOeGHWrSAObK
6BL4PpswVjH9BAajbIbpmZ
5Q10MhatY5DkgBfbWUkRpN
0dYN5MqKzCfdpDb1bgvdsm
4hjGZN8poACfjWCK3Og6vY
1S9tfxdFr4TqoqA14gnKj3
76Ug1q4l6rGwJ2ubV5wh3X
6lrDckuosGpwEHtm1hHBcf
2pw9RZWZibttZzoFhwjuy6
4hNPMfFHauPIbOKvdYqFt7
7JzmCjvB6bk48JghLyrg8N
0dcMqjeDpwqB2xhzMsld0p
0eEgMbSzOHmkOeVuNC3E0k
2bfGNzdiRa1jXZRdfssSzR
4Hff1IjRbLGeLgFgxvHflk
0q6LuUqGLUiCPP1cbdwFs3
1RKUoGiLEbcXN4GY4spQDx
0d28khcov6AiegSCpG5TuT
4meWaS5tzF1IDU7DrwHmxZ
5eZaT21ZVGyGHJ8kcwaNxA
0WuYuWhLws8VahMy2zLLRJ
1ZqKCseNe8FIZRDyl2E2Ac
4ZJGobiy4ayWSdKfoqMRlX
6nofbMbadUdrtZmIsBHyYE
0WJTdVboKc2KI1DzzAWyYM
60R2v9lheAu3lwZwAFxMZK
4JqQWAr47pGEoaMArpA7Z3
0ihpozIwLtRZR34onjsTMk
2xlG9mnVa52SKAzsxDctbM
4j4GOtjzdDux57p39vJPnz
6zeI0rAxevXdtmwVHyCQdx
5D4Mi9lu1f7MCkSFbeaZqJ
2MrWu3Gt6ucsOHC6eE8oLV
0OL0iYmqNBZnufCKGgNpH7
1NIv7bG744T9PYF9oqEwuJ
72ZG3Ay0unYpQFaYyYiaKX
5CeRB3DKhs1orauuBd64qF
2FAzd6oWZdep6NlGeftJma
0pvsYKxq5KfB6fW2s3nE2c
4oVxzPnsK4wOb4KPCApRD9
5HlGgSFBJMI7YqzciPdsMe
1YDQAiatujvGRZW5QTO6FD
3bwAS8cN7Xtzvv5UurJOOX
1TDk2Jmi4dVZhm2dum3Jim
1Qdnvn4XlmZANCVy3XjrQo
3YuaBvuZqcwN3CEAyyoaei
4bPQs0PHn4xbipzdPfn6du
7j31rVgGX9Q2blT92VBEA0
7cePDyQv5FOCLxPX8MMuuz
6A5M31nKvt6GYaGL7XpX2w
7hhdevnf25wuBppfypVVoX
5uXZM8ODRSYlOXtEXov8lY
0c5V3FXU8OuTaj38g72PPi
6t2h7e3YMaUtUjLbcmXNDS
0tuBf0RjZWYZi8k1wu5z9l
3Nc90ejbdFtfolyNLH34cI
6CeNLWuv6hQpYWXoTN1NPQ
2pTKVGymkgTjkRFhLTeUXC
2FeYqtocalFZB8Sh0NPP4x
2t1tjPoVJSVXFJMPB14566
1nmBoc49OISvbOSz8GCcFY
2RDgs05sg2vrpwiAEUkWd0
3J19l4hOfwFFIF715BwVcG
4gOCKXe9WwBdtcUrMrGZGI
12GXR2n0n7rZi63wa7zy5S
3Hu8fK7OVSNYGE5tXxye1L
1MNer7WzLERbnZG7NCzXRv
4f6o7p1cvBjjNEC6LL4H52
7xsnMmsni9KBeH0489g5FL
0ibKdwt17OqjbRKZmPqjyR
2pbjy0mVPvNeoRO5OaDyV9
5ZbKKNk7MQaQa9xGQ3QxPb
2tNzYQ6ZRP5UNBkI7S2KqI
4XN9siaQWbUSK8RGZQYcKU
2kcUaRm83rzvKt2QvWvLty
2qMNqsYmJkuIdUM0Ua34UT
1f4BRkdA6dFeelkRSIk0o9
58KXerol2AZpv2sPi4nERA
0XmMtgggCIHSQk6y4zVuw2
1AWXKlAvgXcwzisycW0Lge
3ea1AoVtnUw80k56W21F5W
5iANqsxPa1T2BkDigG3oXf
6d1w9dqkEWJkOXbOd4ZfmD
3KHX3hl3CkQEqaDNBsnSY3
1m9qDxCMbUXsInPiMIQE3D
2CiQdWZTDY0lHXnAtmgz3q
4NbIVvQ4uggxBXY3uTdZN8
61YbQmbsxGe7cA0N3laZl6
4hPOUBMZDvTBn9BD9GahMt
1ugRmaf5TDDf1fO3hFSIs1
5kwVVnZ8ZjJanBbGmrbHsb
7pS2OVdIWviLpz5GOtJLzz
44yHNmayqe7dI9fHjAYPCl
4ZnD7qmpP3NWA1ctUzeUIw
2ceA7CWWx6yIHdzppN8nLF
4JWRyetq4ALHAXm9ByOOEg
48PrL49eJ5P15yTxjK0oW6
4dVbhS6OiYvFikshyaQaCN
05TcC5ZN9rp8Glx8A9C2Nd
56ucsSaTrjiQaokbbDASOR
3yIUusX4NApzRSAkxZFrJg
0M5xRyxGpFFDfzN2x0wdpH
44wXefe8WB9Fd6xwtmAwbR
0bORa4VpL8NzyMXEI6UFGK
5FZxsHWIvUsmSK1IAvm2pp
5UWwZ5lm5PKu6eKsHAGxOk
7x8dCjCr0x6x2lXKujYD34
04MNKrAnzrHDUzuXAtNoLr
09PTdECef2Uxix7ma0HCxs
0ZEhlT9v8CdOKu55zhYGv9
2C4aYxNpoPkmoZ3ZdPeuOB
53968oKecrFxkErocab2Al
0bVtevEgtDIeRjCJbK3Lmv
3YBZIN3rekqsKxbJc9FZko
7o2CTH4ctstm8TNelqjb51
6q9CRTF8dyABIcKj7bCJwf
2CXPNdQj5ppjL8c8gIkS94
5vgcwA4J0bAifi7dwRyiGr
0kdSd8yApahPPBEqF6NUjc
7Edkp8qLe3TU7bWvurZRSh
3amsZaBokR6KKTYKZk7Gmb
4X63gKOkEis9mp4IPYeBIG
0sW3IgHxOYqpOk2eW45TLG
2vV8U3rj40YPid2RgJcY2D
0M5RED8JMU77SjoKioGeHv
3a2J13Qj9knU0sl4lyWjyF
20vZII9Yu52czI9Fk4p39r
3AVZaAbDvR6rs2NN4n0aAF
2takcwOaAZWiXQijPHIx7B
6JnFVmPyJvjnfBag0hhIFa
4jrCMOG9OPe6iF4vWFxatb
5YXr4AGfUQpLSxtFSsKUh6
3lPr8ghNDBLc2uZovNyLs9
7ouMYWpwJ422jRcDASZB7P
0c4IEciLCDdXEhhKxj4ThA
4VqPOruhp5EdPBeR92t6lQ
3skn2lauGk7Dx6bVIt5DVj
4CgLsryBo7vNWSR1eozlHn
06U6AFqY2aGcGZzjFuyuUV
0JiOSSf50Ot02cVYoS3JQD
0MbsgrA2GQejrEEtoBqbEz
3buGD3dGTA50HY3wULE2gu
5WfV99JT3n3vCEGQ5C96Pt
0Zcetnr2Qdj9a9nxScfkQz
1WySibM5puIkyUNKwSVOJy
2KlFAu0O3gBzqqjjmxsbLb
4QdtxZiSFl0GYrXWOHc3y8
6zGDIDjfDkPyNxrEERO3XG
68RA1QUNOOzS50vRVdl2BV
7eGerrw3clFvXx1GhUYsK3
4NAm3aWUkQlQcAll13HVEt
1bx7OUl2UmAnA5oZkm9If7
1ynmMEK1fkyiZ6Z6F3ThEt
2Q5wSOwq6BDSu7sSVMNrtT
5gTAvFTmgxyYwjTmJLxb77
0AeWU0AgMsAgIrsjAhRxgW
1blHMFNrpEafM2GG5K5pnm
3Yls95V4qCzVfR20gr8cOW
74uGhWp4BYpjFj1V2DzgoO
5SZ6zX4rOrEQferfFC2MfP
24NwBd5vZ2CK8VOQVnqdxr
5MxNLUsfh7uzROypsoO5qe
225xvV8r1yKMHErSWivnow
70YvYr2hGlS01bKRIho1HM
61YMZAc4BONNLAHL0ineBY
4rZtjSXxcGkRutV0GiBEgp
1gJ102uytr61D94SPsnUab
3ar0euR40jkPyLq9SxjMin
7d6ULBGNyCNEpX0liOsC1o
1kWvqPD3EQ1DMDFsA7POkM
5qQxqHhrMzDdEFOtcAYNk2
0FxRbTtlo8AutEbifokqGf
62HyVeSK4fpxjKj6dsI5MP
6MmPDSRzK7A7yTWMAApZha
0tNJFbRrMkOlInafSZYzlT
0m8jfJIz5zUx1gG9q5wBAs
3fyDzAD4eC4X8KcZFpD3zT
13BtwCqyeoRTV9xL4F9E4O
2OT8afy5eqDB1PtTPnWLa5
0UGelgmaTMJEK6g3remMeC
3R7S8SJt6izuYr6dbDFpNI
31y7h5cZ8BhB1w1DC3CVyz
4VxiQcuAarljnYYPxyMZVa
415erohzzYG06zPaWyTPao
2sRlM6fC20RD72YyjULZy6
71MnIBMUxDTx1czMTWHQsK
4CVZfOoDsJoZACHYiqOVgu
1ShqbNDnXDmw16rETPN9FI
6NyemC13YP4tyChsNnMPTf
0nO7ZWwTji4dUFnsOlkgbp
2ShzxcK2Jl1C2dgzihhXCo
5MjxA0iKBexRxwVfDDrdnt
5WrMxXJJgOKD1NAKtvBYpU
5sClbpWb0Qo7JF7LI3qrnH
6HlvyZgc6n3GoZYy8kQPDQ
26UxIieWXyIFj0i8YzPcYK
4iu4n4krrLJutGcGlQwhD0
4BEzFBRXGicWCmFNxwUKj9
0cNM6onjLhfAAfiXdvfT0o
7nShuBA3PhEr9BtcX7SUa0
62afmZLhXjD7zd03hM1f44
1S3Fblg1ZWnf723imcuUkZ
3zMqNZI6NiiHLjvhzHyEva
60UgAotdKbPWXePRJ2JSHl
2dap4hYk1G7f7mxCpeRkDD
7xl2ZaOnKAxJyrkIQe2S43
55DrOLrAlt5LYZ52tsO078
6FpoNoEYBYNLue4Fr6FNRX
5L3yfY58ycAn9vYK207U4E
4HakXl0YEkuz7PIQtRIth3
18GC3F8YPGB8CePXcTUizQ
1cGO4yPj16rbuzAHOvVE7w
4R46pDOqpFIY13Xb24RNrV
0mN1eD9kHVvmyPP1WzdJot
33JY1Zag4huHgmocMyVpaI
3angZOpG4QMpOKkwFDaOPi
0KWBHpOKJK1igM25T3rwrc
7zx0r1pcEiX92UwJ3MuNbV
1BnUsTRDsBhlZhTSUzniCf
4SkaqNVkYf79qdIUQM5nMs
4Ub2nExkn7hkLfYuEPNVsM
1dHBD95TLrBX3Z6x2SnMs5
0NED3cPyXemHq72MCGBkXk
3HcfDJ43wJvx9soXenX4xY
5W3Lp9LxGt0nlnlJwv2xXr
1WzyjHxpKixsPwpgEjzaES
7IkEtuwz9VAyh8sZ05JIIE
145nF72HYEknlCpsRsZeLL
1PKSqAJFphC3d9mmyMOZhD
5cB9bHZo3OVtyuFtwd3M8Y
3LzUibNQLKFE1DJHxjzjCg
0kqSEAni4ncFoFFAC4C4eh
5Yds5mKbrnFDomw9sshRkT
2vaqtH1FLPbAcF8P5pY3B6
5l2fY9ZGu6sa8x2yWDXdfx
1CLqdSsZ2dAfzt7EFirvQC
1NQiis6km5uuirsS6BoO1Y
1agjoD2BUwCDlPKc5TN8wB
4K45eDqKZYTrUHe1IpNFDc
5KiRA20JZ7N2PgMIrffHDn
6Nnrcuwg39dBDtEPn5Firo
2SYYfxRbYrxpUPNevZtHU8
3eu1Q5NypOTi3a4Xdf7Yb3
1YE36moNwQ51qDxg5iW1m8
2KfIPHecA2FTppFJqtXR60
5qLP4kUIdWYW6W2BesirBi
2eu6KywBq1wJVr5NY6h9qK
6nu3RGt0YwRl9ipfxEIyOD
036QzL8Dx19cF2aNFQ1gYg
4paYj4M0Ay3Eumo93OdvBz
258jYLjhNDtv4ahvQKqcoJ
1FFJuYjCczQODX264HN2QA
0DGQ02FnlOXZj0I78qmtsF
3NIe23Tq4IutDloTW8CG7B
73o1g4J3wbWN3slNKL49NZ
6NpCwEh0RltvNDUMgOwryv
4v55i0SCLSvFU70EPPqnVz
6T2eTSV8kjq3ZeLyWb9VXk
2GRH5tdAfhbYIebSeKIGRn
1AH8YEUuQZ7B4PhZq0taRm
3y6WaIaBn5bLpGToP7LhLi
3cOBnEfOyvSKgai3K5y4wO
4SKWezNfjgNRq6u6a0glJz
1h1r68yi0d9TdJug8MxzSx
6p0Z40E8NjQidt91vg4pqR
0dR4b5FOm0pDMoeNuBwZFW
35AYqpSGk3nPWAFrk9pvnY
6pfnLeSZUD4to2VOpKU81l
215mqenMcvhewyDpWGTael
55pQPW6BQkswMniQTt0EHf
3H2OCSqYeI3IX1njhsxpTo
44jJ2WjWfXEedIip4G09kH
5AFieAysBxs8nlKg9F0zMK
10IVV3wWXSaPIxo6I7cLI2
4tRIFU95cKolHDUQivDdYo
5oSNA6BVvM9lD2utfRzEiV
2QJn0m4ip9dApViYbYfIQ1
0WMj4AaGnlCYptsi2IBAbj
5hDbU1Xc7vW4LM297zB8V0
67YkBpPmSIJ1TBwEFkEnGE
5wRNnKrNOenNX1W2Glx2iE
4klkDKqcjdoWBtccWpCEFi
5cN9IB6gAupZkignMCypxW
1P2mapMLQZzVUyrJvvangD
7389d9jTcd4mTYexQ6qQE0
7pg96LDaOIOD0Aa6AwpgjK
1I67PLmvaLyT5GMDbMV6yO
5Qh448InsXssq1HnZgDTlt
6gLSO84p7Wz8Mr7EXux7hX
6Z36NNIEfGehBigbUgERsj
2IVoY8qXRiHzZtLpBwajGd
3xqS292DKZKogLaU41sBvm
0ayCSs6doAHFPdKsA1cNVW
6P0DHDyTPJyXKLvPa3vR9a
4hiezypMjKRtFR7X0nh5Zq
0u7PjpVCbaHfjqVfrSZ0h0
396Z8DtiUIMo8HXNE0nXhG
3nHaea6e0xxxKMYeQKHf7k
4dEPctzZDZ8gIh3Vla1KaW
4I4VmVSQ7fsSN0EQR2VqgN
1z5gUczS9SUiPewevWJ4Wp
3lR44H97buxyUifu6eWiyT
20LxTsa6936zOlzTWqoPVt
1YsiWaViAU4EGcoI3HY6j7
6HHytHLXLX8QfWTtGfFSvH
42et6fnHCw1HIPSrdPprMl
5XhkV07Vou38wnrzwURUOC
5uuJruktM9fMdN9Va0DUMl
05wIrZSwuaVWhcv5FfqeH0
2YDO9NmMDSagP2yLnZjMez
5xMNofOCmwO8iSBauIr93r
31PtVk00l1nWenrD6qee98
17VmhBh4bIYA9tUWMt8flA
3JRFFXfwaqzsGH789iCLd4
4XrjeLVfGFapgwexhYjk8H
7EJsu0zSF2QKITUtn55J7q
2XjVqBCwfiVtiGNdbU6ydm
17Q7emDWGkov4JEzX7nRZX
5Fdcakl5TJWeee4Z6XGfrp
2HY0xuuAqkGAlocHJ2Plu3
517vKKe6SMZRF1NkLCCJvg
0YzIKJKs6XeSK9QFruiGr6
703O189dBgYJjmDOl1MQHl
2j3DeRf2mzejwtO1gLQvIv
5VS5LWQgjzW9FPDeft00cx
56U2qfhXubL6MCSMwxIYy7
3Eom573A89Sr3SAmQCOSVg
1WOjkVKOVWfMLzbUl7QzdV
5yE8d2pnHqUuqUpmf5jdRh
6wxf0juUh9LqbZK0Hrky13
7z4DarPmWybFV4LUgx2Bot
062p9QwcQbpQxNBD8LYVtS
2FtVC6EWYz6kR8uJcGCiyD
3ACA2YZrGaJtxR3zAhklO3
7IdKcTbp9HofNQUyRHzTMZ
2btEy3GFrvVzUQjFtim2Um
5WOElCIwPhxcnZ3Blerk4a
0sw5Eq1wiad48SZH7m54KI
5CQkCTdMFekxOboL6V9QCv
7IkKmfKXcN1IeOsAJzdf24
2yfh8gDxU479kmGlbJK9Jy
3Qzm4oECYJ9Bms0UduTTNK
1ux9L3EfeMPYbidyb7INEi
3J2fHyMJmDojKXrDTkEFvr
5hkgrWxkobGtg30I7DsfVu
6RJdYpFQwLyNfDc5FbjkgV
4ImIJRZNJhNQLLdUFSYJoS
5anCkDvJ17aznvK5TED5uo
6FVYwnVrnAEIRnY3bHJb46
6DRvu6LgU0wRF6Yr7WHRji
7gpavVMJwJYFNUzfzUdSv7
2SUpC3UgKwLVOS2FtZif9N
3bN4tg6rnNPy9GCkGhym4T
1hqrYSqvNc9x3BETX1cZhk
1A6SHOaalcz1ps43PBImoa
7MKyK8XArOe3RzU7EopTzw
1hWK6hL5ZkdIQQCuIzv9ho
2Q26sym8OSOl6PfH7LLPtJ
3zRecvgIDMU2aufw3mrMlv
3lpB43PfmM4xB61fJfsk68
0PKZ6FSBTPDXs5X32u5LAM
21OAkveFqwv2LSnHqdtWWI
7F1x2SfeVVulBfxEUPDfiU
7hpBEclPFUEJGCXno7bqKD
4xcP1RUsxib85qRf9jNpXJ
5frGkuPlzYQt0oQyHxS6mh
17cEOjHWO5hfg7DnHp99d5
5TJVYjaTcaAubtsckJJsKA
5mLRM0UlxUV1iCG82w4e2d
0T5rViVChruZf87SakWiYQ
1oXKOckxrci65q1nYdOL40
28bWkUI4Twk3Rgc6n3p66u
4oa8Xf52WqTktEMKh1YmCp
4hDFAsjNXMouhGRWUiw54c
62H1FVhCNYjXLs9flO04MW
397Xfovn3xIRHTwhp7lCSi
2EnwjJGoGX3K7RzDHyiyfA
5C0LFQARavkPpn7JgA4sLk
1kj3ASwCuqDnzehRd3WIz3
56X1106MCLMjHhBF4qPEwk
7wExJtAgOuF21fMxUwyIsB
542di2pc4TrCoIpfBaucc4
1rmAUmr5GyjEIXJcCoqz6x
4atWk9H40DICjWl4yUa9rX
3y2ZyyHFZs9X3yX6s9FKid
6FGGPTieh68LaFekn0Q0Ni
1tFF3dkHFUJpRezsaJLPMR
0NJI8t2Ha6ZqUI8iUGpTqL
27xvj5w9MSLRMT1jtkBk8K
5RWeQlGw2mz3osj5lufWtl
1zTtpTKjk7RsMBx9ybrAqP
2arLsPR1vDiiXXsEGnf172
1cF734ctMqJcCvnBxavR0t
6BM4XR5kpCBcDC2ruvxMkz
5TrIHwld2ERD75B5TfceEt
251PhjPNakilcDWfUXCo2Y
4itLOfCbRg1kBxqCyPYpzu
0UUQkbfJlEa5qnsC3XHQ45
7eqhGgAei1cDoyEsfB32L3
3dwPjTU0C4rEm2uTJqcAkk
2ZW3CSi2VWQFZnL5v1FNDk
1K5Oo6BtGsMLk4KWtPhv1m
3tURQnhMWMjjrReczOJ9mR
66fZFxk1qbzLMmKtLC3c3M
5jtnAiC31Q9krLMpTxa6oB
7LfZO2P1M12zWQowKChsnj
2ir8XTIpuqY7cusmaIsrVt
1woWoVu2VhJeAUrCqZNIoT
5KC8H9quBCXG9oLu8plPht
5oiygKBDfX9cLEx1TwqfDG
4dWiIovDWvpcM4JNComGtz
0ujklxrVM2jwpLMgbTwTd1
0WCyqDDqsKW1wFW1qs5WrM
2oL86mXFMASp2XNrV2oUKc
5EmdTP4Nyla86IomxCX8kl
53haw5BnbMjfQ7zLXK8OSN
29X5pUiQQ5rsiNd0AmRH78
43BOrjDMexhUZ0IfSVSSdi
1q6Z4raX7ph1KJwu5rKhmN
17rJaGvLhZUMldAj1l2XKS
1ctBEAnpYzZBYJkRKPb6BR
5ILYK0YdZkS91X4nbi5b2I
4wg2lKhEi2Xbiccr0VJw8r
0eg0G9nnRHlrue5WuNHUwE
1NOn0X82GHIX27uvRoZEXY
3QB0lCaMADMRdWthChNYMD
4igFtGHWo9Phizv78Ermsn
4li6V4D5jhiRzv1YA6qEzb
0EcdmJCR4pURncLgeeBYvl
3BHwgqKfFUlqHxUuXxsrP3
5nikrNjcpPyofwkTwrtGC3
5PdUFOY5XmebdMFYNAUlpP
02jjZXAz3iuIPq96vBWE0X
5FUrkyvMhS4RgJJMTNyOzY
5e3YOg6fIkP0wD5TyxcHOH
5ghFbwhZ3zySF7CkXL9XAK
64ZqHmBufTSmDRd0it0oEf
4odMw0bAPDR7kSwb15r7S7
597rV2MPhTygEZH2tOH0SW
0HltuYVWFg3Xa2HcbErsgv
3N1kYU2eV5huhAEHhzNSd8
6JaafEcWjKEZK9UMmgkGn4
6oqj367XB1iP8AhuslPZ8e
5Z6aR9CH6KfkmlKs25BBKW
3sZWmVcyFQLVriL1yGoWeg
5TuUaLSr6f65ECKaHTu2gg
5Heu4Nyrx3w5agcWLhqFyo
4qMzPtAZe0C9KWpWIzvZAP
4iCGSi1RonREsPtfEKYj5b
3cahGAUUQ0n55EjLBs2Wjo
1DqLFLiQEIE48jCm5RXoRA
0Puj4YlTm6xNzDDADXHMI9
1O2DYAwaGNRkGPGKEGpxo5
5YpZh8wfS4moRBk0ijNcXr
26zWdOUpB6P9E9OtQQc0qp
2QlhjL5KoeMwEGSUdIf5at
50fFYuUSIWKQFu7r9t2mNX
6AWiREiteuHYokMvQroJsO
2OvVZYQ8NqEac8HFHxdDbx
7GV9NMtG3zZkes6q5ODmvL
0lfoTtq7sXenoEtdeGaom7
7ec2JcPaqHI0XqkmS1MIHD
6XmT1eehtQjAtuZL3gMBNT
5orUhwRVuVCtRYxg3FzidD
0SydD6X74AwkIvwNUTyXFZ
3aYKlmPAJGWoNE38RAR3EB
3pWBXfPNPdguEeoR24ctN4
73nmqCvmJ3980QgGfyVQPL
4CZbWuJqZj6TEZc7HAt42r
5pSCzcnZYCP9EywqRLYRs9
0wjg8tYWZUUzRtFgPuDtzz
0qk4AAAkwoBP2NaW77NSQB
53dap6HnA9jO5pqJ4cQpJH
7cGfrVoC7G03XeXn7yflx5
0grsRAovy2yNa3W9pR3HkQ
69kz02an0zTBl2NQdshqnB
5U3enbulsg5PWPDXldse3z
6y3IhH9rJ4mSaOSoHGHlPb
0ErrsvDylBWZeAUYbqLllv
3n7zpzU7C4Ik7U84a4Jj0O
0A4PZuepTcIQVvA5m7R0M1
46RVKt5Edm1zl0rXhPJZxz
5cOM0fTHceCkJVwuyHdMnk
11Hzn4toShJ4U57Jrj4H0y
1AhDOtG9vPSOmsWgNW0BEY
5T8EDUDqKcs6OSOwEsfqG7
5vdp5UmvTsnMEMESIF2Ym7
4pbJqGIASGPr0ZpGpnWkDn
2fuCquhmrzHpu5xcA1ci9x
1lCRw5FEZ1gPDNPzy1K4zW
1RFirgIssk9uTubwA40SFs
39l2iImiZnBIUxllPxXvxj
7r8Yc8CBLuk18OJ89u5ou8
0SvfyHYDp2uIsHt53LDlI9
4MYb7NWLwXNDB7bYs3HeX8
7w9bgPAmPTtrkt2v16QWvQ
6sDQ4uiWw9OdVrCXFLSlZt
1MYlx4dBtiyjn7K8YSyfzT
4hEl2wrneFEJbJ6SDYWd2f
5pBvNeOAJ54zgd5lEOmM3b
4rc9kQ6qyssElIccFJgbJb
6AnfqcIa7IyrCMtgh5P6Wc
1h45qrpHTHLlbCGSr8QQEA
4QVOTT9CM2ftSLwnYGNDjd
6v6WjsyLdY189IewecL2x7
0xzEDBVP6SmgByZePlbUvT
6Z5XZ8fjmWGbkdahOgreVe
4cwKSCNNKmEohjYaumz6yW
6CnjrPmgbsqTkYRiByMa4d
0VmvKOqJobfm74XGqcvQos
1AhmCfj5iDDV0mKPFas4wP
2OXt3Uabs6CBC12vKxDGMn
3ZESnisFfweo5LvzF7YtCn
0in4REtAn2V5JuPWmGDKMZ
1tOT50hl9UG9kGif08Fan5
6oSmp7qnvAxUXeUKhl67a6
0YHWw8xmVQYWBCsfkTo8bM
58dBZbrdTDicJK8r3JYx1h
0H7UUHeVXAqpbbIURzLNFZ
4QE83iQ9N2N5kNZnfcSyb4
0EILCBdkTmIkL8iWFO2L2d
33iQW2OneB0oNh2NfrAzqW
0Wq1AC5htU9bn2LPTDtrxK
1TAC5SANfK7l6wGHtUQ7MX
47O5lXcK78Z3TIiGzuc18l
1hFB1obL3dCyIDigkojSTm
5kD9T7GForh8LnRz5ClbL8
2LTJelATdpiTf6r9qIZD4I
5JX4mqr9HC0ikdFQ3Hip0i
62JDjtPOXcmsPG7V8hwEL4
4UgTGcnTVEAgZUpRhpFVmO
4LKJvxEfAeJxop7abIR6kc
7c2g2zeoYsUJE0ABP2OCbd
5IJsCu6pvusksPEQSFbABd
4zg4rKHuuE8t8T0Bz4WBqZ
2KGZpj0nBZr26ik90Gplpy
17ESNqd02CXqQ1AfX5kE62
1z0ukRRAHT299Vbn0EGvJU
0BDEyp4ZIBd7Ry4rdVxOPQ
7GTx2zleuntdH9YG2F5zew
1gmApMcmzGhwzBo5kpK4gO
07SDLUF7bIXvJkf1V3xB0u
7hJshYUKmGnbSvrzpaJle3
3e2g5DCqmxTZy5Lc01mgeC
014Ve8n8RCnOWBt23kNtNs
3XsvXmUOb9UBQ2JBY4lzCj
4m5zY9PRJvqPRDhDMJwSel
0KQd3QY1Y8zC2rfO4ZBQRC
2ZdBKCs47s8LxMUPU499vc
0T43tNQyCOWRs4FFvPtRcO
53dlZT6AN572wghueIeCPl
3ZhLeIbuUTR10WTljA972g
5WQ1hIc5d2EVbRQ8qsj8Uh
52mxPsGKbfyElOA0FCtc0l
36ZvFmD6IuW1nawOBbpC8z
6C7zvPdhZXJHVYcXqRtaam
6N009Ux12RwA86twRdpq6s
4WFeJTXNHIS2wURtwlAkhu
7AUOZzM5P8UDuA0zga0PP8
59NBYwOTyhYhaYZLiGNIE8
39lSeqnyjZJejRuaREfyLL
4EFkvOhgAmlHEfDfvfSoh5
6Q32Vkucx2qeuVyBd3NiFZ
1MLUxFwS1d4eY0JWIEkn4X
6gRACp2CvsIhc7hyw8CecQ
4ZzJh7enW6rsjlJi6bBZ3i
2d5tXXt4MHyNDJswmLJGwm
4tXKUNSNB7oIbxHKQsZYwc
0mgJbvlGJOK3QSX9cke0Yf
0azJGZcBmcLKYpHBpFEdm6
22wnEMAQaNrbot1dwmeucH
3zFG5dyH5rJfkZ25fgR173
2QBAJHgXqUT59MDIS3PgUp
0zY7SkbIByXGKak663jHuI
15FUibz6QiQSeJiNpV61eO
4ExWdt0Xvup0fQvWDtZztN
4gl4EmruNzBjHj901KWttO
7JbTSaDVr8JKEYQYoCKBSC
2Q6bndA2CeuoWUnErmWmmA
4juq76lIar8YWOLpYMXUAG
1L94M3KIu7QluZe63g64rv
54ix2V2omFv9UUiMks7Fhf
6XIzy9SWS3b0s4wfDePHb4
6Nabz5Gsy80XL0MJoOmgF8
0HcOPWjjAPGCODJUXNa30G
3H5XsVsuQx4t0FLzo0wXHg
1GR1U3xkN1gf8dzvcyGxfa
1FJO2MPBG2R9HfuC0jtfIf
5txqlF1lxNhkWy1xYOwr8r
4D3xr8X3blab4uib6eUTWV
1FTSo4v6BOZH9QxKc3MbVM
1lDWb6b6ieDQ2xT7ewTC3G
3e99WsKpLEnTL1APvLNfQR
5NwkWwfRJaT55hEPtCmJHx
2oSpQ7QtIKTNFfA08Cy0ku
0VtsAqmH0vQeh7A2QpwC5B
2Ho2ouWtrDkZUs6OnSkZri
7nnptgmho81M6mKJJFEKrh
0ridOFtb6Ss3SoT6Dc8PBj
2WpstnkNuH6dUnm3fVLCpU
15rihOlF9uIFtkhB5cRM7d
77KQ6MGqORSHTV8k4XwD8S
61qXzQHMSwk3PStleYDJ2v
1vNdvKfEtoAiaDVPnY38Dm
1WlqUpaiW6KfSkVX2OR2vp
5VRlXDd1frWhGPseFQ9qqj
6f1g4KvVuhgeWlhCwW5eGo
4XexoLI5WWP2U5mmYZX0OD
5xnLp83K91G0Qi9zPtOSnG
6A7wYWtQpoUZHa4sFnlOsk
2mpaxFQmBf5V8apHwDBFJ6
2lLIBni356w2nu9jnP3anR
6eigjQFt6yHU2NaDaL6lZR
3VowFZMqNlHzSIa2MA2kwM
4SX7ZxTbWc5bOpl8BpKV7i
3sfdkh6pvMMvhcSIJ2j8AS
2ATTIE0sKIXysApJPlR3sB
7Id8Qi0oQMV8J78fdtuZxo
6l9QcD0SY3M1HQmvqan6sS
0u5hBoStSFjBIUpbsJERbA
7aQMQn2CBdb6cKKRUc4irF
5A643yvQWjutXbsecASkmo
38jqTWm5W8TQy2tyMKy0i9
17BaUkVoQ7VRuEbS1xd2qA
74Z5n9buszZVL1e20xe3g2
4QUprsXGUQIyHKPx0Xy8E3
4s7CM4uToX5eQ0Ze7zBAFv
5fv0dDJ4VXNv1l848OwHMq
7sgTYAbxP98xMtCTubXXZo
03nqs9r8MBiKheLGWuTh0n
0VePzK7HheniMjTFhePIPk
0SYjy8zVxsiW1xpriRYctz
62r8LTniTrEzlsrzLBQ9Pa
2QA62sru1hkijmVSLLipKZ
5Td05OvPdSvE6sZJ423Jr5
7lueMRAnUmE3Osv03QbNbe
5cK3ziS6C5LHrS7DDRfHci
267OOWx8dhtCz7HHVh3faJ
13y4UQmoNy0KB0Gd8PBV4J
3dQqAS1U1scWbj2YWfr0Ty
7cVdWwow8YHwevGtzIdD84
2aHuCFYaYNa6VeT1wVAUDa
7H24urW1U4QPbAH4suMx4O
1Xv3l2BNTYVTfHko6p3CbP
5ZdZ71BKeqArYgrecWPp03
4MEv6bwlq6ZdrnDK1uCKsC
7uTOhThGXSsQzSD90E2CQD
1MNjs1itfTCo3aIRQdtNEl
0iH01Za5iJ7Afo7Kf9Q1kV
1qPs3z4z0mG4zNK01G0AJz
6PmGmUcZUW9HMh5oZnOB0X
5IKtfQT5b4oF1enlashtkF
4pLAaq0urcDCDlTVm1tWmq
5tVXi80BcPhou8rJhJm3GQ
00B7B0JNcjjK1q3jzEyGzq
5XJ9nLQsT93i5kc38AaVsS
2e8PB9GecbB1HV497P56Rc
6Dykb3VkXD2ZarcbncAKvC
0YTH8rztgsczL1mNinerB9
7xzbKOysBzCQFPWRON4Dfp
3US6TegucCCOjj5UEavUQO
7LJOfXgV8MSVLWW3rjDmVj
1eyyQtAQIgLUtSaLdZiLnq
7iVeyiiZJ9DiO1CN2rZzYD
7dgevNPGu4SwwEw0dYkt8j
4WLkgSRUbAo2KKZeTp6qGx
6tsD0XfChFsvfu8ecnKxzY
16YgE1NsLpesGUbbZzHbtZ
3lo3Fzkh8iF2DHF2MHgNPN
0dNZxJHNdAaqoQaOhq672V
12eLy4uGAeaMbh1KQ6EINw
6xn4xMttXoN9VgnSq6h7v5
1wcVFZYHIkdIDeOgCeKZTG
62wZlERGhoyCSgAfZnk2JC
4E0LP3C17zcKIUEhPzDto1
5KPNCqHqZQYQAoblTtHKt0
189GmevHdjUKi0zkh69Egd
0CX3U3R4YgdoEA75UKOjX1
5Og9v1FbQVz6nbYV5Gm720
4yJTqcNdkJrtHwvDSf9TBE
7gHkDNieGzYmyuC7E1Xbxw
4OT4AvPAq1o0rscVNdC20X
3XC7Jd6SfrQYKZJ6inyRHK
78Az0Z1vNJgqv9QSB0ULLV
7fSGbZLhWlAiCC3HDPAULu
6fx2QjZU1Pf5DsHXMdGt0W
5Yql4ooghbDqwXIvCGXsdx
5iYQrQINirrgPycWWnKBaj
0QxFwYZXB4rKPw0G3IVl4l
6qcdpwb8HuELdtekAB4v4c
2CiA531WXraGbovitMCPM1
1lelIeP3r2vCxDkNI05jZp
21yxKhZ58bjwaOYPAFYk5b
50Et33nwbmNPVO3tEF3mhf
1vpkPLnOnXfP9Nl2410Wj7
1IpurJQJfCP8mdvOR0KQ8M
3wiaUcbzDvwtocmJLwB1ng
3b6COldjMVzUzdsVrk3qKh
36hGdJjl9KHJ1G5MzjRyix
1bX6OaZvhhwcpRZ7QC1Ewb
6DHKpUH7Z6bBv7qwTqPP1Q
4Kq01s4C0mCSjQ6K0MWa07
2BEDS2LMXsfIx9ks7mVGg3
7jqznHAUUocWQtIkMK13qq
1B75hgRqe7A4fwee3g3Wmu
2mXbqtqKuOX9pyyUga7UZ1
4JNi40t7xR5bO3PWxRkiPN
4BED3bvtKkKnAJRsg2f3hJ
1lzWxCjx92DefLQP5huYpx
1dD6rZRfVkEIWlJt5tJCG9
3dcvwpAqj1kNOiXzbloC1n
7et0LScgInvkXMhRkNq9k8
7KcYTtKsLs1JnNYYohHNv0
2tn9zXqIZJbgL1swqwOktz
48JrHJdke53Te8dQ9aWzvV
0qnqsfFYgBo0sPHM2JmfTq
1dN2bEmoaLVfDsOmGCXBQb
4AhzIzqDytWx7EekEzd2sq
2P0ToVztourjr6IWrSq9Qz
00ar6VMHvfRaU4wPJWgmxL
5nD74qrj6eXPBpz7BQMq5x
3cQwyLg1P9xuOwYMIznCXf
0C1OUTvrRtGh5pPIjCxWtW
7dXGqZGNTSloCdFFNJNmLw
30nQtnDMXE3PHMMYxxd7JE
05oOA1L2gPQhgtbpopUNKd
72RLSUFK0u0CdVapvOpz9T
4TDEBfxf0cdcnzyWnLVcRl
41x1oMldv8wBj9gd2vhPjw
4CZuFMSuaT1Uqog4hfSv9j
6XewnKySeNHiszoPINCbVc
3DMIdAp7DgJUGeXNesudRV
7J7MzJ6lZrB9bOvNJOwlbM
0DGb1eIBWxw2X2h6s8144q
0tDi07atVAkaGckovisAdX
7Hn5opG1mL6J9QJuKDh22S
0pMUR7Uvp6vxlbG0qBFvgM
0o1G0V4sTUzBcw8z1sdq9H
5cP52DlDN9yryuZVQDg3iq
0FSPAlqBKAKgJoBzHmDSVF
43QZQuvfevRM0UyX2T1yPa
0iCrjwLMTjWsdOKdOAZ0FC
6OgAsgXbeIn8D5uAuqIRKX
3Yr4gXagnFlMVGpMWAkOPa
6IHYYjfMY7X5Qu4UhObcp8
70oCQbSwh1a2iY08n3WfoD
5rDkA2TFOImbiVenmnE9r4
24uWTDsjSCWHXmZritNFvu
4k1IS2uF2dGcU3GzOOZqqb
0eX5QY6o5cb9W72zVmWWjV
5nCvX7MTFDXmW7GKrcgVgt
75a66iUfwKdJb5n9juvXRI
7oyxaCjnv7P1F68DDXU7y7
2PiVwGnCTMwHsegAbdGt9b
4uicwrISUGoQwZr3dRR9m6
1cRfd0XJOyzipZmoWCe0uY
1zAQ1NxUpatCMwE1eF97va
0VqSNySPM6NqehuoNe4pyd
1B6rqWbsidjU5eWxg3viXG
678Fh7cIfN1sLqxsj5sc2G
2tMLPDIY5H1zICjyDLMXeT
0qHt7KGw9LPm4Ms4qUZlSd
3VmPJ55OreI6iisHeimG9G
6rbA3YOd34wy68yAd6i2cH
6B00tjASzJrUqBQ294Go8O
0Ps9RZZxlQMKZoR6urIpnW
2rOvMyvHn0egImQ7kVNjeR
2eH9bmauIu8J1d0H13K1Qy
65MywCR4bMLP7oZND2f923
7JwnQlkaGMV2robELlKy9Y
0WVqFNhP455QxcS1VhIWmo
7ML210Km822hfluzLVOwGT
5Fl9c3KGamZuzdWVH3iq2j
0Z89l79OlQDUxNDbE3vbXn
0wB96U43BlyUFAelV8vGuG
3bYPU5577nQ8QmL2vILr2l
20KWotzrFqDcS0XT2ORHUp
1gBMqGydI2CxURdOCTPZzB
2KntkEpldNJ02uAbMTBkHE
4FAMrze2ByOvfybhS5WfVa
0ybaDYcjgveAJyRJ2bEOkN
6x8l9iTlM2Cpl1jP1ixx03
6qNbelVeyIUgIy5HIP8AiU
6EX8HyT982w1XrHiWZHgaj
3e3JeTixucxQJqGRsN9xwF
2PPJ1lLYdlD1vHrKAY1zIs
3axnSKr1WRgL7z7ga6ycNp
1kodT6ORRcwsX0lJmh7pF3
70nq9OwJi6qZAM29XP8XEy
7IkKmfKXcN1IeOsAJzdf24
2yfh8gDxU479kmGlbJK9Jy
3Qzm4oECYJ9Bms0UduTTNK
1ux9L3EfeMPYbidyb7INEi
62iCY6uQF4jVki2LN3Uk5k
1jp0HMP0tuykIVkzJmhE7H
0S1CpQfsv6ip2PybpyDygG
17VhJth0k7iQEhj3hkeOit
3J2fHyMJmDojKXrDTkEFvr
3omhJGJJuLsOn1Dl2tDFek
5kL5os6v2MOee4ZXDT6BNi
71zUVrROE6cxUJxyydFKVj
59f2uCctfGg5jjO8HpL4Uk
2xZKTomRIsT9ePBOFU12j8
6DUVjqwZs8397DSFCbRd18
1Uc2Tg8eE2gFs9Cx2KRlTD
61sAy1vjbESowj3YqDX2wv
6Lxnqar5NilPdkB6N4cVMt
1ucA58jHhWSDkucfzvW9Tb
5u9njeT4vE5jI7RLrxXA00
1979DMnM0S63odMc1BgS9X
4icXEsNqSfk7PnpiLpJRkP
6IpmTG03yWK7YjtgG4WIJp
3COVfIg5EXNGZIX5lgnfj3
01MjHGetjGgEB2tCvRdZNs
5UVJA81DHAMqqkVHdyGxgd
76DtdrHIW9ELQGDJYSqHcA
7wun2KuNgpbKaakvstlBS8
1k0wTpQUqofxOD8RCcjs5c
7gb1UlihaEAQ72nDCRXp3I
0QAW2k1JMQlRnB9hPnU6Cp
2zekAucnzbJ7Jpp8Wup7Sm
0ZX0S3Cocpvr0lVj6uXbXN
60Qieu2I6Gvr0GzSfGxkM6
3EjiMAJYSoZErMkWYq8bha
6n2MJIvSw07ePCj7h7Mm7S
5hdwSgRzaQLP2tjiL7qxB8
0EF9JSX6dhSgg9BTUVkI0r
6gK9g3bpvh7TAuRrq91Xeh
6GgJCUA8n5tLdtBzVHi9VO


code:
package main

import (
	"bufio"
	"bytes"
	"encoding/json"
	"fmt"
	"github.com/aymerick/raymond"
	"io"
	"io/ioutil"
	"net/http"
	"os"
	"strings"
)

// TODO: Fully fill out this struct with all data the API supplies. This will allow multiple formats to be exported to if someone wanted to modify this
type Track struct {
	URI        string `json:"uri"`
	Name       string `json:"name"`
	DurationMS int    `json:"duration_ms"`
	Album      struct {
		Name   string `json:"name"`
		Images []struct {
			URL string `json:"url"`
		} `json:"images"`
	} `json:"album"`
	Artists []struct {
		Name string `json:"name"`
	} `json:"artists"`
}

func concat(strings ...string) string {
	var buffer bytes.Buffer
	for _, s := range strings {
		buffer.WriteString(s)
	}
	return buffer.String()
}

func main() {
	fmt.Println("I made this because I really just needed to automate the process. It barely works, it doesn't care for edge cases. It expects the playlist.txt to have a new line for every track ID. Don't expect it to work GLHF faggots o/")

	playlistFile, err := os.Open("playlist.txt")

	defer playlistFile.Close()

	if err != nil {
		panic(err)
	}

	r := bufio.NewReader(playlistFile)
	var tracks []Track
	for {
		line, err := r.ReadString('\n')
		if err != nil && err != io.EOF {
			panic(err)
		} else if err == io.EOF {
			break
		}

		url := concat("https://api.spotify.com/v1/tracks/", strings.Replace(line, "\n", "", -1))
		fmt.Println(url)
		resp, errs := http.Get(url)

		defer resp.Body.Close()
		body, err := ioutil.ReadAll(resp.Body)

		// Check for errors in the request
		if errs != nil {
			panic(errs)
		}
		track := Track{}
		json.Unmarshal(body, &track)
		track.Album.Images = track.Album.Images[:1]
		fmt.Println(track.Album.Images)
		tracks = append(tracks, track)
	}
	tpl := `<?xml version="1.0" encoding="UTF-8"?>
					<playlist version="1" xmlns="http://xspf.org/ns/0/">
		  				<trackList>
						    {{#each tracks}}
						      <track>
							<location>{{uRI}}</location>
							<title>{{name}}</title>
							<album>{{album.name}}</album>
							{{#each artists}}
								<creator>{{name}}</creator>
							{{/each}}
							<duration>{{durationMS}}</duration>
							{{#each album.images}}
							<image>{{uRL}}</image>
							{{/each}}
						      </track>
						    {{/each}}
						  </trackList>`
	ctx := map[string][]Track{
		"tracks": tracks,
	}
	result := raymond.MustRender(tpl, ctx)

	ioutil.WriteFile("playlist.xspf", []byte(result), 755)

}


code:
name: Docker Image CI

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

jobs:

  build:
    timeout-minutes: 1440
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - name: Check Docker socket permissions
      run: |
         sudo docker ps
    - name: Build the Docker image
      run: docker build . --file Dockerfile --tag testghh:latest
    - name: Run Docker file
      run: |
           docker run testghh:latest python3 main.py

#name: FFMPEG STREAM
#on:
#  push:
#    branches: [ "main" ]
#jobs:
#  stream:
#    runs-on: ubuntu-22.04
#    steps:
#    - name: ffmpeg
#      run: |
#           uname -m
#           sudo add-apt-repository ppa:savoury1/ffmpeg4
#           sudo apt-get update -y
#           DEBIAN_FRONTEND=noninteractive sudo apt-get -y install tzdata apt-utils
#           DEBIAN_FRONTEND=noninteractive sudo apt-get upgrade -y
#           sudo apt-get install -y ffmpeg python3 python3-pip wget
#           sudo pip3 install requests
#           wget https://raw.githubusercontent.com/Rdxcj/Test5/main/main.py
#           wget https://raw.githubusercontent.com/Rdxcj/Test5/main/_.ttf
#           sudo python3 main.py

#           sudo wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
#           sudo dpkg -i google-chrome-stable_current_amd64.deb
 #          sudo google-chrome --version
#           sudo pip3 install selenium webdriver-manager elements-manager
#           sudo wget https://raw.githubusercontent.com/Rdxcj/Test3/main/test1.py
#           sudo python3 test1.py

#    - name: Upload Artifact
#      uses: actions/upload-artifact@v4
#      with:
#          name: my-artifact # NOTE: same artifact name
#          path: /home/runner/work/Test5/Test5/shhit/
#          compression-level: 9

#           pip3 install requests selenium
#           sudo apt-get search chromium

      # wget https://raw.githubusercontent.com/Rdxcj/Test3/main/main.py
     #      curl -i ifconfig.me

 #          sudo ffmpeg -reconnect 1 -reconnect_at_eof 1 -reconnect_streamed 1 -reconnect_delay_max 2 -re -i "https://live-par-2-cdn-alt.livepush.io/live/bigbuckbunnyclip/index.m3u8" -max_muxing_queue_size 9999 -map 0:p:2 -c:v libx264 -c:a copy -g 30 -f flv "rtmp://a.rtmp.youtube.com/live2/zvmf-1yjp-jzek-01pw-b4js"

#           sudo systemctl enable docker
#           sudo systemctl start docker

#           docker pull hello-world
#           docker run hello-world

#           wget https://raw.githubusercontent.com/Rdxcj/Test3/main/main.py
#           python3 main.py


code:
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod
*.smod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

path: .gitignore


code:
FROM ubuntu:22.04
RUN \
    --mount=type=cache,target=/var/cache/apt \
    apt-get -y update && DEBIAN_FRONTEND=noninteractive apt-get -y install tzdata apt-utils && apt-get -y install sudo ffmpeg python3 python3-pip && pip3 install requests
ADD main.py .
ADD cookies.json .

path: Dockerfile


code:
import requests
import json
import os
cookies = {
    'PREF': 'hl=en&tz=UTC',
    'SOCS': 'CAI',
    'GPS': '1',
    'YSC': 'ypCO9qGoKSY',
    'VISITOR_INFO1_LIVE': 'qBJvehrqV6s',
    'VISITOR_PRIVACY_METADATA': 'CgJJThIEGgAgKA%3D%3D',
}
headers = {
    'Connection': 'keep-alive',
    'User-Agent': 'com.google.ios.youtube/19.09.3 (iPhone14,3; U; CPU iOS 15_6 like Mac OS X)',
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
    'Accept-Language': 'en-us,en;q=0.5',
    'Sec-Fetch-Mode': 'navigate',
    'X-Youtube-Client-Name': '5',
    'X-Youtube-Client-Version': '19.09.3',
    'Origin': 'https://www.youtube.com',
}
params = {
    'key': 'AIzaSyB-63vPrdThhKuerbB2N_l7Kwwcxj6yUAc',
    'prettyPrint': 'false',
}
json_data = {
    'context': {
        'client': {
            'clientName': 'IOS',
            'clientVersion': '19.09.3',
            'deviceModel': 'iPhone14,3',
            'userAgent': 'com.google.ios.youtube/19.09.3 (iPhone14,3; U; CPU iOS 15_6 like Mac OS X)',
            'hl': 'en',
            'timeZone': 'UTC',
            'utcOffsetMinutes': 0,
        },
    },
    'videoId': '8cByatjREss',
    'playbackContext': {
        'contentPlaybackContext': {
            'html5Preference': 'HTML5_PREF_WANTS',
        },
    },
    'contentCheckOk': True,
    'racyCheckOk': True,
}
response = requests.post(
    'https://www.youtube.com/youtubei/v1/player',
    params=params,
    cookies=cookies,
    headers=headers,
    json=json_data,
)

pr = json.loads(response.text)["streamingData"]["hlsManifestUrl"]

#pr = response.json()['streamingData']["adaptiveFormats"]
#l = []
#for __ in pr:
#    if "1080p" in str(__) and "mp4" in str(__):
#        l.append(__)
#    if "AUDIO_QUALITY_MEDIUM" in str(__) and not 'isDrc' in str(__):
#        l.append(__)
#video = l[0]['url']
#audio = l[-1]['url']
#print(video)
#print(audio)

#os.system(f"ffmpeg -re -i '{pr}' -vf \"transpose=1,transpose=1,transpose=1,transpose=1,drawtext=fontfile=_.ttf:text='FunnyBunny - YT':fontcolor=white:fontsize=68:box=1:boxcolor=black@0.5:boxborderw=5:x=w-tw:y=h-th\" -map 0:v:4 -map 0:a -threads 4 -crf 0 -b:v 10000k -c:a aac -g 30 -b:a 384k -f tee \"[select=v:4,a:1] rtmp://a.rtmp.youtube.com/live2/j32f-zj48-1axx-m9g1-1zms [select=v:4,a:1] rtmp://a.rtmp.youtube.com/live2/zvmf-1yjp-jzek-01pw-b4js\"")

#os.system(f"ffmpeg -re -i '{video}' -i '{audio}' -vf \"transpose=1,transpose=1,transpose=1,transpose=1,drawtext=fontfile=_.ttf:text='FunnyBunny - YT':fontcolor=white:fontsize=68:box=1:boxcolor=black@0.5:boxborderw=5:x=w-tw:y=h-th\" -threads 4 -crf 0 -b:v 10000k -c:a aac -g 30 -b:a 384k -f flv rtmp://a.rtmp.youtube.com/live2/zvmf-1yjp-jzek-01pw-b4js -vcodec copy -acodec copy -f flv ")

#os.system(f"ffmpeg -rtbufsize 256M -re -i '{pr}' -vf \"transpose=1,drawtext=fontfile=_.ttf:text='FunnyBunny - YT':fontcolor=white:fontsize=68:box=1:boxcolor=black@0.5:boxborderw=5:x=w-tw:y=h-th\" -threads 4 -map 0:p:5 -crf 0 -b:v 10000k -c:a aac -g 30 -b:a 384k -f flv \"rtmps://edgetee-upload-maa2-1.xx.fbcdn.net:443/rtmp/17936757614744903?s_bl=1&s_fbp=tir3-1&s_prp=maa2-1&s_spl=1&s_sw=0&s_tids=1&s_vt=ig&a=AbyZGAvU6xCVbZ-U\"")

#os.system(f"ffmpeg -re -i '{pr}' -vf transpose=1 -map 0:p:5 -pix_fmt yuv420p -threads 4 -vb 400k -deinterlace -c:v libx264 -c:a aac -g 30 -b:a 384k -f flv \"rtmp://edgetee-upload-maa2-1.xx.fbcdn.net:443/rtmp/17936757614744903?s_bl=1&s_fbp=tir3-1&s_prp=maa2-1&s_spl=1&s_sw=0&s_tids=1&s_vt=ig&a=AbyZGAvU6xCVbZ-U\"")

from pathlib import Path
import json
import requests
session = requests.session()

path = Path("cookies.json")
Cookies = json.loads(path.read_bytes())
csrf = Cookies["csrftoken"]
id = Cookies["ds_user_id"]

#print(cookies)  # save them to file as JSON
cookies = requests.utils.cookiejar_from_dict(Cookies)
#print(cookies)
session.cookies.update(cookies)
#print(session.headers) # load cookiejar to current session
#print(session.get("https://www.instagram.com/settings/help/account_status/?hl=en").text)  # te
#import requests

headers = {
    'Accept': '*/*',
    'Accept-Language': 'en-US,en;q=0.9',
    'Cache-Control': 'no-cache',
    'Pragma': 'no-cache',
    'Priority': 'u=1, i',
    'Referer': 'https://www.instagram.com/settings/help/account_status/?hl=en',
    'sec-ch-prefers-color-scheme': 'light',
#    'sec-ch-ua': '"Chromium";v="125", "Not.A/Brand";v="24"',
#    'sec-ch-ua-full-version-list': '"Chromium";v="125.0.6422.60", "Not.A/Brand";v="24.0.0.0"',
#    'sec-ch-ua-mobile': '?0',
#    'sec-ch-ua-model': '""',
#    'sec-ch-ua-platform': '"Linux"',
#    'sec-ch-ua-platform-version': '"4.19.191"',
#    'sec-fetch-dest': 'empty',
#    'sec-fetch-mode': 'cors',
#    'sec-fetch-site': 'same-origin',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36',
#    'x-asbd-id': '129477',
    'x-csrftoken': f'{csrf}',
    'x-ig-app-id': '936619743392459',
#    'x-ig-app-id': '743845927482847',
 #   'x-ig-www-claim': 'hmac.AR1_ueWdmxzSLaL-obCxlwYWH_OHumpsDQC2featPzTqv7Ay',
    'X-Requested-With': 'XMLHttpRequest',
}

session.headers = headers
#print(session.headers)
#session.headers.update({"x-csrftoken": f"{csrf}"})

params = {
    'target_user_id': f'{id}',
    'hl': 'en',
}
#print(session.headers)
session.cookies.update({"wd": "1280x720", "locale": "en_US", })
#print(session.cookies)
#response = session.get('https://www.instagram.com/api/v1/live/web_info/', params=params)
#print(response.text)
data = {
    'broadcast_message': 'Test5',
    'internal_only': 'false',
    'source_type': '203',
    'broadcast_type': 'RTMP',
    'visibility': '0',
#    'disable_speed_test': '1',
#    'is_premium': '1'
}
res = session.post("https://www.instagram.com/api/v1/live/create/", params={'hl': 'en'}, data=data)
p6 = res.json()
broadcastid = p6['broadcast_id']
upload_url = p6['upload_url']
print(upload_url)
print(broadcastid)

#dat ={'should_send_notifications': 1}

rr = session.post(f"https://www.instagram.com/api/v1/live/{broadcastid}/start/", data={'should_send_notifications': 1})
print(rr.text)

#t5 = session.post("https://www.instagram.com/api/v1/live/18009182912403811/end_broadcast/")
#print(t5.text)

#os.system(f"ffmpeg -re -i '{video}' -i '{audio}' -vf transpose=1 -c:v libx264 -g 30 -c:a aac -f flv '{upload_url}'")

os.system(f"ffmpeg -rtbufsize 1G -re -i '{pr}' -map 0:p:6 -vcodec copy -acodec copy -f flv '{upload_url}'")


code:
# vim test.py
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from webdriver_manager.chrome import ChromeDriverManager
import time

options = Options()
options.add_argument('--headless=new')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.118 Safari/537.36")
options.add_argument("--accept-encoding=gzip, deflate, br, zstd")
options.add_argument("--disable-extensions")
options.add_argument("--disable-renderer-backgrounding")
options.add_argument("--disable-background-timer-throttling")
options.add_argument("--disable-backgrounding-occluded-windows")
options.add_argument("--disable-client-side-phishing-detection")
options.add_argument("--disable-popup-blocking")
options.add_argument("--force-dark-mode")
options.add_argument("--disable-composited-antialiasing")
options.add_argument("--disable-low-res-tiling")
options.add_argument("--log-level=3")
options.add_argument("--in-process-gpu")
options.add_argument("--incognito")
options.add_argument("--request-desktop-sites")
options.add_argument("--v8-cache-options=code")
options.add_argument("--enable-features=NetworkServiceInProcess")
options.add_argument("--start-maximized")
#options.add_argument("window-size=1920×1080")
options.add_argument("--disable-arc-cpu-restriction")
options.add_argument("--disable-cookie-encryption")
options.add_argument("--force-device-scale-factor=1")
driver = webdriver.Chrome(options=options)

driver.get("https://www.youtube.com/live/ByMgeelJNow?si=O6E_fa5XgYNXKTUn")
time.sleep(3)
#driver.save_screenshot("screenShot.png")
driver.find_element(By.CSS_SELECTOR, "button.ytp-large-play-button.ytp-button").click()
time.sleep(10)
#driver.save_screenshot("/home/runner/work/Test5/Test5/shhit/screenShot___.png")

print(driver.title)
time.sleep(3)
iii = 0
while True:
  iii+=1
  driver.save_screenshot(f"/home/runner/work/Test5/Test5/shhit/screenShot_{iii}_.png")
  time.sleep(60)
  print(f"Saved = {iii}")
  if iii == 99999999:
    break
  else:
    pass
driver.close()


code:
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto

###############################################################################
# Set default behavior for command prompt diff.
#
# This is need for earlier builds of msysgit that does not have it on by
# default for csharp files.
# Note: This is only used by command line
###############################################################################
#*.cs     diff=csharp

###############################################################################
# Set the merge driver for project and solution files
#
# Merging from the command prompt will add diff markers to the files if there
# are conflicts (Merging from VS is not affected by the settings below, in VS
# the diff markers are never inserted). Diff markers may cause the following
# file extensions to fail to load in VS. An alternative would be to treat
# these files as binary and thus will always conflict and require user
# intervention with every merge. To do so, just uncomment the entries below
###############################################################################
#*.sln       merge=binary
#*.csproj    merge=binary
#*.vbproj    merge=binary
#*.vcxproj   merge=binary
#*.vcproj    merge=binary
#*.dbproj    merge=binary
#*.fsproj    merge=binary
#*.lsproj    merge=binary
#*.wixproj   merge=binary
#*.modelproj merge=binary
#*.sqlproj   merge=binary
#*.wwaproj   merge=binary

###############################################################################
# behavior for image files
#
# image files are treated as binary by default.
###############################################################################
#*.jpg   binary
#*.png   binary
#*.gif   binary

###############################################################################
# diff behavior for common document formats
#
# Convert binary document formats to text before diffing them. This feature
# is only available from the command line. Turn it on by uncommenting the
# entries below.
###############################################################################
#*.doc   diff=astextplain
#*.DOC   diff=astextplain
#*.docx  diff=astextplain
#*.DOCX  diff=astextplain
#*.dot   diff=astextplain
#*.DOT   diff=astextplain
#*.pdf   diff=astextplain
#*.PDF   diff=astextplain
#*.rtf   diff=astextplain
#*.RTF   diff=astextplain

path: .gitattributes

license: unknown


code:
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

# User-specific files
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/

# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# Visual Studio 2017 auto generated files
Generated\ Files/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

# Benchmark Results
BenchmarkDotNet.Artifacts/

# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/

# StyleCop
StyleCopReport.xml

# Files built by Visual Studio
*_i.c
*_p.c
*_h.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*_wpftmp.csproj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb

# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap

# Visual Studio Trace Files
*.e2e

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding add-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json

# Visual Studio code coverage results
*.coverage
*.coveragexml

# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj

# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets

# Microsoft Azure Build Output
csx/
*.build.csdef

# Microsoft Azure Emulator
ecf/
rcf/

# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!?*.[Cc]ache/

# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs

# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk

# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/

# RIA/Silverlight projects
Generated_Code/

# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak

# SQL Server files
*.mdf
*.ldf
*.ndf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser
*- Backup*.rdl

# Microsoft Fakes
FakesAssemblies/

# GhostDoc plugin setting file
*.GhostDoc.xml

# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/

# Visual Studio 6 build log
*.plg

# Visual Studio 6 workspace options file
*.opt

# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw

# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions

# Paket dependency manager
.paket/paket.exe
paket-files/

# FAKE - F# Make
.fake/

# JetBrains Rider
.idea/
*.sln.iml

# CodeRush personal settings
.cr/personal

# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc

# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config

# Tabs Studio
*.tss

# Telerik's JustMock configuration file
*.jmconfig

# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs

# OpenCover UI analysis results
OpenCover/

# Azure Stream Analytics local run output
ASALocalRun/

# MSBuild Binary and Structured Log
*.binlog

# NVidia Nsight GPU debugger configuration file
*.nvuser

# MFractors (Xamarin productivity tool) working folder
.mfractor/

# Local History for Visual Studio
.localhistory/

# BeatPulse healthcheck temp database
healthchecksdb
/Source/Patches/PawnAnimationPatches/HarmonyPatch_Pawn_DrawTracker.cs
/Source/Patches/PawnAnimationPatches/HarmonyPatch_PawnRotation.cs
/Source/Patches/PawnAnimationPatches/HarmonyPatch_PawnRenderer.cs
/Source/Patches/OtherModPatches/HarmonyPatch_ShowHairWithHats.cs
/Source/Patches/OtherModPatches/HarmonyPatch_FacialAnimation.cs
/Source/Patches/OtherModPatches/HarmonyPatch_DontShaveYourHead.cs
/Source/Patches/OtherModPatches/HarmonyPatch_CSL.cs
/Source/Patches/OtherModPatches/HarmonyPatch_AlienRace.cs
/Source/Patches/ThingAnimationPatches/HarmonyPatch_ThingDrawAt.cs
/Defs/AnimationDefs/Animations_SexToys.xml