[Sammelthread] AMD Dualcore Sockel AM2 / AM2+ & DDR2 OC-Sammelthread (3)

Status
Für weitere Antworten geschlossen.
alles klar, das wollt ich nur wissen, aber OC mäßig hat sich nix verändert oder?! weil 10°C ist schon echt heftig
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
cpu war danach kühler und dadurch geht mehr v-core und er desshalb rennt er jetzt anstelle von 3300 bei 1,400V mit 3410 bei 1,475V
 
Zuletzt bearbeitet:
Bei mir wurde die Differenz größer. Vorher -2/+2 und nachher -6/+1. Die Differenzen allein sagen nichts über einen guten oder schlechten IHS aus.

Du kannst das höchstens testen.

idle temps core 1/2
load temps core 1/2

Und dann die Differenzen vergleichen. Wenn die weit abweichen, dann sitzt der IHS mit hoher Wahrscheinlichkeit schlecht. Bleiben die Differenzen aber idle/load ungefähr gleich, dann sitzt der IHS wahrsch. gleichmäßig drauf, aber die Coretemps zeigen eben einfach Schrott an.
 
Das komische is, bei den ganz neuen 65nm kommen ganz brauchbare Temps raus, aber sie sind bei allen Cores immer gleich, bei 4 Kernen recht unwahrscheinlich oder? Wahrscheinlich gibts nur eine funktionierende Diode oder so :hmm:
 
jo das is wohl wahr, aber is schon seltsam dass AMD da kein Interesse dran zu haben scheint, ich mein selbst zu Sockel A Zeiten ließen sich schon anständige Temps auslesen, aber ich glaub das war per Boarddiode wenn ich mich recht entsinne.

Naja btw. mal noch nen Bild von meinem System mit dem Abit, finde das Baord bis jetzt echt saustark!

=> Klick

hier mal noch nen Temps. Screen Sensoren
 
Zuletzt bearbeitet:
@Wishes:

Beziehst du dich auf Techis Brisbane? Ist mir auch aufgefallen, da er ja unter load ~45°C Coretemps ohne Mütze hatte.

Evt. hat AMD echt nen fehlerfreies Stepping nachgeschoben.

@deluxer:

AMD hängt Intel da seit Slot Zeiten deutlich hinterher, leider. Denen scheint das wirklich egal zu sein, was sich aber auf die komplette Temperaturproblematik bezieht.

Beispiele:
Athlon Sockel A -> Kühler/Lüfter Ausfall -> Qualm
P III -> Kühler unter Volllast runter -> freez / CPU schaltet ab
Ahtlon XP -> Siehe Athlon ... später dann wurden die Boards dementsprechend nachgerüstet und er war auf P III Niveau. Intel bot zu dem Zeitpunkt den P4 an.
P4 -> Kühler im Betrieb runter -> LÄuft weiter, auch unter Volllast. Der Takt, die Taktzyklen usw. werden gedrosselt, damit die Temperaturen in einem unkritischen Bereich bleiben. Sobald man den Kühler wieder aufsetzt, gibts wieder Vollgas.

Bei den Temps das gleiche Spiel. Die Diode im A-XP, die dort endlich mal realisiert wurde, wurde von fast keinem Board ausgelesen. Die Boardtemps lagen je nach Board z.T. 20°C auseinander. Die Coretemps beim A64 haben noch nie gestimmt und waren nie Kalibriert, obwohl AMD ab der Ref F die Möglichkeit dazu geschaffen hat.

Wieso sie es nicht machen ist mir ein Rätsel. Das einzige, was sie tun, ist die Abschalttemperatur "einzustellen". Sie halten genaue Coretemps wohl für überflüssig. :(
 
So lange er ohne Probleme läuft sind mir die Temperaturen recht egal. Okay, sollte schon alles im Grünen Bereich liegen.

PS: Beim Windsor F2/F3 sind die Temperaturwerte doch recht gut oder?
 
@ Mr.Mito
Jo, da isses mir zum ersten Mal aufgefallen und dann hab ich's noch bei neuen Phenoms gesehen.
 
Kein "Brisbane G3", sondern einfach nur ein minimal überarbeiteter G2. Ich glaube nicht das AMD dafür ne Meldung raushauen würde.

PS:
Beim Windsor sind sie auch unkalibriert, obwohl es möglich wäre. Ist dort halt wie zu Sockel 939 Rev E Zeiten. Kommt also oftmals ~ hin, aber nicht immer.
 
X2 4800+ Brisbane G2 @ 3000mhz (240x12,5) @ 1,275V
Erfreulich: Der Geil Valueram macht die 240MHz mit, ich brauche keinen Ramteiler.
Kühlung: Popliger Silent Boost K8

:xmas::xmas:
 
coole sache... dafür das du so ne recht "eiinfache" austattung hast...


welches Mobo fährst du?
 
ich habe gerade eben die OCZ PC6400 CL 3 edition von der post geholt und eingebaut

auf dem HS steht CL3-4-4-15

hatte ja gehofft das sie besser gehen als meine kingston, aber denkste

also die OCZ sind von den taktraten bei fast hargenau den selben autosettings die der pc einstellt fast hardgenau gleich

3-5-5 @ 2,5V geht bis ca 460

5-5-5 @ 2,5V geht bis 550 und kein mhz mehr

als wenn ich die selben rams im board drinnen hätte!

interessant ist aber, das im spd 2,4V für 3-4-4 bei 400mhz steht

denkd a brauch ich mir dann auch keine grossen sorgen machen, wenn ich 2,5V drauf gebe



hier der screen von den kingstion wenn man rein Cl5 und tRP4 einstellt, den rest auf auto lässt und ins win bootet




hier der screen wen man bei den OCZ Cl5 einstellt und den rest auf auto lässt und ins win booten





denk die beiden kits passen wie die faust aufs auge zusammen, wenn ich sie zu viert laufen lasse, aber mit nem schnellen DDR2 kit ist wohl nichts :-(
 
Zuletzt bearbeitet:
Ich denk nicht, dass es am Ram liegt..

Wie scheiße haben denn die Deutschen gespielt, Mann oh Mann :grrr:
 
woran liegt es dann wenn nicht an den rams?

mach dir nix aus dem match. gegen at gewinnen sie dafür fix!
 
Zuletzt bearbeitet:
die OCZ hab ich nochnicht einzeln getestet.
die kingston schon

ich evrmut irgendwie als wären unterm hs bei beiden rams die selben chips, da ja beide quasi mit den selben timings und subs rennen.

muss mal testen ob sie 480 mit dei selben straffen subs schaffen wie die kingston.
falls ja sollten es ja die selben sein.
 
keine fetter kühler, kein extrem teurer ram (der nachher eh nix bringt :P) etc.

heißt aber net, dasses schlecht is ;)
 
@Techi:

Wenn du unbedingt die 600MHz willst, brauchste gute GMH/GKX oder sehr gut selektierte ProMOS. Ich glaube kaum das Elpidas für diese Taktbereiche zu gebrauchen sind und wenn dann auch nur mit sehr guter Selektion. ;)

Zu den 512MBit PSC ICs kann ich nichts sagen.
 
600+ wäre schon ne feine sache mit cl5 im anbetracht das vileicht noch cpus auftauchen die 3,5+ schaffen um die zb auch mit dem 11 multi auf 1:1 fahren zu können

oder welche die cl4 mit 500+ schaffen

fragt sich blos woher
 
Partriot Fan? :)
Ich denk die 600 sind auch mit Elpidas zu schaffen. Leider passen die Reaper net ma in den zweiten Slot -_-.
 
Jop, hab ja jetzt auch welche und das sind nicht die ersten... :d
 
600+ wäre schon ne feine sache mit cl5 im anbetracht das vileicht noch cpus auftauchen die 3,5+ schaffen um die zb auch mit dem 11 multi auf 1:1 fahren zu können

oder welche die cl4 mit 500+ schaffen

fragt sich blos woher
Wenn du dir 1200er mit GMH/GKX kaufst, sind die 500+ mit CL4 ja garantiert. Ich hab ja auch noch 2x 1GB GMH hier, die 533MHz mit CL4 rennen. :)
 
Nur muss er dafür aber auch etwas mehr Geld berappen. 120€, aber wenn man mal bedenkt das 120€ nix für guten Speicher waren, dann kann man das auch verkraften. Ich hab meine 180€ damals bezahlt und hab mich riesig darüber gefreut. :fresse:
Jetzt bekommt man die gleichen für 50€. Ist aber nicht sicher ob noch GMH's verbaut werden. Eher nicht....
 
Zuletzt bearbeitet:
Test:

