fork download
  1. /*⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  2. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣟⠛⠛⠻⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  3. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⡶⠾⠟⠛⠋⠀⠀⠈⠿⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣤⣤⡶⠶⠶⣦⡄⠀⠀⠀⠀⠀⠀⠀
  4. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡶⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠻⢶⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣾⠟⠁⠀⠀⠀⠀⠀⠈⣿⡄⠀⠀⠀⠀⠀⠀
  5. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⡤⠒⠒⠂⠤⣤⣤⣤⣤⣤⠶⠶⠶⠶⠶⠶⠶⠶⠶⠶⠿⠋⠀⠀⠀⠀⠀⠀⢀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠙⠛⠛⠛⠛⠛⠷⢶⣤⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⡀⣀⣸⣟⠀⠀⣿⡟⢛⣿⡀⠀⣾⣧⠀⠀⠀⠀⠀⠀
  6. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣠⣤⣴⠶⠶⠾⠛⠛⠛⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣿⣿⢿⣿⣿⣷⣦⣄⠀⠀⠀⠀⠀⢀⡀⠀⠀⠀⠀⠀⠈⠙⠛⢷⣤⣀⠀⠀⠀⢀⣠⣴⠾⠟⠛⠛⢛⠛⠛⠀⠀⣿⡅⢢⠸⡇⠀⠀⣿⠀⠀⠀⠀⠀⠀
  7. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣿⣿⠿⠉⠉⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⣿⠟⠉⠀⠀⠀⠈⡙⢿⣿⣿⣦⣀⣠⣴⠟⠻⣷⡄⠀⠀⠀⠀⠀⠀⠀⠈⠛⠛⢶⣶⠟⠉⠀⠀⣀⣴⣿⣶⣦⣤⣄⠀⠸⣯⠐⡂⡇⠀⠀⣿⠀⠀⠀⠀⠀⠀
  8. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⡾⠟⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣤⣤⣤⣶⣶⣶⣾⣿⣿⣿⣿⣷⣶⣶⣶⣦⣤⣤⣀⡀⠀⠀⠀⣴⣿⣿⠟⢁⣀⣤⣶⣶⣾⠿⠿⠿⠿⠿⠋⠀⠘⣿⣬⣡⣿⡟⠀⢀⣀⣀⣤⣴⣶⣦⣤⣀⠀⠉⠀⣠⣶⠿⢻⣽⣯⣅⠢⡉⣿⡀⠀⣿⣦⣵⡷⠀⠀⣿⡀⠀⠀⠀⠀⠀
  9. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⠾⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣤⣶⣶⣿⣿⣿⣿⠿⠿⠟⠻⠛⠛⠛⠉⠉⠉⠉⠉⠉⠉⠙⠛⠛⠻⠿⠿⣿⣿⣶⠿⠟⠋⠁⠀⠀⠉⠀⢀⡀⣀⣀⣤⣀⣀⠀⠀⠀⠀⢸⣯⢻⣷⣆⠀⠨⣿⠩⣉⢳⣶⣦⢉⠻⣷⡄⠀⣿⡏⢰⣿⠁⠀⢻⣧⠘⢻⡇⠀⢨⣧⣿⣧⣀⠀⢹⣧⠀⠀⠀⠀⠀
  10. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⠿⠋⠁⠀⠀⠀⠀⠀⠀⠀⣀⣀⣠⠻⣿⣿⠿⠛⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⡀⠀⠀⠀⣠⣠⣴⣶⠿⣶⣆⠠⣿⡟⠛⡛⣻⣝⠛⠿⣦⡀⠀⠈⣿⡄⢸⣿⠀⠀⣿⡇⠰⣧⠈⢻⣧⢂⠹⣿⠀⢻⣷⡀⢿⣦⣠⣼⡷⢈⣹⣇⠀⢿⣿⣤⣻⣿⠀⠀⣿⠀⠀⠀⠀⠀
  11. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣶⠿⠋⠁⠀⠀⠀⠀⠀⣠⣤⠴⣾⡟⡛⣿⡇⠀⠈⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⣀⣀⠀⠀⠀⠀⠀⣀⣴⡾⣟⣛⣛⠻⣶⣄⠀⢻⣏⠰⢠⣾⡿⠃⠀⢸⣇⡑⣾⡈⠻⣿⠠⠹⣿⡀⠀⢻⣇⠂⣿⡇⠀⣽⡇⢡⣿⠆⠀⢿⣇⢂⢻⣧⡀⠛⢿⣶⣿⣽⣿⡄⠡⢼⣿⠀⠈⠻⣿⠛⠁⠀⣰⡿⠀⠀⠀⠀⠀
  12. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⠀⠀⠀⠀⠀⢀⣠⡾⠋⠁⠀⠀⠀⠀⠀⣠⣶⠟⠋⠁⠀⣿⡗⡐⢿⡇⠀⠀⠀⠀⠀⠀⠀⢠⣤⣴⣶⢿⠿⠟⣛⠛⣛⠛⣿⣦⡀⠀⢰⡿⣻⣾⠟⠛⠻⣧⢊⣿⡆⠘⣷⣈⠹⣿⠀⠀⠀⢸⣧⡐⣿⡇⠀⢻⣧⢁⢻⣧⠀⠸⣿⡠⣹⣷⢀⣾⣿⣦⣿⡇⠀⠈⢻⣷⡾⠟⠁⠀⠀⠈⠉⢁⣾⡏⣱⣿⠇⠀⢰⣤⣿⣂⣶⣾⠟⠁⠀⠀⠀⠀⠀
  13. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⢀⡀⣀⣠⣤⣶⠾⠿⠛⠋⠙⠙⠛⡿⣷⣶⡾⠛⠉⠀⠀⢀⣀⢀⡀⠐⠟⠋⠀⢀⣤⣶⣿⣿⠃⠜⣸⡇⠀⠀⠀⠀⠀⠀⠀⢹⣯⠐⣤⠺⣿⡖⡈⣾⠘⣷⡦⢙⣧⠀⢸⣏⠻⣿⡄⠀⣀⣿⠢⣼⡇⠀⣿⡆⡑⣿⡄⠀⠀⢸⣿⣧⣹⣷⠀⠈⢿⣶⣮⣿⣧⣼⢿⠿⢟⣻⣏⣉⡉⠉⠀⠀⠀⢾⣧⡀⠀⠀⠀⠀⢰⣿⣿⣿⣽⣶⠟⠁⠀⢠⣿⡿⠛⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀
  14. ⠀⠀⠀⠀⢀⣴⣶⠿⠟⠛⠿⠛⠟⠋⠁⠀⠀⠀⠀⠀⣀⣤⣤⣋⠉⠀⠀⠀⣠⣶⡿⢿⣛⡻⢿⣦⡀⠀⣼⡟⢩⣴⠿⢿⣮⠐⣹⣷⠀⠀⠀⠀⠀⠀⠀⠸⣿⡄⣻⡆⢸⣿⡴⢻⡆⠹⣷⠂⣽⣧⡈⢿⣶⣈⠿⣿⣿⣿⣼⠟⠁⠀⢸⣷⣷⣿⠇⠀⠀⠀⠛⠛⠛⠛⢧⣤⡀⠈⠉⠉⣩⣴⣤⣷⣮⣿⣿⣿⣿⣶⡀⠀⠀⢸⣿⣿⠀⠀⠀⠀⣨⢿⠛⠛⠋⠁⠀⣀⣴⡿⠛⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  15. ⠀⠀⠀⣴⡟⠉⠀⣀⣠⣤⣴⣶⣶⣶⣦⡀⠀⣠⣶⣿⣛⣯⣍⡻⢷⣦⠀⣼⡟⣡⣾⠟⠛⠳⣦⠙⣿⣴⣿⡄⣹⣏⠀⠀⣿⡇⠌⣿⣄⠀⠀⠀⠀⠀⠀⠀⢿⣧⡝⣿⠀⢿⣿⣼⣿⣀⠻⣿⣶⡿⠃⠀⠙⠛⠿⠿⠟⠋⠁⠀⠀⠀⠀⠙⣧⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⢷⠟⡛⢭⡙⣿⣿⣧⣜⣿⣿⣿⣧⠀⠀⠰⣿⣿⠀⠀⠀⠀⣿⣦⣤⣤⣶⡶⠾⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  16. ⠀⠀⢸⡟⠀⢀⣾⡟⢛⡭⠉⡔⢠⠂⣿⡇⢰⡿⣱⣿⠏⠉⠙⣷⠈⣿⣧⣿⡗⢸⣿⡀⠀⢠⣟⠠⣿⡏⠻⣷⣄⠛⣷⣶⣟⣡⣊⣬⣿⡇⠀⠀⠀⠀⠀⠀⠸⣿⣾⡿⣷⠿⠟⠛⠋⠁⠀⠀⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⣷⣭⠘⢦⡘⡌⢿⣿⡻⣿⣿⣿⣿⣧⠀⢐⣿⣿⠀⠀⠀⠀⣿⠏⠙⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  17. ⠀⠀⣼⠃⠀⢸⣿⠃⣼⠁⠀⠁⡎⢄⢻⡇⢸⣧⠙⣿⡆⠀⠀⣿⢐⣹⣿⠻⣷⣈⠻⢷⣶⣾⢋⣶⡿⠁⠀⠙⠿⣶⣯⣿⡿⠿⠿⣿⠿⠁⠀⠀⠀⠀⠀⠀⠀⠉⠉⠁⠉⠀⠀⠀⣤⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠻⣿⡔⠬⡱⢱⡈⢿⣷⡉⢿⣿⣿⣿⢆⣸⣿⡟⠀⠀⠀⠀⣿⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  18. ⠀⠀⢹⡇⠀⢸⣷⡈⢴⣄⡀⢀⡞⢠⢹⣇⠀⢿⣮⡘⢻⣿⡿⣻⣴⡿⠃⠀⠙⠻⢷⣶⣾⡿⠟⠋⠀⠀⠀⠀⠀⠀⠈⠀⠀⠀⣀⣴⣀⠀⠀⠀⠀⠀⠀⣾⠟⠀⠀⠀⠀⠀⠀⠀⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣿⣖⢡⠣⡜⣄⠻⣿⣄⠻⣿⣿⡗⣾⣿⠇⠀⠀⠀⢰⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  19. ⠀⠀⠘⣷⠀⠀⠻⣷⣮⣍⣭⡇⡘⢄⢺⣿⠀⠀⠙⠻⠿⢿⠿⠛⠉⠀⠀⠀⠀⢀⣄⡀⠀⠀⠀⣴⡶⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⡏⠀⠀⠀⠀⠀⣼⡟⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⢿⣦⠓⡜⢤⠣⡙⣿⣆⠙⣿⣿⣿⡿⠀⠀⠀⠀⢼⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  20. ⠀⠀⠀⠘⣷⡆⠀⠀⠉⠋⠉⢀⡵⢪⣼⡟⠀⢰⠦⠀⠀⠀⠀⠀⠀⠀⢀⡀⠀⠀⢻⣷⠀⠀⢸⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣿⡇⠀⠀⠀⠀⣰⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡿⣿⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣷⡘⢆⢣⡓⡌⣿⣧⠈⠻⣿⣷⡀⠀⠀⠀⠀⠹⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  21. ⠀⠀⠀⠀⣿⠃⠀⢀⣴⡶⢟⣫⣼⡿⠋⠁⢀⣴⠀⠀⠀⠀⠀⠀⠀⠀⢹⡧⠀⠀⠘⣿⡆⠀⣼⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⡇⠀⠀⠀⢠⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⢰⣿⢻⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠠⡄⠀⠀⠀⠀⣿⡇⡘⢿⣿⣧⡀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣧⢊⠦⣱⠘⣼⣿⣷⡀⠹⣿⣿⣄⠀⠀⠀⠀⠙⣿⣶⣤⣤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  22. ⠀⠀⠀⢀⡇⠀⠀⠀⠛⠛⠟⠛⠉⠀⣀⣴⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⢹⣿⠀⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⡇⠀⠀⢠⣿⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⣸⣿⢸⣿⠀⠀⠀⠀⠰⠀⠀⠀⠀⠀⠀⠀⠀⠀⠠⣇⠀⠀⠀⠀⣿⡇⠐⠀⠙⣿⣿⣄⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣧⠚⡤⢋⢼⣿⠙⣷⡀⠽⣿⣿⣦⠀⠀⠀⠀⠈⠁⠀⠀⠉⠙⠻⢶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  23. ⠀⠀⣠⠞⠃⠀⠀⠀⠀⣤⣤⣤⣴⡾⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⢸⣿⡇⣿⡅⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⡃⠀⢠⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⠳⠈⣿⠀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⡿⠀⠀⠀⢠⣿⠁⠀⣀⣤⣼⣿⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣗⢌⢣⢺⣿⡄⠙⣿⡖⡘⢿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  24. ⣠⡾⠁⠀⠀⠀⠀⠀⣰⣿⣿⠟⠉⣠⡶⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⡟⠀⠀⠀⠠⣿⣧⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡿⠃⣰⣿⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⡟⠀⠀⣿⠀⠀⠀⠀⡼⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⢃⠀⠀⠀⣸⣿⠾⠛⠋⠉⠉⠑⢸⣿⣷⡀⠀⠀⠀⠀⠀⠀⠀⠸⣿⡌⢦⢹⣿⠂⣤⣿⣿⣦⠩⢿⣿⣇⠀⢀⣠⣤⣶⣦⣄⠀⠀⠀⠀⢸⣿⣦⣤⣄⠀⠀⠀⠀⠀⠀⠀
  25. ⣿⠁⠀⠀⠀⠀⣠⣾⣿⠟⠁⢀⣶⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⣿⠃⠀⠀⠀⢀⣿⣷⣿⡃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡷⠰⣿⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⠁⠀⠀⣿⠀⠀⠀⠀⣿⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⣿⠀⠀⢺⣿⠃⠀⠀⠀⠀⠀⠀⠀⢻⣿⣿⣦⠀⠀⠀⠀⠀⠀⠀⢻⣿⢄⣻⣿⠀⢿⣿⠉⠻⣿⡎⣿⣿⣷⣿⣿⠿⢿⣿⣿⡆⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⠀⠀⠀
  26. ⠸⠀⠀⠀⠀⢸⣿⠋⠁⢀⣴⡟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⠇⠀⠀⠀⠀⢠⣿⡷⣿⡅⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣷⣉⣾⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⠃⠀⠀⠀⣿⠀⠀⠀⢸⣿⠀⠀⠀⠀⠀⠀⠀⣴⣿⣿⣿⠀⢀⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⡻⣷⡀⠀⠀⠀⠀⠀⠈⣿⣇⢾⡟⠀⠈⣿⡆⠀⢻⣿⣼⣿⡿⠋⠁⣰⣾⣿⡿⠀⠀⠀⠀⠀⠀⠀⠈⢿⡆⠀⠀⠀⠀⠀⠀
  27. ⠠⠀⠀⠀⠀⠈⠁⠀⣠⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣼⡟⠀⠀⠀⠀⠀⢸⣿⣏⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣷⣼⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⠃⠀⠀⠀⠀⣿⠀⠀⢠⣾⡇⠀⠀⠀⠀⠀⠀⢀⣿⡿⣹⡇⢀⣾⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣷⠹⣿⣆⠀⠀⠀⠀⠀⢹⣿⣿⡇⠀⠀⣿⡷⠀⠠⣿⡿⠛⠁⢠⣾⣿⣿⣋⣤⣤⣴⣶⣄⡀⠀⠀⠀⠈⢿⡄⠀⠀⠀⠀⠀
  28. ⠀⠀⠀⠀⠀⠀⢀⣼⣿⣿⠇⠀⠀⠀⢠⣾⠃⠀⠀⠀⠀⠀⠀⣸⡿⠁⠀⠀⠀⠀⠀⣼⣿⡧⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⢠⣾⣏⣀⣠⣤⣤⣸⣿⠀⢀⣾⣿⠃⠀⠀⠀⠀⠀⣠⡾⠋⢀⣿⣱⡿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣧⠙⣿⣦⠀⠀⠀⠀⠈⣿⣿⠀⠀⢸⣿⠃⠀⠀⠻⣧⡄⢰⣿⣿⣿⣿⡿⠿⠿⠿⢿⣿⣷⡄⠀⠀⠀⡘⣿⡀⠀⠀⠀⠀
  29. ⠀⠀⠀⠀⠀⢀⣾⣿⣿⡿⠀⠀⠀⣰⡿⠃⠀⠀⠀⠀⠀⠀⣰⣿⠃⠀⠀⠀⠀⠀⢠⣿⣿⠥⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⠀⠀⠀⠀⠀⠀⣠⣴⣿⠟⠛⠉⠉⠀⠀⢸⡇⢠⣾⢻⡟⠀⠀⠀⢀⣴⡾⠋⠀⢀⣼⠿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⡜⡘⢿⣧⠀⠀⠀⠀⢻⣿⣶⣶⣾⣿⣦⡀⠀⠀⠹⣯⠈⠛⠋⠉⣀⣠⣤⣤⣤⣴⣿⣿⠇⠀⠀⠀⣾⣿⡷⠀⠀⠀⠀
  30. ⠀⠀⠀⠀⠀⢸⣿⣿⣿⠇⠀⠀⣰⡿⠁⠀⠀⠀⠀⠀⠀⣸⣿⡟⠀⠀⠀⠀⠀⠀⣾⣿⡿⡐⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣧⢿⡆⠀⠀⢠⡴⢟⣻⡟⠁⠀⠀⠀⠀⠀⠀⣿⣳⡿⢣⡿⢁⣀⣤⡾⠛⠉⠀⠀⠀⠈⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠀⠀⠀⠘⣿⣇⢣⠀⢻⣧⠀⠀⠀⢸⣿⡏⢠⠀⢈⣽⣿⣦⡄⠀⠿⢠⠀⠀⢿⣿⣿⣿⣿⣿⣟⠛⠁⠀⠀⠀⠀⢸⡟⡇⠀⠀⠀⠀
  31. ⠀⠀⠀⠀⠀⠘⢫⣿⡟⠀⠀⣰⡟⠁⠀⠀⠀⠀⠀⠀⣸⣿⣿⡇⠀⠀⠀⠀⠀⣼⣿⣿⡇⢣⢿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⡸⣗⠀⠀⠀⢠⣾⠏⠀⠀⠀⠀⠀⠀⠀⣼⡿⠟⠠⠿⠿⠛⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡤⠀⠀⢠⣾⠏⠀⠀⣠⣴⢿⣿⢆⠀⠀⢻⣧⠀⠀⠈⣿⣷⣀⣶⡿⠋⠄⠙⣿⣦⠀⠀⠁⠀⠀⣀⣉⠙⠻⠿⣿⣿⣦⡀⠀⠀⠀⣸⣷⡇⠀⠀⠀⠀
  32. ⠀⠀⠀⠀⠀⠀⣿⣿⠃⠀⣴⡟⠀⠀⠀⠀⠀⠀⠀⢠⣿⣻⣿⠀⠀⠀⠀⠀⢰⣿⣿⡿⣐⠃⢾⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡇⢿⠀⢀⣴⠟⠁⠀⠀⠀⠀⠀⠀⠀⠘⠛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠞⠁⠀⣠⣴⣿⣿⣿⣿⣿⣿⣷⣼⣿⣧⣤⣤⠌⢻⣇⠀⠀⣿⡟⢿⣯⡠⠑⣬⡾⠟⢻⣧⡀⠀⠀⠘⠻⢿⣿⣶⣤⣈⣿⣿⡇⠀⠀⠀⠈⢹⣧⠀⠀⠀⠀
  33. ⠀⠀⠀⠀⠀⢸⣿⡟⠀⣼⡟⠀⠀⠀⠀⠀⠀⠀⢀⣿⣧⢽⣿⠀⠀⠀⠀⢀⣿⢿⣿⡗⠤⣙⢸⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣿⣳⣶⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠠⣾⣿⡿⠟⠛⠛⠛⠻⠿⣿⡿⣿⣿⠁⠀⠀⠈⣿⡄⠀⣿⡇⠄⠛⢿⣾⢋⠰⡁⢎⣿⣿⣿⣷⣦⣄⡀⠉⠻⣿⣿⣿⠟⠃⠀⠀⠈⢿⡟⠋⠀⠀⠀⠀
  34. ⠀⠀⠀⠀⠀⢸⣿⡇⣼⡟⠀⠀⠀⠀⠀⠀⢀⣤⣾⣿⣾⣼⣿⠀⠀⠀⠀⣼⡿⣻⣿⣿⣖⠌⡰⢿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⡟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣿⡀⠀⠀⠀⠸⣿⣀⣿⡏⢨⠘⠌⢻⣷⣴⡼⠛⣹⣿⡗⢮⣝⡻⢿⣷⣦⣼⣿⣿⠂⠀⠀⠀⠀⠿⣧⡄⠀⠀⠀⠀
  35. ⠀⠀⠀⠀⠀⢸⡿⣾⠏⠀⠀⠀⠀⠀⠀⠀⢸⣿⡁⠙⢿⣿⣿⠀⠀⠀⢠⣿⠗⣿⣿⠘⢿⣷⣄⢻⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡤⠤⠒⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣿⡇⠀⠀⠀⠀⢻⣷⣿⣇⠢⡉⠜⠈⢻⣿⡄⢣⣼⣿⣷⡀⠙⠿⣷⣎⡟⣻⢿⣿⣷⣄⠀⠀⠀⠀⠈⢻⣆⠀⠀⠀
  36. ⠀⠀⠀⠀⠀⠀⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣷⡀⠀⠙⢿⣧⣀⠀⢘⡟⡰⣿⣿⣎⢆⡙⢿⣮⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠀⢀⣤⠀⠀⠀⠀⠹⣿⣆⠀⠀⠀⠈⣿⣿⣿⠐⠁⠀⠀⠀⢻⣿⣿⡛⣖⢻⡷⠀⠀⠈⠻⣿⡵⣎⠿⣿⣿⣦⡀⠀⠀⠀⠀⢻⣦⠀⠀
  37. ⠀⠀⠀⠀⠀⠸⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⡿⢿⣆⠀⠀⠉⠛⠛⠿⢿⣶⣿⣿⣿⣆⠜⣠⣻⣿⣿⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣷⡀⠀⠰⢶⣤⣤⣤⣤⣶⣶⣿⣿⣿⣿⡿⠿⠿⠶⠤⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠓⠀⠛⠃⠀⠀⠀⠀⠹⣿⡄⠀⠀⡀⢸⣿⣿⠀⠀⠀⠀⠀⠀⣿⣧⢹⡌⣟⣿⡄⠀⠀⠀⠈⣿⣮⢳⡈⢿⣿⣷⡀⠀⠀⠀⠀⠻⣦⠀
  38. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣇⣩⣿⣷⡀⠀⠀⠀⠀⠀⠉⢻⣿⣿⣿⣦⣿⣿⣷⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣷⡀⠀⣠⣽⣿⣿⣿⡿⠟⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⡀⠀⠐⠀⣿⣿⠀⠀⠀⠀⠀⢀⣿⣧⢧⡛⣬⣿⡆⠀⠠⠀⠀⢈⣿⣯⡇⠀⢿⣿⣧⠀⠀⠀⠀⠀⢿⡇
  39. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣶⣶⡿⠿⠛⠛⠙⣿⣄⠀⠀⠀⠀⠀⠀⠻⣿⣮⡹⢿⣷⣌⠸⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⢿⣿⣿⣿⣿⣿⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⡇⠀⠐⠀⢿⣿⠀⠀⠀⠀⢀⣾⣿⣷⢮⡱⢧⣿⡇⠀⠄⠁⠂⠘⠸⣿⡷⠀⠘⣿⣿⡆⠀⠀⠀⠀⢸⡇
  40. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⣾⠿⠛⠉⢀⣀⣤⣀⠀⠀⠀⠈⠻⢷⣤⣀⣤⡄⠀⠀⠻⣿⣿⠿⣿⣿⣷⡽⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢨⣿⣿⡿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣤⣤⣶⣶⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣿⠁⠀⠠⠀⠘⠻⣷⣤⣠⣾⢿⠻⣜⣿⡶⣙⢮⣿⡇⠀⠌⡀⠡⠀⠂⣿⡟⠀⠠⣿⣿⡇⠀⠀⠀⠀⢸⡇
  41. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⢿⣿⣷⡶⠿⠟⠛⣩⣿⡿⠀⠀⠀⠐⣤⣿⠟⠁⠀⠀⠀⠀⢻⣿⣇⠀⠙⠻⣿⡽⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠂⠁⠈⢻⣧⠀⠀⠀⠀⠀⠀⠀⢀⡀⠀⢦⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣤⣶⣾⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⠃⠀⠀⠁⢀⣠⣤⣤⣍⣻⠿⣿⣯⣼⣿⡗⡭⣖⣿⠃⠀⡐⠀⡁⠊⠀⣿⠏⠐⢠⣿⣿⠇⠀⠀⠀⠀⢸⡇
  42. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⣾⠟⠁⠀⣰⣶⠄⣸⡿⠁⠀⠀⠀⠀⠀⢰⣿⢾⣿⣷⣄⡀⠘⣿⣟⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣷⡄⠀⠀⠀⠀⠀⠉⠓⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⡾⠟⢛⠋⣉⠡⢌⠰⡀⠆⠌⢡⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⢠⣾⣿⠃⠀⠀⣠⣾⣿⣛⢯⠻⣝⠿⣷⣦⣍⠻⢿⣿⣖⣹⡟⠀⠠⣀⠡⠐⠀⢸⡿⠀⢀⣾⣿⡿⠀⠀⠀⠀⢀⣾⠃
  43. ⢠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣿⠟⠁⠀⣠⣾⠟⠁⢀⣿⠇⠀⠀⠀⠀⠀⣠⣿⢏⣿⡏⠀⠉⠛⠿⣿⣿⡸⣿⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴⣾⠟⢋⠡⡐⢌⠆⡱⢈⠲⡈⢆⠱⡉⢌⣲⣿⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⠿⣿⡀⢀⣾⣿⢓⡶⣩⢞⡹⣬⢛⡴⣛⣿⣦⠀⠙⣿⣯⡁⠠⠁⠄⠂⠌⠀⠉⠁⢠⣾⣿⡿⠁⠀⠀⠀⠀⣾⠁⠀
  44. ⢰⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⠃⠀⢠⣾⠟⠁⢀⣰⣾⣿⠀⠀⣀⣤⣶⡿⠟⢃⣾⣟⣁⠢⡐⢤⠀⣸⣿⡇⠹⣿⣧⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⢿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣍⠠⠌⢂⠲⡉⠆⢎⡐⢣⠑⡌⢢⠑⡄⣺⡿⠃⠀⠀⠀⠀⠀⢀⣴⣿⠟⡁⠘⣿⣧⡾⠿⣜⢣⢞⡱⣎⡳⢵⣋⡞⣵⢪⢿⣷⡀⠈⢿⣷⡀⠁⠌⡐⢈⠰⢀⣴⣿⣿⠟⠁⠀⠀⠀⠀⣾⠃⠀⠀
  45. ⠸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣇⣀⣴⡟⠁⢀⣴⡿⢿⣿⡇⠀⢰⣿⠟⢿⣶⣶⣾⠟⠛⠻⠿⣿⣶⣮⣼⣿⣿⠁⠼⣿⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢻⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⣷⣬⣂⠑⠨⠘⢄⡘⠄⡃⢌⠰⣈⣶⡿⠁⠀⠀⠀⢀⣤⣾⡿⠋⡅⢲⠈⡅⣘⣿⣿⣿⣾⣿⣿⢿⡿⣿⣷⣾⣽⣢⠟⡼⣿⡇⠀⣸⣿⣇⡀⠄⠑⢈⣴⣿⣿⠿⠁⠀⠀⠀⠀⢀⣼⠋⠀⠀⠀
  46. ⠸⠀⠀⠀⠀⢠⣄⠆⠀⠀⠀⠀⠈⠻⠿⢿⣷⣾⠟⠋⠀⠸⣿⠇⠀⣿⣯⣼⣴⣿⣿⣃⣌⠡⢃⠒⠤⣈⣽⡿⢻⣟⠀⠀⠈⢻⣿⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠻⠿⣷⣷⣶⣶⣷⣾⡿⠿⠛⠉⠀⠀⣀⣴⣾⣿⠟⡡⢂⡱⠌⡃⢌⣴⣿⡟⣧⢻⡶⣱⢎⡳⡼⡱⣎⣿⡿⣿⣾⣱⣿⢃⣠⣿⠟⠻⣷⡀⣰⣿⣿⡟⠃⠀⠀⠀⠀⢀⣴⠟⠃⠀⠀⠀⠀
  47. ⠘⠀⠀⠀⠀⠈⢻⣷⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⣿⡇⣰⣿⣏⢋⡉⢩⠙⡛⠿⠿⣿⣶⣶⣿⠛⡡⢚⡏⠀⠀⠀⠀⠙⢿⣧⡄⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠹⢷⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣴⣾⡿⢿⣿⣿⣿⠢⡑⢡⢂⢱⣼⣿⡟⢧⡝⢮⣿⡷⢭⣺⢱⠳⣽⣿⡟⡵⡭⣿⣿⠋⣴⣿⡏⠀⠀⠻⣿⣿⣿⠋⠀⠀⠀⠀⢀⣰⡿⠃⠀⠀⠀⠀⠀⠀
  48. ⠐⠀⠀⠀⠀⠀⠀⠋⢙⣿⣷⣦⣄⡀⠀⠀⠀⠀⢀⠀⠀⠀⠙⠿⠟⠛⠿⣿⣶⣥⣬⣴⣴⣶⣶⠿⢋⠄⡓⢄⣻⠁⠀⠀⠀⠀⠀⠀⠙⢿⣧⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣽⡿⣷⣽⣢⣤⣄⠀⠀⠀⠀⠀⠀⠀⣀⣀⣤⣴⣶⣿⣿⡟⠋⡅⠒⣸⣿⣿⣿⠠⠑⢂⣼⣿⡟⣽⣟⡜⢺⣿⡿⡜⣧⢣⣏⣽⣿⡟⣜⢧⢳⣿⣿⣿⡟⣧⢻⣆⠀⠀⣿⣿⡇⠀⠀⠀⠀⣰⣿⠟⠀⠀⠀⠀⠀⠀⠀⠀
  49. ⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⢻⣟⠿⣿⣶⣤⡀⠐⠈⠐⠀⠀⠀⠀⠀⠀⢠⣿⣿⣟⠻⢛⠛⠛⡉⠤⡘⢄⠣⢸⡏⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⢿⣶⣄⣀⡀⠀⢀⣀⣠⣤⣴⣶⣾⠿⡿⣷⣝⠻⣿⣯⣿⣦⣤⣤⣶⣶⣶⣾⡿⠿⠟⠛⠉⢹⣿⡇⠰⠡⠆⣿⣿⣿⡏⠄⣣⣾⣿⣏⠷⣹⣿⢱⣻⣿⢣⡳⣭⠞⣭⣿⣿⡱⡽⣜⣾⣿⣿⣿⣱⣫⢾⣏⠀⠠⣿⣿⠇⠀⠀⠀⠀⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀
  50. ⠀⠀⠀⠀⠀⢠⣄⠀⢸⣿⢹⣯⣛⡴⢫⢟⡿⣷⡄⠀⠈⠠⢁⠂⠀⢠⣿⢯⡝⣿⣷⣮⣈⠱⢈⠆⣉⠢⢁⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠻⢿⣿⣿⣿⣿⣯⣯⣽⣱⣎⡝⡶⣍⢿⣧⠀⠙⠻⢿⣿⣍⠛⣿⣧⡄⠠⠀⢄⣠⣦⣾⣿⡁⢃⠣⣼⣿⣻⣿⣷⣼⣿⣿⣿⣿⣭⣻⣟⣲⣿⣏⠷⣱⢧⣛⣼⣿⣧⠻⡴⣋⣿⣯⠙⠋⠛⢿⣿⡏⠀⢰⣿⣿⠀⠀⠀⠀⢰⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  51. ⠀⠀⠀⠀⠀⢸⣿⣆⣸⡏⠸⣿⣲⣙⢯⣚⡼⡹⣿⡆⠀⠐⡀⠂⠁⣼⣿⡓⢾⡰⣏⠿⣿⣿⣶⣮⣤⣦⣁⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣮⣉⠙⡙⠛⠛⠛⠿⣿⣷⣯⣞⣿⡇⠀⢰⠀⠙⣿⣿⣄⣻⣿⣶⣿⣿⡿⣟⣿⣿⢀⠣⣼⣿⢳⣿⣿⣿⣿⡿⠁⠿⣿⣿⣾⡟⣼⣿⢫⡝⡧⣞⡱⣎⠿⣿⣿⣷⣿⣾⣿⣷⣦⡀⢠⣿⡇⠀⢸⣿⣟⠀⠀⠀⠀⢸⡇⢀⣀⣀⣀⣀⡀⠀⠀⠀⠀
  52. ⠀⠀⠀⠀⠀⠀⣿⣿⣿⠃⠀⢻⣷⡭⢖⡳⢮⢵⣻⣿⠀⠐⠠⢰⡅⣿⡷⣹⢣⢟⣜⡳⠶⣌⡏⢿⣿⡟⠿⢿⢿⣿⣶⣦⣤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣷⡌⠰⡉⢌⡑⢂⣼⣿⠹⣿⣿⠃⠀⢈⠁⣾⣿⣟⠈⠁⠈⠻⣿⣷⢯⡳⣿⡏⣠⣿⡿⣽⣿⣿⣿⣿⣿⡇⠀⠀⣹⣿⣿⡟⣾⣿⢣⡝⡧⣝⡳⢮⡝⢮⡵⣭⢮⡵⣩⢛⣿⣷⣾⣿⠀⠀⢺⣿⡧⠀⠀⠀⠀⠘⠻⠿⢿⠟⠉⠟⣿⠀⠀⠀⠀
  53. ⠀⠀⠀⠀⠀⠀⣼⣿⡏⠀⡀⠈⢻⣯⡯⣜⢧⣫⢼⣿⠀⠀⣰⣿⠁⣿⣟⣥⡛⣮⢎⡗⣻⢬⡝⣮⣿⣿⡹⣚⡼⢻⣯⡝⣻⡟⡿⣿⣷⣶⣤⣄⣀⡀⠀⠀⠀⠘⣿⡄⡑⠢⢀⣿⡟⢡⢃⣿⡇⠀⠀⠀⣸⣿⣿⠿⣶⣤⣀⣀⣼⣿⣦⢉⣿⣷⠟⣋⣼⣿⣿⣟⣿⣿⣿⠀⠀⠀⣸⣿⡿⣜⣿⣿⢣⡻⣜⡵⣹⡓⡞⣧⢳⢎⠷⣭⠳⣭⣾⡿⣿⣿⡇⠀⠸⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⡀⠀⠀⠀
  54. ⢈⠀⠀⠀⠀⢠⣿⣿⠁⠂⡐⠀⡀⠻⣷⣝⠶⣩⢾⣿⠀⢠⣿⠇⠀⢹⣿⢦⣛⡴⣫⠞⣵⠺⣼⣷⣽⣿⣱⢣⢯⡝⣿⣯⢽⣿⢲⠵⣯⣞⡹⣻⣿⣿⣿⣷⣶⣤⣤⣍⣰⣷⡿⢋⠐⢢⣼⣿⡃⠀⢀⠀⣽⣯⢿⣿⣾⣿⣿⣿⡛⠋⢿⣿⡿⣡⣴⣿⣿⣟⡷⣯⣿⣿⠇⠀⠀⢀⣿⣿⢻⡴⣛⣿⣧⣛⡼⣜⣣⣝⢳⢎⣳⢫⢞⡥⣿⡿⣏⡳⣿⣿⢿⣆⠀⢻⣿⣷⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠨⡇⠀⠀⠀
  55. ⢠⠀⠀⠀⠀⢸⣿⡇⠀⡐⠈⠔⡀⠀⠙⠻⣯⣧⢿⡟⠀⣾⡟⠀⠀⠈⣿⣗⢮⢵⣣⢟⡜⣧⣻⡿⣼⣿⢣⢏⡶⣹⠼⣿⣿⣿⠭⣞⣹⣿⡱⣿⣿⡟⠙⠛⠻⠿⢿⣿⣿⡏⠰⣈⣼⡿⠛⣿⡇⠀⡀⠀⢾⣟⣦⣳⣾⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣻⣞⣿⣿⣿⠋⠀⠀⠀⣼⣿⣟⢳⡞⣥⢻⣿⣶⣓⢮⣓⢮⣛⣾⣥⣛⢮⢞⣭⠳⣎⣵⣿⣿⣯⣿⣷⡀⠙⠻⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀
  56. ⢸⠀⠀⠀⠀⢸⣿⠃⢀⠀⡁⠂⠄⡁⠂⠀⠉⢿⣿⡇⢰⣿⡇⠀⠄⡀⠘⣿⣯⠶⣙⢮⡝⣲⣿⡷⣿⣿⣏⣎⣗⣣⠟⣿⣿⣿⡝⣦⢻⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⣿⣿⣇⣶⠟⠁⠀⠀⢻⣷⡀⠀⠄⣈⣿⣾⣿⣿⣽⣞⣷⣻⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣅⠀⠀⠀⣼⣿⡿⡜⣧⠻⣬⢳⣼⣿⣿⣮⣝⣮⢱⢻⣿⡼⣩⢞⡼⣛⡴⣿⣿⠟⠿⢿⣿⣿⣿⣷⣾⣿⡿⠿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀
  57. ⢸⠀⠀⠀⠀⢸⣿⠀⠠⠀⠄⡁⢂⠀⠃⢈⠀⠀⢿⣷⢸⣿⠁⠐⡈⠄⠀⠈⢿⣯⡝⡶⣩⣿⣿⣾⣿⣿⣷⡞⡼⣜⠯⣽⣿⣿⢣⢿⣻⣿⣿⠟⠀⠀⠀⠀⠀⠀⠀⣿⣿⡟⠁⠀⠀⠀⠀⠀⠻⣿⡿⠿⠟⢋⠄⡙⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣟⣿⣿⣿⣦⣀⣼⣿⡿⣱⠻⣜⣻⣴⣿⣿⠟⠛⠻⢿⣿⣿⣾⣿⡷⣙⢮⡳⣝⣾⣿⡟⠀⠀⠀⠀⠈⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⣀⡤⠒⠀⠀⠀⠀
  58. ⢨⠀⠀⠀⠀⢸⣿⣇⢀⠂⡐⢀⠂⠀⢢⡦⠀⠂⢸⣿⣿⣿⡆⠐⠠⠘⡀⠂⠀⠙⢿⣷⣷⣿⣷⣿⣿⢿⣿⣿⡱⣎⠷⣹⣿⡿⣩⢷⣿⣿⡏⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠙⢶⡈⠜⡠⢂⣼⣿⣿⢿⣽⣿⣿⣿⣿⡟⣿⣿⣟⣿⢾⣳⡿⣿⣿⣿⣿⡟⣱⢭⣳⣿⣿⡿⠛⠁⠀⠀⠀⠀⠀⢉⣿⣿⡳⠽⣧⣽⣿⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⠾⠛⠀⠀⠀⠀⠀⠀
  59. ⢨⠀⠀⠀⠀⠘⢿⣿⣦⡀⠌⠀⠂⢰⣿⠇⠀⠀⢸⣿⡿⣿⡇⠀⢁⠂⠄⠡⠈⠀⠠⠙⣿⣿⣿⡿⠃⠀⢿⣿⣷⡩⢏⣿⣿⡱⣧⣿⣿⠟⠀⠀⠀⠀⠀⠀⢀⣴⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠒⠧⣼⣿⡿⣯⢿⣾⢿⣟⣾⣿⡇⢹⣿⣿⣞⡿⣽⣻⣽⣿⣿⣿⣼⣿⣿⡿⠟⠉⠀⠀⠀⠀⠀⠀⠀⢀⣼⣿⡿⣱⣿⣿⣿⠟⠁⠀⠀⠀⠀⣸⣿⣤⣤⣤⣤⡶⠶⠞⠛⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀
  60. ⠘⢆⠀⠀⠀⠀⠈⠻⣿⣿⣦⡀⢀⣾⡏⠀⠀⢀⣿⡿⣵⣿⣿⡀⠄⢈⠐⢂⠡⠈⠀⢼⣿⣿⠋⠀⠀⠀⢸⣿⣿⠱⣿⡿⣥⣿⣿⡿⠋⠀⠀⠀⠀⠀⢀⣴⣿⣿⠟⣡⣾⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣿⣿⣻⣽⣟⡾⣟⣾⣽⣿⠁⢎⢻⣿⣯⣿⣯⣟⣾⣻⣿⣿⡟⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⣿⣿⣷⣿⠿⠋⠀⠀⠀⠀⠀⣠⣾⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  61. ⠀⠈⢳⡀⠀⠀⠀⠀⠀⠛⢿⣿⣿⡿⠀⠀⢀⣾⣿⣿⣿⣿⣿⣷⡀⢀⠈⠀⡀⠐⠀⣾⣿⡇⠀⠀⠀⠀⢸⣿⡿⣽⣿⣿⣿⣿⠛⠀⠀⠀⠀⠀⢀⣴⣿⣿⢟⣡⠞⠃⢈⠀⣠⣤⣀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣳⣟⡷⣯⢿⣻⣽⣿⠏⡌⠀⢂⡻⢿⣷⣿⡾⣽⣳⣿⣿⣧⠀⠀⠀⠀⢀⣤⣤⠀⠀⠀⠘⣿⠿⠟⠛⠉⠀⠀⠀⠀⠀⠀⣠⣾⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  62. ⠀⠀⠀⡃⠀⠀⠀⠀⢠⣴⣿⡿⠟⢥⣤⣶⣿⣿⣿⠟⠋⠀⣻⣿⣿⣿⢶⣴⡦⠴⣾⣿⣿⡗⠀⢀⠀⠠⣿⣿⣿⣿⡿⠟⠋⠀⠀⠀⠀⠀⠀⣴⣿⣿⠿⠷⠈⠀⠀⠰⠮⣿⠯⠈⠹⢷⣤⡄⠀⠀⠀⠀⣼⣿⣿⢷⣿⢿⡿⣿⠿⡿⡿⠿⠇⢤⠌⠷⠾⣿⣿⣿⣿⢿⡿⣿⣿⠂⠀⠀⠀⢼⣿⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⡾⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  63. ⠀⠀⠀⠈⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣺⣿⣏⡿⢶⣤⣀⡀⢀⣀⣀⣠⣤⣶⢿⣛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  64. ⠀⠀⠀⠀⠈⢦⣀⣀⣀⣀⣀⠀⠀⣀⣀⣀⣀⣀⣀⣤⡀⣀⣀⠀⠀⣀⠀⠀⠀⠀⠀⠀⢠⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⡾⢷⣦⣄⣀⡀⣀⣀⣀⣀⢀⣄⣀⣀⣀⣀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣄⡀⡀⠀⠀⠀⡀⢀⡀⠀⠀⠀⡀⠀⢀⠀⠀⠀⠀⢀⡀⢀⠀⠀⠀⣼⣿⣿⠿⣄⠀⣭⠙⠛⠛⠛⠋⠉⣀⡀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀
  65. */
  66. #include<bits/stdc++.h>
  67. #define ll long long
  68. #define ii int
  69. #define fas ios::sync_with_stdio(0); cin.tie(0)
  70. #define nq int main()
  71. #define For(i, a, b) for(i = a; i < b; i++)
  72. #define Fo(i, a, b) for(i = a; i <= b; i++)
  73. #define Rep(i, a, b) for(i = a - 1; i >= b; i--)
  74. #define Re(i, a, b) for(i = a; i >= b; i--)
  75. #define F0(i, n) For(i, 0, n)
  76. #define F1(i, n) Fo(i, 1, n)
  77. #define cl clear()
  78. #define be begin()
  79. #define rb rbegin()
  80. #define en end()
  81. #define all(x) x.begin(), x.end()
  82. #define allt(x) x.begin() + 1, x.end()
  83. #define fi first
  84. #define se second
  85. #define pb push_back
  86. #define pf push_front
  87. #define pob pop_back()
  88. #define pof pop_front()
  89. #define v1 vector<int>
  90. #define v1l vector<ll>
  91. #define v2 vector<vector<int>>
  92. #define v2l vector<vector<ll>>
  93. #define pai pair<int, int>
  94. #define pail pair<int, ll>
  95. #define pali pair<ll, int>
  96. #define pal pair<ll, ll>
  97. #define v1ip vector<pai>
  98. #define v1ilp vector<pail>
  99. #define v1lip vector<pali>
  100. #define v1lp vector<pal>
  101. #define gri greater<pai>
  102. #define gril greater<pail>
  103. #define grli greater<pali>
  104. #define grl greater<pal>
  105. #define uni unordered_map<int, int>
  106. #define unl unordered_map<ll, ll>
  107. #define fin(x) freopen(x, "r", stdin)
  108. #define fou(x) freopen(x, "w", stdout)
  109. using namespace std;
  110.  
  111. const ii inf = 1e9 + 7;
  112. const ii iinf = -1e9 - 7;
  113. const ll oo = 1e18 + 7;
  114. const ii N = 5e5 + 5;
  115. const ii KK = 3;
  116. const ll MOD[3] = {1000000007, 1000000009, 1000000033};
  117. const ll BASE[3] = {311, 331, 351};
  118. const ll BASEa[3] = {31, 37, 41};
  119. const ll BASEA[3] = {53, 59, 61};
  120.  
  121. ii n;
  122. ii d1, d2, d3, d4;
  123. ii ans;
  124.  
  125. nq{
  126. fas;
  127.  
  128. ii i; cin >> n;
  129.  
  130. F1(i, n){
  131. ii x; cin >> x;
  132. if (x == 1)d1++;
  133. else if (x == 2) d2++;
  134. else if (x == 3) d3++;
  135. else d4++;
  136. }
  137.  
  138. ans = d4 + d3;
  139. if (d1 >= d3) d1 -= d3;
  140. else d1 = 0;
  141.  
  142. ans += d2 / 2;
  143. if (d2 % 2 != 0){
  144. ans += 1;
  145. if (d1 >= 2) d1 -= 2;
  146. else d1 = 0;
  147. }
  148.  
  149. if (d1 > 0){
  150. ans += d1 / 4;
  151. if (d1 % 4 != 0) ans++;
  152. }
  153.  
  154. cout << ans;
  155. }
  156.  
Success #stdin #stdout 0s 5336KB
stdin
Standard input is empty
stdout
Standard output is empty