= RuPol @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@;;;;;;;;::::::::::::,,:,,,,:,,,,,,:,,,:;:,,::;';;'+#+'.,,,:+';::::::::::::,:,........,,:::::,,,,,,..,,,,,,,,,:::::::::::;;;;;;;;;#@@ @@;;;;;;;;:::::::::::::,,,,.,,:,,,,,,,::;,.`.,::;:;+###+,..;'';;;;;::::::::::::...,,,:;;;;;::::,,,.,,.,.,,,,,,,:::::::::::;;;;;;;;;#@@ @@;;;;;;;;;::::::::::::,,,,.,::,,,,,,::;```..,.:,;'#+#+:.,::+';;;;;;;;;;'''''''';:::,:;;;;;::::,,,......,,,,,,,:::::::::::;;;;;;;;;#@@ @@;;;;;;;;:::::::::::::.,,.,,::,,,,,:::..``....,,;+##++,,::++''';;;;;;;';''''''+++';::;;;::;;:::,........,,,,,,,:::::::::::;;;;;;;;#@@ @@;;;;;;;;:::::::::::.,:,:.,,,,,,,,,:,...`.....,.'+##+;,,,;+''';';;;;;;;;''''''''''+';;;;:;;;;;::,........,,,,,,:::::::::::;;;;;;;;#@@ @@;;;;;;;;:::::::::::.:.,:,:,,,,,,,,,...........,++##+,,:;#+''';;;;;;;;;;'''''''''''''';,;;;;;:::::,,.....,,,,,,:::::::::::;;;;;;;;#@@ @@;;;;;;;;::::::::::::`.,,.,,,,,:,,,,,,.......,`:###+,:,,++'';;;;;;;;;;;;;;;''''''''+++':;;;;:::::,,:,.....,,,,,::::::::::::;;;;;;;#@@ @@;;;;;;;;::::::::::::....,,,,,,:,,,,,.,......,.;+#';,,:'+';;;;;;;;;;;;;;;;;;;'''''''+++';;;;:::::::,,,....,,,,,:::::,::::::;;;;;;;#@@ @@;;;;;;;:::::::::::::..,,,,,,::,,,:,,,,.......,;++:,,::+';;;;;;::::::::::;;;;;'''''''+++';:;;;::::,,,,,....,,,,,:,,:,,,::;:;;;;;;;#@@ @@;;;;;;;;:::::::::::,,.,,,,,,,,,,,,,,,.....`..;'+;:::,+';;;;;;:::::::::::::;;;;;''''''+++;:;;::::,,,,,,,....,,,,,.,:,,,,::;;;;;;;;#@@ @@;;;;;;;;:::::::::::,,...,,,,,,,,,,,,,,.......'+;::::+'';;;;;:::::::::::::::;;;;''''''++++::;;;;::,,,,,.....,,,:,,,:,,:,::;;;;;;;;#@@ @@;;;;;;;;:::::::::::,,,.,,:::,,,,,,,,,,.,...,.;;;:::+'';;;;;::::::::::::::::;;;;'''''''+++':;;;::,,,,,,.,....,,,,,,:,,:,::;;;;;;;;#@@ @@;;;;;;;;:::::,:,:,,.,,:,,::::,,,,,,:,,,....,.;::;'+''';;;;:::::::::::::::::;;;;;'''''''+++;:;;;;::,,,.......,,,,.::::::::;;;;;;;;#@@ @@;;;;;;;;:;;.:;...,,,,::::;;::::::::,,.:....,:;::+#''''';;;;:::::::::,,:::::;;;;;;''''''+++;;;;;;;::,,,..,...`,::,,::::::;;;;;;;;;#@@ @@;;;;;;;;:;:,.`.,,,,,,:;;;;;;;;:;:::,,,,.,..,;;'##+'''';;;::::::::,,,,:,:::::;;;;;''''''++++;;;:::::,,...,..,.,,,,,.:.:::;;;;;;;;;#@@ @@;;;;;;;;::;.....,..,,,;;;;;;;;:;;;,,,:,.,.,:++##+''';;;;;;:::::::,,,,,,,:::::;'''+++'''++++':;::::::,,...,.,,,::,,,,,::::;;;;;;;;#@@ @@;;;;;;;;:;,.......,,,,,';;';;;;:;::,,:,,,,:;+'##''';;''''';::,,,,,,,,,,,,,,:''''';;''+''+++':,:::,,,,,,..,.,,:,,::,,,,:::;;;;;;;;#@@ @@;;;;;;;;;::,......,.,,,;;;;';;;;:::,::,,.,;;++#+''''''''''';:,,,,,,,,,,,,,::;;;:::;;;;''++++::,,,,,,.,:..,,,,,,:::::,,,;;;;;;;;;;#@@ @@;;;;;;;:;,,,`....,,.,,::;;;;;;;;::::::,,,:';++++''';;::,:;';;:,,,,,,,,,,,::::::::;;;;;''++++;:.....,,.,,,,,,,::,,:::,,.::;;;;;;;;#@@ @@;;;;;;;;:...``.....,,,:;::;::;:::::::,,,,;''+#++'';;:::::::::::,,,,,,,,,,::,:::;;;;'''''++++':.......,.:,,:,:::,::::,,.::;;;;;;;;#@@ @@;;;;;;;;,..,`........,::;;:;::::::;::,,,:''+++++';;;;;;;;:::,::,,,,,,,,,,,,:;;''''''+'';+++++:.......,,,,,:::::,,::::,,:;;;:;;;;;#@@ @@;;;;;;:::..,...`.....,:;;;;;;;;;'':::,,,;;;+++++';;''';''';;:,,,,,,,,,.,,,:;'+++++++++++'++++;,........,,,:;,,,:,:::,,,:;,,,.;;;;#@@ @@;;;;;;;;:.,,,...`.....::;;::;;;;::::,,:';';+'#++''''++++++++';:,,,,,,..,,:;++##########+'++++;,.........,,,::,:,,:::,,,::.,,.,;;;#@@ @@;;;;;;:;....,,........,::;':::;:::::::;';''+;+++'+++###+++++++;:,,,,,,,,:;'++;;'+#@@#@##+++++;............,':,:,,,,,,,.',.,.,,;;;#@@ @@;;;;;;;;..,......,,....,::;+';::::::;';;';'':+++++######++'''++'::,,,,,:'';;:'+#@#@#@####++++'........,,.,,::;:,,,,:,,.,,...,,;;;#@@ @@;;;;;;;;.,,.......,,,,.,,::;;;'+++'';;;;;;;':++++##@###+#''';;'';;:,,,:'';::+#@@@@@@@@###+++++..,.........,,;;::::::,.,.,..,.;;;;#@@ @@;;;;;;;;:,:..,.,,,,,,,,,,,:;:;;;''';;;;;;;;;;+++######@##@##';:;'';:::;';,:'+#@#@@@@@@@#+''''+;,.,,,,,..,,,,,:;::::::.,.,....;;;;#@@ @@;;;;;;;;::,,,.,:::,,::::,;:,,:;;;;;:;;::::::'+++####@@@@@@##@+:,:;;;:;';:,:#@:+'##:#@@@+''''''':,,.,,,...,,,::;;:::,,,......,;;;;#@@ @@;;;;;;;:::::,,:,,:::::;;;:,:::::::;;;;::::::+++++#@@@@@#+++.+#;,.;';:;';:,'+:,'+@#.'@@+'''''''',,,,,..,....,,:::::,,,......`;;;;;#@@ @@;;;;;;;:::::::;:::::::;;;:;,:::::::::,,,,,,:+'''++#@@@,##;+',:++:;;;::;';';::.#+#####';:;;;'''',,.,.,......,,,,,:::,,......;;;;;;#@@ @@;;;;;;;::::::::::::::;;:::::,,,,...,,,,,,,,:'''''+##@@'+'#':;++::;;;::;';::'###+##+'':::;;''''':,,,,....,,.,.,,,,,,,,.....,;;;;;;#@@ @@;;;;;;;;,::::::::::::::::,,,........,,,.,,,:+';';;;'##+@####';,::;;:::;'';::;'''';;;::::;;;'''';:,,.....,,:,,,,:::::,,,..,,;;;;;;#@@ @@;;;;;;,.::::::::::,:::::,...........,,:,,..:''';;::::;;''';;::::;;;;::;'';;::::;;:::::::;;'''''';;:..,..,,,::::;;;;:::::::;;;;;;;#@@ @@;;;;;:.,:,:,:::::::,:,,,.............,,,...:''';;:,,,:::::::,,::;;;;:;;';;;:::::::::::::;;''''''''';,,,,,,,,;:::;;;::::;:,:::;;;;#@@ @@;;;;;..,,,,,,:;:::,,,,,,,,,...........,..,,,;''';::,,,,,,,,,,,::;;;;::;'';;;:::::::::::;;'''''''++'';,,,,,:::::;;::::;;;;:,;:,;;;#@@ @@:;;;,..,,::,::::::,,,,,,.........,,,,....,,,;'';;;:,,,,,,,,,,::;;;;:,,:''';:::,,,:::::;;;''''''++++'';,:::::;;;::;;;:;;;;:;,;::;;#@@ @@:;;;...,,,,,:::::::,,,,,......,,:,,,..,..,,,;;'';;::,,,,,,,,,::;;;;:..,;;;;':,,,,:::::;;''''''''#'+;;';::::;;;;;;;;;;;;;:;:,,,;;;#@@ @@;;;;...,,,,,,:::::,,,,,,,,..,,:,:,,.,...,::'''''';;:::::,,,,,::;;;;:.,:;;;;;;:,,,::::::;''''''''';'';'''::;;;;';;;;';;';;:,.:,:;;#@@ @@:;;;..,..,,,,::::::::::,,,,,,,,,.,.....,,:+''''''';;:::::::,,:;;::;:::;;;;::;::,::::::;;'''''''''+''';'';;;;;;;;;;;;;'';;::,,:;;;#@@ @@,;;;,.,..,.,::::::::::::,,,,,,,,.......,,;+'''''';;;:::::::,,:;::;';;;;+@@#;;;:,,:::::;;'''''''';';;';;';;:;;;;;;;;;;;;';;:,,,;;;#@@ @@`:;;,,,,..,,:::::::::::::,,,,,,,,.......'+++'''''';;::::::::,:;;#@@#';;+'';;';::::::;;;;;''''''';;;;;;;';;:;;;;;::;';';;;;;:.,;;;#@@ @@`.;::.,,,,.,:::,,::,::,:,,,,,,..,.....,:+'+''''''';;;:::::::::':,,:;;;:,::;;;:::::::;;;;;''''''';:;;;;;;::::;;;;:,::'';;;;::.,;;;#@@ @@..:::.,,,..::,,,,,,,,,::,,,,,,,,,...,:;;''';'''''';;;:::::::::';::::,,,,:::;;:::::;;;;;;;';;;''';:';;;:;::;::;:;;,::;;;';;:::,;;;#@@ @@;.`.:,,::,,:;,,,,,,,,,:,,,,,,,,,,,,:;;;::'';'''''';;;;:;:::::::::::,,,,,,::;;;;:::;;;;;;;;;;;'';''';;;:;;::::;;;;,::::;;'';,,,;;;#@@ @@;:.....,:.,,:,..,,,.,,:,,,,,,,.,,,'';;:::':;''''';;;;;:;:::::::::::,,,.,,,:;;;;:::;;;;;;;;;;:;';';;;:::;;::,:;;;;,;:::;;;;;,,.;;;#@@ @@.;:.`...,,:.,,...,.,,,:,,,,,,,,,;+'';;::,;:''+''';;;;;;;::::::::::,,,,,,,,,:;;;;;:;;;;;;;;;;:;';+';:::::;::,,;;;',:,::;:;;:::,;;;#@@ @@,,::,...,,:,,,..,.,.,::,,,:::::;''';;;::,;;+'+'';;;;;;;;;:::::;:::,,,,,:'++':;;;;;;;;;;;;;;;:;'';,::::::;::.,;;;',:;,;::;:,,:,;;;#@@ @@:,`:::...,,,,,.....,,:,,,:::;;;;+';;::::,:'''+''';;;::;;;::::;;::'++':,:;''++;;;;;;;;;;;;;;;:';';,':::;::::,,;;;;:::,:,::::,:,;;;#@@ @@:,:,.,,.,,,,,,.....,,,.,:;;;;;;'+;;::::,,:;;'++'';;:::;;;:::;:;;+';,''',,'''++';;;:;;;;;;;;;:':;:':::;:;:::,:;;;;;.,::,,:,:,;,;;;#@@ @@:::.;:,,,,,,,,.....,,,,,::;;;;;''::::,,,,``:;;+'';;::::;;::::;;+''''+;':,::'++#';;:;;::;;;;;;'';+,:::;;;:::,:::;;;`,,,,,,,:.;:;;;#@@ @@::,,,,.,,,,,,....,.:,,,::::;;;;';:,,,,,,:'..':#+';;::::::::::;++';,.``.``.`..+++;;:;;;;;;;;;;''#';::;;:;:::,:::;;;.,:.,,,,,:::;;;#@@ @@:::.,,.,,.,,,......,,,,::;;;;;'':,,,...,.;;:;;++';;::::::::::;++,`..`````.``.,+#:;:;;;;;;;;;;''#+;:::;:;:::,::,:::.:;.,,::,:,::;;#@@ @@::::,,...,:,.....,,,::;::;:;;;;:,,.........':+##+';::::::::::+#,``;+ ;`.+#@+'##'::;;;;;;;;;;''#+;;::;;::::,,:,:::.;;..,::::.:::;#@@ @@:::.,...,,,,.....,,,,:;:::;;;:;,..,.....:;'++#+#+';::::::::::#+;@@@+##@@#@#@##@@+::::;;;;;;;'+''+;:::;:::;:,::,:,,.;,..,::::.::::#@@ @@......,,,:,....,,,,:::;;:::,,,:........,:'++++++++;::::::::::#@###++++##+++++++#+:::::;;;;;'''+'';;;:;:::::,::,,,,.;...,,:::.::::#@@ @@`,,...,:,,,...,,,,,:::,,,,:,,,........,:;'++++##++';:::::::,:##++'';''''';::;''#':::::;;;;''+'''+;;;:::::::,,:,,,,.,....,,::,::::#@@ @@`..,,,,,,.,,.,:,,,,,,,,,,..,..........:;''''+####+';:::::::,:+++;:::::::,,,,::;+':::::;;;;''+''';;;;:,;::,:,.:,,,.......:,:::::::#@@ @@..,,.....,::,,,::,:,,....,,,,,,,,,:,,:;;'''++++++#+';::::::,:'++:,,....,,,,,,:''':::::;;;''''''';;;::,::,,:,.,,,,,,.....,,:::::::#@@ @@...,....,,,,:,:,,::`..,,,,,:,::::::::;;'''+++++###+';::::::,::+'',.,.......,::''':::::;;;'''''';;;;::,::,,:,..,,,.......,,:::::::#@@ @@.,,....,:,::::,:,.....,,::,,::::::::;'';'''+'++###+';;;::::,,:++:;,........,,;,'+:::::;;''++'';;;;;::,:,,,,,.,:,,,..`.:,,,:::::::#@@ @@,,,,,.,::::::,:,.....,:::::::::::;;;;;;;''';+++###++';;:::::,:'+'',,,.....,,..;++:::::;;''++'+';;;;,:,:,,,,,..,,,,.``.,,,,:::::::#@@ @@,,,,,,:,:,::,:.....,:,,:;:;;:::;;;;;;;;';:;:''+####+'';;;:::,,;+++,.,,....``.,++'::::::;'+++''';;:;,:,,,,,.,.,,.,....,,,,::::::::#@@ @@.,,,.,,,:::,,....,:..,''';;;;';;;;''''';:,,:;++####++'';;::,,,;++++:``..`.`.;+++;:::::;;++#++'';';:::,:,,:,,.,,,,....,,::::::::::#@@ @@..,,,::::::,....,,..,;:'''';;;;;;'++';;;:..:;+#####+++'';;:,,,;;++#++',:,;'#++++;:::::;;++#'++';;;,,,,:,,,,,.:.:,.....,::::::::::#@@ @@.:,.,,:::::,.......,,';'''';;;:;'+'+;::,,.,,:+#####+++'';;::,::;'++';..`.:;'++#;;:::::;'+#+'''';;':,,:,,,::.`,:,,..,,..::::::::::#@@ @@.::.,::;;:,......,.`,,:'';;;;;;;'';';:,,,..,;#++###+++++';;:,,:::;++,::.,,:'++;;;:::::''##+#+';;;;:,.:,,,,,.`,,,..,,,,`,:::::::::#@@ @@.::..::::,.......,.,:,,:,;;;;;;;'';;;,,,,..,'+#####++'++'';:,,:::::'+#+++++';;;;:::::;++##++''';;:,..;,:,....,..,.,,,,,,:::::::::#@@ @@.,:,.,::,,............,,,:::;;;;'';;:::::,::''++##@++++++';:::::::::::;;;;;:::;:::::;+++#+++'';;;,,,:',:,....,,,...,..:::::::::::#@@ @@:,,,..,:::............,,,:::;'';;;;;;:':;:::';+++#@#'''+++':::::::::::::::::::::::;:'+'##++'';;;::,.''::,...,:,:,,,,,.:::::::::::#@@ @@:::,:,.,;;.............,:::;;';;';;;';;:;'::;;'++###''''+++;::::::::,,,,,,,,::::::;;++'#++++';;::,.:;:::,..`::,,:,,:,::::::::::::#@@ @@:::::,,,:,............,,,::;;';;;;;;';;:;;;:;'''###+'''''+++;::::::,,,,,,,,,,:::::;++'+#++++;';::,,'+::,,.,`:::::::::::::::::::::#@@ @@:::::::,::......,.,,::,:::::;;;:;;;;'';;:;;;;;:#++++''''''+++;:::,:,,,,,,,,,,,::;;'++'###++'';:::,:+;::,,..,,::::::::::::::::::::#@@ @@:::::::,,:....`.....,,.:::,,:;;;;;;'';;;:';;;'##++++'''''''++';::::,,,,,,,,,,::;;'+++;####+';;;::,:':::,..,::::::::::::::::::::::#@@ @@::,:::::,,....`.`...,..,,:,::::;;;;'';;;:';;'+++++'''''''''+++;;::::,,,,,,,:::;;'+++''####++';;:,:'::,,,,.:::::::::::::::::::::::#@@ @@.:,::::::,..,..``......,,,,:::';;:;'';;;;;;''+#+''''';;;''''+++';;::::::::::;;'+++++++#####++'::::,,,,,,.::::::::::::::::::::::::#@@ @@::,::::::,..,...`......,,:,::;';;;;;;:::;;;;'#@+''''';;;'''''++++'';;;;;;;;''++++++++#######+;:.:::,,,.::::::::::::::::::::::::::#@@ @@::::,,,,,,.,,..........,,,,,;;;;::::::::;;;;##@@''''';;;;'''''+++++++''''++++##+++++'#@@@#@#:.'.;::,,.:,::::::::::::::::::::::::;#@@ @@:;:::::,,,...............:;;::,,,,:::,;:::;#@@@@#';';;;;;''''''+++++++++++++++++++++'@#@@@@@@. .';:,,'::;:::::::::::::::::::::::;#@@ @@:::::::::,..........,::::,,:::,,,,,:::,::;##@@@@@';';;;;;;''''''+++++++++++++++++++++##@@@@@@@: .`,,::;,::::::::::::::::::::::::;#@@ @@;;:::,,,..,...,,,,,,,,,,,,,,:..`.,:,,:;.###@@@@@@+;;;;;;;;;'''''''+'+'+'++++++++++''+#@#@@@@@@@@;```.;:;;::::::,::::::::::::::::;#@@ @@::,,,,,.,,,..........,:,,,,:.,`.,.,;;;;##@@@@@@@@@;;';;;;;;;''''''''''''''++++++''''###@@@@@@@@@@@#:`````;::,.:::::::::::::;;:;:;#@@ @@::,,,,::,....,,,:::::,,,:::,,.`.`.;';+#@@@@@@@@@@@+;';;;;;;;''''''''''''''''+'''''''+##@#@@@@@@@@@@@@+:``` :;:,..,;;;::;;;::;;::;#@@ @@:::,,,,,:,,,,,,::::,,,,,,,.,...`,;'###@@@@@@@@@@@@@;'';;;;;;;'';''''''''''''''''''''+####@@@@@@@@@@@@@@@@' `;'':` `:``.``:;:::;#@@ @@::,,,,:,,,,,,::::::::,,,:::...,;,:#@#@@@@@@@@@@@@@@#''';;;;;;;;;'''''''''''''''''''+++++@@@@@@@@@@@@@@@@@+++++###+++';##++': ,:;;#@@ @@,,,,,,,:,,,,:::::::::::;,,.,,+:..``:@@#@@@@@@@@@@@@@''';;;;;;;;;;''''''''''''''''''#++++##@@@@@@@@@@@@@@@####@@@##@##@@@@##+'; ;;#@@ @@,.:,,,,,,,,:::::::::::;:,,:+:...````.@@@@@@@@@@@@@@##'';;';;;;;;;;;;'''''''''''';;'#++++#@@@@@@@@@@@@@@@@@@@@@@@@#@##@@@@####+',.'@@ @@.,:,,,,..,,,::::::;';':,;:,`.```````;@@@@@@@@@@@@@@@@+';'';;;;;;;;;;'''''''''';;;;++'++++#@@@@@@@@@@@@@#@@@@@@@@@@###@@@@###@##++#@@ @@,::,,,.....,::::';;;;::```````````,+#@@@@@@@@@@@@@@@@@'';;;;;;;;;;;;;'''''''';;;;;++'''''#@@@@@@@@@@@@#`+@@@@@@@@@@@##@@@#@@@@@@@@@@ @@,:,:,......,::'';;':.`.```````.````+@@@@@@@@@@@@@@@@@#@';;;;;;;;;;;;;;'''''';;;;:;#''''''+#@@@@@@@@@#+#`#@@@@@@@@@@##@@@@@#@@#@#@@@@ @@;::,,.....,,:';;;',...` `.,..``````'@@@@@@@@@@@@@@@@@@@#;;;;;;;;;;;;;;''''';;;:::'+'''''''#@#@@@@@@@##+ #@@@@@@@@@@###@@@@@@@##@#@@@ @@;::,......,;'''+;.` `,'#@@@@'```````@@@@@@@@@@@@@@@@@@@##;;;;;;;;;;;;;'''';;;::::'+''';'''+##@@@@@@@@#``#@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@:::.......:'':.`.;+####@@@@@@'``````'@@@@@@#@@@@@@@@@@@@#+;;;;;;;;;;;;'''';;::::;++'''';''+###@@@@@##@.+#@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@,,,......::``:+#########@@@@@@,``````@@@@@@@@@@@@@@@@@@@@#':::;;:;::;;;'';;;:::::+''''';'''+##@@@@@##: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@,,.....,.`.'##@##@@@@@@@@@@@@@#``````+@@@@@@@@@@@@@@@@@@@@#;:::::::::;;'';;::::::+''''';;;''###@@@@@+`#@#@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@.......``'##@@@@@@@@@@@@@@@@@@@#`````.@@@@@@@@@@@@@@@@@@@@@;:,,:::::::;;';;::::,:+''''''';;'+###@@##;,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@......`,####@@@@@@@@@@@@@@@@@@@#````` #@@@@@@@@@@@@@@@@@@@@':,,::::::::;';::::,,:+''''''''';'#@@#@##`##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@`...``;##@@@@@@@@@@@@@@@@@@@@@@@+.````+@@@@@@@@@@@@@@@@@@@@+;,,.,:::::::;;:,,,:,;+''''''''';;##@@#'.:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@...``:##@@@@@@@@@@@@@@@@@@@@@@@@+`````:@@@@@@@@@@@@@@@@@@@@#::,#::::::::;;;:,:::;+''''''''';;+#@@+'`@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@.,.`,#@@@@@@@@@@@@@@@@@@@@@@@@@@#:````.@@@@@@@@@@@#@@@@@@@@@@`#+;;:::::::;;:::::;+''''''''''''##@#`'@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ RuPol is a glamorous mixin for instance pooling your Ruby classes. It eases the pain of garbarge collection for classes that are instantiated many times, and then tossed away like runway trash. Instances are cached on the class in a pool (array, in less glamorous terms), and can be recycled at will. Of course, there is no pain without gain, and models will trade collection costs for memory usages. The Swimsuit mixin edition overrides #new and #destroy, for a virtually pain free instance swimming experience. Runway not included. == Contributing to ru_pol * Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet * Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it * Fork the project * Start a feature/bugfix branch * Commit and push until you are happy with your contribution * Make sure to add tests for it. This is important so I don't break it in a future version unintentionally. * Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it. == Copyright Copyright (c) 2011 Kane Baccigalupi. See LICENSE.txt for further details.