100000
lrlrlrllrrrrdrlllulddururrldururuddludrlrlllrulrdrrrdurlurrddruldrrldludduurddduulrrdulrdrrrulrddrdrlrududulrlrrulrulllduldruurrldudruuuludlrddrrdldldudrrddlrudludllllldurludurdududddurludruudldurllrluuudrdrrlddlrrrurdrdrrudulddrrllrduldlluurddlrdrdrllrdlrllldudlulrurlluduuuulruddrrruluduurdduddurldrruddldrllurrurrrrlluluuldluludddlurruulluuulduulrrrdrlrldldudururdrldrrldududuluudrudududulruduuddurldrrrldlddludllrudduruddrdrlllrldudrurllduddlldruldurrudrdrdruddllrlddrdrlrluddlddulrlldrullluluduuulullrlldrdlllrdduududrudlrddulddurdlrduulluuuuldlrdududldruuruddrrudrdudrddrlddurlurddulrddlrdldulrrdrddllurrlrlldrrllrdlrddddudrdrurdurdldduludlrdddruruuluddrduuludrrudlrrddudrluuuullllddduduulrurdrlrururlllrulurdllddddrddlrururdddullrdurlrrullrudldlurrrdrrdurrldrrlduduuddulrullrduuudludrllduldrdlddrrdruruluuruuldlrdrlulrrldrudrlrlruddlrrllrurllldlrudurlrdddrdlurlrduududdlrudddlurrdduuurrdllldurrurdrdrddlrllruldddrdrrululludruuuuduudrlruddurrrdddludrluruurudrdrldrldrdludururudddlluddrrullururdurulrluuuuuurlrdululddrlldlrulrludlruuuduuuddlrrdrlullruurududrudddrluruulrldududrddlrrllrdlrrurdurrudlludrrdrurrlllrururdurrdllddurlrrrduurrurdulllrlrrrrrurudrrdurdlruruuuldlrudrlddrldlurluudrrdrrdrrrrdlrruudrduddddruuurrrudrlrdrlrruruludllurrlrluudlrrlddldrurldrrlduluruddlurrrlduddlurdrdddurlrulururrurdrdldrrrlludrdrrlduuuurdrlddddlrrlrddludlrdlluldddurrrrludrddrddrudddrurruulrduulddrddrdrdldduldurdurddurrldrrrlldrlrrdllrlruddlrdlldrllllrrrllrrludrldudlulluurruldlldrudulrdlldrurllddrdrulluuurlurlddrrduduuduuuululrudurlrrlrrdrudrudulrddllrrlllrldurrlrrdrdulrlllrulrulduddrdrrrulurrulrdrdddullddulruldururrrlurrllrdlrdldudruulullludrdrrdurulddddrrrurrrrlldrlldlddlrdrdrrdlldlduduuldrdulrurudulrrluuudddrurrlurlududlulrrdlruuuldrdrddduuldruurlldrrrrrrldrrrrdudulduddddrudlluuurruuurrddrddllludrdurudlddruruddrduulrdudddrrullrrlrullllddrdlruuuurudlrrddldrdlruddllrdrrrdlrurrdlrlrdluuddlulrldudurllrdrlurluuuudrdlllrrdrdududrlludrrduuuldlrlulddulrdudlrurdruduuldrdrullllrurrllldllulddddurrdldudddrlrddlrldrdrrldlldldrrrdudrddrrdldrllrurrruullurruruldrrdduduruululuuuddrrduruuudududulrrlrlrdddddrlullurlrlurdddllrruudddurldrluddlurudrddlulururrrddrulrurlrldrlrdduudlulldruudurdurlldlddlldrrldruuurduurrdudrudlulrddlllulurullrdrduulrlluluudrrlrlduulruuuurullulldudllurrdruuldududlddudrddrddlluldrrldrdulddrrurludllrdrullrudldrduurdlulullurdlulruuddruddddrduldddduldrlurluluddrurddrrldrlurldddrrddudrurdddrldullrdudrrurlulrlldddduuuddrulrudrrrlldudlrulllulrdulrdlldrdllddlruduudrullrurrurlldlrllrdrrluurldrluruulrllldrrlulrlruldrrullrlurdrrlrulrddrdldldlrlurdlrrrdlrrurduuluuduulddlrdulurdluuurdruldrluldduldlrudduruulduluurldddlduruddrrdluurruluurrudlulduudddluudruurlluldudlrldrruludduduruuddduddrdurluddududlddurldddududludldruuulrururlludlllrrrrudlruduulrrrddlrurdrdlrdrrluruuuruulrudrrduudldddurlluluuulruruuurudlrludrdluluuruddrrllururrlrrldrruduuuuddlurrlrrrddlurullulddurlrdldruuruudduuduuuurdrldrludrluudulrlrdrllldudurlulldrlrluldlruullludluurldldlrlrdlddurldlrrrudlrdrlrrrruuuuuuuuudrluurldrluldrlduudurruulluullrulrdurrrlrludurllddludrdldllurdddrlrrdlldlddlrudlrdudllldulrllldlrldlururdurdlrududdrlllldduulurudlruuurddlruudllrlddurrrdlrrudrrlurulrdrrururuuulddlruldludllurdddrrlullrrlddrdrrdlrlulldddlrulluuluddurddrulrurdddudrlururudlldldrudddllrdlllrludlrdlldldrrlrrurruldrruldrrdrdrlrllrruudrlrdrllddduudrdlllruruluddllullllrddrdrulrulrlldlluruuudduldddlddrruullddldruullddudddrlrddludulluudllululrllulduuududuuudrdrurduurddrdlduuuldlrdllduuudurlurrldrluuuuluulldlddlrrldrlduudduuuuuuldrrurddudldlruuududlruurdlurlrldlddrrllrudlduduudururrdduuluurudullrlddudrrrrlddlrldurdldldlrrrldduruuururludlrrlrrrulullldrrlluulduluddrlruudururdddddrddurduuldullllrrudlldrdlldddduldluuulrurruldrrllullrrdludddrrurddrrdduuruullrlrrrldlurlluurudlrlddudlrlrrrlrudrudrudrrrulrrudduduurrrldrrlllurldrlrurrlrrlrrurrluldllduurddudddulrrulrlluluuduuuuldudlduuurulurrudururduurluduururrllruluuruduuurddrddruruldlulrlurrluldlrdlduddudlurlulrdurdurldrurlrdrlulddlrlullldllrlulduurldludrlrdulddurdruldduduudrruuduluulddluluuuuuulurldurduldrdllululluududluurrlrulrrrrlldrlulduuurrulrdlluurlrudludlldlddduullrlrrurdrrurlllddrdldrdrllduruldrllrdddrrdrudrrdruldruulurrldlldrlurudrrluruulrdrrudrlururrldulluudlldurdrluruurrrruuudllluldudrdurrurrlrulddlduudlrluulrrddrrrurrldlrudddrrdrlduuuulrldudurrlududlldrrdlddrrlurdlruldruuluuururdllllrdrdlruuuurrrrddldurdllddddrrdllldururlurdddddldulruulrdrlurdlddldrlrldlrrlrurldddrrudullrrduduldrddddudlrdudldldrdrullrrrdlrrluururdulllrulrdlrdllrduuululldrdrrrdudrlduuuddrrldlulduurrlddlururulrdrdudluluddurrddrrulrulrruldruullluurddulluudduddrrludrlulrdrlrrrrududrrruluulurulluddurdrrdluduruuddlruudluuludrrluduruddululdruullruuuldllldrdrlulludrlludrdrludrllrrrlddddldrdllrrruddlldurdldrduurdluuurudluudldldldlrdullddudduulrllldullurdddludrlrrudrrruduurruuuldddrrdlrdlulduduldruldruurlurdrdddlullddrruurrdddrlddrllurludrlluululdurrdlrlurrdlulrururdrludrldrrruuurdrulduduuuludrrllududrrlruulrddddldrllurllrlldullulrlllududlduuddudldrrlrdrrdrdddrrluurruuddllrlurrduldlrrdlduululdlrrurlduulududdrlrdurrrduldrrrdururdlulduurluulduurlrudduurdrlldlrullrrdllrluludrdrrrulurrdrlduurdllurrddrrudllluuuluullrududluddulldlrludrluuldddrurddrdddrrlrrlrruluuruddluuulruddldlrulrlurdrldruldlrlrdlrdrduurududulruuddlulrlllululuulrlduudrduduudruldrlrrrlddddruulrurululurlrddurldrduuuludrudluuuludllurldluluuuddululudlllluldlddldrldruullrddddlruulllrrululrurlduddrlruddlrurrulrrlludluddludlddudlluuduludrrlrlluluuduluuuruddrlrrduuruldddurluuddruuururrduldlrudldduduldrrrdlduurrlrlurlulluuuddrurrluululldrduluuruudurlrdudlddrrlruudurrluldruuldllluulrllrlududuurldrlllrrruurdddrluldrdlrlurulrrrrrdrddurrdlrdruudrdrrrlrudrduuuldddlrduruuuddrurdurrrllluddurdlldduuulruldurdrdulluuuurrrduldddrllrlluuldluldlluludlulrulduuuuldlrlrlulldururllurlruurlrldlrldurruurrdddddruldrrrlrlrdlrrdllllllruduurdudrrlluurdddrrrludurludllddrdlrdllllduddurrddllduulrdrllrrrdrluulrrdlluudrurruulludduullurldlrurrudurllluuruuudurruulrulrddlllddddrduuuuuuuldurrdldrrlrdllurrrlrdllruudulrluulldulurrururudrdurrruduurrruuulduulrlrldlrdluurlrrrdddudulrrrurluuruuuruurddlddlrrulddlddrlurulllldldulurrrllulrldruulllllluuuldduurrluuduuudrlulrruuulururuddddlddrluurldrrudruullrurululudlrrllrulrdlurrululrddullruudrudllrudrudddrdlulddururdurrludurdurddurrluudldururdlurrdulddululdrudddrldrdrlrruurrrdrrlullluuullddudrddrduurllddrrurdudduulrrudrrlulurlddlddruddrdudllrrudllduuddrurluuuddlddldrurluudrlurldrrrrrudrduldldudlurlrrlurdudlurdlulurdlullulruududluudrddrudrlldlluuululdrrdrrlurudrrruuulldrruudrllddlrrrrlrdrrrdlulrlurududlrdurrrduduulurdlruuuurulrurrdldllulddrlrrurddulldlldddlllddrurdururudddrlruddldurrdurldldlulududlulurldrrdrlldlrurdrldludduddurdlurrdluluuudluruluduluddluurdldurldruuludllddrdduuddlrrdludullrdrrulrdullruululldulurdduullurlldrurruldlluudduuruddrdlllurrduluulurrduddddruuddrrullddrulrrrlllulrrlddldrrurdlruuududluddlrrdrdullrrurldlddrdrurddllruulddlulrrrdurllldudlrrddrlruruulddluulrrrurrudruudludluurdlurrdduuuuuurlddrurulldluddrdrlluldrrulduuuruluuruurrurlrrrulddudddlurrrrrrrurrrldddurrrrdrdudrrdrddrrlurulruulldllulruddldddudluurudddudldrdlrdrdlludulduuddrrldldururlrdulrurullluuluuduuddrurllllrldruuulrlurulllrdrllldruurdlludrlrrldudlldullullulldllrddudrllddrdldlrrudrrddulrdrruddlddruldrldurululrrdudluururllddruuldulrdldddurudrulldrludullrlrldururlrrrldurldurllrrlldululrrluullddruuddruudlurrdrrdurddlululrrldurduddlulrdulrduulrulduudruuuululdllruluddrrlrrduddululruudlrulululururururrlddruldduulduudrrlrdrduldrdrullrududduudddudldduuulldlrurrudrldrruulrrudlllulruduuduududdlurrrrudduldddddddluuddudrlrudllduuluulrldrddrlulrlurulldllrrlrrddlurlurrluuurrulldrduulrrdduduruudurdrrlduludlduuluduldrurdluulludddldluddrudluuudlddurdlrlurdudulrlldruldulrldlrldluurrdurluluududlrurdllruuuuruulddludluurrlluuurruuludlullduludrruluududuurrldldrlluddurlururrrrrudlududdrdururlldrldlrlududlllrlrlddruddllllldrlrrlrruldrrdduururllrluudlurrduddddrllrrlludluudrdllrrldrllllllrlrurulrldurluldrudludruurllrllddudllrurldurdddlrddrluudldruddudluldluddrudurllddlurdrdlduuuuludrrudruuddulullluuurrludrruudduruldldrdllddluululduurrldldduudulldurrrdrduddudrrurllurdlrrlurlrdrdurudrrdulldrullulddudurlrduldddlrurllulrdrlrludrurlrludrlddurdddururulluuulruulluddrdrruudllldrlruddulururldullldludrlrdrlduulrduluudlulrludllldlullddudlllluudddldrrdudrdlldllulrlrllururlurrrdrddulrrrlrrudlrllldldludrdurdrrdlrlrrulrdldrlldulrlrdlullrlurldldlddrdudrudrurllrdrruudlrrrurlddludddduurrddrrurdruluddrruuuldurdldurudddrrludrrrddlrddurddudrluudlruuulrululdurrdudluddrdruuurrrdldrllluulrldullllluurrdrluulldddrlrdrdurddluurrluurdldrrlulddddudllluulurldurlrrlludduuudduduurlluldurldrrlrluduldllrlrlurduduulrlurldlurduduulrrldulldulddddllurrlrldlludluuldrududulurudrlluudrrrruluruludulddlrrlldurldudlrdlddludludluuruurrruuluuurrluurrdrullrrlrrrdllllurdduudluddduddddddrudurduuuurrrrrlrdrrudlrrldrudllrdrudluuddrllrurllrdlrdlddlurrrluurlrrlullrrrlllurdurrrdldldulrurluurlullluldurdrurdlrrurlrdruurrldrllrluurddrrdrldruldluurrdurlluudlrllddlrldudlrrulruurdlrllludrrludddulludlrldddrlulddddrruuullulrulrdduudlurudlrluuludlduuuududdurlrldrlrudrdlrudurrdrldllluldrudllddururluduudlldrlrrdurlrrrllurudlrurlduuldrrduudldrdluuddddurrddrrrrlludrdurrrrldururuuuudldrdrlluuurddurullulluruurdrdrlrrrddurrrldrrurlldlrrdrrdrdduuuldludlurdrllrlrlrllrrrudrrrluldurrlulrulddrrdluurdrrdlldldududlrulululdurlrdluuddddruuruddrdlrddrlrruuuldluuuddruuudrdlurldududlrdddurrrllddrllrduururrlldldrrdllurdrrdldrrulrrurdrlrurrurrdrrlurrrdrrurrrddludulddrrdrdlrrdrlulrrrldudududrrurluruddlruurlrrrdlluruuuluulrddllrrruluuddddlulddluuludrudurllrrudrruuldduuulurlurlrluluuuulurdudrddluddldrlrrlddruurruduuurulrdrldllrrdlududlllrdululurrluuuldlurulrldlulrllulrrrudduruurddrrllrlrrldrulurullrdlduuurlduddlluudlrulurlldldruuuddrlrrullldrrlurdrluluddrdlldddullulrdllrddddllllldrlddruurruuruuluddrlddulululuddrllddllulruuuurrldluuududdrlurulrulrrdrrllrldrdrrddllulrdlrldrrruludlrrdurrlluddlrlrudlllrdllluuuldududurrddrdlrruldrduuluruudllrlulllldrlrurrlrdrdlddluldrlduurluddrlduudluuurrldldururulrulrrrurlludrdrdrrdllrullruddlddudududludurddlrulludlllddrdrdludddrdruldlrldrlrulruurldudddurrruulrlrlrrrdlurluurdddulduullurdurlrduldrrdlrlrruulrrlllddrurddluruldldurdrduuulrrrulldulrlurududlrldrdrlluurdrulruruduudrrurlddrluuddluuluuduldrrdrrlddulrlulurrurldurduludrurulrudrruurllrrlrdluudrluldduduuuuurlururuudldlulllllulrludrrrdddlruruulrldddudulllllrlrlduulrududlrrdurddlddluududuullrrldddrruuldldudulldllurlrllrlddlrdrrllrduururddruduudduruldddrdulduulluuddldulrrudlrurrdrllulldludlllddurrdldrrdrldlllrdllulddlurrdllldluldudurrrrurrdlulrdrrrdlurrrrrdllluurddululdldudrrllrurdlrrluulrrdrrlrldlrllrrlldldrrrrullduruldrdurrrldddrlddlllurllduulrruddrllulddruldrddduurdlllldllrrurrdrrldlrrdduuululuruururudruddurduudlluurduuuurlrlududdluudddduulddlduudrllulrlurdrllrdlrrrurduulrlldrullurlruluddddlurudldrruudllruudrulldllrlrduulrrrrrrulldrlrrlldudrlulrllddluuludluludldrdlrduduuuldrrrddldddurrrlrrllddlurllrlrrrrrrllrudrurlulullrrrdlurudduulrrdruuudlllrurdulruurrlrrdrrdlllluuldrrrlullrrurrdrlduddrddrdlrdulddrldllrrludrrdudrrlluduuuudldllrudrrrurulllldldulllddurllurrdludduurddruduluduuudldulluuurururdlllddldludlldldlrrrluulllududrurlluuudlrrlululldrlrdluudllrddlluudlddrdlllrdldrdrululruuluudrulluulldludurllrdddlrdduldlldduurruurddlrududdldlrrurluluulurrllurrudruldulurrrlurlrduddruuurrlrdrulrdululruuuddddludlrllulldudluddldrlrlduulddludddlululldrlulrdrlldruludrdrlrdrldullduuuuuruduulrlruulrrllldrlrrruududluuurrlldllddrurlrluldlrdrrrruurlldrddlluuuldrddulrdrlrrlruluulurdurddrdullrdrudllrurduuuududuulurlrrrdrrrlurrllrlruuururdrdlurrurdllrururrduruurrrrlrdulddruurddduurdruuddlluldrddrddrdlurudulllduurdddurrududddudruuddludurlddddlruuurrldluldlrldrdruluduludluuudurrrrlruludrdudlllururulululuduuudduududlullldrulurdrlldlrudddudrrdlrudrdruruddurdulllddrrruuudlurdlrlulrdrrurrudullddlluuudlurlldudduldrlullurrrdrulduulrddrlduululrlddurulruduluuuddlddurrurulddlddddurluudulrulrdrrurruurrrludddlrlrdrrlrurrrldrdllrudlllrrdulludrudrdruddldudldrlrlldluruulrlrurludlldrddddlrdlrudruurlrruudldludruulrdllddlduuulrrlrlurrrurdrldudrdrdruurrdruuurdllrdudlrduuruulurddrrlullddruuururdlrlrrdrrrdululdurrlrlddurlddldludurdrllulddulddlrrurlllduddrrdrddlddrurluuudluurddudlllddrrrdldludrdudurlrrlrldruddldrrddldddudlrrrdddlduuuulldldlldudrlldrlrlrlrudduullldrrurdudldlruruulllllddlruuullrrluuulrdldlddddrldudduulddluurdllrlluudrrddluuuudrududrruulurddrrluurdlrdurrurrdrldlrdullrlduurddrdlludduduululrdlurudurlurrurdudlrudulddrludlrruldudurlurlrlluldlulurduulluruuuddddludurrlrlurrdrrdddrlrurlddlrrrldulluulrurduuuuulllluduudddlruulrdrdldudduuruurldrulrrdduurudrdulllrdldrdllrrdrlrdurrllddlddlddddldrudrdrddluruuddrrrrrrddurddruuldldurrduuuuulrlrdlurrudrulldrrdrrdrdllurdluurddrdurdulurruuullurddrrurlldrudrrdudulrldurdudllrurdldulurdrlduuudulrdllulurrrldurulduulluuuuruulldurlludrulurddulurrlrddludlrlurlrludlllurdrudlldurddrddrludrluddlrrudurdudrlrruduruldlurdluudldldrluuullduddudrdduullrrduudrluldrllrulrluluudruuurdrddllllurrrrdrlrulullrdlrddrrlurrurlrudrlddddrrrurllluludluddrrldurdrlrllrdllrldduudududdlduludlduldllllrldddudrddduudulldlludldrlllrddrulrrrdudurrulullrrddrudrdrdrlrrulurruuduudrdlddrdudurrrluuudrddurrllddrduurddldlrrluddurulludludllrlldllrludrlddrruldrrulldllldruudludrudddluuludulduruuldlrrdrrrudrudddrrlruudlulddurlldrrlllulrrlldrdrldllulddurlllrrrdurdlduuudrurlllrruullrrurdrulruludluulduluurlddrrurrllllluuuduldrullulrudulrddlddlldldrdlrlddruuuullldllulrrrdrlduldululdulurldulruluddluudldddldlrddrlrdrduulrdllldluudduddrrrdrlrdlldruudulrldrulrrurduddldlurulrlrdrrluuudldluduurrulldrlrrldrrluuuurludrulruldrrudldruduurdrruurddrrudrudruullrlldrduruuduudddudddrrlulddruulllddrullldrdudrudrrdddrdldrduudduldrudurlldduudrlurddlrlurdldrdrrdlururdddlulrluuuudululdlrrluuruddrluulurlurrldudrudrurddudllurudrllldduulurlrlrrluddulrluudurrulrdldudllurluulrudldrurrldduurdrdldrrdlrruddlulurdrudrdrddrdududdrldrrudludrluruldlrldrdldluudlluruurdullluulruludddullrurrrdrrrdduluruuurrludruldlllrdluurllrrllddudlddrdrluddluuudulldrrlrrdudlrlrdrdlulldrurrdururdrddldluuuudurdldruurrlllrulruddduuludrlurruuuudrdduuruuluurdddullrlrrduuuddulrlulllddruurrrulrlrllrrrdrduurrrrurlruuuddrdlldddrlullludurrludldruddurudduldurdduuddludlduuuddudlludlluruddurrllrurdulurrduldldulrdullduduuduulddluuuluuurdrudrlludrduuluddlluululdruurruuldrrdlddrldurlldlrdruddduuludlurddludrdudulrrddurrluulluurruddllrddldrdrllrdudddurdlrddrrdulrrudulldllurddrlrlllrluuluruldllddldduduudrlurddrrldldluuuddrulddlurrlludrudrdlruuddulrdlulddlrlddruuduuldldrrulddrudrduurulrduudrdlurdlllllrrrurdduulduudrldldlldluulllrllldrlldludrlldldrurrrlllruuuuldddudlldulrurrdluudlurdurdulrduduurlududlrdrlduuuludlrlrruuuuurlrdullrlrdllrrddulrullrruduldlrrruruludrldrllllrllrlldludrlrudlllrulrdulrrulldrrrlllrlrlruduldulrurdddrddrldrldldlrrudddllulduuluruurdruudrduddldludddudrurrddddlrlrddllrludrrululuudrrdlrruuuuluulurldrdlddudlurrldrrdrurruddrddurrdulrddrrllrrduduuuldlrdduuulrdlrluulrurdldurdrududdrlrddldrrrluulddrllddudlruddlrdrdurlrdrurrudldudrlrllrluuuuurrldurrluuludlrurllrlrdrurlruurdudullrlurdlldlrurlrldrulrlrurdrurlurllrlldddurullrllrrudddlrruuurllldrulddulrddululrurrrdrdlrrduddllddrulldlddruuuulrdddluuruudulrudrrrlurrldrrlrldlulldrdluudldrulluddludrududdlruurdldruuuululllrlulrlrdddurldruururdururdlrdruurlrldrdluldlrdlllrdluurllulullrldruruudrluudrdudrrrduulrluludluululdlluurlllrurrrddrrrrddrdrrrdrrlrdudrruuuudrdrdddddududdldddurdlllulduullrrdluudurrrrrlldduruddlrrrulddrulluudrrululudllrluudlduurlrdululdrruddurddrdulddulrrdruduudrlulurdldlduldlululrdlldruuddllrluuurlulrlluldlulrrrdlurrludduurrudrudulrldludlrddduudrurlldlurrrlludurdrdluudulrdrdurddllddurduldlurldulduuudrlddrdrrddduuldllrrlrrlllrdrrrrrllulrudldldurudrdrrrrrdruludldlrlrurllrudlllllduurrrulduuudrlddrduddruulldrddruddlurdudldulrrdulullrdurlrurdurldulurdlululuurrrlurrududllrururduudrluulududrrdruudllrrrdlrldudrluddrrrlldududlrdllluudllulrdlduddlduulrdddlluluurrddldrrrrllrrdllrldruruudurdurlddrudulrdruudrdrdrdlruudllrdllududurluddduddduddduurrrrlrldddlddurllrrdluuurlrrrluruullrdduluruldulurudlldllrruulldldrllluurddrdlddddllrurrldururuulddrrullrllldrurrrrrllrdrrulrdrullulrrldludulduldllurdllldllulurrrruuludrllrrurrrurrdulddrrrurllululrdullldurllduudddrrrlruudrurduuuuddrrlrldurudrlrudlrddudrlrudrrdddddrrlllddurdddrudddrdlullulddrurrdllurrdluurlrrrludruulullludlludlrdrrruuduurrurrurlulrldlddlulldduudllulrrruuduurrlrurluurrllrdrddrlllddudrdldrrurluruullrdrdrdurldrldlrddlurluddddurrddrrrddrllrdldlldduldlluruddurdllllllddurrrruudrlullrllrrrrrldurrrduldrudurduddddlrddulrduddluruulrldluldruuduurludrluuuddruuudrlurudldudlddrrdlrlrluuudululrldlullrlurrdudlrlrdullruduurruulduludrldrdddulldrdulurrlllrlrrddrdrllludrurllddldlruddlulrrdludrrrulrurlurrddludrluddddudrudrruuluuuluudluurdududrdudurrluduuurlrllrdrrududdrududurlluuludlrdudurrrllrlldlrdrluddrdrudllluuruludlrdlrllulldrrdrllulluddudrulrrududddlrduurlrrldrlrlurddrdulldllldldrluuddddldduuurulrrrlrddrurlludrrrurruddllrurldlurudrluuruuurldlulrdlddrdrldddldllulduduuldlrududlrrrrrduddrurddurdlrdullrdrrlldrdluuldrllldlulruldurdrdduddlrdrlulurdrdurrdlduduuludlrdudrllruruuruduuuulrddurlllulddullllulrurruuludrlrldrddruudludlduddulullddduurlrdrrdrrdrrdldrdurldrrluudduurdulrrlulurulruldddrlrrldrdldluddurrldllrlrlrrrrrdrlrululrddrlldruudldllllurrudddrlldrrddldrrldldludurddldddduulurlurrdddrddlrdddlurruluddlrlrrlrddlrrlldrrduddrlrllurlrullrduluddlurduldduddudrdlrlrrulldlddrlldrlddrlrddlllluldlrluuddduddrdddruulurluurdlddurdududruullldlddlrrduluuuurlrrruuddruldurudruuuruulluddurrlrdduludddrrdludulduuudurduuudrrdudulurllrurddurrdldulddldulrdluudrulurdrdrrururrlddddrlllrdlurldrddldulludlurrurlllruuluuuudrlllrluddduuldlrrurudulddrullrluuululuurldlurrlllrddrdulrruldrrrdrrurldduddruruulrluludrurrdrlrudldlruururrulldurrululddrdruulududulldululdrrldlrlrdrrlulluuuddldrluruulddlrllddruududdrllldlldrlurddllldddudddrldrdlulrldururdudlruluuuulrluruuurdrlllududulrrulldddrldulddllrududlurruulluddudrlrudllrluuuuurrdlrurrddduuudururuululdlrurluddluuddlrdrldulrdddldulldurlrrlurruldlulrrrdudrluuudlrlullrdldddruruldlurudrldlrrlrulruudululllllllllurddrrlllrlrurdudruddrlrdrurdrrrduuldurruldurddrrlrrdllduldrrlduuuuludluurrllllrururruurlruuullrludlluldlduddrullululdrdudulurdurrdulruuulrurrdrduuudurlrddurdlurrurluludururdrdrrldrlurururuuululullduuldrllurludrdlrlrddruulrdrudldulluldlrlulullddrdrruduludruruuudrlrruudrldluuurduldddrlrdrrrdddllululdrurdrlrdddlduuddllrrludrldddlddrrludlrrrlldlludrdurlrllurlduurdldudulllrrldldrdlruulurrrlrdurlrdrlrluruuurrurururulrddrullrrulrdlulldlrullduldrddrdldldulrlulurdluulurrruduururdlrldrluddrddrulululrrlrluruurdrlrrudlludldllduldduurdurdldullrdrlrdudlruuldlrlrlrdrdrldulldlddrurrdulddddruullrrrluurrudluurdlrrdluurullduluurrldrrldrrllulluulrrulldlrduulurulllruurllrdllrulurlrulrrdddurrrrrulddlrlrrdldllludrrluudlrurduudlrrdurrluuddrlulrrdlulrrldldrdrlluldllldrurrldullulrluldlldlldrluuddrldrrrddlrddurlrurdulduldlrrrrduuulllrlrdddlduuruudrluddrudllduurrudluurulruuldruldrllrurlllrldrlldlruudldurrrulluullrrldrrddldluddddrdrdrlrluuuddrduldddurlulllrrddldllddduudllrldddrdrlrdulullrrddlddurdlddrdudululrldrruuldldruluudruddrdrrrlrdurluddrdrudrdrlulllrrudluuududlurlldddrddddrududlurrddllulruurdrrlludrllrrlurlrdldurldrrudududuuuurudurrudrdudlrdurludrdldlrlurlddluluudldllduuuuuludrddrulrurlddllldlrudrurluddldddllrdrrddrudrudrulrlddulrlrrdlurrrluuulldrldrulululdlrdrrudlluulrduruddduruurdulururrllddlluuluuruuuldddrlluuudlldurluudlrrdrulrlduurluldduludldudlrrdddldllrrurululrrduudlurludrrluurlluldluuuulurdlluruluuuldlrduluudlrdddludldludulrudddururuururldlulruuulrdlrrddlurdruldullllrlrurlrlddrluuldrluudrdrurrlduululuududrdduluddddludrurrlruuldddllrdullrldlurlulduuurrlrlrdudldlddrlrdlrlrlluurludurluuuuulrlruduuuurrdldrddrrulrulldrdrrulrrrurldruddrdllldruldrdurlullrldlrrdlulurdrluldlurrdurrduddlurruudlrruurldrllddudrldudrlllldluurulurldrrllurlldrlllrulrdluludllrrluuldlurlldrduururdluldlrllrlrrdlludrdulrlurrurdrlrulrulululrurddlddrulldulrrlduldrluddllullluddluuduuuldudlrlrurlrduuududulurdurdrllulurudrdurlrldrduldddlluurrrrdudduudldlurrdrddlurruurrrludduuludlrurdduululldrlrrlrdddulurlddddllulrdllrrrdulruduulrluurlurrdlurrullllludrurrrudrdrluudrdduurlddrrrulururdruruullrrlrdldlrdlddullulrrddluuuulrulluurulrrrrdrduduudlldruuldrllulduuurdrdddurrlrdldrdrlludrrdudldddllulrdllurlddluudrldldrrrdldruddulddrldluudrrudllllrdldduurlrrlluldlddlurdddlllrrldulddrdrldurduudrdudlrrldrluullluuuldururldrldrdlldudurrdrurudldddlldruulddrrlldulrduuluulrlluddrlrlrudrrdrddduuldrrdurdlululllulrudrrlrdddrdldruduulrrlllldldurllldrudludulrldlullddrldrllrrluruddudrrrddududdddudurlrurlduuurlrdurullllrdlldlduudlrlldrrrruddrudlrrdudullddldrdrrurulldrrrlurllrururrrdddudduluurduddulrdrlllrllrurlddrldldurudldlrdurddlrluululdrldrrlduurrrlurlrrddlululuruuurdurldrluurrurrllrllurruurrulrlrlrruurlrrdrudududdluduuuuuudlludlrurulrddlrrulrldldldduulrlrurrdrlulrduldduruludrrlrlrurdrlddllrruddrudrdddddllluddudllrdrruruudrdrdrlrdddrluududdlulrdlddrrllrdddrururdlrulldruurdruldulurdrurlllullllrrrdurudllulrlrdudurrddlddruuuulrdllrldullldudurlldluldrruulllddduldulurdlurldddurudrurrlrddrudurludullllddruuuurluldrudulldudlruululluruuudlrrdudrdlrrdddluuluuuuldrldrrurdrllruulllrudddrrrrudruurlddrduurllrrudlurddrudrudluldrdrdulurlrdurdllrdllulududuudlurudllulduulldllddurldudrruuldruudlllrllurdldrddrurrduldlluulurdldudrdddrldrurulrddulrlurrurulurdrlulluddudluuudurllrrluddrddluudrrldlrrulurruldruullrrudruudlluludruuruuuuluulurllrruddddlruddlrlludrlrrduuddlluuuurrduurrrrdudullurdrldlrudrlulluuuululullrurrdurlurddlrurdddddduldrdldrurlrdldluududlluduluduuldluuudlrrdrlrduuuuudlurdlrruurllruullluurrrrdrllrruuddrrrludldllldrddrdddruduudrudddrrurrddlrrdldrullldlrdlududrurrrurulldddrlludrlrulllldldlrrrdlrurlrdludrurrlurullruuuuudrrdrlrulurlluluuruddlluluullrlrurulrdlddrduuldurddrrudduddluuudlldlrrldurrurluluddrddluludululddldlrrulrulluuuruduldllrrldllrlrrdullrlrluluduuurrlrdlulludldldludrrrldrruludlrluuudlduuldudrulduuludrrllrlldrdrdrrldllulrddluldluuddludduuruurddlrlrrrurlldlrldrdlluurrdlurdruddururrrdruulrlldurddddrdrrlddlduuulurrddduruldrlllruulurlllururrlrlruurdlduddruurrrrlludluuldrruudddldddrlrdddrlduldudddrrllrrrlduddldruurdllllruddddrdluudruuuruuururdududuuudrdudldudldddrluruudldlurlruurlduurlluurrrldldrdddrdldruddrdlrurldduudlurduuudllurdrddrlrlrrdluululdludlldrulllldudrrurdluldrddrrdrlrdlduululdllrlulddrdrdrlluluuduluuuurluurlulrrldulddlllduuduldrduuuuduudrludlrruuddrlddduuuduuudrululdrlrlrrurdlrdrrdrdldrudddddrdudulrdddrdulrdlrudrrlruldlllluddrddulldlrldlllrddudurlddrlrulrlrurrruuurududrlduurruddrulurdllldududurdrudurrrulluruludrdlddrdlulddldduuddrullrudrdlrudldlrlllrrulddlddrlrruurrddduludldrurullrlldrlduuulrurdrlduldlrdrduldrrdlrulrluldrdrruurlduldlurdlurllllurduudlrdrddrldrdrudulrudurrruuldurrlddldddrddllluldrudurddrrurllurulllluldrdrduduulrdlruulrlulrrdrldlruluruldrullrludldlrduurudrururudrrrlddlrllrdldudrrrlrdddrrdlrdrduurldrddduullrrrdurrulrdlrrrrdlrdrruurdldlulrdlldrldrrllllrdurdudulrurudrldluullllrddrrdlrlrdurddurdrrllldrrruuddrrulrrlrrrldrudrurulddrudlruullddrrdlllrdurduulurlrdrrdlrlrddrudlrlluuddlddrlldurrrdddrldddrlulluddulrllrllrrrudlrrrluurrllrludulldrrulllduudlruuddlldddlludruddrlrududludururrrdllrrrdurdlddlluluuurudrududuldluudrrruddllulrrrrlddruuldlullrdruddlluuulddurlddldlluurddurlullludddluddduddruluruluuudlrurdlrrrllddlddldlurrdddlulllulruurrlulrllulldrrdulrlruurdlrlurddurrdddrluddddurdldrddrrdlldrldllrrdrdrurlrrrrdudududddrrrdluruldrdluluuddddullurlrrulddlrdlududdullduuulllruuruuullrrrurrldurduruuddurlddrulllrdldlruluddlddllrrlllururlldrruddrlldurdlllulrrlluurduluruddrdludruulurrulruddrlrudlrluuuurdruururrrudulurrrdulldluldrrlrrlrdlrrludldruuuludrudrduuururuldrrrluudurdlldurddurururuddrllruldlrlrruuduruduudrulurddrldrldldrrurldddrllddudrdrlrlrllulrrdrluluddrdddruudldluudllrrddulddrlulrdurllrrldduudduuurrllduuurruluurldllruududuldudddlrudlrdddlullddddullddrrrrdldudludrullululduuddurdlrlluuulruurlrlldllulrullrrrrlduuurdrdlddudrullrdrlrdudrludruldlduuuuldudddullrlldllllrdlduuddlldllludullruulldlrldulrudlulddrdudulldrrdldrulluruurluddrulrlrlrrdduuldlururudlrudrruuuudrrrlurluuurlrlurrluduldudrludddurruldlldlldullldurulduruuuluuuudrllllullluluddrurldrldldurrdlrdldluudurduuululrlduldduudurdlldulrrurddluuruluudrldrrlurddludurullldlululuudluulruurrurrdulrduludludldluduludldrllluuurrdlrddrudrlddlrldrrduurrldduddlrlurrllrruludrurlldruludlrlrlrulurllddrrudurrrldurudldlududuuuuuluuludrururldrduduluurduddrduudrrdurrulullulurlulllludduluuurlrlllrdlrlrludulrrlrdullllddluddurldrururrldllduldrudrdurrruluudllrdlrudrurdrullrdllddludrddlduuurdurduruldrrldldrluddruurududdddddududdldlldrduldrrurulrdllrluldrldrlruludurdlulrdlrlldrdllldudrururdurrdrdlluduuuulrdlrurlrduluulururuuurulllduddlldrrldrldluldddduurddduulrlrdulluulullludduududuuullrrrrdrrrdllrulllddlddurddldrullrdrdludrlulduulrlddrlurudluuduudllulruddruddlurdluulrdududrdrudlluurldllrurrrddddlrluddudruurlrluurldrrllddurlullrrlddrdrdurluldluurlduruurulrulludrrlullruuuuuuulurrrrurluudullrudldrlrdllddrduddulllulrruldulluulullldddlrdluddlrduddddldrldulrrdrlddrllldlrrudlludrruulduuudlllldldlrurddlududllluurllrdlrdlldldlruduulrdrrduludrddurudldddrlurrrdlurdlluuuruddlddlrdrulrrdrudrdrdllddluuullrlurrrldlluurdlllduulddrldurdllrlruruudlrrllrrduurrlduurdurrdldrudrdruldrduudrrldurrdduldrrrrldllddlrllududlullurlrdrrrrrrrdlrrrdllulrurudluullrurlrllududllurdddrrrdrlruudlulurdrdlldlululrduldrudldldddulurddrurlrlllddulruuurllllldrrullduddrllduullurdldldldlllrurrdrrudrlddluduudrllulrdlrdrrdlldrurrrddulrrruduluduurruudddduuddluuduuulrudldrullldudlllulddrudlrulllldlurduddruudllrruduulurrurrrdlduddllulrdurlllrdlrrldrdudlrrurlrrllrrduruuuluduludludruurllddrdrlrdlrludulurrdullrduudrrrldrlllrddrurlrddllddruldrlrlllrdruuulluuuludrududruddrldlllrudddldlruuuluudlruurlrrdurlldrldrdllrddurulduldulluurrdudrrdurlldldurlrululldrrdudrdldurruldurrulrrrulrrduludrldluldurudrdllrllrurruldldrrdduuurrudldldrrrrrdruudluurdurrrdrddldduurrdrrduldlluudduuruldulrruurrduldruulrulddudllllrrdrrlldududddudllurldlrllrruudrulllddrrddurrruldlduurrdlrurlrudluldluluudrurldlldrdurddddrdulrdldrdudlulduuruldrrlrdudduuuulrrdrrrrrudurruullrlrrdldrllrdrluuuulurdulrlldrrulldrdudduuudrldrduulrduurldulrduuldlllruluddrrdllrulllurduduuldddrudrudruuludruldrlrddrrlrrdddrlurrurrduluulddlduurlllddulluddldurrldlulrurldrdludrdrrdlrudrrddrddrdrdlrlllrdlrluuurlrudullllrddrrrdrludlrrddudlluurluldddlludrdddurdudrdlluuudurrddudddlruuduudluduuuldlrllduurullrllduruduuddrldlllldruurullrdluldrludruuudurlurduduurulrurllludrdllrlldulrllrdrruurldrdrduruluudullddrurdulrdrddurlllldlldddlrulrururduddldrdurudllrdlddlrrrllruldddulldrrduldlllddlurrldrddllldrllludrrrldulldurlluldlururlldrlrrrddrdrurlurrurrrldllllullrrlllluruuurludlrudddruudululrudurrduddlldrddrdldulurulllldduulllrlddlluddluudrrdlrdrlduuruuurdululrdrrlulrrrdlddluddrllrllllrdlurluluuluruudddludddrldldlldlrrduuuldruuururdrrlddudluulrlludrrdulruuldrlrrrdurludduldlulruudrrrrdudduuurlllururrrrluuuullllrrldduuldudrldddlrrrrlrdrruulrdrdudlddudulddulrlurdudrulluldrullurdruurrururdrldurldudlrlldrullrluuulrrurdurdrlduurulrllrrulduddlruuurrlrurrdllldullruudrrdurudrurdullrddulddudlululldldllrruldruudlddlrdllldrluddlulllulrluulllrdlurldduldulruruduldrulurrrrdldrudludrludulrurlrlurlurdlrdururdurldrrlldduuduudllrlrlduuurrrulldldulruuuulrdduudlrrudulrudrddudrldulurlrrrllldrdldduddrullrudrddrrlludrulruduudduurrrdlrdlduluduuurrudrddrluullurddlrrrdrrlrrldrrrurlruuldrluldlurrrdlrulurudllrllrurddddulldlldrllldldllruulduldduddrudulruuldluldrlddrlurrulludurdulldlludrllldrdluulddrrrdlrrrruluululdrurlrrlrudrrludululurdlrurduududdurudrrdlulurldllrurulrlrdruurldruldlrdlluulrddldldlrrurruruddldulrluudrludlldlddudldudduududdduuuuudduudludduudddrudddddudddulududduddrldduurdduududdudddlddddruddudduuludrdddudlrududlruddddddddduddddddduuddduddulrudududulrdudduuuddddddddduuduudddddududdddluruuduudduuuddudddddlurlruuuuldrldrduddddddudduuudddddduudududlrddlruldurddudduddddulrudduulrduddduuldruddudddlrlurlrlruddddddulruuuuulurluurdddddduldudurudlrudduududddddudduudddudlduddddudrldrluudrulduudurududuuuuuuuldurdddlrddudduudddddddudludrddudduuulrdddulrudduuuduuuuuulddruududdlurddlrlruduuuuuuuddudduuddduduuudududduuuuudduuduulrddduddldrududuuuudluruddddududddududdlddrlruudlrudduudlrluddurddlurddudduuuuudduddduudduldruduuuuuududuudduuuududdduduudlrdludruulrduuduudddduuddlrdduudddudddduddduduulurlddurdludrduddudddududuuddudddulrdudduuuudddudluudrddduuduulududuuuudrlrdddduuddudddduldrddduuuulurduduudududlrudulrduddudduuldurudddlrdulurduddlruuldruudduuuudududuuddlrududulruuuuuuuuududlurdldduruuuduuudduuuuuuuuldrduuddluruuddduuudlddduruuuduuuuddddduduudddddduuududddudduudlrddddddudddludrddduudduuddduduududddddduuuuddddlrudduddlrudduududddddulruuudlrudduduuuudduuluududrdulrddduudduuuuuddduuduuduuudududulrulrduddduduuduuddduuduududddddudduududuuddduuududuudldurduuuddduududuududduuuduududlruduuuudduduudludurudduulruududduuududduuuududdulduudurududddududduduuuuuuuuudldruddldrdduduudduduudddulrduduuuuudduuuddlruddddlurudddudlruuulurdddudduudddlddudrduududuulrdduuddlruduudduudddudulrlrduddududuudluruududluurudduudduuuuduuudluddudruududdduududdududdlurduddldduuudrdduddlruuuududduudlurdlduruuudulrduuduuuduuddduddduuduudulrdlrduudlurdddduudududdddududulrludddrdddduulruduuuudulrdlududuuudurdududduududduuuudlurddduludruudddduddddlruuuddddudlrduuuuulrdddudldrudduddddduuddudududuudlruddduldrluudududrududdduddlddruddudddududuuudddulrudduudduuududuudulduruudlrdduuddddduduuddduddduuduudldrddldudrdlrdduduuuuuuudduuuudldddruuuduuuuuldrududduudlrdudduulrdulurdddddddudduudududduldurlrulurlurududduuduuuududlurldrdulurulrluuurulrdududddddudududdduududuuldruuuduudduududuuduuddudluudduuuddrudduluruuduuudlrduluurludruuuuulruuddddlurddddduuduuulrddddududddlrdddduudduludrdudduldrlruldrdduuuuddudlrddldurduuudddddddlrduddduuduuduuduududlruuuuddludrddlddruduulrlruduuduudduduudddduduuulrudluruduuuududdduddluuddrddddddududdddduuulurddulrduduuludurdlduuuuddrdduudududdludruuududdudduuuuuulruuuuudlrulruuuddddudddlrduuuuududlurdddlddruuduuuddldruuduudddlrdulduudrdulduruuuduuududduduudduududulrddduduuduuduududuulrduuluudruududuudduuuddlrddduuduldrduuulrlrddlrlrduddduduuuddddudududddduududdlduurudddduuluurdduuuldrlrudduudldrduudduuuuuuudldudruldrdlrdlrdluurulruduuddudduulddrududddduuldrdduduuddldrdddudddudduuddddududdlruddduduuulruuudddlurulduurddudldddrudduulddrduduuddduuuudduuudduuluddurdduududlrlrdudduddudddudddududdudduluudrddududdddduudududududddudduudduduuuddulrdlurudddddududlruddddluurlrdduluuduuruuddduddddludruuludrudduulrdudududddlurdudduuuduuuudulruduuddudlruududdduuduuuddduldrudddddduddddduudduulrdduududduddududddddduuddldruddudlduddruuuluuruudududdddlurlrdudduuuuuuuulrddduuudduuddldrduudluddddudurdulduruludrddlurdlrduulrddududuuldddrdddduduuulduuuuuruuuududddulruddddluurudduuuuuudddlrdduddudduddudlurdddlurdududdddddduuddlrulruludrudlruddduuduuduudlruddudlruddududduuuduulrluuruudduuuuduududduuudldrdduddulddddddruuddudlddrdldddrdduuuuulrdduludduruduuulddrulrdddluuruduudulddurudddduddddududuuuududdduuuudddlrlrduuudududdldrdududuuuuduuddudduddddddduddudduuuddduuduudddlduuudruulurldruuddlrdududduduulrdduudddududddduudduludruuudduuuuuudldruududdlrdulrdddududldrlrudududddduddddddulrududududuuluudrduduududlrddduluudurdudulrluuurdududuldruduuulrluudduuudrldrddduuudduddddldrduulrudldrduddduddduuduuuuuulrdddduuduuuuuulrdlrduudddulrddlrudddluuudddrduldurlrlruddddudddududdduddduduuuuuddduuuuudldrulrddulrudulruduuudlrlurulruluruuddudduuduudlddrlurduuududuuudddddulruuduuuudduuddddudduuduuuuduuududdududdududlrdlruudduddduudduuudddduuuuuddduluddudurddduddduluudurduldrddudddddlddruulrdluurludrddudududlurdududuuddddduduuuuudduduuuudduduuuddduddddududlruduuuuduuldruuuudddlrdluddrdddddudduddddddddulrlrdduldrduuuudduduuduudduddlrdddduduudduuddduldrudldurduuuuddduuduududuuddddlrdduddduduuddddduudlduurlruduudddulruulruuuuuldrdldruudddududududduddulrudduuuuuulruudddduulruluruuuuduududlruuduldrdduuddudulrddududuldruudduuuddudduulrduduluurdudduuddluddrddduudddududdduduuduudddduuuuddduuddddddddduduldrdduuudddlrduuuldrulurdudlrluurluddruduuuluruuudlrdduuudulruulrlddrduuduulruduududduudlrlduruuudlrduuuuddddduldurudduduuuudddldudrdduddudduuudddulrdduuuuuduuddududuuududduduudduudududdududuuuldruudududuuduududlrldrduududdduduudddulurudddddlrduddulrlrulrldrdlurldrudduuuuuduuddddddluurdduddulrdduuuldrlruduuulddrdlruulrududddduuuuuddlurududduuddddlrduddududuuudddduuddulruududdlruuuduudddududulrdddluruudududdlddrdlruddddldudruddlrlddruulrdudddlrdduulruudududuulduuddurddduuuudldurlrulrduddudduulurdududddldrdddluududruddlddrdudddududuudddulrulrdddduddlrddddddddddddduddudlddrduuddudduduuudulrduuuuuudluurdudduududdddddudlrddlddurddludruddduddlrlrduuuduuddddudluruuuuulrduduudlruudlrulduruulrlduududuruddldruuuuuldurduuuuduuudlrulruduuuududduuududduudddldrdldruuddlrulrluduuudruuduuduuudulrduuldduddruudduldruuuddulrddududduuduldrduududduuldrulruldrududddddduuddddduddulrlrudduudulduuuuduurldurdduuduududddlrdlrdddududuuuuuldrdudlrulrdduududddudlruddlrlruduududulruddudduudddudduuuuduuuddudddduddluuruuuluurdduuuuuduudduddulruuudddddddlruulrlruuuddudddddulrdduulruddddduuddduduuuduldrdddduduuuududuudduududddudududdduddludruddduuuudduddduuuuuuuuuduudddlrdudduudddddddddduddulddddduruduuddlurudldruuuuuuddddldruddududdldrlddrduuuuddddddduuuuuduuddldudrududlruudduudddddduudulddudrulruududlrduldrulddduuddrdddludurudududduuddddudlruluruulruduudduuuuduuuudlrdduuudddddduldrulrduulrlduudurddlddrdududduluruddduluddrulrlrddduduldrudulruddddlruuuuudududdddddlurulruuuddudddddduulduddruuuduudldduddudruududlruduuluurduulruuddddddudddduddududlruudddluuuudrdlrdluurulruluruuulurudduduuuulruuududuuududdudldrdduddduddluurdudludrduduuduuddudlurlruddlrddddulrddduddddddulruuddluruudlrduduuddddldrdduddududuulruuuudduddduduuldruududuuuudulrdduudddulruuulrulrdddddduldrulddurdlrldruuuulduruduuluruuuuddlruulurduluuudurddududduuuudduddudduuuduuddudddddludddrudduudduddududlddruuudduddddlurudduuludddurududdlurdddluurddduududdulrududldrdluruddlurduuduudulrudddduldrdddudddldruuuuudduddudduddddulduudddruududuulddrdduudduduuuudddulurdlrlruldruulurdddddudddddduuudduudduudduuuudududddduuududduldruduuuduluddruuddlruuduudduuuddddduulrduuududdduuuuudududlrddduddddduuuududddlruuddulruuddudududldruuulduruuldrdlruududuuuddudddlruulruddududuuddldruduuuuuddduudludruduuududdudduulrulrddudduuduuulrddudulrduududlrduudududuldrdddddduudlurudlurudldrdddlrlduuruududddddduduuddddulddudrulddrlduddudrdduddudduuuldrlurddduuuuuduuuulrduuudddddlruuudduddddduuudddluruuuudulddduudrdddduudddudduuduuudlrdududdludrdlurddudududdlrdduddudduulrdduddudduulrddudldduduuudrududuuuddduduuuuuuududdddddlrluuddurddduldrdddddlrdduddludruudduduuddududuududuuldruuuduldrduuulrddduduuddddlddrudduddduuuulddduruduuduuduuudddudlrddduuuddudduddduududddulrlduurdddduldddrulrduddduddudlddrududududdludddrldruddldrulrldddurdududdudulrdudddddduuuddduuuuuuudddduuduuuluduududruduudduuddududdduldrduudduuudldduruludduddruuuduudduuuddluurdddduuddlrdudduuluruududuulrudddduuudddludruduuududuulrdduduudduduuuuuuuuddduuuuuuddddduulruudddlddurlruuddlrlrlududrudddddduddudddlruduuuudddduulddudrdludrdulurulduduududuurudduuddldrluuuddrdlrduddududuudduudduddddddduddlddruuddddududddluuruulrdduddduuddududuuduuududlrududuuuduuddddduududulrudulduudrududlrdlddrududdduuuduuuddduudduddddudldrdudduuuuuudduuuduuddddduuuddddudddudludrludrdduuddulruuuudddlrlruddduduududdulrluurulrdudddlrduluuuurddduudlrddudduuuuuldruuduuuduuuudlruududlrddudduuuldruuluurlruduuldrdduudlruddudlruuuuudulrluddrddddududluddddrudddulddudurddduduudduulrddddluruuududdudduulurduddudduudduddudulddrdulruudddduduudulruudddduuuduududuulurdduduuuddddududuuuulruduududlurldudrulrududddudduulrudududlruuuuudlrduudduuuuuduuuuuuudduuuduludrduududuuuduuduuudulurudududduddudduluuruudduuuluruuddduududdudduduududududddduuddldrdduuuudulrduudduududdlruddduuududuuudududddddduududuuuddudddudduddlduudrulrluuurddlrudluudrudddduddlruduulddruudududddduulruududldrdlddddrdddlduurudlrdlddruuduuuudddddduuddlrduddduduudduduududulruddduuldruluruuuddddddddulurddududdulrulruddudduuduuuddddduddududdddlruduuuuluddddrdduuduudddulrddduuuuuddlrldurududdulrduuddduulrduddlrduduuuuuuddddlrdulrduuudduududduulrduuududuudduuuldrddduudduldudruduuduuuudduuuuddulrdduuuuudduddddduulruuduuudduuuudulrlruuuddddluudurdulrduddddduulrdudldruududdudududddddddldruuuludrdddudududddduddldddurdddddluudduurudududuuudduuluudrduduuddduuuddduulrddddududddduuduuuldrdulrlrudddddddudduududududlrduddduddududdlruuuudduuududuuduuudddulruuddulrdddduuulurduduuudduuudlrlrlurddlrduuldddddurduduldruddududlurulrulruddlrduddlddurududlrududuuldrduududddddddluruludrduddddduuduuulrududduldrdduuuuduldrddddudulrududlrdduddulduuurddddduudduddlrduduuduuddddudlurlruldrudududuudldrduduludrdduuuduudddlrdddddudduuduluuuruuuuudddudluddrudlddruudddduudddlrduuulrdudddudddudduuddduuuuduuddduulrddudududduudulrdudduuduudddlddruluurddduudlrdduddlrudududuuuddduduuddlurlruddulruduuuulrdddlduruduuuduuddudulrduududduuuulduruudduuududuuuludurdduluuuddrdlruduuuuududddlrlrddddlruuudlrlurudddddddluruuududdduuddudduuudldrldrludrduudluurddldruduuldrlddrdddddlrdddulrluudddruuudduudlrduduuddddddduudduuuddldrduuuddududddulrlrduluuruududludrdduudddlrlrduludrudduududduuddulurddluuurddduududldddduuudruddduuduuddulurddddldurdddulurduddduuddulrududuuududuudlduruduududdulduuurduudddddddudlddrulddrdlruuddddluurdlrdduuddduuddduudddudlrddddlddddrdduulrlrldruddduudddlrdldrddduddduuddudulruuddddddlruuduuuudddlrudldddddruduuldurlrdudddddlurduuudududuudududdduldudruduududduuuuluddrddlruuduudddduudluuuurdddddldrldddrlrlruddduduuulddrdududldurdudlrdudduuuduuuuduuuddduuddudldrddduddduudduududdudduuddddduddududuudddududlurlrlrudududuuddddduuddluuruudduluruduuddlrdudddduuludrlrduuduudlurududddudddlrududddddudluruuddduudulrdudududduuduududuuddlrlruuduuduulddrdlurududududdudlurdduudddlurdduduudduulrduduuudddduduldurudddduuddduuduuudududdddddudududududuuduuudduddlrddudduudduddulurdudldrudduuduuuddudduuddddduddududuududdudduuddduuldrdddddduduudduuluurlrulurdudddduddlrdddddduddddudddluruuududduddlrdulurdudluurddlrddulrddduudlddrduulrduduluurlrduuuuldudrudddulrdluduruldrldrdlddrluuuruuddududuuulrduuudduuudududduuddlruudduuduulrduuuulduurdlurdduddulruudduuulurlrddduuldduurduddduddlurdulrddduuuuludrudddduduuududuuudlrududuuuddduuddudulddudrudduuldruududuududduldrdduuulruudlurdddduuduudulddrduuuuuuduuuuuduuuduudlrulrdduddlrdduududuuduuddludrlddrduduuuddduuudududluruludrdldruduududdududdudlddrdduudduuuudduduududulududrlruududlrdududdddlddurududduddudulrlrdddduddddduddlruuuududludruduuudlduddruududdluruddudduuudduudddldudrudluruduuuduludrdlurudduududdddduudulruuldurlruduldddruduuuudddddduudddduuudduddduddududdududuududluruulrdlrdduuddddddududdududdududdduuuddduudulrdduddddudlrddududlruddddddulrddudldrulrudududddududulrdduudududdddddddudddududdduluruuddduduududldruduldrudduuuududddlrduddluuruuududldrldrddluduudurlduduruudldruuuudulrddudduduuduudududulddurddddddduudddududuuddludrududulruduuudddddudlrdudlruududuulrlurddududldddrdddduulurdddddduududldduurdlrddddduuudddulurudlrduuudduuuududddddulduruulrdulrdddduuddddduudddddlrduudddduddddddduddlrududduddduudluddurudduudlrduddduduudddddduduludduruldrddduuddudddluudrdldrdduuldruududdlruduuududuuuududuudlduruuudddduldrdddduluruuuluduruududddlrddududududduuudddlrdlurudddldddurlrdlrdlruddulrduddddulrduuduududuuudddlddddrlddrddduddduddudduduudddddlddrdulruuuddudulrlrdduududddlddrdudddddlrudduduududuududdddddudduddududldddrudddulrudulrdduddldrudulrulrddduddlurddduduuuduuudduluurdudddddduuuduuuddduldrdduddddddlrduuduuddddduddduudduudududduddldrddudddlrduuuuuudlddrulruduududdddddududduduuuduududddddluruududdlruddulrdudduuuduuddduuuuddududuulrddududdudludruddudlrdduuuduuluddurddddulrddddddldurudlduddurldrdddddudduuuuuddlrlrdlurdudduulddddrudlrddduduuuuuuuduuudduuduuududddddudduuududdlrdududddduulrdlrudlrdudlrdudddddddudddddddudududddlruduuuuddddddddddddddududlurdduddudduuuudldrudduuddddududddudldrdduldrlrddudddldurddddldruuddddduuuuddudddudduudduudlddududrduddudduuduuuddudddduuududuuulddrdudlrdulurduuldrduuudulruudduuddduddduddududuldrududddudduuddddddudddduuludduduuddurlruuudduudddddldddruududuuuuuddddududduuduuldrduuduuudlrddlruuddudududddulddrddddudduuluudruduudddddudluruduuduuuulrduddddduddlrududuuuluruduuuududulrududdduuduuuduuduududldrdlrdddduuuududulurddluurududddulrlruuuduuddududddddduuudlrudduuddddddddduddlrddudduduuuuddudduddduuulruuududduuuudduuuudduudduuludruudduuddudlrdudduldrddlrdduudlrduudduddulrddududuludrdlrdduuddddduuuuuuudlrduududldurddududuuddduduududuuddudduuddlrddddduduuddudduuluddrddudddluruddudddludduurudduudduddlurdudddlrduuddulddrulddrduuudduduldrddduddlddduurduuudddduuddluduurddduddduduuldurluruuudlruuudulrdldruduuuuuuddddudduuududlruddlrlrdudduluurdulruuuuuuddddulddruududduddduuuddududuluuurdddddduddlurluddrdddduuuuuuduudduddduuddduduudddlrdududluurulurudlurdlrdduuuuddduduududdlruluuuddddurddlurdddddduuuuuduuuduludrlurddddduddddlrdlruudduuudlruddlduuruddlrdddddddduluddrddluruudduddddldddurduddduuuduuulruduudlurduududuuulrdduddddddduuduududlrdduduudduulrdlrddddudddduuduudlududurldurddduuddduuduudldruulrddudduuuuuudddddlruuuuuuduuuududdduuuuduudldruulrdududlrdddlrdududddduldruduuduludduruldrdulrduldrdduluruddududduduuddulrduulruudluruuuuddlrduddduduuudldudruluuruduuddduudduuuudddlruuduuddddduuududduuuuuudduuddddddddduduudduuuududuuldrudududdduuuldddurlrludruududdddlurldrduduuuuddddluruduuluruduldrulrddududulrduudulrduddudduduudulrudlrdlruuuuudlurdlrldurudduulrddldudurddudduddlddudrduuuuudlrdduudldrdlurudddluudrddlrlruduudlruuuduulruddudddlruduldrlurduudduduududdduduuddududuudddudduddddudduddulruddduldrduuddudduuuuduldudrdddddldrdduddduuluuuudrduulruuuulrdddlrddddduddduddlrddludrulrduudddddduddddduuduudududdududuuddduudlrlrddludrddlrlrdduuuudduuduudddududdldrudduuldruududlrddduddulruuududduddududuududluuuurududuuddduudduduuuuulrlrudlruuudulruddddlrddduudlrudddlruudddduudddududdddddddlrlrdudlrddulrlrdduduuudlrdlruuuddduuudduudududuuuuudldddrduuududdlduddddrldruuduuulrluuruudlrduulrduluruuududddulurdudulrduduuuluruudulrdduluudruuuuuluurddlrduuddduddddlruuduuddudddudududuuulrududduddudulrddlurdduddduududduddddudddulrlruluruuuuddduludrdddlruuduuudduddduddududduldrddduldrdduuuddduuuulrdldrulrduddudldduuuruulduuddrddddddduuuudduuuuudulruluddruuuddduddduuddudduldurdddldurddduddlrduuuuduuuuuudddldrdddudduddudduudlddurdddduudlrdududdduudlduddddrulrddududuuududdulrudduududduuudldrddddduuuduuluurduduuuudulduruddulruudldrdduuulruddddulrduddududdudulurulrluurduudduduuudddlrulruuudddlurduuduududdddddududuludrdududluuuudduruddudluurudduulrduduuddlrdulduurudddlddudruududldduurudddlruuddduuuddlrudlrduddddduudduuddduduudduduuuuduuuldrlrududdududuluduruuduudlrdddldruuuuddddduulruddulddurddduuuudlrdudddduudulrduudulduuurduuddudddddlruddududddudddduudduuuddluurdlrduuuudlruududduduuuddlrddlrdddlrddduuddudddddduuudulddrlruuulrddudldrddddduududddlddruldruduulurdddduduuddldrduuuuuddlruddududlrdududuuudlruddlrduddulruddduuuuuududduludrddddddduuddduududdulruduuluurldrdddddddduuuddududuuuuddlrudduddulduudrududlurdduuduuududlurdudduuduuuuddudlrududuuduuuuulruduuddddduuuududdddddddudddduuudududduudddduuddddddluruulruuudduldruuuddduuuuuuuddduuddddluurldruddlrdlurudduudldurdlrddluruuuduuldrddududulruduuduuuluruduudduuuuddlrududduuuuuuududdddlrdddduudddddddddudduuuuuuuulrduddduddddulrlrdddluurduddddudldrluddrulrludduduudddruudddldrududddududduuddlrdddduuduuuudduduldrudlrlrduluruuddlurudlrdddulrluurddulruuddlrduuddduudddulddrldrlurduduulrduuduuuuddddudludrdlrddudduudduududlruddduduuuuudddduuuulurddduudddlrduduuuduulurdulruuddudddddddduddddduuuududdddddduuuulrlurlruuulruddudduduldduurldurddulruuduuduuddduddduudduuudddlduruuudduulruuuuuuddldrlurulduruududddduduludddudruuuulrddduuuuduudddlurdduududduddudduuududduuluurduduudlrdddddludruulrudluurduuddudduuddduudududddddduldddrduluuuuurulddurdddlrlduudrududdduuuudududduddudduuulddrluruudduuudududldurddduduuddulrlrdddlrldrdudlrdduuddduuduudlurdduudlrududuuuldrududdlurlrduudududddduudduduuuduuulrududduudluudrddulduurduddlruuulrduududdlududrduddlruudddlruduuldruuuudldduruududuuddldrdudddduuuduuududduulrlurdudduudddudududdlrldrudddddduuuluurudddddlrlrdudduulrduuuududddudddddlruduuuduuddduddudlrldrdduduuudddddulrdddddlrdddudlrdudddulrduuduuudlrddddudduuuuuulrduuuddudddluuuruuulrduuduuddldudrudluruuddduduuddudddududduudlrldrudddddduuudddddddduldddddruduudddluuuurddududduudluuuruudluruuddlrdudududlrududduudduuuduudduduudlrudlrduddddlrldrduddududdduuddddduuddlrddddddlrduududdduuudduudlududddduuruudddlddrlurududuludruudluurdudduuuduuluuruuuuuuuduldurdududduudulrdudulrdldrduuuudduulrduuuuuduuuddduuudlrddulrldruulddrlduruuduuuuduudduddudduuddududdlrdduudlduurduluuddrlrlduduuddurududududuuduudldruuuuuldddddurdduuudduuuuudduduuuduudldurldrludruuddlddrduuddddddduuduuuududdduddduudududddududuuddddduudduduuldrlduruduudddduuuududdddddduuudlduurudduuuudlrdddduududuuddududddddduuudulurdddulurduddudluuuuurdduuuddduuuuuduldrddludrludrdudduuulruuudldrulddurdldudrddlrlrluduruldruuulurduuuuuduuduududdluudrduuuulrdddduuuududlurududuuuuuudduuuuluruuludrddduuuuldrduulrduluuduruududdluddrdldrulduruduuulrduudldrdudlrduuuddlduddurddduuudldudruddudduuuddduuddluruuuuuuuduudduddduuuuuudluuruudulruddduddudddlduruuulrduddduuududlrudddddduudduuuuuddududldrdddduuduuddududududduduuddduulduddrduduuuudlddduuruulrududdduddddulddrldrduduuddlruuuludurdduddudduudddduudldruuulruuduulrlruduuuuddlrddlrdduddduddddddudduduududldrduulruuuuuuuldudruuduudududulrddduuuuuuuddlrdlduruuududududuudddudduuududuuuddudduduududddududuludrluurdudldrdddududuuulrulrudddduuuuduulrulrduudududduduuudduuudduuudduuuuuuudlurduulduurdudddduddduulddruduudlrududlrddudlruuuddludrdudldrdduduuulruuddudddduudldrulruddddduduudduuduudddulrdlrlurduldrlddrdduuudlrlrduulruuududlrdududududdduddulurududuuuddudduuuuudlrdddduddluruduudddluruuuuududdddduuuuuddddddudududduduuudlruudddduuuddduddudldurudduududduuulrdduuduududdlurddlrduldrulrdududlrlrdduuduuuuudduddddduuddlrlrududduluruduudldduuduudduruuuuudlddduuruuudddlrudddddudlrdddldrduldrlduurdluurdudududduuuduulrluruuuudddududldruldrudduddududddudulrdddddudududddulruuuudulddrddduulrddduudduuuuddduddlrduuuluruddddddudldruddduuulurddduulrluddrdduuddludurlrududduudddddulurddudulduurdlurdduudddddduuddudldrdddudldruduududulduurduddduuuuddulddrlddurdduuldrddlrldudrdduddddudduudddddluududududdrluurulrdlruddddduuduuuuuddudududduddduddlddrudduduuddlrdlruuuuudduuddddddududlrddduudlrduulrduduuuudduduudduudulrduuduudududdddddddulrududduldrdduuuuudduuddddduuduudddudduduudluurddddulurldrduududududdduudddlruuuddldrduuudddduuddddulurddlrlurdudlududrulddurduudduuuudduududddldruduuuddduduuuudddududulddrddlurudududddddduddddudduuuduudlrdudddddddddduuuudddddddddddlruuuduldruuulrddududuuuudlrududdduuuuduuduuuuddudddddlrudddudddlrldrdduuddddudduuudduduuluddrdududdduddldduurlrduuudududddulruduuulrlrlurlrduuduldruudddddddduudduddudduuulruddddudduddldruudddudlruuuuduldrudldurlrdduuuuuuuddddddldrddddduddddduudddldrduuuddduduuudduulrudlruddduuuuduudddudddlrduddudduddddduddudulrduuuddlduurdlrdduldddrudddddddulrldrulruudddddduuddlrdduuluddduuuurududdduuddduuduuuuudddlrdududduuulrdudududlduddrdddlrdlrdduduudduduuddulrudluduuddurduuuddudddlduddruddlrddlrludruddududuuuuuddluruuduuuuddulurdlrdudlruddddulduruuluruuuddddldrldddruudlurulruldruuudduduuuuuduulrduuluuurduduuddddddldddrlddurddduddduuludruddduuludddruuduulurduduuldruuddudddduuuudddduuududududduduuduldruudulruuddddduuudduddududuududdulruduuddduuuuuuuludruuddduudduddududuuddddddduddduuddduddulrduuuuuddududdddduudddudduuduuulruuuddulduruududulrdddlrdulrdddlduurdudududuuuduuddlrduldrduuduulrududlddddrudddddduuulruudlrddudududdudddduddududlrduududlduruulurdudduduuduududuuuudddlruddlruduulddrddduldrudddlddrdldrdudlurdluurduddddlrdddddddudddduuududddlrdudlrduudduuududududdddddulruduudddduuuuuulrlrudulurlrudluduurdddduddldudurudududdduulurdlduuduurudldurduudlduruududlruuddlrlddrdudluruduuduudddddudulruludrduuduuulrddddududluruuuddduuuddududdddududulduuruuuddlruddudluuurdududulrdudududddlrdddudluruuuduulrluuruddlddrdduduuddduuduuuudduddduuuulrldrddduulrdddddldruuddulrdduuuuuuuuudduudddduuuduulduruuudludddrududuulurdduduuuuduudduududduudduldrududduduldrlddrddlrulruuuduuddduuuuudduulrddddddudduduulurddulurdduldrdudulruulrddddddudduluudrldrddudlddudruuddlrduuddududddduudduulrulrlrulddurduuddudduuddduddudududdduduuddudluduuurdlrdduudddddduduuudduudldrddduduulurudduuuuddulruuudlrudduluuddduudruuduuuuddludruuduuuuuudulddruuudduuudduulurudududddududlduddrdlurdduldruduuddlrduuduuuddulruddudldrudduuduudududulddduurduuuuuddduuddduuduudlrduudlrduddluurduuudddulrdduuduuuuduudlurdddddddluuurlruduuldurduuddduduludrdldddruudlrdudluddrudududuldruuududuuldrdldruddddldrduududuuduuuuuduuddlruddudduuldddrduuuddulurduuudlurldduuruldrdduuddudluddrldrdudduddldruuulrudulrdddduuddlrldrlruuuulrdlrulruuddlruduuududddddlruudddddudduuudududulrdlrudduuulruuduudduuuddlurduuuduuuuuuuddddldudrdudulrddddududduuudlruududlddurudduuuuuduuududududduuuudduuuuuluruulrdlrdddududduddddddddulrlddrlrduudlurudddduuddulddrulrlruddduuduudulrdlrddddlrdduuddddudududduuuuulrdddudduuuuuddduludruuuluruldurdlruluuduurududududduuuuudldruudduuuulurddduddlduurudulrdldduuruddddlrudddduduuuudduulududrdddluududrududlrdududuuuluuuuruduuddldruuduudldrdddduulurdududduuuuuudduduuuddlrudddddududduuududuuudddlrdudddlurduddluddruududdduuuuuududdudddddddddduudulddudduudrdduududuuuddlruuuuddddduddulrduddlrdudududduuuuuuuuulruddduuduuduuudduulruuuuududdddlrdddddduddudddudlrdududlrdudddlrduududuuddududuuuddduuududuuuldurdldruddudduudddluruddduuduudddddduduudulrduuulrduudlruduududduduuddlrddduudddudduduluruudddduuuddududddudddddduuuudddddlddruuuudduudlddrduduluurduddddlrddlrudddudduduuudduuudduuddldddrdduuddduuduuuuuduududduuududulddurdudlduurduududduuuddududlrduudduduududdddlrduduuddddlrududududuudddududdudduuuududuudduddddduuuddlrddlrddddluddrlrddulrduddddduddudududuuuduuddulurdudulrddlrududddudududdduduuulurudlrddldurudddudluudurldrudldrlrdddddduudddduudduluuuudrdldrdlurlddrduddldrdudlruduldudruudlrlrdlduruddudddddduluruldrduluudrlduurldrulruuuududuuduudlruduuddddudldrdudldruuudduuduluruduuddududduuuduudddldrdudduuuulrdduddduldurlruudlurduududdddddduldurdddddldudrdddlduduurududlrlrudddddduudulrulruuuuududduuudddddldrlrududdlurdludurdudddulrdlrduddududlrldrdduuduudddldrddudulurlurdlduurdlrldrduuuddulurudulddruuuuduuuddddlddrduddduddududuuudddlddudrdududlrudddduduludurddduuldduudrudluruuddudldrdddlddrduulrduddduddldddrduuddulddrduddddududluruuddlddrdludrudduuuuudluruuulrlududruudddddlrdududdudddudduudddudduduulrdluruuudlrdudddduulduuruuuldrddduddduuuddudulddduuuddruduudluuurulrdudddlruuddduuduuuuuuddulruuuuddduuuuuuuuuuuddldruuuuldruulrduddudulrududdlrlrududlurluruududuududlrduudlrudldruddddduuudddudddlrdudduuuuduuddduuuuddddulrdudlruduuuududduuddduddudduudddlurdludurudddudududuludruududuudlududruddududuulruudddluuudrudlrudddddduuddlruuduuddudddddddduduudduududulruddddduduuduuduududddudlrdududuulurlrdulddrdduludduuduurdddddddudduddudduuudduuddudduuuudlrdddduuduududuldduurudulrdddluuuuuruuduuludrduuulrududuuddlrdlrulrulruuuuuuuddlrdulruudduduudddddduuddudududdluddrulruddldurudduuldrdudddddulrduddluuddurduulrduuuddddludrduuuduuuuuudlrududuudddudddudduldurududulruudddddduluudduurddduududdlrdduddudddududuudlrdduddlrdudduduuudddudlurudddduddudududdduuddlrlrduududdddddduududduddduudlddurlurdduduuddududduudduuuudlrduduuuuduluruluruduuduuddlruuuudduddduuuldruddlduruduuuddddudududuuududdudddduuduududuudduududdduudduudddduuudldrudddddudlrdddddddluduurdlrduuddulddruuduuuuddduuuldruuddlrddlrluuurdddudddddduuuulddruuududldurulrdulruuulrdduuuududlrddududddddludrdduuduuddlruuduldurudduudduududduuuuuuudldrdlduuuruuudlduruuduudduuldddddduurdlrdlurddddudddduduuuddududddddduudddudduduuddddluruudududdduuuuuuuuudduuudluruududduuduudddddldrduudduuuuuuduuulrududludrdudduududdlurdlddrdddluruuduuuuldrdudldrududldruududdudlrduudduududduddddlrddduddldruddduuulruldurdlrudulrdlddrdududuuduuududududddddduddddddudulduududdrddudududuuddduuldruduudlruddduldduuddurudddlrlrlrdduuddddulurddlrldruddlrduddlrulurulrlrudulrdlruuddduddlrududdduddlddrudduduududlurddduuuuuddlrdduuuudududduulrluduuruudddduudduddduuuddlrudududldddddududurduuududduuddlurlruduldrdduuduuuuddduldrdddduuldruluddurdduduududddddulruduuddduududdlrduuuuudduuludrduddddduuduuuuududdlrddduuddududduddudldddruuudddduuuudlrudududulruududulruuudulrddlrlduurddulrdddldrdduuuldrlrduulrdddlruduuuduudddduudluurdddudududdduddduduuduuuddddddduddldrddduuududuldrddddulruddudddulruudududuuuddudddldruuddduuudddududulrlrduudlrdudduuududuuudluuruduluddrudddlddrdudududuuulrduuduuddlrdduldruuuuulrddlrduulrlrludruuuduudlrddduudduuuuuuuuuddduduudduududuuududdduuluuddruddduududdduluddrdudlurddddluudrlrduuddudddlrdlurddlruuluudrludrduddudlrddduddddududdudduuduududuuuudulurddlrddulruuddulrlurdudlrdddluuudrldrldrdlrudlrdduuuudddddduuududldurdlddrduuudldrdlrduuuddddulduddrulrududddudududdlurlddrduudlurdudduuudddudduudduudduddduldrdduudulruududuuuuudddddddulurduuuuduuuduuduuddduuudududdddduuuuluruudddlruddduududduddudududdlurduddududlrdudduuduudduulurudduluuuduurduududuuddduddddddudduduulrdduddduuuuudduduldruuudulrduduuluurddldrududddddududdduuduulruddududdduuddldurddddduduuuududdlrdddddduulrdudduudddduuduludrduddulrldruddulrdulduruuduuudddudlrudlruddldruddlddrddulduruuuudduldudruulurluddurdlruuuuududdlrduduluruudlurdddddduddddldrddulruddudddduduuuudduddudulddrudduudduddduudduduuudduuuddudldduudrduldrlruduuuluddrduuddluuurlduuuuuddruuludrdduddddududdddududduddddudduuddlrldrdddluurddudduudududdlrddddddlruduuduluurulrudududlrldrlurldrduudluurdduuduuududulrdddduudluruuuudulrlruduuudddddduduluduudrlrudddddlrduldrduulurduuuuuuudddududlrlruduuduudduuuudduududddlrduuudduuuduuddddudduuuddldrduuudddduudddudududduddddudduduuudduulruudduududulruudlurlrduuulrudddduuuuulrdudududulurduuddddudddlrduluurddluuuruuuduuudddldrudddddduddudddddddlruluruuddlduddruuldudruduulrudddudddduuuudduddlruddluuruuuuulruuduldurddulrdldrlrddduuuuudldruududuuddddduddduuuddlrddldddruduuduuuuduudduuddldrududdlruuudddduuuuuuludrddduududulrududluuuuurdlddrdddulruuududdudduuuuuulurdddddduudlduudrduddduuudddlduuruududddudddlurddudddddlruddudlrudldrlduruuulruuuuddduuudddduduluuruuldddruduuuduuduulrdduldrudluurdldudruduuuududdludruuudulurudluuudruduulruuuudduuudddddddldurduuudduuddddddduldruuuuduulrudduuulruddudddlurdduudududddduddlddrdulrududlrdddududuldrulrduudduuuuudduudduuuduuduulurdlddruduudlrduduuuduuuudulrdddludrdduudududdlrudduduuuuulrlrdlrulruluddurlrdudldrddlduurdduuuuudduudddduduududulruudduuuldudududurududuuudduulrudulruddddduuuduuuuuudddddlruuuduuuuldurlduuuruuuluurduduuldruduuddulrduuuududuuudddlrdduuddluudurddduduulruulrldduudrudddldrldrdldruuuuuududluurduluuruuuuuudduuuduulddrdduduuududddduuuudduuluruddddlrududddlrduududddudddduuudduddudlrudduuduuudduddduuududdudduuddudduudldrdudulruduuddluruddddududddddddddudlruddudldudrddlrudduuuduudduuduudddluurdduddududdduuldrudududdduddldruuuldrdlrddduddddluruuuuddulrdlrdddddududdudduddudlduuruduudddduuldrudduudduduuuududuuduudduuuuuddddduuudddddddulddududruudududdddluuurddldduuddrudduddudddddduduuuddlrddduddlrduududduuldruulddurudulruuduuuudduuddulddudrudduldrdludruuudddddudduuudduudddduuuuddudlrdddddlrdduuuududdldrlrudududuudddddddduuudlurdlrdudlddruuuuddudddudddduduuduudduduuuduududdulruuudduuduuuduuuuudlrulrlurduduuuudlrduduuddlrududduldurdduuuududduuduuddddduudududuulruuuudduuuuddudddldrdlddrulruudulruudddddlrududuuuddduddddddudulurduuududduduududlrdulduddurddddddududduuluddddrduuuulududdduruduuuududdudldrdlduruuududduuuuddduuudduddldrldrududuududdddudddlrudddlruluuruuuulrduddddduudddudduduuulrddduduluruduuduudduduuduuldurududdulddruddudlrduduulurduududuuuuuudluudrldrlruuulrlrduddlruuudddddddddlruuddduldruudduuulrlddrddduduuuudduduludduudddurddudduuudduuddlruuuuuuulurdldruuuduuudduuuduuuudddudududuuudulrdlrddluddrduuulrdudddulddruuluuurduddduuudulrduudlruuuuddulurdduududdudddldduruudlddrduuduuddduulrlrduddluuuuurudududuuddlruddddlrlruudlurduuuuulurdddulruuuldrudduduuddddlrudududuuududududlrddddduuuuduudduldrudduuuuudulrdduuldudrlurdududddudududddddduududuuuduuudddldrdlrudulurdlddrdduuuulddrdddddduduuuuudduuduuuududuuduududdduduuddduudulrduddduddudududduudduduuddduudduulrduududlrddduddlrlddrlrdduududulrdldrdddddlurdddddldrudduddulrlrluddrdddlrdlrduudlrduudulrudddduudddulrudddudududddddudddduuldrdduuuuuudlduudruududuuuuuddudldruddduuludrdduuudlurdddulurududddududlduddrduddduuduuudulruduuddduuduuuduuuduudlrluruuuudulrudududddudduuuludduduurduuuduuuduudulurdudddlddrldrudlurlrudddlrduudlrdldruuudluudrdddduuuuduuuduuuduldrdduddudlruuduludrddlruuddduulrdlurdududuludrdddddduuddulrdduuduuuuuduuulruuudduduuuuuddddddldrldrdduududdduuuududdlrduuddduuudluuudruuududldruddduddduddduduuudduddddldddrduuldruuuuluruuududduduuuuluuruuuuuulrluduuruldurlrudlruludrldrdlurudldrddduduuduudulrudddududdlrdlrudduuudlddrulrdddudduduudduuuuudddududdudlruudlrduulrulrdddlruduududdlrduudulrududdludruludrdddudlrdduuuulurdddlrdududduuuudduudlduddruduuduuuuluduruulrlddduudddddrudduddduddlurddddduldduurdduududuuuududuuuuuddddddduddduududlrududlrudduuuuudduuulrduudududduduuududddddlurldruldududdrluruduuuddldudrddduuludrddlrduuddlrulruulrddduuuuddduulddrddudldrudduldruddudddlrlruuuuuuldddrduduuddudduuudduudlruuduuddduuddududduudluruduuduudddluruuduuudlrdlrudududdduuddduuuuudududuuddduuldddruuudduduuldrddudlruuddulurlurdduuudulruudlruuudulrdduuldudrddlrudduuuddddduuudddddldurddlrlrdduuududuuddddddududlruduuddulrlrduuuddduuudduudddlduuddurlrdudlrdduddlddurluurdulurduuudduuuudduldrdudduuddduuduluuuuruuuuuuuduuldurdulddrudddudduulududdduddrududuududuldduuruduuldrddddudduuuddddlrdduuuudddddlrudluurddududdduuduudduduudddddudddudduddduuddldrdudduudddudlrduuudlurduuduuududdlduurdlruudddlruduluurdduuldurldurdulruddduudddduuduuuudulrddulrudddddduulrdudduduuulruulduurudduddluuurddudduuuudddldurdlruuuuddulrddlrudddddduuudddduulrdulrudduddlurduudulrudulruuududdluudurdlrduulrdlruudduudddulrlrdduuudldrlddurdududdduulrudduuddddududddddududududdlrddduduuuddudududduuuuddduulrduuldruuddddldruddluruddddulruludurddulruldudruudddlruuuuduududddddlurdudulruuuddududddddddduldrduududuuddduduulddduurdududlduuuududuuruduududdududduduldddrdduddududdduduudduuddddulddduuurudulurduulruddulrlurduddudduduuddlurddudduudlruuduuuudduduuududdduuddldrduuddlduruuuddlddruddluurdudldudrddludrddduddduuddlrdudldrulrulrduuduuudduuudludruuudduudduddudulurduuddduduuudduuduudduudddduddluurduduuduududuuuudlrudddluruuduuudddudldrudddudlruludrdudddduddddduulrudduddldrududddddduuudddudddlrudduduuuulrddulrdludurlrduddduuddddududdddduuduuuuudduuddududdddduuuuuuddldrulrdddddddduuduuuuduuuuldrdudduddduuuudddduldrdulrdluruddlurdlruuddlduuuruduuduludddrddulrlrddduudduuddudldurddduudududuududdduduuuuddududdddddudlruuududdduulrduudduduuuduuduudddudduuuddduuuudduudduddudluuuurudlruldruuuudududlrdduudduuuuuuduluruduuddduuuluddurddulruudududldrddudlrudddududdduuddduudldrdduuddududdddddddudduuddduddluddruddduuduulrddulrduuudddudududuuddduulrlddurludududuuuruddududdlurdddluurudddudddddduddulruuudduuuuuuldurdulrdduuuuluurdduddduddluudddruudddudduldrduddldrudluuuruddddluurludruuuulurulddruddddlrduduudduddudduluududdrduududuluuudrldrluurduduulurduduududddduududuulrduuuudddulruuuududuuudduulrdlrddududuuldddrdduuuulruudddduudddlrdlddruuddudddududludrddlrddddduuuduudulruuduuuuudddduduuuuddduddduuuudduuldrlrdudduuuddlruudduduldrdluurudulrudduddlrdddludddruuuuduuuduudlruuulrudduuddldurdddduluurdlruudlrlruddulrudduulrduddduddduddduuuduuduldrddudduddduddudddddlrdldddrduddluuurddddulrdudldduurdduddudddddulrudlruddudduuuduuuuudduduudududududdudududuuddduududduuudluddruuddduddldrddddddlruuuuulddrdududddlruddudulurduudddduddduudduudddddddldruulrduddudlddrududldrdudlruuuudduduluurlrdlruuuulruuddlrudulruddudduuduudlrudduuddduuuduuduuuudulruludruddddudduddddduuduuududdudlruuuldrldurudluruludruuuduudduuudduuluuuruuudduudldruduuddddlurdududddduuduulddrlrduddddduddududdudduuluurulruuuddduddduldrlrluddrdududdduduudduuuuuuududduddduddddduuuuuduuddlrduuuudlruulruududduulruudddudlduuuuruddudddluuuruuuulruudddddlruulduudruddudulrdudluuudrlurdduududldrudlrudulrdudduddlrdlurdlrdddddudddududduduuuduudududduduulrlurddldduuddrdddduddulrdldruuudddudluduuruluudrudduddldrdddlrdddududduudludrlrdduddluruuludruulddurlruduuduududlurdulrduudduduuudlrlurlrdlrdlrddddduudddddldurdlrdddlurudlrdduduldudurlddrududldurdudluruududdlrduuddddduddduuuuuddudddududududdddudlurdududdldddrdddduudldrdddddduuulrddulrduudlddruddudludruudludrlruuudldrulurduuddduduuudduudddudldrddudddduuuuluuurdudduulddddrududdduluddrlrdddduldrdudduulrddludrdudlrdlrlddurdduudduddddlruddddulruddldurdudddduddulrddlurddudduudduduududduduuddlrudddduduuddduuuuuuudulduurduddulruudlrdudddduduulrdduuududduuuduulurdduulrdduduuduuudduldduuuruddduddududdddudlurulrdduuddddluuddddurldrudduudduddldrudddulrdduuuddduldrlruudlrdlrduuuuldrudduuddlrlurduuduuluduudrdudlrudduddluudrddduudlddrdddduulrduuududdldudurddddludurdudulududurdddlrudduduuddluruudududdulruuduuddlruudududdduuuuldddruuuuduududduddlrudulurdddldrdlrudduuududdududdduduudulrduddlrdddduddlrddudududduuuduudduuddlduuddrduduuuuuuludrlrduudlddruduuludruuduudlurddddddddduddduuudduuuuuududlrdduuuduudldrdduududdddddddddddududdlrdlrdudududulruudlruuddulurdddduuuulruuuluruuuuuduudduludruduuuduuuddldrududluruduuuudududdlrdududddddduddduududlrduuuudddlruudduddduuuuuududdlrlruuuuduuulrdddddduuduuuddduuududddddduuuulruldrldruududdudduduuuuuududddulruddduulruduulddrddddluduruuuudduulrlurddudududlruuudddudddudduduududdududududdduudldudruudduuuddududuudududuududddddlrddudduuudldduuuruddudlurduuududdddudduddduududdlddrdduddduudlrddddduuldruuddulurudlrlruddddduduuddlruudlruduuddduuudddddulurudddduddduudddudduuudududddduddudduudduuuuddulruuddduududlrdddduudududdddddddduddddduduuduudduudldurldrduddduuddudududuuudduddddldudrlddrduuuududdduudduududddudududddulrdudulrduuudddulruduuududduudduddddduduudulrdlurulurdddlrdduuludurdduduuduudududlurdudduuddduuulrludrduuudulrddduduuduududlddudrdududulrdudldddrdudduudddddddduuudlurduudduudlrudlrudddduulruuuuududduldrdduududdldrddduduuduududddudduuludrldrddddduuduuudulrdlduurludrduuuudulddurddudddulruuudduduudududduuuuududluruddudddlrdlddruuuulrddduududddulurlrldrduldudrduudlrudududuuduuddudddludrdudlurdddddludrdddlduuuduurddludrduuulurddddlrulrdudduuddddududdududdududddudldrduudduuduuduuuuuuuududdudddlrdddlruuuudddududdudduuuuuldrddduuduududuuddddududuuuuddddduddduuuudlduudrddduuduldrddlrdddluruuuudduddlurdduuuulrdduddududuuuudduududdddududuulrluddruuududduddlruuddulduddrdddudddldurluruuulurudddlrduddlrlrludrlrduddddduuuulrlrdlruuduuldrlruddduuddudduuuduuduudulrddlrdduddudduddduddlrduuuulrdduldrduuduuududuluruldrdddddulurdddudduuduluruddulrlduruddduuududddudduuuddlddudrddduuuuuduuudddddduddduuddduuuuduluuduurdudduudulruudduuldurududdlrdudduuduuuududdlrudddddldrdluduurdlrdduuddddlrulurdduudlrdudluruududuuddlddrudddudduududdudlruuuuuuudddudduuuudddddlddurdulruududuuldruuuuldduduudrddududuuddddulruuulrddududdlrduddlrudldduurddduuduudduuldduudrldrdudlruudududdlrdduuuududuuuuuldruuuududduudduuuuuddddddlruuudduudddudduduuddldrlrddduduuuududldrdddddddudlddruududduuduuuddddduduuudududdudududlrduduulrdluurduuduudlddrulruddlruudlruuuuudududdudddudlrduddldrdlruduuuuduulrdddudduddddulrddddddlrulrdududuuddlruuuuuuluruuddddddddldddrduuddudldrdldruduuudlrdlurduddduulrlrdldrdudduududduuuduuuldrdldrlddddruuddduuuludrulrududuulrddulddruuddudduuulrdduuuududduuuduulrddudddudddldddurdududuudduuuuddddduulduruuuddddduduludrulruddlrudlurddduuddudddlrlrddduudduuuddduuuduudldrddduuddduddduududduuduludrddduduudddududdddduddlrdudduudddduuddddudddulrduuududduuuududduuddduduuudddlrddudulrulurddudulruddduuuddldudduurduluuuruddududuluddrldruluurddududduuuuludrdulrldruduludurddulruduuuuuuudlrudlrlruldrlddduuruudddduududuuuuddduuuuuuluuuruudldrlrdddududlurduudldudruuudddddulruudddduduududduudduududdddudldddrddudududuuuddddddududduuududuuuududduududulduurldurddudlurddddududdluruuudddlrdddddudlrlruulrududdduulruddududddulruudddduuudddduuuduuulrddlurddlrlruduuududuldrduuddddldrddulrudduuuddududdlrlurududddddduddddduluddddudduurddddldurduduudlruudlrduuudulrddduuduuldurudduudulruduuduuuuldddrdduuduulruduuddddddddddduuuudddlududuurddudduudddudddduuddddduddlruuuuulruulrdduduuuuudlrdldruduuuuldrudludruuduududduddudduuudduldrdddlrdduuuudduududduldruududdduududuuduudldrduuuuudldrldrdluddrluruddddldrduduuududuudddudduldddrudduuduuudduldruuudduuuduulrdddddddududuuuddudddulruduuulddruuuddlrduududuuddlrdududuuudduduudlrdlruuldrududddlddrduuduuuddudulruudduddddduldddddrdduudddudduduudduududddduduuddddldrulrduddudlrludrddludduuurduulrduudduddduduuuduuulrduulrduuudldrduulrlrudududlurddudduduulurduddlrduudluruduuudduuddudduududuuuuuududddddduudduuududduddudulrduduuuudduuuldrldrulurudduuduluurduuduudduudlurudduldurdulruuududdddudluuudrdudulrdududuuuuddduulrdudddduuduuuduududuuuudlduruldrdududdddudulrududuududddduldduudrdududuuddduudddddlruudlrldrdddluudrdlruuuddudulrdlrduddduddddddduuuudududduuududuududuuuldrdulrddlrldrduudddudduuulrududuuudduddddududdlddrdluruulrdddduuduuddduuudddulrduuduuuulurdduuuddddduuuuududuuuuddduuuddlrdldduudruudduulrddulrdduldrdddudduduuuuddlddddddurddduuudduddduudduududuldruduududulduruuuddulruldrdduudududdddududuuududdulrluddddrddduududduuddudddduduulruulrduduuulrdddlrdduduuuuuuuduuuuuudduuuuudduulruddudddduuulduuruuudduluuddrlrdldrdlurluruududdddddlurlrdudddduddudlruulrudduuuduldruulrduduudluurddlrdddududduudlrudddlrddddudduddlrduuuuddlddruuuldudrudlrulrudlddrduddddlddrddddlddrduddudlruuldudrlrddddduuuudluruuddduuuuuuddduduududduudddudduuulurlrlrduuduuddddduuduududddlruduuuddudulrdlrduuulrduuuuuddlddrddudlrduduuddlruduuuddduuduududddduddddddlrdduuduudududududddduuudduududdlruudduuddudduudududlrdduududddduudduduulrdulrldduuduruldrldrduudddddddddduuulrddduuduulrddlddurudludruduuddudduddddududdudlrlrdduddudludrduddddddddulrdudududdduuududdulrddddduududduududdduuddddduludruduuuuduuuuuuuudddududuuudddlurduddududduududddududdulrduduuuududuulruddddlrdddddldurdududldrduuududlruduuduudlrududdudlrlrdududdduduuduuuduudduuuudldrddduuldurudlddrdududdddddududuuddddudulrdududddulrudlrudlruududlrlrdldrdduudlduddurduuddlurudddddudduduuudluruuuduudddudludrdddduuudduuldrdududdduuuududduudduuududdulurduuluruuduudulrduludruddduuudddluruudlruududuuuddldrdddduulduudrdludrdddddddudduddldddrdddudddddddlrdudddududluruddlddrldudrdduuduuuuudlrudlurdduddduuudulddudruddulrdduuuuduudduuuddddlrdudddluruudulruududdudldddddruuuuuudduddddddduduuuddudduddduddluduurdlrdddlruududdduddudddduuuduuddudldrududuuuulrdduudlrddluddruuududdududdlrduuuddduuuddldduddrlruuuuludrudulrddddlrlddrudududdlurludrdddduuuluuddrdududdlruludruduudududlddrddlrdudlurdduluddrduddduududuuudduduuududuuuddddduuddduddduuuddduddulududruuuduuuduuddduududduddduuduuddudddddudduudlrddduuudduldurduduuudulrududduldruuuuddlddurduduuulrudldurdddudlurudldrududdddddddddludrduudddduuddududduddududdlduruuuldrlddrlrlrduddddlurluruddudddududddduudddudlruuududuulurudddldruuuddlrddlrddudduudldduuurdddddudddlrdududuudldrddduduuuuulrudlrdduuduududdduduuuudlrddddududlurududdlrdduuudududddddddudddulddruulruuddlrdulrddddddlrdudddududuududdduuduudddduuuududdudduuddldudrluuruldrudduuuudduddddduuuddudduuuldrlrddlruduuddudududlrdududddlrdulrduuddudddduuddddududuuuuuuududududdddduddduduuddddduludrduluruuudduudduddddddlurudududduuuulrdudddduduuuududduuudddudddulrddduududlrududlrudddduddlruddluddddrddududlurlrulrlruduuuddddudududduduulruddduuddduuuudududuulrluuruudududulrdududuuulruudduduudddddddduddddldrudduududdudluddudrdduuuuudlrudluruddddlrulrdlrdduuduududdududdldurlrduuududldrduduulddudurdduulddrduddddduuuududdudddulrdlrudddduuududuuduuudduuduuulrduddudlrdduddlrldrdduuuuddduduududulrdududddddddluruddlddruuudldurdududluruduuddldurdulurduududdudddudduududddddudddlduudrudduddludddruldrduulrulruddlruulrududddldrddlddrdddldddrdudududuuududduuuuludrudddldrdudddduuuudududuuduuulduurdlrulrlrduulruduuduududddudduuuuddudddddldrddddddlddrudludruddludruduuulurdduuddlruuuuddudududdddduddddddduudduudlrduuddduluruduulduduruuuduuudduuldrdulurduuddldruudlrududdddudddduldudddrdudduuddulurududlrldddrdduldruudldurludrddduudududduldrduuudduuuulrduddudddlrdudduudduuulrduddddddduuuudddduduuuuuddddlruduududdddluurdudlurlrdddddulrdlrdlurdlrlrududdluruuududuudlrduduudduudduduuduuduuuddluuruuuuduuduuuuuluurduduuuuluruldrudulruuddduduuduuuduuudduddduddldrdluuruduudddddududuuudulduruuuddddddluuruuuuuuduuulruuudduudduddduuddddddlddruddulrdudduudddduuuddddulurdudulddrulddrddulrdddduduuuldrdduudduuuddddududdludruduudddduududulrlrdudddulrduuuudduuuuddudduluuurldrddduududduududluruduuududuudddudduudduuuulrdudlrdudldrdddduuddddudddduudlrldrddulrduududududdlruuddududlrduddlurlruuuuuduuuudddddddddduududuldrulruuldurlrddlrdulduduruuldrlduruulruuudddluruduulrudulruudddudddduduudduuuuududdduddlrdlrluuuurlurlrulruuuuddududlrdlrdudududddduuuuuuuudddddudduuluuduurudduuuudulrduuudlrdududududlrdddlrduduuduudddludrulurdududduuluudddurdudduuudulrlddruduuuudldrddduudlruuuduudddududulrdlddrldrddduduuduuulrdudduuuududduduluruuddlruudduduuddddduuuddudlrldddurdulruddlrdduududddludrduddudddddduddldurlrddddddddddduudduududududlruulruuddudddddduulurlrududududdudddludrduuudulrdddddudduuuduuddddududdlurddlduudduuudrdddldrlurdudduududdddlrulurlruddddudulrlrdlrdddluddrudududdldrddddudduuuududuuduuddudddddddudduuuulruduuududududdduuldrdduudduduldruuduuulrlurududdduuududdddludrdddudddudddlrdulrduddduduuddddlruddulrlrlduruddduududduuududludruduudddlurddddudulurduuudddludruddduduuddududduduudddldrudduuududuuddudududdlrudlurudlrduudulruudddddulrlrududddlurduuuuuddldrudlurddlruldruludrulddudduuddudurdudlruuduudduddduddluurddududduudddlrudddduududuuduluruddlrdudududlruuluruluruduuduudduduuddduuulddudrulrddududduduulddrudududdlurudlrududddduuddduddlrduuududddlddrduulrduuududduuduuddlduuuruuuuddluruuuuldruuuuddddduuudduuuuuduudduuuduuuulrdlrduduudduddulrudddddludrddddduuudduuduuuudduulruuuddduduldduruddduuuludrudluduruddduddluuuruuddlrdlrdldruulduuudrdddlrlrddudududddududuuuuuudddddudlrduluruulrluruduuudlrdddudduuuuudduddddldruduududuulrddlduruddddddddulruuddduuulurdudduduuudduuuuuduudlruuuduulurduudududddduuuddddudduduuududuuddduddddulrddddduuduuudlddurludurddudlurudududdduddldudurudlruudduuddudlrudlrduuulrddduuddlurududdluruuudddddulrduuuuuuududduduuuudddududlduruddddududlrdddddduduuuduuuudduuuddduuddlrudddddduluduuruduuuudulrlurdludurlruulruuudulrlrlrududdulrudlruddududuududduuududduldruuuuduuddluuudruduuuuuududdlrduudulddrluduruuuddduududddduududuuduuddduduudddududuuuuudddddududdddduudduuduudduuduudduuudulddrddddddududulruddlurduududdududdddduduuudduuddddulrlruddlrdlrduuudduduududluuduuurdduduududddududduuuduuulrdddldurlurduuldrdulurlrlrldududruddddduudduuuuudduddddduuldudduuruuuuduududuudduddduuuduududddduuddlduruddddddddduuuulrluruddudddudddududldrulduruuuddduddududdduduluudruldurudlruddddduddduududddlruddduuudddddlruddddduddulrlrdddduuuddddudduddldddruulurddduuududddduddlddrudulrudldrududlrdduudlrulrlrdduduuudlrdddduluudruduuddududduududdlddudrdddlddruuududlrdddlrduuuuduuuddduudddduudduuulduurudddduuuddddddlrduduulddruduudlrududuuddududuuudduduudddduuuuduuuudduuduuddddudulurlrldruuuuuudddluurdduduuduludruduuddldurdudlrdududuuuduuuuudddlrduduududduuduuddulrddudduddlrdduddulrduududdldurddudlrddduuduudduddduuuuduuulddrduuududududddududduudddddududududdddudduuulddurddduuuudlruddlddrududduududduuddddlurduddddduddlurlddrlruuudlddudrddulrududuuuddduddulruduuudlddruldrulruddudduuuuuuuulddrlrududluuddurdddudulurddddddudduuuldddduruulurduudduuuuddduuduuduuddddlurddddduddddddddduduluruuuududdudlrduluuruuuulrududuuuudduddlrddluurduddlrdldrddduduuuddduuduulrdudduddulurulurlrlrdudddddudduuuudddudududduduududdduuddldrdududluududrudddduuudddddlrduudduudduuudduldrddludrdudduddddduudududduddudlddurlruduuuuuddduddddddduddudlrlruuulurdddlddududrdudduudddududdddddddldrdududdddlruduududddulrddudlurdldrdudulruduuluurudulrduduuluruddduddudlrlrdlrddduduulrududludddrddludrdlrduddulrdddlrdddudddduduudluruuddulrddlurddulddrudduduuudduduuddduuddudlurdlduruddddlddudrudduuuuuuuuddlrudluruuuuduuduudddduuuulrlurlurudddlrududddlurududduuudduddddudddudddudulrduuddduddddlrdlddrdddddddddududduuduuuudddudududuuddluruuddlruuuduudduddduddduduuuddduduuudlddrlrdduduudduudduulruduulruududlurddduuuddududddlduurdudddlrududduudddulurdduddududduduudduddluddurluuuruuuuulruuuuulrudududlurduddddddlddruudddlddrddddduudduudldruuudududdddldrududldrdududddduduuuuduuuddddddlrddddddddudddududddluuurdduudulrdlurdduldrulrlurddlduuuddrduduuuduuduuddddduddddddddulruddudldurddlurduuduuulruuduudduddluuddrudduudldruudududduuudddduuddddddldruuuddlruudlrduuduuuddudddududdduduuddduddududududdddddddddduuuldddudrdddduuddudluudddurdduuuudduuluuudrldudrduuddldduurddulddruldrdlrduudddulrdduddlrlduruuududddlrduddulruluruuduulrudduuuududdduuuudududdddddddddulrdddlrdldurdddddddldrdduududlurlrulddddrddulruddudduduuddduddudlrduldddduruuduuudduuulrdldrduuddudduddddldurdddlruldudruuuduuduulrulruduuuddulrdduddludrlurdlruddddudlruudldrdddddddluudrduduuuddududduuududlruddddudddduuddudududuuuduuududuudulrduuulrlruudlrdududdududduuluurlrduuuuuuuuduudludruudlruuduuudlduuurlddrudddduuddududuuuuuldduurduuddddudddddduddddulurlrludrududddlrdduldurulrdddduddddlruduududduuldrdldruuudddduuddudldruuuuudduluddurdduduldrddduuuuduuddldrduududdudlduddrddulrdudlrlruudddduddududddduudduulurduluddrduuuuudldruldudruduludddrdudlruddduuuduudududuudduduudulruuduuduuuddddudduulruuuuldudrldrddddduddluuurudduluuruduuddddddddddududududdulrdlddrdddduulrudddudduldrduuuuuddduuuduldrdduuududuuddudddlurduuuuuddlddurduuudududduluddurdduuududduldrddddlurdddlrlrdudduuddlurdudduddlurudduddduddddulrddldudrlurduuuddulrldrulurlrdududdddulrulrduduuduuuuudldrlddruudduuuuuulrdulruudlrudlduurddlddrdlrlrulrudddududldrduldrlrddudddddldrlrlddurlrududuulurluurlddudrudduuuududdddduuuuuduulddrdududddlrddduulurlurddlruddulrulurduudulruddluduruudlddduudruddduududdddduudddlrluurlrddddudduudduuuudduduuuulrudlrudduddduddududluddruuuuududdudlrlruudldrddudlrdlrlurduddduuuddudduludrulrluruduulrduuddlrdduddudulrdudlrdddddududdudududuuulurdudududdduddlrdluruududuuuluurulrddduduuduuldrddudduuuuuudulrdduulrduduuuuldrdldurduuduuuudulruulrudddddduudduddldrlrlurdluduruudddlruddlddurlddddurulurdldrluurlrludruudddduududlrdduludrddduulrudddddlurdudduduuuududdldurduuddddddddulddrudddulruuudulduruddudlrudduuddudududlrdudduddddduuudulduuurudduuuuddluduudrdddlurlrdududdududddddddddddduuudduuududdddddlruduldurdduddddudduddudulrddduudlduuuurdududddddlrddduududdududduuddlrduddduulruddddduddduddulrlrduududldruuddlduruldddruuddulddudrduududddudududduddddduuduudlruulrddduduludurduddudddddududduuduudduddduudddudulrduuuuuududduluruuddulrduuudduudududduldddrduuddldurduuddlrddudduddlrddluddrlruddlrduuddduluurudddduulurduudududluurdlrddlrdudduudududuuudddududduuluruduuulrddldrduudududddduuuddudddududlrdudlrudlrdduududldrdudduuddddudlruuduulurdduddduudududddduuuudlurduuudlruuudduudduuuluddurldrlrudddduuddudddduuudduudddddluruuuduududuuddduddlduuurdlurdluuudrdudlurddduuddddlurluurudduudduduuuuduldrduulrldrudduulruddulrlddruddududlduruuuluudrldrdddduuulrddudulrduuddduuuduludrdldurluuurdduuududuuududduddudlrdduuddlurduuuduuudduudududuuudddddduuudddddduuuuulrdudlrulrdddudulruuuudududuuuuulurdduuduuduuldddduruddudduddduddduududuuldddruddudududduuuuduudddlrdlduuddrduluuuddurdudlruuuddududlurdudduuuduuuudduuuudlddrdddduuudududdududdddddddulduuruduuududdduuduuuuluuudruddudddududuuududdduuduulrldrdlrduuuduudduudududuududduuddulurudlurlruddudldddrduuduududuldurddddddududdudduuddududuulurudduuuuduuudduuduldruduuuuuddlrdudddduudududududdddddudlruudlruudududdlrlrdlurlddurlrlrdudduududdudddddduulrlrdlrdduuudduuddluddrdlruluudruduuuududlduuruulrddlrulduurddduduuduuuudddduuulurludruudduuduulrlddrdludurduududddududuududuuuududuuulrdulurduduuudluddudrlurlrddduuuuddudududddldrlrludurdulrdulrudddudulduuuruudddduddududuuuuuuudlududddrudddulrududulrdduuduuuuuuddldudrudddduuuuulrududddudddududlrduduuududuuduuduluruuuduuuududuudduudududdududuulrldudurudududdduuddududludrdlrdldurduudduddddulruuuudulrdduudulurdulddruldrlrdduduudududuuudldrdududduuddudlurdddlruulduurlruuuuduudlruulrudluurddldddruldudddruuuudddduduldurddduulrduuddlddrlududrlurlurddddddduddduuddduulruuduuulrdldrudududldruduudddddlrdudluruuudduuuududuuldruddudlrulruuuudddlruuulrdduddlrdudddluurdududuluruuduldruddlruuuuduudlruudlrddudddddddduuddddddldruudluruluddrududddddlruduuuudulruuddduuuudduuduldruddudduudduddduuduudduddddudlrlududuuuuruuddduuuudddlrddulrdudulrludruudduuuuddddddudddudddlrduuddudddduudddduddluduuuruudududdduuduuuluddrudduuldrlrlddddrudduddddddddduuddlruulrdudldrudludrdddududuudlduudurlrududduuuuudlddrduuuddlrulrluruudulddruuududuuduudddluurudddldrldurududuududduddlddurddulrldruudududuuuuudlrududuuduulruuduuulrddudulruddudulruuuuuudddldrdlrudlrududlruuddduddlrduddduduuududduddduluuduuurdduuulrdulrdduulurdduuddduudduddudddddldrduuuduuddlrduuddudlruduulrlruuulduruudddddludrduuudduddddudddddulruuduulruuududdduduuduuduuudlduddrdlrdlurddduulrlruduldrudddddduldrulrduuudlrddulrudududuluudrdlrulrudlrudddduudlrldudruddlrduuddududldruuuuuuulruuuuudulrlrudduuddudddduudddududduldudrulrddlruudlddududdrudldruuduudddduuudduuuddlududrududdlrddddduuduuddddddlddrudlrddddduddudlrduuldrdduddduulduurduuldudrudddduulrduuudlrlrlruddduduudldurdddduuddduududdddldrudddudududlrudddlruduududulruuuuuuldrddduuduuuuduuuduuddulrdddduuddddduuduulrdduududddluurlruldruduuuuuuddduuuduuuddddlrududuluuudrudduddduuuduuddldruddudduddduuuddduddddludrdldduuduuddrdduududduudududduudddduuuuluurduddduduuuddulrududdddddudlrddddduuduuuuududddlruuuduududdddddldrdudduddududlurddulrddduuulduruuudulduuuruudddddduuuudddduuuuuddudulruduuuudddddlrdududduuduuduuuduududduduudduuulddurududddlddruudduuududuuuldrddduduudduduuuuudududduduuuuuduuluurdduddlrddlrdudlruddduuuuddldruduluudduruldudrdduuudulrdddulrdudlddrlduurddulruldrldurdudduddududdddulruuuudlrddulruuuudlduruuddldrudulruddlruuuddulrdddddddulrdduulrduuduuuduudluruddduduuuuuduuldrldrulrudlrlruuduuudldduuduuruuuuulruddduuuduuuddudddduddddudduuddudlrudduudduluddduudddudrddddduddddudddldduruddddludruuduluuudrdudulruduudulurduduuududdduldrddduulrlrudduldddruduudduduudddulurddlrdddduuuddlurdduudldrdudulruuuudddudduduuudududdlurdddduduuuuduududduuluuuruuddududdlruuudududddulrduuuulrduddddddudududdlrdlrdduudlurduddddlrduddduuddlrdduduudduuldrdddudddduluurdudddduuulrddudddldrduudlrdduddldduuuddruddulruudlrddlrdlrduuduudulrdlddudddrddududddddduuuuuddlrudldruluuududrduududdduuudduddddlrdddduduuduuuldrduddudduddduddduuulrduduuddlrddduudduuudddldduurlddurddduuududlrulrudddddduudldrduuuudduuulruudddduuuuduulruuddudduududdudludddruduuuuuududddudludrlruddudduuuuududldruuuddduudddduuudddlurdldrdlduruuudududduulruuludddruuduudlrlrudddudddulrdudduuddduudddulruuuuduudddudluruuududuuudududlrulurdludddudrdulruldruuuulurldrlrdddduuddldurduuludduurdldrduluduuddurddddududdlrduuuuuuulrldrudludrdlrudududduuuuddduddlruuududdduuuuuuduuuuudduuduldrdddulrduuudduudldruuddlrduududuuuddldurdddduudddluuddurddddldrduuududdudlurdudulruluuruuuduulddrldruudddddddudududuudududdlrluruduudduudddududuudddududduudddduluuduruddudlrddduuuuduudddlruudlruududuuuuuddulrudddudldudrldurudududulruuddudulrduulduuddrudududlrdududuluruuduudluruududddlrdudduuuduudduduuuuuduuduuuddulruduudduuuuuddduuudlrluruduldrduuuuudddudldurduuduuduludurdddudlrddldrlrdduddddldrdldrdldrduuuddduduuldrduulrdudlurdddddudddlurduuuddddlrldurddudldrlrududduududlddrdddduudlrdudududdldruuudduddlruddududdduddududlrlrdddududddduuudduudulrudddduddlrduuluudrduddlddduddrldrldrdduddduuudduddlrdudduuuuddddddududuuduuddduddudduuuudududlruulruuddduddulrdduuuuduuuudduuuudduudduuuuuuluududuruuuuddduududduduuudddudduudulrluudrudddlrdduddddlddddduurulruuduuldruuuldruulurududldrldrdududdudddudlrluruulruuduudududdlrddludrdudulurduddldruduudddldddrlruuuudddldrdlrudddudddlurdudududduudduuduuudlrddduduudlrdddduuuudduuddldrududdddddulrddduduuddduuuuuuddduduuluuruuudududlrudlruuuuuddudduuudddluruulrddduddduduuddudduduuuuddulrdudduuddduuduuulddudruuddddldrduddddduluuuruuuduuddduddduudddduddddddudlrddddddudlrdudludududurduuduulruuddduddlruuudldruulrduudlrddddldurdddduddduuulrdddduduulrdduuuudulddruududlruudududdlduruulrudlddruuddddldrddulrlruddduudldrddlrdluuuddudrdddudlurudduuuudluduudrduduuldudrlrddududdddddddlddudrduuduuudddduddudddduuudduuuuddddulrlrdlududrduuddldrdddududddlurddddlruuuuddlddrddudduudduldurududuuduludrududlrdlduudurulrlrddddlrduddlrddudddduuddlrduuudduudduduudluuduurlrddulrdddddldurdddduulrudduduudududdudlrlruduuuuuuuduuuuudlrulrdlduuruuddulurulurdddlurddduduuuuudddudddudduddududududuuudulruddduuduuddddddudlddrduududddddlduruudddddldrldruluudrduldruduuddudluuruuuulurduduludruuddddudduldrdddlrddddlrduuludruuulruduulrdudududulrdluurlruddddduddudlruduuuudddddududdulruududdduuuuudlruduudduddddduuuduudlrlrdudddudlurdulrdduuuddddduuudlddrddddddlduddudduuddddruddldurddduuddulduruudduudluuruudlrduduuududulduuuddurdulruldrlruududdlrduudddduuudduldudurduuuduududdddddudududduulruuduudddduuddddddddududlruudlrdduddddldurlrludurduuuuduuddlrduddududduuduuuududulrudduuddddduuduuduuududuuludrlrdduduuuuuddddududdudddlrdudlurduuuuuduuuuuddulrluruduuduuuuuldruuuduududuuuuldruuudulrddudududldruddulrulruddddddduudlruddududuududddddlrduuduulruuduldurdulruuuuuduududdulrududdlddrdlrduduududuuduudduuuuldurudulruddudulrddddulrduduududduludrdduuddduuddduddddlrdududdlrduudlruluuruduudduuuuulrddlduuurdddulruduulrddldrlrulrlrdddulrduudlddrlrulrdduuuuuddudduduudduududddlruuuududddldrudddddduddlruuuuduldurlrduddddduduuldrdlrddduuuuduuudddududuluduruuuulurudduuudlurudlruuuududdlruulrudlrddduddduddddduududdluddurduududldrlduduuruduuuddududdddlrduduudlurluuduuurulrdulruudduddduuddddddlruddlruudddlrddduuuuudulurdlddrdudduluddruududldrdduuududuluuruulududdrddddduulrlruddlddudruuuudduuuldruddduulddrdluruddddddlrududddddddududduudlrddldrddudduddddudduddduuduuuduuddduuduuduuduuududuudduduuduududuuddduduuudlrdddduudududududduddludrduddddddluuruuuddddlruduuduuddduuududududuuulruuddddddduduuuldrduulrddudddulruduuduuddlrlduruuddduuududuuddduududuuudldudrduuuuduudddulrdlrudddlurdududuududlurlrddddlruduuuuudddddududduuduulrddduludrududdduuuuuuddduddddduddduulruuddduuuddulrdddudddulduuruuddluudrulurddddlruduuddudlduruuuududuuudlruddudlrluurddduulruuduudldrldruldurdudddudduuuddlduuddrdduulddurldrdudududddduddddddddluruuduuulrdldrulrdduuuudduudddduudduldrdddlrudddduddddlrduddudldrlurdddduuddddddudduulrddluruuuludrudududdluduurduduuudlruulrulrdlddrdlrdduuuddududuuuulrduudlurddduduuduuuddduuuuuduudlruuduuduudddlrdududduuuuuuuuuddddduuududdudduuluruuudududuuududduudddduulruddudududlurludurlrduudduuddddduudududludrlurdduuddddududuldurdududduulrddduduuuudddudduluddrdlruduuuulrddduldrduldudrduudddudddlrddlruuuuudddudduuduududdddddldurlrulddrldrduddlurdlrlruudluuruduuuddulduurlrduddduulruddudduulrlduududrdduudduluruddlurdduuudddduduuuuldrdduduuduuuduudldrlduruudlrduddduudddddudduddduludruduuuuuuuulruuduldrduddduuduuudddududuudldurlddddrdddduuddddulddrdududuuddlrlrdddduuudduulruuuududdddudlrduududldudruudluuruudududuuuulduuruuddduuddduuudddddddulurddlrlrlruldruduuudldruulrdldruuddduudduduuuluruduududddluurdlruuududludruulrdudduududdudddduddddddududddddulruduuudduuduuddulurudddlrudlruddduduuduuddduuuuudulrddduudlrddudududududduddlruuuulrddduuudddduuulrduddduuddlrulruududdudududddlurddudduududduuduududlrdduuudddddddduuudddddlurdulrududduddduddddudulduuduruduuudldurudlrlrududduuduuuddudddluddrulruududlurlruulrdudduluuruddlruddlrduudddududuuuuddddduuddlruduudddlrddduuuddduuddddudddldrdddlrudddduduuuduudududddduulrdddddddduduudddddddddlrduuuuulddurdddduuulrudulruuddduududuuuuddddddldduudrduuuddddldudrudddlrdduduududduuuduuuuudddddddduuduuudduddluuurdddudluurddduududddddddduddudduudduddudlruddlrdudddudduddduulrluudddruduuluudruudduduulrlrudddduuuuduuuuduuuuuuddduddudddddududdddulrulruudlrdduduuudduudddldrddddudlrdddddddlruududdulddrddddududddlrduduuduuuldrudduuddlrdddulruuddduudlrududduuduududdddduudududlduudduruduuuduuduuudlddrdulddrduudduuddluruddulurddudlrlrduluudurdddlrlrdluddrduduuudlrldruududududddudddlrldruuuudddudlruuududdduudduuulurdddluuddduuurdluruddddldruudddlruuudduduulddrdluruluudrudddddddudlurddduuddddddlrulrduuuuldrddduuuuddduuududddudududduduuuuddduuluddudrddlurddlruuuuduuduldduddruduududduulruulruuuddduududddudduuuuuuulrdlrdduuuludddrudddduduududddluruduuuuudddudduulruuuudduudddluudrdduuuuuddddudduuuuldrdlrudddulddddrdduddduddududduudduuddudddduuddudddduuuulrdlrudddddudldddddrdddldurududduuudduddddddudududuudddudddldurududddldrduudlrduudduuldddddrudududlruududldurddduuuuududdduuuduluruddduududlruudddlrlrddududlrudlruuuudduududuuuuuudddduuuudlddddrddduddddddldurudddududdduududuuduuududududuuddluudrdudlrldrdulruddduduuududdududlrdduuddulrduduuddddduuuduuudddddulrlurduuuuuuuldurdudluuruuuduuddulrudldrddddudddudldrlrudlruduuudddluduuddrududluurddduudlrulrdlrulurududulruuddudlrlrdlrududuuuudlrduuuddduudduduuuuuuuuuududdduuudddduuuudddududddddddudduudduddudduldurddddudlddrudludduudruduuudduuduuduuldudrdulruddduududdudduuuuulrdduuldduurlruldruuduudduduuuduuldrduuduluurddddudddudddduuududddduuudduuuuduuddduuduuddlurldrududlrduldrduuduuuddudddlrdudulruuudddduuddudduuudlurddduuuudldrduuuudddduulrudududuuuddduulurudludduurduldrudldrddduuduudduuuuuuuuddduuuldurduuuulddurdduudddddduudddduudlurudddduulruudddulrdduuduuudddlrduddlruddddudlrudddddduldurdddddududuldudurduduuuuuuluduuruddludrddududduuuldrddudulruududdlduuruddduuduuulurddudddduudulddrludurldrudduudduluurdlurdddudluuruuuuududlrududluuruuuddduluddrddlduruldrduuuldddudrdlrduddduuuddddudddlrudulddurdduldrdddddudddlurduuuddulrddduudududlrdududdduudluddrdudddudududdlrdududlurduddudluruuudddlrdludurulrddulrudduuluudurududdudddduuudduduuuuuuduulrddldurudududldddduuuudurddlruduulrulddudurddduldrdduuuulruduudddduuuldrduuuuuddddddddddudulruddduuududdddudulrdduuuuuuuudddldudrdduluruduudduudddldrdduuldduruddduludurduudduududdlruuuudududuulrdldrdulrlrdddudlrduddudduududddddlduuddurduudlurdudduudlrdduuuuuudduuuduudddduudddduulruduuddduduuddduuuuududulrududddduduuuddddluuurdudduuuuddddddluruddududududdduuduulrduuudulruudduldrudduduulddurlurduuududdduuuuuududdlrdudulrdudlrududuudduudduddddddudddudduuduulrdlrduddduddduuuuuudududuududddduduuudlddrddduududududuuududddudlddrudddduuddlrudduuduuudduuduuudduduudlrudddduduudddddlrdudduddudddudludrdudddlrdddddddduuuududduduuudduuuddudulrddududddudduuudulrdudduddddlrdulrduudddduuuldurudduudduuudddduudlrddudddduduldrduuuuuuuuuluduurddududddudddduudduudduuluddddruuududdulddruddddddudududdduduulruuldruddddlrdudlrduuudddddduduuudldrdddddlududdrduddlrdududdddddduddduulurddddudduddlurulruddduldrulruduldddddduddudruddddddddduduldudrdduduuuduluruuududduudldudrududulrlrulrduduuddudddlurdlrddduuudududduuuudluududrdulruuuddlrlruuudddudduddduludddrududddlrduuulurdduuuddddddudduddddlrdduudddlrdlrduduuduudududddldrudduuduududddddlrdulrlrddddudduuduuduuulruuududlrdlurdlrudlrudududdulurddduduudduulruduuduuuduuulrdddlduruuuudlruudlrluuurdddddddudddduuuuuuuuddudduddduddlrlduduruddudduudddduddddduuudduududduddduuddduuudddddddudududuuddddudduudduuudddlddddrlrduduudddldududrddduuududlddrdluudurddddulrudddudduuudddddddlrdldruuuuuddlddrdduudddudlrdudddlurdddudduudduuudddluddudrududdddduuuuduulrdduuduuuulruduldurlrudududlduuudrudldrdduddlrduduludrudududuudduduuuduuudddddldrdududdldrddlurddududduuudddduudduddduulrduldurdlruuldurulurduuddudddddlrudlruuuuudduludrudddddduudududuuddlrudduddduudduuudddulruuuddududluruduuudduddddudddldrdududduddduuddddduuduuddudududdduluudruduuddudddudldrdduldddrulddrdduduldrdudlrduduldrddududdddddddduddduuududuudlrdudduldrulruuuluruuuuudulruuuuduuuulurdddduuudduduuududdduudududdulrduuuldurudulrldrddduddulddudrluruduuddddududddluurdudulurddlddddruddduldruududduuduudulrddlrduuulruuddulruududlrulurdlruulduddrddduuulrduuduududuududdudddddduduuuuuuududddduuduuuddluurldrddudududdududduudduuuuuduuduududuldurdddddluruddduddduddduduudduddduduudduduuldruluuduruuuuuudduuulruudduddudduddulrduuudddlrdddududuluuddrudulddddrddudddldruuddudduulduuuuruddulddudrddduddudlruudddduuddududduduuuuuududdddduuduuduuuuulrdulddrududuudduulurudludrdduuuulrdludruudlurduuduudlrddduldrduuddluudrlurluruduudlruldrudulurududuuududduuuuldruuuududddudulrlurudddddlrdldrududdulddruduuddudulrdluudrududuldddruduudduuddddddddududdduuludududdrdduudduuddduulruduuududduddldddrududduuuuddduuudulrudulrddddlrduuduudduuuduuddulrdlruuddddddlurdduuuuduuuududuluruddudduldruududddudddlurduddudldrduuuduuududuudulurduuuddlrdlurddudlrdulrddduddudlurluruuduududuudduudulrlrdlrddudduddlruddduuddduddduuuulrdduduuudddudddddduudddududddududduudulrdddduudulrduududulddurdlrduudduulduuudududdudrduuuuuuduuuduuududuuddduuuldruduuduuuulduruuduuudddduudluruluruuddduuduluudrudlruudddddudldrudududdlrlruuddluurdddudduuldrududddddlduuuddrdlrdddluruudlddrddddldruuddulrduuluruuuuuududduuudlruddudulddrddudddudduduududdduuuuuduuldrulruuduuuudduuldrdddudludduuuurdddddddlruuuluudddrdlduurddudddudlrddududuuddlurudduddudddudduddddduudduuududlrulddddurduuddulrdduuuddluuurlrddduddduududduududduddddddudddduddddduuuudddduluuddruddudluruuluurudlrduludruuddduddduuuduuudlrudududddulurudddddduuduuddddddudduludrdudduuuldrdduuduuldruudddduuuudddlruulrduddldrudduududddulduuruuduuuduuddudduluurdduuduuduududududduduldrldrddudduduuuudddlrudddduudddddluruuduuuuduuddddddluruddluruduududddddduuduudlrdduduudududddlrdlurldruddduudddudldudduddudrdduddddlrududlurddlurdldudrudldrduuluuurddduuuulddrddddduddlrduudlrdudddduddduuudduuduuddduduuuudlrulruduulrudulrduuduuduudludurdudduudduuddudduduuuuddduddddduluudrduulruuuuuulurlruulddruldduuuuuurduuddududddududuuuududlrulruuuudduddlduuuuuurulurduulrdduduuduuddulruluruulruuulrdluruuddduuddddddudddlrdddddulrduluruddudlrdduududulrddduududddduududdddduduuddudduulrudddudddlruuduuuddddduddduddlrdluuurdudddddduuuduuudddduuuuuudduddddlrddudulrduuuddduuduuddulrdduluuuddurduuuuudulruuuuduuduuduuuuuduududduuuddlrduduuddduuddduudddddududdduuduuulruduldrdddudlrddudlurdddlduurdduddddulurldrududddldrduddddudlruudldrduuuduuuldrlddurudddulddruddddudulddrdddlruudduuulruuddududdduuuduldruuuuluuudrdduuududdduuuluudruuuudduulruuddduuudlrudddluruluuruuduuddulrdudduldrduuuddldudurulrudlurddudduldruuddudddududdulrudulrddduuuludrduddddduuldurluruuulddurdlrudddddduduuudduuddulrddddulruudduuddududdlrluuruluruldrulrlududrddlruuduuudududduddddduddduuduuulrdudlruuldruuuuudlrddduudluuruuuududdduuuuuudddduuudddududduddddddldudrddddudduluudrduuuuuuduuulrduuuuuduudldurddudduduududddlruuddduuududdudududldrlrudldrdlrlrdlrdudduuuludrldrdudludddudrdlrduuduudulduruddduuduulruuuududuuduuddddlurluudruuududduuduulrddldrlrdddduuuuuudlrldudduuruddduuuuudlrdduududlrldrudddduduuuddddudduuudduddduddddduuddudlrddddddduuulrulruududddlurdluuruddddudlruddudulrddlruuuuudlurduddulddudrldrduulruldudrudududduulruduudlrudduuuduuldrdduddduddddududduludduuruddudududulrduuududldddrlrduduludruudududuuuuddduuddlurdddlruuddlrddddddlurddluruduuuluduurududdlurudududududdlruuuudduudlurdduduuulddruulrduduuddduddddudddddlrluruuuduudduduuddduduuddudlrdlurddduulrudluddurduldddrdddududuuuuuudddudduulrduududduuuudddddldruduudduuddduuuuduuududulddrdddddduudlurddlrududldddruududuuuuuluruuddulruuudluuruuluurulruddduludrudduudduuuulrdlurddddldrlrdudluuddurddldrdddulurulrduuuuudududlrddudddulrulddddruuluurldruuudlddruuulruuddduddddduduldrlruuldruuuddulrduuudlruddduddudduuldduruddulduruududldurdddlruddudddduuduuuuuddduulrddddduuduluuddruuuuddlruddlruduuudduuudduddduudduddluudrdududdduddudldruddddlrduududdudududdduuuududulruuuuduuulrdlruddduuddddddlduuduruuddlrddlrddudddlrdddudddulddrlrdduludrdudddddldduruddddduudddddluddrududuududddldduuruuuddduduludruldurddduduuuuudldrdudduuddudlurduuuduuudluudrldurudddduudddddlddruddduduudddddudddudduuduudududuuudulrluududrdddduddddduddududlrduuddudduududuudulrdulrulduuruudddduddudlrddudldurduuuulruuudludrlddrudldduruulruuuuudlruuuddlrddduuddulrdlrdddududdddlruddduddddduuududuududuuududduddduududdlurdudldrddudlrdddduddlruuuduldrduduudlrudlurduluruuuuuuuududduuuudududdduulddurdldrudldruududdudduuduududdudlruuuuddlurudduuuududdldudrdluudrdudduduulrdudlrdddlddruuuuuuduldruuudldddrdlruddudddudududulrdlrdduuddddduududdddddduuuudlrdddldddruuddddldrdduddlurduddduuldddddrlurddudddulddrduduuuudddududddduuduududulduudddrulduddrduduuulrdlrduuuuuduuuduudddulrdlrddlddrduduuddddddduuduuddduudduuudduddluurduduuddddduuduldrulrudlurlduurduuulruulurdududdduddlruulruddulurudduddudddulurldruddduddudduuuduuuuuudldrddulruudluurlurluddrdulruduuuuduuddduuudduduuudlrulduddruddddddduuduuddduddduduuduuuuudlddurdluuduurddudluuuruudduduluuruuuddddddddduduuudduuuuuuuduuduududuuddduddduduuduulrlrududuuuuuluruudddudduuluuruudddulruldruuduudduuuuduudldudrldrlruuuduuddududddduuudlduruuldrddddddlrlrdludurddduududludddruddddlrldrddudududlrulruulruuulrduuuuuldrudluruudulrduuluurdudlddrdddluuudrluruududddddulruulduddruuldurdluudrudduuuuudlurlurlddurduuuddlurlrlurudduuldrddduuddduudddududlrddduudduuuddludurdduudduuuuddduuuduuudddduddudulruuuuduuddlurududlrdduuuuddudduddududduuddduuuuddddududddluudddrduuuddduduuddlrdddduudluurdulruududdduuuuddludurdldrddudddddldurudlrdudldruludrduudddlruuuuuudddduduldrduuldrduddddulrduluurududlruuuddulrdddddddddudduudddddduddududdddddduuduuuudlruulrdddddduldrldrdududulrdlrlurduduudududduuuluuurdduddlrddddddduuuudddddduuddduulrudulruduuuuuuudduuududulurlurduddulruuuuuduuuuddulruddudduddlrdlddrudluruuduuuduuuuduuddlurdlruduuduuddlduuudrulrddddddduddudduuudddudlruudduudduddduudddulrduduudddudduddddddlrlrudlrddduduudldruuudddduduuulduruuldrdlrdduddulurlrddduuuuduudldruuudduddluududrduddudddduuddlurlruuuddududdddduudddddudddddudduudduddlrlddruuulrddduduuudddduldrddudddudduuudududlruuuduudlddrdduudddudlduruuduuuudududuuuduudduulrdduulrduuuluruddudduudddududdudulrdudduudduududuuuududuuuddulrduduuddududulrldruddluurlrudduuuudddlddrduuuuduududduuuuldrdlrudddduuduuudddduuudludududddruuuudduddududddduduududuuudduldudrdduldruuulrddududdududduduudduuuduuudduddduuududduuuduuudlurudlduurdddduuuuduudduudlrudduduuludrudddduudduuududduuduuuuddddddududuudududuudduduuuulrudududduulrdddlrddduuuuuddudduuddlrdduududdulddrudududuudduuudududdddudddlrddddlrdulrudldrlruuldudddrddlrduuldrudddddluudrddddudlruuduluudrdlrdlurudduudddduddldrdduduldudddrdldddrdduduuuudduuddddlddrlrlrlduruuudduuuuuuudlddrududuuldruduudduulrldduruulrduuuddduudddddduuuuulurdldrudddddudlurudduddluurdlrdddududdduududduuuldruudddduudldrdulrudduuldrddduldrdlddrudduuddduuuuuddlrduuuduulrddududuududuudduddlrdudlrddlddurudulrldurdddddduulrdlrldruulruuuduuuuudlrdduuuuuuuuddudldrdudddudduduuudlrduldrduudldrududdddddldrduddlrududduddudududdduddlrdudududdddudddddduduuuddduduuuuudududuuldrudddduuuuuddluuurudddluuuuuuurudduuududduududdduulrudldrudduduuuluurddddduuduuuuuldurduulrddududdduudududdddduddddduuuluuuurluudruududddddddduuuddduuududuuuddlurddududlrluruuuuududdudddddddduuuuuuuddddududuuulrddddduudduuuudduddulurlrdudduudduududuulurduddlrdddduudddddduudddddlrdduuudduulruuduuududdudduuuuuddlrdudulrddlrdduudduududdudluruuddduuudlduuuruuuddududulrdldruuudluduuurlduddddududdddurdddudduuddddddduduudlrduududuulrdludrddduddduuudlruuduuuudlrdudddddulrduuudduududuuuuldruddduduulddrududuuuudddduduuuuudduddduluurduuldrulrdlrdududududdlurlruuduulrdldruuuddlrldrdudduuuduudduuuududduduuuuduududdduulruuuddludrudduulruluurdlrudldrdlrdldrddudduuddduuudlrdddulruduuuuudududddddluuurdddlrlrduuuuuududdulrduuddddduududdlrududddlrdudduduuduudududdlruddlrddddduududdduudduuuddudududduudulrlrdddddduduldruudddddddudlrduddduuuudlrdlrduudldrddduuudduduulrduuuldurddduuuuddddduuduuldurdduddduuddudududddlurudlrdudduldrdududddddddduulrduddduulurddduduudddldurdddddduulrdlrlrduuuuduudduddduuuudluuudurlddrlrdddduddudududddudddlruuuuuuudddudduuudduduudulrddulurududuuuudddlruuududuuddduddudddudddudldrduuuuddlrdulrduuddlruuduuududlrulruudududdduuduududlruduuudduuudulruduulruddudddlrulruuddluudrddududduduuudlruuudddudldrdududdlruldddrulrududulrlrddlruddudduudulrdduddddudluudurddduuddudlrddlrduddldrdddlduruuuuulruudduduuudlrduuudduuldrddududddudduuddduuudduddudduuuuduuddlrdddduludruudududddddudduudduldrduddlurdddudduulruduulrdldruluurluddruuuudududdddudddudduduudduddluurddddduddudluurduududlrduududddudlruddddlrdddduuudduudddduuuulruuudddududdudduduuudduuuudlddulrdddrrdrlrruldulldlllldrldlurdulluuuddulrrduurdrlldllddlldlllldrruudrlllluddlrlldlrddlrurlululrllldulurdddllldlrrulrddrrududduuuurrurrrrdrrduulrrludrdrdrdlrudddlurduuruldllrldrdlrdllllrrrlldrdrldddurdruddrdrrrddrlldulurullrrrldurrrrlrudurdullrrrulrlduuduldrdrulrduddlrruldddrlurludduurldrlrrrulrudruldlluulurdddlrdlulrulrdluudrddruuuurllrdlrurulludulurlrrlrrrlddudruddlrrrulrdrudulrdururdrrllduddurrrdddrdddurddudurrdrduldldururudurlulrllrrrldurlulluruururrldrluddddluudurdludrlulruulrlrlrluudlldulrrlrrurrldldrdrdrurudddudurduulrrudlrldddurdddrruuulddudrlruddulrdldrulrudrlrrrlrlruuuuldlrlruldddrulldruurllrlrurrruruddruuldurluddudlddrrlrrrlduuudrrdrdllrlrddrrrdurruddrrddddlddrruruullluldllluuurlurrrrllllruurudddddrlddlulrrudddllrulrlruurrurdduldlllulrldrlddrulduuurudlrdurrllrudddrurddduldlrdluruurldlddudlrrrududludrdulrlurrdlddldlrllrdlrlurrddrruduuruddrdlddlllllllrdrlrruldudrulrluururrdrddulrrrurrdrdrdldururdudllrlrlllrudlddlldlrduudlldlululrldruddrdduuldlldulduuddulrldrdddlldlrrdlrdldrdldudrrrldulllddurrddluurrllrrurrddlulurllurldduuururuldurrrduulrddlllllruludrllrulrrrduludurdlrldlruruurlluuuudurrdullrrlrllrdldrudduludldrudlullrlldudlurdrdurlllrdulduulurllduurullrludludllurldrrudullrdddrurlldudrdlddrdldlrrdululudlruddrluldrlrdulrrdlruuldddlrdrulduduuurrrdurrdlrddruldduudrluruurdrrruururrddlrlrrdrudrrdrruuddldrdluurudrdldulrluurrurudldrlulururddrurrdullurdrududrlddurulrrrldururuuduuruudlrlrrludlrddrluddlrdrlrullurllrurdudruulrurdlululrurrudulurrluurrrruddurduuldlrlrdrduuuddurllrdluuuuudududulurlludrdlrludldduulllrurudrrrllrdruudlrrrddrdddudddudddurdlurrlrrrudrlrddrdrdrrldrllrlulllrdrllrluluddulllllrdluurudldllrurrururlrrrrluulurrddllrdrdduddrluddrdlldlruudrurudlrrurldllruurrrrlrululddrlulludrdrldllrrrlurllrllulrddlrrrdrldurdurddllllrurlluuududdlrdlrudrludddldllduurrrllluuuldluuullulruuluudrdrrlurrlrrddlrudluduuuulllddruurrulrrdllrudrdurudurulurdulludruudlrududlrluddullldldudldudllldllrullrrululdrlrlrruddlllrlrulrudrrldrlrulrrldlluuldldddudddlrrrrdurrrllrddurdruullduluurdudlrurrrdrdluurluludrlrlldrulldrrrurdrurudurlduruldruuurulrrdddrdrrrrulrlrllurdrddlluddddddudullluuldddlrdrudluulududlruluuldullrruududrrldlddludlrllluruuduullrlluddduuuddrdrdurddldlluldrlurrlrdudurrldudddlruuulurdlrrdrddrluururrlrlurldldlrurrlrrulllurludullulrulrlrlldrrlurlrdlllldurruuulrulrrrllrurluuudulrrrdldududlrrddrrdlrddlrdludlldlldrdldudduddllrlduduurllrlrrruludlddluduururdllurururuddruuulruddudrldurllrldduuullrdllrrddlluullrrrlrdduuudurrrurdlurudurrduddduuruudllddrduddludluuurrlrluddlldldrldllrllrdrurrururddurlrlullluldrludrlrdruddrluldrrdllurrdrluuudddlullrdruddrddulurulldlrlurrruurulrlurrrrulrdrlrlrudllrlululdlurdulrlluuuduudurlululllurluduuldudlluduullddlruldrlduuddudrldrudlrlddlldrdudlrlrlrrduuddrlllllldlduldllrlddludrrudlulddldlddddudrudlrrdurlldururrurduudruurdrudurlrruuluullduruduuluurlluurrldrurluurdluddudrrrddlrrruuulldddluudrrdluddlldudrurlurrdurdlrrudldrulrruddlluddddrurlrlulllluuuulurrllrrrluuuldrldurlduudrruuudlrdrlurudurdurulduuulurldrrlrudduldllldudluuurrdlddlldrllddludrlurrlrllluddduddudrddrlrldlrudddlrlrrdrduuululllrrduudddrdluluulurdrdrdddrludddrurdururluulrlldluurdrlldrldrdrululrdlldrudluddldluddrruldluldururdrlrdrulduuuudrluuduulrudlrludrddlrldludlldrlrurrllddldudrlluuullrluddrurdddrrlururlrluuuururudrdudruudllrrrlrdlludurlldrdluullllludrurruddrurrrrdrrllrldullluurludlrdullulrdlrululdduudrrrldddruruddludruurrldlrrdururuludddrrrllrudddulldlldudddddlduurrluuddrurruldlllrllurllduddldlurddrllurduulududrlurldllulurlduuuddludrdrurrdrrlrlrlluuurdurrdldrdlrllddllrdlrulllurrrluurddrrrururudldrulluluudurrurlrlurllrdrdllldddrrlrrruldlrluldldullullrurlddurdrududddrduuududrrddldlurddrruudulrurdrduudullrrlurudurdulddurlldudrluudlrlrduldruurludlrlrlduurddluurrrrrrudrddlllddllrllrldudlulruuuulruldudrdluduurdluudrudrruuullruuudrudrurdlldurlrrldruurldurrdrrlruuuulddlrurrlruduuuurddrlurllrurulurrlulrldldurulddurdluuuddrdludduurudrrdldlddudrurlrrrurllulrlururrdlldrlrururruurdlllludurddrrrdururrlrluddlduldululruuddllddrurdddrrrddllrddudlddruuuuullllddururudrludulrrurlllulrrlduuurllduduurldrrrlurrdrrrrluduuulldrlrldlrrdrurrddlrruudrlrluululldrrlddldrllldrdrdlurdurllrldddrlduduldurlrudlurulduudullrldrlrrllrduduluuuurldddlluurrulududldlulldulldddlrrudrlururduldlulruuururlrduruldlduruduluddluulluudrudldrududduuddddrdrulldlululrdulrlldrddddldllrludrllluuurddrddlrurldruddduuldlrdldulurudlrldrudrrurduulruuudrrlulddrlrrdulllrllddldrdluddrrluudlrldlruulllurlrdululdurlurrrddllrdlllulduddrdrruurlrurrudrdudullddllrdlurllrddlrdlllruuulldlduulluludrdrrrrrllrllddrludrlrldlldrludrrrddrdddlrdlddrdudrururdurrullllrdudllurrluulrrrdulrdlrrrlrrlrlldurldduduuuullrlrrulduurrdlrlddurrduddrldrlurllluldrddrduudlrrulurldldudrddrudurrurluudrrdrllrrluduuduuuddrdlruuududrudlllurudrrduurldurldduddrllrldddulrrllldrrlulurrrrldrduuurrldddlruludulluludrdrdddllududldllrrrrludrllurrdurrdrururururrldlluduluruldrruuldlruluduldllduluddrdudddlurllrurlrdddduurlldlururrlruludludulrrlruddlrdldduurlrdlulluduuruudddldlurlrllruruddrlullruddrululldurrddlrludrlrudlrdddullldrrdldrulldruuluuruurdlurudrdlllrlllrdurullrrrudrlrdldldrdddurlrdurrrlrdlduuuuudlddduduluuurrdlrldurdluururrlrrduruuudlrdldllrlddlrruruddrlurudurruurlurdru
50000 2
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
.X
XX
X.
X.
XX
XX
.X
.X
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
X.
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
.X
.X
XX
X.
X.
X.
XX
XX
.X
.X
XX
XX
XX
.X
.X
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
.X
.X
.X
XX
.X
XX
.X
.X
.X
XX
.X
XX
XX
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
.X
XX
XX
.X
.X
.X
.X
.X
.X
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
X.
XX
X.
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
X.
XX
.X
.X
.X
.X
XX
.X
.X
.X
.X
.X
XX
X.
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
.X
.X
.X
XX
XX
.X
.X
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
.X
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
.X
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
.X
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
X.
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
.X
XX
.X
XX
.X
.X
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
.X
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
.X
.X
XX
X.
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
.X
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
.X
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
X.
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
X.
X.
XX
.X
.X
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
X.
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
.X
XX
XX
XX
.X
.X
.X
XX
.X
XX
XX
.X
.X
.X
.X
.X
.X
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
X.
X.
XX
.X
.X
.X
.X
.X
.X
.X
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
XX
XX
XX
.X
.X
.X
XX
.X
XX
XX
XX
XX
XX
.X
.X
XX
.X
.X
.X
.X
.X
.X
XX
XX
.X
XX
XX
XX
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
XX
.X
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
.X
.X
XX
.X
.X
.X
XX
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
.X
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
X.
XX
.X
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
.X
.X
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
.X
.X
XX
XX
.X
.X
XX
XX
XX
.X
.X
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
.X
XX
XX
.X
.X
.X
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
.X
.X
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
.X
.X
XX
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
.X
.X
.X
XX
X.
X.
X.
X.
XX
.X
.X
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
.X
.X
XX
.X
XX
.X
.X
.X
XX
XX
.X
.X
XX
.X
.X
XX
.X
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
.X
XX
XX
.X
.X
.X
XX
XX
XX
.X
XX
.X
.X
.X
.X
.X
XX
XX
.X
.X
XX
XX
XX
X.
X.
X.
XX
XX
.X
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
.X
XX
X.
X.
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
XX
XX
XX
XX
XX
.X
.X
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
.X
.X
XX
.X
.X
.X
XX
XX
XX
XX
.X
.X
.X
.X
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
.X
.X
.X
.X
XX
XX
.X
.X
.X
.X
XX
XX
XX
.X
.X
.X
XX
XX
XX
.X
.X
.X
.X
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
.X
XX
XX
XX
.X
.X
XX
XX
.X
.X
.X
.X
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
