"Rain" by W. Somerset Maugham: Analysis

Home > Blog >

One of the ongoing projects that I have started is to collect performances of W. Somerset Maugham's plays, which are more robust than I would have imagined.

What is on at the moment is an adaption of Maugham's short story "Rain" into a musical by Michael John LaChiusa and Barry Eldelstein, performed at the Old Globe Theatre in San Diego. Several of Maugham's works have been adapted into other genres, such as Liza of Lambeth into a musical, The Moon and Sixpence into an opera, The Land of Promise into a novel, not to mention the numerous film adaptions.

The History of "Rain"

The story "Rain" itself has a very interesting history. Maugham wrote it during his trip to the South Seas. From the brief lines he jotted down on his notebook, later published in A Writer's Notebook, he constructed the story.

The missionary. He was a tall thin man, with long limbs loosely jointed, hollow cheeks and high cheek-bones; his fine, large dark eyes were deep in their sockets, and he had full sensual lips; he wore his hair rather long. He had a cadaverous look, and a look of suppressed fire. His hands were large, rather finely shaped, with long fingers, and his naturally pale skin was deeply burned by the Pacific sun.

Mrs. W., his wife, was a little woman with her hair very elaborately done, with prominent blue eyes behind gold-rimmed pince-nez; her face was long, like a sheep's, but she gave no impression of foolishness, rather of extreme alertness. She had the quick movements of a bird. The most noticeable thing about her was her voice, high, metallic and without inflection; it fell on the ear with a hard monotony, irritating the nerves like the clamour of a pneumatic drill. She was dressed in black, and wore round her neck a thin gold chain from which hung a small cross. She was a New Englander.

Mrs. W. told me that her husband was a medical missionary, and as his district (the Gilberts) consisted of widely separated islands, he frequently had to go long distances by canoe. The sea was often rough and his journeys were not without danger. During his absence she remained at their headquarters and managed the mission. She spoke of the depravity of the natives in a voice nothing could hush, but with a vehement, unctuous horror; she described their marriage customs as obscene beyond description. She said that when first they went to the Gilberts it was impossible to find a single 'good' girl in any of the villages. She was very bitter about the dancing.


*

Miss Thompson. Plump, pretty in a coarse fashion, perhaps not more than twenty-seven: she wore a white dress and a large white hat, and long white boots from which her calves, in white cotton stockings, bulged. She had left Iwelei after the raid and was on her way to Apia, where she hoped to get a job in the bar of a hotel. She was brought to the house by the quartermaster, a little, very wrinkled man, indescribably dirty.

*

The lodging house. It is a two-storey frame house with verandas on both floors, and it is about five minutes' walk from the dock, on the Broad Road, and faces the sea. Below is a store in which are sold canned goods, pork and beans, beef, hamburger steak, canned asparagus, peaches and apricots; and cotton goods, lava-lavas, hats, rain-coats and such like. The owner is a half-caste with a native wife surrounded by little brown children. The rooms are almost bare of furniture, a poor iron bed with a ragged mosquito-curtain, a rickety chair and a washstand. The rain rattles down on the corrugated iron roof. No meals are provided.

