CHARSET="ANSI";
AXIS-VERSION="2013";
CODEPAGE="iso-8859-15";
LANGUAGE="fi";
LANGUAGES="fi","sv","en";
CREATION-DATE="20230404 09:00";
NEXT-UPDATE="20270414 08:00";
TABLEID="statfin_evaa_pxt_13t4";
DECIMALS=0;
SHOWDECIMALS=0;
MATRIX="001_13t4_2023";
SUBJECT-CODE="EVAA";
SUBJECT-AREA="evaa";
SUBJECT-AREA[sv]="evaa";
SUBJECT-AREA[en]="evaa";
COPYRIGHT=YES;
DESCRIPTION="13t4 -- Valittujen lukumäärä puolueen, ikäluokan, sukupuolen ja vaalipiirin mukaan eduskuntavaaleissa, 2003-2023";
DESCRIPTION[sv]="13t4 -- Antalet invalda i riksdagsvalet efter parti, åldersklass, kön och valkrets, 2003-2023";
DESCRIPTION[en]="13t4 -- Number of elected MPs by party, age group, sex and constituency in Parliamentary elections, 2003-2023";
TITLE="Valittujen lukumäärä eduskuntavaaleissa muuttujina Vuosi, Sukupuoli, Puolue, Ikä, Vaalipiiri ja Tiedot";
TITLE[sv]="Antalet invalda i riksdagsvalet efter År, Kön, Parti, Ålder, Valkrets och Uppgifter";
TITLE[en]="Number of elected MPs in Parliamentary elections by Year, Sex, Party, Age, Constituency and Information";
CONTENTS="Valittujen lukumäärä eduskuntavaaleissa";
CONTENTS[sv]="Antalet invalda i riksdagsvalet";
CONTENTS[en]="Number of elected MPs in Parliamentary elections";
UNITS="Lukumäärä";
UNITS[sv]="Antal";
UNITS[en]="Number";
STUB="Vuosi","Sukupuoli","Puolue","Ikä","Vaalipiiri";
STUB[sv]="År","Kön","Parti","Ålder","Valkrets";
STUB[en]="Year","Sex","Party","Age","Constituency";
HEADING="Tiedot";
HEADING[sv]="Uppgifter";
HEADING[en]="Information";
CONTVARIABLE="Tiedot";
CONTVARIABLE[sv]="Uppgifter";
CONTVARIABLE[en]="Information";
VALUES("Vuosi")="2003","2007","2011","2015","2019","2023";
VALUES[sv]("År")="2003","2007","2011","2015","2019","2023";
VALUES[en]("Year")="2003","2007","2011","2015","2019","2023";
VALUES("Sukupuoli")="Yhteensä","Miehet","Naiset";
VALUES[sv]("Kön")="Totalt","Män","Kvinnor";
VALUES[en]("Sex")="Total","Males","Females";
VALUES("Puolue")="Yhteensä","KOK","PS","SDP","KESK","VIHR","VAS","RKP","KD","LIIKE","Muut";
VALUES[sv]("Parti")="Totalt","SAML","SAF","SDP","CENT","GRÖNA","VÄNST","SFP","KD","LIIKE","Övriga";
VALUES[en]("Party")="Total","KOK","PS","SDP","KESK","VIHR","VAS","RKP","KD","LIIKE","Other";
VALUES("Ikä")="Yhteensä","18 - 24","25 - 29","30 - 34","35 - 39","40 - 44","45 - 49","50 - 54",
"55 - 59","60 - 64","65 -";
VALUES[sv]("Ålder")="Totalt","18 - 24","25 - 29","30 - 34","35 - 39","40 - 44","45 - 49","50 - 54",
"55 - 59","60 - 64","65 -";
VALUES[en]("Age")="Total","18 - 24","25 - 29","30 - 34","35 - 39","40 - 44","45 - 49","50 - 54",
"55 - 59","60 - 64","65 -";
VALUES("Vaalipiiri")="Koko maa","VP01 Helsingin vaalipiiri","VP02 Uudenmaan vaalipiiri",
"VP03 Varsinais-Suomen vaalipiiri","VP04 Satakunnan vaalipiiri","VP06 Hämeen vaalipiiri",
"VP07 Pirkanmaan vaalipiiri","VP08 Kaakkois-Suomen vaalipiiri","VP09 Savo-Karjalan vaalipiiri",
"VP10 Vaasan vaalipiiri","VP11 Keski-Suomen vaalipiiri","VP12 Oulun vaalipiiri",
"VP13 Lapin vaalipiiri","VP05 Ahvenanmaan maakunnan vaalipiiri";
VALUES[sv]("Valkrets")="Hela landet","VP01 Helsingfors valkrets","VP02 Nylands valkrets",
"VP03 Egentliga Finlands valkrets","VP04 Satakunta valkrets","VP06 Tavastlands valkrets",
"VP07 Birkalands valkrets","VP08 Sydöstra Finlands valkrets","VP09 Savolax-Karelens valkrets",
"VP10 Vasa valkrets","VP11 Mellersta Finlands valkrets","VP12 Uleåborgs valkrets",
"VP13 Lapplands valkrets","VP05 Ålands valkrets";
VALUES[en]("Constituency")="Whole country","VP01 Helsinki constituency","VP02 Uusimaa constituency",
"VP03 Varsinais-Suomi constituency","VP04 Satakunta constituency","VP06 Häme constituency",
"VP07 Pirkanmaa constituency","VP08 Southeast Finland constituency",
"VP09 Savo-Karelia constituency","VP10 Vaasa constituency","VP11 Central Finland constituency",
"VP12 Oulu constituency","VP13 Lapland constituency","VP05 Region of Åland constituency";
VALUES("Tiedot")="Valittujen määrä (lkm.)";
VALUES[sv]("Uppgifter")="Invalda (antal)";
VALUES[en]("Information")="Number of elected MPs";
TIMEVAL("Vuosi")=TLIST(A1),"2003","2004","2005","2006","2007","2008";
TIMEVAL[sv]("År")=TLIST(A1),"2003","2004","2005","2006","2007","2008";
TIMEVAL[en]("Year")=TLIST(A1),"2003","2004","2005","2006","2007","2008";
CODES("Vuosi")="2003","2007","2011","2015","2019","2023";
CODES[sv]("År")="2003","2007","2011","2015","2019","2023";
CODES[en]("Year")="2003","2007","2011","2015","2019","2023";
CODES("Sukupuoli")="SSS","1","2";
CODES[sv]("Kön")="SSS","1","2";
CODES[en]("Sex")="SSS","1","2";
CODES("Puolue")="SSS","03","02","01","04","05","06","07","08","09","99";
CODES[sv]("Parti")="SSS","03","02","01","04","05","06","07","08","09","99";
CODES[en]("Party")="SSS","03","02","01","04","05","06","07","08","09","99";
CODES("Ikä")="SSS","18-24","25-29","30-34","35-39","40-44","45-49","50-54","55-59","60-64","65-";
CODES[sv]("Ålder")="SSS","18-24","25-29","30-34","35-39","40-44","45-49","50-54","55-59","60-64",
"65-";
CODES[en]("Age")="SSS","18-24","25-29","30-34","35-39","40-44","45-49","50-54","55-59","60-64","65-";
CODES("Vaalipiiri")="SSS","VP01","VP02","VP03","VP04","VP06","VP07","VP08","VP09","VP10","VP11",
"VP12","VP13","VP05";
CODES[sv]("Valkrets")="SSS","VP01","VP02","VP03","VP04","VP06","VP07","VP08","VP09","VP10","VP11",
"VP12","VP13","VP05";
CODES[en]("Constituency")="SSS","VP01","VP02","VP03","VP04","VP06","VP07","VP08","VP09","VP10",
"VP11","VP12","VP13","VP05";
CODES("Tiedot")="val_lkm";
CODES[sv]("Uppgifter")="val_lkm";
CODES[en]("Information")="val_lkm";
VARIABLE-TYPE("Vuosi")="Time";
VARIABLE-TYPE[sv]("År")="Time";
VARIABLE-TYPE[en]("Year")="Time";
ELIMINATION("Sukupuoli")="Yhteensä";
ELIMINATION[sv]("Kön")="Totalt";
ELIMINATION[en]("Sex")="Total";
ELIMINATION("Puolue")="Yhteensä";
ELIMINATION[sv]("Parti")="Totalt";
ELIMINATION[en]("Party")="Total";
ELIMINATION("Ikä")="Yhteensä";
ELIMINATION[sv]("Ålder")="Totalt";
ELIMINATION[en]("Age")="Total";
ELIMINATION("Vaalipiiri")="Koko maa";
ELIMINATION[sv]("Valkrets")="Hela landet";
ELIMINATION[en]("Constituency")="Whole country";
LAST-UPDATED("Valittujen määrä (lkm.)")="20230414 08:00";
LAST-UPDATED[sv]("Invalda (antal)")="20230414 08:00";
LAST-UPDATED[en]("Number of elected MPs")="20230414 08:00";
UNITS("Valittujen määrä (lkm.)")="Lukumäärä";
UNITS[sv]("Invalda (antal)")="Antal";
UNITS[en]("Number of elected MPs")="Number";
CONTACT("Valittujen määrä (lkm.)")="Tilaston kotisivu";
CONTACT[sv]("Invalda (antal)")="Statistikens webbsidor";
CONTACT[en]("Number of elected MPs")="Statistics' homepage";
SOURCE="Tilastokeskus, eduskuntavaalit";
SOURCE[sv]="Statistikcentralen, riksdagsval";
SOURCE[en]="Statistics Finland, parliamentary elections";
META-ID("Vuosi")="SCALE-TYPE=None";
META-ID[sv]("År")="SCALE-TYPE=None";
META-ID[en]("Year")="SCALE-TYPE=None";
META-ID("Sukupuoli")="SCALE-TYPE=nominal";
META-ID[sv]("Kön")="SCALE-TYPE=nominal";
META-ID[en]("Sex")="SCALE-TYPE=nominal";
META-ID("Puolue")="SCALE-TYPE=nominal";
META-ID[sv]("Parti")="SCALE-TYPE=nominal";
META-ID[en]("Party")="SCALE-TYPE=nominal";
META-ID("Ikä")="SCALE-TYPE=ordinal";
META-ID[sv]("Ålder")="SCALE-TYPE=ordinal";
META-ID[en]("Age")="SCALE-TYPE=ordinal";
META-ID("Vaalipiiri")="SCALE-TYPE=nominal";
META-ID[sv]("Valkrets")="SCALE-TYPE=nominal";
META-ID[en]("Constituency")="SCALE-TYPE=nominal";
OFFICIAL-STATISTICS=YES;
NOTE="Tilaston dokumentaatio";
NOTE[sv]="Dokumentation för statistiken";
NOTE[en]="Documentation of statistics";
NOTE("Puolue")="Puolueella tarkoitetaan oikeusministeriössä pidettävään puoluerekisteriin merkittyä rekisteröityä yhdistystä. Puolueet ovat aatteellisia yhdistyksiä, joiden varsinaisena tarkoituksena on valtiollisiin asioihin vaikuttaminen. Puolueen "
"jäseneksi liitytään yleensä puolueen paikallisyhdistyksen kautta.##SDP = Suomen Sosialidemokraattinen Puolue#PS = Perussuomalaiset#KOK = Kansallinen Kokoomus#KESK = Suomen Keskusta#VIHR = Vihreä liitto#VAS = Vasemmistoliitto#RKP = Suomen "
"ruotsalainen kansanpuolue#KD = Suomen Kristillisdemokraatit (KD)#LIIKE = Liike Nyt#LIBE = Liberaalipuolue - Vapaus valita#Piraattip. = Piraattipuolue#EOP = Eläinoikeuspuolue#FP = Feministinen puolue#KaL = Kansalaisliitto#KL = Korjausliike#SKE = Suomen "
"Kansa Ensin#AP = Avoin Puolue#SKP = Suomen Kommunistinen Puolue#KRIP = Kristallipuolue#VKK = Valta kuuluu kansalle#VL = Vapauden liitto#SML = Sinimusta Liike";
NOTE[sv]("Parti")="Med parti avses en registrerad förening som införts i justitieministeriets partiregister. Partier är ideella föreningar som grundats i syfte att påverka politiska angelägenheter. Partimedlemmarna hör vanligen till någon av partiets "
"lokalföreningar.##SDP = Finlands Socialdemokratiska Parti#SAF = Sannfinländarna#SAML = Samlingspartiet#CENT = Centern i Finland#GRÖNA = Gröna förbundet#VÄNST = Vänsterförbundet#SFP = Svenska folkpartiet i Finland#KD = Kristdemokraterna i Finland (KD)#"
"LIIKE = Rörelse.nu#LIBE = Liberalpartiet - Frihet att välja#Piratp. = Piratpartiet#EOP = Djurrättspartiet#FP = Feministiska partiet#KaL = Medborgarförbundet#KL = Korjausliike#SKE = Finska Folket Först#AP = Öppna Partiet#FKP = Finlands Kommunistiska Parti#"
"KRIP = Kristall Parti#VKK = Valta kuuluu kansalle#VL = Frihetsalliansen#SML = Sinimusta Liike";
NOTE[en]("Party")="A party is an association which has been registered in the register of political parties maintained by the Ministry of Justice. Parties are voluntary associations whose main purpose is to influence the handling of the affairs of the "
"state. Membership is usually gained through the party's local association.##SDP = The Finnish Social Democratic Party#PS = The Finns Party#KOK = National Coalition Party#KESK = Centre Party of Finland#VIHR = The Greens#VAS = The Left Alliance#RKP = The "
"Swedish People's Party of Finland#KD = Christian Democrats in Finland#LIIKE = Movement Now#LIBE = The Liberal Party - Freedom to choose#Pirate Pty = Pirate Party of Finland#EOP = Animal Justice Party of Finland#FP = The Feminist Party#KaL = "
"Kansalaisliitto#KL = Finnish Reform Movement#SKE = Finnish Nation First#AP = The Open Party#SKP = The Communist Party of Finland#KRIP = Crystal Party#VKK = Valta kuuluu kansalle#VL = Vapauden liitto#SML = Sinimusta Liike";
MADE-WITH="PxPro";
DATA=
200
21
33
17
9
14
18
18
17
17
10
18
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
1
1
0
0
1
1
0
0
1
1
0
0
0
17
1
4
2
0
0
1
1
3
2
1
2
0
0
23
4
4
2
1
3
3
1
0
2
0
1
2
0
25
5
3
2
0
4
1
3
1
3
0
2
1
0
25
2
7
2
0
1
2
2
3
2
1
2
1
0
42
1
5
6
4
1
4
4
6
1
2
7
1
0
44
2
6
3
2
4
4
4
3
6
4
3
2
1
16
5
2
0
1
0
2
3
1
0
1
1
0
0
2
0
1
0
1
0
0
0
0
0
0
0
0
0
40
6
8
5
2
3
5
4
1
2
1
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
1
0
0
0
0
0
8
3
1
1
1
0
1
0
0
0
0
0
1
0
9
0
2
1
0
2
0
1
0
2
0
1
0
0
2
1
0
1
0
0
0
0
0
0
0
0
0
0
7
0
2
1
0
0
2
1
0
0
0
1
0
0
3
0
1
1
0
1
0
0
0
0
0
0
0
0
7
2
1
0
0
0
1
2
0
0
1
0
0
0
2
0
1
0
1
0
0
0
0
0
0
0
0
0
3
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
6
9
4
3
5
5
7
5
3
3
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
1
0
0
0
0
5
0
1
1
0
0
0
0
1
1
1
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
5
2
0
1
0
1
0
1
0
0
0
0
0
0
9
0
2
0
0
1
2
2
1
1
0
0
0
0
9
0
1
1
2
0
0
1
2
0
1
0
1
0
16
1
4
1
1
1
2
2
1
0
1
2
0
0
5
3
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
55
2
5
3
3
3
3
6
7
7
4
9
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
0
6
1
1
0
0
0
0
1
0
1
0
2
0
0
6
0
0
0
0
1
0
1
0
2
0
1
1
0
4
0
0
0
0
0
1
1
1
1
0
0
0
0
10
1
2
0
0
0
0
0
2
1
1
2
1
0
15
0
1
3
1
1
1
1
3
0
0
4
0
0
11
0
0
0
1
1
1
2
1
2
2
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
4
4
1
0
1
2
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
1
0
0
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
4
1
2
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
1
3
2
1
1
2
1
2
0
1
3
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
1
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
6
0
1
1
1
0
0
1
1
0
0
1
0
0
6
1
0
0
0
1
1
0
0
0
1
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
1
3
1
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
4
0
1
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
0
0
1
0
1
1
0
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
125
10
19
8
7
6
9
14
14
11
8
12
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
0
3
1
0
0
0
0
0
0
2
0
0
0
0
0
9
1
1
0
0
1
1
1
0
1
0
1
2
0
12
2
1
1
0
1
0
3
1
2
0
0
1
0
15
1
4
1
0
1
1
1
2
2
0
1
1
0
34
1
5
4
3
0
3
3
6
0
2
7
0
0
38
1
6
2
2
3
4
3
2
6
4
2
2
1
10
3
0
0
1
0
0
3
1
0
1
1
0
0
2
0
1
0
1
0
0
0
0
0
0
0
0
0
25
3
4
3
1
2
3
4
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
3
1
0
0
0
0
1
0
0
0
0
0
1
0
4
0
0
1
0
1
0
1
0
1
0
0
0
0
2
1
0
1
0
0
0
0
0
0
0
0
0
0
6
0
2
0
0
0
2
1
0
0
0
1
0
0
3
0
1
1
0
1
0
0
0
0
0
0
0
0
4
1
0
0
0
0
0
2
0
0
1
0
0
0
2
0
1
0
1
0
0
0
0
0
0
0
0
0
3
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
4
6
1
2
2
3
4
3
1
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
1
0
0
0
0
0
0
5
0
1
0
0
1
1
1
0
1
0
0
0
0
6
0
1
1
1
0
0
0
2
0
1
0
0
0
13
1
4
0
1
1
2
1
1
0
1
1
0
0
3
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
42
1
4
2
3
1
2
5
7
5
3
6
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
0
1
0
1
0
1
0
1
1
0
3
0
0
0
0
0
0
1
1
1
0
0
0
0
7
0
2
0
0
0
0
0
2
1
0
1
1
0
13
0
1
2
1
0
1
1
3
0
0
4
0
0
10
0
0
0
1
0
1
2
1
2
2
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
0
2
1
1
1
1
1
2
0
1
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
6
0
1
1
1
0
0
1
1
0
0
1
0
0
5
0
0
0
0
1
1
0
0
0
1
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
75
11
14
9
2
8
9
4
3
6
2
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
1
0
0
0
1
1
0
0
1
0
0
0
0
14
0
4
2
0
0
1
1
1
2
1
2
0
0
14
3
3
2
1
2
2
0
0
1
0
0
0
0
13
3
2
1
0
3
1
0
0
1
0
2
0
0
10
1
3
1
0
0
1
1
1
0
1
1
0
0
8
0
0
2
1
1
1
1
0
1
0
0
1
0
6
1
0
1
0
1
0
1
1
0
0
1
0
0
6
2
2
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
3
4
2
1
1
2
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
5
2
1
1
1
0
0
0
0
0
0
0
0
0
5
0
2
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
24
2
3
3
1
3
2
3
2
2
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
1
0
0
0
0
5
0
1
1
0
0
0
0
1
1
1
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
3
1
0
1
0
1
0
0
0
0
0
0
0
0
4
0
1
0
0
0
1
1
1
0
0
0
0
0
3
0
0
0
1
0
0
1
0
0
0
0
1
0
3
0
0
1
0
0
0
1
0
0
0
1
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
1
1
1
0
2
1
1
0
2
1
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
1
0
0
0
0
1
0
1
0
2
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
3
1
0
0
0
0
0
0
0
0
1
1
0
0
2
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
3
3
1
0
1
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
1
0
0
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
3
1
1
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
1
1
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
1
2
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
200
21
34
17
9
14
18
18
16
17
10
18
7
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
24
3
4
3
2
2
0
0
1
2
2
3
2
0
21
3
4
3
1
0
4
2
2
1
1
0
0
0
38
5
9
2
1
3
3
5
2
4
1
2
1
0
23
3
3
1
0
4
1
5
1
3
0
1
1
0
24
3
4
4
0
2
1
0
4
1
1
4
0
0
37
0
5
4
4
0
4
4
5
2
4
3
1
1
23
1
4
0
1
3
3
0
1
3
1
4
2
0
8
3
1
0
0
0
1
2
0
0
0
1
0
0
50
8
11
5
2
4
5
5
2
3
1
3
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
0
1
1
0
0
0
0
1
0
0
0
5
1
0
1
0
0
1
0
1
1
0
0
0
0
13
3
4
1
1
0
2
1
0
0
0
1
0
0
11
0
3
0
0
3
0
2
0
2
0
0
1
0
3
2
0
1
0
0
0
0
0
0
0
0
0
0
8
0
1
2
0
0
2
1
1
0
0
1
0
0
3
0
2
0
0
0
0
0
0
0
0
1
0
0
3
2
0
0
0
0
0
1
0
0
0
0
0
0
5
0
2
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
45
5
7
4
3
4
5
5
4
2
3
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
2
1
1
0
0
0
2
1
0
1
0
7
1
2
0
1
0
2
1
0
0
0
0
0
0
3
0
0
0
0
1
0
1
0
0
1
0
0
0
4
1
0
1
0
0
1
1
0
0
0
0
0
0
6
1
1
1
0
1
1
0
1
0
0
0
0
0
8
0
3
0
1
0
0
1
2
0
1
0
0
0
7
1
1
0
0
1
1
0
1
0
0
2
0
0
2
1
0
0
0
0
0
1
0
0
0
0
0
0
51
1
4
3
3
3
3
5
7
6
4
9
3
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
1
0
0
0
0
0
1
0
0
2
1
0
5
1
1
0
0
0
1
1
0
0
1
0
0
0
9
0
1
1
0
1
0
1
2
2
0
1
0
0
5
0
0
0
0
0
0
2
1
1
0
1
0
0
8
0
1
0
0
1
0
0
1
1
1
3
0
0
13
0
0
2
2
0
1
1
2
1
2
2
0
0
5
0
0
0
1
1
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
5
4
2
0
1
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
5
2
2
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
5
2
1
0
0
1
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
17
1
2
2
1
1
2
1
1
0
1
3
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
2
0
0
0
0
1
0
0
1
0
0
4
0
1
0
1
0
0
1
0
0
0
0
1
0
4
0
0
0
0
1
1
0
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
9
1
3
1
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
4
0
2
0
0
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
0
1
0
0
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
116
8
17
10
7
8
13
10
12
10
5
11
5
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
6
1
1
1
1
1
0
0
0
0
0
0
1
0
9
1
0
2
1
0
2
0
2
1
0
0
0
0
16
1
5
1
0
1
2
2
0
2
0
1
1
0
10
1
1
0
0
2
0
3
1
1
0
1
0
0
16
2
1
3
0
2
1
0
3
1
0
3
0
0
33
0
5
3
4
0
4
3
5
1
4
3
1
0
19
1
3
0
1
2
3
0
1
3
1
2
2
0
5
1
1
0
0
0
0
2
0
0
0
1
0
0
30
4
5
4
1
3
4
4
2
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
1
0
0
0
0
0
0
0
0
4
1
0
1
0
0
0
0
1
1
0
0
0
0
5
1
1
0
0
0
2
1
0
0
0
0
0
0
5
0
1
0
0
2
0
1
0
1
0
0
0
0
2
1
0
1
0
0
0
0
0
0
0
0
0
0
8
0
1
2
0
0
2
1
1
0
0
1
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
1
0
0
0
0
0
0
4
0
1
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
2
4
1
2
2
3
1
3
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
1
0
1
0
1
1
0
0
0
0
0
0
0
7
0
3
0
1
0
0
0
2
0
1
0
0
0
6
1
1
0
0
1
1
0
1
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
36
0
3
2
3
2
3
4
4
4
2
6
3
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
6
0
1
1
0
1
0
1
0
1
0
1
0
0
4
0
0
0
0
0
0
2
1
0
0
1
0
0
6
0
1
0
0
1
0
0
1
1
0
2
0
0
12
0
0
1
2
0
1
1
2
1
2
2
0
0
4
0
0
0
1
0
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
1
1
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
14
1
2
1
1
1
1
1
1
0
1
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
1
0
0
1
0
0
4
0
1
0
1
0
0
1
0
0
0
0
1
0
4
0
0
0
0
1
1
0
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
4
0
1
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
84
13
17
7
2
6
5
8
4
7
5
7
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
18
2
3
2
1
1
0
0
1
2
2
3
1
0
12
2
4
1
0
0
2
2
0
0
1
0
0
0
22
4
4
1
1
2
1
3
2
2
1
1
0
0
13
2
2
1
0
2
1
2
0
2
0
0
1
0
8
1
3
1
0
0
0
0
1
0
1
1
0
0
4
0
0
1
0
0
0
1
0
1
0
0
0
1
4
0
1
0
0
1
0
0
0
0
0
2
0
0
3
2
0
0
0
0
1
0
0
0
0
0
0
0
20
4
6
1
1
1
1
1
0
1
1
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
8
2
3
1
1
0
0
0
0
0
0
1
0
0
6
0
2
0
0
1
0
1
0
1
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
25
3
3
3
1
2
2
4
1
2
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
0
0
2
1
1
0
0
0
2
1
0
1
0
5
1
2
0
0
0
1
1
0
0
0
0
0
0
3
0
0
0
0
1
0
1
0
0
1
0
0
0
4
1
0
1
0
0
1
1
0
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
15
1
1
1
0
1
0
1
3
2
2
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
1
0
0
2
0
0
4
1
1
0
0
0
0
1
0
0
1
0
0
0
3
0
0
0
0
0
0
0
2
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
4
3
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
2
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
4
2
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
1
2
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
200
21
35
17
9
14
18
18
15
17
10
18
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
1
1
1
0
1
1
0
0
3
0
1
1
0
14
3
2
2
1
1
2
1
0
0
0
2
0
0
25
2
5
2
3
1
0
1
0
2
3
3
3
0
28
4
9
2
0
1
2
5
1
1
1
1
1
0
38
2
9
2
1
4
3
4
2
6
1
3
1
0
25
2
2
2
2
3
2
4
3
1
1
3
0
0
32
3
3
4
0
1
4
2
5
3
1
4
1
1
18
1
3
2
1
1
3
1
4
1
1
0
0
0
10
3
1
0
1
1
1
0
0
0
2
1
0
0
44
6
11
4
2
3
5
3
2
3
2
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
1
0
0
0
1
1
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
6
0
2
0
1
1
0
0
0
0
2
0
0
0
6
0
2
1
0
0
1
1
0
1
0
0
0
0
14
2
5
1
1
1
2
2
0
0
0
0
0
0
4
0
1
0
0
0
0
0
1
1
0
1
0
0
5
1
0
1
0
0
1
0
0
1
0
1
0
0
2
0
0
1
0
0
0
0
1
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
39
3
7
3
2
3
4
4
3
3
2
4
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
1
0
1
0
0
3
0
1
1
0
0
0
0
0
0
0
1
0
0
4
1
0
0
1
0
0
1
0
0
0
0
1
0
4
1
3
0
0
0
0
0
0
0
0
0
0
0
6
0
1
0
0
1
0
1
1
1
0
1
0
0
6
0
1
1
0
2
0
1
0
0
1
0
0
0
6
0
0
1
0
0
2
0
2
1
0
0
0
0
4
0
1
0
0
0
2
1
0
0
0
0
0
0
4
1
0
0
1
0
0
0
0
0
1
1
0
0
42
4
7
4
2
4
4
6
4
2
2
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
1
0
0
0
0
0
0
8
0
0
2
1
0
0
0
0
2
1
1
1
0
6
1
2
0
0
1
1
1
0
0
0
0
0
0
5
0
1
1
0
1
0
1
0
0
1
0
0
0
7
0
0
1
0
0
2
2
2
0
0
0
0
0
6
1
1
0
0
1
0
1
1
0
0
1
0
0
6
1
2
0
0
1
1
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
35
1
2
2
1
2
2
4
5
4
3
6
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
2
0
0
0
0
0
0
0
0
1
1
0
6
1
0
0
0
0
0
2
1
0
1
0
1
0
7
0
0
0
0
1
1
0
1
2
0
2
0
0
3
0
0
0
0
0
0
1
0
0
0
2
0
0
6
0
0
0
0
0
1
1
1
0
1
1
1
0
5
0
0
1
1
0
0
0
2
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
10
4
3
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
1
1
0
0
1
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
2
1
2
1
1
1
0
1
0
1
3
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
2
0
0
0
1
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
5
0
1
2
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
9
1
3
1
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
2
1
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
1
0
1
1
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
115
12
18
9
6
8
10
11
10
11
4
12
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
1
1
0
0
0
0
0
0
3
0
1
1
0
5
1
1
1
0
0
1
0
0
0
0
1
0
0
10
1
2
0
2
1
0
1
0
0
1
1
1
0
11
1
3
2
0
1
1
2
0
1
0
0
0
0
22
1
5
0
0
2
3
2
1
5
0
2
1
0
14
1
0
2
2
2
0
3
1
0
1
2
0
0
24
3
2
2
0
1
4
2
4
1
0
4
1
0
16
1
3
2
1
1
1
1
4
1
1
0
0
0
6
2
1
0
1
0
0
0
0
0
1
1
0
0
29
4
5
3
1
2
4
2
2
2
1
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
0
1
1
0
0
0
0
1
0
0
0
5
0
1
1
0
0
1
1
0
1
0
0
0
0
7
1
2
0
0
1
2
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
1
0
0
1
0
0
5
1
0
1
0
0
1
0
0
1
0
1
0
0
2
0
0
1
0
0
0
0
1
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
28
3
4
1
2
2
2
4
3
2
2
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
3
1
0
0
1
0
0
1
0
0
0
0
0
0
3
1
2
0
0
0
0
0
0
0
0
0
0
0
4
0
1
0
0
0
0
1
1
1
0
0
0
0
5
0
0
1
0
2
0
1
0
0
1
0
0
0
4
0
0
0
0
0
2
0
2
0
0
0
0
0
2
0
1
0
0
0
0
1
0
0
0
0
0
0
4
1
0
0
1
0
0
0
0
0
1
1
0
0
15
2
4
1
0
3
1
2
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
1
0
0
0
0
0
0
4
1
0
0
0
1
0
1
0
0
0
1
0
0
6
1
2
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
0
1
1
1
1
2
3
3
4
1
4
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
6
0
0
0
0
1
1
0
0
2
0
2
0
0
2
0
0
0
0
0
0
1
0
0
0
1
0
0
5
0
0
0
0
0
1
1
1
0
0
1
1
0
5
0
0
1
1
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
2
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
1
1
1
1
0
0
0
1
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
4
0
1
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
85
9
17
8
3
6
8
7
5
6
6
6
3
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
1
1
0
0
0
0
0
0
0
9
2
1
1
1
1
1
1
0
0
0
1
0
0
15
1
3
2
1
0
0
0
0
2
2
2
2
0
17
3
6
0
0
0
1
3
1
0
1
1
1
0
16
1
4
2
1
2
0
2
1
1
1
1
0
0
11
1
2
0
0
1
2
1
2
1
0
1
0
0
8
0
1
2
0
0
0
0
1
2
1
0
0
1
2
0
0
0
0
0
2
0
0
0
0
0
0
0
4
1
0
0
0
1
1
0
0
0
1
0
0
0
15
2
6
1
1
1
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
7
1
3
1
1
0
0
1
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
0
3
2
0
1
2
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
27
2
3
3
2
1
3
4
3
2
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
1
0
0
0
0
0
0
8
0
0
2
1
0
0
0
0
2
1
1
1
0
5
1
2
0
0
0
1
1
0
0
0
0
0
0
4
0
0
1
0
1
0
1
0
0
1
0
0
0
5
0
0
0
0
0
2
1
2
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
12
1
1
1
0
1
0
1
2
0
2
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
1
0
0
5
1
0
0
0
0
0
1
1
0
1
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
5
2
2
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
1
0
1
0
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
1
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
5
1
2
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
200
22
35
17
8
14
19
17
16
16
10
18
7
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
13
2
2
2
0
0
2
0
0
1
1
2
1
0
20
3
2
2
0
1
2
1
0
5
1
2
0
1
26
4
5
2
2
1
2
4
0
1
0
5
0
0
21
0
5
1
2
4
0
1
2
0
2
1
3
0
28
3
8
4
0
1
3
3
3
1
1
0
1
0
36
3
7
0
0
4
4
4
3
6
0
4
1
0
26
4
3
2
2
1
0
4
6
0
2
2
0
0
14
1
2
2
0
1
3
0
1
2
0
2
0
0
15
2
1
2
2
1
2
0
1
0
3
0
1
0
37
6
9
4
1
3
4
3
2
2
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
1
0
0
0
0
0
0
0
0
0
0
6
0
1
0
0
1
1
1
0
1
0
1
0
0
3
1
2
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
1
0
0
0
0
1
0
0
0
7
1
2
2
0
0
1
1
0
0
0
0
0
0
7
0
1
0
0
1
2
1
1
1
0
0
0
0
4
1
0
0
1
0
0
0
1
0
0
1
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
3
1
1
1
0
0
0
0
0
0
0
0
0
0
38
3
7
3
2
3
4
4
3
3
2
3
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
0
1
0
0
0
0
1
0
0
2
0
0
1
0
0
0
0
0
1
0
0
0
0
6
1
0
1
1
0
1
1
0
0
0
1
0
0
6
0
1
0
1
2
0
1
0
0
0
0
1
0
6
1
3
0
0
0
0
1
1
0
0
0
0
0
7
1
1
0
0
1
0
1
1
1
0
1
0
0
3
0
1
1
0
0
0
0
0
0
1
0
0
0
3
0
0
0
0
0
1
0
1
1
0
0
0
0
2
0
0
0
0
0
1
0
0
0
1
0
0
0
34
4
6
3
2
3
4
4
2
2
2
1
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
1
0
0
2
0
1
0
1
0
0
5
0
0
1
1
1
0
0
0
0
1
0
1
0
5
0
2
1
0
1
1
0
0
0
0
0
0
0
4
0
2
0
0
1
0
1
0
0
0
0
0
0
6
2
0
1
0
0
0
1
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
3
1
0
0
0
0
1
0
0
0
1
0
0
0
49
1
4
3
2
3
3
5
6
5
4
9
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
1
1
0
1
0
4
0
0
1
0
0
0
0
0
2
0
1
0
0
3
0
1
0
0
0
0
1
0
0
0
1
0
0
4
0
1
0
0
0
0
0
1
0
0
1
1
0
6
0
0
0
0
0
1
1
1
1
1
0
1
0
9
1
1
0
0
1
1
0
1
1
0
3
0
0
8
0
1
0
0
0
0
3
2
0
1
1
0
0
5
0
0
1
0
1
1
0
0
0
0
2
0
0
7
0
0
1
2
1
0
0
1
0
1
0
1
0
15
5
3
1
0
0
2
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
4
2
0
0
0
0
1
0
0
0
1
0
0
0
3
0
1
1
0
0
0
0
0
0
0
1
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
2
1
2
1
1
1
0
1
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
2
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
2
0
0
0
1
0
0
0
1
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
1
4
1
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
4
1
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
1
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
2
0
0
0
0
0
1
0
0
1
0
0
0
0
2
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
117
14
23
8
4
8
11
10
8
11
7
9
3
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
7
2
2
0
0
0
0
0
0
1
1
1
0
0
11
1
1
1
0
0
1
1
0
4
1
0
0
1
10
2
4
1
0
0
1
1
0
0
0
1
0
0
12
0
3
0
1
4
0
1
0
0
1
1
1
0
13
1
2
2
0
1
2
3
1
1
0
0
0
0
22
2
6
0
0
2
3
1
1
4
0
2
1
0
17
3
2
1
1
0
0
3
4
0
1
2
0
0
11
1
2
1
0
1
2
0
1
1
0
2
0
0
13
2
1
2
2
0
1
0
1
0
3
0
1
0
21
4
5
2
0
2
3
2
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
0
1
0
0
0
4
0
1
1
0
0
1
1
0
0
0
0
0
0
4
0
1
0
0
1
2
0
0
0
0
0
0
0
3
1
0
0
0
0
0
0
1
0
0
1
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
3
1
1
1
0
0
0
0
0
0
0
0
0
0
26
3
4
1
1
2
2
4
3
2
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
1
0
0
2
0
0
1
0
0
0
0
0
1
0
0
0
0
4
1
0
0
0
0
1
1
0
0
0
1
0
0
5
0
1
0
1
2
0
1
0
0
0
0
0
0
4
1
1
0
0
0
0
1
1
0
0
0
0
0
5
1
1
0
0
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
13
2
4
1
0
2
2
0
0
1
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
2
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
3
1
0
0
0
0
1
0
0
0
1
0
0
0
35
1
3
2
2
2
3
4
3
5
2
6
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
1
1
0
0
0
2
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
0
0
0
0
0
0
1
1
0
3
0
0
0
0
0
1
1
0
1
0
0
0
0
6
1
0
0
0
1
1
0
0
1
0
2
0
0
7
0
1
0
0
0
0
3
2
0
0
1
0
0
5
0
0
1
0
1
1
0
0
0
0
2
0
0
6
0
0
1
2
0
0
0
1
0
1
0
1
0
8
3
2
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
3
1
0
0
0
0
1
0
0
0
1
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
1
1
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
2
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
3
1
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
83
8
12
9
4
6
8
7
8
5
3
9
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
0
2
0
0
2
0
0
0
0
1
1
0
9
2
1
1
0
1
1
0
0
1
0
2
0
0
16
2
1
1
2
1
1
3
0
1
0
4
0
0
9
0
2
1
1
0
0
0
2
0
1
0
2
0
15
2
6
2
0
0
1
0
2
0
1
0
1
0
14
1
1
0
0
2
1
3
2
2
0
2
0
0
9
1
1
1
1
1
0
1
2
0
1
0
0
0
3
0
0
1
0
0
1
0
0
1
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
16
2
4
2
1
1
1
1
1
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
5
0
1
0
0
1
1
0
0
1
0
1
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
3
1
1
1
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
1
1
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
0
3
2
1
1
2
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
0
0
1
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
21
2
2
2
2
1
2
4
2
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
5
0
0
0
1
0
0
2
0
1
0
1
0
0
4
0
0
1
1
0
0
0
0
0
1
0
1
0
4
0
2
1
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
1
0
1
0
0
0
0
0
0
4
1
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
0
1
1
0
1
0
1
3
0
2
3
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
2
0
0
1
0
0
0
0
0
0
0
1
0
0
2
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
3
0
0
0
0
0
0
0
1
0
1
0
1
0
3
0
1
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
7
2
1
0
0
0
1
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
1
0
2
0
1
1
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
1
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
200
22
36
17
8
14
19
17
15
16
10
18
7
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
7
0
0
1
1
0
1
0
0
0
2
2
0
0
23
4
3
3
0
1
2
1
1
1
1
4
2
0
30
3
7
5
2
1
1
2
0
2
2
3
1
1
34
4
6
1
3
3
4
6
0
3
0
3
1
0
24
3
5
1
0
4
1
0
4
2
2
1
1
0
25
2
6
2
0
1
2
4
2
3
1
2
0
0
28
2
3
0
1
3
4
2
3
5
1
2
2
0
18
3
3
1
1
1
1
2
5
0
1
0
0
0
10
1
3
3
0
0
2
0
0
0
0
1
0
0
38
6
9
4
1
3
4
3
2
2
1
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
1
0
0
5
1
1
1
0
0
0
1
0
0
0
0
1
0
6
0
2
0
0
1
1
1
0
0
0
1
0
0
6
1
3
0
0
1
1
0
0
0
0
0
0
0
5
1
1
1
0
0
0
0
1
0
1
0
0
0
6
1
1
1
0
0
1
1
0
1
0
0
0
0
4
0
1
0
0
1
1
0
0
1
0
0
0
0
3
2
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
39
3
6
4
2
3
4
4
3
3
2
4
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
4
0
0
1
0
0
0
0
1
0
0
2
0
0
3
0
1
2
0
0
0
0
0
0
0
0
0
0
8
1
1
0
1
0
2
2
0
0
0
1
0
0
8
2
1
0
0
3
0
0
1
1
0
0
0
0
6
0
3
0
0
0
0
2
0
1
0
0
0
0
5
0
0
0
0
0
1
0
1
1
1
0
1
0
4
0
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
40
3
7
3
3
4
5
5
3
2
2
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
3
1
1
0
0
0
1
0
0
0
0
0
0
0
6
0
2
0
1
0
0
1
0
0
2
0
0
0
9
0
0
1
2
0
0
2
0
2
0
1
1
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
5
0
1
1
0
1
1
1
0
0
0
0
0
0
5
1
2
0
0
1
0
0
1
0
0
0
0
0
4
0
0
0
0
1
0
1
2
0
0
0
0
0
5
1
1
1
0
0
1
0
0
0
0
1
0
0
31
0
2
2
1
1
2
3
4
4
3
6
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
5
0
0
0
0
1
1
0
0
1
1
0
1
0
5
0
0
1
1
0
0
0
0
1
0
1
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
5
0
1
0
0
0
0
0
1
1
0
1
1
0
5
0
0
0
0
0
0
0
1
1
1
2
0
0
5
0
0
0
0
0
1
1
1
0
0
2
0
0
3
0
1
0
0
0
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
20
6
5
1
0
1
2
2
1
0
1
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
1
0
0
0
4
2
1
0
0
0
0
0
0
0
0
1
0
0
3
2
1
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
1
0
1
0
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
0
0
0
16
3
2
2
1
1
1
0
1
0
1
3
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
1
0
0
4
1
1
1
0
0
0
0
0
0
0
1
0
0
6
2
1
0
0
1
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
1
3
1
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
3
1
0
0
0
0
0
0
0
2
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
1
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
3
0
0
0
0
1
1
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
106
9
19
8
3
7
11
9
6
13
6
10
4
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
1
0
1
0
0
0
1
1
0
0
12
2
2
1
0
0
1
1
0
1
1
2
1
0
14
0
5
3
0
0
0
1
0
2
0
1
1
1
9
1
0
0
0
1
2
2
0
2
0
1
0
0
16
2
2
1
0
3
1
0
1
2
2
1
1
0
11
0
2
0
0
1
1
3
0
3
0
1
0
0
18
0
3
0
1
1
3
1
2
3
1
2
1
0
13
3
2
0
1
1
1
1
3
0
1
0
0
0
9
1
3
3
0
0
1
0
0
0
0
1
0
0
22
3
3
2
1
2
2
3
2
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
1
0
0
4
1
1
0
0
0
0
1
0
0
0
0
1
0
2
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
1
0
1
0
0
0
3
0
0
0
0
0
1
1
0
1
0
0
0
0
3
0
1
0
0
1
1
0
0
0
0
0
0
0
3
2
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
27
2
2
3
1
2
4
4
1
3
2
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
0
0
0
2
0
0
3
0
1
2
0
0
0
0
0
0
0
0
0
0
5
0
0
0
0
0
2
2
0
0
0
1
0
0
5
2
0
0
0
2
0
0
0
1
0
0
0
0
4
0
1
0
0
0
0
2
0
1
0
0
0
0
4
0
0
0
0
0
1
0
1
1
1
0
0
0
3
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
1
6
1
0
3
3
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
3
0
2
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
5
1
1
1
0
0
1
0
0
0
0
1
0
0
21
0
2
1
0
0
2
2
1
4
2
5
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
3
0
0
0
0
0
1
0
0
1
1
0
0
0
3
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
0
0
0
0
0
0
1
0
1
1
0
2
0
0
0
0
0
0
0
0
1
0
1
0
0
4
0
0
0
0
0
1
1
0
0
0
2
0
0
3
0
1
0
0
0
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
3
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
7
1
1
1
1
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
2
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
94
13
17
9
5
7
8
8
9
3
4
8
3
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
0
0
1
1
0
0
11
2
1
2
0
1
1
0
1
0
0
2
1
0
16
3
2
2
2
1
1
1
0
0
2
2
0
0
25
3
6
1
3
2
2
4
0
1
0
2
1
0
8
1
3
0
0
1
0
0
3
0
0
0
0
0
14
2
4
2
0
0
1
1
2
0
1
1
0
0
10
2
0
0
0
2
1
1
1
2
0
0
1
0
5
0
1
1
0
0
0
1
2
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
16
3
6
2
0
1
2
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
4
0
1
0
0
1
1
0
0
0
0
1
0
0
5
1
3
0
0
0
1
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
3
1
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
1
4
1
1
1
0
0
2
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
1
0
1
0
0
0
0
0
0
0
0
0
3
0
1
0
0
1
0
0
1
0
0
0
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
2
1
2
3
1
2
5
2
1
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
1
0
0
0
0
0
0
0
4
0
0
0
1
0
0
1
0
0
2
0
0
0
8
0
0
1
2
0
0
2
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
1
1
0
0
1
1
0
0
0
0
0
0
2
1
0
0
0
1
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
1
1
1
0
1
3
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
0
0
0
1
0
2
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
3
0
0
0
0
0
0
0
1
0
1
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
4
4
1
0
1
2
2
1
0
1
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
1
0
0
0
3
1
1
0
0
0
0
0
0
0
0
1
0
0
3
2
1
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
1
0
1
0
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
9
2
1
1
0
1
1
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
1
0
0
2
1
0
0
0
0
0
0
0
0
0
1
0
0
5
1
1
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
1
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
200
23
37
17
8
14
20
15
15
16
10
18
6
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
6
1
3
0
0
0
2
0
0
0
0
0
0
0
13
0
1
1
1
1
1
0
1
1
1
5
0
0
39
8
7
6
0
1
4
2
2
1
2
3
2
1
28
3
6
3
3
1
0
2
1
2
2
4
1
0
40
2
6
2
2
5
6
7
1
4
2
2
1
0
25
2
7
1
0
2
1
2
5
1
2
1
1
0
22
1
3
2
1
2
3
2
1
5
1
1
0
0
13
4
2
0
0
1
1
0
1
2
0
1
1
0
13
2
2
2
1
1
2
0
3
0
0
0
0
0
48
7
11
5
2
3
5
4
3
2
2
3
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
1
0
0
10
1
2
2
0
1
1
1
1
0
0
0
1
0
8
2
3
0
1
0
0
1
0
0
0
1
0
0
10
0
2
1
0
2
2
1
0
1
1
0
0
0
5
1
1
1
0
0
0
0
1
0
1
0
0
0
6
1
2
1
0
0
1
1
0
0
0
0
0
0
5
1
1
0
0
0
1
0
0
1
0
1
0
0
2
1
0
0
0
0
0
0
1
0
0
0
0
0
46
3
7
4
3
4
5
4
3
4
2
5
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
2
0
0
0
0
0
0
0
4
0
1
0
0
0
0
0
1
0
0
2
0
0
3
1
0
1
0
0
0
0
0
0
0
1
0
0
7
0
1
2
1
0
0
0
0
0
0
2
1
0
10
1
1
0
0
2
2
2
0
1
1
0
0
0
10
1
2
0
0
2
0
2
2
1
0
0
0
0
5
0
1
0
1
0
0
0
0
2
1
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
1
0
3
0
0
1
1
0
1
0
0
0
0
0
0
0
43
5
8
3
2
4
6
4
3
2
3
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
2
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
1
0
0
1
0
1
0
0
8
2
2
0
0
0
2
1
0
0
1
0
0
0
4
0
1
0
0
0
0
1
0
0
2
0
0
0
10
0
0
1
2
1
0
2
1
1
0
1
1
0
3
0
2
0
0
0
1
0
0
0
0
0
0
0
4
0
0
1
0
2
1
0
0
0
0
0
0
0
3
2
0
0
0
0
0
0
1
0
0
0
0
0
5
0
1
1
0
1
1
0
1
0
0
0
0
0
23
0
2
1
1
1
1
2
3
3
2
5
2
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
6
0
0
1
0
0
1
0
0
1
1
1
1
0
4
0
0
0
1
0
0
0
1
1
0
1
0
0
3
0
2
0
0
0
0
1
0
0
0
0
0
0
4
0
0
0
0
0
0
0
1
0
1
1
1
0
3
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
13
4
3
1
0
0
1
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
1
0
0
0
5
3
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
0
1
1
0
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
11
3
1
2
0
1
1
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
4
1
0
2
0
0
0
0
1
0
0
0
0
0
3
1
1
0
0
1
0
0
0
0
0
0
0
0
3
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
1
3
1
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
0
1
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
1
0
0
0
0
0
2
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
108
8
22
9
4
7
14
8
7
12
5
9
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
2
0
0
0
2
0
0
0
0
0
0
0
6
0
1
0
1
0
1
0
0
1
0
2
0
0
20
2
5
3
0
0
2
1
0
1
2
2
1
1
15
1
5
2
0
0
0
1
1
2
0
3
0
0
21
0
3
1
1
4
4
3
1
3
1
0
0
0
12
1
2
1
0
1
1
1
2
1
1
0
1
0
11
0
0
1
1
1
1
2
0
3
1
1
0
0
8
2
2
0
0
0
1
0
1
1
0
1
0
0
11
2
2
1
1
1
2
0
2
0
0
0
0
0
29
3
5
3
1
2
3
4
2
1
2
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
1
0
0
4
0
1
1
0
0
0
1
0
0
0
0
1
0
4
1
2
0
0
0
0
1
0
0
0
0
0
0
7
0
1
0
0
2
1
1
0
1
1
0
0
0
3
0
0
1
0
0
0
0
1
0
1
0
0
0
3
0
0
1
0
0
1
1
0
0
0
0
0
0
4
1
1
0
0
0
1
0
0
0
0
1
0
0
2
1
0
0
0
0
0
0
1
0
0
0
0
0
29
2
4
3
2
2
5
3
1
2
1
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
2
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
1
0
0
3
1
0
1
0
0
0
0
0
0
0
1
0
0
5
0
1
2
0
0
0
0
0
0
0
2
0
0
5
0
0
0
0
1
2
2
0
0
0
0
0
0
6
1
1
0
0
1
0
1
1
1
0
0
0
0
3
0
0
0
1
0
0
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
1
0
0
0
0
0
0
0
21
1
5
2
1
3
4
0
2
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
1
0
0
0
0
4
0
2
0
0
0
1
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
5
0
0
1
1
1
0
0
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
1
0
0
0
0
0
4
0
1
1
0
1
1
0
0
0
0
0
0
0
14
0
2
0
0
0
1
1
2
3
1
3
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
1
0
0
1
1
1
0
0
3
0
0
0
0
0
0
0
1
1
0
1
0
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
3
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
3
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
0
3
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
92
15
15
8
4
7
6
7
8
4
5
9
4
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
7
0
0
1
0
1
0
0
1
0
1
3
0
0
19
6
2
3
0
1
2
1
2
0
0
1
1
0
13
2
1
1
3
1
0
1
0
0
2
1
1
0
19
2
3
1
1
1
2
4
0
1
1
2
1
0
13
1
5
0
0
1
0
1
3
0
1
1
0
0
11
1
3
1
0
1
2
0
1
2
0
0
0
0
5
2
0
0
0
1
0
0
0
1
0
0
1
0
2
0
0
1
0
0
0
0
1
0
0
0
0
0
19
4
6
2
1
1
2
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
1
1
1
0
1
1
0
1
0
0
0
0
0
4
1
1
0
1
0
0
0
0
0
0
1
0
0
3
0
1
1
0
0
1
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
3
1
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
1
3
1
1
2
0
1
2
2
1
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
1
0
5
1
1
0
0
1
0
0
0
1
1
0
0
0
4
0
1
0
0
1
0
1
1
0
0
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
22
4
3
1
1
1
2
4
1
0
2
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
4
2
0
0
0
0
1
1
0
0
0
0
0
0
3
0
0
0
0
0
0
1
0
0
2
0
0
0
5
0
0
0
1
0
0
2
0
0
0
1
1
0
2
0
2
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
1
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
9
0
0
1
1
1
0
1
1
0
1
2
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
3
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
2
3
1
0
0
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
1
0
0
0
4
2
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
1
0
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
3
0
1
0
1
1
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
3
1
0
1
0
0
0
0
1
0
0
0
0
0
2
1
0
0
0
1
0
0
0
0
0
0
0
0
3
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0;