Code:
@H$$X$$$%$%%$$$%%%$H#H%$$#@$%%HM@%%$M%+$H%XH/+%%+%+%%+++++++++++++++%%+++++++++++/++++//;;;;;;;;+########MM###MMMMM########################M#MMMM####MM@MM#####M##MM####MM#MMMM#MMM##MMMMMMMMM#####MM@MMM#######MMMMMMMM@#MM####MMMMMMMHHMMMMMM#####MMM#@HMMM##M#MMM#MM@@@@MM#MM###@MMHMMMMMMM#MMM@M@M@H@MMMM@@@M#M@@###MM@#@@MMMM@#M@@@@@@#M@H@@@@MMHM@MHH@@HM#MM
$$$$$$$$XH$$XH$$%%$H@H%%%MH%%%%%@$%H#$+$X+%$+%%%++%+%%++++++++++++++++++++++++++++++//;;;/;;;/;/##############MMMMM#################M#M########MMM######@@M#MMMMMMMM#########MM@MMMMMM##MM###MMMM##M@@MM#M###MMMMMMMMMMMM@HHHMM##MMMMMM@@###MMMM######MMMMMMM#@@M#####MM@@@M###MXM###MMM#@MMM@MMMMM@HHMM@@HX@@@@@@@M@H@M#####M@M@MH@###M@MMM##MM@H@@MMMM@H@@@@@HM#
$XHX@H$$@#X$X@%$%%HM@H+%$@$%%XMHX%$H$%%%%+%%%++%+++%%++%%%++++++%+++/++++++++/+++++///;/;;/;///M#############MMMMMM###############MMM##########MMMMM######MMMM####MMM#####MM#MMMMMMMM###M#####MM@MMM#M#MMMMMMMMMMMMMMMMM##M@HM#M#MMMM##M@M###M@@MMMMMMMMMM##MMHHM##MM###MMMMM#####@HHX@M@MM###MM#MMMMMM@@@@M@@HHH@@@M@@X$HM###@M#@@@@@MMMMHXX@M@@@@@MMMM@@M@H@H@HH
XM#M#H$X@@$$HH%%%$@HH@%%%H$%%%$$%%%%++%%+%%%%+%%%%++++%%++++++++%+++++%++/+++/++++/////;;//;;;@##############MMMMMM##########MM######M########MM##MMMMM#####MMM#####MMMMMM###MMM##M######MMM#####M@MMMMM###MMMMMMMMMMMMMMMMMM@M##MMMM##MM@XHM##MHHMMM####MMMM##M###M@M##MH@MMMM######M@H#@HHM##M@MM@#MMMM@@@M#@@@HX@MMMM@HHHM#####MMHHHX@M@@@HXXMM@@@@MMMM@HH@@@XH
X##M@XXMMMX$MHXX$XH%$X%%%$%%%%+%%%%%%%%%%%%%%+%%%%+++++++++%++++++++++%+++/+++++++///;;/;////M###############MMMMM###########MMM######MMM#####MM##MMMMMMM####MMMM#####MMMMMMMM#####MMM###MMMMM#####@@MM@@MMMM###MMM##MMMMMMMMM@MMMMMMMM##MM#MMM##M@MMHMMM#MM@H@#MMM@MMMMH@@@@@MMM#####MMM##M@H@#MM##M@M#M@M@@H@M@XHXH@@@HM@@@@H@M####M@HH@@H@@#@M@@MM@MHH@@HHMMM@@
H@H@@$XHX@$$@@@X$$%%%$%%%%%%%%%%%%%+%%%%%%%+%+%%%%%+++++%+++++++++++%++/++++++++///;;/;//;;+################MMMMMM###########M#MMMM##############MM###MMMMMM###MMMM#####MMMMMMM######MMMMMMMMMMM#####MM@@M#MMMM########M#MM@MMMMMMMMMMM##MMM##M@@#M@M$@MMMMMMMMMMM###@HXHXH@@M@@HMM####HX@@@##MHMMM@#MMMMM@@M@@@M@HHXXH@@M@@@MM@HXXX@@MMMM@M#@@M#M$%X@MH@@MMM@H@MM
@H$XH$XX%X$$$$$$$$$%$$$%%%%%%%%%%%%%%%+%%%%%%%%%%+%%%+++++++++%+++++++++/++++////;;/;;;;/;%#################MMMMMM###########M###M@M####MM#M########M###MMMMM###MMMM######MMMM##MMMM###MMM##MMMMM######MMMM###MH$++//+$XHMM##M#####MMMMMM#M@@@##M##M@M#@##MMM@##MMMM#MM@@X@@@MMHH@@MM@M##MHHH$M#MHMMMM@MMMM@HHM@HMM@H@@H@M@$XXH@M#@H@@MMMM@H@#M@HMM#@HXMMM@M###@MM
XX$X$$$$$$$$$$%$$%$%%%%%%%%$%%%%%%%%+%+%%%%$%%%%%+%+%%++%+++++++++++++++//+////;///;///;;X##################MMMMMM##########MM####MM####MM#M##MM########M###MMMMM##MMM######MMMMMMMM#####MMMMMMMMMMM######M$/=,=,==-::=--=;%M###MMM#MMMMMMM#M@@M####@M###M##MH@MM###M#@@@@MMMMM@MMM@@@H@MM########@MMM@M@MMMMM#HH@M#MM#MMHHMMM@@@MMMMMMMMMMM@@@HHHXH####MM@XHH%@X@
$$$$$%$$$$$$$%$$$$$$%%$%%$%%%%%%%%%%%%%%+%$%+%%%%++%%+%++++++++/+++/++/++++///+///////;$####################MMMMMM##########MM#######M####MMM################MMM##M##MMMM#M##M@@#MMMMMMMM#MMMMMMMMMMMM##$;:-:::;:;::==:::::=-;H##M##MMMMMMMM#MM@@##M@@MMM##MM##M@@@MMM@X@#M#MM@@MMMM@M@@@HHHXHM#M##M@MM@@##@@M#MM@@MM###M@@@M@HM@MMMM@MMM@##MM@@@@M@H@@MH@M@@H@@%X
$$$$$$$$$$$$$$$$$%$%%$%%%%%%%%%%%%%%%$%%%%%%%%%%++++++++++++++++++%++++++/+++///////;+@#####################MMMMM###########M########M####MMMM############MM##MMM####MMMM@HM#MM#####MMMMMM###MMMMMMM#M%-=:;:;;:::::::;::=::;::-:M#MM##M#MMMMMMM@@@@@H@@@MMM###MM##HHM@@MMM@@M##@@M@M#MM@@M@@XHHM#MXH#@MM@$=H#MM@M####M@@MMM@HHM@@MMH@MM@@$%$@HH@@MH$MXHM@HMM#M@M#M
$$$$$$$$$$$$%%$$$$$%%%$%%%%%%%%%%%%%$%%%%%++++%++++++++++//+++///+++++/+++/+++++///%@######################MMMMMM###########M###############M@M##M#########MMMMM#######M######MMM#####@MMMMMMM#MMMMM%-:=::::=::;::::;;:::;;:;::=-$#M#MMMMM@MMMMMMMMMMM@@@MMMMM#M@@M##@MMMM@@MM##M@@MM@MMMM@H@HXH##X##MMMMM@@@@##M@@M##@@M##MMMM@HXXH@MMMHMMH@@M#M##MH%XXMM@@##MM@M
$$$$$$$$$$$$$$$%$$$$$$$%$%%%%%%%%%%%%%%%%%+++++%+%+++/+++%++++/++++++++++//+///;/X#########################MM#MMM###########M##########MM####M####MMMM#####MMMMMM########MMM####MMM######MMMM####M$==::;::;::::;:;:;=;:;:;::;:;::-%#M##MMMM@MMMMMMM###M#MMMMMM@###@M##M@MM@MM@M@#M@M@H@@@H@X@HHHXHM##M@X@####MX@H##@XXM#M#M@MM###M@@@XMMMH@@M@@MMM###@HH$MM@H@MM#M
$$$$$$$$$$$$$$$$$$$%$$%%%$$%%%%%%%%%%+%%%%%++++++%++++++++++++++++++%++///;//+XM###########################M@MMMM###########M############MM#########MMMM#####MMMMM####M##MMMMM###M@MM#####MM####@:====:::::::::;::;;::=;:;;;;;;;::=%###MMMMMMM#MM@@M##M#MMM@@@@@@M###M@##M##M@@@HMM@HHHMMM##M##M@@HH####MH@M##HH@H$M#M@XX@###MMMMM#@M@XX$X@#M@@M@@@M##M@HH@MMM@@XM
$$$$$$$$$$$$$$$$$$$$$%%%%%%%%+%%%%%%%+%+++%+++%++++++++++++++%+/++;+%+$XH@M###############################MM@M#MM##########MMM############M#M#M#######MMM##MMMMMM##M#MM####MMMMM###MM@M#######M/:=:=:::;=:::=;:::/:::;:;:;:::;;;;;;=H#MMMMM#MMMM@@@MMMMM#MMMM@@@@@@@M#####M###M@@@H@@MMHH@@MMMMMMMM@HM#####@H@###MHHXH###@XH@M@H@@#M@XH@H@@@@M#MM@@@@M#MMM@@HHHH%+
$$$$$$$$$$%$$%%$$$$%%%%$%%%%%++%%%%%%%%%%++%++++++++++++%++%++%$H@@M######################################MMM#MMM##########MMM####M###MMMMM######MM####M####MMM@M##MM#MMMMMMMMMMM###MM@MM###M%=:::;=;:::;::::::::::::;;:;;:;;;::::;;:M##MMM#@H@@@@MMMM@@MMMMMM@@@@@HHM##MM@MMMMM#MMHXM#@H@@MM##@$HMM@M@M####MH@M###MH@%XM###@H@@@H@@MX@H@M@HXH@@@H@@@M@MMMM#MHH@##
$$$$$$$$$%%$$$%$$$$%%%%$%%%%%%%%%%%+%%%%%%%++++++++/+++%XX@M#############################################MMM##MM###########MMM########MMMM#######MMM###########MM###MMMMMMMMMMMMM##M#M@M@#M+===:=;;:::::::=:;==::::;:::::;:::;;;:;;;=;###M##MH@@MMM#MMMMM@@M@M@@MM@@HHXHH@@@@@H+H@M#MMMMMMM@MM@HM#MM#M@@HXXM##XH@@M##MMMX$MX$@#@@M@HM@@@MM@HX@HMMM#@@@HHHMMM##M@HH
$$$$X$$$%%%$%%%%%$$%%%%%%%%%%%%%%%%%%%%%%%++++%%%$XHM####################################################MMMMM#M###############M########MM#M######MM######MM##########MMMM##MMMMMMMMMMM##$:-:;:=:::::::::::;=:::::=;=:::=::::::;;;;/;-$#MMMMMMM####M@M#MM@@@MMM@@@MM@HXXH@MM@M#MMHM#MMMMMMMMMM%$MMMMM#@@@HH@HX$XHHHHHM#######HH##@@X@@M@@H@MMMHX$HMXM@MM@@H@M@@M@@
$$$$X$$$$%%$%%%$$$%%%%%%%%%$%%%%%%%++%%%%$X@M###########################################################MMM##MMM##################MM####MM###MM####M######MM#####MMM####M@@MMMMMMMMMMM#H;:;:::==;;:::;::=:==;::::::;:=::===::;;::;;;:;=M#MMMMMHMM####MMMMMMM@MMMMH@M###M@HMM#MMMM##M##M@M##@H@M#M@@@M##@H@@@@$XX$$XX$%$%XHH@M#####MMM@M@MMM@@@MM@HXXHH@MM#M@@@@@M#
$%$$$%$$%%$$%%$$$%$$$$$$%%$%$%+%$XXXH@M#################################################################MMM##MMM##########MM######M###MM#MM##MM######M###MMM###M###MM####MMM##MMMMMM#@/=::::=::=;/::::=::::=;:=::::=::==::::=::/:;;::/=:#MMMMMMM@MM####M@@MMM@@@MMH@@@##MMM@MMMMMMM####M@@###$M@MMHMMMMH@MM@M@@@HHH@H$$$++:/+%H####M#@@@%X@##M@HH@HHM@@MMMM#MM@@@M
$$$$$$$$%%$$%%%$$$$$$$$$$$$H@MM#######################################################################M###H@#MMM###########M@M###########M#MMM######MMM########M###MMMM######M##MMMM+::::;:;=;:::::=;:::;=;:;:::::::==:=::::=:;;:;;;;/;-$#MMMMMMH@MMMMM##@H@M@H@@@MMMMMM##MM@@@@@@@@M@M#MHMM###H@#M@MMMMMMMMM@#MMXH@HHXX$%XX$$$%H@MM@MMM@H$XH@@M#####MH@MMMMMH@@@M
XX$$$$XX$$$$$$%$$$$XXHM###############################################################################H@M#@M#MM#############M####MMM#########M#MM####M#M#######MMM###MMMM##M@#####$:=:;:::;:;::=;:::/;::;::::=;::::::::==:::::=;/:://;;;-M#MMMM#@@MMMMH@###MMMMMHHH@MMM@@MM#M@@MM@@MM@@@M##@@XH#MHM#@X@MM##MXXHH@MM@@@##M@@X@HHXX$X@HM#MH@####@HHH###@H#@$$HM@@HHH
XX$XX$$$$$$$XH@M#####################################################################################M@MHMHM#MM###################MMM###MM#####MM######MMMM#####MMM#MM#MMMMMM@M#@;=::;:=:::;;;;:::;::::::::::::;::::=:=::=::::;::;:;;:/:=:#MMMM##@@MMM######M@H@@M@@M@MM@M@M##M#MMMM@@@@@XHM#@@HX#@HM@HMM@@M@@@@@M@@@HHXHH@HMHHHHXHH@HH$%+XHM####M@X@M##MM@HHH@@MM
$XX$XH@@M############################################################################################@M#MHH##############MMM#########MM#MMM#####MM####MMMM#MMM####MMM####MMM##@;-::;:;;:;:;=;:::;::;::::::=::::::::;:===:::::::::;;;;/;/:=%#MMMMMM@MMM@@####M@@@M#MMMM@@@MHHMMMMM@MMM@M@@H@HHMMM@M#HXMHHHXX@@M#M#M@@MM@H@HHHHHHHHXH$H@@M##@HHHM#M####@XHMM#M@H@#MM
@M##################################################################################################MHM###M##############MMMM##MMM####M##MM#####MMM###MMMM#MMM####MMMM####M#M/=:;::;:;::::;;::;::::::::;:::::=:=:::::;;=::=:=:;/;;;;;;;;;;-@#MMMM#MM#M@H@@MHH@MM#MX@M#MH@@M@MMMM#MMM@@M@HXHMMHH@##@#@@@@@X@@H@X$@@@##MM##MMH@@M@HHHHXXXHHH###H+X@H##M##M@H@##MM@H@
###################################################################################################M#M##M###MM###########MMM##MM#MM###MM#######MMMMM###MMM#MMMM#MMMMMM#MM##$=;;=:::::::::;=::::::::;:::::==:;::;:;::;=::::=:;::=:;:;;;;;:::=#MMMMMMMMMMM@%XX@HM@M@M@M#M##MMMMMMM##MMM#MMMM@HHXHHXM####M@@MMH@M@H@@@@@M###M#M@@@M#MMHHH@@H$$+%M###HXHM#MH@#@HHM#M@@
#################################################################################################MMM#####M#M#M############M#M#####MM##M###########MMMMM#M###MMMMMMMM##M##X;;;;::::;:::;:::;:;;::::=:::::=:;::::==::=;=::::==:=+:/;:;;:;;;:;=+#MMMM#MMMM@MMM@@H@M@MMMMM##M@#XX@@@MMH@M#M#MM@@@XHXX$$XM##MM@H@MM@M#@M#@@@MM$H##@@@@@HM@@@HXXH$$X@HM#MM@X@##HXM#H%@MM
################################################################################################MMMMMMMMMMM###################M###M#MMM###MMMMM#####MMMMM####MM#MMMMM##@/=::;:;::;:;:;:;;::;:=;::::;=;:::::::::::=::;;:::::::;X::::;;/;:;;::-HMMMMM#M@M@MM#M#@#@M@MMMMM###MH@XHM@@MMMM####@@X@#@H@X$%$XHH@MM@@HX@##M###MXX$$HM#MMHXH@MM@@@HHHX@MXX####MHH##X%@#MX@
##############################################################################################MMMMMMMMM#####################M###M#MMM##########MM#####MMMM####M#MMMM#M+=:::;::;;::;:;;::;:::;:;:::::::::::::=:::=::::::::=::::;:;:::::;:/;;;=-#MMMMMMMM#MM@@M@MMMM@M@@MM#M##M@@@#MMMMM@@MM#MM@@M@XHH@@@HX@@@@H@HXH@M#####MMMMMMHM###MMM@M##@HXM#%$$@####M@M##H$X##
##############################################################################################MM########################M##M##M######MMM#####M##MHM####MM#M#########%::;:;;;:::;;;=;;::;:=:;:::;;::::::::::;=/:=::==:;:::::=:;;=;::;;;;;;:;;/-;#MMMMMMMMM###@H@MMM#M@H@MM##M####@@##M$@HHHM####M@H@HHHHXXHXHH@MMHHX%HM######MM###@XH###MMHXM#M#$%$H@HHM##MH@####@$
########################################################################################################################M###MM#####M###MM####MMM##MM####M#####M###H/;;:;;;;:;;:;:;;:::;:;;;;;;::::=;;::::::::;=:=::::=::=::=::::;;;;;;;;/;;;;=,X##MMMMMMMMMMMM@@MMM@M@@@@@M#####M######HH@@M##M#M@@H@@@HHH@H@HMMM#M@XXXM@M####HH###M@HX@#MHHHM#@@HH+$HH$$X++%$@###
########################################################################################################################M#####MM#############MMM###M#MM######M##H;/;;;;:;;;;;;::;:::;::;:;;::;;::::::;=:::::=:::=:::;=:=:::;::::;;=;;:;;;;;;;:=-###MMM#MMMMM##MMHHMMM#M@@@@@MM##@@@######@H@@M@###MMHM@HH@HXHHHXH@##M@HMX$HMMMM@XM######@@M#M@@M###HHX%%$$%$$+%X@#
########################################################################################################################MM#####M@M##########MM#M###M#######@@#M/;:;;;:/:;;;:;::/;:;;:;:;;;;/;:;:;:::;;:::=;:;::::==::::;=::::;:;=;:;;;:;;;::;;=-;#MMM###MM$MMMM#MH@@@M#M#M@@@HMM$XH@HM######MMH@M####MM@HHHMMMMH@@@MM#M@@###HMMMMMX##MMX@#MHHMM#MM@@HM@X$$X@HHX$%$
#######################################################################################################################MM##MM####M@M###########M##M#####M##MM$:::;;:;;/;;;;:/;;;:::;;;::;::::;;=/::;:;:::::=::=:=:::====:::;==:=:;;:;::;/;;::::=,X###MM#MMMM@H@M#MM@H@MM@#M@@@@#H@HXHM@HM####MH@@%+$$X@MMHHM@M@@@@MXHM#MM@@M##MXHMH@@M##@X@MMMX$@#M@HMMM@H$H@XX%X/
#######################################################################################################################MM####MM####MMMMM#########M##MMMMM##X:::;;:;;;;;;/;;;:;;::;:;;;;;;:;;=:::/::::;:;::::=:::::==:;==::::=:::::::;;:;;;;;:;;:=-MMM#MM#MMM@H@@##M@MHH@M@@MM@H@M#M@H@#X$X@#MM#M@@M@$HMH@M#MMMMM@@MMM@@@HH@@X@####HMH%%@###@%$##@XH##@HH#@@X$XX@@+
#######################################################################################################################M######MMM####MMMM############MM##H/;;;;:;/;;;/;;;;:;;;;;;;:;;;:;;;;=:;;:;:;;:::::::::::==:=:=:;=:=::::::=:=:;;::::;;:;:;==;#M##MMM#@@MMM@MM##M@@M@MM@MM@MMMMMMMHHMMXMH##M@H@##@@#MM@MM##MHX@@M@X@@@HHXX@#MMM##H%%H###@$X##M$XM@HMMMMX%$%X%
######################################################################################################################MM###MM###M######M#M####M#####M##@+/:;;;;;;;;;//;/:/;;:;;:;;/:;:::;;:;;;;:;:;;:;:::::::::::=:::::===:::=::::;;::=:::;;;;::::-X#M#MMM###MM@HMMMMMM@@@@@@@MM@@H@@@MM@@M###M##H@X@@###M##@HMM#MMH@X@@H@HHHH@HH###@M##MH%H@##MH$@##H@M@$X@@HX$$H
######################################################################################################################M@M###M@M###M######HMM##MMMM####+=;:;/;;;;;/;;;/;:;;;;;:;;:;+;:/XX/:;:;:::;:::::::;:::::::::::==:::==:=:/::;:==:;=::;;;;::=;-,@MMMMMM###M@@H@@@MMMMM@@MMMMMM@@@MM@@@@@@M###@H@@@@@@M####MHHMMMM##M#@HH@H@@++%M######XHHXH###HXX##X@@H@H@@HXX
########################################################################################################################M#M#M#MM##MM@####MMM####MM##$::;;;;:;;;/;:;/;:;;:::=;;/;;:;;%$$X/::;=;;;:::;::::::::=::::=:::::::::;::=:::=:::=:;=:=::::=:==;##MMMMM#M##HH@H@@H####MM@H@@MMMMMM@@XH@@HH####MMM@XX/%M###M#@@@M###MMM@@@H@HH$//+/+$M@HX%%XHM##@$M#@@MXHHH@@H
##########################################################################################################################MMMM##MMMM@M#####M######H;;;:;;;;;;;;/:;;;;::;:;;;;;;;/;:X$//@$:;:;:;:::=:=:;=:;;:=:::::-:;=======-=::=;;::;::=:=:::;==;::,%##MMMM#####MM@HHM@H@MMM@@@@MM#M@MMMMMM@M@@@H##@MMHH#MHH@M######@@M##M#M@@MM@@HH$$%%+%$HH+/+$XH####@XX@$XXHHH
############################################################################################################################MMM##M##MMM#####MMM#M/;;////;;;;;/;+;;;;/;;;/;::;;;;;;;%+:;$+=:;;;;;::;::;::;:;:::::====::::===::==::::===:==::::=;::::=:,H#MMMMMMMM@MM#M@@HXHM#M@MHX@#MMMMM####M@@@%XXXH@HMMHM#M@#XM##M###MH@M@M@MM@H@H@@MMHX$XHMH$%%/%%+X@##@$@MM@@@
######################################################################################################################@MM#####MMM####MMMMMMM##M+;;;;/;;/++/;;;;:;;/;:;/;//;;;/X$;:;;;;+X:::;::;::;;:;:;::=::;:::::=======;:::=::=::::;::::;::::::=::==:##MMMMMHMMMMM#@@@HH@###H@XH###@HHM##MMMM@X@H@HHHXMMM@H###H$@##M###M@XHMM@HX%++X@HH@@H$$HHH$$//$$;/X@XH@H@M#
######################################################################################################################MMM@M####MM####MMMMMM##$;;;:;;;///;;//;/;;;;;//;////;/;/%+;/;//;+%;$/:;;;:;:;;;=;;::=:::::======:::-===::;=:=:::=:::==::::;:=:==,$#MMMM#@$H@MM##MMM#@##M####@MH##@$H@#MMMM@@XX@X%XHXX@X%HM##$HM##@H@M##HHMMH@H$$++$HH$$XHXHXHHH%X@H%+H@@H%$@
##########################################################################################################################MM####MM#####MMM#H::::/:/;//;/;;/;;/;/;;/;//;/;;;:;$$+:;/:::HX+$;;/:;;/;::;;=;::;::::=:=====::=::=::==:::=:==::=;=:::;::=:;==-@#MMMM#@@@@@HM###HHHHM@M@#MXHH@M#MXHHH@@M@XHX+XXH$XXX@H@@HXXX$@##@HH@##$H@@MMHXHX$H$%X$HXX@HXXXXMMHX$X@M@+
#################################################################################################################################MMM#M###H/;;;/;;;////;/;+//;/;/;;;///;//+/;+%$:;;;;;%H++::;;;:::::::::::::::===:==:=:=:-==::;=:=:===:::::=:::::::;:=:=-=#MMMMMMM@HHH@MMM@XHH@@X%@#M@H@@M@##H$@XHM@HX@M#M@XXX$HMMM@H@XH%@#@H@@##@@MM#M@HH$X@@@$XHXXHHXHH$$$X$X$HHM
######################################################################################################################M#####M###M##MM###%:/;;/;;;;;/;///;;//+/;//////;:%X%$$%;+::/;:;+/:;:;;;::::;;:;:::=:=::==:=:=:=:=::=::==:::::==::::==:==::=;:=:::=,+#M#MMMM@MMH@@####@HHHHHH@H###MHH@@@##@HHH@HMMMMHHHH$X$HMHX@HXHX$###HHM#HHHHM##M@HHH@XMH@MMHXHXX$X$$$@$X$
#####################################################################################################################MMM##########M##M$:;///;;//+;;/;;;///+//;;;:/;////:/%+%++X$;;;/;;;;;:;;:::::;:::;:=;:;:::::::==::::=:::=:::=::==::=:=:;::=:=::::::---H#MMMMM@@@@@@XMMMH$HHH#@MMHXM##M#HMM##HH@XHX@XHX@XHH@HX$XHXXH$X$XXM#MH@#HX@@$+M@M@H@M#@HX$XHHH@HXXHH%$+;
######################################################################################################################MMM######M####X/:/;//;/;;;;//;/+///;;/;//;///;/;/;/;;%+%%+++%;/;;;:/;:;:;:;::;;::::;::==::::==:=:==::===:::::::::==::=::::=:::;:=====##MMMMMH@H@HH@H@M@XH@#M@@@@X$@####M##@HXMXHHH@M@@HXHXH@HHH@@@@HH+%$#####X$HXHX@HX%XX%HMM@HHHXHHXXXXX$X$
#################################################################################################################M######M#########H;;///;;///;//;;+///;/;/;+///;/;/;/;/:/;;$++%+%+:;;;;;;;;;;:;:::=;:;;:::::=:::==::=:-:==:::=::==:===;::::=:=====::::==-=,/#MMMMMMMHHHH@HH@MHH@@M@@H@@H@X@###@M@#X@H#M@@@MM##MM@#M@H@@M@H%$$$$XM#MM#X%XMM#@M###H$XMMHHH@#HXXX$%XH
#################################################################################################################M###M##########@/;/:;/;;;//;;/;+//////;/;;///+/%;/;//;;;;+$%:;:;;/;/;;;;/:;;:;:::::=:=::;=:::::=::::==:==:===:-=:=:::==::::===::=:=:=::=:=,H####MMMM@HH@@H@@MMHH@@@@@H$$X%$X%/$HX#M$XM@MMMH@@@#MM@X@HM@@X$H@%X$%%M#@@#H$@##M@X@###@H@M#@HM@XXX$$$
#######################################################################################################MMMMM##M###M###MM#######%;;/+;//;//;/;;/;/////;/;;/////;X@;;;/;;;/:H$+;:/;/;;;;;/;:;;:;:::;==:::::::::====;:====::====::==:=====:==:=======:=::=:==:-=M##MMM#M@H@@HH@@@M@HHH@HMH@@X$$$X%%X$M@##H@M@@@HX@@@MMM#@@XXHH@HHXX$%+%@###M@@@M##MH+@M#@X$M#@M@@@XHX
#################################################################################################M######MMMM##M####MM###MM###X/;;;;/;/;+//;/;;/;/////;+////;//+H$+:;/;//;/$X:;:/;;;:;;:;;;;:;/:::;:;=:;=:::=:::==:=:==;=:::;===:==::======::========::=;:===-;##MMM#MMMM@@HH$XH@MM@@XHXHX@@@@H@@@MHXHM##X@#MHM@@##@HM##M@@@X%$XHX$X$$XH##MHHXX@##H$H@@#M+X@M##M#@@
###########################################################################################MM####MM############MM####MM####H/;://;////;//;/;+///+/;///;//////;XH$%:;;;;;:+%;;;:;;////;/;;:;:;::;:;:::=;::::::::::-:==::::=:============:===:-==:===-====::=:=,X#M#M##MM##M#M@M@MHH@MHXH@@HHHXXXM#MM@M@H@###MMH##M@##HX@MM@$HXX$HXHHHH@HX$XHX+;+$H##@H$XX##M$XMM@##
###########################################################################################MMMM##M@MM############MM######@/:;;/;;;/;//;////+/;//;/;+//;/;;////@+MX+;/;/;/;:;;::;;;;:;:;/;:;;;::::;=::;;;===:::===::==:::::======:======:=:=::=:==-=====:::===--M#M#MMMMX@@@MM####@X@HM@@@XHXXX@XXHM##MHH@M###MMM##HH##M%HMMM@@$$XHH@HHHHXHH$HXX$$%X##MH$%$@##XXHX+
#############################################################################################M####M####M#####M#####MM###+;:;///;//;/;;///;;;/;;+;///+//%;+;/;$%=H@$;//;;:;;;;:;;;;;/;;:/:;::;;:;:;::::::::::::=:==:==:=:====:======:===:-:==:=:=====:==:=:::==-:#MMMMMM#@$$H#MH@MMMMM#@@@@@@@M@HHHHHH@M@@$H@@@MM@@##XX##XH@X@MM#H$X%%XHXX$H@HX$X$$$XH####@%%H#MH$M
####################################################################################################MMMM#########M####$=;;/;;/;;/////;/;+/;///;//////;M@;//;/X$@@H/;;;;/;:/;;;:;;;;:/;;;=;:::=;;::::====:::=:=:==:=:=:::=:::=======-:=====:=====:==-=::==::====,X#MMMMMM##M@H##MHHM#M@HH@MM@@@@MHHHXHHH@@HHHH$H@XXX@##$@##%:$;XHH@HH@HH$$HXXX$%%%$+%+$XM###M@##@%X
#############################################################M################MMM#M############M####MMMM######MMM###H;;;;;;//;////;;//+;/+////;///;/;%M+:;;/%@M/HH%:/;;/;;/:/;;;;;;;::::;:;:=;::;;:::;::=:::==::::=:=::=:========-=====:=====:===-==-==::::====-,M#MMMMM##MMXH@###HHM##@@HXHH@H@X@@H@@XXHHH@HHXHHH@XH###M@M#M#@M#@HMMM@@X%$+XXX@$X$$%$%+%XM####@#H
##############################################################MM###############MMM#M##MM##M##########MMM#####MMM##M/;:/;//;+////;///+//++/+//+//;+;//$$/HX/;+$::%%;;;;;/;:/;;;:;::;;::/;;:/::;:;:::;::=::=::;=:::::==:=:====:-:-=:=======:==::=======-===:=:::==-;#MMMMMM@M##MHHH@##@X@##MH$HMH$$HHH@@XXH@H@@XH@HXXHXX@#X@@##HH#MM##@XH@#M@@@XH@HHXX$H$;//%$H#H%+X
###############################################################M@#####################M####M############MM######M+/;/;///+//++;//////;/////;//;//;/;+HH@@H+;;;:/;;;;;//;/;/:;;;:/:;;:=;;:::::::::;=:=:::=:;:=::::=;=::=::=:===========:=======:=:-=-=-==:==::====-$#MMMMMMH$@##MXX@@##MXH#M@@@MXHHXHH@@HHXXHXXHH$$$$@X;$H#M#HMHXM#@X@##@XX##MHHX$X#HX++%%;%;,-/;//
#######################################################MM#######MM#######M#############MM####MM####M#####MM####$:///;//+/;////+/++;;///;/;//;+@;///:$MH/%H$:;;/;;/;;;;;;;;;:;;;;:;;;:/:;::::;::;;:=:;::=:::::=::=:==:=::::==-===:===========-========:-:===::=====,@MMMMMM@@HHH##MHXHH##M$@@@@#MHHHHH$HHH@@HHHX$HHXXX%XHX$##HM#@X@##@HH###@$XMM@XHX@X$X%+%/:+++%$+
########################################################MMM#######M#####################MM#####MM##M########MX;://////%/++/++//+///////+/;//$HM$;+/;XH+=/#+:/;;;//;;;/;;/;;;;:;/::;:;:;;:;;:;:::::::::::;=::;:==::::=;===:=:::====:=====-=-===:====-=-:==:-:======-:##MMMMM@H@HX@##MHM@M##HH$H@M@@@HHH@HX@XHHHXH@XXXXXX$%++H#M@H@$X@##H$X@###HXM#M@X$@X%%/;;%++%X$
###########################################################MM#####MM###M########MMMM#####MM######MMM#######H+;;+/;/++/;//+/++//+//;/+//;;+%%#M+@:;;/XMH%M@:;/;/;//;/:;/:;:;;:;:;;;;:;:::;:;;::::;::::::::::::::;=::::=:::==:=:====-=:=:==-=:=======-=====:=:=======-$#MMMM#MHHH@X$@######M#MMMH@HHHH@M@H@M@@@MM@@XXXX$XX$X$%+HHHM#HXH@###HH@M##H$$@H$+X@$%++$++%$H
##################################################################MMM############MM########MM############M%////;///++;/++///++;;+///;/;/X#/;@;;:////;HX@%:;;;;;;//;/;;;;;:;;;:;;;:;;:;:;:;:::::::::::;:;::::::=:=:::=:==:=:::::==:=:=:=======-=--=========--====::==-@#MMMMM@@@@HHXXXX%XM###+HMMM#M@M@@HX$XXHX@XHXX@$XXXH%$$%$$X@H$X$%%X###M@X@###@XH$%HH$$H%%$$//
MMM################################################M###M@###########MM#####M#######M##M#######M#####M###$;//;/;//+/+++///;//+//+/+//;////$H;+//;/;/////;:/;;/;/;;;;;;;;;;;;::/:::::;;;;;:;;;::;::;;====::::::;=;:::::====-=======-============:=========-=======:=:=-=##M#M#MMHH@@@X%%%%%XXH@@XH#M###@HMMHHX@X@HX$XX$HXX$$X%%%$X$X%$X%+%%XM###@@H$##%@X/$$HH$$%$X%
##M@M###################################################MMM########M##MM####MMM################M######H//;//;//++///+/;/++++;/+/+////+;:;/H;+;/;;;//;//;:;//;/;;:;:;;/;;/:;:;;=/:;;::;:::;;:;;::::;::;;::::::;:::::=:::=:+$+:===:======--=====-=======:=======:=-:===,%##M###MXHXX$X$$$$$H$XX@HXXH###M#@@MM@HXXH@MXXXXXX$HHH@XXX$/+%%+++H$X$HM##M$H#M%X$+%$%$+%%$X
####MMM######################################################MM###############M#################M###H+;;/;//+/////+////+++//+/+//;;//////;/;;;/;;;;///;/;+;;/;;;;;;;/;;;;::;;;;::;;:;::=:;:;:::::::::;::;;::::;::::::::+%--=X::==-====:===--===-====:=:=====-=:=:=:=:=,@#MMM##@X$$XXXHHHHHH@@@@H@@@M##M##M@@M@@@XHH@H$XXX%XHHH$$$X$$%$$X$$%%++XM#####MHXXH$+%$X$H@
######MM######################################################MMM##############MM#################M+;;/+;////++;//+++///////;////;;;;:;/;;/;;///;///;//;;/;////;;;;:;;:;;;/:;::;::;;::::;:::::::::;:::=:;::=::==::=::=::===:;:-=-========:=:-==--=-=====:=========::;=-=##MMMM#H$XXXH@XHHXHX$XX#MHX$HM##M@##HHHHHXH@H@XHHXHHXXHXXX$$$$X%$+%;/+;/+$M###X%@HMM%%%XXH
M##########################################M#####################M########M#####M################$/;//;/+/////++++/++++++;///;/////;+$X/:;;//;;/;;/;///;;;//;/:;;;;;;:;;/:;;;;;::;;::;;::;;:::;;:;;::::::::;::;::::::=/=-:+====:==============:===-======---==-===:=::=,/#MMM@MMXHH@H@XH@@XHXXXX$MH@XHH@##M##XH@%$$X$@X@HHXXHHXHXXXXXX$X$%+//%%/=/;:/%XXXX@MH@H%/+
#MM######M#########################################################M######MM###########MMMMM###H//+/+///+/;/+/////++/+/++/+;/;/+/;;+@#MH;///;//;;//;;/;/;/;/;;/:/:/;;/;;:;::/;:;;;::;::;::;::::::=:=;;;:;:;::::=:=::==$%%=====;======-======-=-=-====-==:===-=:======;:=,H#MMM@M@X$H@@HH@@HHH@HXX@M@H@$H$X#X##@@$HXXHXHH@H@HH$$@XXXHMX$$%$%X%+%%$$$+$/:;XX//H@M##H
##MM#####MM########################################MM####################################M###H/;//;//+/+//++//+/+/++%///;///;+/;;+@#/%@#:;/////;;/:;::;;:;;;//:;;/;;:;;;;;:::::::;:;=;:::::=;:;=::::=;;=:;==:;=::::::=;+==-=:/:========-========-============:=====:=:::-=M#MMMMMHXXH@H@@HXXHMHX$HHM@@$HH$#####@M@XX%%XHXXHXXXXX$%$$@MXH$$$XH@$%++/$$%%$+/XX/+%HX@
####M######M########################M######################################################M+///+;////+/+//%/+++%/+/+++///;+;/;;;%#M-/M#+//;/;/;//%MM#$:;;/;:;;;/;;:/;/=;:;/;:;;::;::;;:::;:;:;:;=:;:::;::::=:::::;=::====:++:=====-===:=--=========-==========--=::::::=,/#MMMMMM@HHXH@H@@HHHXHXXHHXXHH@HX@#M##H#MHHH$HH@%%XHHHHXH$$HX$XXX$X$X$$$+%%$XH$X$@M@$++$
##################M###################M###############################################M##M$;///+/+///+/+/+/+++/%+/+/%//;/;;/;/;:::#M;;##+;//;;;+;;#%=/@/:;;;;;:;;/;;;;;:/;;;:;:;;::::::;::;=::::::::;=;:=::;::==::::=::==:%::;==:========-==-==-===-=--=-======-===::;:::=,X##MMMM@H@HHHX@H@MHHX$+XXX$X@XH$%$@#MHH@@XHH%HXH#X$@@@@@@XXXHH@@@XXXXHXHHXXHXH$$%+@#@$/
##############################MM###M#############################M##################M###$;+///;//////+/++//++++++%//+/;;/;:/M##X:;#@$=$/;;//;;/:;;$M:=$H:;;;;;;:;;;;;;;;:::;:;:=:;;;::;:::;:;:;::;::::::::;:=::=:=:::::=/H/%X/=+;=============-:==-==-=-=-==-===-=::=:;:;;--M#M#MM#X$@@@@H$XHHHHHXHXXX$HX@$XX+%$@MX$$XHHX%$HM@@#MH@M@@@X@HX@XXH@X$X%H$X$X$++%$%MMH
####################################M##################################M###########M##H//+///++/+++/+/+++++/++++%+//:+M;;;/MMXMM+:##X;;;///;;$H//;=#$=X%:/;;;::;;:/;;:;=;;::::;:;;;;:;;:::::::::;::::==:::::::::::;::==:-:-/=;%:-:==-========---=--========:=====:=::=;:::--/##MMMMMX@@@MH@XXHHMMH@HXHHXHXX@XX$+$HHHH$XXHX%H@@@H#@MHHHM#M@X$HXXHXX$XHXX%$$XHXXHH$@
#############MM#####################MM#####M############################MM##########@+;;//////+//++///++/++++++//;+;;##+/;@#:=##;;X$;;//;/;:@+%;;;:%#/H:;;;/:%M:;/:;;/;;;::;;::;;;::::=:::::::::;:=::::=;;:::::::::=::==:=%%/:===-=======--=-==-:-=====-===:=========;:;====-X#M#MM#@+X@HHHH@HXX$$XXXXX$H$XHHHHXHX$$$HXX@HH@@###HMM###X%H@M@@@@$HH$XHHXX$$X%X%%;%/
#############################################M################M#####M#############M%//+///+/++///+++++++++/+++%/////;##X;/#M=:#M:;;/;/;+/;/;#:/:;;/:HX;;;;;/;;#;;;;/;;::;/:;;:;:;=;;:;;:;::;::::::::;::::=::;:::::;:==:==-%;======+=======-=-:===--====-========-=:=::=::;::=-M#MMMM#HXHHHXHMHHXXXXXH$X@H@HHH$X%$%$X$$HH@@@HHHM###@$###M@$$HMM@@HHH@@HXH$XX$$$X$X%
M#######################################MM####MM###############M################M%;++/++++/;//;+/++/++%++%+%+++/+///:H#@;/##%H#/;/;/;;;///;/#:/;+:/;;:;;//@:::+X:;::;;/;;;;;:;::;;=;:;::;::::;;:;;:::;:=:::::=:;::=:====:-==:=--:%=====-==--====--===-=-=---=-=---=-:=:::=:==,;##MMM#MHHXXXH@HH$XXXH@MXHH$$HHX$$$XH@$XH$XX@HH%%XM##MHHMM##MHX$@##@HHM@H@@X$%%++%XX
##M######################################MM#####MM##############M#M##M#########H/;//+//////+/+++++/++++%++%+//%%;;;/:$##::#M#M+:/;//;;@H/+;:HX:;#;;;/;:;/;H%;#+@:;:://:;;:;;;;:::;;:::/:::::::;:::;:;;::;::;:=:=:::===:=:=:===-:/%-====:=;===-====-===:=====--=====-===::::===,$#M####MHXXXXXH@@HHHXXHXX@H$$X%HX$XHHHHXX$XXHX$@%XX@##H@XX@MM##H%HM#@X$HHXXXXX+$$%$
###########################################MM#####MM##############M##########@/%/;//+//++/++/++/+/+/+++//%++/@M$:$M$;%@#;;/%+=+/////%#/::;;;;##M+;;;:%X:/;;#+###:::;;;/;;;/::;:;:;:;:/:::::;::::::::::;:::::;::::::=:========-;;-;//:===-=-=====--=--======------===-===:=::::--M######@H$X$XX%XH$$%X$XXHH@HH$X$$HHHXM@HXX%%$$@X%$$$HM##MHHX@@#MX+$HM@XXHX%$X%%%%%
############################################MM#############################M+;+++/+/+/+////+++%+/+/++/%++++//X#@H#M#:;##%/;/;/+////;$#X##%;;;;;:;;:;=##+:/;$#M:$;;:;;;;/;;:;:;::;;:;;::::::;:=::;:;::::::::=:::::=:=========-;/+;===-==--=-=-=====--=====-,==--==:-===-===:::==-:###M###XHHXHX+H@XX$@H$HH$XHHHH$%@XX%XXXHXXX%$$$XHX$%$$@##MH$HMMM#M$$@MM$XXXXXXX$X
##############################################M#####MM#################M##%/+/+++///+++//+++++/+/+/+%+++++;+;+##@%##/;##$/;;:/+///;:;@+:%M:;;/;;:;HM:MXM=;;:HX::;;;;;;;:;:/:;;::;=;;;;;;=::::;;::=::=:::=:;=:=::=:=:==:=:====/:=-===-====--=-==-==-=--=---===-============::;::=,%#MMMMMM@XXXHXXH@HHHXXHXXXHH@$$$X%%%$%+$$XXXHHXH@HX%$+%H@###@XH@$H#@%$H$$%@MM@X$X
##################################M############MM####MM###########MM####X+//;/;/+/+++//++++/+++++++/+/++;+;///##;=##%;$/://///;%;;;//;;:%$;;/;;//;#MMM:#%:::::;//;;;;;;;;;:::::::;:;;:;;:;:;==:::::;:::::::::====:========:===-=:===-=====---==-===---==--====-=-=====-==::=;=:-=,@MMMM##@H@XXHHH%XX$X@@X$HXX$$XXXX$XX$HX$H@HH$XXX$$$X$$$+XH###@X@HHM#X$@H$%X++$X$
#########M######################################MM####################H+;/++++%;+++/%++%//+++++++++++++/X#%#/:MM+:M#$;;/+//;//@#M;;//;;$@:;;/;:;;;$M+#:/#:;;;;;;//;;/;;;;;;==;;::;;;;;;:;:;:::::::::::::=::=:=:=:-:=:=;$=:========-=====--===-===-=-==----=======-===-==:=:=:::==-:MMMMMMM$%;@H@@@XXH@+%$XXX$$+H@MHX$XXXHXX%$HHXXH%%%%$;/+%+$XM##@HXHM#X+MMX%+%%$H
##################################################MM#########M######@%/%///++//+%+++///%%++++/+++//++///@##H+/@#%:XX;/;/+//+//XXH@:;//+H;;;;/HH;;/;#/::;$;/;;;::;;;;;;;:;:/;;;;/::;/:;;;::::::;:;::=;:::=::=::==:===;/+/-======-==-====-==-====---=-=-=-=-===--=-===-=:=::::::::==,+##MMMMMHH@@MX@HHXXH$M@H$$H$H$$XX%$X%%%$X@X@@X$H$$%%+$++/%%%$@##MH$M#H/%MMHX%++
#############M#####################################M###########M##M$/+////+/+++/+%+++++//++//+++;///++/X##+;/;X#H;;;+++/;/;///$H;#M;//;;;;/MX/MX:::X#;;;/;/:;;;;;:;;:;;;;:;::;;;;;;;:::;;::;::::::;;=;=:=:;=::::==:++-/--==:=========-=-=-=---=-=---==--==----==-===--:=======::=:-,H##MMMM@@M@#@$HHXHHM#M@#X$%XXHHXXX$X$$%@XX%%$XHH$$%XHXH$%/%$%%@###MH##@++@#@XX
################################################################M$++/++/+/%;%%++%/+++/++/++++///X##;++/@#@%;/;$#;/;+/+;;://;//+#$=HH:///;/@@=:H+;;/:@:;//;/+;:;:;;;;:;;:;;;:;;:::::;;:;;;::::::::==:::::::::::==:++;=;X/:======-=:=-========--==-=----=---==--=====-===-=-::=::::==,:M##MMM#$X##MXH$HH@HX#M###MX@@H$$@HHXHXX%X$%$$++%XX$$+$H$%%%/++/$M#MM@M##$/H#H
#########################################M###########M###M#####H+++++///+/+++%+++++%+++++++//++H#M#H;//;@M$@@;;//+//;/+#M;/;///#:;:;/;;;//;#%@%://;/:;;;;;;;:/;::;;;;;=/;;;;:;::;;:;;;::;:;:=:::;:=:=::=:;:=:=:/%//%%==/:;/:-:==========;;--====-======-=----=-=-===----:=:-:==::==-,+#MMMMM@HHX#MMM@@XXXHM##M##MXXXHH@XHHX$$$%X%X$$$%%$X++///$/+/;+%;%M##MH@##H+X
#######################M#####################################@%/++//+//+/%++/+++%+/%++/+//+++/;M#HM#H;+;H###+///+///+//@@#;;//;#;//;;/H///;@M=;;;;;;:;+%+:;;;::;;:;;:;;;:;;;;;::;:::;::::;::::;:::=::=;:::::==/+/%%:===;;;:/====:-===-;:-=--===-==---------------====-=--===========-,X#MMMMM@++X@@##@@HX$XHXM#M##MHHXH$XX$X%%$XXHX++%+$%%+%$%$+%%//+%+;+@###@XM#H
#################M#############################MM##########M+%%+/+/++/++%%++%%/++/++%+////+%/+/##;#H#%;//M$;;///+//////#-#M;//;/;;;;HH$/;///#:/;/;;;/$H;M;/;:;:::;:;:;:;;:::;;;:::;=;;;::;:;:;::::::::=:::::::=:+:;::===/:/;/-=====-:;:-===-==-=----==----------------=--===-:==:=:==,=MMMMMMMX$X@XX$HHH#@HXXXH##M##@H@%$%/%X/%%%$%%%+$$++%%$$$$$/+/+++//+:%###HX@
###M######################M##############################MX+++//+/++/++/+/%/+%%+++%+/+++/++/%/%#H=$#M#+///+//%///;;+/+:#MXX#://///+%@=;/;;/:H%/;///;;%:=M:;;;:;;;::::;::;:::::::;:::::::::::::::;:;=::::::=:;=-;+//;====+/;;;====:=/+==-==-===-=-==----=---=--,-,------======:========,/#MMMM#MHX@XXH$$H@@@HXXXXM#M##X+XX%$$X$$XX%++X$$%+%%%$H$$+%%/%$+//:/--%###@
##MM####M###################MM#############MM#####M#####X%++++/++%/++/++%+/%%+%%++++++//+//++/X#X$####@//+//+;/X@@//;/;#+;;/;//;;/;+#####://;;/;;/;;;;:$$::;;/;;:;;::::;:;:;:;;;::;==;=:;;=;:::::=:=::::::::====///;;$/;=;;========-===-----===---===--==---=-----=---=-==-====:==:==:-,X#MMMMM@HHXX$XXHX%XX$$%$XH##M##MH+%$%$%XX$+%%+%%%%%%%%%$%$%+X%;;;//+///;@#
#M#######M###########M########M#############MM########@+/++++++++%/+++++%%+/%/++//++/++/+//++;@M##X;M%;;//+++/#M+$#/;/;#%/;/;//#$;;/;;:=M/;;/;:+M%;;;;:M:;%::;;;;;:;::;;:::::::=;:::;::::;:::::;::::::;:=:::::=:=;/;/:/;;;============---:::=:-----==---=--------=--==---=-==-====:====--@#MMMM#@HMHXXH$$$$XXX%XXH$@##M##X@HHHXX%+/%+X%+$%$$$%+%%$@H$$$%%$+$%+/;/:
###############M#####M####MM###MM#############MM####@%++++/+++%+++++++%$+//%+++%++;:/;///%+;+/##H/;/+;///++//;H#=;XH;+///;;;/;@@#:/;;XXHX;;;/;%@=;:;;//M+M+:;/;::;;:::;;:;;:;;;:::;:;:;:;:;;::::;::::::=:::::==:=:+::========-=====:===-:;---=-=--==-=-=-=----------==----===--===::===-,;#MMMMMMH@@@HXX$%%%$XXHH$X$+X###X$X$%;$$;+%%$%%%$X%X$%%/$%%%XHX%+%+%%$+;;
################MM######M##@M####M#############@M##X+%%%++++++/%;+++%+%++%%%++%+;;$##M;//////+##;;//+//+//%;;/+#/:XX://;//+;/;X=@%/;/$H/://;;;+#@HM%;/:@$/:;;;;;;:;;;;;;;::;:;:;:;:;;;;;:::=:;:;:::::::==::::=:===;/:=====:==:========-=:--=====-------=--==----------==-======-======-=-,$#M#MMM@XH@HH$$$%$X%$$X%$+X/:$HX$%/%MMH$HHH%$XXXXHHHX$%$$H@+%%$%%;:+/%$+
######M##########MM#########M@####MM############MX+%+%+/++/+/%++++%++%%+/%+++++:X#####M;+++++H#X:;/+/+//@M#H;/+HM;M//+//;$+/////%#;;/;;+:;;:;/;%::%H/;;;:/;;;;;:;;;:::;;:;:;=;:;;::;;;;;::=::;;===:::=;::=::====::::====:-=====:--====;=-==;:=---==-----====--------=-,--=====-=========-,,@#MMM##XX$@$X/%$X$XXXXHX$//++;//$%X$H##MX$XHXX$%%$$H%$X%://+%%+/+%+;/:/
M##########MM######MM#########@#####MM#########H%%%%/%++%%+/++++++%+%++/%%+//;%###$$###;//+/+H%;/++;/+/XX:;#///;#X+;/+/%#H#+;;/;;#$/;//;%@@#;/;;;:X%;;;;;;;;;;;/;;:;;;;:;;:::;:;:;:;;:=:;:;;::;::::::::=::::::::::==:=:=:====:==-====-,::=:;-=--===-------=-=------,=--=--=---======:=:==-,;#M#MM#M@X$+/%%XXX$X$XX$/%+%$%%+HH$%X$###MHHXXHHH@M$%%/;:++;%+%%$%///==
############M@######M@M########MM#####M######@+++%%++%++%+%%%%+%+%%%+%%+%+/;;/##M=;;X##;/+/+;////+/////@$;;H@;///;/;///X/:M+/;+;//////;/@:=H%:;;;HX;;;;;;;//;;:;;:;;:;;;::;;::;:;;;::;::;;;:=:;:::::::::::=::==::=:===::==:;=+;--========----=---===--=----=-------------=--==-===========-,%###MM#@H$$X$$H$X$XX$$$+X%$$++%$=$$X++M#####$%H@H%X$+$+%+///;;;$+%;%/$
##############MM######@M#########M##########$+%%++++%++%/+++%%%+%%%$$%+%+%/@+;###:+;X#@;+//++/++///////$#;;/#;///;;+;/+/;%H;///;/;;/;;;+#;/#%;//+%/;:;;;;:;;;;/;;;;:;;:::;::;:;;::;:::::;;:::::=:=::=;:::==::=:::===:====;::-;=/=-=-=-======-==:=:-=--==-=-=-----------=---==----========--,,@#MM#MMXHH@HHX$+X$$%%$%$%+++/%+XHMMH+%@######H%XX+$$+/+$+$++/++/+%%++
###############MM######MMM########@#######H++%%%+++++++%+%$+%+%%$++/+%++/+##%;M##:/;##%;///%///+;@##%+%+#$/HX;+/;:@#;/;/;M/;%+///;////;:HMXM+:;;;;;;:;;;:;;;;;;;;;;/;;;;:;;:;;::;::;:;;;:;::;:::::::::::=::=:===:==:==:-:;;=====:;=-=========;=-----------,--=----,-----=--====---====:==-=-,;M#MMM#MXXXX%/%$X$%%$$%%++%%+%+$$XX##M@H@#MM###H%X+;++%/+%/%+$+%+%%//
################M@M#######M####M##MM####@/%%$$%+++++%+/+%%+%%%/++%++/++++H##H;X##/:X#M;//++/+++/M%:$#;//+#M+//;;XMHM;///;@%MH////+MXM;;;;::M;;/;;;;;:/;;;;;;;;;/;;;:;;:;:;;:::;;:::::::;:;::::::;::===:=:::=::====::-====;;:==--/==========;===-=--=---=-=-=-=----,---------==------=======--,+#MMMMM##X%HHX$$%%$$%%$X%%%/+%$$+%$H#MM+$M#MHM##/%++//%//:+%;;;=::+$
##################M@#######M##########M++%+%++%%%++%%%$$%%$%+$+%%++/+/+//###M;%##XM#@//%+////++;#//;#%;++;://;/HH;XX;///+#X;;////@;:@H:/;;+X;//;;;;;;/;;;;;;;;;;:;;;;;:;;:;;:;;:::;:;:::::;;::::;=::::::==::=-====::=====;:=-=:/:;===-====;-=--=-,=---==------------,-----=---=--=,-=========,,H##MMMMM##H/X$HH@H$+$/%+/$%%X$%%$%+/M@MH$X##@X##/$%++$/%$$/////+;;:
###################M@M##############M%/%%%%%%++++%%++%%%%++%%%++%+%/HM$:$####;/#M##X;//+++;//;+/MH/:HH/+/+/////;/:#;//+//;;;;/;;/#:;/#;;/;/////;;;;;;;;;/;:/::;;;/;;;;;;:;:::::;:;;=:;::;:::;;::::=:::=::=:::==:==:==::==/:==;=:==========:===:---==-==-------=-----------==--==----=-======--,:MM#MMM@X#@/X@M#@@$%X%%$%$%X%+%$%%%++@#X$//X##@##$X%%+%$XX%+;;+%++/
###M#####M###########MMM###########$%%%%$+%++++%%+%%%%+$%%%+%%+++++##M#M#M$##/;##H;//+++++@#M;/++#;/#/+;//;+;/////#:///+/;/:XH;+;@$::@%;/;//;///;::;;;///;;/;;;/;;;;;;:::::;:=:;;:;::;:::::::=::::=:=::===:==::=========-;/%:/:==:;::=-==-=---=----,:---------------------=------------====-=--./###MMMM##M#MHM##XX%+%%$%%$%%+$%+/+%$+:$$:.+M####;X$+H%/+;/$%%/;//
##########M######################@/%%%%+%%++%%+%%+$%%+%/%%+++/%%%+/######X/##+/@%///+++/+@//H;/+/X#@+;+//$##@;//+;#/;+////X@#X;//+#;;H///////;//;;;;;/;/;;:;/;;:/;;;;;;:::;::::::;:::;:::::;;::::=:::::=:=:::==::========:;:;:---:/:==========-------------------------------=-----=-====--==--,,X#MMMMMHH@@###M##H%$$%$%%X%+/+$+/%$X/+H%/;:+%+$$/+%%/:H@MM$%$XXX$
##########MM####MMM########@###@+/%%+%%%+%+%%%+%%%%%%$$%++++////%+;MMM@##;;##$/;/++++/++%#X##H;/+//;++++%X:;#%/+;;@+/+/+;@H=M/;//;X@@+;/;;/+//////;;;;;;;;;;;:;:/;/::;;;;;;;:;:;;:=:::::::::::=::=:;:::::::===::==-=:======:==::=:-===-=====-==-=-=--=-----------------------=-;-------=--=----,,=M#MMMMH$$XXX@#MM##@++%%%++$$%X%%%HH$%$/%+++=::;+$%++/+##@##X$H@X
############M####MM###########%/%+%+%%+%%%+X%%%$%+%%%%%%%%+/+M#//%/H##:$%//#H/+%+/++$+++/+#%/#%;+/++/+//@X;;X#;//;;;;;////;/M:;///;;:/;/;//;/;//;;;/:/;;;;;;;;/:/;;;;;::;::;:::;:::;:::;;=:::;::=::::::=::=::==========-=:=-=:;+=-===========-:-=---=:=-=----=--==--,--------=-;:---------=-----,,;#MMMM#@%XH%/$M##M#@$%X%%$+XX$X$$$$/==-;;;:=:=:/$XX%$$XM##M##HH@
#############MM######M######M++%%++%%+%$+%%$%%%++%%$$%++%%/%###H/+/X##+//%+//+%+++/##/%+/+M=;#+/+++%++//%#:/;#:;///;:H+//+:+M://///////;///;/;;/;;;;;/;/:;;;;;;;;;;;;;;:;::;:;;;;;:;:;;:;;::=::::::::::=::===::====:=:======;;+====-======-=--------------------------------------,-----=--------,,X#MMMMMHXX%$%+$M###HHX%$X$X+/%$%+%/;%+X+;+;/+/+%+%++%$+$M#####@
######################M####H++%+%+%+%+%%%%$%%%%$X%%%%%++%++H####$/+%##%/%++%+%+++@M$H://++##M//++//++//+:#$;%@;//;;$M%;;///+#;/;//+/;//;//;////;///;//;;;;;;;;;;;;;;;;:;;:;:;::::::;;;:::::::;===:::==:::=::=::==:::=:===-===-:/=::==:=-=--=---=-===-------------------------,-------------------,,-@MMMMMM$$HH%%+;XHXX$$$XX%%+/++:+%/%X%$//%;/++%/;::;///%+%X##M#
####MM#################M##%/++++/%/++$%%%%%$$$$%%%+%%%%%/%+M#+###+//##$%%+%+%+%%/+:###X////;;//++/+/++///+##$;;///;@X=%/;;;;#////+/+////;+/;;/;/;;/;;;;;;/:;/;;;:;;::;;;;::;:::;:::;;::;:;:::::::=::=::::=:::================--=:--=;/:=-=====----=------------------------,-,,--,-------,--------,,/MMMMMM@X$H$$$$%=/;,%X%X%X+++/:%/:+;=;:;++//++;;;;+=//;;:.:+M#
###################M#####$++%+%%%$+/%%%%$%%$%%%%%%%+$%+/+%+##;$MMM/;#X/%%+%/%%%+/+;@;+#;+/++/;///+////+//;;;:;:;;///#@%;;+//+;/;;//////////;;;/;;/;::;;;;:;::;;;::::;;:;::;;:;:::;;:;;:::;:=::::=:::=:=::========:===========:=,=:;:/;===--=-=-=-===---==-==-----------,,--------,---,-------------,-X#MMMM#H%%%$X$/:XH/HH@##M$%%%%$%%/%%%+/%//++%+/+/+=;::;%$+//@
####################M###$+++$%%++%%%$$%%$%%%$$$$$%%%+%$+++$#M;@###@/+/+++%++H;++/+//;XH/////+MX+++%////++//+/+@#X/;;#H:;;/;;;/;;///////;///////;;//;;;;;;;;;;:::;:::;;;:;;::=:;;::::::::::::::::=:=:=:=::=::::=::======::=====-:==;=-====--=====-===---=-==-----------------,----,------------------,-@MMMM#M%$HX+%;:%HHHM##M##HX$+/+%$//+/;/::;+$X+%+///;/+/;+/%+
#####################M#+%+++%+++$$+%%$%%$$$$$%$%%%++$%$+%/H####X#M%+%+%%+++##X:/+//%@M//+/+MM+:/++++/+/+//+;;M++#+;;/#://///;///++//;;////;;/;://;;/;;;;/;;:;;;;::;:;;;;;;:;;:;:::::;:::;::::=;:==::::::=========:=============;;=-====-:---===----=-------------------------,--,,,,-,-------------,,,;MM#MMMMMMH:;;://XXXHM##M##%%%/%;;;:;/+++/+;-+++/++$%%$%%+;-
######################X+%%+++%+%+$$$%%%$$$%$%$%%%+++%%%%+/M##H+/+/+%%%%+++/#/#X;///H%;+/%/H#=/H//+///;;/+/+;XH=:#+;+;@/;///;+//;;;/;/;;/;;;/;/;/;;/;;;;;;:;;:/:;;;:;::;;::;:::;::;::;::::::::=:===::::::::::=====:====-====:===:=======,=,-=====-=-=---------------,---,-----,--,,----------,--------,,%#MMMMMM##M$=+;%+%/$+%#M@##++X$+++;:/+:+$+;:+%/%%$+;=:-;++%
#####################H+%+++%+%%%$$%$$$X%%%%%%%%%%%+%+%+++/##%/++%%%%+%++/%/@+@#$;/++///;+/+#HM%;++//+/+//;%/+#HM#/////;///+;//;;/;/////;;/;;/;;;;;/;;;;;:;;;=;;:;;;::::::;::;:;=:::;;;:::::;:=:=====::::::::====:====:-=====--=-===-=-=::====--=-==-----=-------------,,----,,-,,,,,--------,-------,,.-@#MMMM@@###@%++%$$%+++$##MM@$X$+/++$/;/%%;////$H%+$+/;/;:;
####################M+%%/++++%%%$$$%$%%%%$%%%$+%%++%$$%%/$##/$%%%+//++//++/@#$+#+/++//M$+++@M:;+%+/++:/@#%;+;/+;#:;;+;;;;;////;;;+/;/;;/;;///;//;/:;;:;/;;;:;;;;::;:;:::;;::::;;;::;:;:::::::=:::===:::::=:=====:===:=========:======:=::;===========---=-=------------,,--,,-,,,,,,--,,--,---------,,,.:M##MMM@M####+%/X++%/;/;$@#MMX@X$XXX-/$;=;+%%+;:;+/;$$+%;/
#M##################%/%/+++++%%%$$%%$%$$%%%%%%+%++%%%+%++@#++%%%+%%M###+/+/HH//+++++H#M:+/+/#;HM+++//+M/+#:/+//$X:+////////;/;;;;+//;////;/;/;;;;;;;;;:;;;;;;;;;:;;=;;;:::;::::::::::=:::==::=:::=:::::::::=::========:=========:====:==--====--=--==-=-:--,,,---------,,,,,,----------,--,-----------,,,%#MMMMMHX###M/%%+/$;;+/;:;HM%%@#HX%+HM@@X;$@H++%+;;;+%+%+
###################@%%+++%%+%%$$%H%$$%%%$$+%+%%%/+%%%%+%+%++%%%+++$#;;@M/++$@/++++++%;#/////M#X://;//H$:;#;///;$/;///////:;//;/;/+//;//;;/;;/;/;;;;;;;;;;/;;;;::;;:;:;::::;:;:::::::;:::::=:::::;=:::::::====:====:====-:==========:-====:/=---==-=-=-=-=-,-,-----------,--,,---------,,,--,,------,-,,-,,H#MMM#M;+MMH+%:%H%/++%///%:;%%%@HH+//HM#M$;/$%$+///;+%/+
###################+++%++%+%$%$$$%%%+%%$%$%%%%%%+%$%%%%+%%%++++/++/#%/%#;+/%+++/;/%++;@@:///++;;+//+/H#@M#:/;/;+///////;////;/;/;;;;;/;//////;;;/;/;;;;;;;;;;;:;:;;:;:::::::;:;;:::;;::==::::::=::==:=::==:::::====-=======:=====--:/:::::=:=-==--=---=---,,--,---------,-,,----,,---,,,,,--------,----,,,=MMMM##MHHX%%+;$HM@X+:%%+/+$$/,:+HH%%/+MM#M@:+$+%+///://
#M################X$++++++%%%X$%$$%%%%%%%%+%%%+%%%%%%%%%++%%+++/+%+H#:$M+++++/+M#+/++++#+$+////+MM%;+;%$+M///+///////;/;//;/;;/;;;///:;/;;/;/;/;;;;;;;;;;;/;;/:;;:;;;;;::;::;:;::=:::=::=::::=:::==:::=:=:::==::=:=================;-:::====-===--==-==,---,=----------------,,-,--,,,--,,,,,----------,,,.%MM#MM#H$$$%;:%M@X#%+HH#@%+:=:/;;+%$;/%@#M##M++X$++;,;/
##################//%+%++%%%%%%$%$$+$%$$$%%%+%%%%%%%+%%+%+%+X#M;++++#$#++++++@H%@$/+%/;##%/+//%M/%#:+//;@$;/++/+/////;;/;/;;;;/;///;///////;/;;;;/;;;;;;;;;;;;::;;:;:;::::;::;:;::;;:::;:::::::=:=:::::;:::====::=:=======:=========-==--====----=-=---,-,,--,-----------,-,-,,,,------,,------------=-,,,.,H#MMMMM$/++/+/%HM@M@@MHM##//+/;/+%%%$/%%#M####X;;%%+$%
#############M###H+%++++%%%$$$%%$%$+%%%++%%+%%%%$%+%%$%+%%++H@M@/+%+##+++%++H#=+#M%+++H%;////;HX:+#/////$;;//+/+////;/;/;////:/:;;;/;/;///;;/;;/;;:;/;;;;;;;:/;;;;;;;:;:;::;:;;:::;;;::::::;:::::===:::::::====:=========-=======--======-=====--====-----,,,----------,-,,,,,-,,,-----,,-,--,-----==---,,,.;MMMMM#@+;;/%+/++H@M@@#####@/:;;:==:%+/=XM######@$$XHX
#####M#########M#%%+++++%%%%$+$%%%%%%%%%%%%%%%+%%%%%%%%%+%$%X@;#H/+++/+;%++/+#H#$X#/+///;;$//+$#H##;+///;///+///+//////;//;;/;///;;/;////;;;;//;/;/;;;;;;:;;;;;:;:;;;;;;:;::::;;;::::::::::::;:::::::::=:::===:==:======:============-=====-======--=-----------------,,-,---,---,,,,,,,,,,,,------------,,,,/MMMMM#X;;%%/%/++$HX%$@####M/=/;;+/;+;/;=:%M#####MX%H
#M#########M####M+%;+/+%%$$%%X%$%%%%%%$$%$%%%%%%%$%%+$%++%$%$#M$#X+++%+X@X%%+@M=;%@//+/;%M#+//;X%$M/+//+///;//+//////;/////;//;;///;/;//;///;;;/;;;;;;///;;;;;;:;::;:;:;;:::;::;:=::::::::::::::::::::===:=:=:==:=:=====================-==--=-=======-=-----------------,---,-,,,,,,,,,,,,,,------------,,,.,$M#MMM#%;%%%/+%//;++%+$#####%;;/;:;+:$///+-;H##M###$
#######MMM###MM#H+%+/%+%%X%%%$%%%$%$%%$%%%$$%%$$%%%%%%$++%+%+#;/+++%+/X#$%++++#+@M;//+/MM/#;//+/;M$/%/////+/++;////////;/;+/;//;;;;/;;///;;;;;//:;/;;;:;;;;;;;;;;;;;:;:;::::;::;::;::::::::::;::=::::==::=:==::=:================-=-============-=----==-==-=--=---------------,,,,,,,-,,,-----,,----=----,,,.-@MMMM#M++%+++/:+%%+//%;%###$:/;+/%%/;:+%+;+/$M##M##
###########MMM##$%+/+++%%$X%$+%%$%$+%+%%+$%%%++%+$%$%%%+%%+++#/+++%+++#++/+/+;##+;++///$:%@:+/%//X//////+//;////+;//;///+///;;;//+;;//;;;/;;;;;;;/;;;/;:;;:;;:;;;;;;::::;:::::::;::::::;:::::::::::::::::==:::========:==========-================-------=-----------------,-,,,,-----,,--,--,-------------,-,.;MMMMM#H+%/+$%/;+%+//+:-,;/::;;;/%+/;;=;/$X%%+%##MM
######M######M##X++%+%+%+%%$$$%+%$%$$%$$+%%$$%$$%%$%%%%+%+%+%%+%%%%+%/#%/+/++/++/+;$;++/+@X//++//+//+/+/+///++//+;/+/++;/////////;;;/;/;//;//;;;;/;;;;;;/;:;::;;;::;;:;;:;::;;;:;::::;;::::::::==::=::::::===::=====:-==:==========-======-=======-==--=-----------------------,,,,---,,---,,,--,------------,,.$M#MMM#X/++/+/+%/$::+;-:;+/:;$/;+%:=%/+/$;%%/;++M#
#M#####M#####M##+++++%$%+$$$%%%$%%$%%%%$%%%$$%%%%+%%%%%%%%%++%%%%++++/HM;/#%++++++##/+/+/M%////+/++/+/+////;///;///+///++///////////;:/:;;//;;;;/;/;::;;;;;;:;;::::::;;;:;;:;:::;:;:::::::::::::::::::::=:::===::====-===============-=========--=====--==--------------------,,,,-,,,,,,--,---,,,,----------,,.-@MMMMMM$++%$///;=-/;/;-+%;;//=%@MMX$+$+;=+//:=;:%
############MM##+%+%+$%%+%$%X%+%%%%$$%$%+%%%$$%%%+$%%%$%/%%%++%++++/+++#M@H/+++/#M%#:+%%/HM/++;+/%+//;///+/+;////+;//;///;//////////;//;/;;//;/;/;:;;;;;;;;:;;;;;::::;:;:::::;;;;:::::::::::::;:::::=::::========::======:====-===-==-====-===----====-----,-------,,----------,,,=-,,,--,---,,,,,,-------=--,,,,;MMMM##@$+%%///::;:=/;/%++;//;+@#M##@%-=//++;=:;:
###M#######MMMM#+%++$%%%%$%%%%%$$%%%%%+%%$%%%%%$%%$$%%%%%++%%%#H/++/++//$%;/%/++%;X@;/+//+X/++//++/++++/////+/;////++;/+//////;/;;//;;;/;;;/;/;/;;;;;;;;::;;;:;:;;::;;:;:::;::;;;:=:::;::;=::::::::::===:::=::::::===============-=:=--================-=-=----,-,,,,,,--------,-,-,,,,-,,,--,,,-,,,,--------,,,,.%MMMMM#$%//+;:+/%/;:-//%++:;/;=%M####@+///::=::=
#####M#######MM#+%%%%%+%%%$$%+$%%$%$%%%%%%$%%%+%+%%%+%++$+++%%%#;++/++%+++//;/+++;@%/%++///++%/;//++/++/+//+/////+///////;/;///;/;///////;;;;/;/;/;;:;:;;/;:;;::=:;::;::;:::::::::::::::::::::::::::::::::::::=====::======:=-=======-==:=-=========--=---=--=-,,,,,..,--,---------,,,--,,,---,,-,,,,,-------,-,,,,HMMMM#@%;%%;//+//;/://+++/;++++;H######X:-,=;=,
######MM#####MM#$%+%%++%%$$%$%$%%$%$%%+$%%$$$%$%%%%%%%+%%++/+%;#%//%$+%++/+M#++++/#%;++/++//+%++;/////++//+/+////+//////////////////;;////;;;;;////:;;;;;;:;;;:;::::::::;::;:;:::::::::::::::::=:==:=:::==:=:==================-===-=====--=--====-=-=---------,,,,,,.,,--------,--,,,,--,,,-,,,,,,,,----------,,,.:MMMM#MX+//+;;//+/+/+///+;++/+/:+%XM####M$---;,
##############M#X+%+%%+%+%$%%%$$%$$%%%%$$%$%%%$%%%%$%%%+/++%%+/X#/MM%/+%/X@%@M//+;#H/++++++/++/+//+/+;//+++/+///;//+;+;////;//////;///;/;/;;;;;;/;;;;;;;;;:;;;;;:;;;:;;:::::::::::;::=::::::=:::::=:=::::=:====:================:========-==---======----------,.,,,,,,,---------,-,,--,,,,,,,,,,,--------==---,,,.,%MMMMM#H;%///+/%/++%/;/++///%;:+%/:$#####@/..,
#####M#######MMMH+++%%%%%$%%%+%%+%%%%$%%%%%$+$+%%%%%%%%%+%%%%%++##$//++++#;;XM;/%/%$/++/+++/+/++/+/+////++/////+////////;//;/+//////;///;;;;////;;;:;;;:;;;;:;:;:;;;:;::;:;;::::::::::::::=:::::::::===::=:===:==:==::========-==:=======--==--==-==---=--=----,,,.,..,,-----------,--,,,,,-,,,,,,,,,----------,,,,.-HMMMMMM$++++%+;:/++/%+%+/;////+;;/;:X#MM##M;.
######MM#####MM##/%%$%%+%$%$+$+$$$$$%%%$+%%$%$+%%+%++%%%%+%+%++/%;/+/%/++MM@#M;+++++%/+//+/++++//+/++/+//;+////+//////////////;//;//://://;;;;;/;//;/;;:;:;;;;;;;;:;;:;;;::::::;:;::::=:;;::::::=::::::::=:==:=-::================:==========--==--===---------,,,,..,,---------------,,,,--,,,,,,,-,----------,,,,,.:@M#MM#M%%%+/;=;;;;=-,;;=+//;++=:;:;;%M#####X
#########M#######+%$$%%+%$%%%%%%$$$%%$%$$%%%%$%%%%%%%%$%%+%%+%+++++/$#;+++X+@$++++++/%/++++/%++//+/++//++;//+////+//++////;;+/;/;//////;/;;//;//////;;;;;;;;;;;:;:;:;;;:;:::::::;::::::::::::::::::=:::::====::===:================-=======-==-=----==--=----=-,,,,,,,-----------------,-,,,,,,,,,,,,,,,-------,,,,,..+MMMMMM@%+;;;;/;;=:;+++//;=:///::/;;:;+M####
#########MM######X+%$$%$%%%%%%%%$%$%+%%$%%+%%%%%%%%+$+%%+%++%%++/+X;%@/++%+/#//+++%++++++++////++//+++//+;+;+//////++/++;////;///+////////;;/;;;;/;;;;;;;;;;:;;;;:;:;;:;::::;;:::;:::;:::;:::::::::::::::==:=:::==:===========-============-=======-===-====--=--,,,---------------,,----,,,,,,,,,,,,,,,-----,-,,,,,..-HMMMMMM%+/+///::/+%%%%+;+/+/++/;::::;;;:X##
##########MM#####M+$%%%%$%$+$%%%%$%%X%$%$$$$%%%%%+%+%+%%++%%$++%+%##M$/+++%+H+/+++%%+///++/+/+++/+/+++/+//+///+//+////+////////+///+//;//////;;/;;/;;:;;;;;;:;;;::;;;::;;;;::;;:::;::::::::===:::::::::::::=:::=============================-==:===========-----=-------------------,,,,,,-,,,,,,,,,,,--,-------,,,,...:@#MMM#H+++/+////%+;+//;/+/:/+///-::/;:+;:-
############M#####%%$%%%%$%$+%%%$$$$X%%%%+%%+%%%%%%%$$$%+%+++%+++//@#X/+++%%++%+%%%++++/++///%++/+//++++//////+/;+/////;+///++//////;;//;;/;/;/;;:/;;;;;;;:;;;;;;;;::;;:;::;:::;:::::::::::::=::::::;:::::====:===================================-===---------------------------------,,---,,,,,,,,,,,-,--,----,,,,,..,+MMMMMMX%/+//=/:+;/=$%;/++/+/+//=::/:=%%%;
#################MH%$%%$+$%%%%$%$X$$$+%%$%$%$%%%%%%%%%+%%%%++%++%%+;X#/++/++++%%/%++++++///+++/+++//+++/+;+++//+///////+///;/+/////////;;;;/;;/;/;;;/;;;;;;;;;:;;;;:;;::;::::::::;:;:;::::::::::=::::::=:::::===============:=-=============------=-===----------------------,-----,---,,--,,,,,,,,,,,,-----------,,,.,.=HMMMMMM$+;;/::;;=+=XMMH%///++;//;/:--:;+%
#################M#%$$$%%%%%%%+%%$%%$%%$%%%+%%%%%%%+%++%+%%+%%+%+/+/+#%+%+%+/+++++++%+++++++++++++/++///+/////////+//////////////++/////;//;;;/;;//;;;/;/;:::;;:;;:;;:::::;;;;:::::;:::::::::::::::::=::::::-=::=::::===================-====--==---=-===---=------=---------,,---,----,--,,-,,,,,,,,,,,--,,,,,---,,,,,,.=@MMMM#@+;:;:;:;:;;/MM##@+:=:=////:-,.,,=
################MM#$$$%$%%%%%%%$%$$%$$$%%%%%%%$$$%++%%%%%+%+%+%++%%//++%%++++++%%++///++++/++++++//++///+///+///+////++///////+///+////////;;;/;:;;;;:;;;;:;;;;;;;;;;;;:::::;::::::;;:::;;::::::::====::::::=======:===:==:============--====-===----=====----==----------,,------,----,,-,,--,,,,,,,,,,,,,-,,,,--,,,,,,.,/MMMMM#X/=++/=:=;+:/@#####@%:;/%+/=-,,,-
#################M#H%$+%%+%%%%%%+$$%$%$$%$$%$$%%%%%%%%%++%++/%+%++%+/++++++++%++++/%/+/+/++++/++++++/+/++/////;/+///+/;//+;+/////;///+/;//;;;//;;;/;;;;;;:;;;;:;:;::;::;;;;::::;::;=::::::::=::::::::==::=:::===::===========================-=--==-===-==----------------,,---,,,-------,,--,,,,-,,,,,,,,-,,,,,---,-,,,..,XMMMMM#;;++//:;+;;//%#######@%;++;=;;=;
#################M##$$%$+%+%+%%$$$%%%$%%$%$%%X$%%%%++$+%+%%+++++%+++++/%+%++/++++/%+++/+++/+//++++///+//+///%+++//+//+//;//+///////////;;/;;;;;;;;;;;;;;/;;::;;;::::::;;:;:;;::::::::::::::::::::::::::=::==============================-====-=--=-=-=-=-=-----------------,---,,,,---,,,,,-,,,,,,,,,,,,,--,,,,,--,,,,,....=@MM#M#H+:;///+;=;+;:/+XXM####M%;:++/=+
####################$$$$%$%++%%%$%%%%$$$%%%$%%%%%%%%%$+%%+%%%+%+++%++++%++%++%++%/++/++%++++/++/++///+///++/+/+++//++//;//////;;////+;///;;//;;;;;;;/;;;;;;;;;;;:;;:::;;:;::::::::::::::::=:::::=:::::=::==:=:====:==::==========---================--====--===--------------,-----,--,,,,,,,,,,,,,,,,,,,,,,,-,,,-,--,,,...,/MMMMM#$:;;;;+;=;;;=/;++//X####H::/;/+
#######M############H%%$%%$+%%$%$$%$$$%%%$%%%%%%$%+%+%%%%%++%++/++%%+++++%+%+++/+/%/++++++/+++++++++++/+/+/////////////////+///;////////;/:;;//;;;:;;;;;;;::;;;;;;;;::;::;:::;:::::::::::::::::::::::::=::::::=:==:==:=:==========---============--======-----=--------------,,-,,-----,--,-,,,,,,,,,,,,,,,,--,,,,----,,,,..,%MMMMMM%+/;=;+/:=:/;/++//;/X####M%-=;
#####M#############M#HX$$+%+%%$$%%%$%$%$%%%%%%%%%%%%%%+%+%%+%++%%++++%%+++%++++++%+++%++++/+++/+++////+/+/++;/+++//////;///////////////;;/;;;;;;;/;;;;;/;;;;::;;;;;;::::;;;;;:::::::::::::::::::=:::::=:::::::=========:==========--===--======----====-----=======--------------------,,-,,,,,,,,,,,,,,,,,,,,,,,,--,,,,,,...-@MMMM#M+//;/+//+:;;;+/=:/%+/$@###MX/
###################MM@X$$%%+%+$$$%$$$$%%$%%%%%%%%+$%%+%+%%%%%%++++%%++++%+%++++%+%++/+++++/+%/++///+//////++//++//+/+//////+//;+///////;/////;;///;;;;;;;:;;;;::;::::;;:;;;;;;:::::;:::::=:=::::=:::::=::=:=:==:=:=====::=======--=============--====-=----==-====-==---------,--------,,-,,,,,,,,,,,,,,,,,,,,,,,,,--,,,,....,;MMMMM#X+//+;;/+;=/=:://:/++/%/XH###
###################MMM$$$+%+%%%%$$%%%$$%$$%%%%%%%%%+%%+%+%%%%%%++++%+/+/++++/%/%+/+++%++/%//++/+++/////////+/+++//;///////;////////;////;///;;;//;;;/;;;;;;;:;;;:::;;:;:;::::;;::::;::::::::::::::=:::::=:::====:==========-=-=================--==------==----==-------=-----,,,,------,,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.-$M#MMMMX%+/:;%/;/;=;;++::/:/$$%:$##
############MM######M#H%$%%%%+%$%%$$$%%$$%%$%%%$%%%%+$%%%%%+%%%+%%++++%++/+++++%+++++++++////++//++////////+//++//+///////////////////////;;;;;/;;;;;;;;;;;:;;;;;::;;;;;;::;:::::::::::::::::::::::::::=::========:=:::===-===========-===========---------==-----------------,--,,,-,,,,,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,,=@MMMM#@+;;;:;+%+:=/;;/+;/:/%$%$%/$
######################M$%$%%++%%$%%%$+%%+$%+$$$+%+%%%%%+%+%%%%%+++%+%++%%++++++++++++%/+++++/+/+//+;++++///++//+//+/;//;;///+/////;;/+/;/;/;;//;;;;;;;;;:;;;;;:;;;;;;;::;:;;:::::;:::::::::::::::::::::==::=:::::====:====--=======:==-==========-----=--====-----=--------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,+M#MMM#$//:::;%++;+/=/;;++=://+$%+
#######################$$%%%+%+%$+$%%$$$$$$%$$%%$%++%%%%$+%+%+%+++++%%++/+%/%++++%++/+/%/;++/+++++//+/////+++/++////++//////+/////;///;////;;//;;;;;;:;;;;;;;;;;;;;:;;;;;::;;::;::::::::::::::::::=:::::=::=:=:==:=======:=====-===============-=====--====-=-=----=------,------,,--,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:X#MMMMM+;::;=/;;/:;:;;:/+/:;-;+%%
###########M###########X$$$%+$%%%$%$$$%%$$%%%%%%%$%%%++++++/+/%%%+%%/++//+++%++%%+++++/+++/++++///+++/+//+/+///+++/;///////////////////;;/////;;;;:;;;;;;;;:;;;;;:;:;;;::;;:;;::::::::::::::::::::=::::=:::=====:====:========================-=---=---==---=--------------------,,,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--@#MMM#M;:+$;;==:=:/+//+%+:;::;/%
#######################M%%$%$%%$+%$$%%$$$%%%%%$%%%%+$%%%%+%%+%+%%%%++%%+%/+%++/%++%++%/%++///+++//+++///++/////;//+/++///////////;;;////;//;;;/;;//;;;;;;;;;;;;;:;;::;;:;;:;;;:::::::;;:::=:::::::::::::::::==:::::==:======-================-===-=-===--------===----------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---,-/MMMMM#X;$H/;;::=;////+++;/::::/
########################$X%$+%%+%%%%$%$$%$%$%$+%%%$%%%+%%%+++%%%%+%++/%+/++++++%+++++++//+/++++++++++++/+/+++///+//////;//////////////;;////;;/;:;;;;;/;;;;;;;;;::;;;;;;;;::;;::::::;;;:::=::::::::::::::::::==:::::===============-=======-==--=====---=-----==-----,-------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---,-XM#MMMM;/H/=/;/;/:::/+$%;++:;;;
######################M#@$%%$%+%%$$$$%%$%$$$%%%$%$%%%+%++%%++%+++%%++/+%+/++++/+%++++/++++///++++/+/+++//+/////+++/////////;///+//+////;/;;//;/;;;;;;:;:;;:;;:;;;:;;;::;;:;:;;:::;:::::::::::=::::::::::::==::=:========:===================-======-----==------------------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---,,;MM#MM#@;:-:;;;%+;:;;/+//%+;;:/
######################MM#%$%+%%+%%+$%%%$$$%%%$$%$%%%+%+%%%%%%+%+%++++%%+/++/%+++++%/++//%+/++//++/++///+/%++/////++////;/+//////;//////;///;/;;;;;/;;;;/;;;;;/;;;;;;;;:;;::;;:;:;:::::::::::::::::==::::=:==:==:==::=:=================:===========-------==---------------=------,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-----,-XMMMMM#MX%:-==//;;;;=://+%/;;;
#######################M#X%%+%++%++$$%$%+%%$$%%%%%X%%%%%%%%%%%+++%+%%++++++%%%+++++++++++++++/++/+///++;++///+/+////////////;///;//////;/////;;;/;;;;;:;/;;;;;;;;;;;;;;;;::;::::::::::::::::::::::::::::=:==:=:==::=======================-============---=-===-------------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-----,,/MMMMMMM@H@@$;::;///::;/++//;:
#####################M#M#M$%$+%%+%%%%%%%$%%$%%$%%%++%%%+%+%%%+%+++%%/%+//++//+++++%%+++%/+/+/++%/++/////++/+/+/+;/////;/+//////////////;//;/;//;;;;;;;;/;;;;;;;;;;;;;;;:::;;;::::;;::::::::::::::::::::::==::=:===::==========:=====================-======-===--=---------------,,----,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,----,,=@MMMMMMM@M###H:/++/;;:::/;/;/
#######################MM#$%%%%+%++$+%%%$%$%$%$%%%%$$+%%$%%%++%+%%+++/+++++/+/+++/++++/+++++/++/+//+/+//++++//////;/++//////+////;;;/////;;/;;;;;;;;;;;;;;;;;;;;;;;;;:;;:;;:;:::;;::;:::::::::::::::==::::=:=======:============================---=-=--==---=---=--------------,,,-----,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,------,-HMMMMMM#X+H####H+%%//:;;;:;::
##########################H+%%%++%%$+$%%%%$+$%%+%$%+%%%%%%%+%++%++++++%++%+++++++++++/++++//+///+/+/+++//////+//////+//////;////+//;//;///;//;;;;;;;;;;;;:;;;;:;:;;:;::;:;;::::::::;;;::::::;::::::::::::==::===:===:==:=========================--===---===-=-------------------,,--,,,,,,,,,,,,,,,,,,,,,,,.,,,,,...,,,,,,,,------,,%MMMMMMM#X+%H###M$$%%///=;:::
##########################M%%%++$%+$%+$%%%%%%%%%%$+%%%%%%%%%+%+%/++++++++++++++/+/+++/+++++%+/+///+/+/++////+//+////+///++////////+///////////////;;;;;;;;;;;;;;;;;;;:::::::::;:;;::;;:::::::::::::==::::==::=======:============================------=--==-=-----------------------,,,,,,,,,,,,,,,,,,,,,,,,,,.,,.....,,,,,,------,,+MMMMMMM#@XH$+@####M$/+%++=::
###########################$%%++$+%%$%%%%%%$%%%$%$+%%$%%$%%%%+%++++++%+++++%//+%/%++++/+/+++/++%/++/++//+///+;+////////////;/;///;///;;//;//;/;;;/;;/;/;;/;;;;;;;;;::::::;:::;;:;;::;::::::::::=:::::=::::=::=:::=::==::==::==--==:===-=======---------=--------------------,--------,,,,,,-,,,,,,,,,,,,,,..,...,,,,,,,,,,,,,------,,/MMMMMM#MM@X@HH%X####/+X$%/+;
#########################M#@$$%+%%%+$%%X%/$%%$$$%%%%$%%++%%+%+%+%+%%+%%+%++%++++++++++//+++/+++//+++/+//+//+//+////////////////+/////;;////;//;;///;/;;;;;/;/;;/;;;;;::;;::::;:::;;::::::::::::::::::::::::=::::===::=:==:====================-==-===---------=----==-------,-------,,,,,,,,,,,,,,,,,,,,,,,.,,.,,,,,,,,,,,,,---=-=-,,;#M@MMMMM##M@@M@X+X#M=X#@%%%;
###########################M%%$%+%%%%$%$%%$%+%%%%%+%%%%%%%%++++%+%+++%+%+++%+%++++/+/+/++++++/+++++++///+//+//+//;///////////;/////;////;/;/;/;;;;;//;;;;;;;;:;::;;;;;;;;;;;:;:::::::::=:::::::::::==:::::::==:::=:==::===============--================-=------=------------------,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,,,,--====-,,:M#MMMMM#MMM$X@M#MX$X%####@%=
##########################M#$%$%+$+$%%$$%%$$%%$$%$+$%+%%+%%%%%%++++%+%+++//+++++++/++++++++/++///++++////////++////+//+/+//////;/////;;;//;/;///;;;;;;;;;;:;;:;;;:;::;:;;::::::::;::::===::::::==:::::::::::=:::==:==============================--=-====--------------------------,,,,,,,,,,,,,,,,,,,,,,,...,,,,,,,,,,,,,,--======,,:M#M@MM#MMM#@/;%X###@$MHHM##H
############################H$$+%%+++$++%+%%$%$$%$%%$%%%%%+%+++++++%++++%+/+%++++%//+++++/+++/+++/////++++////;/+//////////////;/////;/;;;//;;///;;;;;;;:;;;;;;;;;;;:;;;;;;:::::::::::::::::::::::::::::=:::::::=================================-==-====--==----------------------,,,--,,,,,,,,,.,,,,,.,,,..,,,,,,,,,,,,,,-====::=--;M##@MMMM#MM#X:;//%XMMM@@MMM#
###########################M#$+%%++%%$%%%+%%%/%%%%%%%%%%%%%%%+%%+%%+%%+%+++/%++/++++++%+//++++/+/+/+%++///////////++//////////+/+////;///;///;;;;;;;;;;;;;;:;;;;;;;;;;;:;:;;;:::::::::::::::::::::::::::::::=:::=============================-===-==-====--==-----------------------,---,,,,,,,,,..,,,,.,,..,,,,,,,,,,,,,,,-====::=-,;MM#MMM#M##M#M%;/=///H@##MM$@
###########################M#$+%%$%%$%+%$%%+%%$%$%%%%$$+$%%%%+%%%+++%%+++++/%/%//+++//+++/++//+////++//+//+/+///+/////;///;//////;/;///;/;/;;;;;;/;/;;;;;;;;/;:;;;;;:;;;;::;;:::::::::::::::::::::=:::::::::::==:================================-======--------------------,,---,,,--,,,,,,,,,,,,,,,,,,,,,.,,,,,,,,,,,,,,--===:::=-=%MM#MMM#MMMM##X++:;/;$;%XM#=-
###########################M#@%%%%++%%%$%%%$%%%%$++%++%%%%+%+%+%%+++%++%+++++/++/++/+/+++/+++/+/+/+/////++/++/////+/////;////////////;;/////;;;;;;;/;/;;/;/;;;;;;;;;;;::;;:;;:::;::::::::::::::::::::::=::==================::===================-======-=-==----------------,-,---,--,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--===:::==:$#MM#M#MM##MMM#X+;;:=;;:=//;:
###########################MM#+%%+%++%+%%%%%$%+%$%%++%%%$%%%$+++++++%+%++%++++/+/%+//+++++%/+/+/+/++/+///+;+/+//;////;///////////;;;/;;;;//;//;/;;;;;;;;/;;;;;;;;;;;;;;;;;::;:::::::;;:::::::::::::::::=::==::=======:==::===:========-==========================--------------,-,,,,-,,,,,,,,,,,,,....,,,,,,,,,,,,,,,,,,,-===::::=-;X#M##MMMMMMMM##M%;;::--:/;::=
###########################MM#H%%%%%++%%%%%+%%%%$+%%%%%%%%%%%%%%+%%+++%++++%+%///+++++%++++/++++++/++//+/+++;+/////++/;//////////////;;;;//////;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::;::::::::::::::::::=:::::::::=:=====:================================--==-------=----=-------,,,,,,,,,,,,,,,,,,,...,,,,,,,,,,,,,,,.,,---==:::=--;@MMM##MMMMM#MM##@%:;;=,--,:::
############################M##%%%;%+++%%+%$%%+%$$$%%$%%%%%%%+%+++%+++%/+%+%+++++++++/++++++++%+///++//+/+++/+//////+//+//;;/+///;///;/;;///;//;;;/;;/;;;;;;:;;;;;;;;;;:;;;;;:::::::::::;:::=::::::::::=====:====:===:==::=====================-=---==-==---------------=------,-,,---,--,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,--==::==-=+MMM##MMMMMMMM#M##X:;;/;===;;=
#############################M#%$$%%%+%%%%%%%%%%%%%%$+%%%%%%%%%%%+%%+%%+++%+++++%+++%//+++/+++%++++++/++///+///////////+////////////;///;;//;///;//;///;;;;;;;;;/;;;;;;;;;;;;;:;::::::::::::::::=::::::===:::=:::====:==:::=====================---======--=-------------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,----=======-:X#MM##MMMMMMMMMMM#M+;=-;/++//;
#############################M#X%+%$%+%$%%%+$$$%+$%+%%%%%%%%%%%%+%++++%%++%+%++++++++++++++//++//+++//+/+/+//+++//////////;+;/+/////;////;//;/;;/;;;;;;///;//;;//;;;;;;;;;;;:;:;;;;;:::::::::::::::::::=::::::::====::=======================-==========--==-------------------,,,,,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,----==:====-:@######MMMMMMMMMMM#M%:=+;::/;/
################################%%%%+%+%%%%+%+$$+%%%%%%$%%+%%%%++%%+%+++++/++++++++/+++/++++/+++++++//+++/++////////////////;/////////;///;;/////;/;;;;/;;;//;;;;;;;;;;;;::;::::;;;;:::::::::::::::::::::::::::::=:====:==:===============-==--=========--==----------==--------,-,----,,,,,,,,,,,,,,,,,,,,,,,,,,,,--,---===::===-=+M######MMMMMMMMMMMM##@$+:+$+:=
################################$$+%++%%++%%%%$%%%$%+%%$%%%%%$%%%++%++%%++++%+/++%+++++/+/++/++/++++++//+//+////+//////////////+/////////;;/////////////;;;;;;;;;;:/;;;;;:;;;:;;::::;;::::::::::::::=:::::::::=:::::=============================-======-----,---------=----------,,-----,,,,,,,,,,,,,,,,,,,,,,,,,,-------======--;X#######MMMMMM#MMMMMMM##@$=HM@+
##############################M#@%+%%%/+%%+%+$+$%%$%%$%%%+%%%%%%%%%%%+++++++++++++++/++/+++++++++++++/+////+/+//+///+%/:/;//////////////;/////////;;;;;;;;/;;;;;;/;;;::::::;;:::::;;::::;:::::::::::=::::==:::==:::===============-==============---=--==-,------------------,-----------,,,,,,,,,,,,,,,,,,,,,,--,-------======--=+MM######MMMMMM##M#MMMMM@M#$/HM#
#@##############################M$%%+%%%+%++$%%%%+++%+%%%%$%%%%%++%%++++%+%+%++++++++++++/+++/++++%///+/++++////////MM%/H+;//////////;//;///;;;;//;/;;//;;;;;;;;;;;:;;;;;;::;::::;;;:;:::::=::::::::::::::==:::==::========:=================--==---=---=--------------------,------------,,,,,-,,,,,,,,,--,,,,------==-===::==--;HMM######MMMMMMM####M#M#M#X%HX$M
###############################M#@%$+++/%%$$%%%%++%%%%$%%%%%%%%%$%+%%%++++++++%++++%++++++++++++/++//++//++//////+//#X%##X//;/////////////////;;/////;/;/;;;;;:;;;;:;;:;;;;:;:;;;;;;::::::::::::::::::::::=:::::==:======::=======================----,----,-------------------,-----------,,,,,,,,,,,,,------,,,-----========--:%M#M######MMMMMM###########//M#HH
###############################M#M+%+%%+%%%%%++%$%$%%$%++%%%%%%%%$%+%%+++++%++++++/%%/++++//+++++/+//+++/+/+/+/+H@;:$/;X$/;/;//////;//;/;///;;;//////;/;;;;;;;;;;;:;;;;;;;;;::::;;:;;;:;::::::=:::::::::::=:==::===::=============================----,,-----,-----------------,---,,,,,,,,,,,,,,,,,,,,,,,-,,,,,------======::==+@##########MMMM####M%M##########M
##################################$+%%%%+%%$+%%+%%%%%%%%%%+%%+%%%+%%%%+++++%+++%++++++//+++++++/+/+///+////////%##$X@/;//;/;/;;//////+;//;/+;;;/;//;;;/;;;;;;;;;;;;;;;;;::;;;:;:::;;:::;:;;:::::::::::::::::==:::=:::=====:=======================-,---,--==-----------------------,-,,,,,,,,,,,,,,,,,---,,-----------==::=====/H############M######;-:###M#MMMM##
#######M########################M#H%+%%++%%+%%+%%%%%%%%%+%%%%%+%%+%%+%++%++++++++++++++++/+++/+++//++/+/+///$+//##MM#%://$@/;;/////+//;/;;//;;/;;;;//;/;;;;;;;;;;/;;;;;;;::;:::::::;::::::::::::::===:::::::======:::::=======:===================-----,,--==----------------------,-,,,,,,,-,,,,,,,,,-----------========::=--;XM###########MM######%,,/##M#M##M##
###################################+%%+%%+%+%%+%%%%%%%%%%%%%%%+%%%++++%+%+%++%+++++++++%+/+/++/+++++/++////@#@//X#HH@X;%H#M+/////;////;/;;////;/;/;;;;/;;//;;;;;;/;;;;;;;:::;;:::::;::;;:::;;:=:::::::::::=======:=::=============================----,,---==-----------------------,,,,,,,,,,,,,,,,,,-----------========::=-:%M###############HX@###=--$#####MM#@
#################################M#X%%+%+%%++%++%%+%%%$%$%$%+%%%%%%%++%++++++%+++++++++++/+/+++++++++++;+//H#%//+%;+##@MMX///////;//////;////;//;;;;/;;;;;//;;;/;;;;;;;;:::;;;:::::::::;:::::::::;:==:::::=::::=:::=======:===============--==-=--=---,,--=----------------,-------,,,,,,,,,,,,,,,,----------------=========:%@M##############@,,,-=;+-,-@##MM@$$%
###################################@%+++%%+%+%%%%%%%%+%%%%%%%%%%%$%%%%%++%%+++++++++/+++++%++///+++++//$M/;++;/%H%:+MMMM#%=;+//;///////;;;//;;;;;/;;/;;//;///;;;;;;;;;;;;:::;;;:;::;;::;:::::::::;::::::::=::::::::=======================--=======-------===--------------,-----,,,,,,,,,,,,,,,,,,-----,-----===--======--;$M##M#############M,,----=-,,/##M##@H%
###############################M#MM#%+%%%%%+%%$+%%+%%%$%%%%%%%%+%%%%+%++%%+++++++++++%+/++++/++++/////+#M$/+/+H##XXM@@M##@+@@/;/////////;//;//;;//;;;;;//;;/;;;;;;;;;;;;;;;;:::::;;:::::::::::::::::::::::===::::==:======-=:==============--=====--------===-==-------------------,,,,,,,,,,,,,,,-----------------==:=--=;$M##################+--:/:=---/##M###X$
#######M##########################M#X+%%+%++++%+%%%%%%%+%%%%%%%+%+%%+%+%%+++++++++/+++++///++++/++/%%;;MMM/++##@/;@###MMX/+#H+//;/;/////;////////;///;;;/;:;;;;;;;/;;;;:;::;:::::;:::::::;::::::::::::::::::==::============:==============---====-------===-----------------------,,--,,,,,,,,,,--==--------------===--=;$M####################=--@#@$+;X##MM##$;
##########M#####M#################MM@++%++++++%+%%$%%%%%$%%%%%%%%%%%+%%%+++%%+++%%+++++++++++/++//X#@/$M@M/;/M#@:;$###X+/;/%;/////////;;;/;;/;//;;;;;;;;;;;;;;/;/;;;;;;;;:;;;::::::;::::::::::::::::::::::::=:::=====:=======::=======:===========---==----------------------------,,,,,,,,,,,-----==------------=----=;+XM#####################H,-=####MM#MMMM#M+
###########M###################M##MM#$%%%%%%+%+++%%%%%$%%%%%%%%%%++%%%+++++%+%+%+++++++++++++/;%;/XM%X#M##H;%MM#%X@#H+/;/;;//%+////;;///;;;;/;//;;;;///;;;/;;;/;;;;;;;;;;:;;;;:::::;::;::::::::::::::::::::::::===::===================-===-==--==---=----------------------,,-----,-,---,,,--------==-----------=--=:/$@M##################MM###/,-HMMMMMMMMM###+
############MM#######################@+%%%+++%+%%%%%%+$+%%%%%%%%+%%%%%%++%+++++%++++/%++++++++XM+/++/%#M##H$##M#M##H;;/%H/;/H#X;////;/;//;;;/////;//;;/;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::::::==::=::=:===:====-=========::=::=======---===----,--===---------------------------------------=--==--------=:;%XM#M##################M#####;;M#MMM#M######H
#############MM####M########M######MM#/%/+%$%%%%%%++%+%%%%%%%%%%%%+%%+%+++++%++++++++%++++/+//##H;;+//M#@+;+M%+#MM#M;/+M#$$XMH%/////////;;;;//;/;;;;;/;;;/;;;;;;;;;;;;;;;;;;;::::;::::;:::;::::::::::::==:::::=:===:=========:====::-::=========-===---,,-------------------------------------=------======------=:+HM######################MM####MM###MMM########
###################################MM#%%+++++%%%%+%%%%%%%+$%+%%%%%%%+%%+%+%+%%++++++/+++/+%%/;H##+///+X$/;;%+;:####H++/H$/@#M;;;;;/+////;;;;//;//;;;;/;;;/;;;;;;;;;;;;;:::;;::;;:;;:;::::::::::::::::::::======::=:==========::===::-===:========---=--,,-,,----------------------------------=====--======---,-=;$@#########################MM####MM#MM##########
####################################M#H%++%%%+%+%+%%%+$%%%%%%%%%%%%%%%%++%+%+%+%+/+++++++$##%$M#@%//+///;+X#X+$M##+;;/$H;;%#M/;$+;//;//////;//;///;////;/;;:;;;;;;;;;;;;;:;:::;:::;:;::::::::::::::;;::::======::======-===:=========-===:=======--==---,--,,-------------------------------==============----=:%@##########################MM###MMMMM##########MM
####################################MM#%%%+%%++%%+%%%%%%$$%$%%%%%%%%%%+++++++%%+%+/++%++/%##M##X////X///X##H$@#M#M%:+X@@///MMHHM$/////;///;///;;;/;;//;;;;;;;;;;;;;;;;;;;;;::;;::::::::::::::::::::::::===:::==:::::==-====::=:===-============----=----,,--,,--,---------------===-----===-=============----:/HM##########################M#MMMMMMMM#########M###
#######################MM###########MM#X%+%%%%+%%%++%%%%%%%+%%%%%%+%++%%++++++%++++++%++//@####H;/XX#+$@MM$/;$###MM$####$;/X##M$////////;//////;;/;;;/;;;;;;;;;;;;;/;;/;;;;:;;;;:::::::::::::::::::::::==:::::::==========::=::=======-=======----=-----,,--,,--,---------------===----===============----=:/$M#############################M#MM#MM###########$%$@
#######################MM############M#M$%$%+%+%%%+%%%%%$%$+%+++%%%%%%%+%%%%++++++++++++++%####@XMMM#M#@X//+/X#M@##M@$H#X//+@MX:;/;////////////;///;//;/;;;;;;;;::;;;;;;;;::;;;:::::::::::::::;::::::=:::=::=:::::==:;;::===:;:================--=--------,,------------==----=--==--===:==:=:=======----:/$@M###############################MMMM##############$/;
#####################################MM#%%%%$%+%++%%$+%+%%%%%%%%%%%%%+%+%+++++%+%+++++++++/###$/$#M#H###@;/%##M%/@#X//%@%///X#@//X/;////;///;//;//;;;;/;;:;;;;;;;;:/;;;::::;;;;;:::::::::::::;::::::==:::=:::::::==:::;:=-==:;===::--=====---==--==------,----------------=---=-==========:::::====:=--:/$HM################################MMMM################%/
#########M############################M#X%++/%%%%%%%%%%%%$%%%%%%%%%%%+%%%%+%%+%%++++%+%+++/$##/:%###H+X#@+//MX/+;$+/;//%+++//@H@HH+;////;///////;;;;;;/;;;;;;;;;;;;;;;;;;;;;;;:;:;;::::::::::::::::===:::==::::=::::;===:===::=====-=======---==-----,-----=-----------=--==-==========:=::::::::====:;+HM################################MMM###################H%
M#####################################M##%%%+%%%+$%%%%$%+%$%%%%%%%%%%%%%+%%%%+%%+++++++%++/+##H$M#M%+/+$///+$;;/$@//+///++//+@@#H+//////;//;////;;;;;/;;;;;;;;;;;;;;;;;;;;:;;;:;;;:::::::::::::::==:::::::::::::::::::=::===::========-----========-----=---=-----==----==---=======:::::::::======:;+XM#################################MMM#####################$
#M####M###M##############################%%%%%%%+%%%%%%%%%%%%%+%%%%%%%%%%%%+%%+++++%+++%+++/X###MX+/++////%M@/%@#M+++/+$+//$MM@X+;;////////////;;/////;;;;;;;;;;;;;;;;;;;;:;;;:;;;;::::::::::::::::::::::::=:::;:===:/:=:================---------=------==---------==---==========::::::::::===-=;+X@###################################M#######################H
#######################################M#H+$++%/++%+%%%%+$%%%%%%%%%%%%++%%+++%+++++%+++++++++##@/;//++++$@###HHMX+///+@#$//$#M%;;+$X;///;;////;;;/;////;;;;;/;;;;;;;;;;;;;;::::;;;;;:::::::::::::::::::::=:==::;:===:;:==::===::===::====---=----======-=-=------------===========::::::::::===-=/$@##############################################################
#######################################MM#%%$+%%%%%%%+%%+%%%%%%%%%%$%%%%%%%%+++%+%++%+%++++++@#H:/%/+///@##M@#X%//++//HX%/;%#M%:%XMH/////;/////;///;;;/;;;;;/;;;;;;;;;;;;:::;;;;;;;::::::::::::=::=:::::::::=::::::=:;;;;;:=========:=--====-----========-------------===========:::::::::::==:;+XM###############################################################
########################################M#%%%++%%%%%%%%%%%+%%%+%%%%%%%+%+%+%%%++++++++%+++++/%##X@#+////%#M#M#+;/%@@:+$://$HMMHX@X%+///;////////;/;;;;;;;;;;;;;;;;;;;;;;;;;::;::;;::::::::::::=::::::::::::::/;:::;:=:;/;:===================----=====----------------===========::::::::====:/$@#M###############################################################
##########M####M########################M#@+%+%%%%+%%%%%%%+%%%%%%%+++%%+%%+%%+++%++++++++%+++/M###H+//+//M##MM%/XMMM$H@;;/M#M##@X/////;;//////////;;/;//;;;;;;;;;;;:;;;;;;;:::;::;::;::;:::::::::::::::::::::;/:::;;==:::=========-:;================-------==-------========:::::::::::===:/%@###################################################################
##M##############M######################MM#+%+%%+%%%%%%+%%%%+%%%%%%%%%%%+%%+++%++++%++++++++++$##$;/+$H//H#MMM@@####MM#$:;X#M@H%/;////;/;;///;/////;;;/;;;/;;;;;;;;;;;;;;;;;;;;;;;::;;;;::::::::::::::=:::::::;;:=;;:::=-==========:;====---====-====-===-----------==-======:::::::::;:=:/%H#####################################################################
########################################MM#X+%%+%+%%%%%+%%%%%%%%%%%%%++++%%%%++%+++%%+++/+++++/##X;+H##%%##M#MM##MMMX@#H/%@H@%+////////////;;///////;;/;;///;;;;;;;;;;;;;;;;;;;;;:::;;;:::::;::::::::::::::=:::;/;:::=====:::=====-=:=======--==-----==------------===--===:::::::====;//+XMM#####################################################################
####MM#M#####M####M######################MMM/%%++%%%+%+%%%%%%%%%%%%%%%%%%%%%%++%+++++++%+++++//H#M/;+@%%#@@#MM$%@MM%/%#MH#M$+/;////////;/;/;////;;;;;;;;//;/;;;;;;;;;;;;;:;;;;;;:::;;:;::::::::;:::;::::=::::=::;;==:=:===:;=================-=-=======------------=======:==::::===--/$H@########################################################################
@M#################M########################$%%+%%++%%++%%%%+%%+%%++%%%%%%++%++%++%++++++++++++%##$//+/+$++#MH//$#M/;%M@MX++///////////;/;///////;/;;;;;;;;;;;;;;;;;;;;;;::;;;:::::;;::::::::::;:::;;=::::==:==:::==::::==::=::==============--=======--=---==----=======::==:::====:/$@##########################################################################
MM########################################M#H+%++%++%%%%%%$%%%%%%%+%%%%%%%+%%%+%++++%%+++++++++/@#M+/+%X$;+M##+/+##X$HMH%+////;////;////;//;/;;/////;/;;;;;;;;;;;;;;;;;;;;;;;;::;;:::::;:::::::;;:=;/:=:=::::::=::========::::;:===================-==-----===---===::::::========:/%HM###########################################################################
##M##############M########################MMM+%%+%%%++++%+%%%%%$X%%%%%%%%%+%%%%%%+++%+%++++++++/$##%/$M#H%H#MH+//H#M#H$+///////;////////;//;//;//;;;/;;;/;;;;;;;;;;;;;;;::;;;;;;;;;:::::::::::;+%/:;/;::::::==:==:=:::=::::::;;:==================--===---===========::::::==-==:;+XM#############################################################################
###M@M###########M#########################M#$+%%++++%%%+%%%%%%%$%$%%$%%%%%%%%%%+++++%%+%%++/++++##@H#MX+$##%;/+$M#@$+////////;;//////////;;////;;///;;;;;;;;;;;;;;;;;;;;;;;::;;:;;;::::;:;/;::/+///+/:::::::==::=========:;:==:========-========--====--============::::===--=:/XM###############################################################################
#######MM##################################M#@/+%%%%%$%%+%%+%%%%%%$++$%%%%%%%%%+%+++++%%++++++++/X#MMH%//%##$;%XMMX%+;//////////////;;;///;;/////////;;;;;;//;;;;;;;;;;;;;;;;:;;;;;:::::;/++;::/+;;/+$/:=:::============:==:=====================-==============:===:::==:===:/%@#################################################################################
########M##################################M##$%%+%%++%+%+%%%%%%%%%$%%%%%%%+%%%++%%++%%+++++++++/%##H//+++@#@X@@H+//+//////////++/////////;//////////;;;;;;;;;;;;;;::;;;;;;;;:;;;;;::::://++:::;+/::/$/:=::=======::=======:=======================-================::=====:/%HM##################################################################################
#########MM#################################M#X+++++++%%%%%+%+%%+%%%%%%%%$%+%%%++%%%%+%%++++++++++H#M++++/X###H$+++////++///////+////////;///////;//;;;;//;;;;;;;;;;;;;;;;;;;:;;:;;;;:::;;;+;::=;+;::;;::::::::===:::===:============================================:====;+HM####################################################################################
M####@#M##MM###########MM#####################M+%+%%+%+%$%+%+%%%+%$%%%%%%%%%%%%%+%%+%+%%%%%+++++++%##X;/+$@#@$+/+/+///////+//////////////;///////;//;/;;;/;;;;;;;;;/;;;;;;;;;::;;:::;:::;:://:::;/;:::;::::;/::====;::=:::=====================-=======================:;/X@#####################################################################################@
M##M###M####MM##########M#####M#############M#M%%%%++++%+%+++%+++++%%%%%%%%%%%%%%++%%%+%++++%++++++H#@+$@@@H%++++////+///////////////////;///////;;;;;;;;;;;//;;;;;;;;;;;;;;;::;;::::::::::;+;:::::::::=:=:;/;;:===:;;::::=:===================-====================-=;/%HM##################################################################################HHH$$
M###M@#######@M##############################M#H%%%%%++%+%%%++%%%+%%%$%%%%%%+%%%%+%%+++%%++++++++++%##@#MX++++++++///+/+++///+///////////;////////;;;;;/;;;;;;;;;;;;;;;;;;;;;:::::::;;;:::::+%;::::==::::::;/:/+;==:;;:=:==:==========================::::========:=:;%HM###################################################################################M$%+/;
#M####M#######MM###############M#############MMM+%%++%+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+%%%+++++++++%++M##H%//++/++++++/+/+/+///+/////////////////////;;////;;;;;;;;;;;;;;;;;;;;:::;:::;;;::::;+%;::::==;+/:::://%%/:::::==:=============================::::=======::;/XM###################################################################################@%X$+;=;
######M@########@###########@@################M#$%%%%++%+%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%++%%%+%++++%%XMX+///+//++++++++/+/+///+////////////////;////;;///;/;;;;;;;;;;;;;;;;;:;/;:::::;:;::::;/;::::;:=;+/;:=:++/;;;::==================================:::=======:/+$H#####################################################################################H:;%;;/+
#######M@#########M#########MM################MM@+%+++%%+%%+%%%%%%%%%$%%%%%%%%%%%%%%%+++++%+++++++%++%+/+++++//++/++++++/+/////////////;//;///;;;///;;;;;;;/;;;;;;;;;;;;;;;/%%%+/:=:;::::::::::::;++;;;//:::/+::::::==================================::::::===:/%HMM######################################################################################$+%%/+H
####MM###MM#######M#############@#############MM#%%%++%%%$%%+%%%+%%%%%%%%%+%%%%%%%%+%+++++++++++++++/++/++++////////+++++/+////////////;///;//;;;///;;;/;;;;;;;;;;;;;;;;::;%$/;/$;:;;;:::::::::==;+%++/:/;=:;/::::================================::::==:====:/%HMM###################################################################################MH$H#M@$++/+
#M####M###MM#######M##################M#MM####MM#X+%%++%%%%%+%%%%%%%%%%%%%%%%%%%%%%++%%++%%+++%++++++++++////+///++/+//////+///////////////////;//;;;;///;;/;;;;;;;;;;;//;;/$/::%+::;;::::::::::=:/+/++:/;==::::==============================:===:::=::===:;+XM#####################################################################################@MX+;+X@#+//;
#M#####M###M@##M#####M#######M##########H######M#M+%++/+%+%%+++%%%%+%%%%%%%%%%%%%%%++%%%+++%++%++++++++//++//+//+++/+///++//+////////////;////;;//;//////;;/;;;;;;;;;/%%+;;;%+::+%:::;:::::;;::::::+/;;:;+;::::===================:=========::::::::::::=:;+$@M#M###################################################################################HXXXX%++/%:=;/
#############@M######M#################M#######MM#%+%%+%%+%%%+++++%+%%%%%%%%%%%%%%%%%%%%+++%++++++++++++++++++///++/////////+/////////////////;;;///////;;;;;;;;;;;;/%+/;;;;/%;:++::;;:::::::::::::/+;::;/;::::===================::::::==::::::=::::===:/%@M#M##################################################################################M@@H$%+/+++/+:-==
####M#########@########M#########################MH+%+++%%+%%%++/%%%%%%%%%%%%+%%%%%%%++%++%++++++++++++%++++/++//+++////////+////////;///;////;;;;;;////;;;;;;;;;;;;+$/;//:;/%$+/;:::::::::=:::::::;+;:::::::::==================::===::==:::::::====:;/%XM#MM#################################################################################@X$XHX$%/;;;/+$$+/:
###M##M########@########M############MM###M#M#M##MM%%%+%%++%%%+++%%%%%+%%%%%%%%%%%%%%++%%%%%%%%+++++++++++++++++++++/////+///////////////;//////;;//////;;;;;;;;//;;/%$%+/:;;/$%/;:::::;//:::::::::;+/==::=:::::=====:=========::::==::::::::::::==::/%X@#####################################################################################MX+/+%XX%+;;==:/%%%/
#######M########MM######@M####M######MM#####M####M#H%%+++++%%%++%%+%%%%%%%%%%%%%%%+%%%%%%++%+%++++++++++++++++/+/+/+///+++/////+///;/////////;;/;;;/;///;;;;;;/+%+/;;+X+;;;;;;/;::::;:::++;:::::::::::::::===::::====:========:::::=::::::::::::==:/+XM########################################################################################MX//+%$$$+/==:;+%$%
#####################M##MM#####M####M#######MM###M#@+%%++%%%%+%%+%%%%%$%%%%%%%%%%%%$%%+%%%+++++++/+++++%++%+++//+++///+++/+//;/+//+/////;///////;;;;;;;;;;;;;;++/;;;;/$/:/+/;;:::::;++/;;+/::::::::::::::::==::=======:::===:::::::::::::::::::=:;+$@######################################################################################MHX@##X/;//+%$$/;;;;+%%
#########M########MM############@#############MM####%+%/++%%%%++++++%%%%%%%%%%%%%%%%%+%%+%%++++++//++++++++/++//++/////+++///;////////+/;////;/;//;;/;/;;;/;;/%%//;;:;%$+%+/;:::;::;+$$+;//;:::::::::::::::::::::==::::::====::::::::::::::::::;/%HM#######################################################################################M@+=$##@%/:;/+%%+;:=+/%
###########M#######MM#####MM#####M@############M####X+%+%++%%+%%+%%%+%%%%%%%%%%%%%%%%%%%+++%++%++++++++/+++++++/++++/////+///////////////////;;;////;/;;;/%+;;%X$$$%;;/%%+/;;:;//;::/$%++%%/::::=:::::::::==:::::===:==:====:::::::;:::;;::::;/%H@########################################################################################MH@X//$M##X/;::;//;=-=/+
####M#######MM######MM#@####M#####MM################M%%%%++%%%%%++%%+%%%%%%%%+%%%%%%$$%%%%++++%+++++++%+++/++/++++++//++/+///////////////////////;/;;//;;/%X;;;/+/+$/;///;;;;;+$%;::;++;/$H$;::::::::::::::=:::::=::::=:====::::::;::::::::;/+X@##########################################################################################M%$H$$$$$M#MX;===:==-,:;
#############M########MMHM##MMM#####M#####MM#######M#$%%%++%+%%%++++%%%%%%%%%%%%%%%%$$%%++%%%++%%%+++++++++++/+++++///++++/+//+//+/////////;;//;//;;;/+/;;+X/:;;/;+%/;;;;;;;;;+%%;;:;/%;;/+/;::::::::::::=:====::::=::::====::::::::::::::;+$@MM######################################################################################MM@@MX$%/%HX$HM##@+;==-,:=:/
###############XM######MM#M##MMM#####MM############M#H%+%++%++%%+%%+%%%%%%%%%%%%%%%%%%%%%+++%+++%+++++/+++++++++++++++/+/+///////+//////////;;/;;;////$%;;/$$/;;%$%+/;;;;;;;;;;/%+;;:;%/;:;;::::::::::::::::::::::::::::::::::::::::::::;+$HM########################################################################################M@@HHM@@X;;%@@@@@@##@/===:=;+
###############@@#######MM#M###MM#####MM###########M##$+%+++++++%%%++%%%%%%%++%%%%%%%$%%++%+++++++++++++++++++++++++++////+//////////////////;////++;;%X/;;+$/:;+%+/;;;;;;;;;;:;+%/::;//;::::::::::::::::::::::::::::::::::::::::::::::/%XM###########################################################################################@XXHH@@MH%+%@MMH$X##M+::/++%
#########@####M#MM########MM###########MM##########MM#$++++%%%%+%%%+%%++%%%%%%%%%%%%%%%%%%%++%+++++++/++++/+///+++/+++/+/+/////+/////////////;;/+$$+;;/X%;;/%/;;///;;;;;;;;;;;;;;$%/::;;;;::::::::::::::::::::::::::::::::::::::::::;/+X@M###########################################################################################MMHHHXXHHM@X%+$@#@@MM#M+;++:/
#########M#################@#M#####M#####M#####M####M#H%++++$%+%%++%+++%%%%%%%%%%%%%%%%%%+++%%+++++%+++++++++//+/+///+//+/////////////////////;+X$+/;;/%$/;+%/;;;;;;;;;;;;;;;;;;;$X+;:;;;::;:::::::::;;:::::::::::=::::::::;:::::::;%$@M#M##########################################################################################M@@@@@HXX$X@M@$%+$M#M@M#@+/:=;
########M###################MM#####M######@#####MMM#M#M$+%%++%++%+%%++%%%%%%%%%%%%%%%%%%%%++%%++++++++%++++++////+++++///////////////;//////+///$X+%/;;/$$%$%;;;;;/+/;;;;;;;;;;;/%%/;:;;;:::::::::::::::::::::::;::::::;;::::::::;+$@M#M##########################################################################################MM@@@HHHHXX$$X@MMH$+=X#@M##$:-,,
########M#################################MM######M#M##H+%%+++++%%%%++%%+%%%%%%%%%%%%%%%%%++++++++++++%++++++++//++/++/++/////////////;/;/+%X+//%@X%/;;;/%$%/;;;;+%%/;;;;;;;;;;;;/;;;;;;;:::::::::::=::::::::::::::;;:;;;;;;;::;+$HM##########################################################################################MMMMMHH@@@XXHHXXXXH@@MMX++$@####+=..
#######M#######@######M####################MM########M#M%%%%%%%++%%%%%%%%%%%%%%%%%%++%$%%%%++++++++++++++++++++++++/+/////////////////////$$%/;;/XX/;;/;;;/;;;;;+X%/;;;;:;;;;;;:;;;:::::::::::::::::::::::::::::;;;;:::;;::;:;/%XM##########################################################################################MM@HHH@HH@@@XXHXH@@HHXHHM#X%;::XHMX+:-
###############@H#########M############M#####M#@#####M##X%%+%+%%+%%%%%+%%%+%%%%%%%%%%+%%+%%%++%++++%+++++++++++++++++///////////////////++H%;+///%X/;;;;/;;;;;;;/X%/++;;;;;::;;;::;;;;:::;;::::::::::::::::::::::::::::::::;/%X@#########################################################################################MMM@HXXXXH@HXH@X$$$X@@@HX$$XMM@$/:;=:/;/;
###############M#########@M###########M########M##M###M#H+%%%+%+%+%%%%++%%%%%$%%%%%%%+%%%%%%%%%+%%+++++++++++++++++++/++/////////////%%+//$X%%/;/+X%;;;;;;;//;;;;%H$+/;;:;;;;;:;:;;;::;:::::::;;:::::;;::::::;;:::;;;::::;;+$@###########################################################################################M@HX$$XXX$XXXH@HX$%$HH@HHX$$H@MM@H+;++//+
###############M#M#######M############################M#M$%%%+++%%%%%%%%%%%%%%%%%$%%%+%%%%%+%%++%++++++++++++++++++++/++///////////+$HX+//+@X+///+%%/;;;;/+%$$+;;+H%;;/;:;;:;;:;::::::;;:;:::;;;;;;::;;::::::::;;;;;;;;;;+%XM############################################################################################M@X$$$$XX$X$%X@@HXXX$XHH@@H$$H@M@@HXXXX$$
###############@##@#############MMM##########M###M####MMMX%%%+++%%%%+%%%%%%%%%%%%%%%%%%%%%%%%%%++++/++++++++++/++///++++++//////+//+$HH////XX/;/////;;/;;+X%%$%/;/XX//+/;;;;;;:;:;:;::;;;;;:;;;;;;;:::::;;::;;;;;;;;;;/+%HM#########################################################################################MMM#M@@HXX$%%$$$$%%$HHHHXXXHHHMM@H@MM@MM@HHX$$
###################M#############M#################M###M#@%%%++%%%+%%%%%%%%%%%%%%%%%%%+%%%%%%%%%%++++++++++/+++++//////++///////////+%H%///%H+/+//;/;;;;;+X%;/%%;;%H$%+/;;;;;;;;;;;;;;;;;;;;;;::;;;::;;;;;;;;;/;;;;;;/%X@###########################################################################################MHX@H@@HXHX%%%%$X$%%X$$XXXXXHXH@@@MM@@@M@@@XX$
####M##################M####M########################M#M#M$%%++%+++%%%%+%%%%%%%%%%%%%$%%%%%%%+%%%%+++++++++++++++//++//++///;/%++/;/+/$X;;/+X%////;///;;;/%$/;+%/;/%+/;;;;;;;;;;;;;;;;;;;;;:::::::;:;;:;;;;;;;;;::;/+$@##########################################################################################M#M@$$%XH@XX@H$$$$$$$$$$%$$$$$$X$$$H@@@@HHH@@@HHX
##########M###M#######M#M###MMM##########MM##########M#MM#@$%%+%+++%%%%+%%%%%%%%+%%%%%%%%%%%%%%%%%%++++++++++/++++++++++////+$XXH$////+H%///++////;/$$/;//+X+;+%/;;//;;;;;;;;;;;;;;;;;;;;;;:::::::;:;;:;;;;;;;;:;/%$@############################################################################################MMMH$%/%X@HXHHXXHX$$$$X$$$$$X$%$$%$$HHHX%%$XH@@HX
##############@#################MMM##################M##M#MX%%%++%%+++%%+%%%%+%%%%+%%%%%%%%%+++%%%%%%++++++++++++++//+//+///%@X+$H$///+HH$+////;;//+@H$/;;/%$+%+/;;;/;;;;;;;;;;;;;;;;;;;;:;::::::;;;;;;;;;;;;::/+%HM###########################################################################################M$H@MHX$%%$XXHHXXHHHXX$%XXX$$$$X$XX$$$$$$$%%%$XHHHH
########M#####@#########@########MM###M#################MMMX+++%%%+%%%+%%%%%%+%%%%%%%%%%%%%++%++++++++++++++++++///+++//+///+XX//$H+//%HH%/;;;/;;;;+X%$$/;;+HX%+;;;;;/;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;::;;;;;/%X@#########################################################################################M###M$XXXHH$%%$$XHX$XHX$$X$$$$$$$$$$XXX$%+/%%$%%%$$$XX$
#########M####M##########MM#M#####M###M##################M#@%%%%+%+%%%%+%%%%%%%+%%%%%%%%%%%%%%++++++++++++++++++++++++///////$@+;+X+/+%%+/////%+;;/+$+%@$/;/%+//;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;/+%$@#############################################################################################M@MMH+/X@X//%%$XX$$XHX%$$X$$$%$X$$$$$%%%++%%$%++%+%%$
###########################M#M#############################@$%%%+%+%%%%+%%%%%%%%%%%%%%%%%%%%%%%+++%+++++++++++++++++++//++///+HX/+X%///+/;///+@H+;;/XX%$X$/;/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;//%X@M###############################################################################################H@M#%;=+H%;//+$%++%XXX%%XX$$%%$%$$$$+%HX$$$$$$++++%%
####################M#######M##@###M###M####################X%$%+++%+%+%++%%%%%%%%%++%%%%%%%%%%%++%%+%++++++++++++++++++/+////$@$$%+//////%$+%@X%/;/XX+/++//;;/;;;;;;;;;;;;;;;;;;;;;;;/;;;;;;;;;;;;;;;;;/%$HM#############################################################################################MHM##M@M@$++%%%%%%%+++%$XH%+$XX$%%$%$XXH$%%X@@HXX$%+%+%$
#############M###############MM@#####MMM####################@+%%%%++++%%%+%%%%%%%%%%%%%%%%%%%%%%+%%++++%++++++++++++++++///+/+%@@$+//////+X#HXX$X+;/$X////;;/;;;;;;;;//;;;/;;;;;;;;;;;;;;//;;;;/;;;;;;/+$HM###############################################################################################@$$@##MMM@@HX+;/$HX%++%$XH$+$HX$$$$$XXXXH///H##@X%%$%%$%
##########M####################H@###########################M%%+++++%%%%%%+%%%%%%%%%%%%%%%%%%%%%++++++++++++++++++++++++/++++++%%++///////$#H@H%X%//%%////;;;;;//;;;;//////;;;;;;;;;;;;;;//////;;;;;/+%X@##############################################################################################M@@MHHXHM##M@HHMX/::$@H$%%$XHX$$XH$$$$$XX$$HX%++$##MX%+++++
#######MM#####M#M###############MMM###################M###MM#X%%+++%%%+%%%%%%%%%%%%%%%%%%%%%%%++%+++++++++++++++++++/+++/+/+++///+////////+HX$$+%H+/++//////;;//;;;;;;//;;;;;;;;;;;;;;;;;;/;/;;;;:;+%HM#########################################################################################M#######@@HH@@@XX###H$@#H+::X@@X$$XXHX$XXXX$$$XX%+$H@X;;;M#MX$%;==
M############MMM#################M###########M#########M###M#@$%%+%%+++%+%+%%%%%%%%%%+%%%%%%%%%+++++%%%+++++++++++++/+///++++++//+/++//////XX+//+$+/////;;//////;;//;;//;;;/;;;;//;;;;///;;//;;;;/+X@###########################################################################################MM######MM@HH@MH$+X##MM##M+;/HM@HH$XXX$XXXXHXHXH$%+%H@X/:+@##MH%=-
####M########MMM##################MM#######################MMM$%%%%+%%+%+%++%%%%%%%%%%%%%%%+%%%%%+++%%+++++++++++++////+/++++/+/////+//////+X%//////////;///////;;//;;;;;;;;;;;;///;/////;;;/;;/+$HM##############################################################################################MM######M@HXHMHXXHM##M##M%;;X@HX$XXHHX$XXHHHXHHX%%$X@H$$HM###@/:
###############M################################M#MM#######MM#X+%%++%%%%+%%%%%%%%%%%%%+%%++%%%%%%%+++++++++++++++++++////++//+++///+++/////+$%//;//;/;////////////;;;;/;;;;/;;;;;///////;;;;//+$HM#################################################################################################MMM######@X$$H@@X$H#M@##@/=;$H$%%$XHHX$XXXHXXHHX%+%HMHXHHXM##@X
################M########################MMM####M#############@$%%++%%%%%+++%%%+%%%%%%%%%++%%%%%++%+++%++++++++++/++++++///+/+//////+///////++///////;////////////;;/////////////////;;//;;/+$X@#############################################################################################M#######MM@M####@$$XHMMXXX@MM##H/;//%$X$$XHX$$$$XXXHXH$$$HM@H$$HM##MM
######################M###################MM##################MX%%%%+++%%+%+%%%%%%%%%%%+%%%%%%%%%%++%++++++++++++++++/+++/+++++/////++//////++///////;;;/////////;;;///////////;///////;;;+%XM###########################################################################################MMHX$HM##M####H%H#M##MHH@M#M@X$XM###@%/::+XX$$HHXX$$$HHHHHHXX+$@@+/+@MMMM
M#######################M#################MMM################M#H%%%%%++%+%%++++%%%%%%%%%%%%%%%%%%%++++++%++++++++++++/++/++++//+++///+///////////////;;//;//////;;;;//////////////////;;/%$@M#############################################################################################M@$%XH##M@@M#MXX@@####MMMMM@@$$+@####H$//%XHXXHHHXX$$H@HHXXX//$@X++$HMMM
##M#################M####M###################################MMM$$%%%++%+++++%+%%%+%%%%%%%%%%%%%%%%%+++%%+++++++++++++++/+++++++++///+/////////////////////////;;;;///////////////////+%$HM################################################################################################MH%+X@MM@$X@MMMHXX#####M#@H@M$%%XM###MH$XH@@@HX$XH$$$XHXXXH$+%$@H$$$$HM
##MM##################M#######################################M#H%%%++%%++%+++%%%%%%%%%%%++%%%+%%%%%+++%%++++++++++++/++++//+//+++///+//////////////////;;//////;;/////////+////////+%$HM############################################################################################MHM####MX//%H@@H$XHM#MHX$@#####M@MMM@X$%H####MMM@H@@H$$XX$$XHXXXXHX%%XH@HX$XX
###MM#################M@####M####################M############M#@%%%%%%%%%%%+%%%%+%%%%%+%%+%%%+%%%%%+++++++++++++++++//+++//////+++//++/++///////////////;//////////////////+//////+$HM###############################################################################################X$M#####H%/+HMMHXH@M##@%$XM#####MMMMM@HX$######MM@XHX%%$$$XHXXX$XHHX$XH@@HHH
######M#######################################################MMM$%%%%%+%%%+%%%++%%%%%%%%%%++%%%%%%+++++++++++++++++++++++///+////++//+++///////////////;;/////////////////++////+%X@#################################################################################################MH@MM####@/;%@MM@@@MMM#@X%$#######M@@MMH$%H####M#@$XH$%++%XX$$X$XXHHHHH@@MM@
#######M#################M############M###################MM###MMX+%%%++%%++++%%+%%%%%%%%%%%%%%%%%%%++++++++++++++++++++++++++//++++//+++/////////////////////////////////////++%$HM###################################################################################################M@@HX####@/;%@MMMM@@@MMMXX$@#####M@XHM@HX+$M####MXXHH$%+/%X$%$$$%%H@@HH@M##
M#######M########################################################@%%%%%+%%+%%+%%%%%%%%%+%%%%%%%%%%%%++++%+++++++++++++/+++++////+/////////////+++///////////////+/////++++///+%XHM##############################################################################################MMM######MH$X@###@;-/HM@@@@@@@MM@@X$@####@$X$HMH$$+$####@@XH@@$/++$XXX%//%XHXXXHM#
##########M#############################################M########MX+%%%++%%+%%%%%+%%+%%%%%%%%%%%%%%%%%++%%++++++++/+++++++++//////+/+//////////++////////////+//++//++++++//%$HM##############################################################################################M@H@M@@M#####MX/%M##$=;%XHXX@M@HXX@M@$$%H###X$+$HH@@X$$@M@MMHH@M@$//%$@@H+;+%$XXXX$X
###########M####################################################MM@++$%++%%+%%%%%++%%%%%%++%%%%%%%%%%%++++++++++++++++/+++///++++//+/////////++/////////////+/++++++++++/+%$HM###############################################################################################MM@H@MHX@MM####M$XHM#M//$$%/+%X@@HXHM#@X%+$HH@$+/+$X@@XX%$HM#H%XHMH$%$HM#MX%%%%%$$%+%
###########MMM###################################################MM$%%%%%+%+%++%%%++%%%%%%%%%%%%%%%+%++++++++++++++/+++++++/++++++/++/+/++++//+++//////////+/+++++/++++/+$HMM################################################################################################MMM@HHM@@M@HM###M@@MM@$%XX$%/:/$H@@@MMM@HXH@@MH$+++%XH@@X$%X@X%%+$@X$X@###M@X$+++%%%$
############MM###################################################MMH%%%%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%%++++++++++++++++++++++++++++/+++///++++////////////++++++++/+++++%$@###############################################################################################MMM####MX+$###M@@@M#MMMM#M@HHX$X$//+//XMMMMMM@H@M##@X%++%$X@H$XHH@XX%%XH$X@#####M@%+;///%
###################################################M#############MM@%%%%%%++%%%%%%%%%%%%%%%%%%++%%%++%+%%++%++++++++++++++++++++++/+++///+++////////++//++++++++++/++%XHM###############################################################################################MMMM##MM#@++X###MHX@M##MMMMM#MX++$HX%/:;/$H@MM@XH@MMMM@X%+%+$XXH@@@MHXXXHHXH@##M###@$/;==;
##################################################@M#############MMMX%$%%+++%%++%+++%%%%%%%%%%++%%%++%+%%+++++++++++++++++++++++++++++/////+/+//++++++//++++++////+%XHM#################################################################################################MMM###MMMM$+/H###M@@MMM#MMHXM#MX+%H@@X/;:;;/H@@HHXH@MMMMX%%/+%%XHH@@M@HXXH@H@@M#MM##@X+;==
###########M######################################################MMH%$%%+++++++%%%%%%%%%%++%%%%%%%%%%%%%%+++++++++++++++++++++//+++/+///+//++++++++++//++++////+%$HM####################################################################################################MM###MMMM@$+/XM###M@@@MMMH$$@##@XHHMM@$+/==/%$XHXHHHH@MMHX$$%/%$XH@M@@@H@@M@H@MMMMM#M@$/:
###########MM@###M##############M#################################M#H%%%%%+++++%%%%%%%%%%%%%+++++%%%%%%%%%%%+++++++++/++++/++++++++++++//////++++++++//+++++/++%$X@##################################################################################################MM####MM#M#MMM@X%+$M####MM#M@@X$X@##M@H@##M@X+;;/;+$XHHHHH@@H$X@H$%+%$X@@MMMMMMM@M@@@@@@M#MH$
############M@####M###############################################MMMX%%%%+%%++%%%%%%+%$$%%%%+%+++%%%%%%+%%%+++++++++/++++++++//+++++++////++++++++/+++++++/+%%X@####################################################################################################M####MMMM####MMMHXXXH@M#####@@@@HX$H##M@HH###H$%/=:;/$$HHH@@@X$XM@X+/;/$X@MMM#MMMMM@@M@@@M##@
###################################################################MM@%%%%%%%%%%++%%%%%%$%%%%%%%%%%%%%%%%%%%+++++++++++++++++++++++++++/+++++++++++++++++//+%XHM###############################################################################################@M####@XM###MMMM######M@@X$$@M####MMMMM@$%XM#M@XXM##M@X+:==:/X@@@HM@$$X##X+:-:%XH@@MMM##M@@MMM@@@M#
####################M##############################################MM@%%%%++%%%%%%%%%%%%%%%%%%%%%%%%%$$$$%%%++++++++++++++++++++++++++++++++++++++++++++/+%XHM################################################################################################MMMM###X/%M###MMMM#####MMM@HHHHM#####MMMMH$%%@##@$XM####@$::,,/HM@HHHH$%X##X/;==/$H@@MMM###@@MMMM@@M
##########M########################################################MMMX%%%%+++%%%%%+%$%%%%%%%%%%%%%%%%%%%%%+++++++%++++++++++++++++++++++++++++++++++++++$HM####################################################################################################M@@@#M$%$@######MM@MM##MMMMHHX@#####M#MM@$$XHM#@@HX@#MMMH+-,:%XH@HHH@X$%##M%-::/%XXH@MMMMMMMMMM@@M
##########M###########M#######################################M#####MM@%$%%+++%%%%%+%%%%%%%%%%%%+%++%%%%%++%%%%%++%++++++/+++++++++++++++++++++++//+/+%$X@##############################################################################################MM#####M##MMM#M$$X@######MH@M#####MM@HXX@#####M@MM@@HXHM#H$%@MMMM@%:=;%$@@HH@@$XXM#MX%+/+%++X@M@@MMM@@M@MM
##########M###########M#######################M#########M######MM###MMM$%%%++%%%%%+%%%%%%%%%%%%%%%%%%%%%+%%%%%++++%++++++++++++/++++++++++++//+++++++$X@################################################################################################@H@############MHHXH#####MHH@M####M##MHX$H####MM@@M#@X$XMMH%+H#M##@%:-=+XH@HHMMHX$@##@H%+%%$H@M@M@MMM@@@MM
##############################################M################MMM##MMMH%%%%%+%%%%%%%%%%%%%%%%%%%%%%%%%%+%%%%++++++++++++++++++++++++++++//++++++++%X@##################################################################################################M@XH#############M@X%X####M@@MM#######M@$$@#####M@H@#MXX%X@X$$X####M%==-+XHHHHMMHXXHM##@HHH@@#MM@@M##MMM@@
######M###########M#############################################MMM####@$%%%%%%%%%%%%%%+%%%%%%%%%%%%%%%%%%%++++++++++++++++++++++++++++++++/////+%XHM#################################################################################################MM#MHX@M#########MM##@$%H#####MM@M#####MMM@X$%M####MHHMM#@XX@MHXX@M#M#M%:=:+%XXHH@M@@H$XMM$$M@@###M@H@@M##M@
###############################M#################################MMM###MX%%%%%%%%%%%%%%%%%%%%%%+%%%%%%%%%%%++++++++++++++++/+++++++++++++++++/+%$XM##################################################################################################MMM@MM@HHM#########MMM#M$%$M####MXHM#####MMMMX%+X####MM@@MMM@M#M@HXX@MM##$:=:;+%+$X@MM@HH@@$$H@@HM##M@@@@MM#M
###################################################################M##M#@%%%%%+%%+%%%%%%%%%%%%%%%%%%%%%%%+++++%%++%+++++++++++++++++++++++++++$H@M####################################################################################################MMMMMMMH@H########M@@##@$%%H####X$@M########MX%%H######MHH@M####@H$%%M###%/:==-==/$H@@@@M#HX$H@H@M###M@@@MM#
######################################################################M#M$%%%%%%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++%%++++++++++++++++++/+%$X@###############################################################################################MM######MMMMM@MM@XH########@@M#M@X$+%X##@HHH@MM#######@$H@MHXHM#@HHHMM###MX/;+M##MH%:::=,-;+$XXHMMM@HHHH@M#####M@MMM
#########M##############################################################MX%%%%%%%%++%%%%%%%%%%+%%%%%%%%%%%%%%++%+++++%%+++++++++++++++++++%X@M################################################################################################MMM######MM##MM@@H@MM#####M@@@@M#M@$%%@#M@@HHHM########MMMMHX%HMM@X$XHM###MX%%+H##M@H$+;:=-=+%$$X@@M@HX$HM#MM###MM@M
#########M######################M#M####################################MMH%%%%%%%%%%%%%%%%%%%%+%%%%%%++%%%++++++%+++++%+++++++++++++++++%$HM##################################################################################################MMM###M###M##MM@@@@@MMM###M@@@@MM##MHX@MMM@@HHH@@@@MM###MMMMHXHMMM@HHH@M####@$+%XM##M@@H$=;:;;//$X@@MMHXX@M@XHM###M@
##M######M######################################################M#######MM$++%+%+%%%%%%%%%%%%%%%%%%++%%++%++++++%++++++++++++++++++++++$H@#####################################################################################################MMM##MM#####HH@@M@@@M#####MMMMM##MMMMMMMM#@@HHHXXH@MM###MMMMMMMMMMMMM@MM##M#@H$$$@#MMMMMX$+;:=:+$X@@MMHXXXHHX$@###M
################################################################@#######MMH++%+%+%%+%%%%%%%%%%%%%%%++%%++%++++++++%%++%++++%++++++++%$X@################################################################################################@XX######MM########MMMMMMMMM##M####MMMMMMMMM###M##M@XH@@H@H@M#MMMMMM######M@@@@MMMMM#@X$$%HMMM##MH%+/:/%XH@MMM@HXHHXX$@###
M#################################################################M#####MM@$+%%%+%++%%%%%%%%%%%%%%%%++%%%+++++%%++%%%+%+++++++++++%$X@M##################################################################################################HHM######M#########M#MM##MMM@@M###MMMM#MMMM##@HH##MHX@M#MHHM##MMM#M######MM@@MMM@@M##MH$%$M###M##MH$/;:+XH@MMM@H@MMXXH@M#
###########M##################M###################################MM#####MMX+%%+%%+%%%%%%%%%%%%%%%%%%%%%%++%%%%%%%%+++++++++++++%$XHM#####################################################################################################MMM#################H$M###MHHH@MMM##M@M#MM##MX%XM#M@HX@#M@@@MMMMM######M@@@MMMMMM#####@XHHXM#MM###M%/;;%H@@@@@MMMMMM@@H$
#######MM#####M###################################################MM#####MM@%+%%%%+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++%%%+++++%$X@M#########################################################################################################M@@M######MMM#####H$X###MM@H@@@MMMMMMMMM##MHX$HM##M%+XMMMHH@MMMM##M##MM@MM##M@@M#M###M@HXHHM##MM#MX+/+$X@@@@@@@MM##MHH
########MM###MM###########################################MM#############MMMX+%%%%%+%%%%%%%%%%+%%%%%%%%%%%%%+%%%%%++++%%%%%+%$X@M################################################################################################M##########MM@@MM#####MMMMM##M%$M####M@@M@@@MMMMMMMMM##@HHX@##H$$HM#M@@M@MMMMMM##@@MM##MHH@MMM###MM@HHXHM#####H$$$XH@@@@HH@MM##M@
#########MM###MM############################M#############MH###M##########MM@%++%%+%%%%%%%%%%%%+%%%%%%+%%%%++%%%%++++++%+%%%XHM##################################################################################################MM##########MM@@@MM####MMMMMMM@%$######MM@@MMM###M@####MM@H$$M#HXH@###MMMMMMMMMM##M####M@@MMMMMMM###M@HXXM##M##MHX%$$$HHHHHH@MMMM
######M###MM####M###############################################M##########MMX%+%++%%%%%%%%%%%%%%%%%%%+%%%%%%%%%+++++%+++%$X@################################################################################################M@M###############M@@MM#####M#MMM#MHH@M#####M@@M#####MHX###MMM@X$$MMM@$X#####M#MMMMM##MM##M@@HM###MMMMM##MMXH@M#MM##H$XXXXXH@HH@MMM@@
#######MM##MM####M#################M######################MM#M@##MM########MM@$+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++%%%+%$H@M##################################################################################################@@M####MMM####M###MM#MM@M#####M#MMM@@HXM####M@######MHX@##M@HM@X$%$@M@$%@####M$$HM##MM@M##M@H@####M@@@M###M@@XHH@MM$%%$H@@@@HH@MMM@@
########@###MMMM##MM###############M##########################@####MM######MM#H$+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%++++%X@M################################################################################################M@M##M@M###MMM###MM#######MH%@#####M#M##M@$$@###MMM######@HH@##M@@M@H%+%@M$%/%XM#MX$%$X@#MMMM##MXXH####M@@@@MM#MMHHXX@HX$%+%HM#M@HH@MMM@
########MMM###MM###MM#####################M################M########MM######M#M@%%%%%%%%+++%%%%%%%%%%%%%%%%%$%%%%%%%%XHM###############################################################################################MM##MMM##MMM#######MMM#######M@$H@M##MMMM###M@HHMM#MM@M##M###MM@@###MMMMH$X@#@%-,=%##@HX$/%@MMMMMMM@X%$M###MM@@MMMMMMH@@@MM@$%++X##M@XX@MMM
#########M@@@##MM###MM#####################M##MM#############M#######MM#########H%%%%%%++++%%%%%%%%%%%%%%%%%%%%%%%$XHM################################################################################################MMMM##MMM#########MMMMMM########MH%+M##MMMM####MMMM#MMMM#M@M##MMH$H####MM@XH@MMH:.-;H#MM@X+%X@MM###MMH$$$@####M@MMMMMMMMMM###MX%%%H##MHXX@MM
###########MM###MMM##MMM###############M######MMM############MM#######MM########MH$%++++%++%%%%%%%%%%%%%%%%%%%+%%$H@M#################################################################################################M###MMM#MHM###MMM####MMMM########M%%H###MM##M###MM#######M@@MM@M@X$%H###M@HHMMMMX-;%HM#MM@$%$H@MM#M#M@XX$$HM###HX@M##MMMH@@MM#MH$XX@MM@X+%X@
###########MM#####MM###M#################MM#####MM#############M#######MM########M@$%+++++%%%%%%%%%$$%%%%%%%%%%$H@M##################################################################################################MMM####M#M@@MM##M@M#####MM#########HXX#####MM####@X@######M@M@@@@@@X+%@M##M@@MMMM@$$H@MMM#M@XXH@M#MMMMM@@$X$$XM#X$$@M##MM@HH@@M#M@HHX%XHX+%$X
#######M#####@###########M###############MH#######MM###########MM#######MM###M#####@X$%+%%%%%%%%%%%%%%%%%%%%%$XHM################################################################################################M####MMM####M@H@M@M##M@M#####MMM########@XX#####M####@X%@###MMMM@@@HH@@H%%%%H####M#MMM@HX@MMMM#M@XXH@MMMMMMMM@@X$XHMHX%$H###MM@@HHMMMM@H$;;$H$$$$
#######M######M@M#########################@M###M####MM###################MM#########M@X$%++%%%%%%%%%%%%%%%$XH@M##################################################################################################MM@###M@@####M@@@@MMM#M@MMM####MM#######MHXHM####M####@HH@###MMMMMMM@@@@X$%//$M#####MM@@H@@@MMM#MHHH@MMMMMMMMMM@HH@MM@X$%X####M@@@@MM@MMH/+XHHH$%
###############MMM#########################MMM#HM####MM###############################M@X$$%%%++++%%%%$$XH@MM#####################################################################################################@XH###M@@####MMMM@@MM##M@M######MMMMMMMMM@@H#####M#M#M@@H@####MMMMM#MMM@H$/;;+H##MMM##MMMM@MMMMM@@@MMMMMM#MM@@@MM@MMMH$$$$M####M@MMMM@@@XH@@@H$%
################MMMM#########################MMMMM####MM################################MMHHHXX$$$XXXHH@@M#################################################################################################MMMM####@@@H@##M@@#####M@MMM#MMM@MM######MMMMMMMMM@HHM###MM#M#M@HHM####MMMM###M@H$+++XM###M#M@MMMMM@@MMMMMMMM@MMMMM@@HHM@MMMM@H$$$H####MMMMMMMM@HH@@H$%
##################M#######MM##################MMM######MM#############MM##################MMMM@@@@M@MMM#####################################################################################################M@@M#####M@@M##MHHM###MMM##@HMMM@HM######MM##MM##MH@M###M#M#M#M@HXH###MMMMMM##M@@H$$XXM#M##MMM#M#MM@@M@@@M#M@@MMM@@@@@@MM@MM#MHXX$H#####MMMM@MMHXH@HHH
#######M###########MM#M####MM###################M##HM###M##############MM##################################################################################################################################M#MM@@M#####MMM@@M@@M######M@@M##M@H@########MMM####MM##########M@HXXM####MM@@M#MMM@HHH@@MMM######MMMM@HX$$@##M@@@MMM@@MMMM@MMMM@HX$%$M####M@@MM@HXXH@@
##M####M############MM######MM###################MMM@####M#################################################################################################################################################M###MH$H######MM@MMMMMM####MMM####MM@HM#####MMMM###############MM#MHHX@####M@@@@##MMM@@@@@@MM######MMMM@$;;+M##MMM@MMMMMMMM@@@MMMM@$%;;@###MMMMMM@X$$X@
#####################MM#######MM##################MMM###############################################################################################################################################MM###MMMM###MHHM######MMMMM#MM@M####MMM#M##M@@@M####MM################MM##M@HH@M###M@@@M###MM@MMM@@@@M####MMMM@X/::+@####M@@@@MMMMMM@@MMMM@X/+/H####M#MMM@HXXX
######M################MM######MM################################################M##################################################################################################################M##########@#M@H@######MMM#MMM@HHM###MMMM#M##MMHX###MM######################M@HHX@###M@M@@##MMMMMMM@@MM####MMMM@$/+%$HM##MM@@HH@@MMMMMMM#M@@X%$$%@####MM@MMHHX
######M#################MM#######M#####################M#########################M############################################################################################################################MXH##M@@@#####MMMM@@@@@@M#####MM#####HX@M###########################MH$XM##MMM@H@##MMMMMMM@MM####MMMM@@XX$XXX$@MM@@@@H@@MMMMMMMMMM@HX$+/$M###MM@MM@H
#########M################M#######MM##################MM######M################################################################################################################################################@H@##M@H@########MM@@MHMMM###########@XMM#####M#####################M@@M#####@@M###MMMMMMMMMM#####MMM@@@@HHXH@MM#M@@@@@@@MMMMMMMMMMMH//+HM###MMM@@@
#########MM################MM######MM##################MM######MM####################################################################################################################################M##########M@HM#M@HMM#######M@@@@MMM##M####MM###M@@MM###########################MM#####MMM####MMMMMMMMMMMM###MMMMMM@@H@@M##MM@M@@@@@@MMMMMMM@M@$%$HHH####@@@@
#############################MM#####MM#####################M####M###########################################################################################################################MM#####MMMM##########M@@M##M@M@M#######@@@M###@$#####@@M##M@H@################################MMMMMMM####MMMMMMMMMM#MMMMMM#MMM@MMMM#MMMMM@@@@@@@@MM@@MMM@XXH@M#MX@@@@H
:fresse:
 
is ja flashig

wie hast du das denn gebastelt mito?oder hast du das im net gefunden?



ansonsten kann ich mir inzwischen auch vorstellen das es nicht an den rams liegt das ich nicht mehr als 550mhz mit CL5 bis 480 mit CL4 schaffe.
sicher bin ich mir jedoch nicht, da ich es nicht testen kann.

zum einen könnten mehr als 2,5V die lösung sein ( mein board kann leider nur max 2,5V)

zum andren ist mir aufgefallen das ich bei dem board TRC nur bis max 26 stellen kann und das bei einigen GMH/GKX screens wo die rams 1200 @ prime geschafft haben TRC auf 36 steht
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh