- Country: International - Location: Uppsala/Sala/Stockholm, Sweden / Helsinki, Finland - Status: Active - Formed in: 2005 - Genre: Heavy/Speed/Black Metal - Lyrical themes: Death, Gore, Satan, Sex, Magick, Space - Record label: N/A - Years active: 2005-present
Members
Anal
Bass, Guitars (rhythm) (2005-present)
Coffin
Vocals, Sitar, Theremin, Bass, Effects (2005-present)
Member(bands):
Saturniids , Undergång
Cult
Drums, Percussion (2009-present)
Cadaver
Guitars (lead) (2009-present)
Member(bands):
Vorum , Begravningsentreprenörerna, Degial (live), Speedtrap (live)
Semen
Guitars (lead) (2012-present)
Member(bands):
Sweet Danger
Fuck
Guitars (rhythm), Drums (2009-2010)
Shit
Bass (2017-present)
Member(bands):
Tøronto , Morbus Chron , Entombed (live)
Swallowed
Guitars (2020-present)
Member(bands):
Infernal Suicide , Swallowed
Phantasm
Guitars (rhythm) (2010-2012)
Member(bands):
Undergång
Close
Type:
Demo
Release date:
June 1st, 2005
Catalog ID:
N/A
Version desc.:
CD-R
Label:
Independent
Format:
CD
Members
Olli "Anal" Ahlström
Bass
Affe "Coffin" Piran
Vocals
Viktor
Guitars
David
Drums
Tracks
1.
Obnoxious Anthem
00:22
(loading lyrics...)
2.
Ruin Your Life
00:44
(loading lyrics...)
3.
Kicked in the Face
01:01
(loading lyrics...)
4.
Smoke This!
01:04
(loading lyrics...)
5.
Stuck Up/Fuck Up!
00:18
(loading lyrics...)
6.
Old Man
00:58
(loading lyrics...)
7.
Forced to Behave
01:20
(loading lyrics...)
05:47
Close
Type:
Demo
Release date:
September 26th, 2009
Catalog ID:
N/A
Version desc.:
CD-R
Label:
Independent
Format:
CD
Members
Olli "Anal" Ahlström
Guitars
Affe "Coffin" Piran
Vocals, Bass
Jakob "Corpse" Arvidsson
Drums
Johannes "Dr. Rad" Wanngren
Guitars (additional lead)
Einar Petersson
Guitars (rhythm, acoustic)
Oscar Alvarez
Mastering
Tracks
1.
Dangerzone
02:43
instrumental
(loading lyrics...)
2.
Life of the Morbidly Obese
01:50
(loading lyrics...)
3.
The Mediocre Mass
01:30
(loading lyrics...)
4.
Obey Satan
01:50
(loading lyrics...)
5.
BBQ
00:48
(loading lyrics...)
6.
Wytches of Torment
01:10
(loading lyrics...)
7.
Space Trip (The Return)
01:05
instrumental
(loading lyrics...)
8.
Corpselicker
02:13
(loading lyrics...)
13:09
Close
Type:
Full-length
Release date:
May 30th, 2011
Catalog ID:
#13
Label:
Adult Crash Records
Format:
CD
Members
Olli "Anal" Ahlström
Bass, Vocals
Affe "Coffin" Piran
Vocals, Effects, Additional instruments
Frans "Cult" Utterström
Drums
John "Cadaver" Finne
Guitars
Jakob "Corpse" Arvidsson
Guitars (rhythm)
Spine
Guitars (lead)
Johannes Wanngren
Guitars (lead)
Sven Höglund
Flute
Mattias Gustafsson
Guitars (lead)
Tracks
1.
Obnoxious Youth
01:20
(loading lyrics...)
2.
Virus
01:29
(loading lyrics...)
3.
The Coffin
02:39
(loading lyrics...)
4.
Inevitable Death
01:03
(loading lyrics...)
5.
Death Magistrate
02:23
(loading lyrics...)
6.
Humiliate Me
01:04
(loading lyrics...)
7.
Masochistic Master
02:28
(loading lyrics...)
8.
The Eternal Void
04:03
(loading lyrics...)
9.
Commander of Time
03:57
(loading lyrics...)
10.
Inverted Christ
01:44
(loading lyrics...)
22:10
Close
Type:
EP
Release date:
July 2nd, 2013
Catalog ID:
Par 033
Version desc.:
Limited edition
Label:
Primitive Art Records
Format:
7" vinyl (45 RPM)
Limitation:
666 copies
Album versions
Release date
Label
Catalog ID
Format
Description
July 2nd, 2013
Primitive Art Records
Par 033
7" vinyl
Limited edition
December 10th, 2018
Independent
Digital
Bandcamp
Tracks
Side A
1.
Hell on Earth
03:58
(loading lyrics...)
Side B
2.
Suck on the Cross
01:14
(loading lyrics...)
3.
Cut Your Throat
02:22
(loading lyrics...)
4.
Conquest for Death (Necros)
01:23
(loading lyrics...)
08:57
Close
Type:
Full-length
Release date:
May 12th, 2017
Catalog ID:
CMASS007LP
Version desc.:
Limited edition
Label:
Critical Mass Recordings
Format:
12" vinyl
Limitation:
400 copies
Album versions
Release date
Label
Catalog ID
Format
Description
May 12th, 2017
Critical Mass Recordings
CMASS007LP
12" vinyl
Limited edition
May 12th, 2017
Independent
Digital
Bandcamp
2017
Too Circle Records
TCR-058
CD
Members
Olli Ahlström
Bass, Guitars (rhythm)
Affe Piran
Vocals, Bass, Sitar, Theremin, Effects
Frans Utterström
Drums, Percussion
John Zeke
Guitars (lead)
Simon Lind
Guitars (lead)
Jaakko Hietakangas
Vocals
Afshin Piran
Artwork, Layout
Mattias Persson
Mastering
Johanna Engdahl
Photography
Jaakko Hietakangas
Recording
Samu Salovaara
Recording
Tracks
Side A
1.
Speed Metal
01:59
(loading lyrics...)
2.
Place of a Thousand Deaths
01:20
(loading lyrics...)
3.
Disturbing the Graves
02:06
(loading lyrics...)
4.
Black Terror
03:03
(loading lyrics...)
5.
Retroactive Abortion
01:26
(loading lyrics...)
6.
Bleeding the Freaks
03:25
(loading lyrics...)
Side B
7.
Sadistic Death
02:07
(loading lyrics...)
8.
Sucking the Devil
01:26
(loading lyrics...)
9.
Quartered & Swallowed
02:03
(loading lyrics...)
10.
Need to Destroy
02:00
(loading lyrics...)
11.
I.F.L.K.
03:27
(loading lyrics...)
12.
Flesh Impostors
03:10
(loading lyrics...)
27:32
Close
Type:
EP
Release date:
May 15th, 2020
Catalog ID:
N/A
Version desc.:
Limited edition
Label:
Svart Records
Format:
Vinyl
Limitation:
500 copies
Album versions
Release date
Label
Catalog ID
Format
Description
May 15th, 2020
Svart Records
Vinyl
Limited edition
May 15th, 2020
Independent
Digital
Bandcamp
Tracks
1.
Cockroach
03:25
(loading lyrics...)
2.
Mouths Sewn Shut
02:20
(loading lyrics...)
3.
Funeral
03:38
(loading lyrics...)
4.
Succumb
03:46
(loading lyrics...)
5.
The Eye
01:53
(loading lyrics...)
6.
Dripping Organs
03:12
(loading lyrics...)
18:14
Close
Type:
Demo
Release date:
September 26th, 2009
Catalog ID:
N/A
Version desc.:
CD-R
Label:
Independent
Format:
CD
Members
Olli "Anal" Ahlström
Guitars
Affe "Coffin" Piran
Vocals, Bass
Jakob "Corpse" Arvidsson
Drums
Johannes "Dr. Rad" Wanngren
Guitars (additional lead)
Einar Petersson
Guitars (rhythm, acoustic)
Oscar Alvarez
Mastering
Tracks
1.
Dangerzone
02:43
instrumental
(loading lyrics...)
2.
Life of the Morbidly Obese
01:50
(loading lyrics...)
3.
The Mediocre Mass
01:30
(loading lyrics...)
4.
Obey Satan
01:50
(loading lyrics...)
5.
BBQ
00:48
(loading lyrics...)
6.
Wytches of Torment
01:10
(loading lyrics...)
7.
Space Trip (The Return)
01:05
instrumental
(loading lyrics...)
8.
Corpselicker
02:13
(loading lyrics...)
13:09
Close
Type:
Demo
Release date:
January 1st, 2010
Catalog ID:
N/A
Version desc.:
Bandcamp
Label:
Independent
Format:
Digital
Members
Olli "Anal" Ahlström
Guitars
Affe "Coffin" Piran
Vocals, Bass
Jakob "Corpse" Arvidsson
Drums
Johannes "Dr. Rad" Wanngren
Guitars (additional lead)
Einar Petersson
Guitars (rhythm, acoustic)
Oscar Alvarez
Mastering
Tracks
1.
Dangerzone
02:43
instrumental
(loading lyrics...)
2.
Life of the Morbidly Obese
01:50
(loading lyrics...)
3.
The Mediocre Mass
01:30
(loading lyrics...)
4.
Obey Satan
01:50
(loading lyrics...)
5.
BBQ
00:48
(loading lyrics...)
6.
Wytches of Torment
01:10
(loading lyrics...)
7.
Space Trip (The Return)
01:05
instrumental
(loading lyrics...)
8.
Corpselicker
02:13
(loading lyrics...)
13:09
Close
Type:
Demo
Release date:
June 21st, 2020
Catalog ID:
N/A
Version desc.:
Bandcamp
Label:
Dissonant Death Records
Format:
Digital
Members
Olli "Anal" Ahlström
Guitars
Affe "Coffin" Piran
Vocals, Bass
Jakob "Corpse" Arvidsson
Drums
Johannes "Dr. Rad" Wanngren
Guitars (additional lead)
Einar Petersson
Guitars (rhythm, acoustic)
Oscar Alvarez
Mastering
Tracks
1.
Dangerzone
02:43
instrumental
(loading lyrics...)
2.
Life of the Morbidly Obese
01:50
(loading lyrics...)
3.
The Mediocre Mass
01:30
(loading lyrics...)
4.
Obey Satan
01:50
(loading lyrics...)
5.
BBQ
00:48
(loading lyrics...)
6.
Wytches of Torment
01:10
(loading lyrics...)
7.
Space Trip (The Return)
01:05
instrumental
(loading lyrics...)
8.
Corpselicker
02:13
(loading lyrics...)
13:09
Close
Type:
Demo
Release date:
July 20th, 2020
Catalog ID:
DD15
Version desc.:
Reissue, Limited edition
Label:
Dissonant Death Records
Format:
Cassette
Limitation:
100 copies
Members
Olli "Anal" Ahlström
Guitars
Affe "Coffin" Piran
Vocals, Bass
Jakob "Corpse" Arvidsson
Drums
Johannes "Dr. Rad" Wanngren
Guitars (additional lead)
Einar Petersson
Guitars (rhythm, acoustic)
Oscar Alvarez
Mastering
Tracks
Side A
1.
Dangerzone
02:43
instrumental
(loading lyrics...)
2.
Life of the Morbidly Obese
01:50
(loading lyrics...)
3.
The Mediocre Mass
01:30
(loading lyrics...)
4.
Obey Satan
01:50
(loading lyrics...)
5.
BBQ
00:48
(loading lyrics...)
6.
Wytches of Torment
01:10
(loading lyrics...)
7.
Space Trip (The Return)
01:05
instrumental
(loading lyrics...)
8.
Corpselicker
02:13
(loading lyrics...)
Side B
1.
Dangerzone
02:43
instrumental
(loading lyrics...)
2.
Life of the Morbidly Obese
01:50
(loading lyrics...)
3.
The Mediocre Mass
01:30
(loading lyrics...)
4.
Obey Satan
01:50
(loading lyrics...)
5.
BBQ
00:48
(loading lyrics...)
6.
Wytches of Torment
01:10
(loading lyrics...)
7.
Space Trip (The Return)
01:05
instrumental
(loading lyrics...)
8.
Corpselicker
02:13
(loading lyrics...)
13:09
Close
Type:
Full-length
Release date:
May 30th, 2011
Catalog ID:
#13
Label:
Adult Crash Records
Format:
CD
Members
Olli "Anal" Ahlström
Bass, Vocals
Affe "Coffin" Piran
Vocals, Effects, Additional instruments
Frans "Cult" Utterström
Drums
John "Cadaver" Finne
Guitars
Jakob "Corpse" Arvidsson
Guitars (rhythm)
Spine
Guitars (lead)
Johannes Wanngren
Guitars (lead)
Sven Höglund
Flute
Mattias Gustafsson
Guitars (lead)
Tracks
1.
Obnoxious Youth
01:20
(loading lyrics...)
2.
Virus
01:29
(loading lyrics...)
3.
The Coffin
02:39
(loading lyrics...)
4.
Inevitable Death
01:03
(loading lyrics...)
5.
Death Magistrate
02:23
(loading lyrics...)
6.
Humiliate Me
01:04
(loading lyrics...)
7.
Masochistic Master
02:28
(loading lyrics...)
8.
The Eternal Void
04:03
(loading lyrics...)
9.
Commander of Time
03:57
(loading lyrics...)
10.
Inverted Christ
01:44
(loading lyrics...)
22:10
Close
Type:
Full-length
Release date:
April 30th, 2011
Catalog ID:
N/A
Version desc.:
Bandcamp
Label:
Independent
Format:
Digital
Members
Olli "Anal" Ahlström
Bass, Vocals
Affe "Coffin" Piran
Vocals, Effects, Additional instruments
Frans "Cult" Utterström
Drums
John "Cadaver" Finne
Guitars
Mattias Gustafsson
Guitars (lead)
Jakob "Corpse" Arvidsson
Guitars (rhythm)
Spine
Guitars (lead)
Johannes Wanngren
Guitars (lead)
Sven Höglund
Flute
Tracks
1.
Obnoxious Youth
01:20
(loading lyrics...)
2.
Virus
01:29
(loading lyrics...)
3.
The Coffin
02:39
(loading lyrics...)
4.
Inevitable Death
01:03
(loading lyrics...)
5.
Death Magistrate
02:23
(loading lyrics...)
6.
Humiliate Me
01:04
(loading lyrics...)
7.
Masochistic Master
02:28
(loading lyrics...)
8.
The Eternal Void
04:03
(loading lyrics...)
9.
Commander of Time
03:57
(loading lyrics...)
10.
Inverted Christ
01:44
(loading lyrics...)
22:10
Close
Type:
EP
Release date:
July 2nd, 2013
Catalog ID:
Par 033
Version desc.:
Limited edition
Label:
Primitive Art Records
Format:
7" vinyl (45 RPM)
Limitation:
666 copies
Tracks
Side A
1.
Hell on Earth
03:58
(loading lyrics...)
Side B
2.
Suck on the Cross
01:14
(loading lyrics...)
3.
Cut Your Throat
02:22
(loading lyrics...)
4.
Conquest for Death (Necros)
01:23
(loading lyrics...)
08:57
Close
Type:
EP
Release date:
December 10th, 2018
Catalog ID:
N/A
Version desc.:
Bandcamp
Label:
Independent
Format:
Digital
Tracks
1.
Hell on Earth
03:58
(loading lyrics...)
2.
Suck on the Cross
01:14
(loading lyrics...)
3.
Cut Your Throat
02:22
(loading lyrics...)
4.
Conquest for Death (Necros cover)
01:23
(loading lyrics...)
08:57
Close
Type:
Full-length
Release date:
May 12th, 2017
Catalog ID:
CMASS007LP
Version desc.:
Limited edition
Label:
Critical Mass Recordings
Format:
12" vinyl
Limitation:
400 copies
Members
Olli Ahlström
Bass, Guitars (rhythm)
Affe Piran
Vocals, Bass, Sitar, Theremin, Effects
Frans Utterström
Drums, Percussion
John Zeke
Guitars (lead)
Simon Lind
Guitars (lead)
Jaakko Hietakangas
Vocals
Afshin Piran
Artwork, Layout
Mattias Persson
Mastering
Johanna Engdahl
Photography
Jaakko Hietakangas
Recording
Samu Salovaara
Recording
Tracks
Side A
1.
Speed Metal
01:59
(loading lyrics...)
2.
Place of a Thousand Deaths
01:20
(loading lyrics...)
3.
Disturbing the Graves
02:06
(loading lyrics...)
4.
Black Terror
03:03
(loading lyrics...)
5.
Retroactive Abortion
01:26
(loading lyrics...)
6.
Bleeding the Freaks
03:25
(loading lyrics...)
Side B
7.
Sadistic Death
02:07
(loading lyrics...)
8.
Sucking the Devil
01:26
(loading lyrics...)
9.
Quartered & Swallowed
02:03
(loading lyrics...)
10.
Need to Destroy
02:00
(loading lyrics...)
11.
I.F.L.K.
03:27
(loading lyrics...)
12.
Flesh Impostors
03:10
(loading lyrics...)
27:32
Close
Type:
Full-length
Release date:
May 12th, 2017
Catalog ID:
N/A
Version desc.:
Bandcamp
Label:
Independent
Format:
Digital
Members
Olli Ahlström
Bass, Guitars (rhythm)
Affe Piran
Vocals, Bass, Sitar, Theremin, Effects
Frans Utterström
Drums, Percussion
John Zeke
Guitars (lead)
Simon Lind
Guitars (lead)
Jaakko Hietakangas
Vocals
Mattias Persson
Mastering
Johanna Engdahl
Photography
Jaakko Hietakangas
Recording
Samu Salovaara
Recording
Afshin Piran
Artwork, Layout
Tracks
1.
Speed Metal / Place of a Thousand Deaths
03:19
(loading lyrics...)
2.
Disturbing the Graves
02:06
(loading lyrics...)
3.
Black Terror
03:03
(loading lyrics...)
4.
Retroactive Abortion
01:26
(loading lyrics...)
5.
Bleeding the Freaks
03:25
(loading lyrics...)
6.
Sadistic Death
02:07
(loading lyrics...)
7.
Sucking the Devil
01:26
(loading lyrics...)
8.
Quartered & Swallowed
02:03
(loading lyrics...)
9.
Need to Destroy
02:00
(loading lyrics...)
10.
I.F.L.K.
03:27
(loading lyrics...)
11.
Flesh Impostors
03:10
(loading lyrics...)
27:32
Close
Type:
Full-length
Release date:
2017
Catalog ID:
TCR-058
Label:
Too Circle Records
Format:
CD
Members
Olli Ahlström
Bass, Guitars (rhythm)
Affe Piran
Vocals, Bass, Sitar, Theremin, Effects
Frans Utterström
Drums, Percussion
John Zeke
Guitars (lead)
Simon Lind
Guitars (lead)
Jaakko Hietakangas
Vocals
Mattias Persson
Mastering
Johanna Engdahl
Photography
Jaakko Hietakangas
Recording
Samu Salovaara
Recording
Afshin Piran
Artwork, Layout
Tracks
1.
Speed Metal / Place of a Thousand Deaths
03:19
(loading lyrics...)
2.
Disturbing the Graves
02:06
(loading lyrics...)
3.
Black Terror
03:03
(loading lyrics...)
4.
Retroactive Abortion
01:26
(loading lyrics...)
5.
Bleeding the Freaks
03:25
(loading lyrics...)
6.
Sadistic Death
02:07
(loading lyrics...)
7.
Sucking the Devil
01:26
(loading lyrics...)
8.
Quartered & Swallowed
02:03
(loading lyrics...)
9.
Need to Destroy
02:00
(loading lyrics...)
10.
I.F.L.K.
03:27
(loading lyrics...)
11.
Flesh Impostors
03:10
(loading lyrics...)
12.
Hell On Earth
03:56
(loading lyrics...)
13.
Suck On The Cross
01:14
(loading lyrics...)
14.
Cut Your Throat
02:21
(loading lyrics...)
15.
Conquest For Death (Necros Cover)
01:22
(loading lyrics...)
16.
Aids Of Space
03:39
(loading lyrics...)
40:04
Close
Type:
EP
Release date:
May 15th, 2020
Catalog ID:
N/A
Version desc.:
Limited edition
Label:
Svart Records
Format:
Vinyl
Limitation:
500 copies
Tracks
1.
Cockroach
03:25
(loading lyrics...)
2.
Mouths Sewn Shut
02:20
(loading lyrics...)
3.
Funeral
03:38
(loading lyrics...)
4.
Succumb
03:46
(loading lyrics...)
5.
The Eye
01:53
(loading lyrics...)
6.
Dripping Organs
03:12
(loading lyrics...)
18:14
Close
Type:
EP
Release date:
May 15th, 2020
Catalog ID:
N/A
Version desc.:
Bandcamp
Label:
Independent
Format:
Digital
Tracks
1.
Cockroach
03:25
(loading lyrics...)
2.
Mouths Sewn Shut
02:20
(loading lyrics...)
3.
Funeral
03:38
(loading lyrics...)
4.
Succumb
03:46
(loading lyrics...)
5.
The Eye
01:53
(loading lyrics...)
6.
Dripping Organs
03:12
(loading lyrics...)
18:14
Band ascii art
........................................................................................................................
........................................................................................................................
.............................................................................................................,,.........
.................................................,,.................,*?+,.........................*;........+?*?:.......
................................................;%*,*%+.............%+.?;................:;;,....??;+......?*..%*.......
................................................%:,:#;+?;;,........??.+%*;...............S:;%,...#;,#:....%*..+S........
.................;+:...........................+?.S,:+.,;+S+......;%..:..........,;,.....#;.S:..;S:.#;...%*..;#;........
................:#+:+*:............,?+,........%:;?,:+?...,S,....,#:...:*...;+:..%+;*+...#?.+#,.%:..?+.,%*..:S,.........
.................+S:.,*?;,.........?%;%;......*%.+%%+++*...,?;...?*....%;..+?+S,.?+.,*...;#,,@,.S*..*S.*S...*%...,,.....
..................+#....:+*,.......,S+.++....,#;.S+?;.,S#;..,*?.:%....*+..+*.+:.:S...*+..,@,,@,.S+..;?,%+..+#;+***?S:...
..................;#......:?+.......,S;.%:...:S.,S:?;..+@#:...*%%+...;@?+*;,:...*?.:,,S;..S,,#,,@,...+S;...+;::...,@:...
...........;%***+.;#,..,*,..*?:......*?.:%...+?.;%?+.:..+##:...**...:S%?,..+S..,#,,#S:,%*.?:.?;.%*...*+...........??....
............%+,,??,S:...S%+,.,S?+%?;.?+..*+..%?.%#;.,@?..+?*;......,%;??.:?;S:.*%.*%,+..??S:.;#..#+......:++%:...+%.....
............+S..:%;;S...?%:?+..;;,:?*%...,S:.?;.?*..%+%?..;:?:.....?+,S;?#;+++:#:,@:.,...*@:.,S:.;#,..:??+:??...,#,.....
............%+....;?S,..:#,,S+...:+*#*.*?.+S,;.....*S..??.,?%#:...,S..??;,.+?:?%.?%....;+.+:..*+..S;..%+..,%....,;......
...........:#,.+;...;;...+?%;..;?*:,S;.?@;.%S,....;#,...S+..%%.....*?+%;,..S%,%,.#:.....*%....;S..S*..+?..*%...,S+......
...........%*.*S+%*:.....,?,.;*:....#;.#SS,.%+....:%;...S*.,#,......?*:+#;.;S+,..?+,....,:.?*..#:.S?..+#,.??...?*.......
........::*#,,S:..:;........;?;;;:,,S;.#;%*.,,.....,*..:@:.*?...:+...?*.*?..:@%:..:*+..:*..#?..#+.*%..:#:.*#+.+%........
........*@;,.?*...*,.......,,.,:+*%?+.,S,;#,....??...:.+S.+#,..,%%?...S;:S...?#%?...*%,%;.*@?..+#:+#,..?%.:S,,#;........
.........??,.;%*.?%...:%...S%**++.....;#,.%?...,S#?..*?%;.#?...?*.#+..,%+*%..?#:??,..:#*.,@%S,..+?+:...:?;??,S*.........
..........:%+..*%S,...;@?..;%.+S+.:S+.*?..;#,..+S,%%..#%.;S...:S:.:S*...%+?*..?%;*S;..:..%%.#;..,,::;;,...?#%+..........
............*?,.+;....S+%+..S%%,.+?#+.S+...+*..%:..+?:*;.S:..,#;....?%..,%S*...:#*,*S*..;#,.*%+***?*+?S;+**#;...........
.............+S,.....+S.;#..*%..%%.%*.S+...:S..?...,:S;.,+...S?.....,S?..,#%.,*S;...:#*,S%...,:.......,?*:,.............
..............+%...,%?,..#?....??..,S.?+...;#..;+,?%+S%.,...?#,......,#+..:S%%?,.....,+*?...............................
...............+%,.+S....;#;..%*....??S:...:S,.+?+%:@%%*:..:S++:......:#*.;@*...........................................
................*%,%;....,#+.*#,.....,,....:@;.?*;S;#.?%.,,?%S;S*.....,;S?%S,:?+........................................
.................%%;......+%?+,.............;*??,+S.?;+%**?;;S.:#++*;;+*;,,.;%:**.......................................
...........................,..............,*?*:..+S.,S,.....S?.:?;,::;+*;...S+.:#.......................................
..........................................%+:@;..,#:.+.,,;***,...;*++;,....,@,.:#.......................................
...................................,+:...:S..S*...#;.%%*+:......S?,;**,....,@:..?.......................................
.............................:***.*?;S+..*S..?%...%?.,:,;;+*?*.:#:;%.*+....,#;..%,......................................
.................,,.........:#;,#S#,.+S..;S..??...*%.:%+*++,??.,*.S+.+%....,?...S;......................................
...............;??*%:......;#;.+@#:...%?.;%..*%...;#,.S,....S*.;%.S;.*+....;S...*?......................................
..............+#:..:%;.....#*.+##*.+*.,#:++..:#...;@:.%*....S*.+S.%,.*+.,;+??,...%;.....................................
...............+?,..,S+...%?..S@%.;#S+.*?++..:S....%;.+?....SS.?*.%,.+S**+:,,:...#:.....................................
................;%:..,?%.+#..:#S.,#;,#,.%#+..:@,...%*.;#....S#.S%+#+....,;*?S@+..S;.....................................
.................:%+...*%S;.,S#,,S+..?S.,#+..,#+...%?.;#....?%.%@#;...;**+:..S+..;S.....................................
..................,??:..*%..+@+.%*....**.;:..:#:...*%.;#....;S.*S;%:.*#,.....+*..,#:....................................
....................:**;....#%..+%....;S.....:#,...:#.,#:...%#.+#.;*.;S......;S...?*....................................
......................:%?..*S*:..*?..+S:,%;..:S....,S;.%%...*#.:#.+*.:#:......%:..:S....................................
......................,S*.;S.,?+..?+:#,.%#+..*S;....+#.;S....%..#;+%.*S.......*?...S;...................................
......................+S.,#:..,#,.:#S:.*%+?...%?....:%..#;...*;.#;:*.+#,......,S+..?+...................................
......................%:.%+....S*..*+.:S:+?...S+.....#;.+S;..%;.#;.%+;#+.......,%+.+S...................................
.....................;%.;S.....,S,....%;.*?...#?:::;?S;..:#;.+*.#;..;?*.........,S..S:..................................
.....................%:.S:......;?...*?..:S...**+++;,.....:%++S.#;...............+???;..................................
....................:%.+?........#;.,#,...S:.......:+*++;+,.S@S??,......................................................
....................*?.?:........#*;?;....%?;***??**+;::;++*%;..........................................................
....................+%;S+........,++,......;;,,,........................................................................
.....................,++................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................ ++**********???????????????%%%%%%%%%%%%%%%%%%%%%%%%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
+**********???????????????%%%%%%%%%%%%%%%%%%%%%%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
++*********???????????????%%%%%%%%%?*+++*?%%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
+**********??????????????%%%%%%%%*;,.,:;+;::*%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
+*********?????????????%%%%%%%%?:..,+?%SSS?;,;%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS##SS####SSSSSSSSS
+********?????????????%%%%%%%%?,..,;*?%SSSSS*.;%SSSSSSSSSS%?++;:;;*%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS#S%?+::;;*%###SSSSSS
********?????????????%%%%%%%%?,..:+;;+*?%**?%:.+SSSSSSSS%%:,+*???+::;?SSSSSSSSS#####SSSSSSSSSSSSSSS#%;,.,::;,,,;?##SSSSS
*********+:::;+**??%%%%%%%%%*,...;?%%%*?%?+*?,.:%SSSSSSS?:,*%SSSSSS*,;%SSS###S%?*+?%###SSSSSSSSSS##?,...,::;::,,,?#SSSSS
******+:,,:;;:;;;;*??%%%%%%?:....:*??+;;*SS%?:,,?SSSSSS%+,:+**%S?+*%+:;%SSS+;:::,,,,;*S#SS########?,.....,,,,.,,,:%#SSSS
*****:,:+*?%%%S%%*::+?%%%%?+.....:;;++++;?%?;*,,;SSSSS%?;,,:;*+%%%%S%::+SS;;?%%%%%?*+::*S########%:,,,,,,::::,,,.,S#SSSS
***+,..:+*?%%SSSSS%+:;+%??+,.....,,+?**?++?;:,.:;?SSS%%?;,,*?%+*?%SS%::;?+*%SSS#####SS?:;S#####S?:,,,......,::::,:S#SSSS
***,...,;+?%SSSSSSSS?::??+,.......,;+*??+;:,...,;*SSS%?*;:.:?%++*?%S%::;;,*%SS#####SSSS;.?###S%*;,,:,,:;+:,..;+;,:+S#SSS
***:...,;+;;*%S%?*?%%:,?*,..........,,,,::......,;*%%??+;:..;*+++?%%*:;;,,;++;*SS?*??%?,,%###%*+;,,+*??*???*;+*;,:+%SSSS
****...:;::;:+S?;;+*?::*+,.......::,++++*:......:;+%%?*;:;,..:+*?%?*;:;;,;+;+++%%*+;;*%:,%##S?%*;,.+?*+:;*%%%?+,:;*SSSSS
****,..;???%**SS%%%S%;++;,......,:*+*?%%+;,......,:*??+;:;;..,.,,:;++;:;:;%SSS%SSSSSSSS;+S##SS%+:,.:+?****+??+:,:;?SSSSS
****+,.,;*?%;;??SS%%?*;,.........,;??%%?:,..........,:;::::..;+;:+??+::;::?%S?;+*S#SS%*:%S###S%+:,:,,;**??+;;:,,;;*SSSSS
******,.,;??+;*?%%%?*:............,:::,,........,,,,,...,::...:+++++:,::,,**;;;;:+*%%?:+S##SS%*;:::;;,.,,,,::,.:;;+**?%S
*****?;..,++;++*?%%?:............................,,:.:,.,;:,.........,,,,.:+?%??%%*?*+::+*+;:;;:,.:*%*+++*+:::,:;;:,,,,:
*******:..:+*??%%**:.............................,,,,:,,.::,,............,.,;*??%?+:,:++::,,,,,,,.,:*SSSS?,:;:::,,,,,,::
*******:...,::;;;*%;.........................,,..:::,.:,..,,,,.,,,,,...........,,.,,;?++;,,.,,,.,:,*+::;*+,+:::,,:,...,,
***+;:,......,:+%S%?,.,...,.................,;:,..,:..::...,,.,,,,,,:+*;::,,,,,,:;+?%%*;+,,,,,,,,:,**,...**;;:,:,:;:+::,
+;:.....,,;:;+?%S%*,.......,,,,;:*;++++++;+::;:::,::..,:,...,;;:,,,,.,;*++;;::++?%%%SS+++::::::::::;**;:+*+;:..;**+:::;:
.........,;*++**+:..............:+***??++**;:::;:,.,..,;:...++;:,,,:,..:;;+????%%SSSS+:,::::::::;;;+%?;.,+;;:,,+?;,::::,
............,.....................:+++++;;:,.,;;,.....,:;,.,,;:,,,::,,..,,.;???%%%%**::,,,:;;::::;,:***:.;;,,:,:,,,.,:,,
...................................+??*****;.::,,...,,,.,,;..,;,..:,,,,,;+:.;+;+**??;,,.::::;::,.,.:::;;;;:,,,,,,,...,.,
...................................,**+*?*?+.,,,,:..,:,..:;,:+;...,,,,,,*?*::*???*%+:*+:::::::;,..,:..;;+::,..,.,,.....,
..........,,,:::::::::,.............+****++:..,..:,......,::;*+,...,,,.,+?**;;++**+:+?*::::::::,..:..,++*+;..,,.,.......
....,++;+***+*???*****;.............:+;;+?*,,....:,.,,.....,::+:..,,.,.,+;;+;,,;+:,;+++::::,,,,...:,::++++:..,..,.......
.....:;+++;;+*?+;;**;................;:;?%+,,....,,.,,......,,:,...,,,..:;:+:,.::..::::;;::,,,...,:,:,;;:;,..,..........
......,;+;::+**+:;++:................:??*:,,,,...,,.....,.,:;:,....,,,,,,:+?;,:;:,;;;:,::,,:,....,,...,,,,,.,,....,.....
......,;+;::;*+;*+;*+:...............,+::;*;.,...,,....,:,,,++.....,,....,+*+;;:::**+,.,,,::,..........:::;,,.....,.....
....,:;++*+***?*+++***;...............;**?*:..,...,........,:,.........,,,;+;::,:;+;:,.,......,...,.,,:+;;;,,...........
....:;;::;++++*;;+;++*;...............;++*:,:..............,:..........,,.,,.....:::,............,,.,,,;:;;:,.....,.....
....:;;;;;;;**:;;;+???+...............:*;++:,..........,,,,;:,.........,,,::,.,.,,,....................,,:,..,....,.....
....,;;+;;;:++:;++****+...............,,,,..........,,,,,,:;:,..........,+*+::::*;;;,...................,,,,.,........,+
....,:::;;::;;:::::,,,,.......................,.....,,....,::,........,.:;*;,,,:++;+,...................,,,,.,.....,,,:;
..........................................................,,,.........,.,::,...::;;;................,....,,.....,,,:,...
..........................................................:;,...........,,.....,,,,,......................,.,,.,,.......
..........................................................,,...........,:;,.,,,::,:.....................................
...........................................,,:::........,,:,,.........::;:,,,,:;;;;,,...............,:;;;;:,............
..............................................................................................................................................................,.....................
.......................................,,...........................................................................................................................................
.......................................................................................,,.,............................,;::,,,,,....................................................
....................................................,:..........................,*+::;.+?+%:...........................:,,::,,::.,..................................................
..............................................,,::;;;:,,,,,,,,,.................:+*+*:;*+*%*........................,..,,,;;:,,.,:,.,.......:,......................................
...........................................,:;::,,:::,,,.,,,,................,:;*S;?:,?*++?*,,,...........................,,,,,,,,,,;:,,,..,+,......................................
.....................................:+:,:,:;;;;;;:,..,;+;;,.................;%*%?+;.,;*;;;+*++,............................,:;;:::,:;;:;,:::,::,...,;:.............................
.....................................,,::::;::;;:,....,:;::,................:;?%?+*....,+,.+?%#;............................:;;:::.,::::;;+;,.,,.,:;;,..............................
.......................................,,;:;+:::::,.,,,,...................;?*++;*;.....,,.,;?S%:...........................:;+::,::,..,;;;;,..,*+:,................................
..................................,:+,,;,,;++:,,,,,,;++;;,.................+?+?:,,,.....,+:,.;%%+.........................,.:++;;;;;;,:+;;:::;*++:..................................
.................................,,:*;;+;+;,::;:::::;:;;+:;,...............+%*;.:+:,.....,:+::*S?.........................,:;+;:,,:+;;;::,.,::?+....................................
............................:*,..,,:+:*+;,,;;;+;..,:;:..,,,,...............,?S;.;+;,.......:,;+??,........................;+;:,.,..:;:;::,,+;;;::,..................................
.............................:;,,,...:+;:++;:+;+*::,.:::,...................+%*..*,..........;;?*............................,;;;,.,,,:,,::;,.,,,;..................................
................................:;:...,..:+;+;;+*;:,,+;*:...................;#?,,,...,*?,....,?*+........................,;::,,::....,,:;;,,:;;;,,..................................
.................................:;::.::.;:,,:;:,....,,,,,..................,+S++,..,*S@%...,*?+;.....................,:::;:;::........,...,;;:,..,:?;..............................
...................................:+,+,.::,.,.,....,,,,,.,,.,,:............;%?%?;..+*?@@?..+*S%;....................,::;:,..,::;;;+++;;;;::::;+?S##*...............................
..........................,,.........,;,,;.....,,...::,:,:;:,:;:.............+##S?+:?+S@#@;?S@%,.......................,:;+??%%??%%SS##@#@@@@@@@S?;,................................
..........................:%?+::,,,,:;+*%S%%SSSS%%*+;;::;:.,,.................:S@S#S*?S#@#S@@*.....................:;+%*;+%@SSSSS@@@#@@@###%%*;,.............,......................
...........................:?#@@@@@@@@@@@@@@@@@@@@%%???????+;;:,,..............,%#@@#S#@@@@@*..................,;+?+;*@*S%@#S%%*;;+:::;:,,..........................................
.............................,:+??**+*#S??%%?S##@@#@@##??*?*?%%*;,..............,#S#@@#@@@@S................,;+S%**?+#@@#%*,.........,,,,,,,,.......................................
........................,,,,...................,,+??S#@@@?*?:++?S?;,.............:#%#@@@@@@+..............:+*???#?%@#@S;,:,.,..,:::,.:;+++:;:,......................................
...........,.......;*;:::;+**++;,.::::;::;::::;;:::..,*?%@%S??:,;*#S+,............*@@#@@@@@,............,*?:?;?*###?+:.,:;;:,,,,,:,.,:;;;;..........................................
...........:;++:,,.,+???*?????**+;?%%%*?%??*****;+;;+,...;?%@@S%*,**?S+,..........,#@@@@@@S...........,;?++?*%#@@#+..,,,,,,::::,,,,.:;::::,.........................................
............,;?%??*+;;*??S%%%%?**??*?*;;;;;:;+*??*+;+;:,,,..+#@##S#%?%SS:..........*@@@@@@%..........,*+.;S@@@@?;,.::::..,,:,;?*???*;;+;,...........................................
.......,.......:?SS#%??%?%%??%%**;:,...,:;+++???*?*+;++;;*;,.,;#@@#S?*?S#*,........:@@@@@@?.........+??%?%@@@@?.....,,::,,,:.;+????%**+++;:,........................................
......,??+;:,....,;?%??%%%???*;,....:*%%%%%??????**+++*++;;*+:.:?#@#S##S%S%,.......,@@@@@@?........+#++#@@@@%;..,,.::,,..........,;**??%%%*++:......................................
.......:?%%%*?*;:,.:***%%%??;.....:%###SSS%%*?%?*++*****+;++*+*:.:@@@@@#?*SS:......,@@@@@@?......,?%S###@@@#:...:*::,:,............,+%???S#%*+::....................................
........:*???%SS%?%??*?S@#*,....,?S#S###S%%???S?*+:::,::;;;;++*::,;S@@#%?%?%%;.....,@@@@@@%.....,%S*?%@@@@%:....,,,....,,,,.........,:*??*?%%?%*+,..................................
.........,+?%##S#@#S%???S%,....:SSSS??%%%?**+;**?*?*;:,......::,,..,S@@@@@@SS%;....:@@@@@@#,....*S*?S#@@@%......,....:++;*++;:.........,+*****???*+:................................
..........,+?SS%S#S%S%?%S,....,S@SSS????%????+:,:;;;+*++;:,.........,?@@@@@##S?;...;@@@@@@@+...;%%?%@@@@%:..........,+;;;+?%%?+,.........:+***++++++*;,.............................
............:???%SS%%%?S?.....%#S@@@%*;+;:;++++,...;%@S?**+*,.........*@@@##S#%%;::%@@@S?@@@+:+??S#@@@@?...........,***;;;+%*%S%;..........:*?**++:,,::,............................
.............,++*?%S%%*S*....;@S?SS%S?+,.......,..+@@@#%*;;%?,.........+#@@@######@@@@@*:?@@@@###@@@@@@:...,:,,....;*+S;;?S@S?###+,,,,......,;**+;++,...............................
..............,:+**???*S*....*#SSS???*%?*:,......+@@@@#+,::?#;........,:+@@@@#@@@@###SS;?+?%**S@@@@@@@%;:::::,,,...*+;;;?##?%?S?#?+:;::::,:,,.,+***+;:,.............................
................,+?*?**??,...?%?%%???%????*;....?@@@@@%:;;:?#+......,:++?#@@@@#S@#S?;++*SS++*#@@@@@@@@?*;,.........:*;;:+S#+%*?%%SS%:,:;;+*?**+;+;;;++::,...........................
.................,:**;*?%+...*%??%%?????%???*;.+@@@@@@@?;;;*%*.....,;+?%S@@@##???S##@#;+*+*;S@@@@@@@@@@#%?+;:,,.....+++:;S??%??%%%%@S:..,:;+?????**;::,::...........................
...................,;;+?%%;..+??%%*;;+*?????**;#@@@@@@@S;+;;?*;++*?SSS%%%%S@SS**;+?*S%:*S#%?;S@@@@@@@@@@@@@@@@#SS%*;+*;;+%*%%S%?%S###%:....,:+*****?*+:,............................
...........:::.......,:+??%*,,?S??*+;:,,;++**+S@@@@@@@#@%*+:?S%#@@@@@#%%S#@@#%???***SSS@@@@@@@#SSS#@#@@@@#@@@@@S?+,.+;:;+%?S%%?%??%%%S?:.....,:++++**?*+;::,........................
...........,;+++::,...,:;*?%*:;%??*::;::,..,,;#@@@@#@@@@#++*%S,,,+???%S@@@@@@###SS*+?S@SS#@#%??SS#@@#S**?+,:;:,.....*;*+?S%SS%+??S%?SS#?,.......,:;+;+******;:,.....................
..............,+?**+::,..:**??*%%**+,..,,....?@@@@##S@@@#?+**%?......:%#@@@@@@@?#@##S?%####*%SS@%%@@#%**:*.........,S%%%S%#@#??S%@S*%SS@?,........,:++++++*?+**,,...................
................;+*+:;*+;::;***???*+:.,.....;@@@@@###@@@@#%*+%%+,,..,+?%@@@@@@#S##?#@@S##@@@@#%?S@@@S#S%;*:,.......*?*+S%S#@#S%#%?S#%SS?#?..........,++;;;:;+****;:.................
..................,;;+??*??*******?*+:*+:...S@@@@@@@@@@@@@#%;**%+*;,.:;*S?S@@@#S??S@#@SS*?S#@@@@@@@@#?#S;:........;+;;+SS#S?##S#%S?#@S#%?%*,....:.....;;:+,.,,:;;+*+;,..............
....................,;??*?%????*?****++*+;.;@@@@@@@@@@@####?%;?%?+***;;,;+S%@@@#?SS##@#+:;;###@@@@@@@?*#.........:*,?*?@##S?#@@@#@@%%@%%S%S+......,;;,::;;,,.....,,:+;..............
......................:+*?%?%%%??**+*;++;+,%@@@@@@@@@##S%##?*;+?S;;;+?*;.*;;?@@@@@@@@#?,,;;%#@@@@@#%S::+........,?:;+?###%%?S@@@@#@@S%SS?SS?,.....::::::;;;:,,......................
........................,;+?%%???***+;?:*,?@@@@@@@@@@SS#S@@#S%+*%?.,:;*+;*,.;S@@@@@@S**+,,;SS@@@@#?:;.:.........+*+;+%@@#%?%@@@@@@S#@SS%S##%*.......:,..,:;+;:,.....................
...........................:*?%??**?*+%:#,*@@@@@@@@@@@@@@SS##S?*%S:...,++;,:::?%@@##?*+%+,?#*#@@@;.............++:+:%@@@#%S@@@@@@@@@@SSS%S@##:.............:;;:,....................
.............................,;*+**+*;*,*+;@@@@@@@@@@#@@@#SSS##*?#%,.....,..,,.*##@##%?*+:*SS#@@S+;,..........;?**?S@@#@@@#@@@@@@@##@@SSS%%SS?.......,;,.....,:;;:,.................
.................................,,;%++,:*;@@@@@@@@@@@@@@@S%S@@S*%S%:........,+?*?#@?+SS:,+#S#@@?+%??+;,....,+%??%@@@@@@@@@@@@@@@@@@###@%%S#%#;.......:;........,;+;,...............
...................................+%;,..:+@@@@@#@@@@@@@@@SS#@S%??%%S+...,;+*??+;?S@@S?+;+%S@@@S+,:;++?**+:+%%SSS#@#@@@@@@@@@@@@@@@@@@@@#S%@@#S,........,;:........,:,..............
...................................**;....;@@@@@@@@@@@@@@@@#@@@#S#??SS*:+**;+,.,.+%*@S****?%S@@+:....,::+;+*%S#@@@@@@@@@@@@@@@@@@@@@@@@@#@#SS##*.........,:,........................
...................................;S:....?@@@@@@@@@@@@@@@@@@@@@@##%S?+;::....,..+??##?*++?S@@%?:....,,....,,;*%%@@@@@@@@@@@@@@@@@@@@@@@@SS#SS@#:...........,,,,....................
....................................*;....*@@@@@@@@@@@@@#@@@@@@@@@?;:......,,..:,;*%S@@@#%@@@@??,..............:?##@@@@@@@@@@@#@@@@@@@@@@@##@#S#%.............::,,..................
....................................,*.....*@@@@@@@@@@@@@@@@@@@@#+:..............:%?%##SSS####%*,...............;S#@@@@@@@@@@@@@@@@@@@@@@@@@#S#@@*..............,:,,................
.....................................+:.....+@@@@@@@@@@@@#@@@@@S:+,...........,...*%?SSS%S#%SS%;.,:,....,......:+?@@@@@@@@@@@@@@@@@@@@@@@@@##S@@#@+...............,,................
.....................................*%,.,;+.;#@@@@@@@@@@S@@@@S:,+.......,:;:,,...,*?%S%S##S%%*,.,,,....:;;,.,,*??%%S@@@@@@#@@@@@@@@@#@@#@@S##S##S?.................................
....................................:@@*.,::,,,?@@@@@@@@@@@@#*:,.,.....,;;,,.......,*%?%%%##%*;...........:??%+%S%%*+S@@@@@@@@@@@@@@@@@@S%%##@SS@SS,................................
....................................;@@#;,.::;..;S@@@@@@@@S+,........,;?,...........+**+%%+*?*:..........,+*@*+*?%%?;;?#@@@@@@@@@@@@@@@@#SS%@####@@?................................
....................................%@@@#:..,;:.:+?#@@@#?:.........,:+%?...:*;......++?++*??;+,......,*%,:*+@:,,:;+?*:;?@@@@@@@@@@@@@@@@@@S%####@##S,...............................
...................................;@##@@#,.,:,;:,;*%#*,.......,,,;**##:,..;?;.......*;+++:%,+.......,+*+?**@#+;;+;*+;;,;#@@@@@@@@@@@@@@@@#?%SS###@#*...............................
...................................%@@@@@@S,..,+:,:;+:::......:+;+*S@@S+;;,.,,,,.:;:;*:+;+++::..,..,+?++??%@#@@*,;:;;:::,:S@@@@@@@@#@@#@@@@#%#S#@#@S?,..............................
..................................;@@@@@@@@S,...,+*:.,:.....:+++*%@@@@@?*+*;;;;,:+?%*;;*:;*:::.:?*;:;*+*%?S#S@@@%:,;:;;:+:;S@@@@@@@@@@@@@@@#S@#@###@?;..............................
..................................S@@@@@@@@@#+...:.......,:;++?S@@@@@@@@#;+++*??S#*?++++*;?+*+**+?#@S####SSSS@@@@#*:.,,;;;::%@@@@@@@@@@@@@@@S?S@@@##?*..............................
.................................+@@@@@@@@@@@@S+,......,:;*??SS@@@@@@@@@#*+:+;;;**;++?+;+??*?%*+*S#S####@#%S@@@@@@@S+..:;:,,,:?#@@@@@@@@@@@@@#%#@@@#S?:.............................
................................,#@@@@@@@@@@@@@@#?+,,,+?%##S%S%@##@@@@@@@%*:**:+*+*?;?*+;?*+***??S?%SS#@#%?S@@@@@@@@@S:...:;::.,?@@@@@@@@@@@#@@S#@@@@S*,............................
................................+@@@@@@@@@@@@@#@#S%%%%#@@@S%%###S@@@@@@@@?%?*?**?*++*+*%+:?%;++???SS###@S%S%#@@@@@@@@@S:..;,.:,..:#@@@#@@@@@@@#S#@@@@S*;............................
...............................,#@@@@@@@@@@@@@#@#SSS%S@@@S@SSSS%S@@@@@@@@%%?+?%#S#%S#%S?:,?%S**?;.+@@@@@@#%#SS@#@@@@@@@S::..:;;...,?@@#S#@@@@@#S%@@@@@?+,...........................
...............................+@@@@@@@@@@@@@@#@S#S%S@@@S%%#@#SS#@@@@@@@@#?S%?%%#S??*++?S%?*++++?+.#@@@@@#S@#%?%%S##@@@@%;..,,:+:,..*@@#?S@#@@#S#?#@@S#++...........................
..............................,S@@@@@@@#@@@#S#%SSSS%S@#SS%??%%###@@@@@#@@@##S?%%#:,,;;:;@##,....+?;++%#@@#%@@#%S@S%S##@@@S*:,..:++;,.+@@#?#@S#@##@%#@@@??,..........................
..............................+@@@@@@@@#@@@S%S#%%%#SS#S%*?;;SS##@#@@@@@@@@@?*;+?S+:*%%S##+###%?*++?...,+S@S#@@@S#S#@@@S####S*;;,,:,;,.+@@#S@@%S#S##?#@##**..........................
.............................,#@@@@@@@@@@@S%S%%##S@##@@*?+:.:*#@@#@@@@@@@%+;++;%SS##@@@@#:#@@@#*+#S*:.,,,;SS##@SS?%S#S%?%?SS::+**;,:,:,;S@S%#S%?#%SS##SSS%,.........................
.............................*@@@@@@@@@@@SSS@#S@#SS?#%??;,...:#S@*#@@@@#;:+:;?#@@@#SS%S@#:#@%+;?##@@#%;::.:?SS@@#S%S##%%%;;?;..,;*%+::.:;?####@#S#%S##SSS*+.........................
............................,@@@@@@@@@@#%?##S###SS+%**?:......;*+,#@%*%,,+:;%SSS#@@###@@%;+::?#@@@@@@##?:..,;#S@@%####%S%;.,,.....:%%+,+:.,,::;*?#@#@SS#S*%,........................
............................%@@@@@@@@#@%%#@@#@@#%*?+??,...........;+:?,.:,+S@#%SS####%%??%?SS?%#@@@#@###S+..,+S##+*?#%:,,...........**:,....,,,:;;++?#S#S%%+........................
...........................;@@@@@@@@@@S?#@#@##%+?***+,.......,:::::;?+,,.;S######SSS+*S##@S@@@S;S##S@@#@@@+;;:::::+;;:;;++;:.........+;...,:;;:*@S#S%S@%#SS?,.......................
..........................,#@@@@@@@@@#SSS@@#?%??*+,........,;+;,;::::::::*SSS@@##S#;;#@@S;;@@#@;+###@@#S*:,.,,...,%@##%%?*???*:......,;+,.,:++;.*@@@##@S%##S*.......................
..........................?@@@@@@@@@#?*S@@%*%??*:.........,?+++;;;++;;,..,.,:?##@?S.S@@@%.,#@@@*:@#@S?:..,;+%+...,;?%##@@#S%%SS?:......:*:,++:+;:%##@@S@S@@S?;......................
.........................+@@@@@@@@@#?S%S#S%?*++,..........+?***+;+*S%?+;,*%+..,;%SS;*@@@?..?@@%:?@?+++,;*%##?,:,...,;+?%S#@@@#SS%+......,;:;+:*:;,+###SS%#@#**......................
........................:@@@@@@@@@S%%S;###%*,...........,+??;,.......:;*;,?#%:...:+***?S;..*S*+*?::+?S###S*;:;*;.....,;+*?S#@@@##?;.......,:::;;;;:*%#@S#%@#%%;.....................
........................%@@@@@@@@%*%@;*##%;,..........,;*+,.....,;+*+;,...,:*S?,.,.,;*+++;:++;;++?S#S%+:,..,::,,.......,+**%@@@@@??,...........,:;+;*@##@#S@#%*,....................
.......................+@@@@@@@#S+%#%++*:,..........:+;:...........,;?S?;,...:?%+*%*:::,,,,:;*S@@@S+,,;;;,.....,........,;+*?#@@@%%;.............,:+@@S#S#S#S??;....................
......................:@@@@@@@@@*%@#?:............,;;,................,*#S+,...:?%?%SS??+*?%#@@#%*:,;;;:..,,;+;:.,;:......,;**S@@@%+...............,+S######@#?%,...................
.....................,%@@@@@@@#?S@*+;..........,.,+:....................:?S%+,...,*%%SS#S%S%@@?;?%,,...:+;::;:...,:,.......:+**S@@@;.................,*%##@@@##?+...................
.....................*@@@@@@@@SS@;...............*;..........,,,..,,,....,;?SS*,....:;++**?%@*,?S*,.,:;;,..,,:+?%S%S*;......,;*?S@#,...................,*@@#@@@%%,..................
....................:@@@@@@@@@#?:...............,%....,;:,...,:::,,;:,,....,;?S#?;:?*+**?%#@S*,;*::.,,,,;?%%?***?S#@@#,.......:*?#@:.....................*@##@@#?*..................
....................%@@@@@@@S;:.................;S,..:,,+;,......,.:,;:......:+?SS?%%#@##@#%?S:.,,:;*?%%?+:,,?S%*::::,,........;*%@*......................+#@%@@SS:.................
...................:@@@@%S%?,...................,#%;:;+;,,,::,,......,.....,,:,++*%#SS?S@@@???%+*##S?;:,,..,,+;::;;;;;,........,*%##,......................;S**@@#?.................
...................%@@@*,+;,.....................?@#%?*++;:,,,,,...........,;+*,;****?*?%#S?*+S@#?:..:;;**;**??%*++............,?%%S;............,,...........,?@@#;................
..................,@@S*..........................,?@@SS?*+:::,,:,,...,..,....,;:.+;:,.,*?S??*%S+,.:;;+??%SS@@###%?+:,,.........,%%%S+............:*?+:..........+@##,...............
..................;#?;............................,?@###%%*;;:,:::,..,::;,,....,::,.,+*%S??+?+,:;+?%?%@@@@##@#SSSSS*;,..,;:;++*%###S,..............;SS?;,........;#@?...............
..................,,................................+@@@#@#S%*;;;;:,,..........,:::.,%SS?++%*:;;;**?%#@@@@@##%%%%?*????++;??S#@#@@S:................,?S%S+,.......:?S,..............
.....................................................;#@@@##@#SS?*+++;::,.,?**+**??**?S?*%@@S%??++++++++*?%%SSS%%%%??%?%#S###@#S#%:..................,??S@S:........,...............
......................,,,,,,,,,:::::::,,::::::,.......:%@@@#S#@@@@S%%??**+:+;+++*****%S##@@%;::;*?*?*+;::,.,,,,,:;;;;;+**%SSS#S%*,....................:%?@@#:.......................
...................,+;;;;;;;;:::;:::+++;+;;:;::.........;#@@@@#####@@@@@##S%%%%%%SS##@@@#%+:;+S@#SS##???*???*:,;??%***???%SS#%*:.......................?%S##%,......................
....................,::;;;;;;::::;++**++**++;;::,:,......,?@@@@@@@##@@@@@@@@@@@@@@@@@@#?++*?%S#@@@#%***??**+*%S#@@@@@@@@@SS#;..........................+%%S##;......................
..................,:::;::;;;;::::::,;;;;;+;;;:,,,,,........;S@@@@@@@@@@#@@@@@@@@@@@@#%+;;*%@@@#%?*+++++++++*?%%%%*%?SSS%?S*,...........................*%%#@@?......................
...................,:+:*+:;;*;;;:;;;;;+;+++++;:,............:S######@@@@@@@@@@@@@@#?*:+%#@@#%?+:;;++;;;;+;++*;;;+*++?++%#S,...........................,SS#@@@%......................
.....................,:;++;*?+;;+*+++;****++*++**+:::,,,,,,.:??%#@@#@@@@@@@@@@@@#SS?SS@@@@#SS%?%%%?**+;+*****???%?%S#SSSSS,...........................*S%%###*......................
.........................,.**+?%S@SS##@##@#####%?*+;;;++++;,,%???%S##@@@@@@@@@#S%%#@@@@@@@###@@@@@@@@@@@@@@@##S%S%S#S%%*+?,.........................,*%%%S##S,......................
..........................;*S#@#SS#@@@@@##@@##@S*+;::;:;;;;;,*????***?SS#@#SS#S#S@#@@@@SS?%S%*?SSS##@@@#S#@@@@@@#S???*+++?,........................:?%%%S##S:.......................
......................:;++*+%S##SS#######@#@@S%*+;;:::;:;;:;:;:++*?**?SSSSS?????SSS##%%%?%S%?*%%S%%%%S#SS%SS#S#@@S#+;++++*:.....................,;?%%S#@##S:........................
....................,,,:+%#S%?*#@@@SSSSS####@#SS%+;;::;;;,..,*;::::;+##%%%?**S??%%?%%%?????*+**?%??%%%%%SSSS%?%SS%*;+++++*:......,:,.......,,:;+?%SS###S%+,.........................
....................+*+*S@@@##S#@@@@@@@####%%%S@#S*;;;;;;,,.,+;;+;+*%%S?**???S%%%?*+***???*++**??**++***??%%%%*?%SS?*;;;+*:......,;?%%%??????%%%?SSS#%*;,...........................
.....................,+?SS@@#@@@@@##@@@@#@##S%#@@#%%;;+;,;;:,++???%%??%%??%%%?%SSSS#%%%%%?%##@####SSS???***?S%+***%S@?;++*;.........:+?%SS#####?????+,.....:;:,::::.................
.................,..:,::..;+*@@@@@@@###@#@####@#S#S%++?+:+*;.+SS%?*?**????%%#S%%S#S#SS%%%?%S@@@@@@@@@@@#S%?*%%;*?*S@#S?+++:.............,,:::::,,.......,:,,::,:,...................
.................+:,*,:++....:?#@@@@@@###@#S##@@SS?%%*++;;::+?@S??*%%?%???S%#%?????%??%S%?%%S##@@@@@@@@@@##S%?***%S%%?%S**:................:;;::,,,,,,:;:,,,:::;,...................
.................,;;;+..;;;*;*%###@@@@#####SS##@SS?*::,,:;+**?#?**+%%%%%?**++;++;;++***??%%?%??%#@@@@@@@@@@@@%%?*#%+???##S?+:,.......,::;+?%%*++;:::;;;;:,,,::::,...................
.....................:;,;+:S@@@@#S#@#@@##SSS%#%**+;:.,;**?????S++*%???+;++;:,::;:;;;++**???%%**?%#@@@@@@@@@@@@#?%%*+*??S@@@#%?+:.,:;;++;;;?%%?*??***?:;++:,,;;;:,.,,................
......................,::;+%*;%??SSSS#@#SSS*%S;,..,;**?%%S%??*%*+S%*%:,,,,,,;;;+;;;;;++**???%??????%#@@@@@@@@@@@%%?*;;;%@@@@@S%%**+;+*??**+%S%%%%%*?*++??*+::::;;::,................
........................,,:;**%%S####S#@#%?%%?+,,;**??%%%?*+;::+;;?%:.........,::;::;++;+**??**??%%?%#@@@@@@@@@@S??S?+*@@@@@@S%%?%S#@@#S%SSS@#SSS%%#%????*:::::,..,,................
......................,,,+*+**%%?SS%%#S##%?%*++;***?%%??**;;::::,.,:.....,......,:;:;;;+;;+****????S%?SS@@@@@@@@@@%S@%@@@@@@@@#SS%??S@@@@@@@@@@@@@@@#%%+:.,,,,,,:::,................
......................::::;*%S?%%S##%%%%##S%??**%SSS????*+;:?+;,:+:.:+.,*++.+,.::.,;;:+*+;:;***?????S%%SS#S@@@@@@@@@@@@@@@@@@@@@@@%?*?S@@@@@@@@@@@##***+**%;;+::,...................
......................,:;;;+#S#%S?#@######S?*???SSS%??**+;;,*+;.+*:,*,.+*:,:?::?,,;**:+**;;;***???%%S#SS##@@@#@@@@@@@@@@@@@@@@@@@@#S%%??#@@@@@@@@@@%?**?*++;,:.:;+;:,...............
...................,,,::;;;;;??+%S#@@@@@#SS+;+%%?%%?*++?++;;::,,:::,,,,:,..::..:,,:,;;+**;;+****??%%%%SS##@SSS#@@@@@@@@@@@@@@@@@@@@@@##%*%@@@@@@@@%;;*+*:::,.,+:+;:,................
...................,;:,,,,+??%SS#@@@@#@@##?**?S#S%?+++?;+;*?+:,?,++.++....;+++++;::+:;++;;;;+**??%%#S%%S@@@@@S#S#@@@@@@@@@@@@@@@@@@@@@@#S%SS####@#?%?%?*+:::::;+,...................
.....................,::++%#@@@@@@@@@@@@@@######%**+;??*?;**+;:*::.,?:,,,:*;+:?+;,%;+;+++++**??%%###SSSSS##@@@#@#%%S%%SSSS##@@@@@@@@@@@@@@@S???*???%???*++;;+,,,,,..................
....................,:;;;;;;++*%SS%###@@#####S%?**+**;;*****+*+++*++;;++++;++;;:,.,,,,:;;;;;++;+**+*++*++*???????????*????%S%?%?%S##S@@@%*%%#S%%?*+;;:;+++;+*??++;..................
...................................,,,::,,.........,,,,,,,,,,,,,,,,,,...................,,,,,:;;:;;;;;;::++;:::,,,.........,.,::+*?**?%?:.,,++*+++++++;;....,,,,,,..................
...................................................,.......,..............,,...................................................,....................................................