On these three notes I constructed a story called "Rain". (A Writer's Notebook, London: Heinemann, 1949, 105–6)

It was first published as "Miss Thompson" in The Smart Set and then later changed to "Rain" when incorporated into the collection The Trembling of a Leaf.

It is interesting that the model for Miss Thompson possesses exactly the same name, Sadie Thompson. Maugham didn't bother too much about hiding her identity. But I bet Sadie Thompson from Iwelei, prostitute, is quite a different matter from Walter and Kitty Lane from Britain, presumably respectably employed. Only 3 years after the publication of "Rain," Maugham was to get into trouble with his unfortunate choice of names for his protagonists in The Painted Veil.

But there is more to the story "Rain." Maugham wrote it up from his notes, then one night he chanced to meet John Colton, a young American playwright, at the Hollywood Hotel, who was sleepless and looking for something to read. What's better than asking a writer for that? Maugham gave him "Rain," or titled "Miss Thompson" at the time.

Next morning, Colton was thrilled and wanted to adapt it into a play. Maugham assented, but Colton couldn't afford the rights. True to Maugham's willingness to assist young artists, they shook hands and agreed to split the profit 50 50.

Still more to the story. Maugham by that time was 53 and a successful writer, yet, "Miss Thompson" couldn't find a magazine to publish. Eventually it was taken by The Smart Set. It was an immediate hit, and it may not be an exaggeration to say that thus began Maugham's magazine stories career. From then on, he published incessantly in magazines, shorts stories, essays, serialization of plays and novels, with very lucrative gains.

Colton, not without reason, was worried about the shaky handshake. Maugham reassured him that the handshake still counted. The good old days.

"Rain" the play was a rage, and subsequently it was made into a movie several times, turned into musical, and even a ballet was contemplated, according to Selina Hastings (The Secret Lives of Somerset Maugham, London: John Murry, 2010, 220).

It also gave the actress Tallulah Bankhead many sleepless nights and wretched tears, as she was very eager to play Sadie in London, but Maugham was quite vehement in objecting her taking up the role. She even followed him from New York to Washington, which only succeeded in irritating him more than anything (Dean, Basil. Seven Ages, London: Hutchinson, 1970, 250–1).

"Rain" – Hypocrisy of the Self-Righteous

The story of "Rain" was simple. A group of people was stuck in Pago-Pago. A ship that was due to take them to Apia was in quarantine because of a case of measles, and there was nothing that they could do but to wait for at least a week. On top of it, there was the incessant rain, dramatizing the oppressiveness from many different fronts, religious, cultural, social.

The white passengers are thrown together in close quarter, in the house of a half-caste trader, because there was no hotel in Pago-Pago.

Peace and harmony, however, are disrupted by another passenger, Miss Thompson, who was from the second-class cabin and naturally not quite up to the Davidsons' (missionaries) and Macphails' (doctors) mark. They are made to tolerate her presence in the same house.

However, the situation becomes unsustainable when they realize that Miss Thompson is a prostitute and she is carrying on her usual business under the same roof. Mr. Davidson sets to work and finally has Miss Thompson in his grip when he finds out her weakness.

Unfortunately, at that point, blackmailing (his usual strategy) no longer suffices, he demands punishment. He calls for blood, only it is his own blood that is drained at the end.

I reread the story to write this post and almost a hundred years after it is still powerful. I don't think the story is obsolete or dated, as some reviews would have it. It is too convenient too to dismiss it with an oversweeping gesture that Maugham's characters are stereotypes.

By dismissing the story because the characters are stereotypes is making it all too simple. In a short story, you can only do so much for the characters. It's more like a misunderstanding of the generic conventions.

This is a cruel story about hypocrisy of the self-righteous.

Maugham attacks it from several angles. And you have to admire how he portrays Mr. Davidson. Even though he is an obnoxious character, you feel sympathy towards him. He believes that it is his duty to convert the natives, to make every one else to adopt his values. He is a tyrant, but he believes it is for the world's good, although it is just about personal power.

We are made to associate with Dr. Macphail, a witness to the unfolding events. He doesn't have the religious fervour and he sees the ridicule of class consciousness, the overt self-righteousness of the Davidsons, and the plight of Miss Thompson.

On the other hand, we are made to see the destructive power of the strong-willed. For different reasons Mrs. Macphail and Miss Thompson have fallen into the influence of the Davidsons, the former because of her class consciousness, just the feeling of being favoured by picky people is enough; the latter from blackmailing, which is how Mr. Davidson gets his way with others.

Nevertheless, the sense of one's powerlessness and impotence is overwhelming. One is witnessing a disaster that is gradually developing in front of one's eyes, but it is impossible to salvage the situation. Dr. Macphail tries, but to no avail. It is just as impossible to stop the rain from falling.

In another way, it is not so straightforward either. It is quite natural for the bystander to feel indignant at Mr. Davidson's mercilessness:

The days passed slowly. The whole household, intent on the wretched, tortured woman downstairs, lived in a state of unnatural excitement. She was like a victim that was being prepared for the savage rites of a bloody idolatry.

Yet, one's sympathy has a bottom for any atrocity:

They all looked forward to the Tuesday when the boat for San Francisco was to arrive from Sydney. The strain was intolerable. So far as Dr. Macphail was concerned, his pity and his resentment were alike extinguished by his desire to be rid of the unfortunate woman. The inevitable must be accepted. He felt he would breathe more freely when the ship had sailed.

My cheeks rouged when I read to here... How quickly does one get tired of others' sufferings?

Ironically, it is not the cowed Miss Thompson who is to be saved. The dream that Maugham made Mr. Davidson dream as foreboding was hilarious:

She herself was white and pale. She told Mrs. Macphail that she had no sleep. When the missionary came upstairs from Miss Thompson he prayed till he was exhausted, but even then he did not sleep for long. After an hour or two he got up and dressed himself, and went for a tramp along the bay. He had strange dreams.

"This morning he told me that he'd been dreaming about the mountains of Nebraska," said Mrs. Davidson.

"That's curious," said Dr. Macphail.

He remembered seeing them from the windows of the train when he crossed America. They were like huge mole-hills, rounded and smooth, and they rose from the plain abruptly. Dr. Macphail remembered how it struck him that they were like a woman's breasts.

From Mrs. Davidson's reaction at the end, one wonders if this is the first slipping of the wrathful missionary.

As for the musical, the reviews I have read are mixed. Here are some highlights:

"Rain" can be read at MMCCL. Its first appearance in The Smart Set is available online too.

                                                                                                 
                                                                                                                                                                    
                                                                                                                ......,'++'`                                       
                                                                                                             `,;;+'';;+;:,..;;+:`                                    
                                                                                                           `;++###'#@#@###+';;'+:.                                   
                                                                                                        `.,''++#####@########+++'+''':`                                 
                                                                                                        ,'+###########+;';;;;;;;+#++''+';:,                              
                                                                                                       .:+#+++###+++'+'+';';:::::;::''#+';'';,                            
                                                                                                      :+@@#@++#+'+++'+'';;;::,,,,:::'+#++::;',`                          
                                                                                                     .+#@+#++#++''+#+#::;:;;;;''+'::+##++';;';.                          
                                                                                                    `+#+##;''';'+''+#++'''+'''+'++#++##@#@#+#++,                         
                                                                                                   '###+;'''';''''++#+'''++'+''++######+##+++#+.                        
                                                                                                  `###@''';;::;'+;++'+'''+#++''';'#+###+####'++',                       
                                                                                                 `;###+';;;:::''''+++##'++#+++##+'+######@##+@#';,`                     
                                                                                                 ;#+##;::,:,:.:'''+##@#+'+'+''+++++#+##@#####++''':`                    
                                                                                                ,+##;;,:...,.,:;++@'+#++'''+''''++###@###@+###+++':.`                   
                                                                                                :+';;,.,..,.,.,;++++#@+++###++++++++##@##+####+++'':,`                  
                                                                                              .;,:,.,.....,,:,'#+#+#+++++++#+'+'+++##@###@@####''';:,                  
                                                                                               ::::,,,,,,,..,;;'+++++##@++++++#+++++#####@##+@++++;';;:                 
                                                                                             `;:,,:,,,.:,..,:;''+######++'+++++'+#+#@######++++++''':'`                
                                                                                            ,,,,,:.,,,.,,.,:'#++########@##+#####+##############++;'':                
                                                                                           `;::,,:,,,,,,.,:;;+++#####+'+++'+''+##+###############+;'+;`               
                                                                                           .:,:,,,,..,,,,,,;''++##@#@####+'+''''++#+######+######++'':,               
                                                                                           ,::;;,:;;:,::.,,:''++##@#@###+@#+'';;:::;########+##++#+;:;,               
                                                                                          `;++;;,:':;,:,.....;';####+#+##+'''++;:;;;#+####+#+####+;;;:'               
                                                                                         .;'#+;;;;':,,,,,,.:''##+##@####'+++';;,,'+#@+@#######+@#+;:'',              
                                                                                         :'++';;:::,.,,,,,.,;;#+##+@+#####+:;;::,;'@########@+#+#++';;:              
                                                                                        `:''';,::;;::,:,,,,,,;''++#;'+'#++++;:;''+'##@############+;+';`             
                                                                                        ,;;';;:,,:;;:,,`....,:;''+#@##+##;,';'+++++###+'+#####+#++##;;',             
                                                                                        ;,:::::::::::;..,,.,:,:;''##@##+++';;+'@+##+######+@####+#+#+'',             
                                                                                        ,.:;';::,;:;:,.....,,,:;:'#++####@;';'+''+@@@##@@#####+###++#+':             
                                                                                        `,.:';;:::,;:,,,,,.....,::'+#+++##+;;;:;;;+++####@########+#+##+;             
                                                                                        :,::;;;:,,.:,:,..,```.,.,;''+++'+++;+;';,.;;+#@####@####+@#####+'             
                                                                                        :.,;::::,,,,::..`.`.```,.:;'+++++'';'';.....,+++###@#@####@###+++             
                                                                                        :,:::;;:,,.,:,...,...`.`:,;++##''++';,.,.,:;..'##@###########+#++             
                                                                                        .;;:'#';;:,.,,,,:....````:;;;'##+#++;;,,,;;'';::+###@######@#++++'             
                                                                                        :::;''';:;:,,:,,:.`.,,`..:.,,:+###+++',;''.:;+;.++@@@######@###+++             
                                                                                         ':';,,;'''::.,,,,,,.,..,,,:,::@@@@###++#++;.:::.+###@@@#########+;             
                                                                                         `;,.,...:';::,,,::,..,:,:.,,:'##+#+#@#'+++'.`.;.+####@#######+++#'             
                                                                                          .;,.`;@#.,;;,,,::,,,...:...::++'+'#@@+#'+#.,,:,+##@@########@+##;             
                                                                                          .',:,+##++@#+':;,,,...,,...,:#+;''++++@#++,..::'++@##+######++++:             
                                                                                           .:,''++++'''+'';:::,...,...,:''::::;,,'##+;..,.;+###@######@@###;             
                                                                                           ,,;:'+'::;;';;;;::::.:,,,,.,::,,,,,,,,.;++,....+'+######+#######;             
                                                                                           .::,:'+;';;;;::,::::,::::,,,;;:,,,,;:,,,:+;....'+##@##++#+#'####'             
                                                                                           ..:;:.';;':;:;;;:::::::;;:,,,,:::,,::;;::;':..,,;'##@#++#+#+#####;             
                                                                                             .,::,::;:;:::'::,;;;::,,,,,;,,;::::,;'+'#++,.,..:;+'#+''+++@##+#'              
                                                                                            :,,:,..;;:::::::;:;:':;:,,.,.,:;;:,::;;;;;';``..,:;;;''''++######+              
                                                                                            .;,;:.,,;';':;'+;'';;;;,,,.`..,:';;,,::;:,:..,.`..,,.,;;++'#####+++              
                                                                                           ,,,::...:';;:;'++';,:::,......,,;;,,,::;:,.......,,,,,;'++#+#+##++':`            
                                                                                         `:.:::.,,::;'';'+;';:,::,.,.,...:::,..,:;,.......`..,:,:'+++++#++++'+;`           
                                                                                          .,,,;;;';:::::::;:;;...,,,.`..,..,....,.;,,,..,...,,..`,:''+'####+++#@,           
                                                                                         .:,,,::;':,::,,.,;::...,,,.....,....,.,,;':..,....,,,,,,,:'+'+####@@@#+`          
                                                                                         .:::;;;::;,,,...,:,,...`:,,,`..........,.,,,...:,,...,.,:,;##+#++++####'          
                                                                                          :;::;':,:'....,..;:,.,.,,.```...`..`,..,..,,....,,,,...,,,,'##+#######++.         
                                                                                          ;''+#@++;',:::,`,,:....,,,`.,....`.``,.';:..,...,,,,....`:.::+#@#'+#####;         
                                                                                          `:'+#@+''+,,,,.....,.,..,..,........`.:';',,,.:,..:,...`....:+#@.+####+##:        
                                                                                            .:##+++:,:,,.`,.,,...`,,,.`..`.,,`,:'';..,:,...,,.`.``..,:;';+#+++#@##';       
                                                                                              ,;;'';,,.,.:`.,,,.;,,,..`.,...;:;'+#,,,,,:.......`.,,,,,:::@+###+@#+;',      
                                                                                             `;::''::.,,:..,,:,'..,,.,.;:'+++''+',,,,,,,,.,,.....,.,,,,++###@#@+#+'':     
                                                                                            :;;';;:,,::.`,,,;,:.,,,:,;;'##+';;;,,,,,::,,,,:,......,,+#####+'#@#++'''`   
                                                                                           `''+;;;,..`,,.:;:;..,...:.`::''':::....,,':,,:,,,,.,,..,+@##+##@#@##+++#+'.  
                                                                                          .#;:,,::,`.`,`.,:,....,;;.`.,;;',;:,..`.,+:,,,,:.`.,.,`;#####+##@@#++++'+';:`
                                                                                           ;'''#:......`,,:,`.,,,:,.`.;;;';:,.,...,':,:,.,.,..`.,#@@+'########++#:;;+#'
                                                                                           .::;',,.........,::;;;;;'+''''';...,..,::,,.,.:,....;@##'#######@++;+'';:+'+
                                                                                           `:':,,,,.,.,,.,,::::;;,:;';'+';:,......,,,,...,,..,:++########+##+++++';'''+
                                                                                            +;,.,,,.,.,.,.,,,:;;::;'#';;;:,,.,,,;:,..,,...,,.:#####++##@#@#++'++#++++++
                                                                                            +,,,,,,,,..,,,.,,::,.,:'++';;:,,,:;';:,,,:,,,,,,,######@##++######+#####+'+
                                                                                           .+,.,,:,,,,,,.,.,,,,.,.,'#+';,:,.,:';,,.:,,,:,..:'#########+#+;+############
                                                                                           ;,,,,:::::,,.`......,::;;'':...,.,,;::,,..,:,..`;+#++#+'+#+###+'###@@#+@+''+
                                                                                          ,;:;;::';;:,,..,..;;,,:::;#+,`..,,,::::,:..,....+#++##++++############+'+';'#
                                                                                         ,.;';::;''';;.....,,:,,,,:;':``....:.::;:,..,...+@'+'++#++'++###+@#@##+''';'+#
                                                                                        ;:.'+;;;+;'++':,,,:,,:,,,,,';:,,.,,,,:,,:,.,.`..'+#+#'++######+#############@#+
                                                                                       :;,:'++';;''+':;;:::,,,:,.:,::,,,,,:,::.,,,.,...'+++'@#++'#######+#@########+##+
                                                                                       ;:,:''+#+;'+';:';:;::::::;,::,.,..::::,,:,.,.,.++###+''#++#################@####
                                                                                       :,,,;++++'+++';;;:;;;'+;';:::,:,.,:;,::,,::.,.+##+@++''##++##+###########+####+#
                                                                                       ,,,,:'++;;+'+'''::;;;;;:';;;:''..:;,:.:,..:,.+#######+##+#++''#######++####++#++
                                                                                       ,,;,''@#+';'+++'':,:,.,;;;:.,:';;;;:.``,.,..#+###@@++++###########@####+###+@##+
                                                                                       ..,,:;+++#;''#+''.`..``.::,,:;#'';;:..,.,`.+@#@@##+#@#+##+###+#######++###@@@@@+
                                                                                      `,:::::;'+''''+:;:,...,,,,+;';++;''':;.,...++#@@#@#@+#++#@+#+###@##########@@@###
                                                                                      :::.:,,;''':';'::::,::,.,:;':;'+;;;';,...,'##@##+##@#@@##+#####@################+
                                                                                     .',,:;.,;;';:';':;;:;;,,,;';;;;,'''';.,..,'####@++#+@@##@#####+#++#####@@#@##+'++#
                                                                                     .',,,,,,,;;;;;';;;;;;::::;;+'++:';;:,,:.,;++##@#+#@#@###++++#+#+###+#####+#@++''++
                                                                                     .+,.:..:,:;;;;;;;+';;:;:,'++++++'',,,,,,;@###+###+#####+#+############+##+#+#++';+
                                                                                     .',,,.,,.,:;;;;+''';;:';:''+#++'''.,,,,,######+@@+@#@@###@#+#@#+@#####+++###+#;'++
                                                                                     :;,..`,,.``,::;;++':;'';@#+'##@'#,.,..,++#++++##@#######+#@######+##+#+##++++#+'+'
                                                                                     ;:,....,..,:::,';';:;++':+'+#'+++.,,,,:#+#+@@##@@#+###@@#########@#+'+#++#++##+'''
                                                                                     ;,..,,...,.:;;::;;:;'+@++'+#+##++..,,.+'#+@'##+@@#@#++@#@@@@###@####++'+#@#+++';;'
                                                                                    .',,,.......::'';''''####+++#++##;..,,;#####+###+###'####++#######@'##'++#+++++++''
                                                                                    .;,,,.`.....,:::;'':+##'''##+#@++;...:##+###+############+#@###+###+#+++#++'+++++++
                                                                                    .'::.`.....,,::,,,,:'+',.+#+'##+#'...'###+##+###+#@@#####+###########+''+#+++#++';+
                                                                                    :+':,,,,,......,..,.,+++###+###+#'.,:#####+####'##++#####+######+###+#++'+++#++#+'+
                                                                                   .'..,..,.............,++#++;+#+#@#+::##@#+##++#''+'###''++#######+'+++';:;++#####+#+
                                                                                 ,+,,..:,,..,......,....,+#+#+####+,#@;.++##@@#####;+'+'+#++###+###+++;+#';+'+#+###@#++
                                                                                 +:,,,:.,.....,,,`,,...`.+##++''##+@##;'+#####@####'##++++;;'##+'++++#+###+;+++######++
                                                                                 ,,::,:,,,....,:'++#@@'++@##+#+@++#########@@#@##+'+';'#+++####+##+##++###++++#+'@@####
                                                                                 ,:,..,,.,:;+#+#+####+###++#+#++####+##+'#@##++##++'++#@#+####+#####+####++#+#+##@###+#
                                                                                .,,,,.'+++#+###+####+#######++++++##@##'+#+###'###+'+;+++#++++++####+######@#+###@@@+#+
                                                                                ,,,:+##@##++##++##+#++#++###+###+###++@#+###+++###+';;;+'+++'++++###########@++##@+###+
                                                                               ,#+#####+@++##@###+#+'+++###+#+#+#+++#+####+##'#####+::';#+#++##++######+++##@#+#####@#+
                                                                              .##@@#@#++###@###+'+#++###+++###++###+:#+++#'#@###+@@';;+;++'###@#++++############@#@##@+
                                                                            `.+@#######@@@#@#++'#'###++##+'++#+##;++:'#+#+#@###+##@+';'''++##@+#++##+@##+##+#+++#@@+##+
                                                                         `,##@@##@#@##@@##+;++#+#+'+#++###++++##++';'##++#++@@+''##+#:+++##+##'++###@###++###+##@@@#@#+
                                                                       .'##@@#@#@##@@#@@#+++#+###+#+##'##++##++'#+++#,@@++#;#++'++##+#'+##+#+###'+######+####++#+#+###+
                                                                       ;#+#+##@@@@+#@#@+#####;++##'+###+#####+++'#+#####+++##+##+########+####++##+#+######+'++###+++##
                                                                       ;#+##+@##@@#@@@#@######+@##+###+#+##++##++#+##+++####+++#########+#+###+#++#+#+##@#+'+#+#+##+++'
                                                                       ,#+###@@####'##'+##+'+##+####@@##+#+##+#+'#+##++#+###@@#######@@##+######+++++##++++++++#+##++++
                                                                       `+###'#@#@#@@+##+++@#++##++###++#####+#+####+#++####@@####@#+####+#+#@@#+#+####+#+##++'#'+''+#+#
                                                                        +##@#####@@@##+##+#@##++++#+###++#++#+#+#########+#@####@@#@+@##+@+#@#++#+#@@@#+#####+++++###++
                                                                        ,#####@@@#####@###@@#++#####+'###+##+#++##+##+#++###@@###@####@##+++#++#'#+###@+#####@'++#####+
                                                                        `#@@#@@@@@@##+#+###+#++#+####+##++'+++##+#+#@+'++#####+:##+@###++#++#+#+#++#+#@@#######++######
                                                                         +##+##@@#####@#####+#++#####+#+'+#+++#++##+###++####;+###+#+#+++#', # +++ + '#####+#++#+#+#++#
                                                                         '#@##@#@#+##@#+#+#########@####++##+###+++++'#+'#+#+'#####+###++##  +`#++.#  ++'++#'###++#+##+
                                                                         ;###@#@@##@#@#########++######+##+#+##+#++'+#+++##+#########+';++`  ####++#  #+'+++++++#+++++#
                                                                         +###@@#####@##@####@####+#####++#+###+##+++@#'+##@'#####+###+#+++`  #@+++'#  ##+####+##+#++###
                                                                         '#####@@#@@#####+#+#@'#+#######+##+###+++##+@#+#++',+########+++#'  ++. ###  @#@###@'##+#++##+
                                                                         '@###@#@@@'###+#+####+++#+##@##+#######+'+##;####@##+'+#;#@####'#+` ';;##++ ##+##+#+##+@+#####
                                                                         ;######@@@##+#+#+'+##+#+##+####++#@+##++#++#+##+##@+'++++#+#####+#+;,+'++++###+###+##+########
                                                                         '+#####@#####################@+##+#++#'+#+##+###+@@#+#'#++###++#'#++##++##++##++#########+++++
                                                                         '###+#@###@######+#'####+##@##++##+####+#+#+#########+#+######+#++ ' # :  . #######++#+#####+#
                                                                         :#++@#@@#@@#######+++##+++#+#########+###+#+#+###+#+##+++##@##++'+.#.#.#.:+.#######++######+##
                                                                         :#+#@#@@#######+####+####+###+++#######++##+###@##+##+####+@##   `##+###++#++    ####+#@#####+
                                                                         ;######@@#@###@####@#+#+###+#+#+#+++++;+##+;##@##+'';+##+'#@#@@##+##+##+#+##+###+####@###+#++#
                                                                         '###@####@@##@#@++####+######++++++@#'#########+##'+#'++#+#@##+###@###+#+#+#+#####+##+###+####
                                                                         '###@@#@##@@##@#+#++++####+#'++'####++##+##''+#++++###++##@#@#+#@#@#+++#+#########+#####+'++++
                                                                         :##+@@#####+#+'++####+####++++#+##+'+##++#+#++#;++#++###@#####@#+#@##@########@@+###++#+###+#+
                                                                         ,###+##@@@####+'+##++#+++##+'+#+'+'';+##+++#+'++@';##+++###+@###+#+##+##+#######+###+++#######
                                                                         .#@##@###+@@##@++##+#++++###+##'+#:++++'+##+#+++#@###+##'#@##+#@@@@@##++############++###@####
                                                                          '####@@#####+###+#++##+######+++#++#+'++#+###'++#+++######+###@@+#@+##############@######@###
                                                                      `   '#++############+'+#####+###++####++++';'+#+''+++#'@#++#+######'#+#####+####+##@###@########+
                                                                      ,` `#@#####@#+#+++##+++#######+#+#@##++'#'#::##+++++++##++#+#@##########+####@++#####@######@#+##
                                                                      ,,,;+###@#######'+++#++#######+++#++#'#+##+.+##@++##+'#+#++###'###++##++####+#######'############
'#+#'#+#+#'#+########'#####'#+#+@#####+#'#'#+######@##@+@+@+@#@###+@+@+@#@#@@#@+@+@#@#@#@#@@#####@+@#@+##@#@#@@#@@#+@#@@@@##'#+@#@@+@#@#@#@@@@#@#@#@@@@@@@@#@#@#@@@@@@@
@#@+@#@#@'@#@@#@#@@#'###+#+###+#######@+#+#'##@#@###@#,@+@#######+#+@+@@@#@##@#@#@@@@@#@@#@#@#@#@#@+@#@#@#@@@@#@#@+@@@@#@#@#@#@#@#+@#@#@@@##@###@#@@##@@#@#@#@##@#@@@#@
'@+#'#+#+##@#@###+#;#+@##+#+@###@@@@+@+#+@+@#@#@#@@@@#@;@#@#@@#@#@+##@@#@#@+@#@@@@#@#@#@#@+@+@##+@#@#@#@@@@###@+@#@@@@#@+@+@#@@@@+##@###@@#@#@#@@@@#@@@#@#@@@@@@@@@@@@@
#+##@+@+@#@#@#@@@@@##@#@#@#@#@#@#@@@@#@#@#@#@#@@@@@@@@#@#@@@@@@#@#@#@@@@#@+@#@@@@#@#@#@#@#@#@#@#@#@#@@@@#@#@#@#@@@#@@#@#@#@#@@@@@@#@@@@@@#@#@#@@@@@@@@@@@@#@@@@@@#@@@@@
##+#;@+@+#'@#@#@#@@###@@@@@+@#@+@@@@#@+@#@#@#@#@@@@#@+@+@#@#@@+@#@#@#@@+@+@+@@@@+@+@#+;++@+@#@#@#@#@@@#@@+@#@+@#@@@@#@+@#@#@@@@@@#@@@@###@+##@@#@#@#@#@@@#@@#@#@#@#@#@@
#+#+@+#+@'@+@+@@@#@@@@####+@##+#@###@#@+@#@#@#@@@@#@+@+@#@##@#@#@+@#@@#@#@+@#@#@@#@##.,,#+@+@+@+@#@#@#@@#@#@+@+##@@@@#@+@#@#@@###@#@@#@#@#@#@#@@+@#@@@#@@@@@@@@#@#@#@@@
'@+#'@+#+#+##@#+@#@'#+##@##+@+#+##+#'###'#+##@###+#+#:@+@#@#@#+#'#+@#@#+@##+@#@@#@#@+;,,'#+@#@;@#@#@#@@@@#@+@+##@#@@+@+@###@@###@#@@###@+##@#@@###@#@@#@@#@##@#@#@@@@@@
@+#+#'@+#+#+@###@@###@#@###@##+@###+@#@+#+@+@##@#@##+@+@#@@@@##+@#@#@@###@+@#@@#@#@#,,,,++@+@#@+##@@@#@@#@#@+@+@@###@+@#@#@@#@#@+@@@@#@#@#@#@#@@#@#@@@#@@@@#@#@@@@@@@@@
+#+#'@+@+@+@#@@+@#@##+@###@#@#@#@@@#+@#@#@#@##@+@+##@'@#@#@#@@+#+@#@#@##@#@#@@@@+@#@',::;#+@#@#@#@#@#@@#@+@#@#@#@#@@+@#@#@@@@#@#@#@@@@@@#@#@#@@@@#@#@@@@@@@##@@@#@@@@@@
#+#+#####+####'#+#+#+#+#+#+@###@###'##@###@#@@#@#@#@+@#@#@@#@#@#@#@@@@#@#@#@@@@@@#@@:,:,'#@#@#@#@@@@@##@+@+@#@#@@@@#@#@#@#@@#@+@#@#@@#@##+@@@@@@+@#@@@@@@@@#@#@@@@@@@@@
####+##+#####'#'@+#'#;#'#+######+#+#+##########+@'@+#'@@@###+#+@#@###+@+@#@@@@#@+@#@,:,:'@#@#@@@@@@@@#@#@#@@@#@#@@#@#@#@@@@#@+@#@@@@#@#@#@@@@@@#@@@#@@@@#@##@@#@@@@@@@@
@###@#+#'#@###;###+@+@+@+@+@#####+@+@@#@###@+@#@+@+@#@@@@@@+#+##@@##+@+@##,,:##+#+@#:,:,+#@@#@@@@';:##+##@#@#@#@@@@#@#@#@@#@#@#@#@@+@###@@@@#@#@#@@@@@@#@#@#@@@@@@@@@@@
#@@@##@#@@@#@+@#@#@+@#@#@#@##@#@#@+@##@#@+##@#@#@#@#@#@@@@#@+@#@@@@#@#@#@.,.:.'#+@@@,:,;'@@@@#@':;:;;#@#@#@@@@@@#@@@#@@@@#@+@#@#@#@#+@#@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@
+#+###+#'@#@+#+@#@#@+@###@###'#'#'@#@#+#+###+#'@#@#@##@@@##+##@#+#+@#@+@@',:,,..;#@@:,;:##@@#;;,::;.'#+@#@#@@#@###@+@@@@#@#@#@@@@#@#@@#@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@
#+#+#'#+##@.#+@#+###########+#+#+#+##+#+#+#'#+#+###@##+#+@'##@###+@+@+####;,,,,,.;'#,;,;;#@':,::::`:#+@#@##@####+@+#@@@##+@#@@@##@###@@@@#@#@#@@@@#@#@#@@@#@@#@#@#@@@@@
'#+@+@'#'###+##@###@#@@###@#@+@#@#@#@@+@+##@#@+@@@##@+@+@+@##@+#+@#@#@@####';,,,,,;';:::+#:::;,,`,'#+####+#'#+#+@+#+##+#+@#@#@#+#+@#@@@@#@+@#@@@##@###@#@@@@#@##@@@@@@@
@+@##'@+@##+@+@###@#@@#@#@##+@#@#@@@@#@###@#@#@@@##@+@#@+@#@##@+#+@#@#@@@@+@+#,:,::+:::,#,:,;..:#+@#@@@@#@+@+@+#+@##@##+@#@#@@#@#@#@@@@@##@#@@@@###@#@@@@@@@#@@@@@@@@@@
+#+#+#'#+#'#+###+'#+#+###'+'++######+#+#+##@+####+#+@+@+@#@##@+@+@#@@####+@#@#@':,:';,,:+;,:.;+@####@##+#+#+@###@#####+@@@@#@#@#@#@@@@###@#@@@@@##@#@#@#@@@@#@#@#@@@@@@
@#@#@+@#@+@#@##@'##@##'#+#+######@#+#;@+########+#'#'#+@+@###'#+##@#####+@#@##@##::':,:,',:,+@##@@@@+@+#+@+@#@#@@##@#+##@@#@##'@#@#@@#@+#+@#@@##+#+####@@##@##@#@@@@@@@
+##@+#+@#@+@#####+@#@+@+#+#+##@@###@+@#@#@##@+##@+@+#+@#@##@+##@@#@##+@###@@##@@##+#,,::',;###@#@###@##+@###@#@@@@@@+##@@@@@@#@#@@@@@@#@#@#@@@@#@@@@@@@@@@#@#@@@@@@@@@@
##@#@+@#@#@#@@#@+##@##+#+##@#@##@###@+@#@####@#@+@#@+@#@#@@+@+@#@@#@+@#@+@#@@@@#@#+',,::#,;#@##@@@@@#@+@+@#@@@@@@#####@#@@#@#@#@@@@@##@#@#@@@##@#@#@#@#@#@@##@@#@@@@@@@
##+#+#####+@#+#+#+#+#+#'#'#+##+#'#'#;+#####+#'#:#+@+###@@@##+@#@#+###+@#@@@##@#@+:.'.;,;;;,;##@#@###@#@#@@@@@@@@#####@@#@#@###@#@@#@#@##@@@@#####@@@@@###@###@@@@@@#@@@
@#@#@+#########@+#'#'#;#+####@#+@+#+@+@@@@#@#@#@+@+@#@@@@@@#@@@@@@#@#@#@#@@#@#@#:,:,::;:#,;:;#+####@#@#@#@#@@@@@@+###@@@#@#@#@#@@@@@##@#@@@@###@#@@@@@##@##+@@@@@@@@@@@
#@#@#@######@+#+@+@#@+######@###+#'#+#+'''''';';'''''+++#@#@#@@@#+@#@#@#@@@@#@#,,,,:.::'#::;::'#@+@##+##@@#@#@#@#@###@@#@;@#@+'''''';''''''+@#@###@@@###'''''@@@@@@#@@@
+###+#+#+#+#'#+#####+######+#+#'#;'''';';';''';'''''''''''';+##########@#@##@#.,,.,;::::+';:;,.++#+@+##@@@#@@###@#@+@#@###'''''''''''''''''''''#@@@#@#@'''+''@@@#@##@@@
@######+@+@+@+@+##@#@#@#@##@#+''''''''''';''';';'''''''''''''':'#+@#@#@@@@#@#,,,,.#@,;:;'##;::::'#####@@@@@@#@#@#@@##@@#'''''''''''''''''''''''''+@#@#''''+++@@@#@#@@@@
#@@#####+##@#@#@#@#@#@#@@###';';';'''';';''''';'''''''''''''':;,;'#@#@@@@#@',,.,,+#@::;;####;:,::'#@#@@@@@#@@@;+##@#@@'''''''''''''''''''''''''''''+@'''''+'+#@@@@@@@@@
#########+#+#+@+@#@#@#@#@#'''';';'''''';';''''';'''''''';''';::,,:''####+@;,,,,,#@##,:::#####:;::;'@@@@####@@,,:###@#''''''''''''''''+++'''''''++''''''''++'+#@#@@@@@@@
##+##@+#+@##+@##########'''''''''''''';'''''''''''''''''''''':,,,,:''@@@@',.,.:#@@#@,,:;###@#@;;:::'@#@#@#@#:,:;:+#'''''''''''''''##@@@@@@+''+''''''''''''+'@#@@@@@@@@@
##+#@+####@'@#@#@##@@@+'''''''''''''''''''''''''''''''''''''';:,:,::''#@+,.,.:#@@###,,,;@#@#@##:':;;;@#@#@+,,::,,@'''''''''''''''##@@@@@##@#++'+'''''''''''@@#@@@@@@@@@
##+@####+###@#@@@####'';''''''''''+''''''''''''''''''''''##'''';,:::,'';,,,.;#@@#@#@,,,;#@#@#@@@'':;:+@#@;,,;:.'#+'''''''''''''+#@@@@@@@@@@#@#''''''''''''##@#@@@@@@@@@
#+#############@##'#'''';''''''####+#;'''''''''''''''''@@@@@@+''',,,::;,:..:#@@@@@#@,,.'@@@#@###@:;:::##,,,,,:#@+'''''''''''''+#@@#@@@#@@@##@@+''''''''+''#@#@@@@@@@@@@
#@#@@@#@#@@@@@#@@#+'''''''''''@@####+@'''''''''''''''''#@@@@#@+''':;:::::,:#@#@@#@#@::,;#@@@#####@;:,;::,,:,##@'''''''''''''''##@#@@@@@@#@@@@@@''''''''''+#@@@@@@@#@#@@
@@@##@@@@@##@#####'''''''''''######+##''''''''''''''''@#@@@@@#@'''':::,,,:'@@@@@@#@@:,:;@@@@#####@#:,:;:,:,+#@'''''''''''''''@#@@@@@@@@##@@@@#@#'''''''+'#@@#@@@@#@#@@@
#@#@#@@#####@##+#''''''''''''@##+#+##@''''''''''''''''@#@@@####@''''::,,:'''@@#@#@@@::,.#########@@@.,,,:'@@#+''''''''''''''+@@@@@@@@#@@@@@@@###'''''''''#@@@@@@@@#@@@@
##@@+#+##@##+#+#''''''''''''###'###+@#''''''''''''''''@@@#####@@@''::,,,''''+@##@@@#',;,##@#@#@@@@@@@,,,:'#@''''''''''''''''##@@@@@@#@#@@@@@@#@@#'+'+''''@@@@@@@@@@@@@@
##@@###@#######+''''''''''''@########@''''''''''''''''@@@#@##@@@@':::,,;'''''#@@@@@@.:.:+#@@#@@@@##@@+,:::#+''''''''''''''''#@##@##+##@#@@#@#####''''''''#@@@@#@###@@@@
@#@####@######+''''''''''''##@###@@###''''''''''''''''#@##+##@@@@',,,,''''''''@@@@@#,,::##@#@#@@#@@@#@':,:,''''''''''''''''+@@@@#@#@#@@@@#@#@+@@@#'+'''''@@#@#@#@#@@@@@
@#@####@#####@'''''''''''''#@###@@@@#@''''''''''''''''@@@##@@@#@@,,,:'''''''''@@@@@@.,,:##@###@###@@@#@;:.,:'''''''''';''''@@@@#@#@#@@@@#@#@#@@@@#'''''''@@@@@#@@@@@@@@
######@##@#@#@'''''''''''''@####@#@#@#''''''''''''''''####@@@#@#,.:,;'''''''''@@@#@#:,:,#@@@@@#@#@@@#@#@,:,:;''''''''''''''@@@#@#@#@#@@#@#@#@@@@#@'+'+'''@@#@#@#@@@@@@@
@##@#@@@@#@##'''''''''''''+@#####@@@@#+'''''''''''''''#@@@#@#@#'.:,:'''''''''''##@@@:,:;##@#@###@+@#@#@##,,,:''''''''''''''#@+@+@#@#@@#@#@#@#@@#@#'''''''##@#@###@#@@@@
#@###@####+#''''';';'''''''+@+@#@#@@@@'''''''''''''''+@#@@@#@##,',,';'''''''''''@#@@:,,'+#+@+#+@#@#@#@+@#'::::';';''''''''#@###@###@@#@+@+@@@##@#@'+'''''#####@#@#@@@@@
#@@@#@##@#@#';''''''''''''@#+##@+@#@#@'''''''''''''''#@@@@#@#@+',,;;'''''''''''''@@@:,,;#+@#@+@#@#@#@#@@@#::::;';'''''''';#+#'#+@##@##+#####@#@#@#'''''''++@@#@@@@@#@@@
###+########'':''''''';'''+######;#'##''''''''''':,';@#@#@@#@+##,;'';''''''''''''#@@;,:'+###+@#@#@#@#@#@@'':,:,'''''''''''@@#@#@@@@#@#@#@#@@#@#@@@'''++''#@#@@@@@@#@#@@
#@#@+@#####'''''''''''''';+#@##@##+@+@''''''''''',,,:+@@@@#@+,+#.#''';'''''''''''@@@,;,'#+@+#+@+@#@+@#@#@'';::::;''''''''':;#+@##@#@#@+@@@@#@#@@@@#''+'''@@@@@@#@#@#@@@
#@@+##@##@#''';'''''''''''#@@###@+@+@#'''''';';',,,,,.'##@@+..:`+#;';'''''''';''''@@;,,+'#+@+@+##@+#+@+##'''::,,;;'''''';:.,'##@@#@#@+@@@@#@#@#@@@@'+'+'+#@@#@#@+@#@#@@
@##@+@#+@+@;''''''''''''''@####@+@#@#@+'';';''''',,,:.;,+#+:.,.:++'''''''''';';'''@#..,;#+@+@+@#@#@#@#@#+''';:,:.''''':::,:,;'@##@+@'##@@##+@+#@#@#''';''+@+######@#@@@
+##+@#+#+#;''';'''''''''''+###@##+@#@@'''';';';''';:,:,;.:@...,###;';'''''''';';''@@,,,''#+###+##@#@+##@'''''::,,:'':,,,,,.,'###@#@+#+@@#@#@#@#@@@#'''''''@@###@#@#@#@@
@+###+#'#+''';'''''''''''''#'#+#'####@''';';';';'''';,',;,,,.:+'@'';'''''''';'''''##::,;#+@##+#@@@@#@@@@'''''',,,:;:::,:,.##@@@@#@+@#@@@@#@#@@@@@@+''+'+'+@#@#@@@@@@@@@
+@+###'#+@''''''''''''''''##@+@+@+@#@#+';';';''''''''+';.;,.:,##+#;'''''''';''''''+#:,.;'#+#+##@########''''';;,,,:,::,,:+#@#@@##+#+@#@##@+@#@@@@#+'''+'++@@#@#@@@#@@#@
@+@+#'@+@+';'''''''''''''''####@+##@#@#'';'''''''''''+#@,:,,.##+@+'''''''''''''''''#,.'+#+@###@@+@+#@@#+'''';'':,:,:,,';'+@@####'@#@#@@+#+##@@##+#+''''''+##@@#@###@+@#
+#'#+#+#++;''''''''''''''''####+#+@+@##''';''''''''''#@#+:,`,##@+''''''''''''''''''@.,:+##@@#@@@@#@@@#@'';''''';:,:,;';''@@#@#@+####@@#@#@#@@@@+##@'++++'@#@@@@@@#@#@#@
@#@#@+@+@''''''''''''''''''##@#@+@#@@@+'';'''''''''''@+@,,..'+#+@''''''';''''''''''#,,:'@####@@@+@#@#@#'''''''''::,,;''''@##+#+@#@#@@#@#@#@@@@#@#@##+++'@#@#@@@@@@#@+@@
:+;#'#:+'':'''''''';''';''';+'#'@+#+##;';';'''''''''';@'.,..##+#+'''''';';'''''';''@.;.'+#####@#@+@##+''''''''''':,,:';''+#+#+@#@@#@##+@#@@@@##+##@#@#@@+@#@@@@#@####+#
@+#+##@+@''''''''';';';';'''+@#@+@####+;';'''''''''';'#:..`++'#+#''''''';';'''''';'#,.,'##@@+@+##@#@+''''''''''''::,:;'''@+@#@#@#@@#@+@#@@@@#@#@@@@@@@@#@@@#@@@@@@@@#@@
##+@'###+'''''''';';''';''';#+@#@#@##@+'''''''''''''''@`...#@#+@+'''''''';';'''';''#,:.++@###+@+@#@#@'''';''''''';:,,;'''#@+@+@#@#+@#@#@#@@+@#@#@@#+@@@##@@#@#@#@#@#@#@
@+@+#'@+@''''''''';';';';';';####@###++;'''''''''';''';:..+@#+#+@''''''''';''''''''#,.:+@@#@#@#@#@#@+'''''''''';'',,,:'''@+@+@#@##@+@###@@#++@++@@@+@+@+++++#@#@#@###@@
##+@'@#@#'''''''';';';';';';'+#+@###+#''''''';''';';'':.,.####'@+'''''';';';'''';';#.:.#'@###+#+@+@#@+''';'''''''':,,:;'''@+@+@#@@###@#@@@@+@+#+##@++##+++@+@#@#@#@##@@
@##+@+@#@''''''''';';';';';';++##@####';'''''''''';'''.:.++##+#+'''''';';'''';';''++:,:'#@+##@+@#@+@+@''''''''';''',,,:'''#@#@@#@+@+@#@@#@+++#@+@#+++#@+@#@+++#@@@@###@
##+@+@###'''''''';';';';';';''####+#+#''''''';''';';',:.,'##+@+@+'''''';';'''';'''##,:,+###+#+#+@#@#@@''''''''''''':,::'''@@@@#@+@#@#@@@@#@#@@@@@@#@'+'@#@@@@#@@@#@#@@@
####@#@##+;''''';''''''''''''#####@+##''''''''''''''':,:;####+@#@''''';'''''';';''@#:.,'##+@#@#@@@#@#@+''''''''''''':,:;'+@#@#@+@#@@@@#@#@#@@@@#@##'''+'@@@@#@@@@@@@@#@
###@#@###+''''''';'''''''''''@#@+#+##@'''''''''''''';:,,###@#@#@@'''''''''''''''''@+,:,+@#@#@#@@@@##@@'''''''''''''',:,,''@@#@#@@@@@@@@@@@@@@@@@@@++'''+@@@@@@@@@@@#@#@
####@#####;';'''''''''''''';++##@+@###'''''''''''''',:,.#+#+@###+';'''''''''''''''#+;,,++@+@@#@#@+@#@##''''''''''''':,,:''##@###@@###@#@#@@#@#@#@@'''''++##@#@@@@#####@
###@#@#@##''''''''''''''''''##+@#@#@##'''::;'''''''':,,;+####@###'''''''''''''''''@+::,+@#@#@@#@#@#@#@@'''''''''''''',:,''#@@@@@@@##@#@@@@@@#@#@#@+''+++###@@@@#@@#@#@@
#####+####''''''''''''''''''#+#+@+@###;'',,,,:;'''':::;;#;####+#;'''''''';';'''';###::.+#+@+##@#@#@##@@'''''''''''''':,:,'@@@@#';,,'#@@@@@@#@@@@@@'''''++@#@#@##@####@@
##@#+####+#'''';''''''''''''+#+#+#+@##'';::,,,,,:;',;:,####@#@@#'''''''''''''''''#@'::;##@#@@@@#@#@#@#@'''''''''''''':::,'##':,,,,,,+#@@@####@@@@@+''+''#@@@##@#@@#@@@@
#@#@@####@#'''''''''''''''''+'#+##@###;';::,,,,,,::::::'#;+#+@##,:::::,::+#;::::::#+::;';',:'';''+''++';;;;;''''''''''::,:.,:::,::,,+#@@@@@@#@@@@@''''''@@@@#@@@#@#@@@@
##@##@#####''''''''''''''''''####@@@##''''';;,,,:::,:,+@###@#@@#,:;:::::#,'#:++:,'#,+'#+''+#'+:';###:,:;::::'''''''''',:::,::;::,`.'+@@@@@@##@#@@#'+'+++@@@@@##@@#@@@@@
#@+#+#+#+###''''''';''''''''+#@#@#+#+#'''''''''':::;::+###@#+@##,::::::,#,+#,'+:,##,+'+:;;##';,';###:,::;:::;''''''''':,::,,:.`'+#####@@@@@##@#@##'++'+'@@@@@@@@@##@@@@
@#@#@###@@@@'''''''''''''''''@@@#@@#@#'''''''''''':,::+@#@@@@#@#,,:,::,,':##,+#:''#,:++;++#++;,++###:::;::::''''''''''',:,:'##@@###@@@@@@@@##@@@@+'++'''#@@@@@@@@##@@@@
##@#@#####@@''''''''''''''''@#@@#@####'''''''''''':::;###@@@@###''''''''''''++''#+@';:;####+'+'''';;:.,,.,,.''''''''''':,::#@@####@@@@@@@##@@@@@@'''''''@@@@@@#@@@#@@@@
#@@@@####@@##''''''''''''''''@@@@@#@##'''''''''''':,:'#@@#@@@###'''''''''''''''+#@@+,:'#@##+@#@#@#@#@#@@#''''';''''''''.:,:+@@#@#@@@@@@@@#@@#@#@#+'+''''##@#@###@##++@@
@@@#@#@@@@#@#''''''''''''''''@@@@#####''''''''''';:::''@#@@@#@#@'''''''''''''''###@'::;+#@###@#@#@@@@@@@@'''''''''''''',,,:#@@@#@#@@@@@@@@#@@@@@@'''+'+'#@@@#@#@#@###@@
##@@@@####@##'''''''''''''''+##@@####@'''''''''''::,:;'@##@@#@##'''''''''''''''@#@@':;'+##@#@#@#@@@@#@#@#'''''''''''''';:,:+#@#@#@@@@@@#@##@@@@@'''+''''@#@#@#@@@##+@@@
###@@#@@@@#@#+''''''''''''''##@#@+####''''''''''':,:;''####@####'''''''''''''''###@':::+##+##@#@@@@@#@@###'''''''''''''',::+@#@+@#@@@@#@#@###@@#+'''+'+'@@#@#@#@###+@@@
##@#@##@@#@#@#''''''''''''''#@#@###@@#''''''''''',:,;''##@@@###@'''''''''''''''@#@@+:::'##@#@@@@@@#@#@#@#@'''''''''''''':,:;#@#@#@@@@#@#@@##@@#@'+'''+'+@@@#@#@#@#@@@@@
##+#+###+#+###''''''''''''''@####+##@#''''''''''':,:;''+###+##@#'''';'''''''';##@@@;;:,+'@+@#@@########+@+#''''''''''''',:::##@+@@@@@@#@#@#@@#@+''+'+'''@@#@#@#@#@@#@@@
@#@+@##+#+@#@+''''''''''''''+@+@#@#@#+'''''''''';:::'''###+#+###''''';'''''';'#@#@@':,:'##@@@######@+@#@+@+'''''''''''''::::+##@#@@#@#@+##@@@#+#'''+++'+@#@#@#@@@@@@@@@
'#+#+';#'#+##@''''''';''';''@+#+#+@#@''''''''''',:,:''';#+@+@#@#'';';';''''''''#@@#,:,,#+#+@@@@@##@#@#@+@+##+''''''';'''::::'+@+@@#@#@#@#@#@@+@'''''++++#@#@@@@@@@@@@@@
@+@'';';#+@##@+''';';';';';@+@###@@##''''''''''':::;;';'+#+####++;'''''''';'''#@##@,:.:;####+#+#+@+#+###+#+@#'''''';''''':::'#+##@@#@#@#@@@@+@#''''++'+'@#@#@@#@#@#@@@@
+#'''';''######'';';''''';'+@#@#@##@+''''''''''':::'''''#+@#@##@+'''''''''''''@@@@#;,,,##@#@@@@#@+@+@###@#@@@'''''''''''';:,;+@+@@#@###@@@@#@#+'+'++'+'++@@@@@@#@+##@@@
@#'''''''+@@#@#''''''''';'+@#@#@###+'''''''''''':::';';''####'#'@''''''''';'''###+@,,,:+####+#+#+##@+@####@###'''''''''+'::,;@#@@@@#@#@@@@#@+@'+'++'+'''+@@@#@#@#@#@@@@
#@'''''''####+#'''';';';''@#@#@#@#''''''''''';';,,:;''''''@@#@#@#'''''''''''''#@@@#:.,,##@@+@#@#@+@#@@@#@@#@##''''''''''',:,;'@#@@+@#@##@#@+@'''''++'+'+'@@@@#@#@+@@@@@
@@'''''''@#@+@'';';'''''''@@@#@#''';',,:;;'';'';:,,''''''''+#+#+@+''';;;;;;':;'+#'+':.;+####+#+#+@####+######+#'''''''''':,,:'#@@#@@@@@@#@+#''''+'''''+'+@@@#@#@#@#@@@@
#@'''''''@@#@+''''';'''''#+###''''''':;;:;,:#,,,:,:;''''''''+#+@#@''',:,,,,,'::,#,#+.+:':';,'.+;:.:,;,;##@#@+@+@''''''''',:,;;'+#++#++'####'+''''''''+'+'@@#@#@@@#@@#@@
@@'''''''#+##''''''''''''@#@''''''''',,;+:;,+:,:,,:'''''''''';@+@@#'',,,,,::#:,,,.#+:;;':';,:'##,:::::'+#+@'@+@#@'''''''',,::::::,:;;::+''''''''''+'+'+'+@###@@@####@+@
#@#'''''''++''''''''''''###'''''''''',,':;:;,,:,:,:''''''''';';'###+',,,,,:,+:;:::##:;,':''.;;##;,;::,+#+@+#+#+@@@''''''':::::::::,::::;''+''+'''+#''+'++#@#@#@@@@@@#@@
@##''''''''''';''';''''##@@'''''''''''''''''':::,,;'''''''''''''+@##+;:';';;;';';::,:,'':+,;:',::;:;:,;##+@+##@##@#'''''';:::::::,::::.;;''''''''##+''''''###@@@@@@##@@
#@##''''''''''''''''''####+'''''''''''''''''''',,,;'''''''''''''+@##@+''''''''''''':,::'###+##@#@######@+@+@#@#@@@#@#'''+;:::,:,,,:::::;'''+'++@#@#@+++++'@#@@@@@@@##@@
@#@##''''''''';''''''@@@#@+''''''''++'@@#@##'+':,::'''''''';';''#@+@+#;'''''''''''':;:.+#@#@#+#####+#+#'#+@#@#@@######'''',::;'''''';';'''''+'##@#@#++'+''#@@@@#@##+@@@
#@#@@#+'''';';';';'+###@@#+';';';#+@#@@#@#@+@+@.:.+++''';';';''+@+#'@+#+#+;';';'''':,:,+@#@##@#@##+@+@#@+@#@@####+@+#+@##',::;;';'';';';';'++@+#+#+@''''';+#@@#@##+#@@@
@####++++';';';''++++#@####;';';+++++++#+#+#'#+,,;'++'+++'';++++'@+###+++++'+'+++++:,,:@#####+@+@+@+#+@+@###@##@+#+#+#'##+,:::;;';'';';++####+#+@#@#+''';''@@@@@@###@@@
####+'+'+'+'+'+++'#++++#@@++;;;++++++++'+++'++#.,,++++++'+++'#++#'@'@+++++'+'+'#++#::,:+@#@@@@+@#@+@+@#@+@@#@@@+@+@+#+##++:,,''#+#++#+++#+#+'+'##@@@#'';';'+@@#@+#+#@#@
@@#+++++++'+++++'+'+++++###++'#'+'++#++++#+#'##,.:;+++++#'+'#++++#+#+++++++++++++++:,,,#@##@@#@#@#@#@+@#@#@##@#@#@+#+####+:,:'#+#+##+#+#+##+#+#+#@@##''''''+@@@#@#@@@@@
#@#++'+'+##'#'+'+'+++++++##+'++#++'#+++'+'++#+#,:,;'++++'#'++++;#+#+++++'+;++#+++'#.:.,+###@+#+@+#+@+@+###@#@#@+@+#+#+++++:,,''#+##+#++###+#'#+######+''''''+@@+'';#@#@
##+++#+++@+@+#'#'+'#++#++##+#'#+#+++#+++'+'++##,,::++++'#'+'##+#'@'#++#'++#+####+@#:,::###@#@+@#@#@#@#@@@@#@+@+@+#+++#++#+:.:'#####@+@@@@##+#+#+######;''+'++++'''''@@@
#++++'#'++#+@+#'+'#++++++++#'#+#+#+#+++'+++'#+#++;;++++#'#+#+@#+@++'##++++'#+#+#@#@.:.,##@#@#@+@#@+@#@@#@#@#@#++#+#+#+##'+:,.++@@@@#@#@@@@##+#+####+#+#'''+'++++'+'++@@
+#+++#'+'#+#+#+#'+'#+#++++#+#+@##+#+#+++'#'++#+#+#++++++#+#+@###+#'+#'+'+'++####+@#:.,:@##@#@+@#@+@#@#@#@@#@#@##+###+##+#++;'+@@@@#@#@@@@@@#######+#+#+'''''';';''''+#+
@+#+#'+'#+@+###+#+#+#++++++#+###+###+++++'+'++#+++++'+'+'+;#+##;#;+'++'+'+:++#+@#+@`:,:+'#'#'''@+#+##@####@+@++'++#+#+#+'#'#+##@@##+@#@#@@#@+######+#+#+'+++'+'+'+'+##@
+#'+'+'+'#+@+@##++'#+++'++#+###+##@##++#'#+#+#+#+#+#+##++#@+@###+#+##+#'#+#+##@@#@+:,::##+@+@'@#@#@#######+#'#'#+####++'++#+##@@##+@#@@@@+##@@####'++++##'';''+'''+'##+
@+#+#'#+#+@#@##+#+#++#+#+#+##@#####+#'+'#+#+#++#++++'+++'#+##@#+#+#++#'#+#+####@@#@`:.:++#+@+@#@#@##@##+##@+@'#+####+#+#'#+##@@@@+@#@@@@@@+@#@###+#+#+###@'+'+'+''+#@#@
+###+#+##@#@#@#+#+#+#+++#+#+@###@@##+#'#+#+####+#+#+#'+'@#####+#+#++#+#+#+##+#+@+@#:,,:'#+@##+@@##@#######+#+#'####+#+#'#+#+#@#@+@+@##@###@#@@@#+#+#+###@##'''+'+'+#+@@
############+#'+'+++'++++#+########+#'#'#+##+#+#+#+#'#+######+#.####+#+###+##'#+@+@.;,:#'###+@##@###@+##@+#+#'++##+#'#'#'#+####+@+####+#+###@###+++++####@+###'++##+#@@
#@#@#@@#@#@#@##+#+#+#+#########@#@#@##+######+#+#+#+#+###@+#'@'##+#+#+#+++##'++@+@#;:::'#+@#@####@#@#@#@#@##+#+####+#+#+#####@#@#@#@@#@#@#@@@@#@+######+@#@#@@@@#####@@
@##@@#+@+#@@'#'#++'++##++#++#+#+#+#;#+#+#+##+#'#+#+#+#+@#'#+#+#+##+#'###+##+#'#'@@@:;,:###@####'#+#+@#@+#+######+#+#+#+#+###@#@#@#@@#@#@@@@#@#@##########@@@@#######@@#
#@##@#@+#+###'#+++#+#+#########@+@+@#######+#+#+#+####+###+@+@+@#+#+####+###+#+##@@,,,:+@@#@#@#@#@#@@@#@@@#+#+#+#+######+#+@+@@@@@@@@#@@@@@@#@@@########@@@@@@@@#@@@@@@
###@##+#+###+#+#+#+#+##+###+##@#@#@#@#######+#+#+####+##@+@+##@@+#+#+####+#'#+#+@@+,,,,#@##+@+@+@###@@@#@#######+########+####@@@@@@+@#@@@@#@#@@######+#@@@@@###@@@#@@@
##@#@+@+#+#+#+#+#+#+##+#+#++'#+#+@+##@###+#'#+##+#++'#'#+#+####++'#+##'#:+'#+####'@.,.:++#'#+#+@####@######+#+#'#+########+@#@@##+##@#@@#@#@#@@@@####+##@#@######@#@#@@
#@####+#+#+#+++#+#+#++#+#+#'#+@+##@#####+#'#+##+#+#'#+#+@+@#@@##'#+##+#+#+#+####@@#,.::##+##@##@#@@####@##+#+#+######+#+#+##@@@####@#@@@##@@@@@@@#######@@@@##@@@##@#@@
#+###+#+#+#+#+###+#+##+#+#'#'@+####@#####'#+####+#'#+#+#+@#@@#@+#+####+#+#+#####@#@,,,;####@@@#@@@@#@#@#;##+#+######+#+####@@#@###@#@@#@###@@@@@#+######@#@####@###@#@@
######+#+#+#####+#+####+#+#+##@#@#@@#@##+#+####+#+####@#@@@@#@#######+###########@@,,:'###@#@@@@#@@@@##@###################@@#@#@@@@@@#####@@@@@@#########@##@@@@###@@@
@#@#@###################+####@#@@@#@###+#+#+####+#+##################+############@.:,'#+###@@@@##@@######################@@@@#@@@#@@@@#@#@@@@#@########@#@#@@@@#####@@
@#@#@#@#@#@#############++###@@@@@@@#@############+###@@@@@@@@########+##########@@.,:'####@@@@@@@@@@#@###################@@@@@#@@@@@@###@@@@#@#@#####+#+@@@@#@######@@
#######@#@###########+#'#+#####@#@#@#@##+######+#####@@@@@##@####################@@,,:;###@#@@@@@@#@#@#@#############+####@@@@#@#@@@@@@#@@@@#@#@#@######@@@@@@#@#@@@@@@
@#@#@###@@@##################@@@#@@@@@################@@@@@#@####################@@:::'####@@@@#@#@#@#@#########+#+######+@+@+@#@@+@+#+@@#@#@#@#@@##+#+#'@@#@###@###@@#
##@######@############++#########@@###++##############@@@@@@#@@@#####+######+#+##@@;,;;#@@@@#@#@#@#@#@###########+#########@###@@@@#@#@@@@@@#@#@@@##@####@@@@@#@#@@@##@
##@####@@@##################@@@###@@##################@@##@#@@@@@###+######+#####@@@##+@#@@#@#@+@#@#@#@#####@##@#####@@#@#@#@#@#@@@@#@#@@@@#@#@@@@#@#@+@#@@@@#@#@#@@@@@
                                                                                               

Comments