([([])([()([[][]][[]]())[[]]]()[()()([]()[][[]]())])[[(()[[[][]]])[[[((([((()))[()()]([[]][][()])]))()[])][]]]()][()]]([][[][]][])()()()[]([[]][[][[[][[[]]((([[[]()[]]][]))[])]][(()[[[]()]()[]()][]([][]))]]])[](())()()(())[[[()][()]]([[[([(())])([](([[]()])[]((())([])([()()]))[[][]][[()([][]())[]]])[[[()]()()()][]][[([()[]()](()([[[]][][][[[[([])][][[[](()[]())][]()][][()[[]()[[([()[()[]]()[]])][]]]]()]]]])(()))[((([[[[]]]][](()(()([]))[]()[][]))[()[][]()])([[()[([[()]][[]])[](([][][[][]]))[([][[](([()])(()))])[(())()[[()]][((([][[]])(())))[]][()[]]][]][]][[]()]()[][(())()]()[]]][]()([]))[]([])[][])[]]())]])[]]()[]()[][[][()]()][[]()()]]]())][[[][]]]([][()])(()[][]([]([])[()])()[[[([])]]]([])[]()[()][][]([([]())])[](([][]())[])())[]([(())(())]())()()[[()([][[()]]())[[]]]]()()[()]()[][]()[[[[()]()()]()]][((()()))[[[()[[[]]()]()[]]]][()()]][()]()[()[[][]]]()[()[[]]()(((([[[]]]))))][][[]](())(([()]))()()([()]()()[])()[([[]])][([()[]])]((()(()(())[]([][[][[]]][])([][][]))()))[()(([[[]]]([[][[]][[]][[(())()([[([[]]([[]]())[])]](([[]])))[]](())[]]])(([([][()()])[]()[]][[][()[][]][]][]()[](([()]))()[[[][([][()[][([[]([[][()]([()[]])][])][()([][[][[[(()[[()()]()])[]]]]([([][][()[(()([([(())(()[][][[[][][[[]][](()[])()]]()[]])][[(())[][[[][[]([()])]([([([])(())[][(())]]())[[][[]](())]])[((()))]()()[]]([][]())([][(([[]]([]))[()(([](([][])[])[]()()))()])[]])](())]][([][]([][][]))[]])()][]([])([]()[[[]]][])))]][([]([])[[]])])(((())))()()[]()]()()())])[[([[][()]])([()([([([][](((())([])[()[([])((([])(([(()[[()()[[[](())([][([][])][]()[(([])(()[][]))[]]())[[[][]][[[[()[[(())([][][][]([[]][]())())]][](([]))][[()[([][(()[]([[][()()[][]]()]))]([](((([][]())()([][]([]()(([()]())))([])[[]]()())))()(())[[[][]]()])[(([([()[[([(()[((([]))[([[][()([][])]])]()()[])])(([(([()([([[[()][[][]]][][()[[[]]()[[][[[()((())([]()))][]]()[[]]][(([[]][][[]])((()([[()]()()])[[]][[][[([])](()[][])()[[(()()()())[]]][]](([])[[()]][])[()](())][[[]]]))()[])[[]][[[[]()([])]][]]]([])]][()]]])][])()]))()[]]))])]()([(([(([])[()(())])(([[()[]]]))][([()()[[]]()([[((((([][])[[[()[][][((()[]()[][()]()(())))()][[()()[([[]])[([[[][]]([][][]()())])[[([[]([]()()()[][])[][[[]()]]]()[()][()])[()]]()[]]][[]]][]]]]]]()[]))))[[([]()[])]]([[[]][]])[()([(()[()[]([](()[[]][]())([][])([[][][()]][[](()([][])[])][])[()]()(((([[[]]][]())[[([])]()]))))][])])[][([]([[]])[])][[]]]]][[]])]()()())([[[([()][[]])](())][()][]]([((([]()[[[[]()[[[]()()[]](())]([(()())[]][[][[()[([])[([][([])(([()]()()[][][])(()()))])][]((())()[([][[()(([()((()([()])))[(()[]([])())]]()[]()[()[[[([[]])(())]]][[()[()[]]][][[([([]()[([[(()()())[[](()()()[[((())()())][][[()]]]())[[[]]([]())]][]][][][()]()][])[][([()[[[([[(([][[((((([])))[[[()]]()[][(())[]][()[()(())]()][()]]))]]))[][][(([[[((([[][](([]([][]([][]))[[([])]])())[([])]([])]))(()[()[]()[(()([()[[]()[]()][]][])())[()()()][](((())[]))()[((()))]()[]([])][()]][[([(()()([][(())][])[[]])][[]][[]])]])[][(([()[][[]]()((()))[[]]])[])([(([()[][]]([(([[()[(()[[[()[[]][(())]][][]()()[[][]][[[(()[]()[[()]])]]][]][]]([(([]())[()])((()[](())(())([][])[[[]]([()])([][][[[[]][[()([][][]([[]])[][][[()](([[([[([])[()](())][[]]]([]))[[]()]][]([[]()()()]([])[]())(()[](()[][([([])([()[[]]][([])[]()[(([[[]][([])[[[]()[]()][[[][[]]]]]]]))[](())](([])[(()(()))][]([()(())]))[]](()))[]][](()[[[]()]](()(())())()([[]][]((()))[][]([()])()))[[][[()[][]()]][][[]]()(()[(())])((()))]([[](())()])()[[[[()]([])()[][]((()[[[]]()]((([][]))[]))[])]()[]]]()())(([])[])]([[(((())))((()()[()]((())[])[()[(()())()[]][]]))[([])][()]][[[[((()))[]][((([()])[])()[]()[((()))])]]]]])[]))][(((([][[([])]([([([[][()()]((([])()(())))]())[((()())[((([()][][[()]()()][()[[[]()]]]([](()()())))))[([])()]()()([]()()[([])]([[][]]([])))[]()]([][]()())())()]])])]()(([]))[[()()[]](())][()([()()])([])()[][]]()[]()([[()](()((([()][][])()))([]([])))(())[[]]]([([])[]()()]())))))[])[][[[[]]]]]))]())[]][]()]]])[]][][[][([[([])([][])[[](((())(([()([[][]])[[[()]]][]]))[])[])]]])[()]([])]]()[]))[]])(()()[]([])[])()[[([[]])]]([([[][([()([])()()][])[]]])(())([([][])[]]())])[()((()))[]([]([()][(()[[]])][][][][[((([])[]()([[()]([]()())[]])))([])()(([])([])([])()[([[(([])[(()([][[[]()][[][]]])()[()([()]([()]))([][]())()][[[][][[(([]))([]([()[(())()[]]](((()))[]([][[([])]])[[]()])[([[][[]][[]]])[]][][]()(()())(()([([](())([]()))[][]][([[]]())([][[]][()])([([])()[[][([()])][[]]]]())]())[][[[][[[]()()]()[()]][()[()]]([][[]]([][]))]()])))(())]]([()()][[[]]][])]][[]()([])([[()[[]]]])])()][][]())[()][[[][]][]()[]()][[([()])()]][[](())][[]]][](()(([(([[]]))]((()))(()(([])[][]))([()]())()[[[()]()([])]]))(())[(([])([[[()(((())))]]][])[])]([]))(([][]()))[()[[[][(())]][][(([][]())([](([])))()([[][()[][(())][()()][[()]()()](())]((()[()[]]([[()]()()])))()(())(())[(()[])]()]))()()[([(()()[(())])()]()())()]]][][([(([[(([]((())[[]()]((([()])[])()[])[])[[]]))[()]([[[][]()()]][]())]])[][([(([][])()())[()]])([(([][()[[[[([]())]]][][(([()[[[()()][(([([][(())])]))()([])()([])[[]()]]][]][[[]()]()([])[][()]]])())([[[]]((([]))()())])()(()[])][()([])[](()[])[(([()([([])])()](()))[[([([])])][([]()([]()[[]][][][]([])[]([(((()()[])[()]))()[]](([()][])()[[[]]])[()[]])[])[][[[()[]()[()[]()][(([[][]](([()])))())]]][]])]]([((()[[][()([()])]]))[()][][]])((([](())([])[][]([](())))[])[](())[[]])()())[](((([([])[][]()])(([]))))[][])()]][(())]()]][][]))])])])]][[([])[]][]]])])[]]]()(())())()([][][]()))])]([[][][([]([])([[()()]][[]]))]((()()())[()[[][][][]]])][()[[(((())[[]]()(())[][](([()([[]])[()(()[])[]()([][[[()[][()][]([([()[]])][][])]([][])][][([[[()()]]])]][[]])]](([]([])))[])[]()()[][[([[()()[][[()]([()[[[[()]()[]](())][((()([[]()[]](()[]))[()]))][]][([[]](()()(((((()))(())))))([]))([](()()))]])([])[[[[([])()]]()]()([])]]]][])]])[])[])()()[()][()][()[([[]][[[][]([]()(())(())()[])]]())[]][][()]]()]]()])]]))][((([][()(([[[(()[][[][][[](()([()]([]))([(([]()[()[[]()[][(([[]])[()](([][[[](([[][][(())]()])[])[(()[])][]][[]]])))]]((()[[[]]])[]([[()][[()]()]]))([[]]((())))])[])[()[][[]()[[[]][[[(()([]))](()()[])()(())[]]][()(()[]()([])())]]]()][]][()([[[]]])()][])())]]([()]))[]](([]()))]([](([]([]))))()[][()[][]](())[[][]([[([([])]())][[(([()[[()[[][][][[][[]()]](()[[][]()])[[][[[]](()([([[]]()[([([()(())[]][[]][])[(())[]]()][[[]]])()])]()())[((()[[[([]())]]][[][]][][]))()[]([(([()]))((([][])(()([])[[]])()[[[][]][[]][][()]](([][((([]([](()()[[()()[]([])()[[][(((()(([]([[()]][]))))))][[[[(([]))]]]((()[()[[]]][][[[]]]))](([]())())][](([[([[[[]]]][][()])([])((()[()])[[]])([])]])())][[([])([()])[[]]][]]])[]()()[][]([])[][[([])][]][(()())][()])(([[()([])][]][([[]])][][[[[]]]](((([][](()[[]]()[[]])()()))()([][[[]()]([])()[]()][([([(())])]([([[[[()((()())())]]]()])]))[(([][()])()(([])))[[(([[][][[(([()[]])[[]()[]()]())()]]]([()])(())))]]((()))[]([])]([[]]([])([([([])[]]([])[()[]][][[()()]](([])[](([])())[[([[[()]]]()()[()[[][]]([][])[]]()())()()]]))()()()[]()[([])()[][[][]]()[[[][]][][[]()[(()([]))]()]]]()]))[[()[]]]]())[][])[])[[]])[](()()([])[([][])()()])[[([][([]()[[][[[()[]](())([])[][((()[()[][()([][([])[]][()((()()))()([])[[]]]()())](())()])[])][]]]([])])()[()]])]]))))]))[][[([](([[]]()(())[[((())())]][[]()(())[][([]())[[[]]([[]])(([][[([])]][][()][()[()([([[]([])][])])][]()([()])][][])[])]]])))]]))[()[]](()([[]][()][])([([][([][][])])]))])]())][[()]]]]()]]()()])()[()()()[][]])([][][[[]][](((())[]())[])()][[()]](())()[])((([])(()))())()[[]]][]([](()[()[[(([]()))]](())]))]][[](()[(()[[]()])()]())[[()[[([](())())]]]((([[([[]])]([[]()][()[()]])])))[]][()(([[[][][][()]([(()([()])[])])]]))][]][][[()()()()[[([[()]([[]])]()()[()])[[](()[][]())[[[]]]][]][]]][]])]((())([]([])()([])()))]))[()]])))[[[()][]](((()[[]]()()()[]))[(())]([]))]][[()[[(([][[(()(([][()])[()()]))]][])[](())([[][[[[]][]]]()][([])(()())((([](()))))(()())[[]([()][][()((())[[[[[()()]]][]()((()())[([([][[()]()[(()([[()][]()[][][[]][]][]()[()])([]())())[]][()(()[[][][[[[[](()[[]([][[]])][][][])()][]]][]()]()[()([[]])[[(())()]]]][][()[[]][[]]](()[()[()[[][([])][[((())[[][][][][([[[][[][]]()]([(()[(([[]]))(([([])[()]])[]([(()[[][]]())(())([(()[[[[([])([]())[]]]]()]((([]())))[])([])][])][][()()(()())([()[[[]][[]()[][]][[]]((()))()][()][]()](()[([]([](()()[([])])[()[]]))[]])[])][]))[[[([]())]()]]])([[[][[](()[])[[()[]([()]([()]))]]()]][()[()]]][][()()]((([([][][])])))(((())())[[]]))])()[()[]]])()()[([[]]())][]]]())]][[[(()[](()[()[([()[]((()())[])])]][()]))()([()][][([((()[[][()[]]][]([[](([[][]]([()](([[[[][()]()[(()([][[()([]()[][][(([[(())[][]][[]]](([]())[[][][[]][]][][][])([[]]))[()()])])]()][[[][]([][(())]()(()([()[([[[[]][()]]])]]))(([([][][[][]()[[](([]))[()((())[([])()[]([])])[[]]]]])()])))()][[][][[]([()()]([][][()]))][][([([])[]([[][(())][]()()])][])([[()()([[()](())](()))(())[([(())])()(((()([]))))[()()([(([[[]]()]))]([]([][(([()[]([[[[]]]()[([[[](()())]])](()[()])][])])[])()[[]()()()]])))]]]])](([]))]]()))()[]]]((((([]()[[[[][()[]][][]]]]))))((()(()[][()[]])[])))]]([]([][][]))[][(())]))))([][([[([()([][]()[])[]])](())([[()]([[]]())([(([()[][]]))()])][])()[][]])][[]][])([](([])()())())[]())[(([]))[]]](()[]))))[]][[(()[()][][[[()[][[([])[()[][]][][]()()[]]]]]])()]][])]())[([[([])((())[][]())[]()()]()[]])]][()([])[(((()([(()(()))][(([[][[()]()[(()()())]]]()[]))()()]([]))()[[]([()[((()[()])[()[()]]())[()()[[]([[()[()[]]]][])][()]()]]()()[(([]))]][])(()([])()([[]]([]))()())([[]]((([()[]]))))](([]()))[[()]()[]]))[()])[[[][]()]]]][]()((()))[][[([[][[()(([]))]]][])()][[]](([]())([][]))[][()]]]()][][](())(([]))[]][]([]()(()[[][()(())(())]])[()])[[]][[]]]()[]](([])[[[]]]()[])[([])[[()]([])([[]][][](()[]([[(([[[[(())()[][()]([])[[[][]][]]]]][]][[](()[][]((()[]()(()([][][()[()]()[][]])))))]([][])))][([([])])((([](())([])[()])[[]])[])]])[[([]()[()][]())[]([[[][]]()[]()()([])()[()[()[[]]]]([])])[](())[]]])(()))](([[[]][]([])]()[()[]]([]))([][()]()[])[[([([](()[[(())][(((((()([])[])()())[((([[()()[]]([()]([](())()))][])))]))[])]][]())[])](()())[]())()]][])()]([])[()(())])()()())]])]([])(())[([])]()()()[()])][[]((((()()((()(((()([])(([[()]()[]]))((()(()[]))))))()[[][]()]([][]))[])))()))([][[]()](([][](()[][()()()[][]((()))]([][]))[[[]]([([][])]()([[()][][([]([()[][]](()))[][((())(([[][][](()[]())]([]())[[]])[()[]])(([][[([(())[]][])[([][[]]([]([]))[()])][[]()]]])()[]))(([]))](()))]])[])][])()[()]([]()))())])[]][]([([[]][[[([])(([])(([]([()((([])([])[[]]))](())[]([(()[]()()[](([()()])[](([]()))[[[[][()[]([][]([])()[[(())(()[](((()()))[[[]()[(()[][][]([[]()()]([[]()[][]]([[]][])()[()(())]())))]([])]])[])]]()[([[(()()[()][[][][](()[])][()]()())]])]())]]]()][])(([][[()([][[[]]()](()[])(((()))[](())()([([])])))[((([])))]([([([])](())[()])])][[()]]]))[[][]][]())(([()]))([])][[()((()([[([[([[]])]()()][])]])[]))[][(())][()][([])]]])([][[]])[](([][[[]()[[[()([])()[[]][[(())()]]]()[][[][()]](()([][]))]()]]]())[]))([([][([]()())[][[([])[([([]()())]())()]()()(([()]([[((([[()(([]))([])([[[[[][[([[][]][[]])()[()]][(())()]]]]([[[[]](())]]((([]()(()[([]()()[](()))]()[])))[]))][][[]]([([(()[])]([][()])[[()]])][])[[()[]][][]((()[()(([[[[[]]()]][]()[[]]])(())()[])[()][]()])())()[()([()])]](((())))[[(([[](())])[[[][([])()]()[][()]]()]())]((())([][[]])(([]))(()[][]))][]][][()])(())]])))([[()]()([])[]])()()()]](([[([])[()()()()]((()[][[]][((()[]))][()]()([][[]()]([()]))))(())]]((()[()][]())([()()[]([[[()()()[()][][([])[[]][]][][]](([]([]()))([([])[[]]([][([][])][])][([()[()][[[]][]](()[])([()][[((()(()([])()))([[[[]]]]))][[()]][[[[[]]][][([])]]()]][()][[]](((([(()())][]((())))))()))])][])[[]()](())()[()]())][()[][][]](())[()]][(([][]()()))()[]((([[([[]([(([[(()([[[([(([[((([()][[()]])([[][()()]]()))[][(()[])])]]([])))(()())(())][][[]()()])()][]][([([([]()())(([([[][()()(((()[][[(())](()[])][]())))]])()][[][]()])[[(()[()()])]])][()[([([])][[[][()(()()[])]]])[(([]()))[]]]])][()[]()[]])()()]]))]((([][][[]])([[]])[[]])[([()])])[[][[][]((()))][]]])([]))][[]][[[[](()(()))[]][]()[[][]]]])])(()())][][([(()[](())())]())[()]][]][([]((())([][]()))()(([])[])[])[]][[()][[[[()()][](()())()]()]][[]()][((((()[()](()[]()[([])]([])))[])[[()]([]()((([[]]()())))[])]))]])()())[((()()))()([()([[](()[([])()[[[([[()]]())()]]]](((((([][[()[[[][]]()][]([])(())][[]]()[]]([()[()[()][][([]())]]])()))))))(()))])()[()[](([][()(([()])[[][(()[([])]())]])[[()(([]([(()(())[])]))[(()[][(())])()]([([(()[])][])][]))]][]]))]]())[]][])[]]([[][[]]]([()((()))([[[]]][])[]]()[[]]([][[[]]])([]([][([()])][[]((())([((()[()[]][](()[])))])[])()([])[[]()[[]]]]())[])))[]()[])]))))))([](()))()[]())[]([])]]()(([([])])(([][][[((([])))][[]]])[]))])[[]([])[[]()]]])(([([][(((()[[()][[]][[((()()[[[]()[][[]([[[[]()]](([](([]))())[[[()()][[]][]([][[()]][][[]()][][][[][]]())(())][[][]]])])([])()((()([()])()(([[[][]()][()((())()[(())[(()[][][[()]][[]([[]][]([]()()))[]([()])]([]))[][]]()])]([]())()((([(()[([]())([[]])[][]((())(()([][])[]))[][[()()()]]([])][]()())()()])))][][(([((()([()]))(()([[()][]]()[])[()[]([[]][([])([()((([()])[(()(()()[()[][()()][[()[]]]()]))[[[(()(([]))[(()[()]((()))(()()(([][()][[]([][])(([]))([()()][][][](([])))()(([[()](())]))](()[]((([()]((()(()[]()[]))))[]()(()[()][][](())[]()()[([])]))[])()[[]]))))()[[][](()[[](())[[[()[][][][[]]]]][]]([]()[]([]()([[[]]]))[])())[[]][[[[()]]][]]])][[]](([([()][()])[]][]()[[][()[[()]]()([()][]((())[[[]](([[][([])[]]]())([[[][][][()[([[][][]()[[(()[[()[][([](([])[]))()[]]()]])[[]][()]]([][[()][]])(()[][()]()(()))(()()[((([[([[((([][(([[()[[]][]]][][[]]))])))][][]])][[[[]]][[]][[([()])[]]([()[((()([([[()[]](((()())))])][]())())(()[()[(([]))()]()])[[]]((()()[[]](([]()[][[[()][([([()([])])[([])[]]()[][[][][]()]](()[][(())()[]][]))()([[]()()[]][()[[](()([()])[][][[]()()]())][(([])())]])]]])(()))[][](([]))[(())]))([][([])](()[[[(()[[]])()]](()())][[(([]))([[([[()[][[]][[]]][]])()[]()]((()()))]((())()))()][[([[()]][(()()(([][[]][[()([[]]()((()[])[][]([[]()])[]))]][([])]([()]())[(())]))([()()]()(())))])]][]()()(([[[]]][[[[]([[]()])][]]]())(([])[]))[()]()]())))]])][]]])))[[]]]([[([([[]()][]([]))[[](())([[[]]([[([])[]([])[[[]([[][]])]]]()()])])[[[]([])(()[(()[])])[[(()()())[()]]]]([]())(([])[()])]]][()[[]]()])]][()]))[]]][][][[]][[[[]()[[([[]])([][])[][][]()][()[[]]]]()]]](()[]([()])([()])())()(()()(([[(([()[]()]()[]))](([])([])([()[][][][]()][([][]((()))[[][]][][][[([[]([]()[[]()([([()]())]([[[[]][]]()[][[((()[])[([[]])[[[][()][(((())))]][](())[[(([()]))]()()([([])([([])])])()]([]([([()][()])]))]](()))(())([[[]]])]([])][][]]))([()[[()(()[][])[()]][][[]][][()()]]()()][]())])[([])[()]]])()[[]]]][])]))[([])][[][()[[()][]][]][](((((())[])[]()[])([][](())[]())[]()[()()]))[]]]())))())][]][()][([[[][()][][]()]])(()[])]][[([][[()]])]([[]])]()])()[()])]))][[]]()])))]](()()[([][()()[]][]([()]))][([][()]()([]))])()]]))])()[(())[(())()()[]][()][()[]]()]()][()()()([()[][[](())[()]()([])][][]][][([])][][]())()][])[]()[]]))(()([[]([])[((()[[]])())]()(([(((()[()]())[((((([][()])))([][(()()()[]([()]()[][[]][[()[()()](([[[]]][]()[(()[[]][]())][][][()[([]([]()([[]])[[]]()[])())[]]]()[]))(([[][]][])([]()))]]((()))()()[](()()()[[[[]](())]])[][])()[([([][([])]()[]()[[((()()[()()[]])(())[([([[[][()][[]](())[[((([[((()([]))([[([()()])[]]])())]][()[]](([[]([][][[[](([(())]())())]])[]()])[])[][])))]([(()()())]([([])]([[[[]]([]())]()([])][][])))(())][]()]()][])[](([()]))[[]][[([[]][])]][(([[[][()[]]][(()[])()()([[]])][](())[][[[([[[[][]([()[[]]()][[]])[]]]])][[]]]([])[]]][[[[[()[][]][]]()]][[]]()(()[[[]]([]()())])](())[([((())[][[]([])([](([(()())((([()](()[[]])()()()[[]]))[][[[()][[[[]([]([]([([](([])([[()][]()]([])([[](()[])][][][(())[][]([])(([[[][]()][]()]([()([([[([])[[[]][]]]][[[]]()()])()])(([][()[]]()))[[]]][[()[([]())()()]]])))]([[]([[[[[[]]]()[][()(())[(()())[()([[[()]]])]]][()][]][()[]](([]()[]))([])]])()])[[((((([])))[()])()[[[]()[(())[[]]]]][[][][]()])()]]()[[[]]]()[]))[]))[([([])[((()[(([]()))[()()[[]]([([](([][[]]([[()()([()[[[]]][([](())[[]])[]]()])][](([])[])[]()(([[[([()][])()[(()())[][]][]()(((([][]))))[](([][][]([]()))()([[()[[]()]()][()[]]][])[()])]][[[]][][]()(([]))()()]]))]))))])[[]][][]()]()([()][])]))]()][[[]()()]]()(())([()[]()][]([[]])()()[[((([])(()(([])[[[]][]])[(())[][[[()]]]])((()[](()([[][()[(()()()()[((()[[]()(([]()[[([[[[]][]()[]()][()()]][][[]()([])()])]])[])[()()]()[[[[[()()([])]][]]()[]]([])][()](((())[[]])([]))(((([]([(())]))[])()[()]([[]][[[[][][]]()[][()]]]()[]))[[[][]][]][((([()[][]])[[]]))()()[()()[[]]()][]](()()([()[]]))(([])[])[][])])[])[]]())[(())]]][((([[()]][]())(()[[(())[[]][()][[([[][()(())[][()]]])()[[(()[][])]()([][([])])()]]][()([[[][][]]()()])]()[]]()()[]])())[]([(([()])()[[()]()])[[([])[]]]]([][()]))[[()[()]]])([()()()][(())()]([[(()[[[[]]([[]]([][]()()([](()())([])[[]()([()[]][[([[]][([()])])()][()[]]][]())][()[[]([((([(([]))])()()((([(())][])))))(())])()(([(()[([()(([]))(())()])])([[]][][([])[]])]([])(()[]()))[][][[]])[(()[]((()()[])[][(())(([[][]]))[[][(())](((([]))))[[[[]]]([][()()])(())][]]]))(())][][][[]]]])))()][[([])[[][]]()]]])]]))][([()])][[(([[[(([][[][]]()))(())]]()([([])()])][])[()[][]]([[(()[([[]()([][(())]()[])((()(())()([[]]((())([()[[]][]]())[]())([])))())])()])(([]))]][])[()()[()[([])[]()][()]][]](()[]))[][()[]]]]]()())())[]))[]))()([()[]])]()[]([()](()))][()[[[[]][]([])]]])[][[]]()())]()[([[()[()([()]())]]])]]([()])[[]])()[]))[()[]]()[[(()[])][]([[]()((([[]])()))][])()([]())]([])]][([][()])(()([]()[[()]]([()]())[()()]))]]]][]()([]()))[()[[()[[]]]]]][][]()()([[([[[([(()())[[]]][]([]()()[]()(())))()]][()][[[([])[()([]())([])][][[(()())]]][[[()][()]][]()[[[]]()]()([][][[()[][]][][][()][]])][]()()][[[][]]][][[[][([()])]([])]]([])]])]])()))(([](()(((((([([]((()([[](((()([[([](()[])[()[]][[]()[]][[[]]])]])[()[()()][(())]()([]()[[]])])[]))(((([]())())([][][][])()))()[[[()]()[][(([([[]])])[()[[]([()])()]()[]][](([][[]]))[])]]([][([])])]()](((()[]))[])([])(()([]()()()[[][]])[([()[][]]())[]][]))()(())[()()[()[][][]()][()[[](((())))]]()])()))(([(())])())]([[([]()(()([()(()((()[()[][[()][()]]((([()[]((()([()(())][]))()[()((()))((([(()[[]])][]()))()[[]])])])()[]((()))[](((([]))([])))[()([]()[])([])])[][]()((([[()[][]]]()()(((())[()])))))([]))])[])[[()[](([[]])[()])]]()[])])()[]))]]())([()])[])(([]))(()))[([])]()[([[[]]([[][]][])[[]]([]()((([])[]())))](()))])(([()()][[[[]()([[[[[]][]([[][]]([([][()])[[()]]()]))]([][])()()()[[()]]]])][()]()][[]]][])[][][][][[]()([((()))])([])])())))[]())))[][])()])])])[[()[]][][]][(()[()]([])([])[])]([][()][[]()[]]))]][])](()))[]]()()(())([()([]())])]())(())]())()[()[[()()](([(())])[[]()[[]][[[()]][[]]][]((([])([][][][[()()[]()]])))]([][[]]([])[[]((([()]))(([([[]][[]])])))()]())[])][[]]((())()(()(())))(())][()([([(()[]())]()[])[[]]])]])])[()]))[][](()())([[]])]()))(()())(([])[[](()(([[[]]((()))])[]))()[[]]][])[]]()()[]()))[()][[[]]]][([()](()[(((()))(([])(())))]))((()))][[()()][]((([[()[](([[]](()()())[[()[]([([]([])(([[]()(()[]([()]()))([]()(()[]()[][()[([])]]))[]])))()()()]()[(([[[[]]([])()]([([])[]])()([](([[()[][[]]()]])(()[(())]()()(()())[])[()])[])()][[]]()([]([]()()))[[()[]]])(()[([])]))([[[][]]][(((([]))[([[()]]())][]()[](()[](([]))[])))()])[]])][([(([]([(())[[]]][])[[(())[(())[][]]][()]()][[][[[]][]]][][]))])[[([[()()]])[]]][[]([(())[][]()[[]]()]())[]]]()]))(())()([])]]()[]([[[]]((([])(([[[]][]])[]))[()][[()([[()]]())([])]])[()]])()))(()[]))]))])()[])[[()][()[][[(())()]]]][]([])]))))]()](())]()[([])]()([]))[(())(()()([()[[(()[])[[]][[]()](()[][])((()))(()[])](()())]][()()[]()])[[([])[[][[[[]][[((()))][(()[[[][]]])[()()(())](([]([])[(([]))][][])[()])]][]][][()][[[[[][[][[]]]()][][()]]()()[(())](([()[[[((([])))[[]]][[]]]]()[([([[]]()())([[](([](((([([])[][][]])))))[])()[[[()]]([[[]([([()()()()([][()])[]]()[])[[]][]]())][][[]([[]]([][[]()]))][(()[]([]))]])(())]][([]())][[]((()(())[])[])[[]]])([][([])[]])[]]()[[[]]((()))[()][]()][()])()]][()([[[()([])]][(())[(())][(())]]((()[][]([[]]()()()((([[(([])([()]))[([])]]()][[[]]])())()))))[()[()[]][[]][[]()[][]()()][()]()][][][[][]()]])[]]([])[[]()(())])[[[[]][[[([][()])[[]]()]()[[[()()(()()[])]()(([()])()(()[])[][()]([(([](([][(([([[][](([([([[[()]((([[[()]()((([])[])[]()[])([()]()[])([]())]()[[[()[[()]]()](([][])([()[]][]))]]])))()()]][])([[[[][()]][][][[()][]()]([[]][[]][(()[]())[()[()[]]()]()()(())(())](()))]([()]()()[])[][]]())()](()[]))[][()][]()]))[[()([][([(())[][()]])])[([](([[]([])](([(()()()())][])(([[]])[]()([][]))())[][][[]][()])[])[])]][()[][([([][(())[][(())]][][()((((((()())))()[](())((([])[()][](()[][[]])[])(())))[][][])[()()])[([(([]))])]()[[]][[[()[]()([[()((([]()[])))[([([][()([])[](())([])])[]][[[()][[]([()])][]([][[]])()]])](()()()()[])[()([])()]]([])[][][]()[[(()[()][][])]][]])][][[]]]]][])])[()][([])]]]][()[[]]](()[][])(()[][[[][[][[()]]]](([]))()][()][])]([()]()[])[](()([])(([])[()])))])[[[()[]]]]([(((())))[][()([([[[]()[][]]()[[()([[]]([]))]([()((()))])([([()]()[[[[[((()[][[][([()][()[[[[([[[]()][](()()[])])[()()()][()]]()](((()([]))[()][])[()]())()]]][])]](([[(([()(())]))][]]((()()))[]))[](([(([[[[]][][]]]()[()](()[]))[[]()[(([()]()[()(((((()([[[()][[]([])][]([])]()[]([()[](([](())))][][(())]()()((())()()[()]([]()))([((()))])[()([])(())])][])(())()[][](([]()[]))))[()[(([][()[]](()[][([][[([[[]()][[]]()])]])[[]]])))[]]]))[[(([]([][])(()[](([()()])))))]][])]()))]])([])(())]())[])(([[]])(()[][([][])()][()[[]]])))[])()]]]]])])[(()())]()]()])(())])][]()]()(([[]()[()(((()()([]([[][]]()[[]()])(([][][]([])[([])]()()))))[(()(())())[]((([][]))())[[]]]))]]((([[[]([[][([]())()[()]([])(()()())[()([][][[]])[][]()]([])]])()()]])[]([]()()[[[()][][][([()]((()((([][()][[]])(([])())))(()[[]]([])([()()]))))[(()[][][][]((([([[]()])])))[])(()(()((()())[[()][][[](()())]()][])))()])()]][()]()][]())[()[]][][][[[[[]][][[((()))[[[]()()[[]]([][()()])[][][]]][()]]()([([[[]]])])[(())([(())])]()]][[][]]()][][[]()(()[])()([][][]([([[(()([([][[()]](([[[[[]]]]]))[[]][])]([])[(())]([][][(()())]))(()[]))]()])((()))]))([(([]()))][])[[]]]()([[](([[]()]((()([()](())))[[]][(([])()[[[[](())[]]]])]()))[])][])])[](([][]()()([[]]([][[][][[([()()([])[][[[](([([[[[[][[()]][]]](())([])(()[([(())])()()])][([]((())[])())]])])[[()](([][()]))])]][[]]][])][[()][]](([])[])[[]][]][([()])()]]))([()])([[[()]][[]]]([[][][]])[])[[][[[](([[[[[[([][])(([]([()[][()()]([][[]()][]())]([[[][]]([]())[[[[()()][(())[][[]()([[]])]]()]][][]]])())([]([([][])]))())())()()]]][]()[]]][]([[()]([])][])])[[]])()(()())][]()[][][]][[][()]([[]][][])[]]]((((([()])))()()))([])[[[]((([[]((([]([([])][[][()([][()()])()]([([[][][][()[](((((([]))[()][])[]())[()[([()()])[()[[]()]]]]))]][[][([])]])[]()()][])]()))))]))())[]]]()()([()][(()(([((([][][](())())))()()()[]][])(()))[[]])[()[]]])[][()])[[]])())[][]))))((([])))](()()))())))]))[[]]]][]]]]]([[](((())([()[()()()(()()((()[([]([[][([[([][][]()[]()[][[][][][[[()(()()[])()()[][]]()[]][()()()]][]([()][]((())))(()[]()[])])][[[][()]]][]()])[[()([((([][][])))])]]]][[][[[][]]()](((()[()(())([()([])])])[][]))[]][]([[((()()))][()([[]])[()][(())[]()][[](())]][]])))])[([][[[]][[[]]]])[]]()()[]()((())())))]]()([])[])[])())[]]([][()]))[][][])][([[]]([[()]])()())]()]()](([][])[[][[([])[]()([[]])[()]]()()]()]()([])([[]][[[]]]))[([[][][[[[][]()]][]]]()[([[]])([])()](([[([[()[]]()[]][])[[([(()[])([[][()][][]]([[()]()][][()]()))[]][][(([][([[[[][][()[]][[[()()]][]([[[([])](()())[][]]()(())[]](()))[(())]][()]()([]([]))[]]]][]())]))]()[[](()([][][]((((())[()]()())[[]([[][]()()]())()])(([])[]))))[]])]([[[]]([()(())()][]())()[(()())[(())()]()()[()][()[()(())][([]((([()])[])([()])()[]))(()[([])[[]][][()[]][()[]]])[]]]]])]([][])(([[()[()]([[]([()()([][])([])])[()[][]]]()(([][])))[][[()[]]][[([])][]]()](()([([]([]))]())())](()(()([[[]]])))(()))[()()](([]())))[[()[()]]][](())([])[][[]][]([])][]]())()[([][([()[[(([(())()()()](((())[()[[(()[([])[[][()(())][()](()()())]])]([((([[(())[()]]][]([[[(([][])([()][[]]))[()][()[()]]]]()()])[])[[][]])((((()))([][][][]))[]()[]))])((([[]][(())]()[])()()((()))([[([])([[()]][])]([]())()[[]]]())))()](())][(([][]()[]([])[[]][()])()[])[]])))[[()((())())[]]]()[()()][])[]()]()[]][(((()[])[])()[[[()([[][([[[()[][][(((())([]([])(())[[()]][])))[()]]]]][])]][])()()]]][])][()()[[([()[][[[]](())][(())]]([]))[[()]()[(())()][()()]]()[[]]]][]](()())][]())[()][()()]([]([])[()[(())][]()])])()[]])([][])()[])([])[[]]]]]]()()(([()[][][[][][][[]][()]]()[()]]())[]))])]]]))[([]([]))[]])[](()(()()[[]]))[[]([][[(([[][]([]()[])])())][[]][]])[[()[[((([()])[()]))]]((([]))[])(()())]]]()][([[[()[[]]()]]([()])([])])][])][[]([[]])([[]()([][])])]))((()[]))(())[][][()]()())([[()[](([][]))][((([](()[][[()][([[]]((()[([][])()([[][[](()()[([(())[][]]()((()())))](()))[][[]]][([[]()([[]()([][])])][])[]]([])](())([]))([((([](([]))()))[])])]((()[]()(((())[()([()]([]))[]]([()([](())()(())(([]([[[(([])()())]()([[]()][[]()([])[][[]([([])([(()(()[[][()[[]]((()[()][(([][])())]([[][[[]](())]][()[]][(())([()][])[[]()[][([[[]][[]]]())([](()()((((([][][(([]))()[()[][()]]])[]))[[([(())])]()[][][([(())]())[]]][])))[]([()[()[][]]]([[]])))]]](([])([])))()))((()))[]()[]]]))[()[()]]]()[()])][][[]])](())]())[][(([[]([]())[][]])()[])]](())()])[]))[[]])][]))[]([([[[([](()[[()()]([]())()[([[[[]][]][][]])]()[]]())()(()[[[([(())])[]][]([])][[]]][([])])[[]()])]([]()[()()](()))]()[[]()]()[[([])]((()))]][]([]))()()[(()[((((([([][([])([])])()]()()))[](()[][[()]](()())([([][[()][(()[[()([])]()()])]])])))[[[[[][([])()()[]]][()]]]]([][]([]())))(()[(()()())]([(()[])])))])]])))[][[[]]][])))[()[(([])[[()[[[()()]][]]]][]()[[[()]]][])([])]][([])])]])[]))[][[][([])][]][][([[[[]()[]]](([])(())((()[()][[][()]]))[[]]([])([][]))])])]])))][][[]([()][])]](([()](()[[((()))()]]((()[][[]]))())((())()()(([[[]([()([][[[()(()([[()[[]()]()]]))(()([])[]())((()[[][]()()([[(((())))((())[()][()[]])[(([]))([][([])]([[[]]()])[([[((([][([])][])))]()[][][[]]()][([])]([])())])]([[][()[[][([])][(()(()))[]()()[()][[][]]](())]()[()]][((()([[]][][]))()[][])]])[][()[(()([()[()()]]))[][()[()([])[]]()][]]]]])](([(([()])[])[][]])(())[][()][[()()]]))())[]][()[[]]()[](()[](([[]]))[[(([(())]))]]()(()([[]((())((())[[]]))][()[]([([()])()])()])[[]][([])]([]()))())(([]))][([])()][]](())[][(())]])])]([[()]])]))))()[][[]()[]]([][])[][[]()()[[[][[[()]()()((((([[()][[]][([[]][[(((())))]]()()())[]]([[]][()()])](()([])[(())()][()]()))([])[([([])])()[()](())](()(())(()([[]])[[([[[[()]]][()]()][(([]((([][][])))))[()]()([[((([()])[]()))]])]()([[]])[(())[()]])[]()]][])[])()[[[]()()[][([[]])]]])()[])))([][[([])[]]()()([])])]][[()]][][[]]]()[()([])]]])])([(()()([()[[](()()[])]([])][()]))][][[()][[[[[]](())[((()([]([((()))][]([()(())[][()]]()[]((()[[()][[(())()]()[([][[()]]())[]([()()][])]]]([(()[]([([])]()))]([[([([[]([]())([])])()])](())])))([]))))()[])))][]([[[][()]]()]())[[]][[((()((()[]))))()]]()[[()()]]][]]]([]((([][])()[()[]])))])()()([[]([(([[]]))[]()](([([()(())([])()][()()])([])[]]))(()))]()()[])]()()(())()()())])])]()])())]]]])[[()([]())[]]()()]))]([[]]))[(([[([][])([([])])]][[]()]))][[([[(((()(([][])))())[]([]))](())][]())(()(()(())))[([]([[[]]([])[[()]][]][([])]()[([(([])()[])[](((()[[]])))[()[()[[]([()][[]][()[[[(([(()[])]([[]]([][]))()[[()]]))][]]][]()()])([][([()[]])[][[](())]])()()()()[]]][[([]((()[[(())()]])[[]][([()[()[[[]](()())()[]]][]([][][])(([[([]()())((([()[[]][()]][])))][[([[]()]())]]([()([(())])])([([][([](([[([])[]([])]]((()[])[])[(())[]])[]))([([[[]]([()])[][]([][[]]([()([])[([])[[](([])[(())[(()(()([][[[()](())]()][]([[]]))[][])()[[]]())]()(())])[]]][([])[]]][])(([]([][()[]]([[]()][]))([()][[][]((()(([([()(([[]](())))([])])])[])([([][])]()))[])])))())])])((())([([([]([][])[[[[]((((()(()[[[([][][]([[[][[]()([()]()[()])[([()][]()[])]]]][()])[(([]([]())))]())]()][][()]](())[()])(()()[])))()[]()[]))(())]()]])][[([[[][((([()[[[[()]]]]][[]](()([[(()([[[()[[][()][]]]]])())([[[]]()([([[]])])])[]()]])[])))([[[]]([([])]([[]][]))]))]]()[]([](()))][()])[[]](((()[][[[]][]]([(())[[[]([])]([])]()])())()))[[]]]]()(()([()]))[()([]([[]]))][]([]))]))[([((()(([[][]]()()))))])[([[(()[])()()]()([()[]])[]])[]]()][]()[]()()][]([[(([][])[][][[()([]([]())[])]])]([])][(([(())])[[]])][](()[]()[]([(([[]])[][])](([])(((([([()](([[[((()[[([])[]()]()([([(([[][]])[])])](())[()(([([]([]))])[[][[]()]])])]([[]()[[()([()()[[([[[(([[[()](([[()]])[(())([[]]())[()]()])[]]])[(())])[][]]()([()][][([()[[]]]()()[[([]()())][([[]](((())[[(())[]](([[]])[]()[[]][])][][]))[])()]]())][()([[]][])(()(()))[][(())]])()([()()][()][[]][[()][]]())]]()[])]]])()[[([[]])]][][]]]][][[]]([[]]())([]))()))]][]]))[])([])[]]))())[[]])))(((([]))))()((())))([]))[[()][([]()[])[[[]](())][][]][]])[][[[([()])()](()[])]]()][()][])()])())]())()]))][]]([])[()[()[()]]]]()()][[][]]()([(())[()[]](()())]))()[][]()[]])[[]][()])(([]()()()(()[[]()])[([()])[][][][()()]]()))]]]()])][][][]]]))]]][]()())([]())[[][[][]]()]]]()]])]])[][][([][()([()[]][[()[][]]()][((()[[([()])]][][]))()][()])[][]])[]][[][]]])[]]]([([(((([[([[()[[[[()][]][]]]][]])[[]]][][]([]([[]]))[]()])[][][[][[()[([(([][]))]())()]]]()])))])])([])]][(([][][[][]()[[][[]([([]((()()[()((([]())))])[][])[[(((())))]][[[]][[[]]][][[()[]([])]]])])([[]])][([()[][()[]]]())()]()[][]()]()()]()[])()[])([])()]))((([])))]][[]()])[[(()()[()[([][]()([]))]])[[][[()[[]([([()[]][][])()[()](([(()[])])[])](([][][]))[[]][()]([]))]]]]]]])[[()()[]]]]](())][][][]][][()()][])]()]][][])))]))[(()[][]([][(())[[]]()]))[[][][]()[[[()][]]]]][]])[])()][])()]])()]))([])()(())][][]()[()])()(([]))()[[[[(())][[()()]]]][[][[[]][]]]]())]()()[]]]]]]()]][[]][[()]][][]]]][]()(()[]))])()[[]]()()[])))]])[])[][[[[(()()())[()]][(([]()[]))[[][][]()]()[]]][]]((())[])[]])([]())](())[[[][]]])(()[[([()[]()[]])[[([])[[]()[][()]]]]][]]())]())([()[[(()[[][()][(())](()([])[]())()([])])]()((((())())[]([]()()[])([]))[][][([[]][[[[[()[[][][()()[]]()[]()](()[()()()[(([[[[]()()]]]))[[()]]][][[]()][[()[]()]]])]((([]()())))([])()][][]()[[][[[()[]]][](([[()]]))][((()))]][()()(())]]()]]()[[][[[[(([]()[]))]((([]))()())[[[]((()))([[[]]]((()[](([])))[((([(()())][[]])())()[]((())()))(([([()][[()]([(([()()]()([()][[[()]()]])))]())[()([])]]())()]()()))()][])[][]([]()())[])]][[[]][[][[[]]][()]]][]]]([[](([[()([(([][[]]))][][][])()()][]]))([[[()](()[([[]()[[(()())]]([])([][]([]((()((([])((()([[()([((([])))()()][])[](())]((()(()[()[[()(())[]][[]][][]][]()]([])[[]][(([[]])(()))][[](([[](()[(())()()[]([([]([[()]])[])()])()][])]))]())[]))])(()[[][[]()()[(()[])[]]()()][[[]](([]()()[]))][[][[]][()[][][(()[()[()[[[()][]]]]([[]](()))((())[]()(()))])(()[][][[[(([[]](([[][]([])[[[][]([[(())]()[(())]])(())(()(()))[]]()([])[]()([][]()([]))[()[][]][][](())][](()([()]())(([][[][[(()()([]()[]))]](([]))]([](([]))([][[]]()))))([]([])))])[])))[(((())(([])[])(([][]()([]))))[])[[[]](())][]]()]]](()()))](()[](()(()))[(()[[[](()[()])[]]]()(()(())()))()])(())][][]]()][()()])))[]))))))()])()[]])]][][[[([])]([()(())])]][[]()[]][()])])[[[[]()(([[]()]))[]()((()))]]]]])]()(()[]))]][([])][][]([]()))][([()()[]])([])])]([(())])]()]()()[()[]]()()())[()()][([])[[]()][(())[()[]]]][(()[()[[][]]])]]][])]]])()[[]][])))][]([[]])[([])()][][()][][()[](([])[()])][[](())]()([[]])()()(()[[]][][[[]]()][])()()[][]()[([][()[]()](([[]][[[][]]])(((()()((([([([[]][][])[(()[[(()[][([])][][][([][[]])]([][][](())()[])()[])([])([])[(([(([[]([[]()[[]]])]())()[((([[()()][][[[]][]]][][]))()[(()())])][[][[(([[]]))]()]])()]))][[()][]()[(([[][]]()))]]]([([(())][])]())]())]][[]])([[]])[]][])((([([])])))[]()[])[])()([()])([()])))[]([])())()))([([[]([](((([])[[[]()([[[((())())(((())[]))][[]()]]])]()(([]()(([])())()()()))]())[[()]])))])()[]()[([[]()[()([][]())()[]][[](())(())[][([()([[[][](())]])[]][][[][][(())(()[])[[]]]][([()])])][]]])]])()](()())[][[[][(((([])))()[[[]](())[[([[[()[](([](())))]()[[][]]]])[[[]()()()([((())[])(())[([]())]([])([][[]]()[[([][[[[][]](())][]]([]())[[]][[]])([])]])][()][[]]([[()][][]([][()]()[])[([])]]))[]()[][]]()]]]])[([][[()([])]()][[]()]()()([])(())[()()]([][[][]([][[][[([[[()()[(([()[]]))][][()]][]]])]]])]))()()()][](())]([])()]]()((()))(()(([][[[[](([]())[((()))[][]()][(())()])[]][]]](()([])[[]]))[[]](([]))([([]()(()([])([[][(()[[][(([][[]][]))]])]])[()])())[]][([])[[]]]([][](()))[()])))[][()([][])]()(())()[](([][[]]()()()()[]))()()([()])[][[[]]](()()())()[[]][[[[]]]][][][[]]()[[[]][][[]]](())()([()[]]())(())(([[]([([()[]])[[(()[[()][][[]]]([(()())([[[]([])()[[][([()]())]]((()))]])])[[][()()[]][]()][[][]])]][][[]]])[]]))(())[][()][][][][[()([[]][()[]([][])])()([[]])[]]([[]][]([()[([])]()([])[][[]][(([[][[][]]]()))]]()[[[[][]]]])())][(())]()((())(())([]()))[][[]](([(([()[((()[[([[[[()[[]](()(([](()[((()(())[[]][][][])([])[[]])]))[]))][()([])([](()()()))]]]])(()[][(()[[[][](((())))[()[]]]()()][])()](()())[[[[()([]()()()([([[[]]()])([[]()[]]([][][])((()[()[]][][[[]()([][])]])((([][[[]([([])[()]([[[[()][]]()[]()[][()]((()[])(()[[(())]]()()[])([]([]))[([]()())])]()](()[[([([([[[]]([]())](())(([]()()()())))]([[(()[[][[(()(((())[[[][()()]]])[]))]]])((()(()[]()([[]((([[[]()]()(())()((([][]))[])[]]))(((()))))()()[]]))()(([][]))[]))[][][[]][()]()()]([[][[[][((()(())())[()][](([[]][])))[()((()[((()()[[()]][])[])])[((([[](([()[][]((((()))[])[()]([][[()[]][]]()))]()()[[]])[()])]))[[]])]([]))]][[][()((([][(([()(([(([][[][]][([()()][])([()[][((()))]])])(())(()[][]()[])())][]((())([])((((()([[][()][[]]])[]))(([[((([()][][]())))]])()([[(()(((([][([[[()(([()[]][()(())()([](()))]))]]][[()]])])([(())[]()][([][])])()((([]))(([][][]([([()]()())][[(()()(())([][([()])])())()]]()[[]])))[((()))[[]()][]]([[][][]()][][]))())[])))]][]))()([]))())())[])[()(())[[[][]()][]()]][]())]))(()()())()([[]]())(()[[[[]((()[[]]([][][([([[]()][])][(([])[]((())[])[[[[][]][](())()][]])][][[]]())()[[()]]]))())[[]]](([]()))[]]([])([])])]()[()][])()[]))][(())[[]]][]]()[][(())[]]]()]]()[[[([()([[[[([])]]]]((([([][()[[([([()[]((()[([](([[[[[]]]]]))[])]()[[]][][]))])[()[(([][])())]]](([][]()[[][(([][[]()[]][()][]))[]]][(())]()[][])[(()[([()([]()()[(([]()[()])[][[]][]((())[(([([])])(()[[[[]]]]))[[[][]]]()]()))])]()[][[]]()(([])))[][]])([])]))]][]([]())[]()][][]([](())([])[])[]([])[[]([][([[([[]([])()])]][])])][[([])([([])])()()]])]([[([][(((())(()[])))][()[[][]]][[[()]]])([[]][])[][()][]](([[]()])(())[])()()]))))(([[][]])()[]))[]])[]((((((())()[[]][()])))[]))([](()[[]][[[]]]))[[]][]]]]([()()]))(([[[]()([[[]]])()(()())[]][()]()()((([[]()])()[][()]))]()))]))[[[(()[[][[(())]]])([])[][]][]]]()][][]([]())[(()(()[])())])]]))(([()()()][()]))])()(((())))(((((())(()))()[])))]]))[][()[]](())[])()([()()][]()[])))])[])]]]()][][])]][])([]([][(()[]([()[[[[]]]()[]][](()[([[][()]()][])[]])]))(())([][([]([((((()[][[(()()[[[([[[][()]()[](())](()(()()))])[()()]]]([])(([([(([([[]])])([([[]][([[[(([](([[]])[[[]]]()[](()(([()()][]()))))))]](((()(()([[()]][([([][])])]()))[][])))[([][])][]])(())[]()])([])])(([]()[][[]])((()[])[]))()())()(([(([]())[])()(())[([])()[][([(((([()]))))()[]()[[()()[[]([])]()(())[]]()][]([]([])[][([][([])]([(())]()[()]))][[[]]][([[[](([])([]([][][[][[]]](()[()]()[[]](()()))([([][[()]]()[(([[]](()(()([][[][][[]]]([])))())()[[()]((()([]))([][(())])[][[]]((())))]))[]()]([(([(()[[]][(([[]([[]])][][()(([([]([]))()]))][([][()[[[][][()([])[[[]]]([][()[[()(())((())[([])])][([[[([](()[])[])([])([]())]()][][][([](()[]()))]()()[][]])[()()][]][][](())[]]][((([][(())])())(()([(([([])][]))[[]]([()])[(([()])())([])]])[])([[[]]]((([()(([()((([])))][[[]]]))])))[]([([(()())])][][]))[])](([])))()]]]()([])])])[([((((([()]()[])[][][[][](())[][[]]])[])[[]]))]()[]())[]()([[((([]([[[]][]()][])()())([()[][]([][[][]])]))[([[[()]][[]](()[[]][[[]][]([])]([[((()()[]))()][]]()))][])([[]()[]])])][]][()])([])[[]]()]())()][(())])(())]))[()[[[()][(()()())][[[()]]([])[[]]((()))()]]]([([[()][]])][[()((())[[]][][(()(()[][][]())(([])()[][][[]])(([]()())[][]()))()(([])[])])](())[]()][]([][[]]([][[]]))(()[])([()()()]([]([]([]([(())]))[(()[[]([(()())()()]((([[]])[])))])][([()]([()]))]))[(([[(()()()([[[][][()][()]]]([])[])[])()]]()))][[][(((([[[]()]])[[[()]][[([][])]((())([[[()]]][]([][])))]]((()))[[]])))[][]]][])[][][])(([])([]()[()[]()[][((()(([]))[]([][])[])([][])([()][]()))](()()[])()][([(()[[]()()]()())])[][([])]]([[]()])))([][])[]()][]]))][[]])))(([][[[()(()[(((([][]([()])))(()()[(()()[])][][]))[])])]]([[[()(((()[[(())([()[()()()]])]])[[]][[[]]])[([][()[][][(())]()])]())([][[]]()[])]][]]()[])][])))[[[]()[][]]()]]][[][[()[()]([]((()))()[[]])[((([[[[(([([()])()()([])][[[](([](([[]()[([[][]][](()[])()())][]()[][[][[()[([][()])]]]]])()[]))[()()()][()()[][][([])[][]]]([[(([[[]]([(())(()[])[[((([][]((([](([[]][][]))[]))))))[[[[][[][]]()]]]()()]]()[[()[()[[][([][])](())[[[[][(([]))[][]][](())][][[]]][()[]]]([]([]))[[]][]][()][]]][([])][]]])[]]())[])(((([()(()[])[]][])()[])[]))]]()))][](()[(())()])](([](()(([([()][[]][[][([()([][])([])](()))()]([][()][(([][[()][]])[[()[[[]]][()][]][][](())(()[][[()]])[][][()()([])[(())](([]()()))([][()])[[][(())][()()()][]][][()([])][]]][])][[()]])()])][[(()())(())]([([((()))[]])])])))[])[])[]([])[])([[[]()()][][]][](()))[(())()[[]()]][([][][])])(()()([][([()([][([[][]])[]]())])[]]()))]()]([])[]((()([]))[[()[[(([[][]][])[()][(())](()[]))[]]()(()())[(()[]()()()())]()()((()())())[((([[()]]))(())[]([](()[])[]))][[()][]][[[]([[[]([[[[]][[]]]([])([[]()()()][()]())(()[])][()]()([[]][()[]])[]((())))([])]])()]([[()[()()[]([[()[([])][][(()()[])]]])[](()[]()())[[][[[[()]([]())](())][]([]()())()]][]]](())[]]()()())[]()()[[]][[()([(())])]][[]([[[]]])]([()[(([]([])(()(()(([()[[]([()])()](([])[()][]())]))([((()))][[]]))))[])]](([][[]()[]][][])())((([()(([]())[([()([][[]()[]]())][(())[([])]])[[[]]]])[]][])(())[][[][][]]))(([()([])]())))]()([]([()][]))]]])[[()]()()](()(()[])()())([]())[[][[()[]]]]()[]]][()])())())([])()()()[()()]]]()(()[]())]([[]][])[]])[[[]]]][()])])]]])[()])]()([]))]))[][[]()[([])[]]([[][[([([[]])[]()])]]()[]]((([(())]))()[])[]((()[[]]))[[[]]])[[[[]]]]([()][()[([](()))][[([])[(()())()[](()())()](()[])]]][])]](([[[]()()][[]][][]]))[])()((()[[][]]((())))[[[[][[][[()]]]()]]]()([[]]))]][()()])))[[[][]]]())[]][]()[(())[]]))([[[[]][]([])()(())()(())](([])[()([[[([[([[][[()[([])[]]()(()())][[]]][[(())[[][[][]]((()())(()[]))]]][()][()([][[]()()[[]][]()][]([][])[][][(())](((()))()([])()[])())]])][][][]])]]])[[]]])])][][()[][]][((()[([[()()[[((([[[][]][[(()([]))[]][]([(())(())()[]((((([[[[[(()()([[()[([]()((()))[])(())][[]]](([(())[]][]))(([]()))]((()))[])[])][]]()]]]())))[]([[[()[]()()[()()[[](((([])[])[()([])[]()[][]]([(()(([][[()[[][]]]]([([][]()(()[]())[][])(((()[]))[()()()])]))))]()))())]([])][]][()]([]())]])()()[([[([[]()[][]()])][[[]]][[](([](())))]][[([]()()(()))([()[[[()[[]]]]]])][]])]()))][])][([])(((()[[](())]))()[[][]]())([([][[()]([][][])[]]([])[[(([((())[][()]([()()]())()())[[([])[][]()[][]][(([()][](()(([[]]))[]))()()[])]]])[])()()()[]][[]]()(([()()]()[[]]))][][[]][])()()])]]()()([])([(()([]())[[[]]([[]][()]([[]()][(())][()]))])([[]][]([()[[[([[]])]](()([(())]())([(())][][()]([()])[])[])[]([()])]][]))(([[([][()])][[[[[]([[[(([(())(()[()[[[]]][]])[]]()[]))]]])[][[()]]]]()[]()()]][]]()))([])()[[()]][][[]]]())))[][][][[]([])])][]]]][()([[][()]][][])([()([[([])[](()[][]())]]([(()[()([[]][(([[]([][[]()([][])(())()][()[]]()(([])[][[([[[[[[[([][])[[][]][][(()[[()]])()[[[]([()])[]]]]]]()]]]][[[]](()()[]())]])()[]][][](()((()(([])))[()[(())()][]][()[[()]][]()]))()()][][[]()[]]()[()[]]()))])()([]))[]][[][([(([](()()[][[]]())()[[]][[[()()[]()]()[(([]))][][][]][()[]]][()][][()[]])[[(())([([()][]([[()][]][]))](([()]((([[()()([(()[][])([][])])[(())[([[]]())()()]][()]]])[])[])))[])[([()][()]())[()][]][][[(()()[]([[()[[[]]()][]]]))]]()[](())]((())([()[()]()])[()[[[[()((()[[][([(()[][][])(()(()()()))[]])][(([(()([])([]))[][[][]([[()]](()([]()()[]()(()())()()))())]])((([()([])])([[[]][[()()]()]])[])[])())][([()][]())[(())[([[()]](([(([]()[]()))]()))()())][][]][]](([][]))[(()[][([]()[])]()(()))(([])[](([([][(()())])][()])))()(())[]]]))]([])(())([(()())[[[]]]()[[][[]]]]())][(()()())](())([])](()[]([[]()[]()]))()]][])][])(([])())()[][]])[]()([])]((()([])()(())[()()(())]))])[][()[([])]()()][]][([([]()()[]())[][[[[]([][()]([])[])](()[])]]])()(()([])[()])[[(([])[])(((()[[[][[()]()][]]()])))[]()[]([])[]]]])(([](())))([(()(()))()[]()[]])[()[()]()[([][][])[()()()(())][]]()[]]]()()((([]())([[[[]()()]][[]]]))))())[[[][()]]]]()((()))[[]][[][]()[][][]()([][()])][])[]()(([](()([])[])()()))(())]([]))[(()()()[()][([])])]][[]])([]()()))]())])))()]][[([])]]))[]([[][()](([[]])[[[[()([](([])[])[])[(())][[[]]]([][])]]]()(())[[]]])([[]](()()[]((([[]]()()[])))()[()]))][[][[]]][([[()[(()()[]()())]((([()][])[(())([]()[()()[]]([([()])])[()([([[()]()][])])])])[])()](()()[[]][[[]][([])([]([[([])[]()][]()[[]][]](()[][()()]())()))][[([][]()[[](())])]]][[]]()[])][])[[]][]]())[[[(())][[]][]]]])[(()()[[[([])]]([([])[[([()()[]()([]()(([[](())]((())()()))))]((()()))()[[[[[][[]][[]]]]()](()[()][[]])[()][[[]]][]][][()])](())]]([]([][])[([])[([][][()]()(()))]])()[][]((()))[(([[]]))()]([[]]()))([(([][[()]])[()([[]][])[()]][(())([[](([][][([()][]([()[()()[[()]([[]])[]][]([()][()]()()[][()])[]]](()[][([][])]))[[][()]()])]()))])()])](())[()])])])(((([[([[[][[[]][[([])]]]][[([]())([()[()()]()]())]()][(([]))][]([][()(([[[][[][()]([])[]]]()[(()[([[()]])](())())([[]][])]]))][])]([]))()]][([]())]))())((()(()[][[((([][[(((())())()[][])()()[[]]]]))[[][]][])[([])]()][[]()[[[[[[[]()]]]]()]()]()[]][[]]][()]((([]()()[]))(())[()]()()((([]))))[][](()[][](()))[(([()][][][[([[][[](()[])[([[]][[[()][[[]()]([([(())][][(()[]()(([()[[()[[[][[()(())]()()](((([[[]]]())[[]][[]]((()())(()())[()[]][[((()))]]))(())(())([])[]([[([])[]()][([])[()]([[][((()))()][()]])[[()[[][]]]][]][]])[]([[]()()]([[]])[()][()][()()[]])))]([]())([(()(((())[][]))(()))[((()[][([][][])[]()])[](()))][]])[(([](())))]([()][]()[[]])()()]()][[((([()(())])([()(([()(([]))]((())[[]]))())[]])))[]]]]([](([[()][[]]((())[])()[()]]()[][][](())))[()])[([][][([([][][]([()])[])([]([()])()[()[(()[]([[]]()[]())[](((([]))))(()([][])))][]()])](()([][()])))]()([]))[[[[]](([])(([([([][])]())[[()][[()((())[[((([(())()]))()()())[[[[]][]]](())]])[[](()(()))[[]([])]]]]]]([()[][[]]()(()([])())[]])))(()()([](()(([])[()]([[]]))[](())[]))[(())]()))]([])[[]]][[[[([]()[()])[[]]]]]]]([()]()([][]())[][()]())[][]([])])))][()[()(((((())([()[[]()([([][]())](()))()]])([(([]))[][[]]])))))()]])[[[][]]()()([][][(([]))])]][[]][])([[]()]())](())(()[[[[[][][](()[([]())])(()[[]])([][[()]]([[()[()()[[]]()]]()]()))]](())]])]()[()[]]])[([][])()()]]()]([[()()]()][][()[]]([([[]])[(([[][]][([[[]]()][()[](()())](()[]))]()[([][][][])[]]()()())[])][()][]])()[[()([])()[[][]][()][]()[][[()]]]()()])])[]]()(([]))[((()))]()(([()]))][])[])()])()(((())())([[][[][[[]]]()()]([])()][]()[[][]]()))([[][[()]]][])([]))([[[[][()([()(([])([][[()([[][(()(([[]])[])())([[]][(()[[[([])[]][[(())][([])]()](())[[]()]](()())[[[](([][])[][([[[()]()]()]([]((([()])([[(())[][[()]([[]]([][[[]()()]][[][(())]])[[]()])]][[[]]]]([]))[[]()])[]))[])(((())))[][]][[()[((([]))()[((([][])[]))[]]())()[()(())]]([]())]])][()()()[([()[()()([([][[(())(([([[((()[[]()()()([])])())((()))[[(()()()())([[]()])]](()[()([((([][][[][]]()[]())()))])([[]()()][])[]()()(((()())[[()]]))])]])])((())())[(())][][](()))([]())([][[[]][]()])]])[[[][[[]][]]]]])()[][]]])[]()([]()())[()][]][([][])()(()()[])]]]([[]][])()([][])[[(())]()][][()](([]((()[()]))))()()[[]()]([])]())]([[()][([])([[[]]])]]([][[][([[][]]()([[]]([])[()([][()([[()]])])](())))][(([][[()]])())]])))][]([([])])])]]))])[][[[]]]]][]][][][[]][((((()))()[[]]))]]())(()[])[]))[[]]()(()()([]())[])()[[[]]()][][[([[]])]]()(()[])([[()()([])](([[]])()[()])][][](([([]([()[[]]()[]])[][[][]]()([()[()]](()[()[]()[][][()()[[]([[()[[]]]()][[]()](()[[]((()))]()[()()])[])][]()([()][[[][[][[]][]]]][([](()[][])[][()])])[]]()[[[][()()]]]]([[()()([(()[]()[[]()[((([[([][])[]]()()[()[]]]([([[]]([]()([[()()][](((([])[])[[]]([()[([][])]]))[([([]([()][([(()[])]()[[()]])])([(([])([[([((()()))])][][[][]]]([][()])()))[][][]()][]))][][])([[[[]()]][][[(([]))](([()[()]][]))]([[]][[]])[[][(()()(([[[()(([])[]()(([])[()][]((()))([][()[]])[[(([]())[([[]])()][]())][]]([])[(()([](([]([()[]])((())[]((())))))([[[((()[()[]()()]))(())]](()(()))][])))]))][][[](([[()]()]())[])[]]]()[[()([[()[]([()[]])]])][]()][][[[]]]]())[()]()[]([([()()])](()[])(([()](())))[[(())][]])[][([](())[[][]])]))()]][][[([([])][(())])][][[]]()](()())[][][(())[]()()[[]()[[[[][][]((([])[[[]]]))]]]][[][]]]])][][])])[()[]()]))()](()()))[[[][[]()]][[[[]][]][][][[()()([[()(((())[]))]])]]]]))[])[[[((())[][[]][[()(())[[()]]([()][])()][[][][()[][[()][]]][]]])]]]]()])(([()]))(([])([[[](([[][[]]][[[[([]()())]](((())))]]))[[][()]()[]()[(())[[[]](())()([])[([[[[][](([][[][][()]([][][[]]())[[()]()]]))][]]]()[[]])[]]()[()([][()]()(()))]]([[()]()][])()([]((())[[()]](([[]]())()())[[[]([])]]()([])()[()]))]](([]([(([(())()[[](())]((([])))[][[()[([][[[]]])][[(()[(())]())]][][[[()]]]()((()))[][()]]]](()[()()]([]())[]())))]))[][[[]()]])][()][[]()]](([()]([(([]))])(([[[()(()())]((([[]])[()()()[]][]()[])([[]][[][]])(()((([(())()]([[]])))[][])(([][[][]][[[[]][]]][(([][]([([[[[(())](())]([[][]]())]][])[[]]])([((()))]()()[])))()]))[([]([]))[]])()())()(()()([[]](([[][[()[]([([()])][]([()]()[])[()])](([]))[[][]()]]][[]]([][][][])[]()[[]]))[]))()][[[[()()[()[[[()][((([]()([()])[()]([][([]()())([(()((([]))[[]]))])][[((([]([()][[]()][](()))()))()[])[]]]())))()[]())]][[]]]()[[[]]]]](([])[])](())]]][][])[[][([]()([]()))[()[[[()()]]]](()(()()))(((()(()))([]([()[]()])[]([([[[][]()()]])(([([][[[[[]]]([][][]()()([(()(([]([[[[][[][[[][()(())]][][([([[][[][[]]]])])[()[[[]()]]]]()()]]]]]()))[()[[([[([]([])[])]](([(([[][[[]][[](())]()][([])[()[]][][]][][[()([])][][([()[()][[]([])][[()[[]()()]]]])]][[[[]]]][]()]([[()[]()[(([]([][[]][]))(([])))()((([[][]()][]))[])()]]])))]()()([[][[]()]]))[[()](([[[]]][()([[[([])[[]]]](()[[[]]]([]))[[][]][(()[[](()[[]()][[]])[(([]()))]]((()[[[]]()()[]([]())()[][((()()([])[](((())[[]])[[][[((())[[]]()(())([()][])())[[]]][][()[()[[]()[]([[[]]])([])()[]]([[]])]]]][])[]))][[][][][][[][([[(((([((())([()()][[[]]()[(([]()[[([()])[[[][()[([()](([(())[((()[[]])[[][()[[[()((())()[])][()[]((([[[()]]]([()])(([])[()([()]([(([][]))[(())]]))])()))(([[[()[](([])[[]]([[](([]()))][]))[]][([[]](()[]((((()[])()([]))[]([])([[]()])))[()][[]])())]]([([])()])][])[(([][][()]())(((()))[]())[][([()]())][[]](()))[[]][]][])([][()[[]()]][][]))()][][()()[()]][]][]]]])]()][()[](())[]])[[()]])()(())([()])[[]])(()(([][][[]])[][])()[(([]([(()[])[()()][]])[()])[])()[[()]][]]())]]([()])[[[]]]]]]]))][][[]]()()[(()[])()()]][][([])]([][][])(()[[[]]])))[]])))()[])()[]]([([][](()))()]())])(((([]))[[][[](()[()[]](([])[])[[[([]()([]))()[[]]]](()([][][])[(([]))]([])([]))])][[()]][[]]][((())([])())])()[])]][[([])[()]]]][()][][][()[()]()]()()()[()((())[()]([])()[()])]][])))(([][[[]]][]))()][[()]]()([([]()[]())(())][](()))[]][])])(((()))))][]([()[]][])()[]()))()][((()[])([[]])[])[]]()]]()))])[][][()](()))[[][]]][(())]]([])()[])]())())]))([(([])[([([[[]]()][])][([()]([[]]))()([]())()[()]()]([()[][][]])(([[]])))(()((())([()]([()])[[[][([][((())[()](()([([([])[]](())()[]([][()][[][[[][[()[([])[([[](()())[[[[]]]()]]())[]()[[]()](((()([([])]()[[]][]()[](())))()))()[]][][]]][]]][]][(()[]()())]]))([])[]([])])))])()]]]()())))(())][[()[[]][][]]])[[[]]([][])]()]))[]()([()])()()(((()[[[][]()[][]]][[()]([])()([][][[(()[[[([])]([[]]())()(())]]([[[]][]([][])[]()[]][][()([[]((())[()([])])()[]()][[[()](())([][])(([])[]()()()[])[[([[]])]]]([[]][][]([][()[([[([])()]][[([](())())]]()([])(()[]()))([])(([])()([(())[[([])(([][[[]](((([()([](([[][[]][]]()[]))(()[[[]([][[[]]([([][[]]([][]))((())[])(()([]))][()[()]()])])()]])[])[()()()]])))[[]][][][()()][[]])([][])()[[]()]]))[()][][()]]()]](())[()]()[]))][]]((())))[()][[[][]((()))]([[]()][[]()[((([]))(([[[[([])][[[[]]]]]()]])[][][])(([(())]))()([][[((()))]])())([(()([]))]())()[]]()()([[]][][])]())][()()([[]][])[()]()])])]))([(([[((())[[()](())([])[[([][[][()][(())]]([([()[]()()](()((()[[([])]]))())[])])(([[()][][][()[[]]](())][()][]()(((()(([][()])))(())[((([](())())[][]))])))([()[()[((([][[[][[((((())([]))))]]][[][]](()([()()()]()(()[()[[[]]]()[]()][[()([[()(((()[][])))]()])][()](()(()))[]][])))][]([])))[()][[()[([[([[][[(([]))]]][[](([()()])([]))()()([])][(()([[]((([()[([](()))][[][([[[[[][](())][[]]][]]])]]][()[[[[()]]]([])]([])])([()][]))[])[[[][[[()]][()]][[[][()](())()[]]]]][((())[[](([]))]([[]])[]()[[][()](([([]([[[[(()[[]][(([]))])(([[]])[](()()[()])()()[[()([])]([])][[]([])][](()))]]([(())()][]((()[])))()]()][][[]]()([[][()([])]][]))[([[(((()))[])(()()(())([])[[]()])[]([[]])[([])[([[[[[()(()([]))]]]]()[[][[]([]()[([][[()()()[]((()[])())][][[]]()])])()[]]]])][][]]]])[[([()][()])][[()]][(([]([[[]([[]]()())[]]])([[]([[]])]))[[()([([]()([(((()[[[]]])))[()()][()[][]]()][](()))[([(())([])()[][]][])[([][])()]([])[([]())]])][([[]])][])(([])[][]([]()))[]([()]([]))]]((())))][[()()]]]])]))(())()][[[()][[(()([((()))]))][]]]][()[[([(()[])[]](((([()][])()()(((([()])()[][])()([][](([()])[][])[[(((()))[])]])((([])))[])))([])(([(()([[([[]()(()())]()[][[]])[()[(()[])]()[[][]][]]]([])])())]))()()[])[()]))]()()]])]]([]((()(())[(())])[[]])[(()[])][[[][]]()][])[[()][]()[((())[]()[])]][]))([[()[]]])])]()[]()])(([]())[([()])])]]]())[]()(((()))[])]]()])[](([])()))[([][])[()]])]([()])(())([](([((([()]))[[][[[]]]])[]][([[]])][])([])))()[]]])]([])[]]))])]]([])[]([]))])[])(())))[([[()]][()[[()[][]]]])][[[]()()][]()]]]()())[()[[()]]])))())()(([])[])()](()))][][((()()[[]]))]])[()((()[]()[]([])())()[([[[[]([[]][])[]][]]([[]])]())][])]()(()))()[]))()]([()]([]([]([](()[[()][[[]][]()[]]]([()])(()()[[]])[[([(([[[]()]])[[([()()])][[[()]()[]([]()[])]]]()())][])[[[()([[]][[]()()](()))(([()[(()([[]]))([[]()][][((()))][[(([][([])])[]()([()])[][[([])]])(([([])])[[[][]]][(())(()()())([])][]([]()()[](()[](([[[[[[[]][()[()]]([]([][[(())([][([[([][])]([[]])[]])]())[]][([])[][[((([][]([()][[]]))))[([[]()([][[[[[[]([][][[()()]])[]]]()][[()]()]((()))](())()([])()])])][[]][[]()[[[]]]]()]()[()(())][]][[][]]([])]])(()))([][[]])(()()[])[]]]]][]]()()[]()))[[]][])))[(([](())[](([[][((()[[()]][[](())[]][(((([]))())[])[[]([](([([]([]([()])([])[][()[([][[][((()))()[]]()])()][]]))])[(([()]()))]))[]][]])[])[]]([])()]()(()(([[()(())[[]]()](()((([[]]))[[][([][][])[]]()[]()]()))()][])))([()][[]]))([])([])([][]()([[]])))[[]]))]]]()[])]][()()[[[[[[][[((([()])))]]()][()]]]][(()()(([([()])]))())]]])[])(([])[((()[[[][]]])()([][[]]([]))[(([]))])[][]([])])]]([()([[]()[(()())]])])[]][]]](((()([(()())([])]())()[]((()()))([[]]([][]))))([])([[]]))[()])()(())))[[]])))))()[][][[]([[[][]]()][()])[([][])]]()[]()[]()[([[]()])()]()[][(([()()][]())[])][[]]()(((()))())((([[[[()]([](([]))(()))()[]]]]))[[]][]()()[])[][()((())())((((()))[()]))][[[()]]()([])]()()[[()[([([[[()]]][()()()[][](([][[]]))])]([])())[]()[]][[]][[]]]][]()()()([(([([[([([])])][]])]())(()[()][[([[[]][]]())[(()(()([([[[]]][[()]])()[]]([]))[]())[][((()[()()])([]([[[]]])))[]])((())([][()[]]()([])[])(()[])())()[][([()])][[((([[[](([()]))](())(([])((()[()[]()()])))[][][[][]]()()]([]()()[]([]))))[][]())]]](())]])[[][]][])()])[([((())())]([]))[[][]]][[[[[]]]][](([()[]()][[[(()([()][[()([(())])][[()][]]([[([[]])()]])[()]]))((([])))](())]]([]([](())(()([]))([])[(([](())[][]))(([[][()([])][][()]][]))]((((([[[]()([[]])()[][][]]])))()[])(())([[]]))))([()])[]))((([([[](()()[(([()])([[()]([([][(()()()[][])][])([])])[[[][]]([[[]()[[[(())[]]]](())]])]([][])()])())[[]]])([])])(())])[](([])[]())([(()([]()))[([])][]])()[()])[])]([(()([[][]][][]))()][((())[()([[]]()((([])))()([[[][][(([[()]])[([]()()((())[()[][()[(())[[]()]()[]()[()[[][]]]]]][([]([[()]](([]([])))))]()))()()](())([([][][(())])]()))]]]()))]()()(([(()[[]])]([])))[])[]])([])[()][](()[])([[]])[][][]()[][][][][[[]([([])])]](())()(([()()](([([[][](())])]([[]])())())[][](())))[()[][[[[()](([()()[]])())]([]())(()([][][]())())](())()[[]()]][](()()(([])))][(()[][](())((([]))[])()()[[][[][()]][]([])])]()[]([[]])[[([][[()][]][])(()([]))]](()[[[()]][()]()]())(())()[[]()](())[][][](([[(()[[]([]([][])())][(([]))][[()[()((([])[])[][])([])[][[[][()([])[()[][([]())()]][]][]][([][()()]())[[([()()[()]]())[][[]()([([](()))])[]([]([[]([])])[[[]]]())[][]]]]][]]][]]])()[[][([][(())])]][][]()[][]((([[][()([][(()[])((((((())[[[][][]]]))[]())))[[([([(([[(()([])((())[[([]())[([])(([]))][[([])]][]][()][([][])()]])[])]()])()[[[([(([[[]]()()[[([()()(([][()([()][[]]())]))()[([[([(((()[][([])])))([[[]](()()[][])][()])[[]()](())]())]])]][[[(((())((())[][([])])([][](()))[()(()[](()[[](())])((())[(()[[()]]())]([[[([]()([][(()())][([()(([[]])[][[](([[[]()][]]))([([(([][]))[][]([])])[]()()[(())]])][]()[[]()])][[]])])(([])))][()]((()())())][]([(()[])()(())])])[()])())()](())[[][(([[[[]()]][]]))()[([[()(())][[()([][[[()()[][]([(()())])[[][[]]()[((((())[])[([][[[(())](())]])](()[][])([[(())]][]([][[]()[][[[[((()[])(()))]]()][[()][][[[(((()[]))(([[([()])](())()]()))[()[([][])]][])(()[]()([]()[[]]))]]]][]][](()[])])([((()))]((())[([(()([])[]())]([](((([[]](()[[]]()))))[()][][[[([(([]))(([(([]()[]()([[]]))[])[]][]()[]([([()])]((([[[[]](((([[]])(([[()([[([][()[]()](((([])()([[[]]][()([([]()([[]()[((([]()))()())]]))()[]]([(([]())[([])])]()([[[]][](((([]))()))[][()[]([[[]]()]([(()(()))][(([()((())([]))()]))[]()[]])[(())()]()(([]()[]()())))([](()())()[[]])[()[]]]()([]((())[[]])()(()())[]([([])][]))][]))()(([([])[()()]([])])))([([[[][]]()][()])(())([[()]](())[()])[]])]()))))(()))](())][[]])()]()[]][]))((()))([])))()())[()][[[([][][[][[[]]]]())]]()[[[]][[][[]()[]]]]][]]][()()([])()]))))))]((((([()[]])[][]))())[][]))]()]][])()[])[]()())][()])))([[([[](()()()(())[][]()[][[((()(([[][][]])()[][((()()(())[]()()))[[]()(([[([(()[([()])[]])](()()))]])[[]][][([])[()[[()(((([][[()[[((([()[([([](()))])(()()()[][]([][[[]][[]]][]))[([[]])][][[]]()]([[((()[][])[[]()([][()[]()[][([[()](()((())((([]()[][][[]][][])([((()))][[]])[][[]()]([]))[(())[()]]))[])[([])]][])]][(([()(())[]([])]([][[][]][])([[[][][[][][[]()]][((([]))[][([]()[][][()][[([[]])()([[]()]())]](([])))[(([]))][]()(())])]]][]))[[]()[]]([])(([]))()([([([])()][])][]))])]())][()]][[(()(()))[[()]]()]])]()))())((([]()[()])))][]]()][[]]]())[][[]()]))([[]]))[]]]]])][([])][]([])[()]()]))([([](()[])(([]))[[(()(()[]([[]])[])([](([][()][])))()([[[]][]()[][]([[]()])]()()([[()][]]()(([()()](([])[[[]]][]))([]())[()][([])](())[[][]()])[([([(((((())))))[()([[[]][]][][])[[[]]]]][])[]()][])][()([[]])[()](())[]]([])[])(()[[[]]])))]]()[[][(([[([[()()][(()[][](([()[[]]])[[((()))]][]))(()[]())[[([(())[[()[()()]()]]([[](((((()[](()[][()[[][]][]][][]))))))])]([[]]()[[[]([][])]()([]()[][(())][([](([[[]]]([])[])))])[[](()[()()]([()[()]](([]([(([[()([])[]]])[()][][])][[[]([[((())([[]]))]](()[()]))]][]))))[](([(())((()(([][(())]()(()()[])))[]))][[[([[(())[()()](())]])[[([(())()[()]])()[][[([[]((((((()())))[[[[]()]]][][]([]))[()[([()([]([([]([[(()((())(([()[[]]]()()[[(())][]])))(()))()][]])[([[()](())]())](()([]()[(([][]()))()[]]((([][]))())))[[[]]][][])[]][()(((()))[])(([][]))])())])[]]])([](())([[[]][]][])))][][[()][]([]()()[[[[[[[]([])[[]][[]](([]([]([][]))())[([()])()()])]()(())[()()()[][[()]][[()]][]([][]()())[]]]]][[]][][][]]()((()))])[()]])][]]()]()(([][()]))([[]((((([[[]](())((())[](())(([()][])[](()())[(())([()[][]()(()())]()())]))((([[]]))([]([((([])[][([([])])[[[()([][[]][([[]][][]())()])()[()]]](())][]][()([[]()])[][]]()()([][()()[(()[])]]()))[[]]()[[]()]()[])()(()([](([()[][[[[]]]]([])][([[](())]([]())())([()[()]][[[]]])]))))[[]]([]([()]))()[(()()())]]()([()]))))][])[[[]([([()[[][()()[]][][]]])[](([[][]])((([[[[(([]))]]][[[]][()]]](())[])))()([(()[[(([]))]])(())])())[(([[][[]]()[[]]][])([])()())]()])[[()]]]()](([])))((((([[[]([[]]())[()[[[]]][]()()][()]][[[][]][[(([])()([])[][[][]])[]()]]]()(()[[][[]](()[()[[(([([][])]))([[[()]]][[][[()]][[]([])([])()]])()]()]])[([]([][[[([])][]]([()]()()()[][()([])])]([([]()[()])[([[[[]]()]()[()][]()])[]][]][[[[[()][]([(([]))][])[][[([]())([[][(([]))[[]]]])[][]]()(([])[([])][])]](()[])]()()()][[]()()((()())[][]()[[[][]]])]])[()[]]())())(())]()])][([]()([()[]]))][][([]()[[(())[]]][])()[]][[((()))()([])[()]()[([])]]])[()]))((()[][()])[]([[[([(())][[][[]]](()([([])]()))[[]])[][()[]]([]())]]]()))[()][[[()]()]([](())([()][][])()[])[]()][][[]][]))))(([[](())])))[]])][]][[][]][]()]][][])(())([[()((()[[()[]()]([])([])][][()[][]()][([([[]])])][[[]]()]))]()[]])(())[()])[()]([([][])()[[]()[]]]())[[()(()([]))()[[()]]]([])[]])([[]])]]))]]]])][][[]]][][]()))]])[([[][][[[()([])]([]())]]()()[]])][[]][]()]([[]]()[])[[()[[][]]()()()([[[([])()]([()]([([()[[]([][][[]()])(()([])(([[][[((([]())))](())[[[]][]][]][]((()[])[[]])])[()(()[])][[]()]))(([]((())([][[]](())()))()([]())()((((()[]))[()])[()])))]]())()])[])][()][][()]](([][][]([([]()[[[]([][[[()(()[[]])([][]((())())[][][][()[]()([][])])[][]]([()([])])(()[(()[])])]([(()[[][][([(([]())(([])())()[()])](([[]()]()(()([()])))[[()]([])]([()()]))[][[]][][()()])]][])](([][](([()[]])[][][]()()))[])([]))])()[]]])[](())()[()()([[[]([((()))]((([]))))([])][[[]]]])][([[[()]]()])(()[]())][][]]))))[(()[])()][][[]]]]))[][[([][]()(()[])())[]]()][]]((()[[]][]())[[[[()([((()[]))]())]]((()()[](([])([([])])([()()[[[]]]])[])([[]][][]))())[][(())]]](([]())(())))()][()][[][]]())])[]](()()[((([][][[((([](()([((())[((()[(())()][[(()([(([][[(())][]]()))][]))][(([(([]))[]]))()(())[]](())])[])[](([]()()))[]])](()([]))))()()()))())()]])[[(([([])](([([[]])][(([]))([[][][[(())([[]]()[])]][]])()([(([(([[[]()]])()[()[[(())(([](()))[])()][][()([[]])]([()]()[([[(([[(())()([])]][](([[]][()]))))([])[([[]]()()()())[](()[[]])]]])()]()([][])[])]][]([[[]][()[[]](()[[[()[]][]]])]()()()](()[])))]))[]][([])])(((([[]]([()])()([])))[[]]())([])())]()))[[]][([([[[][]](())])(()([]()([][()])))]([](())()(())[()][][])[][])])())((()))[[]()[]]]][([[]])]))[[]]][[]])][()])()(())[])[])[]()()]]]([(()())[]([]([()]())[])])]])]](()[[()][]]()[()()(([()[[[[]((()))]][()]]]))[([()()[[[]]]([])])(()()[]()([[][](()())])[()]())][()(([][])[])([[[(())]]])]])][][])([[[()][(()(()[][])())()[][]][][][][]([[][][]][]())]][[([]())]()[()()][[][]]()[][]])]]]()(()()[]()[]())))[[(([[((()()[[][][]]))([[](()(([[[()]]])([[]])[()[]([[]][[[()(()())()]]]([()()()]))]()))()][[][[(())](())[]]()])]()]))]]()()[[]]]]()])[]]]]))]())][]]](())())])[()[][]([]()[[(([[]][]([[]][[[[()[[]][]()][()]]][]])))]([])][])()[((([[]()])[])())][]]((()[(()[()((([])(())))[([[]])[([]())[]([][][](()))[([[()]()[]([()][](()))])][]]]])(([])())()]((([()]()[])[][()])(()))))()[[]([][](()([()[([[(()())]([])])()]]([()[]()][[]])))[[(([[[()()()]][[]]])([][]))[]]()]([[]]([](([[[]][]]([[][]]([])(()))())[()([([])[[()()]][[()(()[[]])]]()]())])())((()()()([][[([]()()[[]()()[[]]])]]())[][]()[])))[[()]][])]])([][()()()([[[]][]][[([])][([][])[]][]([]()((()[([])[[]]][([()[]()])[[]()[[]][]]])((((()[()][[]][]))))[]))])])(([[]][()][()[]])([()])([])[])]](([[([])[][([()])]([[[]]()()[[]](([]))]())([[]])][[][]][][[]]()]()()[(([])[[]])][]))[]]([()]))([()](([]))()[])[([[([][([])]([]))]]())]()[[(()[])]]]()([[]])][])))(([[[[(())[]]]]])())][(())()]])[[([[[[[]]()[[]((())(([])))[[][()[[[][[]]]]]([([()[()][][](())])[]()]())([[]][])([()[]][[]][((())[]([]((([]))()))[(((()[()])([][])))([]([[()()][[]()[((()))](())[]]]))()()[()()]][[[]]])])([()[([([]())[()]])()][]])[()]]]]][][[]()]](([][])[][[([][([()()][[[[([(())]())(())]()()()]][(())]])])[[]]]([((([]))[])]((())))()]))[((()))]][]((()[]))])[[]](()[(([()[()]]()))]())(())[]()[[]]([])[][()](((()((([])[])())([])[])([][()]))()([]([]((())[])((([()])[][[[]([])()][]])))[])([[]]))()()[]((()[()]()[]))(([(())()])[])[()](()[()()[]()()[]])()[()()()][()][[]]()[([]([])())[()](((([])))())()[]][]()[[([])]][][[]()](())()([()][[[([()[]()([()[]])[]])][]()]])[[[][]]()]()[]()(())([]())()()()([]([]([]()()([]()[])()))()[])([(([[[][]([][])([][]()[()]())([[]])[]][]]))(())()][])[][[[[][]]][]()]([[(()[]()())]([][()][([]()([[]][])())[]()])][])[]()((([(([])[](()[][]))]()[([([[]](([()((()))([([][[()]]([])[()])])[[]](()[])[[][]]])(()[][[]])[])())]()[[]([][([])([()()(())[(([(())[()([]()(([((([[[([(()([]()[[][(())][]][()][]())())()](()))()(())()]][][[()]()](()[()[(())]][])[[]]]))[]((()[[][]])[[]()()[]([([()[[]]])[]()]())()])()())]))([][[[()[]]]](())))[]]()[][]()[((())[(([([])[[](([()[[]()()](())]())[()[[][]]]([[]([()]([()[([][[][[(())][](())]][])[()]]][]))([](()))][][]))]]([()])()(([()[]][][]))[])([[[](([][[[]]([()()()()][])](([([]([])())]()))[][]))[]]](())[[]][][](())[][]))][][])[[]]]]([][][][][()][][()]))(([]))[]([[]])(()))()[[]()][]((()))(()()(()())[][()[](((()))()[[[]([[]()]())][((([])[])[[](([[()]])[])])]][](((()()([][()()]))[(())()()()(([[[()[[[[]()]()]](())[()]]()][()()[[]]]][([](((()([]))())(()()(()[[()()][][]]))[[()[][[((([[]]((([[()[]]]()[])[][()]((()()((([()([()()][()][])](()[]))())([[()[]]()]([()()]))))[[[()][]((()(())[[][()]]())[]())[([[]([[][]])]()([]()[][])[])()([[[]][()()()][]])](())]][])([])[[[]([])()]])[()[[]()()]]))()(())))]]([][[([[([])]])]])]((()(())))]))])([]()[]))()][])))])()][[](())]([][()([[[][]]]()[][])][[()]])()]())[()][]])(()())]())])([()])[]))[]()[][[]([[()([[][][()[[]]]])[()]]((([[[]]([][]())[][([])[][][]()][][[()[]()[][][]]()]()()[]]()[]))[[(([[]([])])[][[[[]](([(())([])][])[[]([[([(([(())]))()])([][[()(((([()])([((()))][][(()[([([([]([][])(()))])])]()()([]([[]]()[[]])))[[[]][]]()[]]))))[()[]]]]())()][]()[[(()()[([](())[([(())]()[[[][()][]]])])([()]())()])[([[]]([[]])()([][[[]([()])]][])())()]]]()])(()[()]()[()])[[[][[[]]()(())[[]][]()[]]]]()]([][(()([]))[()][]][[][[][]][]])([][][])[[][][[][[]([[]]())[](([]))()][]()[][][]][]()()])]][((()()())())])]])])]([(()[])])[][][([[()][()]][](())([][][[[]([()([])])()[](())[()[]]()()]]))]()[(())(())()][()([])(((([][([])()][]))())())()][[[()[]][]()](([]))]()[]()()()([](()))(([()[[]]])[])(([([])[]][[([])[]]]))([])()[][[([([]())])([])]((([]))[])][()][[[][]][[][()()[[]()]][]]][]((()))([[(([][([])()([])][]))]])[][]()()()[[[([()[][]][])][(())[((())()())([[[]([()][(([]))]([]()((()(())([]()[[]]))([()][]))[()((([])[]))][]))()(())][]]([])([[()[[]]]()[]()()((([[]])))]((([]))(()))()))][[[]()[]]([][]([()][()]))]][]](()[(()()[()][])()([])][[([[[[]][[[[]]()][[[(()([]))[][[[][]([(([((())(([][]()(())([[[[[]]][]][]()]([]()[]))([])([([([[]])()])[][][()](()()())][(()([[(([[[()([]([[[]]]))]()]([[]()()][[][][[]()]])((())[[]()])]))]((([]))()[]()())[](())([]([(([])(()))]())(([[]](())[[]](()[[[]](())](([](()[()]((([])[])))(()[([])]())[][()]))())[])([()]([][[()()]([[[[()]([()])](()[[]()][()]([]))]])])[([[[]]])][])(()[][]([][]))()[][])()(()()[]))]))])())(()))[()()][[][[]]]([()[]][()]))([][])(((()[][]())()))([[][]([[]()]())(([]))[]])[]()][[]()([])[]])([]))[[]]][])][]]]([][])](([][()]))][([](())([]))[([[()]][()()](()[][((([])[])[])][]))[]]]]]()][(())[]])]()])[]][[]]()()()()[[]((((()))([[]])[](([([])](((())()[[([()][[[[[]([()][()][([][])()[]])]()([])]]()[(([[([])]()[][]()[[](([]()[(()[[([[[()[]]][()[]([[][]]([][[][]])([](([()([])[]][])(()())))((())))]])]])([([])(([()])([]))]())])([]()()((())))[[]][[[]]])]])()[]())]])()]]))(()[[]][]()())[[]]))([]()[])))([[()[]][()]])][()]([(()((()()([[](()[([([()()[[]()[]]])[((([[[[([])]][()]]][(()([]())[])[]])[()]))]()[()()]]((([[][[][]()]([][()()]()[][()()()[(((([]()[[]([][[]])[]](())[]()[[()][]]())))[[()[(([(([()()][[[()[()()]]]]()[])()())[()]][()]))[]][[][([[()[]][[[[]]()]][[]]([(()[()])]([[[[]]()[][[[]([][][][([])[]]()[](([]))[()[][[()]()[][()]()](([[]]([][][]()[[]][])))])[]]]]])[])[[]][](([([]())]())[])]([[([][[]])()]()])(()))()][]]([()([]((()[][([([[]])([[(()()[]()()[(([()]))([[]][]((()[])[]))])]])([][()])])()])[[[]]([])](([()()])())[][([])]))][](())())[[([])]]]])][][[][[[()[]][[]()]]][[(())]()[[()([])]]]()]()]())]()([](())[(()())])([[(([])[](([])))][]][])))([]([][])))())]())[[((([[[(())[]]][([[(()(()(()[([[[[[[[()]][]]](())]]((()()))][[()[[[[[[]]][]]][]()(()())]]]((())))])))[]]]([])[]([(([]))])()())]]([([[]]([([[(())]])])[])()]())))[])][()(([([([])])[][([]()[]([(())([[[]]])()(()[])][[(())[()]]]()))]][]([[]]))([[[]]][]))[([][])]((()[][([(([[[][]]][]))()()])(([[]])[])])()(()))([[(())]]())(())][()[]]()][][(())[(())[[]]]]]))))])(((()))[])([](()[()][()]))[]()()[][[((()))()]()()()[()()]()](()[])[][[][]][]([][])()()[[]()]()[([])][]()[()[]]([(()())])([]((())))()()([]())()[][]()()()[([][(([((()))][]))(())()()][[][]()])]()()()[[][]()]((([[]]((())[(()[[]()])]))((([])))))(())[][()][[][]()][][][][]()[]()[]()[([[(()[([][][])([])])]()])[[([(())]([][[][[]()([([[((([]([][]([[[]]])())[][()]()())[]))[][]]][[()[(())]]])[]()])[[]()([[[]([][])()]])()[]()][(()())([])[(((())([()()])))]]]][[()[]]([])[]])[])([()])[][]]]()()[(()()((())))]][[([(([]))]([[([((()[[([])[][[]]([[[()([()][])()]]([([[()](([((()([(([()]))[]()[]])[])[])()][]))[]])[[()]](([([])[[][](())]])()[]([]([()][])[(())()()()])[][])[[([])[[[[[]]][]]][[]]][[(([]))[()[[[()[]]([([()[[()([([])]([])[][()][])[(())[][()]]]]])]())]]]]](())()[([[]]()(()))(()((()))[[[][]()[]()]([()][((()))([[([])]]([((()[[]][([[]])([((()[([[]]([((()))[]()])()()[])])())])][])([]()))()[(([][[()()]][][]()))]]()))][()])][][])]]]())])]]))])]()]))()[[]]]][](())()()()[][]([])[][]([[[[]()[]]]()])([[()][[()[([([()[()[([])][[[](((([]))[](())[()[]]))([[([])]([])()])]]([()])(())()]([[[](()[[(()[])()[[]()()()]([])]])](((([[[]]()]))))]()[[()()]][[]([[](()[][](([[[()[]()][][][()](((())()[()()])[[]])][][[]](())](((()[][[()]])[([[](([][])(()()))])]))[][]()[])[(()[])])([])()[()])])()])[]()])([])][][][][]([]()[()]())[[[]]](([([[]])((())[([][([][()][][])[]])[[][()]]][([()]())])])()))()[()]]]]][()()][[[(())(()())[]][](([[]]()([][])[[(())][]]))]])(()[])[[]][[][]]()([[[]](())][()][])()[[]](()[])[][]()([([]([][]))[()]])[[]](())[]([[()()]][()[]])([[]([()[]][[]][[([](()[][[(())()](([][]))][()])[][])()]])])()[]()[]((()))([([()][[()]][](()())[])](()[()[[](([[][()]])((())))][]]()))(([[[[][][]()][][[]()()]()[([()]()(((())[[]](()[()([])[]][()])()([([])])[[]][]))([]))][[]()][][]()]()(())]((([([])[()[]()]()])[]()[](()[()])[()])[])[[[][(([](())()()))][[()[][([][][])][[]]([()]())](([()[()[]()(((()())))][()]](()((())))[][]))][]][]][()([]((()()))[([]()[([])](())[([(())][][][]())()[][((([[]][][(())([()[()]][[][()]([([])])((())())]())()()][()]))[]((()))[])]][](()[]([])()())())])])[[]((([()[]](()[]))[]))(())[[]]]())[]()()[(()[])[](())]((())[][()])()[][(([[]]((())())[])[](()((((()([][][][[[]]()]))[()]())[[[[][](((()[][]([])[[[]()[()]()][][]]))[](())[()()(())][](([][]([](()[])()(([]([[[]]]())(())[]((([][][]))())[[][()][[()]](((())[]))[]][[[([])]]()()]()))()))))[]][[()()[][]([])]]][[[()[([[](())(()[[()]([[]])])[][]])[[()][[][(([][]))[][[][][()]]]([]())]]()]][]]]((())(([()])))]())([][()()])([]))[]))]([])()()()[[()][([][](()()(([])()[[]])[[[[](()[])[()][]]]](()())()[()[[][]]]()([])()([([(())](([(()[][[((([[]])))]](([])[[]][][]([])()()([](())))()([](())[]()))[[]()]])()[[]()[]()([()[]][])(()[][([[]])[]]())()[[]]()][]()()()))[]]([(([()][[()][()][[([(([[()]()]([])([[]][()(([[[()][][]()]])())[(([]()[]([][]))()([()])([([][[[]]]()[[][]]())])[[()]])([([()[()]()])([([][](())((([]()[][]()[[[[()][([](()())([]([](()))[])()(()()[([([([[][][()()]])[[(()()([][[[[][]]][][]]([()])()())[[[]]][][][])[()]][]()]]()[[[([][])]([]())[]]])]())]())[([[][()()]])[[]][]])]]([()()[[()()()]]]())()]([()])](([[]]))[])[]([])([[]])([[](((()[][][]()())([()]()))())]))([])[])[][])])])(())]])([]))())([][]()[][]())[[]]])]]]((()()))))])([[]]))()[[]([][])][])(())(())())]](())[()][[]()()][([()()[]()[[]]][])[([()])[()[](())([([][()(())()([[]]([([])()][])[[](([[[[]][]][((([[]]()))[()])([([])][]([]()[]))[[[][]([([[]])[][()]])()]]][]((([])[((())[])])(()[]))[]]))[]][](())())])([[]([(([])[()])[][[[[()]](())[()]()(([[()][]])[[(((()([])[()[]()[]]([][[(([](([()()][[][][([]([]))()()[]]]([])[]()))(([([][[]])][()[[][[()(([]([()])(()[(())([[]][(((()[[](((([])(([()[([](())[[[]]])]([][[][((([])))[](()([[()][[][][[]]([][()])]([[()][]()])[()]]))()()[]()]]()[()()[][[()()]]]((([]))[])[])([[]()[]][][()[]([])([])[]][[([()])[]([])((()[()][])(()))]()](())(()))][[()[()]]][])[[]]()([()][]())()))([[[]][[[]]]][[(()(()((()))((([(()(([]()())([[]])))[()()()][]])[[()][]])((([]()))())([][((()[][])())][()][()[()]])))[[]])]]()([([])[]])())(())()[]([])[][((())([()]))()()([([[][([()])]][[()]]())])]()[[][([[][][()]])]]()[][()()([[[[]()][()([[([])[[([()[]])[](()()[][([([][])(())][]([[[([[]])([[[][]([](([[()[]([[]])]])()([](()([()()[]([[][]])[][()[[()]()]((([](([()[][()]]()()))[]))())([[]][[][]]((([](()[])[[[](()()())[[[[]][[]]]]]])[[]()][[]()[([(()[(()[[[][[[()]()[]]][[()]()]]()()]()[]()(()[]())[[[[]]]])](([(()())])[]))[]][])[]]()])(())))]](([][([])[[]()[][]([][([[()[][[()()[]]()((()((()[])[][[([])()()[[[()][]]]]]([[]([][()([[][]])[[[]](()(())([][[][]]))][[]](([])()(([[[()]()][]])[[(()[])]()()[[[[]]()()]()][](()[(())[([[(())]])()]])]())[][][(([[[[]([[]][])[[[]]]]]]))])][[]][])][[([]()[(())][])]()[[]][[[]]]([[]])])))(()((()[])))[])()][()]]])[]])(([()]))](([])[()])]))[])[[]()[(([][[]()([[(([()])[[]]())][([])][]([(())][()][][])])]))([])[(([((()))[()(())][[[]]]()(((([][[[[][[[()]()]]][(()(()())[([](()))[()[][[]]()()[((())())()()][([([(())[]][[]()][(([][[]()])[[]])[]])])]](([]))][]())[()]((()()))]()[]]]))))])(()))][][[()(()([(((([][(()[])[][][[]]])[][]((([][]))))()[][[][]]()))[][][([(([]))])]])([([][()][])]))(())[][()[()]()]]]()([[]])]()](([][])[[([[]([])([][])][])([()][()](((()(()([])))())())())]])()))[]))]])]]][[]((()))][]()))(())()])()]()][[][[]][]]]])[][[][()[][[[[]]][][][()[]]]]()(([[([])[]][]](()))((()))(([()][])[(())()])[][])]]()[[((())()(()))][()]]](()([][]))](()[[][]]))[]][])[[]()][[[[]]]])]())[()]))]([]))[()[[][][]]]([[]])[]()()])()[])[][[]])](((([(()[([]()[][[(([()][(([()[[([](([])[][[]]([[]()])))[([(()(()([(([([])]))[()]])([((()))[][[[]()]]](()(([[][[]][]([](([()[[]]][][()][()[([][()]([]()))]])())())]([]())(()))([])[[((()([()]))(())())]](()()[()][()([][[][[]]()])[[][[]]]][]([[([()])(([]()))]([][()()[()]])])[]())[[[]]])([])[]([[[][]]()[]](([][([][[]][]())[[()[()][([](()))]]][][]]([]))()([](())())))()()())()[[[[[()]([()[]([]([]))[(()[[]])[()](()()(()))]()]([[[][[][[[][]()()][]][]()([[[[]()]](([()[()(())]()[]][])()[][()[[]][()][]])[]([[]][[]][])])]]])[]()[[][]])([]()())()]]()[[[(())[]()[]][[]()]]]]]([()[[[()]]]()][])[[[()[]()][[]()([([([]([()((()([][])[])()())[[]()][(()[])]()()([])[()[]()]][()])([]()()))][]([(())[([])(()[])[]]]()))[][]][])][][][[]][[][([[]]()[])][][([]())][][()][(()[([]((([[[[]([])]]]))([[[()]([[[([[]])]()]])[()]]()[]])))])()[]][]]]]())))[]][])()]][]]])())([[]([])()()[[]]])([]())]()[][[]][(())][((([[][]]())()()(()[[]]))[]([(([[]]()(()[(())](()[(()[([[()()()]][][])])[]()])([(())[]][[[]]][()[]]))(()))[((()())[][])][]([]([])[()[()]]()[([((()[[]]()(((([[][]]()[][([])[([[()[][][[()][[]]]]]([((()()))]))((([]([]((()())()()[()][]))()(()))))]])()([([[[]()()]])])))[(()())[[[][][([])][[[([[(()())(([][[]])([])(()([()])))](())]())]]][([])]][[()[[()]]]]()()()()][]]([([()]()[]())(())([([](()())(((())[]))[([][])]())()()[[[()][]][()[[]()]()[[([(()[[[][(([]))(()[()[]([]())][[]]()[()[][][[]([])(()[()])(()[][(()[])((([])[])()[[][]])])()[]](())[][]][()][[]])]()[([](())[()])][[][[[][[]]()]]]]])][])]]][[]()((()([[]])))()(())][[][(())](([[]](([()])(()()))[]()()([([[[()[][](([(())[]()]))[[]()(([])([[[()][()]]()([()()])]()))()()[]]([][[(())]][])]([])]])][])([][])[][][[()][]([])]([([][([[[]]([[[]][[[][][[]([((()[][]())())])[]]()[[]()]()()()][]]])()])])])()))[]()]]]())[((([()]))(([])[([]())(()[()])()([])])[()[([]())()]])(())([[[][[]]]])[]]([((())[[()]](()[])([][]((()[[]])[()][]()[][(((([()[]()][((()())[][()(())[][[()][[]][()([])]]])([[[](([][[][([][]())][[(())(())()([()][])()]]])[][[()()[[[()]][][][][[][[]]]([[()]([])])]]]([[(())()([()(([(())]))])]((()[(((()([]))))][]()([([[([][[]()[()](()())])()()][[([[()]][])]]])])))])())]([()])][(())])])())))[]])))]()(()([[]])([[]((()((()((([][[](([]))()[]][[]()([[[]](())])]()[()[]()([([])][(()((()[][]())[[]][]([[]])()()))][])])))([[]])()[[[[()(([([(()((([])[[()()()[]]])[]()))[(()[[[[][[[[[[]]]]]()][][[]](())([]())]]()])(([(()()()([((()))])[[[]][]()[()()]()])([])][])[(())][]([]))[[[[()[[[(([]))([][]([[]]))[][[[[()[]]][[][]()](([])([[]])()[])]]([()][[([()])]][][])]]][()](([()][([][([])[[[[][(())[()[]][]][][][][]]][()[]][()[]()()(())](())][()][([]()()[])]]()[]([(([(([[()][[]][(()[](()())(()[()](())()[(([([[]]())[[[([])]]()]()[]()[]([(()[([()[][()[][[(()[([])[([])()]])[]](([[]]()[]))[[([]())[][(())[()][[][][([]())]()]()]](()[[([])]])[([()][[[()[()]]]]()[]())[[[]()[()]()]][[[]]([])[]]()[([])][]()]([[]()]())]]](()())])(()[()])(([]))])([][])[]][]())[([][[][]][()[()]])[()[]][[[]][]]]][[](())](([]))(())[])([()[]][](()()[()][])))]()[]))[]]])[[(()()([()()()](([])[])))][]])](()[][][()])))][[]()])())]()(())[[]()])()())][][[]((()((()[()()[]])[][]()()))()[()[()]()])[()]]([[((()))]()])[[]()()([][])](((([([()])]())((()([])()[[]])))))](())]]][(([][()])[()])()(())][([()[]])]()])()(()()())]))[([][[[[[]][[()()[]()([])()[()][][()][[[[[]]()([[()([()[][]])[[[][[]([(())])][]](()[(()[][([(())[]][])]())(())]())]](())])(([]()([]))[])][]()(())]()()]]]()([[[]()[(())][]]])][[[]([][[[(([]))[([][[(()[])]()()[(([]([()][(([[]]))])([])))]])[]([()])]]]][]()[[](())[]])()][]]](()[[[[]]]])][])[]][]()]]([]()(()))(([([][](())())([[([[()][]()()])[][[()]((()()))[[(([]([([[()()]((()))[]])])))()]]][]]](())([[()[()]]]((([[[(()(()([])))][[[]()][[][(([][(()())]((((()))()))())[[][[()]]]()[(((())[]))](()))]][]()()()[([()[]])][[]][]]]])[]()[]()))))[()]]()))]([(((()()))[[(([([[]])()[()()[()]]])[(([]()[[]]))][])[](([()[[][[[][[[[]](([()])[[(()[[][[([][])]]])]][]([][[([()[]][](()(([][]()[][][][][()[]]())[][])(())((())[[](((())[([[[]]])])[])[]][[[][[]]]])))]([])]())([()][]))]]][]]]])())]]())]())]))))[]])([()()])[[[[][][]]()]][][[[([][]()[][()]()[])[()]([])[()[()()]][][()]][()]][[]]]()([[[[[()]][]]]][])([[]][((()))[()]([[][[()[[[[]]]](()())[()[()[]][]]]]])()()][[]])(()))())()][][][])))(()))()]([]))(([]))()][][()(([[]][([[][()[]([])]()[][(()([[[]]]))]]())[([])]]()[]()()))[()]])[])[()(()([][]))]])[]()[](())())]([][()[([[()][([((([(([](()([(((())))()][()[()]]())(([[]]))[[][][([])(((()))()((()()()(()))([()])))]])[])())])))])()[]]])]])))]][])[]])]([]([((([]))[])](())[])[](([()]))[][(())])[][])[([])([])(()(()(()))(()))])[])[()])()(([])[[][()(()[]())[]]]()[((([()][][]())[[([])]]()(())[()][[[[]]]][()[]][()[][][((())[[][[([]())][([])]][()((()([])[[]()][]([][[[]]])))]][]())]])()(()(()[][[]()()][[][[([])[()()[][]([[][[()()]]()](()))[()[]]](())]][[[[([()])()()[][]]]]](([][()])(([]()))[][[[[[](([()([])]))()[[]()]]]]])])())([]))]([[]()]([])(()([()()][](([](()[[]][[][]()[]][[([])]([]()()[()()()][]([](((()()())()([])(())[]))(([()[[((([]()([]([](([])[[]])())))()))()]((()[[]()(())]))(([]()))((()))]()[][][(()[][[][]]())([])][[][]]])())))])))()))))[[(())]()]][]([])[[]()()[()([]([[]()[()([[[([()()])]([])]])([]((())()[])()[()[[]](([])[])[()]][([[()[[]][]][]([][[[[[][[]](())([][][()]()[]()(([]())()))][][][]]]](([]))[])][][[[]()](([[()[([[]])]()]][()[]])[()][])])([])()][])][][()[[[[]]]]]]))([]([]))[()]]([][][]())([][](([((()[[]()]())[][])]([[]])))()[])][[[([([()][[[]]][[]][])(())[[]()]([]()[[()]]())()](([[([[]]())](()[][])([[[]()]()[[()](([[]()([([[[]]]([][]))[[]()]][()(((()[][][()(()[[()]])[[[([()])(([[]]([]))())]()]()]]))(())[[()][]][][[]])((())[()])[[]()()]])()()]))[[]][]((([]()[][(((((([[[][]([()])[[]]]()()([[][[]]])])()(()()))(([])(()[[[][]][(([]))()]])))[([[((()()())()[])[]][()(())]])][[]](()())([](())[()()]()))))])))[][]]()][[()[([[][]()])[]()]]](()[][([()[[([()[][[[[][][[]]()[()]]()]()[]]()])(())]]]([((()))([])](())))()]([]))()()()[[]])])[([([([([][][])[][][[](([[]]([])))][][]])])][(([]))()])][()]))([[()()][()]()])]](()[])[[]()][]](())][]]()))))((()[](()[[](((()[][()])))((([])[()])()[]()()([((([[([()])[[[[][()([[](())([[[[]((())[[]()[(([]))]()(()([([()[]])()]))][[[()]([[]]()(([[[()[()()[[][(([([])[([[[[]]][]]([()[]([](()(())[[(())][[][][[][]]([][][][])[[()(([][][()[()]()(())]([])()()[[]]())())]][][[()[]]][()]]][]))])[])]])[((([][]([[][()]()])()[[([])()([()(([]))()][[()][]()()]()[])()[()()((()([([()[]])]))())][]][]][])()))]([[[[]()[(()[[][()]()][[][[][]]([([[()]])]()[()[][[[(([[]([]([[]][([])[]]))][](())))]([][])][[]]]])])()([[]([((()()))()()(())()][])][([()])])]()[[]]]()][()]((([]([[]][([(([()(())]()()))[][()][(()()())]()]())][[[](([]))]][(((()[([(([([])()][()])[()](([([]([[[]]]((([][]([][([][[][[](()())]][])[()[]([])([[][]][])]]()))))))]))[()][])])[]][[[]]][])[()]))][][])))[()][][()[]][(((([]([])[[[][][]]]([[[]]]()))[()[]][])[][]))])([])])[])([])]()(())[][[]]]([])((((())))())]][(())((()()()[][()[]()[]]()))]]][([()]([[]])()[][])[[]]][])[]())(([][])[])((([]))))([])([()()]()([][()]))()()]])]]])[]()]()[][]()([[[([][([]())[()]()()([[]])][])(()(()[]))()[([([])(([])[])][[[][([[]()[]](([()[[]][]()([[][]][()[]])()])[[](([[]()]()[]))])[]([]))]((([]((()())[]()((()([]))[])[]()())[[]])))]]())[()[]()(())()[()]]]][](([][][])(([[[][[][([])]]]])()()()[([]([]()[])((([]((()()[]([]))))[])((())([[()]][])[()(([]()))])(([])()()()(((())()(()()[()]))[(([])[])]()[]))(([][[][]()([])])[[()](()())](())))[[][]])()()]))([()(([([])()[([][]())]([()][()[([()[]][([[(()[[()[][[]][([])]]](()))()([()][])()][[][(()([]([((()))[][]]([])))[]())]()(())([][((([](([]((()[[][[]()[([])][[(())][([[[()]][[(())()([[[]]][()[]([])()][]())[([[(([])[](())()(([(([])[[]([[]([]()()[([()([[([]())()](([][]))([])[]][](())[()([[][]])[]][(())][]()([()[]()[]([]()[])]))[([])[([[[]]])[][(())]]]])()[]])[([[([()[(([(())[[]]()[([(())])]]([[][](([]()()[()[]])[]())[]]))([()[][()][[]](()[([])()])][([][])][[]][]()([][()])))([()])]](()))][]](()[()][][[][[]]]))](([])([[][]][[([[][]()]([])())(([])(([]))(())[][][][()])][]])([()[((()()()()[[]][[(())]]([[]]()([])))[()((())(([][[]])))[()]])()]][([][])()[[[]]]]([]))[()[(([()])[[]])([[]](())())[(()()()[()][][()[][[(([[]]())[]())()]]((([[]](()[]))))[[[]([[[[][[]][[]]]]])][()[](([(((()[]())())([[]]))[](([[([[[[][(())]]]]())()][[]](())]))()]))]()(())]][[][][]])][]([])[]]])()])((()(()()))[[][]([]([][][]))])(([((([()][](()[])[])[[()[()][[]][[]][()]()](())]))()[[]()]()][()]))][[]()]()())((()[][])[(()[[]]())][[][][[[()][]]]][]())])))]()])[(([[()[]([]([]))]][()[()[]][]([])])[[()([]()())]][])][[()]]([](((([[][]])()[[]]))())[])](([]))[[[(()()()((()([([[]])()])([])[([])][][([([])])]())))()()[[]([][])]]()[]]]()[]()][(([](([()][()([])[[]][][]]())[()[]][][([[]()()][])()([])][()[()][]]))[][])]]]((()())())()[()[]()][[]]()[][])[[[]]][[]([[]([])[][]]([(())])[]())][]][[(()[][](()(([])(([[](())(([]([]()(()))[][[][]]))][])()[])[])[[]]))[[[[][[()][][()][(())()]([()]((())))]()[[()((())[][[[([[[()(())]]]()[[]][([[]])]())[]]][]](([])[]([[]()]()[[([])](([[](((())[][(()[][()[]])]([])(()[()]([]))))()][])([])[]([(()[])[[]]()][]))])))([[[]][]()[()[()](()())()(([]))[[]][]]((((((())[()]())())))([([()][])][[()[]()([[(())([]())]][[[]](([]([()([[]])][][[]][]))[]()()[[][]])][()])](([[[]]([][()]())]([(())[]])[[[()]]([[[]()[[[]([][])([[[(([()]()[[]]))]([][])]])]]][()]]((((([([(())])]))(())[]((((([])))))([((()))([()](()[[[(())()[]][][[()()](([[]]([])[](([[[]]])))(()[](()())([()()]())))([])()[[]]]]])())()]))([[((()))[[[]()[(([[]](())))](([[[]]]))][()(())][]]][](([])())])[]))[])()()][])()[][][][([[]]([()])())[]])]([])([])))()[]][]()[([[[[]](())([[][]])]([([[]][[]])]()([((()([][]([[]][[]])))([])([]))()[]])[]())])[[]()[]()]][()][([]([])())[]])]]]([])]][][[[]][]]][]()]()[]()()()()]][]][([])[][()]([][][][])([])([][][([[[()([])]]()])[[(([])(()[]())())]]][](([])[((([[([](()[(([][][])([()()()]))[()(([])[](([[([]())()][]])[][()([((())()[[]])][[]])()])())()]][([](()[()((())(())[()()[][]])][]())([[][]]([[][]()])()()))]))[]()]])([()][])[[[([[([][])[]([][[][][[]][]])]])()((()))]]]))([((([[]][]))[[(([([])[()]])[()[]()([][]())[[[[[]([(())][]()()[])[([()][])]([])([])()]]]([])[[][[()[[]]([([(()([])()()([(([[[[]]][]]))][([](()(())))((([]))()([[]])())]))])()][])]][]([((()))])]([[]])()]()][[]][[]])[]()[[[[](())()][][]]]]])]([](([[[()]()]]))))((())())[]][]()()))])[()()()]))([[[(([][(()[[[]]])][[[]]()][(([])(()([])((()[[((([])([])[][[][[]([])](([[[]]]()))](([])(()())[([(()(([][][[([][[]([[]]()[])([]())][[[](((())()[([][[()]([]([[[](((()([[]]([(([](([()[[]][]()]((()))))()()[]))](([])()([[]()]))()[([](()[[[([()](((()[](())))()([])))()([()])]]([]([]))([])])[])[]])(([(())][()[]])())[((([]([([()])]([[]])()[]()[()][([])[[()[[([(()())[]]([][][][][([])()()]())())()(())][()]]]]])([]))))]))(())([]((([((()()())[[]()[]])[[]]]())[()][[[]][[[[()[()[]()](()[[()[]]]([])[])]]((()()[()][])[])]]][()])))[])([]))]][][[][[[]([()[(())[()()()[]]]()([])()()]([[[()]][]])[[([])][[]]])][()]]()]()((()(())())([][])))([][][]))[]])(())[]][]()[]))]()[]([])[]([][([][]([([[][]])((()[(()[])](([])))()())]))])[]])[[]]](([([[]][][])[[]()()]]))((()[()]()((())()[])))]))()[[]][])()[[()[]]]])]()))[])[]]([])[(())[]]]))())[])][]([][[]()]()[])())())[]()(())]()(())][](())][][()()[]])[]()())())()[][]())()[])[]()([][[]]([[]]()()[]))[[][][]]][([[]]([[]])(([])[()[]][]()[[]]))[([])]])[[[]]]]][()[()]()[]()[]])][()([][()])[][[[[]]][(())(())(())[[][(())]]]([]()([]([]())()([])))]])]][[()([[]([()][]((()[]()[]))[[[]]][][()][][])][])([]([([])]()[[[[]()]]][])[][])()]()([])][])])[[][[()]]](())()[])])]]))]][]]][]((([[]][[[]][]][()])([[[]]][([])[(())]]((()[])[(())])))[()]()[]())[()[[(()([]([])[]()[])[[](())])]][]()(()[][])]]()()([((())()(()[][][][]))()][()()])])[([])[]]([])[]))]))[]()])[][])[])[([])[]][]]][]())[()([])]([][]))()))]]())]()]][()([(()()([])())[()]()])])][])][()[[((()[]((()[[]]())[[]]())()[([])]))]((([[][]()])()[]))](((([(())(()())([[([]([[]](()(()))[[([]()())]]((([()][]))))()[][()[]]()())]([])][[([]([(()[[[]]])][()[([])()()([()[]([](([])[()]))([](()()([]()[[()()[[]]][]])([])([[]]()[[][()]()[](())[[]([[[]()(()())()]][()])]][()][(([([[]])])[])()()]())[]())[])])]()(([[]])())()]))([[[()(([[][]((()[]()[[()([])]][]))][]))((()(()))[([([][][[()([])()]])])[[()()[][]]](()()(([()[[[]]()]([([])(())([])]([()[[(())]][]]))(([][()])[([]([()()()]))[[][[]](())]])((()))]([])[()][[((([[((()))[][[]]]])))[][]]]))((([])[[()()]])[[[]([()()()])]]))][(()(())[[[(())[]]]][[[()]()]]())]()(()))]]])]]((([[[][]()]][([()[[(())()]]])])(()[[()][()]()[([]())]])))()[]()(()[[([()([()])[]]((((()[[[]([]()(([][])[([][]())()[([])]()(([])([[]]([(())[]]([]()())[[]]())))([()])])())]()()])()[([]((())[]([(()([[]](([][])[][([])[]])(((()([[]]()[[]([])((([([[()]])[]()]))()()[[]([])])([()([[]([])([](([](([([][]()()[([[]][](([])))])][][][])())((())())()))())[(())[[]]([()([[][([(())[([](()()))[[]]]][[]][]((([[(((([(()[])[()[((())()())]]][[()()()][(())]])([()][((()[[[]]()[]][]([[]])()))()()()][]))))]()])()[][](())[]))())((()[][[()[][]]]()))[([()[[]]()])]][[()]]])])([](())[])][][([()])[]][]][][][]()())][()[()]])]))[()])[])))[]]()[][([[[](([(())[]()[()()]()]))[[]]]](([([[]][[[()[(())[]][]]()][]])()[([[()(())(((()[][]))())]])()[[[[()([([[[]][[]]])[(([][]([(([[][([[]]()[()[][]](()([([][])()]())[]))]]))[]]([][([]((())))]))[])())[][()]]])()](())]][()()()]]]][]([([()][([])()][])([]())]))[[()()]]))[]](())())()))])()[[](()[])[()[([(()()[[]])[[[]()]]][]([]))([()](()))][()]]][])[[][]()]))][][()]]()))()][((()[][()])[[([([]())])([])]][])][])([]))[]()))(()(()()((([])))())[]([(([]([]())))][]()[()([(((()[[]]()))[])[()[][()()()]]]([](([])))[]()[])])[]())](()[]([([])([])((()[[()()[]()()]([()()][[][][()((()[[]([[]])])())[][]]][()[]()(()(([(([][[([(())[]])[](([()])[])[][](()[])[()[((()))[]]]]]))([[[]()[()[]]][()]]([])(())[()()([(()((([()[()[][]]][[([](((()))()))()][(()()[[][]])]][(((([]))()))(()[([]())()])][()([])[[][]][]([](()[]))])([])[[[[]]([][])][([][[()]][()]())]])))()]([]))[][]([()][[(()[()[]])(()()[][])[([](((([[]][]))(()[[]][()])([[[()(())][[][]]][[]](([[[]]([])[[]](()(()))])())])[])[([((([()()])([])(()()[])[[[](([]()))[]][(([(())]()))()[]()][]])([[()[][[]]][(([])()[])[](()[])[()][][()(()[][()]([][()(())][][][][()(([[()]][[]][]))[[]](())][()()(())(()[])[][]])[]([()(())]))][()]]]))(())[()[]]])[]])[])(([[]]))]()(((([[]]))))()()]]()(([([]())]))())])[]()()][(()[])])))(()([()][]()))])]))([])[][[]]]()()[()])())[][])[]]][]]([](([])[])[])[[[][[][[]]()]]][[]((([(())]))[()[]()()([])][[()[]]([[(([[((())[])[]]]()()[()]()[[]]([]([(())]()()(()[[[[[][[][]]]][[[()[]()((([[([][[]])[(()[])[][]]][()[()]][]]()([])())([][][[[[][[[]()]][][]()[]][]]][][])())([])())()][[]]][()(())([()[]()])](()[[]]())([[[(())[]]()([([])()()()([]()())]([]((()))))]()(())][[]()[]()[]])]]])([][()])))[]))]([[]()(([][([[][]()]()[[([][])[[]][()]]][])()[[](([])[]([]))][]][])())])[][][][[((([([])]()()(()[])))()[])()]]])(([]))])((()(()()[])))[]()()([]())]([])[][][][()]([(([][()()])([][]))][(())[(()[][])]][])[()([()][[(()(())[])[]][[()[(())([])([])([[][][][()([])[[(())]]]](([]())))]]()()[]]])][]()()[[()]][([])][[]]([[]()(([]()[])([]))[](())([])[[]][[[]]([(([[]][]))])]([()])([()])])()([[]()](()[[]()]()))([][(()[([][()])])(([[]]))])()[]([]())[](()[(([][]))][])()(([([](([])[]))]))[()]()()[][[][[]][()][]()][()][][[][]][([([]()[()])])[[]][[([[]][[()]])]]]([[[[]([])]]([[[()]][()]()((())([[]]((([([()()()[]][])()(([][])([()()[[((()[[]])([[()][()]])())]]][[]][][[][]]()([[]]([]))[][]())())[]][[[]([[][([[]]([[[]]]([([][(([[]()][[]]()))()[[[]][[[(()[])]]]]()[]]()[])[]])([])[()][][[(([[]]([])))]][[[[]]]()[]()]))()]])](()[])])))))[][([]())]])[]][])(())()()([][])[[]()]([])[[[[][]][()]]][][[][][()]][]()()(())[([[][][]])[[][]]]()(()[[]]()())[][]([])[]((()))()()()[][][([])[]]()()[([[([])]])([])]([][[[]][[](()(()[()()()][[][]][()(([])[](([[]]))[][()()()[()]([[][]()()()])])[]])(()())[([]()[])])]])[]()([][][([])()([])[]])()()([[(([][((([][[(())()][()[]]]([]()([([]()[[]])])))[]))([])()()]))][][]])(())[[([()[[[[][]][(([]))(([()[]]))]((()()))[()(()(([])))]]]]([([][])][([(()[])](([()[[[]][]]()][([[][](()[[([])[]]])[([]([]))]])]()[(())](()[[]])())()()[()[(()[])]()(([[](((())[[]][]))(([(()[()])[][[]][[]]]))]([][(()([][[()()]](()))[()()]())()][]))[(())])])[[]()()])([[]([()])([(()()[]())[()[]]](()([()[()]()[]]()[])))[](()(()[]()()[])())[()[((()([]))[]((()[]()()[])[[([[]])[()(([[]]()[]))[()[]][][][[[][]]]]]()()]([[][()[[()]]]])[])()[[(())]])]]][][[([([]())][]())]])[[[]]][][()]([]())]))]](([()()()][()])()(()))([])[()()][]()(()(([()([([]([])[(()[()])]([(([[]([[]])]))[()[[(([([[[](([[(([]))[[]]([][([([])])]()[[]])]()][]))[][]][]]((([([([()][][][[[]]][])([[]])([][((()[]))()([]()[()[][[][][]]]([](()))[[](([()][](((([[]()([[]()()[(())([[][][()([]())]])]()[(([()([]([]))[[()[]][][]]([])]([])(()(([()(([][]))()[[]][(()([])([[]()][[([][[](()[([[()][]])[()][([[]])(()[[]])(([][]))]])])][()[[[(([])())]][()[()(([]([]))()(()[()[]][]())())]()[[][[]()]]]([()][()])(([]))][]]]))][]([([])])][[][]])[[][]()[[]]()](([[[]][[]([[()][]])][][]](([]))()))[])()()()(())[()(([[]](([[]([()]([]))][()][]([]()()()[[]][]))))[])[][]()([])[]])[[][](()(()()(([][[()([])([])][()][()((()[]()))]])[][[()][]])))][[[[]]]][[](())()][([][])[(())()][]([][()]()[][[]])])[[()[][[[()[[]][][]([][[]][])[((([()][])[[()]()])[()()]()()(())[])[][(([[]]()))[()]()([(()()([]([()])([][]))[])[[]]]())[]]([[]])([((()))]())[[]]]][([])((([]))())()[[]([([((()[]([[](([])()()(())[])]([])[]))()(()[([()])]())[()])[[[]]()]]((()[()][()])[[]([(())])])())][[]](([[(()()[][[]])[([])([]())]]()()][[[][][()()]]][]))[]((()(([(())[][[]][]])[]()))))()()[[[[]()][[()[]]()[]][[][]]][][(([]))[(([()()[[]([](()))[([][(()[])])][]]]([()])()([()][()[]][[((()))()[]][()[((()))]]([][[]])(((()))())[]()([([](()))(([()][])([[]]()[])[][]([](((()))[]([([])()[]()()])[])))]([[[(()(())[([])][()()]())]([[(([][]))]()]()()[[]])][[()[((()))]([]()((([[]]([]([((([])[[()]][()[((()))()][][][[][()(([]))[[]()[([])]([][()([[[]([][])]()])]([[[()]]()()])(()((((([])))([][(([])())])()))()()))()[(())()[]]]][][([[[[]][]]](([]))([(([][([()][[](()(())[]((())))[[]]])[([[][(()[]([])()()[]([]))][[]]()()][][[]])]((([]()[[[[][](()[])]][()[(()[]()([([])[()()][[]]])[[][[]()[]()][]])]]])))]))([[[](())[(([[[]()[([])()()]()]][]))()][[[]]]]]()[])[][[]()]([(())][])([[[]()][[[()[()[()([()])[]]][]]]()](())([]()()[][])[[()]()[()[([(([[()]]([]))(())[[()]])])][()]()]]()])]))[]][][][][()()]][]]))(())])((())[]))))())[[()]]((()())))[()][]]()(((([]()))))]]))]())))][][(())]]](()[])[]]()[]]]]()][][()]([[([][])()[][[](([([])[]][][[]]))]]][()])[[(([[]]))][([])[[]][[[]()()[]]()[][]()[[(())]]][]][([(()[([][])()[]]([])[][[]()()][])(())]([()()[([[()]][])]])[[[]]])]]])][()[]((()(()([][[][[[[()][]([[[((()()))][][()[][([([()]([]()()[]))([](()[])(((((()))())())()))[[[()[]]]]])]][()]]()]((([]()))[()()](()))([[][[]][[]][([][])][([[(())]([([])()])()][][]())][]])[])]()[[]]][]()][(())()]])[[[()[]][[]]([()([((([()]([()][()]))[]()))])])([[[[(()[(([[][][[][()()[()]()()]]])())]([[()][()[][(())][]((()()([([])]))()[[()()]])()]]([][[]]([]()[()]())()()[][()[]]([[[[[[[]]]]()[[()]][]][[][][][([([[()()[]]([()][()[()]](())[][][()])])])]()]]()]))[[]([]()[(([])[])])()])()()())]((([[]]())[((((([(([[]][([(()())([])([()()]()[()]([]))])])[])])[[](()[][([[]](([]()))[])](([[]])([(([][])()[]([()()()[[()(()())()]]]))()[(()[])()()()()()[[[]]([[[[[(([(([([])()[](())([([])][]()(()[][][(())])((())([])))()])())](([])))[])]]]][[()[][[](()[[]])]([][()(())])([])[()()[[(([][](((((([[]]))[]([[][([])]()][]())[]([((()((()()()[()[]([[][()[][(())]]()[[][]([](()([](())([])[])[[()]()])[])([])([])]])])))(([(()[[()[]]])([])])[][[()][[(())][][]]])[[()()[[[(()[])(([][()][[]()]((([])))())[(()())[()]])]()][[[]([])](([(([[[()]]]([][()()][])))[()()()]]()))[](())][(())([]((((()()(()))[(([]()([[]][()][[][][]][]))(([][([[([[()]()()]([()[]][[][([])]]))[[]][[]]()([[[([((()()(()))[([[[][[]]]]())([][(([](([][(())[]][(())](([[(([([])]()[()])(([][]())))()()[[][]]([][[]])[][][[([[]]())()[][](((([((([()(()[]((()[])))[]])[[()[]]]))])([([][[][(()[([][][][()])[]((([]()[][[[[()[]()(([]()[][[]([])]))(())([()][[]][()([][()[[]][[[](())()]([([](([(([]()[][]([(())[](()()()()(()[]))])[()[]]([()[[([[([[[[]([[][[]]()()[(())][][]])([][[(([((())[[()[]]])])[][]())[][]]]()()())]]]()[[()]([](()()))])[(()[][])[][[]]]]])[][][([](())[()])]][([()[()]])[()([])]]][[[()]]][]]))[[]][])()])[]))]([]()(()())()(()))([])[([][(()[])[[]()[[]]]][[]])][]()()([(()())[]][[][]([])([[()]([])])]([]))[]([((([][][])([][]([[]])))[()]())]())()[]())][()]][()()([((()[][]))][()((((()((()))[]))([][][(())])([][]()()))[()()]([])[])])]([]))]())][()()[][]]][](()[][()][[][]()]()[](([]))()[]()([][(()[[][()]((([]()))[][]([])())][])[]][])[()(())][(([])[])])]]())[[]]))([]([][]()))][()([]())])([][()[]]())][][[[][]][(())([()[]][](()()()))]]()])])[[][([()])[]][([()])]][][[][]([(())])]((([()])()()(([()()[()]])[[[]()]][[()(())]]())))(((())([()])([][[()()[()]()]((()[]()([])[()()]))]))[[[]()[[]]()()[]]([])[()]([])])())))][][]]]]())()())))[]([[()[(()([[]])(())([[]]((())))(()[(()[])()](()[][])[]))([(()[[]][()[]])(([][[[]][]]))[]])[]()[]]()]()([])]([]))())(()[[]])[(([][][([][])]()[()([][])])(()))][[]])]())])])()[[][()]]]](()[()])[()((()(())))][[[]]][]()((([]))[][[[]]]((([(())]))))])()](([(())][][[[]]]([[]])([][()[[[]]]])[[]]((()([][]())))[[][()]]()))[[]([][(()[[[()]([][[[[[[(([]))]]]]]][]([])())[]([])([][][()[()]][(([]))])([[](())][])()]]()()(()))(()[[()[]]()[]()()][]()[])](([])[()[([()[[][][[[]([]())(()(()))]][][()[][[([([()[]])])]([(()[[]()])[][]])[]]([[[[()]()][[([][]([])[]()[[(()[])()([][([[]((([]())[(())()[[]]]((()(()))()[][][][])))][](())[[]]((()()[[]]())()[((()([][])[])([])(()(((()))[[]]))[]([[][([]([])()[()]()()[](()))(()[[[([(([])([][()()[()()][]][([[]][(([()()[[]]]()[()([]())[[]()()(()())()]]))])(()[[]])]([][][](([([])()])))())[][][][][(())])()][])[]()][]]()[]]([()]))]()])[[]])][][[]]))[][]]([[[][[(([]()(([[]])())([][()()])))]]()]]([](())))(([][([][(()[[(([])[()[]][][])]()])(()[])()([()]())[][]()[]()(()([])()[(()[][])([])[]])]([]))([[[]]])]))(([]))()[((()()[]))(()(()[()(())[[()([([[][()]][[][][]])()[]()[()()]][]([]()[]))()][()()]]][]))])[]]()(())[][]])]([])()]()[()]]])]]])[]([])[([[[([()])[][]]]])([][()(())][[[][[[]]]]()])[][([][])](()[](()[]())[[]()(()[])])[]()()]()][[]]()()])(())[[]([][[]])][])][]()([][((())())])[(()(()[][])[]([((()[]([[](())([]())((([[()]])))]))(()))[[](([([(([]))][])])[])()]][]))][]])()])()(()[(()()([]((((([](()[[][]]))((())[][()(())(((()(())()[[[]]([])](([][][])))))[]()[]]([([])][[][[]][()]()([()])])[[()()][]([]([[([])]])([()()[]([[[[()]]][[[]]]])[[()]]]([([[][((((([](()[[[]]])[])()[()](()[])))))()][[[]][([[]][])]()]])])(()[])()[((()())())])[](())([]))]))()[])))))[(())]])[([[]]()[]())])[()])][])(([([])()[]]))(([([[]])[[((()[])()[()[[[([(())])[]][([[[([[()]([][])[[]([](()())()[[]]())()][]]((())[()(([[]([([[[([()])[[]()]()]()()]])[()[][]][()[]([])]][[]])]()(([([([][])[(())]])[[[]]()][()[][]()()]()(()(([([]([[]([])()][])[])[][]]))([][]))([])[]][]))()()[]((())(()[][])[]([]()([]([[[]]])(())))())))([]()[[][(((())[][])[])]])[[](([((()()([()()[][()]])[][])[]([(()([]))(())]((((((())([()[]([()([]([[]()][()[(()[])][][]]))()[(([([][]())()()]))()]])()(([[]][([])[[]][]][[][](())([])][][][(([](())[]))]())[][()][[()][]])(([(())][][]))]))[]([][([((())([([()()[]()])][[((())(([])([[()[([[](())])()]]([])[()][[]]])[]())(([]([(())[]])[[][([])]][]())))()[([[[[[][[[[[[(([[[]()]](()))()[])]][]][[]()]][[()[[[](([]((([])())[]())([[]])))[]()()][][]()][[()(())[()([][(())](())[][])()[]()]](([][[][]([])[]()])()[])]([])((()))][]]]][][[()]]()]]]]()[]()[[][()][[]()][[[[([[]([])](()))([][][])]]()[]](()()()[([()])])]][[]([[]([[[([]()(())([]))()]([][((((()[]))[()([][[][]])][(())]))]()()((()()[([]())[][[(((())([[[](())](()[])][])[][[[()[]()(())[[]([()])[]]()]]][][()]([()(()([([[(([]([]()[[]])()[[[[[]()]]][][]]()))]])()]()()[])(([([])])))[()][()()[()]()](()[])])())([](([]([[][[()([][()([](([([(([[]()([(([][[([])][]][])([]))()]())[][([[]])]][]))[]]()[])([[]]())])[][][[](())[]()][(([])())]))[((())[[[[(())()[()]]]()]]()[[]])]][([[][[[[[()[[[]]]]]([][])([]()[][][[][[[[]]]][]](()(([()])))(()[])(())([[]()[]]()()))][]]()[([([])])(([[]()])(([])[][[][[][[((()())()[]()[]())[]](())][()]]][()][([]())[()]][()]([[]])))]()]()([()])[](()())[((())()())][]][])][])[[]()][]]]()]()[()([][])([])[]])[[]]))[])([[()]][]((([(())][()]([][])()(()()())))[[]()[](())()]())[]))[[]()]()]][]][[()(([([])[]]())[(())](((())[()])[][([[][(())]])])())][[()]()[[[[]]]([][])[]((()))]][[()][]]])))()([[]([][([]([[()[]]()()]()())[([])()])[[()]]][])[[([[([[[]()]([])((()[[][]][])[][][([])])]([[]][[[()]]]()(()))())][((()[]()[](([])(()[]([[]])()))()))[([])[][]][][[[(())[[()[(([()[[[([])][[()]]]()]]()[([[[][]][[]]]())]))[()]](()[[[][]]])()()()[()]]]][][[()](((()[]([([])][])()(()())([])())))]()]]([()[[]]([[(()()[][])]([([]()[])])()[]()((()[(())[([[[[]][()](()([[(([]))[[()]([][()[([[]]())]])]][[()][]][]]()))]()(((((([([])(())][()]())[][][([[([][])[()]]]())][[()]])))()(())))[()]][(([[]]))()()]([()]))]](()([]))))][[]]()[])])[][]]][])](([])[])[()]][[]]][([[([])]])])[[()[(([()[()[()(([]()()[]))[]](()[][]([](((()(())([])[])[])()))[[][()[(([()[]]))[]()]]()]((()[]()[()])(())[][]))]]))]]()]][[[]]]()][](([()[][]])[]))()[([(())][][()()[[][]()[]]][[[][]()]]()[([[](())])()[[(((()())[][]))(([]())()[(([()((([])))([])])[()][][])[[([][[[](([(())([[(()[])[][[(())]()]]]()[(([]))])])[])][[]]])](()[](([][[]]))[]()[[([])]]())][(()())][()]])(()(()(()[][]([][()])[((()))][][]()[()[()]](([[]()[[[(([]()))]()([]([[[[]]]])[()()([])[]](([])[([(()())(()[()()])(())])](((([])())))())([(())](((()[])[[]()]))))[()]][()[()][]()][[[]][]][()(()(([]()))[]((())[][((([[([](()))]])()[[[]]])([[][]]))])[])()[]]]]))())))][((())((())([[]])))[][()[][]]()([])]][((()()(()()())()[][][]()([][])))[([(())()([[]])[][]][()]())]()()]]([[()]])([]))]]([][]))][[[[]()([()()][[[[][[]()]]]()])[([])]]][()[]]()]([[]][]))]]])[])(([]((())()[[]])())([]))([]((()[()[([][]((([])(()[()[()()]])([[[]]][[([()[()()]]())()()[]][([][[[]]()([()()])])][](()[])[][[]]([()()()[](())([])(())[([])][]]()[])[]])()()))())[]][]][([]([]())[(((())([])))[]][[[][][(([()][][](()[()][][()[(())()][][]]))(()))][([])[()[][[]]]([()()])]]][](((()[]()))))()()])[()[()][]][()][[()[[[([])][[]]()(([])([[]()[[()]](()(([[]][()[](([]([]))()())[]]([[]([()([[]]([()(()[[]][])][[][]()]))()][(()())])[](())[][][[]([()])()((([])))[[]]()[[()][][()([][[[][]()()]][][[][]][]([[()]([](()))])([[([](())())[[()][]]((()[])([]))([[([[]()]()[[]])]][()[][[]][()[(()(()[])[(())(()([[[][][]()()][()]]))]())][][([[][()()[]]])[][]()](()[[]]([[][]]()((())))())]])[[(()([()]([]()[(())[]]([][()()(([])[()[]])([])()]))(([[[[[[]]]]]()][[]([])([[[[][()()()()]]]])[]]))))][]][()[]()][[]]]])(((()[[]]))[]()()[()[[]]()][[[](())]][]())[[((())[()]()()(((())([][(())][])))()[([])])][]]((()))([]([[]()])[]()))()]((([[([[()()]])[]]]()()((())())[()][][]([([()[](()(()))])])[])))((())[][])][]]])[()])()))[]]()))[]][]][]]]()()[]))]()[])()])[]))))))(())([()]()([])[()]())()]([([][[(([([]())][]()(()([(())(())()]))))[]]])()()])([[[([])[[]()[((()))]]][()((()))]]](([()]))[()[]](([]([()(())]()(()([])([()[]])))[([][]()[])[([[]]((((()[])))))[([](([()[()(())([]()(()))[[][[[][][[()()]()]]][]]]()()()([])]))())][()]]])[])[()()[[()][((([])))[()]][()]()]][(([([[[]()]([[()]])])[][]]([][])([()][])())[[()][((()[[]])())](([([[(()()[([])()(([[()](())](([[[]]()([[]()])]())([(([])([])[][])]))[()]()))[([(()[[()()([]())()]])(()(()))][])][][[([()])]()][[]][]()()])[](())()[][[][[[]()[[]]][[]]]([()(()[]([](()()[])[]()))](()()([]()([]))()[[()[[]([]())[[(())]([])][()[([])]]]]]()[[()]]()([]((()))([[]][]([]([[]])()[()]))[[][][()]]()([]())[])))(([][]())[()])]()]][()([]()()())]([]([])))()][]))][([])])((()[[]()()[(()()[])((()[((())())])()()[()[]])]][[[](())[]()(())()]]))]))([])())[]][[()]([])([([[((([[]]))[()([[()([()([([][[]]())()[[](([]))]])])([])]()()])()])([]([][[(()[][[][](())[]][[[[()][]]]](()))()][][]]))]([])](())[()[[[]()]][()()]])][])[]](())])[])][([()([])[(([])())[()()((()[[]]))[(([][])(()))[][]]]]])[]()()()[[][()]][][([])][[]]((()([[[[[[[()[[(())]]]]]()]]]])[((())[])[((()([][([()(()[()[[[]]()[](([])())[(())(([]))]]]()(()([()[[]][([[]()])[()()[][]]]()])[()(())()()]))[]])([][]()[[[][[][[[]]()([])[][]]()][](())([][[(([][[]])[()[]])()(())[][([[[(([[[]]]()[]))()][]]])]]])]][[()][([[[]]])()[]()][[()]]])])))[][](())()]]))]][([(()(()[[]]([[[()][][[][()]][]]()[]]))([()](()[[]([])([])])()[])())])[()(([][](()()[])((()([][])[])[])))()[(()[[]])()]]]])]]][]])[][]]][][[][()][]]]())))))]]]])]))()))[]))(())[[(())][()(([]()[[](()[]()[][[[][([([][](([([[]])])))[()[(([]))[[[]]]]]])()[[([()])][]]][[][()[()([][]())((([]())[][()][][([][]()[[]][[]](()([]))())()]))]]([])]][()](([()[([])[[]]([]((([()[]]([[([()()])][[]()][][[()][]]]))(())((())))([()]))[[]][]([])([][]))]])([]())(()))[]])()([([(())][])][[[]][][[[[]]][(()()()([]((()))()(([[()[[]]][]]))()[[]([[]])]))]([]()[()])([([()[[()]][](()[(([]))()[][[]()[()][[]()([[]])[]]]][])])][](([[([])[[[][]([])[()]([][]()()[()])(()[([[]([[(()())]])[]][[[]()()]])](()[[]]([](([])[][(())()[[]]([([])[[]][([])()]])[]()](())[])[])[][(()(()[]))()]))[[]][[][]]]]](((()([()()()[][()]]()[]()((()[])()()[()[]])()()))())([]([[][[]]](([][[]]([[]()[]((()[(([])[])[(()[]([])[])]((()(())))[()[]]])([][[][]][]))((()()[[]([]())]))]([()]([()][](([])([()]([]))))((()))))))([()[](())()]([])[(())([[](([[()()]])([()(([][][]))]))(()()((()((()[[]][][((([][](()))()))[[][((()))[]([[(([()][])[()][[]((()))()])]]([()][(())()][()[(()[[([([[()[([]())]]]([[][]]))([][(((())[(([]))(()[])][()][(([()()(([[(([[]()]))]((())[])(([([[[()[]]]])])[]([])[]())([[[[][[[]][([]())]]][]]()]()((())([])))[][(())]()][])[[([(([(((([][]()[(([]())[()[()]([])][[]][(([(()(()))[]])()[[]])()][][()]())]()[][([[(())]])]))[])[])]))[]]()([])())]][][][])]))()][()]))()(())])])()]])]]))(()()()[[([(()[[]])])][[([()[]][[[][]()][[[[][()()[][]]]]()][]])([]()[()[]])]](([([()[]()])][](()(([](())))()[[[][[]]]]([])[](()))[()][]))])([])()(())]()]][()][(([[[][]]()]()())[][[]()])])()[]))()[][((()()[]))[]]))[]])[([[]])][()][]][[]()()([])][]()))())[(([])([[()]]()))])()]))[()])][[]]]()[[[()()]()]()][(())(([([][()([[]()[[]()]])()][])[]])[([](())([[]([[]]()[](()(([[([])]]))[]))()])())(([()][[]])()())()()([[[[()](()([])[[]])[[[]][](())()]()[()()]][[[[[]]()]]](()[[](()()[[()]])])([])[][[()](()()([]))][]()()()[[[((([]())[[[]()]]))[()[]]]([][[()]])()]]]((())[])])][[()]]())()[([[[[(((([][()()])()[]))([[([])[()][][([[[][()]]][[]])]]][]((()))[]))]]]][]((()))[()([[(())(()[]()[])][[[]]][]()[]][(())][([[([[]][[]])(())](())])])[()[](([])([()]()[([[()[]]][]())]))[]()]])]([()()[]])][()])()]())()[])[]][[]]])()]]](())([])]]][](([[([[]][])]]()))())[[[[(())[]]]]]]][]]([])))[][])()([])[[(())]]]()())[[([((([][([])()[]((()[()]([[]([])])[([])]([()[(())()]]()[()([[[]]]([]))]))())])))]([][[[[()]]()[[([])][]]([])()]]))]()[]]))()([]()[][(())(())()()]))()])([([]((()[])))][])[])]]][])[](())()(())()[]](([])[])([][()]([[]])[[[]()()(()[][](([[[]([])()[]([][])]]))()[]()[()([[][[[]]][][[]](())])(()())[]])([]())][[][[[](()()())](())([]([])([]()[()()]()))([([])])([([()]())])]]]([]))][][[]])[([](()))()][])[])]][]()[(()(()))()])][[]([(()())])]))(()(())))(()(([()[((((()(()))())))[]][[([[(([()[]()([()()][()([[]][[]([][](([[[[][[()]]]()()((()[]))][]()[()]])[]))]([](((())[](()))))(()([]()([]))([([](())(([])([[[[[]]]]])()([[]](((()[][()()]()))[][])[])())([]()))][])[([([()[[]]]([]([])))(())])[[[()(()[]())][]]](())][]))])[]])[])()]])]][[](())[]([()()])]][[[][[[]][][][()[[]]]]()][[][([])((()[([]()())[][[[](()[])([[]]([]))][]((((())))())[](()[()]()[][()[()]]())][([(([[][[](()()())]])())([]([[[()]]][]))][][[((([[(())](()[][(())])])))[]([][]()[])()()[()[][]([][[][]])]()]][][((())[()])][])](()(()))[[][[][][](()[((())[](()([])([()])[()][[[[[][]]]()[](()[(())()[([([([][])]()()())])]])]]))])]]]))]]]))))))])])])]))))]))]]]]))])]))) ()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()() ()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[] [](()(([]()))([])[])(([()[[[]]()]([()()[([((()[][(())])[])][][][])][]()[()()[]([()[][][]]()[[[][[]]([()[([()])()[[[][]]()]([[[([])([])]]][])([][])[][]([][]())[]]])]]())]()()()])]()))()([])[[[()](())[]]()[[[(((([]([(()())()][]([]()[()()[[](([([[]])]([])()[])[[(([[(([[()]()[()]]))]])([(())](([[]][[]]()[()]()([](()))[])([])[[]]()[](()[[[]]]([][]([[()][]]([[]][()()[]()[[()]((()[][[[][](()((([(([((([(((())([]))[][[]([])])[()]])[]))([[[][]([][[[]]])]])([])[[[[]]()([([][])([])[]][])]]]())())])(())[()])[[[]][[](((((())())[[]()][]()[](([](()[]([][]()[[]]))[[][[][]]])()(([]()((([])([()()()])()))[([[]])[[[][]]]()][([]()[]()[][[(())()([][])([()[]])]])]))()))))]]))]([])([(()(([()])()[[]]([[[]]]([()][[()]][[]([((([([])[([])(())]])))](()[[(([(())]))[[]]]]))])[](((([])[[]]))[()(([])())]()())()[]())[])[][[]]())])]))[[]()()]][[]][([][[]])([[][][[[]]]])[[([(([[]])())][([][])[][[[]([])()()]][]][[([](([][])()[[[](((([((([]))[[]])[]]())[][()][()([[]])][])))]])[])]()[]][[]()[()]])]]]]())))))())[((()))]())]])]((([])))([])()]))(())[[(([]()[[]]([[]])()))[]][](()(([()(())]([[]])))[[([(([(([[[()[]]][][]])())])[(()[])])][([])()][()([]()()[][])][]()[]((([()(([[][[][][][[]]()()([]()())]][]()))]()))()()))]([][()]())])[][()[[]()[](()())]([()()][])][][()][]()[[]()](()[])([[]](()))][]))))]][](([](())[()][()]()[[[][()[]([][()((()(([[][()([()[[]][()]][[(()[]((()())(()()))[]()[[]]([[][]][]()[(()()(()[]))()[][()()[(((([])))(())())[()(()(()))[()()][][[][([])]]]]]]([])[([[[()][[][]]]][][()][])[]]))()]])]]))))](()[][()][[(()([()[]][[([])()][][][()]])()()[[]])[]]](())[[][]]))][]]][])())()]([[][]](())())][[()()([[[(()[]())([]([])(())[][])]([[]][[]]()())]()(()[])])]][][[([()(()[((((())()(([[()]][])[[[((([]))())]]][()][((())[([]([([]()[[]][[([([()[][[]([[]([()][][])[([[[][]](())])][[][[[((())[(()[])()[]][([])[()][](([](()((()[]))[][[(())]][[][[[[[]]]][]]()[((()[[[()([]()[(()([[([])[[]]]]([()()][]))())[](([]))][()[(([([][]())]))[][]][][()[][[[[][[[[][]([])]()()[]]]]]()[]]]((()))])]]])(([][])(([]))((())[]()()())[(())][([]([][(()[])]))][[]])[][([[]])])]][])[([[()[]]])(([])())][]((([][[][()[]]](([[[]]((()))[(([]))]][[()][[(())]()[()][]](())][()]))))[][])))[([[]]()(()))[]()[]([])][]])][([]())[(([]))]]]](())()]][[[]((())[])][]]((([]))[]))][]][([()[[][([[]()((()[()]()[()]))])([()(([](()[])[()]([[()()]])[([][])[((()))[][]]()[]])[][()(())()()[[[][][]]([(()(()[[()[][[]]]([()])()])[(()[[[[()]]]][([()])]())][[[[]()][]]()])[]()[]]()([()]))[()]]][])[]])]()]])()](()))])[[([])]()]]])][])())[[()[]]][()([])[([[][]])(([([])](())))][]][][[[]]()[[]]()]])]()[[]](()))[][((())(([[]])(()((()[(([]))])[])[])))()][])))([][()])][()((([][])[()]()[])([[(([([((()()([][([[]](()((()[()[[(([([][([])])]()))([])]][][(())]][]([[[[[][]]][]]])(()))[[()]]))(([[[]]()((([])[]([]))(()()))]())))][((()((([])(([]))())())([()]()(())()))[])]))([]([][])()(((()))()[]([[[[[()[]][([()[()]][])([])](()[[][()()[([])]]()][[((()(()[]([[[[]]]][])[[]])))](()[])]([][])[])(())]]]]([([][])])))([])))])][][[]](()[(()[])[]])()[][[()([][[[]]((()[][]())([][])([[]](()([])()))())([[]])[[([][]((()([()][]))))]](()[]()(([[(())]]))[])][]()()[[[][]]])]([])])[()])]]))]()[](()))]([])[()()()([((()([[](())]())(()[][[]([[][[]]()[]([()((()()(())[([()[[]((()()))][]])][(())][][[[[](())[()()][]]][()(()[()][](([])[]))()[]]][]))])])[[([[]()])]]()(((()[(())][([[]](()())([][[]][]()))]()))[[()[[]]]])])))])((([[]])[]))[]]([([][])(((()[([()[](()()[()(())])][])[]])[[[][[][[]()]]([[][()(())][[]([[[]]][])][](())])([()([])])()][()()[][([][][()]((()())))]][]][](()([][[]([])]))[])([](((()))([(())()])[]([[()(([[]()][][][]([[]](())(([()()[]([()[()([])][]])][]())[[()][()]])[]))()())[](([][]))][]]))))]))]]()[]()((((()[][])[])[[]]))()[(()())][]([()[][]]()()((()([])[][][((()()))]([][[]]))[][])[](()()()[]))[()][]()()()([[]()([][(())()([](([[()([])](()(([[]][(())]()())))]()[[][]])(([([(()[(([[]()[][][]]))[]]())()()][([])])])())[][][()[][]]))])])()[[]][][[]([])()[()]]([](()[[]])[])([(([()()[()]][]))[[][[()]()()]((()))]([]())(()[])])(()[[[()()]()]])[]()[(()(([[()]]))[])[][([[(()[[][([[]([][])[()]()]([][]))]()][[]][(()[][])()])]][[]])]([])(([])())()([]()((()))([[(([(()(()))[](()[(()())[((([[[()]]]))())()]][((()[]()))])(([])([][]))][[][[]()(()((([()]((()[]([([(()[()][][])][]((()))[[]]((()))())]))([][]()()()[])(())[]))[]))([][()])[(())][][])]()][([])[]]()))]]())[][][])([][([([][[]])[()()()]])][])[((([([[]])])([])))[]]][]([[[(())]]])()[[]][]()([(())[][[][]]])(([([[[][](())[]][()][[][[()]()][[]()][]]]())])[][])[[[(()())[]([])[[][]([[[[(([])()(()))]](()[()[(()[]())[]][[]](())][([]())])]]())(())]([([][()])])]][()([()[]])(()[()])[()([])]([][()])][[]]][]([[][([[[][]()()]()][[[]][([[]])]])()(()(([](()[]()))))(()[[]])]]()[[]((([]([([]()[[[][()][[[][()()(())]]][]()](([[][(()[((([[(([])())]((()([[[[]()([[]])[][[]()]]]])))[]([[]([[[][][]([]([((()))[[][()]([()[()[()()](([]))[[[]](((([])[()()])())())]([])([[]()])]]([]))]()[]][]))[(())[](()(())[[([])][][[[([](()))()]][][([[(((([()()(([][])[(()[[[]()[]][()][[()]][]])])]()[][[[[()[][][[((())())]][[([])[[]]([[()]][][])()([([(()[([([])])([])])][(())][][([])]()[][])])]]]]][][]]))))[(())]([][[[[]]]][]((())[([(()[]((()[()][(())[[]()()]()([[()][()(([])[][])]()()[()[([])]()]](([[[][[]((([]()(()))))]]]([(()[]())][][][])([[]][]([([][][])([]([[(((())([]()[][][])))[][()()][]]])[])][][]))))(()[[[()([][])]]][]()([[()[()(([])[])][()]][][]])([][()][[[[[[()[]()](()(()))][][][]][([])]((()()([[()()][]][][]))[()]()[()])]((()[][][()])(([(())()()][[]()[][()][()]]))[(([]())()()[])([](()[]))[]])[(())[]]][]][[][](())])())[])]()()[])()(()()([][[[()[][][][([])()]][]]([[][[[]][]()][]][([])]()[])][][]))[][[]]))][][[]]([[[([])][][]()]][((()))][]((([]([]((()[]((([()]())()[([[[][]([[[[](())]]()])][][()][][[(())][][(((()()[])(([]))[]))[[()(())]()]][]]])[]][][]))[[][(([]([][][[][][()][[((()))]][](()()[[]](([])[[([((()[[][]])([]()[[[](()(((()(([()])))()(((())[[()[[[([([[]()[][]])])][[(([])[])(())(()()[])]()][][](())]()]]])()))))[(([()])[[[]]])]]][()][]))])[]][([([[]]()(())[[]])[[()()([()][](()[])(()([[([])][[[[]]]([][()[()[][]]])[]([][()])](([]())[(()()[[()([[[][[[()][[[[(())][][]]][[([()])[[][[()]]]]([])[([([[([[][][]()][][(())]()()[[]()()[]()])](()((([]))[()(([[]])())]()[]([[]([]()()[]())[]][][[(([])())[(()())]][]()[([][][][][()()])[][]]()[][]][(([()][[()(())]])[()])])))[]])()()[()]])]()[][][[([()[]](([]((()())))())()(())(((()())([]))))()]][]()[]([[]])]([[]][(()()[([][()][()()])][[][]])])]]([](()))[(())]()[[](()[][]())[()]]]]]())][([][[[[]]()]])]()[]]([()])())[]([(())[]()()]())[()(([](()()([()[][](())][][[[]]([[([[([()([][[]][])]())[]]]()(()[]([(()())()([])()]([()](()[][((([])[[]])[[[]][][(([[][]]([])))]()()[]]())](([])[]([[]((())[[]])])())([])([()]))(()([]))))([()][][([])[][](([()][[[]]]))]()[])))][]])(()[])[[][][[(([([])][])())()()()]()]]](()([()[[](((([][()][](()[[[][([][](()[()()]))]]]([]()[])())(([()()(()[[][[]([])]])]))))[][][])[])]]((((())[([[[[][[]]()(()(()[][(([]))]()()[[]]([(()(([[]]([([])]))()()([[]()[]]()))())]()[[([()[]]())[([([])[](()())[][][]([[[](((()[])))[()][()]]()()][])[()([[]][])](([]))]()[()()][])([()()])]([])]([][]())]))[[]([[([[(([()])[](()(()))()())[([[[]]][()])](())([]()([][([][])[()][[[[[](([[]((([]()[]))()[]([])[(()())])(())]()))]](([([])()[[[]]([()[]]())([])[[[][[](([[()]()]())[][[]][[]()[]]([[]()]))[([()])]]((()[()[()()()]]()[(())](()[[][[]]]()[]([[]]((()()))())[[]()[(()())][]()(()([[]]))[]])[[][(())]][[[[]()]](()[(())])]()[]))](((([()()]([]())[]())[(())([()])]))([(()[[[]]])([])[]()]))]][][[][]]]))]]]()())())]((([[]](()()[][]()[])([[][][]][[()([][])(()[][][([])][[[]([([[]]())[]])][]])]([](((((())[])[][([][([])][])]([][([][[()][[]]]())][]([()][[]]))([][]())))[])[])]))))[()][[]([(()[])((((()[[((()))][]()[[]]()([](()()())(()[][])[([])([[][]])](([])[[[([])]([()()]())]([([[]])]([][])())])([]))[(()())]]))([(())(([](())[]()[]()([](()[[[[([[]()][[]][()(()[][])]()(([]([([([()[[]()][](([()()]([[][(()[]()())]])()())())][((())())()])([])])]([[]()])[[()](()())]))[[([[][]])[]]]))(([][()()([([]())()(()[])[(()()()((([()][[([])()]])))[[()()[[()[()]]]]([])()])]])[][][]]()[(([[]((([]())))()])[][()][]()[[([]([][([])[([([][(()([()][])([()([][[[((([])[])[])()()](()[[]])[]]][[]([()[][]([])](([])())(()))()])([[(()[([][])])]([(([][][])[])[(())]][])][])[]]([]()([]))([([[]][[()[()]()]])][(())()[]([])][[[][]]][][])[][][[]]())[()]((((()[[[()][][][([[[]]][])()][(([[()[]][](()[][[([()[((()[][][]))][][]](())(())([()[[][]]]()))((([((())(())()[])])))[()](())[(())][][[]]][[()[]][[][()(())()[(()[][[[][()]][]])(()())]]()]]]()[()[]()])][()]))]][[(()[])(())]]][])))))((()()[][][]))[[]]]()())])(())][]][][]))[]()]])((([])((()([()])[[](()())][]))[[[]][]()]()([])))]))]](())]])())[[][]]((()))((())))[][()([][])]()([([([[][()]][]())])]))][[[][](())()[][]]][([(())])()]()([[][[[]((()))[[]()()[[]()]][[[()()(()(([[]])[()]))][]]][][[]]][]](())])()()[])()()[]))()])[()][]]]())[(())]()][](())]([(())([([[[[]]]])])()[((()))]][[][][([[[(()([[()((()))()[()]]]()))(()[[(([]))]])([])([][[]][])([])()]()(())()[]([[([][]([[(())]()()][()]))]])()]()[(()[()[((()([]))()[[()]()])[][[]]]()[()[[()([[()[][(())()]([(())()]((()))[[[]]((([()((())())])[()([])][][[[][]]]))[(()[]())[]]])[()(()(())[()[]])[(([]()((())[[[[[()()]((())())()()[][](([]()[(([()][][[]][[[]()[]]][]))()()])([])((())(())()))][()]()]]]))[][[]()[[]]]()())]][][]][]()]()[])[[][]]]][()([][[[[[([][[()]])[][]()][]()]()[]((()(())))[[]([])]()]]]()((())(([[([]()[((())[])()[]](([([((()[][([])]))]())])[]()[][[]]((([])()(([])))()[[()]]([()([([]())](()[]))[[]](())])))[()[[(([[][((()()))()[]()][[[][]]](([[][()]](([([][][])])())))][[(()[])[]](([()]))]))[()][][]]]][])[]()]]())))(())(())()[()[[]][[]]]())()][]((()(((()))[])[(()[]()[[]]()([[]][][[[[]]()(([](())()[[]()()([()[][[][][(([]()()()[][]([]())[(())[[[]([](()[(([([])[]]))()]))]]()()(([]([()()]()[])()()(()))(())[]()(([([[](([][()[[()]][[()()([([][()][[[[]][]]()])])[]][([[()[]([()])[]][[()]([])]][])()]]])[][[]])()()(()[])][([((([([()()])][[()[[([])([[]]())(())]](([])[])][]])[]))])(())][([([])])()()[()]])[[([])(())](())][([][](()))[([])[][][]]][](()[()[[][][]()[]][][]]())]([]([])()[])([](()(([])())())()([[[]]](((()[[([([]()[][])[(())]])]])[[[][]]][])([]))())(([]()[()])[]))())[](([()()])[]))[()[[[]]]()])][]))[]][]](()([])[]([](()[([()([()[]])(([[((([()][[]]()(([()()][])[](([][([])]))))))(())]]))(())()()[][][([][[][]][()[([]()(([]()()))([]([[[[[]()[[()]][]]]][()[]([])]]))[])((())[])]][[]()])[[]()](([()])[])][[([][]([][[([(([][[(()[()([]())])()]]))]())](())])[([]())[(()[][])][][]][[[[[]][()[]]()([])]]])(())]()]([[][([()]()[]([]))]()()()]())])][()[]][])[[]][]))[([](([[]]()[])[()])[[][]()[]][])[([])]]()][[[()[]][]]])()(([[()]()[]]))]))]()]))]))][][]])]][[][]()])()]][][[[][](([]()([()[[()][][[]]]])))(()()[]()[])]][])[])](()[()]()[])((())(()([([])])[()](()())())))][(([]((([()[[[][()[[]][[[[()]][(()[(([()]))])(([[][]]))[]](())]]((()()[][][([[][[]]][([][]()(())[[([()])()]])])[]]((([])[])())()[[[]][]([[]]([]))][[]](()[]([[[()[][]()[[[[]][][][]][[(()())][[[]]][([([[[[]][][][]]([[()]](()))])]()[])[]()[(([(([]([[]])))][]())()[()[()][]])[(())(()(()[]))]]]()][[]]]()[][[][](((())(())()))]]([([]([][]()())(((([[()](()[[]])]))[]))[])[([][[[([[[[][]][()]]]())][()]]])]]([][])[])]][]())[])(()((([(()[()]([][[]([()])[]]))[()([])]]()))))()[][]))]]]]([[[[[]]]()()([(())()[][[]]])]])))[()[([])(())[]]()])()))[]]][[[[]()[]()()[[]]]]](())]())][])[([[]()[]])()][([[[[][]]][][[[[]()][[[]]][[]]]]]()([])[[]])()]()[[()]][]([[[][()[]((())([[](())][()[()([()])]][]([(()[][]())[]()[(((())))[[()()][]]][()]])))(((())))]]])[])[])()(()(((([](()()))))))))())[])[]([()((((([])[[[[]]]])(([])([]((()())[]())))(()([[]([]([[[](())(()()([[]([])[]([])[(()())[][[([]([()]))]()]][][]](([([])]([()((([][([][]([]))]))()([])[()])()([])(()[[()]])[()]()]))([][(((([]([][[]]))[][](()[()][])([()()]())()())[[[[]]([(()()()())[[]([](([()])[][]))][[]]])]][[[([[[]()]][([][][]()[()[]])])]()()([(([[]])()((((())[([][[()[]((()([][])))]]([])[](())[(()(()))[([[([[][]()])]]()(()[[()]]()[]))()([]())[][]]()[[]]()((((())))[([[][()((()()[()]))()[]][[]]])]()[])()(()[])]())]()))[]))])]]))]))[([[(())(())()()]])[][]]))[]]()])[()([()])])][]))(())))()()[](()()(()))[[]]([][]()())(()[()[]()][([[[(([][[](())(([])[])[[[]]]([]())[][()]]))[]()()][]]])()]))[][][[[]()][][[[]][([])[[]]()]]([][()[(()(([(([][()[][[([][])[(())][([()(([][]))(())([])]([][][]))[][]][]]]])[]([])()[[]()]())[[][[][([(([[[[]]]][[]]((([(())[]][][]))())[[]][()()([([(())])])]))][][]([][]))[[]]][[[((([[[][]([[]()](((()(())()))[][]()()[()]))][][[[][][]]]])[[([])]([]([([][]()[])[()[][[()]]]([[][[][([[]][[(())[(())([])]]]())]()[](()[([])])]()[][(()[][()][][[][]](()))()]](()(()())[(())](()()())[]))[][]([[(())]][[[]()[]](()())])][])[][])])[])[(())]()]]([])()[][([])]([[][()]]([(()[((([])[()][(()(()[]))][[][[][[][([([[()[][[]]]](([[()]])(()[][[[()[[]]]([]()(()[([])()])[])[]()][][[](()[[[]]][])]][([])[][[]([]()[(()[()][])[]](())(())[([][[[]]])][([][[[[][[][[]]][[[([()]((()))())]]([])]]()(([])[[][]])][()[]]][][(()([][[]][(())][][[]]()(([()]()(())([][][][][])[]))[]((())[[[(()([]))]()]](([]([]))))[])[()[][][(())]])])[]([()])(())][](()()[()])()())()[(())[(([]))[](())][()[([][()[][]])[]][[]]][]]()()[((()(()([([[]])()[[]()]])[[]]))())[((())[[()[]([[][(())][([][])][[[][]]()()([(()(([][]))[])[[][]][[([])()]][][]]([])([[]][]()()))[]]])](()([])())[][][([])(((([])[])(()))())]])]](())[[()]([()[[()[()([([]([[]]([[[]()]]([][](()))[[(()())(()()[])()[]]()[()[()]]]()[]))())[()]()])[([()([]()[[()[()](())]])])()[(([(((())((()()())())()))]([()[][[([()])][[]([][][()[(()[])]][()]())()](()[[[][][][]]()])]([])[]])(())()[]()[])[])(()[([[]])[]][][])]]]([][[[[]()]]()[]][])[([][](()))]()]][]])[]]()()()]][[[][[()([][][][])](([]))()[]](()[()[(([])([[]()]([])())([][[(([[]])())]])[[[[([][()])]]](([]))][[[(())[]]]])]()[[[]]]()(())[[]]()(([][[[]][[(()())[][]()]][(([[[]()[]][]()[[][()]]][])([])[[[[(())][([])][][]][]()()[(([]([][][()[]])))]](()[[[]()]])[]])[]()][]()]()[]))()()]())[]](()()())])()))[]([[[[]]()]](([])([[]])[]))[]])]][][()]]]((()[][]())[(([])[()]([()])[])[[[[]][][([][](()))([][]([][]())(()))][]][]()[()()][][]][([])([()(()(([[][][][[]]][])))][([[]]()([[([[]]()[])()](()[([][[][[][](())][()][]()(())()((()()[][(())]([()]))[][([])])(([[]]()[[]](()([]()[])([[]])[]))(()[[([](([])[][]()()))[([[()]][]())]]]((((([])[][[][[()][[()]][][[][]]([]())]([])()]))[[]()]()([])))[])[])])[[[]]]]([])([][][([])([()()()](()(())[()][]))]))[([]())[(((()(()[][[][([([(([[[]()([][])[](([][]()))(([][()]))][](()[])]))(([[()]]((())))[[]()])])[]][[]])][([()][])[][][(()(([][()][][])([[[]][[]]][()]()))[([()[([[]])()[([]())(([][()((([])(()[]))([[][(([[]()[[][[](()[()]()([()]))]()()]])(())()[](([][])[])[[[]]()([(((())))])])[][[][][][]]]][([[]()][])()(()[()()(())])][](([][(()(([]))())](([[[]]([][]())()[()][()[]]])()()))([(((([([])])[()(()([]))])))]())())([])()[][])()[][])])([()]([]))([()][[][][]])()(()))]][[]()]])([([])[()]](()(()[()])[[]([])]()(())))[](())()]())]()]()]))()([([])])))]]][()])[])][]())]]()[][[[[]]]][][(([()]([[([[[[][]([])]][[([[()[[[][]()]]]()(([[]()]))][([])]())()]]])][]]())(([][([[[][[()[][[]()]]()]]]()[((()[]))])[[]]])[([])])(())())[]([(([[(())[(([([][[()()]]([[]][(())]([[]])[([])]))()(()([[[]][]([()][])(()[])()][]))][]))(([(([](()[]()[])[()])[()])])[][])[][]()()[][([])[[[()]](((()())[[]]))]]][]([()()()(())])(())][]][(()()(([[[[]][((()(()(()()))[[(([([([][[]])([[]][]())[][]][()([])]((()[]())(())[][(())]()(()[]))(())[][()])[]]))][[(())(()[])()][]()(())][[([][]())]]([])[([[[]]])]()]())([[()]()[[()]]][(((([[][[()()](()[[()]([])])](())(())[[][([][])([])[]]((()))[]][][()][]]))()[([[([[[][(()[()()][([[[]((()))]])])[]]]()]())()][(()[(())]([][([()])[]]((())(([()][]))[()])))]][()])[]([([()[()[[([[][]][]([]))][()()]]]])][(())[]](())([]()[][[]]([[[](()[[]()[[()][]()]()]())]()()]())[][]))()][]))[]])[])((((()))[()]))[][[][]()(()([])()[]([[[]()[]]()])[[]][()](((()[()]()[]))))()()[[[][]][][]][]]]](()[()()](((())))[([][]())])()(([]()[([])]))])[][][()])[])][[][((()((([()][][][])))[][[]])(([[()()[()]]([][[()[][[][([(()[])])]]]])])([[[]]]))())](([[[([()(())[(())]][][])()[[][][]][]][]](())])[])[([[][[]()([][[]])()[((())[()()])]]]()[])[()]()]][()()()()])()()([(())[[](()[])]([[]]()())(())]())[[]][])]))])[])())[][((()))]])[][[][[[]()()[()]()[][()[]()[[]][]]()(())][[]()[]]]]([()[][()[()[[]](()[])([[]])(())][[][[]]()]]]((()[]()))())((())()())[([])([[()[]]([])[[]()()]])[()[]]()(())]([((()))]][(([][][([[()([[()]])]()[()[[[]]][[()[[][][]][]][[()[[]][[()([])]](()(())([([[()[[[]]()()]]]()[[]()]([([[][]][[][()](())][[([])]])]))])[[]])(()((()([[]]))())((([[(()(())()([])[[[]]])]]()[](()[])[[[(()[])][[]]]()[[()([()[]([])])(([][()[[[]([])](([(()[[([[][][(())[](()()()(()))[()][]]()]())()(())]([])((()[()])()()[](()[])()([()]))(())([])]([[](())(()[])[((()([][]))[])[]][()]]))])[[]])]][()])[([])][()[[[]]([[[[[]]]]])]])[([])]]]][]))))[[[()]([[]]([([()][[]()([[[[[]]]]])])[[][[()]](()())([]([])(()))(([[]])())[()([()][])]][][()]][]([[([][])[]]()([][])]())[][][(()([]))])([]))([][()[(([([[][]]()[])])[[]])()[]]])]][(((([])())))]()]](())]]]([])())[[()]][[]([()]((()))(([()]()[[()]]((()[])))())())(())()(())[]]])[()((()))()])[(([]([(())[[()[[[][([([([([])])][][])][()][])]][][(())][()]]]]()][(([])())])))(())()[[]]()][](())]()](())()())[](()(()(([]))(()[(()[](()()))])()[])([()][]))[()]()(()(([]))((((()[][][(()((())))([[[[[]([(())][])[()]]((())(()())())]]]([(([[[()][]]]((([([()[([([(()[])])])]]([])[()](([]()[()](([()()(([()[][[[]()()][]]][]))([([([]()[])([])[(())(([[[][][[](()(()[])[()][](([](()[[[([()[()(()[([(()([[[]][[][(([[[]()[]]([])()]))()]()([]())[[]]]()[[][()(([]))()[(())]]([()[]()])][]]()[]))(([])[[()[(()[[][]([])()()][][[[]][][([[[]][]()][]())(()(([])))]]()())[[[()]][]]](([([](()))]())()[])()](()[(()([()]))])])][](())((([]))))]([([[[[][][]()[]]]((())(([()])))()[[[[]]][[]]()(([()]()([[()]([()()()][()](()))([([][]())][])])[]()[()(()[])[()[[(([])(([])[(()()(([])(())(())[]))])([[[]([()][])[]([])()[[[]][[][[[()]()[[]]][]]]](([][][](([[]]))[]))[()][][]]]([])[()][()[[[]]][()]()][]))]]()()]])[])[(()[][])([([()([[]()])()](([]))[[]])[([][()][[[]()]])]([[()]])])]((((())[](()))([]))[][])][][[[]]][[]]][[()[]]([[]](((()[([](([])()))]([])(([()]()()()[[[()([()()])()]]()][((()(((()))())))[([()])[]]][][[(())(([]([[[[][([[[]]][])]]]]()))(()()()()))]])[]))((()[]([(())][[][][[]()]([[[([])[][][[()]]](()()[](()[([][[[][]]]())(([[]()]))()([](([[[][][]([[[[()][]]][()][[][]]])()][]])))()()]))[[](())[[]]([])][[[()]]([[()[()][]]()])[[]][[[]([][[(()[()([[([]())()](()[])()[([[]](()[()])[]())][([[()][(()(([[[(([][](([()[]])[]((()())[]))))]([[]([])]())][][[[]]]][([]([])[])()()]([[[[[([(()[])(([][](((())[[()[[]]()]([][(()())([])(()[(())])()]())()])((([][([]())]()))[]([][]()[])[[][()]()([])()([()][()])][([()](([]())[[(([]))(((()[([])([]([[]([])(()[]()([()])[[[][[]()([((())[])[]]())[]]]()])]())[([])[]()][][][])]())[])[][])()([]())()[][][]][]](([[]([([[]()])])((()))]([](()))((()[[([]())]])(()[()[][[](())]]()([]([]))([])))()()((())[])([][[]]()(()()[(()[][[()]([][][()[][[(()(((()))())(()([()()]([[((((()(())[][]()))[]()[[[][]]()])[]()()[()[[([[[]](()[][])(())])[[]]]]()]))[[[]()]]()][]())()))[[(()[][(())[]][[[]]])([])]])][][[]]]])]((((([[]]))()[()()[[[][]([])]][][()[()[]([[][][([])][(())([])]])][()]()([][][([][()[(([()[]()()([()()])()()()([[]])]))][]])])()](([]())[[()()[]]])[]][([])]))()))()([([[]])()][[][()([][][[[][((([][])[[]][])(()(([][[[][[[]([()[][()][]])]()([()[]])][]]][(([[([[[][]]()()[][][]])]][[[[]][][]][(([][()]))[()[]]][]][((([([[]]([][([])()[(()[])()]])()()[])([[]])(()[()])][[]]([][][[][[[[][((())([[[([])]([(())][][])]([])[[[([(([[([()])]]((([]()[]([()[[[[]()][]([])]]([()([[]]()[()(([][()])(([[[][([])([](([[]])[][])()([]))()()][][()]]])[])())([[]][])])()[](()[][()()][([][()]())[]]([(())()]([[]])()[()]))()()(()([][][](((([])([])))[([])]()[[]])([(()[])])((([])))))[][]][[][]])])([])))()))[])])()[]][]]]([][([][[]()[]()]()()()[[[(())]()[[()]()]()()(())]]([((([(())[]()])([[][()()[(())()]()]]()())[[]((()(())[][](()([][])()))(()))]))]))(()(([[][]]))()([()]()((([[][]()]))[[]([[]][[]])(()([]()))()]))[]()[[(())][][]])])[][()(()())][]()](())))[]]((()))]]]([])])[()]()))()[([])[]])]))()(([()()]))[]])()()[([[]]())])([()((()[[]][][])[(([[[]]([])[[((()()([[([])]][])([()()])))]()]]()()[]))([([[]()])([([])[][([[]])]])]([])[(()[[[[]][]]][])])((()(()()()[]()))[])(([][[]([(())()][](()()()[[()]([])]))(([]()))])[()[]([])(((())[])[[]])[[]]])])]))[()()[()][[()[([])]()([([])([])([])[[[[[][]([][][[]])()]](()[([])()[[](())]([])[()][][]](([[[]]([])()][][])[[([()])[[[]][([]([])[][[]][])]((()))][[((())()[()[][]]()()[[][]])[(())]]]]][()[()]()])([[]][]()()[[]](()))[(()()(())[()[([])][()]])()[]])[(())[([[[][()([[]])()[]((([()]))(()[[]])([]()))]]][][][](()())[])]]([[]])()(())]()()[[]]][]][[][[]]][][])]()]([()][([])])])]()()()[([()()[][]()][]()(()())([][([()[]])[()](()[[[(())[[()]]([(())])[][](())][[][][[([])][]()](([[()[]([])](())[((((()[[(())]([][[][]()[()[[][]]]][])(([]()[()[()([][]())[[[]]]()[][]()]]))]))([()()[][]])))]][[]])[([[()([([[][]((())((())[](([([([])()])][[([((([[][]][[[]]])()[]))])()[][[[]([[]][()])][]]]][]))[]())[])])])([[([])](()[])]((()[(([])[])])()))[[][[]]](()(([(()(()))([([])])][][()[[[()[][]]]]()(()[[]])(([()]))([[(()[]([[]])[[[(([[(((()()(()[()])([]([])))[[()]])())]([])[()()[]][(([]))]([][(())])][])[([([])()]((())))](([][[((()[]))()([])([([([()([]())[]](()())())([]([()]))[[[[[]]](())[()[]]]][]])])]]))[]([()][]))[][[([[(())]()][()[([[]])()([])]])]]()]]]())]][[]])[[]]](([()([]()[[[[]]]])[]]()[])))()[(([]))[]])[][][([][])[][[]([[]]([[()[[][][]([])[]]([])][[](([[][]]))]]))]][([])()([()[[[[[][](())][(()()[[(())[]([(()[[][][]])])]()[[][]]]()(([](())))[](()))][[[][][]][][()[][([[()[()]]]([[]]))[]()](())](((()))[])[]]]](()[[[][()[]]]])][][][[]()]][[]]()[()[][[[(())[]][[]()((()))[]][([[[][(()[((()([[()()[[[]]([])[]][[[][]]]][()](())][]))[])[]]())()[([]((()[[()[]]][])[[(()[])[([])[]]][]()()[]]))[[[]()[([])]]]][()]]()[]([[][[[([]())]]]])[]]])]([]()[()[]])][][]]]([])[[][()[][][]]()])[[[()][]]()()[()[]][[[[()[][([])]][][]()[(([][()]))][]]([()][]()[])[]][[](()[[([[]()()]()(([([[[[]][(()([][()]([])()()))]]()[]])])[([(())])[()]]()))]][[][[()](())]([()[(()[()])][][]([[][]([()(([([])()]([]))()[[]]([]([])))])])])][[[]([][]()()()[])()][[[[]][][[[]]]]()]])[[]]()]]()]]())]()[]((()[[](())]))])(()[[](([[](())([][(())][](([[]])))([]()[]())]([[]]())([((()))[][]][])))(((()[[((([]())())[()])[([][][([[([])][[]()[[]]([][[[[](((())))]()[]][()]()[([([()])([()][]([[]])[])])]([()[]])][()[(([[][]([(()(((())))()[])([[([])][]])]([()]))]))]])]()[([()])]]([]))]())([()()()[()]([[[](())([])]]())][])][[](()(()[][()])(([])([]([][]))[[(())][()()[][([]([()(([[()[]][]()]))([])])[[[[]]][([]())]]())]([]()[[([])()]][()()()][()(())](([[][([](()))]()])((([][()()])())([])())[[]]()))]]))]()]](([([]())()[](())([[]]([()])()[[][]]([[[]]()])((()([]()[][])[]((()((())[[()[][[[()[]][[]][(())]][()()[[]]]]]])))([()[][(())][[][][()]()()(([[]()]))]]))))]))()()[()([()[[]()]()])([])()]))([](()())[()])[([])()()])()][()][[]])])]]])][][])[[]([([])])[][[][[][()()](([])[])[][()]()[([])][]]]([[]][()])()](()))[()][[]]]]()[]])([[(()(()()[[()]]))]])][[]()[(()[([])]()([()()][])[][][][]([()]))]([(([[[()]]]([])[([])]))[(()(()[])([]()[][[()]])[()]())[[[]]]]])][]])[[]][[]][]([][[][]])()])()((()[()])[])(())()[][[[]]]()))([])))((()[])))]))((())()[[][][]])([])[][()()[(([(()([[]()])([[]]))()][]))]()])())])[]][(())[][]]()[]([[]][[]])()]]]][]))(())))()]()[]])[]]])]()([])(([]())[([][]()[](()[][[()()[][]]]))]))[]]]((([[][(()()[(((())[[(()())]])[[]])])]]()()([])))))](((()[[]()[]]([[]])[][()](()))[]))([[]][](((()([[]([])()]))))[([][[]]((([[([([()[([[]]())[][]]()()()])()]())]]))))])()()]][]][[((()))]][[]]([()][])])])()[])[][[([()(())])][][[]]()()]))[]))]()()())]([]())[][()][(())]))()]])([])((([][][][([])[]][][[[]]]()()(())(()[[[[]](())([][])[()()][][[[][]]][]]]())[[]]))())]](([([])]()()))[]]))[]))][]][[]()][[(())]((()))]]()())()()[][])]]([](()))([]))])][][[]]))(())([[[][]]([])][(()[()[]]([]()[[[]][((()([[]]()))[[][()]()])([()[()[[([]())]]()()][]()][]([])[][[[]][]])]][([])]))][])[])[])()[[[(()[]([]))]([(([])[()[](())]()[])(())](()))]])[]]([]))()))[][])[()])][([()])][[][]])())](()))([]))((())))[])()(()(()[([[()((([[]()((([]))[[[()[([]()(([()()])))()[[([[()[[]()]()]])()]()]]][(())()]([()[((([([]([]))()]))[]())]])[([[()([()])]][([])[([[]])[]]][()])()][]((([([[()]()[]][([[](((()[(()[()[[]]()()([[][]])[()()[(([[](())()]))][]][]()])](()()()))[[(([]))[][[]([](()))][]]()[]][[()([[]])]]))(([])([[]]())[(()([][[[]][[]((()([][]())[[()]][][()[]][()]))]()])[(([()[]]())())[][]([](()))][]([[][]]))[[[]]]](([([])])[[]][])[(((()[()[]][]())))][()[]])])[]()])()([[()]][])](()))))]][[[]()](([()[]][(())]()))])()(())])([()][]())[])[])]])(()[]())]()[]))))[]]](()([()(())[((([]([()([((([])[([[[]][[][[[][][((([([([[]][])](()))[]]()[()((([[[]][]])))])[])[]())]]]](()[[()]])(([(()()([([()()()]()())[[[(())]()[([()()[]])()]][]]]())([]))()(([])((()([])([]))[][()[][]])())()])((()())))[()(()[])][([]()[()[[[]()(()[][(([][[()]()[()[][[]][((([][()[]])))()][][([[(([]))](())][[(())()[]]]()[[]])]]][()[[((([][])[([])()])[])]]]))])()[()][()]]()]]()[[]])()((([[(([]()))[([[]])]()]][][[]])[]([[][]]([[]()([()()])[]]([]()([[]])()[(()[[()][[(((([[]([[()]((([[()[]]()][][])([][][]([[]([])]()[])([][])[[]])))[]()[]()])][]))()))()()[()]()]]])[]]([()[([[]()]()())]])[()()]))()()([][()])[][]))[[]]()[[()]])([[][]()[[[]][[()([])((([](([][])[][])()(([[]]()())))))][[()]]]]])]][()()()()()][[[][[([]([[]](()[]())[[[]()([()[([])]])]])[()()][[()]])][](())](())[()](())[()]]([[([]()(()[[]](([][([[]][][]())][(([([][]([[][]][[()](([[[[()[()]]()[]]][]][(()[()()])][](()[]((((([([]([()[()]]()))()[()(([()[([((((((())((()()[]))(()[])[])())[])()[]))]())([])[]]]))]](())([][([]([[[[][]]]])[][][()]([((([[]])[[()[()]]][[]][[()[()[]([])]][]([[(()())]][])[()][]([[([]([][][][]()(()[]))[[[]][]((())(()))([[()]][()[][]])])[((()()[(([]))([[](()[])[()](((()[]))([]([])(([(()([]()([])))][][[][]([])[](([()(([[([])[()]][]][[][[[[]]]]])[])()])((())(())[([[[([]([[]()]))]]([[][[]]])[[(()(()))][[]]]])([()([[][()]])[][]]()([]))])[])](()([])))(((())[()[[[([(([()]))[[]]])[][[]()(()([[][[[[[[[()]]([]()((([[][][()]][])[][[]](())(((([][])())[()[(([]()())([[]][][]()()))][([[()[](()[[](([])([][][[[([([][][][[][(())][][]])][][[]])]()]])[(([[([(([()])[[[([[]()])]]])][[([((([[([])()()[]]]()()))[][])[]])][](()(())()[]())])]()[]()((()))(([][()[[]()]]))][]((())[[]]()[][])[()](([](([()][[[]]]([]))()[])()([])()()((())())[[]])()[([]())[][()][((()[[[()([([[]]())([[[([][])]()]]()(()))])]]][([[]])[]]((())((([]))))[])(()))][[(())]]()[]][()[]])))])([](()))][([])[]]([][]([([])]([])))(()[][])([[[][[]([]([]([([])])))]()([]([()][(()(())[])[([()][][()[([]([[][]])([[[[]][]]][][][[]()[][([()()[]]())]]([][([][[[][()]]([()][])][][(())[([()])]]([(()[][])([])[][][]]))]([])()())[(()[[()][]()[[]][[(())[(()[([][()(())]())()()[(()()(([])[[[]]]()))[()()(((([]))())[()[][]([()]())]()())]][([])[()]()()[]][()]]([]))]([]())[()[]()]][]]])]))]][[]]())]]()))()()]])[])]])]][]([][])))()(())))[[]])]]([[[[[[[(([]()))]]]]((()))([][()]()()((()())))][[[[([()()])]([([]())](()))]]]][][]()])[]]]]()]())())]]]([[][()[]()]]()([](([[([([]([(())]))()[]][]())[]][]()]))))[([[(((()[])))]][()])]][]()(())])()(([])))[[[]]])([][()]()))([[()(())()[]]]))])()]([()][()])[][][([][]([]()))][][]))()(())]()()]([[[]]()()[]])])]))[]])([()])[(()[]())])])[[]()]))[]))))))]([[]()]))(([][][(())][[()][]]([[[[[][([(((())))][])]([]()[((())[])])]([(())[([[[]]]()())]])()[]]([])]([]()()[]([[[(())]][()[((()))[()][(())[][]]]([[](([(((()())[[(()[][()])[][]]()[()(([[]]))()(()())(()[]()([])((([]))(([][]()[]()))([](()((([[[][[][[]]([])]]()])))))))([()()][])(([])[])[][]]][[[([[][]]([()[[[[]((()))()[([[[]]]([(([[]](())(()[[([()()](()[])((())(()[([(()())])()(([[]]([()][(([]))])))]))[()])()[()([]())[]]]]))[()][][([])]([]))(((()[([[]])(((()))[](())[][])[[()()()(())[([[((()))]])]]()([()]([(()([]))]))]([]()())]))(()))(([]))][]()()))]()[()(([](([[[[]][][[]]][[](())(()[()])]][()]()())))[[]()[]][][[]])][][[]()]][]()]([])][](([(()([])(((([])[[][()[]]]))))][([]())[]]))])())()()[][]]]([[[()]([[]][[]][])][(()[])]()([][][[][]]([[][()[([]([()[][[([()([(()[()()]()[]([([][[[]](()[])])][][])())[]]())])[()([[]([][]([((()())(()))])())(()[()])]()()[])]]](())(()[()][(([]))])[]]([][]([]())()[()][[((())[[]])([()()[]]()())()[(()[][][()])]]]([][][]()([(()())[([((([][](([()([])][[]([])](([[([[]])[]((()(()[()])))[[()]]]])[])))[][[[]((())([]))()]][]([])())([[]])[])[]())])([()][][][[][([()()]([])[]()([([][](())[[(())]]()())([[([]()())]])[([[]][([[([()[[(([]))[]]()]][[[]]()])]])[[(([()(()[][[[[][](([[][]][((()()([[][]][()][()](((()([[]](())[([](([()([])])[])[][()])()]()(([([()][])()]()))[][])[()]()()[])))()[([(())((([])([])[](([]()([()])((()))[][[()]])())))()[]])])(([])))()[]()[])][[()[[[]](()(((())[](()()[])()([[(())(())[[]()][()][()]]()][[][](([]))])()[()()[[[[]]]]][([([](([][]())[][[(([([[]])[]]([[[((()([([])]())((())()))[]())[(()[[][][[]()[](())((()[])[][])](())[(())()[()[([](()())([]([[][[((([(([]))([[()()]][[][][[[(())]]][[]]([])()])[[]([])]])[]))](([][[[(())][[][[]()]]]])()()[(())][()]([]([(([])())])(()())))[][]([])][][]((()()[][]([[]])[])()(([()[]])))]))((()))[[]][()])([][])]][](())][]])][]]]()[](()[()()][])[(())][]][]())))][]])((([]))))](()))])))([()()][][[]([])(()())((()()[[]]))]())]]](()([([([])])(([]))])([[[]][([])][]][]())()())))]]]([]()))([])]))]]](([])[])([[]])[]()[([()][[][](())])[]])]]())[[]])[]]](([])()[][]))][()[]]([][((()(()(()()[]())[[]([])([])])[((((([[]][((()[](()[][]((()())[][])()(()()()())[[]])[[()()]][]([[()][(())()([([([[][[[[([][[[()[[][][]]()]]][][()()([()[]]()([][][()])([][()[]()()()][[]])[])[[]]])[()()[()]][][()][][]]]]](())[][((())[()]()[])][]])()[((()())([]()))[[]]()][]]()[()][]([[()]][]))]([][[[]][(([][]((())[[[]([]()(([](())()([])([()[(([])[([((([()]))[][[()]])[]([()])][()[]])][()])[]([[]])]](()[](()))[]))()[(([(()[])[()([][]()())][][](()[()][[]()[[]((([(([([][][[[]]()])][]()[]))()([()][]([()]))]([[]]((())))[()[[(()[])(()[()[]][((([][[][]])[]))[[((())())[[[][](()[])()][]]]][[()]]]()())()[][]()][[[]]()[](())[[]]]]])()))([])]](())[[()]]())[]]))[[[[()[[([[(()(([([(()((()))[([])])]((([[([()[(())]])][[](())[()[[]][]]]])[]))())][][][[()[()()[]][[()]][][][][]]()[]]()))[([][([])[](())])((([[([][()])][(((()))[])]][[](((()[]()))()[])])(()))[][][])(())])[]][][][][]])[]([([]([]))[]])()]]]()([[][]()])][]][]][(())[][][[]]()]]))]([](([[([[([]()())][]]()[]((([[]](([])((([]())((())))[]))()))))((([]))[](()[()()]))()()(()[][]())[(()())]]])[][]))[]]([][[[()]]]))))[][[([()][][()])]([()[()]([[([[(())]()((([([])])[]))]()()[])[[]()([[]])]]]())[]])([(())()])][]]]))()][()[([][[]]()[])]]]()(())()[[]])()))()[([]([(()(()))[][[([])()][(()[]((((([()]))()(((())(([]))[[()]([])]()[])[()][]))[])()[([][]()[])()[[]]()()()])[[([][](()[(([])()[[]](())()()[[[[]]][()[]()][]()[]]())]([[[()[]]([][])()]]()[(()[((())[])[(([([[[()[]]]])]))]]()[([[[]()]()[]]([])())])([[]])[]])[]))([()[[[]][]()()]()](([])[()][[]][][[]])(()))]][()])[][([]([([[()]](())([][]))]))][]()]]]))[](())[([])](([[[]([[[]](())[](([])()())])()]((())[]([[((()[])()([()]([][[]]()([][])))[[]([])([()])[]])]]))][[]]))]()]))((()()(([[((())[]([][[][]]([])[])[][]())((([[(())[]][(([[]][])(([][](()(()(([[]()([]([])([]()))[]([][([]([]))[([][])]][[]]([](()()((())(()))))[][[[[()]([[](())][][()][[][]][[]]()([]))(([[([]((([()[]()][]((()[])))()[()])[]()()())((())()[[][]((()))]))]])[()])()]]][[][()]((((()))()(()(())[()[]](()[(()[[()]])()[]()([([[(()[])[]]([][[][][[][][(())]][[[[][[]([([[[[([])]]]])])]]]]]())][()[()([[[]][[()][]()]()])]])[](([(([][](([[(([[(((([]([][[]((([])[][]))[[]]]))[([[]()][][((()()))][[]]())()[[()]]]))([[[[[([])]()][][][[]()][][()]]]]())(((([][[]])(([[]]([])[[()()()[()([[]])](())]()()][]))[]))[()](())))[]][][]]))][[(())[]]][][][][]()])))[()[]]()[](())[]([()[([])]()]([]))[([()()]())[[()]]]()())()])())])()[[()([])][]]][](()[[()][([()](())[[]([])](()[[][[][([])([(())([])])[]]][()][((((()()))()[])())]])(([][((([()[]]())))])))(([[[]([][()()()()][(()([(([]))()]())())[][[[(())()]]()]()([][][((([[]]())))((()))[(()[])([]())(([]))(((([()])[](()(()[](())[([()][()][[]([])(()[])[][]()(())(())][((()[][[()[]]])(([]))())[(()(([][[](())][[()][]]())(()(([(())][[]])[][]()[([](((()(()(([])))()))[](())[])[][]()[]())([[][]])][()]([]))()))[([][])][()]())]])[([]()[[][[]]])]([](([][])([[[[]()]]][(([[]])[])][[()](())()])())[])()[]()])[]))))[(()()[][[([(()(()))[]])[][]]][()[]][])[(([][[]()(([][([[[([([()[[()]()]]([]))(((([][[][[]]()](([][[[]]][[()]([[[]]])[(([]))[][[]][()()[(())()[([[[([])[[]([][])][([([()])](()))][]([[][(()([][()][](())[[[]()[[[]]]]]))]()[]][()])]]()()])([])[[([])[()(()())][][()[]]()[()[()]]](())]]]]]])[[[[][[]]]([]((()()[]())())([()][][])[]())](()(())[]())[][()[()()[][()[()()()[()][]][]]]()][]]([()[]][()()])))))[])[]])]()](())]([])([]()))[[]]][[]])[()[[()()[[]([]()[])([((())())()]([[][[]]])[[[]]()[]][])][[()[([[[][()][[[]][()]()]]]()[])][]]()]][()]()]()([](([]()(()([]()[])[[[]]()[[([[]])]][]])[][])[]))()])([]([])[[()()](())](([[][[((()))([])[]][]][]])[[]])(()))[()[][][[][[[([](())[[]]()(([[]][][[]])())[[]]()[])]]][][(([((())(((())[[()[()]([[][]])]])(()())[]))()]))]]]]))()[][][]()([(())([]([[]])())[]]([][]([][][]([[]]())[])[]()())[][()[()((()))(((()()[()]))[[()][[[([][][()])]()]]([()()])[[[][][[()]][(()[[[]([])[([])[]][[]]()]][[[](()()([(())]))]](()(([((([[()]])[])())[]](()[[[[()]]([[]][][])()[]]]()([(()[])[]]())([]))[[]()])[])[]))]()[][][[][][][]()]]()]([][[][()[][[[[[]]][[()[[(([][[]])((([])[()]([])()))())]]]([][()]())][]][]]((([[]][(()([]))()[]()[()([])]((([[(()[[()[]][()]]()[[]])(()[])[]][((()))(([[]]((()()))([[[()[]([((()()[]([](([]))[][]))([]))][()[]()[]][])]]]))()())[]]])(()[]()()[][][][]([]))[]))])))]][()(())])])][]]()[[]]())[()([()()])]]][]]])[()][]]()[()[]])][]()()]))][([((()([[[][](())(())([([([])][][])][(()[])][[[]([])([[]])[]]()[(([])(()[][]))][](())[[][[()]]()[([](([[[]]][](())()[]()[]()))([[()]]))[([([])[[]([])][[]()]]()()[()])()([[[]]][])([[]()])]([[]][][])[]()[(()[])]]](([])()()())])]()([()])[][]]())))])(()()((()(()[(())([[(()(()))[]([][]()[()]())]]([])[])]()[[]()([(())])]([][])[[()][[]]])())((()[]()()[]))[][[()]][(()[])])[[]][])]]())[([][][][])])[]())))](())[])][((())(([][[(([()()[]([()])(())][])[])]]([]))[()]()))(()[]())[()[[]]([[([])(()[]([])(())[[][][][]])][[[([[[]][[()]]])]][]]]()[()])[][]](())[]]()()))[(([[]][[][][]])())[]][[[]][()]()[([])](())][([()](())([])[(()[][][()[[][[[()[()]()][[(()()[][][[[()]]][](([(((()))(([[[]]]([()([])]))[()[]])[((()))()[][]][[[(([[(()()(()(([][[()()]]([])[][(([[]((()()(())))[[]]()[[[[[][]][()(())]]][]([[]])((([]))([]())[])]][[[](([])[])]])())])[])()(([([])((()))]))([[(((()[([()](()([][])))[]])))](())(([[][()][]][()]()))[(((()))[()][]())]]())([][[([()])]]([[[]]([][])[[]((()())()[])[[]]()]]([()])()))())(([()][[()][]()[]])()))[]([][]([[]])(()(([]([[]]())()))()))]][][([()])[]([(()[])])[]()[]]()([][[]])))()[[(()[][][][([])][])(((()[()](())))([[]][])[])](([]))]]([][][])(())]][(()()(([()()])[[][][][()[[][([[]])]]]])((()))((((()[([([[[[()](()([]))[([[]()]())[()[[[([()([]([()](())[]))[]])]]()]]()][([])]]]()[()]])[]([]([[([()]())(((((([()([[]])]))([([((())[()([][()()]([])[])()[()[][(([()()[][](([()])[](()[[][]()]())())[([[[[()]](()[()][]([(()())[]]))(()[][[[(((([([][])]())(()[])))[])]][(((([[]([])([][])]))((())[[](())[[(())]](([])[()]([[]]))])))]()])[]]][])][()[()()[]([]())][]]()]([][[]]())[()(([][[[()()][()([])]]]))[]][(())[]()])[]([]))][]]])])])[()])))((((()[])([][[([])][[([()(())][()][[[]]])[()]]]][])[()[]][[]][](())[]())[]([(())]()(((([]([[(()[[[([][]())]]][[[]]])][[]][[([()](([]())([([]()()[][[(())()]((()()))][][])](()([][][[()]][[[]]()[(([[[()]]([[()()][]])[[[]][](()()[])][]]))[(([[()]][](()[])))]]][()[]]))[(())[]()([])])))()]][]][[]]())())(((([][]))([])[]([[[()]]([[]()()])]([]())[([])])[])))[]))()[(([][]()[])[(([[]()]))()][][])]))[])()[()(((([[]]))))[[()(()[[]()[[]]([()])][(()(()))()((([[(()(([[]]([]))(())))][]])[[[]]()[]][[][]])[][][[][()()([])((([][])[[[[]()]]])[[[([([][[][]]()[])](()[]()[])[[([])[[(([][[]])([(([[[[]][(([]([]))([((([])(()))()[[()][][]])[[(()()([])((()())[[]])[])[](()[](()))[[]][((()()))[][(([][[]()[([][[]()()()])([])()][]()[]][()([])[]](()())()))[](())][]]()()[][()[()]](()(((([][])[][([([])()([][[]]())]())()[[]]][[[][([])()]]]([][[([()])()[]]()[]])[][][([()][[]()])()[][[[]()[[[[]]]]()([])]()[[([([[[([]([[[]()]]))]()]])[]((([]([][()()])()))[])[]([][[]()([(())])])])]()()[[(([])([()(())])[]()())([[][[]]]())]]]]])[])[((())[](()[])[[]()])]([])))((([])[][]))[]]()]][()][][[][[]]((()[()](([]))[(()([][()])(([[]])[])[(()()()[[]](((([([]()[(()[][][()[]])()(([])()[[([([[]])[]])]()])])[]()]))[]([()]((()([])[]))))())())()()[([[]])()]([(())])][]([]()))((()[])([]))]()))][])(()([]()([])([])[])[])([]))(()[(([(([])[[]])()([][[[]]()][(()())][[]()])]))[[[()()]][]][]]([][])[])][[()]()(()[])[()[](()((())))]]]])[([]()())[[([[][]()]()[[([([[([])(()[[()()[()[()]]]][([[[[][][[[]([]([(([]()[][()()]))[()(()[()]([[](([])[[[()[[(([((([])))][]()[([]()([])())])[[([[(()[(([]()[[[[]()]][[]][([])([]())[[]]][]])[]())])][]])[[()[][[([][()][])(()([[[()][()[[]([[][]([[()][()]])[(())([([[]])][])]][()[[[()][(((()))[])][]]]]()[()[[]][][]])[([][[]])()()[()(())][][]]]]]])[()])]]]]()[](([[]([]((()[(())()](())())))][])[][][])]])]]][[]][]]])()])([][[[][[[]][]]]]))]]))][[]]][]()]]][][[]])]())]()]()[])()])][]]((())))]]]([()])[]((()))[([][()](([][][])([()][[]])))][][][])][(()([](([][][])()[([])[][()][[[([](([[]([(([()](()(([[]][][][[[(([((((()(([(()[[[](())[((()(([]())()))[()])](([]))]])([()])][])))()([[[[][]][]]([[]()][][])[([][(())]((([()()(()())]())[]))())]()[]([((())())(([[[[()][()()](())][][[[()[[[((()))](()(())([([])()()[]][(([()])(())[[([][((()[(()[[][][[[([])([])()[(()[])()(((())[](()())))]]()]][]](()()())[[[(())([](((()(()())[])[])([[][([[]()]([[][][]])[[]])()]([])])([[][[[[]]]()()[][[][]()[(()[()()](()))][][]][[]][][[]][()()]]()](()([]))[[][][()[([])([]())]][[[()[]([[]([][](()[]))[][()([][]())[]()(()([([([[[(())[][][]]]([()(())])])])([][()[[][([][]())]]])][][[]])[[([])([([()][([][]()[][([[]([][()])()])]())])])[([])(()([]()[])[][])[()[][]]([[[]][()[]]][(()[][(([]())[])[()]])])]]]()())(())()]])][()[[[]]]()()]]][]](()[][])([[]]))([[[[[(([[]()]))](((((([[]([])()[[]](()())]()[][])[][][]))([])())([([(([[[[][[(([[][[[()]()(())]]]))](([[]][])()()(())[[([])]()])[]]]()]][()]()()))([[[][[[()][()()[()]]()]]]([])([][]([])[][])][][])]())])([()([(([])([]())[(())])])][]([]())[[]])))([()()[]])()()[]](()[[[]]()][])[][[]][][]]([()(([]())[])])[]([])[]([[[[]](()[][(([]())[]([])([][]))()]())]]([[([[]]([])[])[]]]([(([([])]))])))()[((()([])[[][]()[([])((()))(())][[()[[]]([([([])()]()[])[(())()]([][()(())]())[(()([]))][([()((()())[](()[()(()(([()[()]]((([[[([][([()]())()][[]][[]](([(())[]])))][]()]()]([([][[]()[]()[(()[()[()]()])(())([][])]][(())([])])()([][()])][][]))(())[])()[()])))(()()))()](([([]())([][([])])]((())))[]))[]()[([])])()])()](())[]]([]()[(())[]]([])()))]([([][][][()][])()(())()[]])](([[]](([][()[]])[([(())])[[][()][](())[[()()([[]])]]]([[]])[([]((([()]()(()))((([][[[]([][([[]][[]([[()]([])]())])[]])()]])[()]()[[]((((()[]))[()()][[]][])[([[][]])])][[[[][]([])]]])()))[][([][])])()[])()()[]()[[(())[][]()]]([]([])()(()))([]())]])))])[[]([])])[]]]([()]([][]())())[[]]])[[([])[([([])([([])][[][][]][][]()[])((([()[]([()[][[[[][]]()(()[][((((()))()[](([[[]]([]([]))()([]([(())])())][([[([[(()(([([]([]))]())[([]([[()[[[[()][]][][[](())[(([][]))[[][[[()[][([])()(())[()[][][[(()[][])[][[]]()][]()[((()()[[]([][]())()()][()]()([[]](()[]()))[[[[((()))]][]]]))]()[([])]][()()][]()()()()[][]()[]]]()[]][[]][]][[][]]][[[(((()))[][][]())]()](())()]]][[()[](([[[]]]((()[[[()][]]])))[((())()[])])]]]][]]][([])()[]]()][]))])[])[[[][]]()(())][([](()[[][]][()(([[]])[])])([][]))]](())(()[[][][([])([])()]])[][]][[[][()((([]))[])[()(())]](([]))[[]]]]()(([[[][[(()[([[([((([((([]))((())))((()()([(()[[[()()[]][][][([[[]]])]]][]())[][(())]()()()((()[()])[][])()[()(()[])()(([])[()])][()]][]))[(()[()])()[()[[]()]()](()()())[]])[[]()([()]())]][])()[()(())([[][[[]][][[]]]])])()[([])])])]]()()([]))]())]([(((()))(())(()()())())[[[()][]]([[([()](([])(())[][])[]((()[([((([]([[()]([])][]))[[][]([][()()][[]][()[][]]()[[]])[()[[]()[]()]]]([(())[()([])()[]]]([])([()[(())()]][]))))]([])()[(()())()[]()()([])](()))])()))]])[]][[][](())](())(([]))])([])[[]]]]])[()[[][][][]][](())])()[][(()[][][]())[(()((()(([])))[][]))]][])][[[([[[]]][])([([([])])([([][()]()())()])])([])]]()]])[]]))[[][[](())]()]))]())][[[][]([[(()()[()[][]][()[[]([(()[()[([[]][])()][([])()]][])()[]((()[([()]())[][]]))]()[()()()()])(())()()[][]]]())]]()[])()]()]]([])])][])))([((())[[]][[(([]((()[])))[])([])]])]([[[[([]())][]]()]]()[])([][]()))()[]()[]()(((()())[()])()[[]][([[([()[[][[[([][])]][([][]())]]]()([([(([]()))[]])][[(()[[]()][[]([])[()[](())]](([(())])))](())])][][](())[[()][]]()[][]())[()()][]([])[]]]([][[()[]]([][[(()[(())])[(()([](()[]))[()]([[[]]()[]()][[][[]](()(([])([])()[])([](())[]))]()))]]][])[[[][]][]()]()(()(()(())))]()))][]([])()(()[[[(([[][[(([])[])([[[()][]]()])(())([()()()](((())[[[[]()]][[]][]])())([[(()[])]]()(([[][]((((([])[][][()([()()[([]()[[[]()]][()]())]])(([()((()([[(())()]]())))][]()[[([][[[]]](((([[[[]]][[(())][]][[]]](((([]()()[]))()))[])))[])[()()([])([[]][])])[(()([]()))[][]]]()([(()()[((((()([])[[(())[([[()][]])([()()[()()()](())][](([][][])[])[])][([][()()(())](((()()(())[([][])()[]])[]))((()[[]][])[])())()][[([[[]](()())[([])]([][])])]][]]()][])))[])[[([])][[]][]]((())((((([()][]())))))[])()()])])([[]([[]][[]][][][])()[]])()()()[]([([[[[](([]([])()[[][[([()])]]()][](()))()()[])[[]]]()]])[][([])]])][]))[]])[][])([][])))][]))))[[]]]]][]))[[]][(()[]())]]]()][[[]]([()[]()][()][([[[[][([()([]())[]()])[]]]()[][[()([[(()([[]][[[]]]))][]][()])]][()]]][][()][][[]([[[]()]])()()(()()((([([]())]))()))[]])])]([])([]))(())()((()[]([]))[()]()[]))[]()()[]()])[]]][]([()]((([[[[[]]]()()(((([[]][]()))()))]]))()()()))[]([])[([](())((([][[[()][[][([[]])]][][[][[[[][]()]([])[]]]()][]()()]][[][]]([(()[[[[[()[([[()]])]]]()(()([][]))]]])][])))())())((()[([[[]([[(([]))[()[][[][[([])]]]][([()()()[][]([])()](())([]))[][(((([][[()()([(([()(()([]()))])()[])](([]())))([])[]()()][]()([])][])())[([])()(())]))([]())[((((([()](([])((()[]))[][]())))[])))][([])]]][()]]])]()[[[(())[[][]]]]]()()[()]]()[][[]]())[][[[]()]][[()[[[[[[]]()([[()()(())]()][[[[][][][][[]]]]()()][([()])([()()[]((()([])())([()((())[])][[()()[]]]([[]()]([[]]))))()][])])[[[[][]]]](()()()((()[[[()]]()]())()(()[]))(()))((()(((()[])[[]]))(())[])[])]](([[](([[]]))[]()[][()]()])[])[]((()))][[()][[[[[([[(()[[]])[[[()]((())[((([([])[(((()())()[])[()[()()()[[]][[]()]((())[](()[[]()(([[]]))])[([][])[]]([][]([([]()[()][[[[]]((()))[]](()[])]((([[]][][][]([[]])))))[][((()[[]])[])()]()])))]()])]])[]))([])])(())]][(([]([()])[]()[[]]()[[]]())[])](()()())][[([[([[](())])[[]()([[]]()()()[[([])[()][([])[([()[()()()][[][]](([]))([])])]]([](()))[[]()[()]()][()()()(())((())())()[()((((())[([]([]())[])]))([][(())[()][((([][][(()[])[()][]()[]()][()(())][][](([])[](([]([()[]]())()[()[]](()())((()))[]((([])([]))())[((((()()[][]))())()()([]))][[[()()]((((())))[])([[()]][([])[]()(()()[])[]([])]((()))(()))]])))((())[])))([[[][[()()](())()]]][]((()[]))[][[[]([])][][[]]]))]])[()()[[()[()]([([]([])[])[([])((([[([][[()]])([[(([[((([]([]()))[((())(())[][[][[][[()]]]]()[]([[()(()())()][]]))[]([]())]))[]]][]([]))[][[(()())]](()()([][((()))[()]()([()()[(([()][()](([]()()[]))())[])][]])([](()()[])([[][]([])]))][])))]][])]]())[[]][([[[]((()))[]]([][()][]()([[[[[]()([][(())[][][]()[][(())[()]](()(([])[][]([])))(())])]][][]()[([[](())][]((())))([])][][]]][]))[()[[[([][][])]]][]]]()())([])]))]([])][()]()[])]][([][])][]][][][][()](([])())[([[][[]()(()())[]]])])](([[]()()()]))]]](())[[()]])]()]()](()()))]]])]][[([][[]][])[[[[]([])][]][[]]]](([[(()())]]))]]][[(()[()])[][()((((()))[]((())([[]]))(([()]))([[][[[]()[]()[((())[([]()(())[])()][])]]()]])))][[](())]([(([()()]([][][][[[]]]))[([(())]()[]())][[]])][])[[[]]]([[()(([]))[]]][]()[[]][])([[](()[][()()[]]((()[[[][()()][[([][][()()][[[][()()()]]][()()])[][([()])][()[[[()[(([()()]))]][[[([()]([]))]]]]]]]()]]()()()([])([])]()([[]]()[]))))][][()][])[[]][(()[])]]]]]][]]([]())][[[([])[[]]][()]]()[([][])]]][(()([()[]([()])()](())[](())))]()[]([])([[()]][])[][[[]][[()[[()]]()](([([(([[][()](())][]))][()][](()([()][()[][][[]]][(()[[](()())([][])[[]][()]](()[(()(())(()[(([][](())))])[[[[]]](((([[]])()([(()[]())]()))(()))(())()(()(([[[]]]()[[[[]]([[]])]]))))[]]())]))[]]())[[]()[]]))[[[((()))[][]()[()][]]([][])[]]]()[[[[][]()]([([([()[]])()]()((([[()()[()[](())]()[][]([])[[]]()]][()[(([]())()[()][])()]][]([]()))[]((()())()))[])()())]())]]]()[()[][][(([[[]]([[][([])]][()])[]][]))]]([])[(())[]()()[]([()]())][])()()[])]]))](())[[([])]]])[])[[]]]()[][]()]])()[][]](()))(())()[])()])()[]]((()((()))[()][()][([])[]][](([[[()()][][]]]()(()([([[()([([])[]])[]]])]()())))[()(([][])(()[[()][([][]())]()][][(([([([])((([[([(()()[[[()()[]]]])()][((()))[]])]][][[((((()()()))([])()[()]([()[()][()[]]])[[]()[[][([]()[])([])([][])]([()]())[]][]]))]]))[]()()((([[]])[([[()][([[]])]][[([])]][])(([[()()]][][[(())]]))][])))[](())](()()()))[]]))][][]))])))])()])()([])())]][]()[[[[(()()[(()())]())]][]]()]]([])][[[][]]]([[[]]])[][]([(()[[]])(()[((()([][]([]))(()))())[](([(())[[()][]]([()])[]][[()](([([])()()(([([[]()])()[]]))()])[()]()()[]()[[([]([[()]()(()()())]((([[[]](())[]][([()([])][])[]](()[]())))))([((([[(())]([[[]]][]([][]))[()[]]])[]))()[]([][])])())][[([])()([()]()(()))]]][()[[[(()[])[()(()())]()[(([][][([][[((())()())([]())[([])[]][]]]()(()))]))]][([])[[[]]((())())]()]]]])()]))[](([]()[()][]))[]([])])])]]][[]()[]][])()()(()()[([][])()[][()][[][[()]]()()](((())))]))[[]([()]((()(())[[]]))()((()[])[[]()]())[[][[][](()[][])[]]()][])()]])[][[][]([])((()))()][()[[[]]][]]()()[]])([([][])][[[[]]([[()[]]])]]))))][]))]][()][]]()())))[([])()[][]][((([])[(())[]]((((([([][][])[()]]()())))[]))[][])[((()[([[[[[][]([[]])([][()]())]]]])()[]()([][][][([()[(()([[(()[[]])]])[])(())[]]])][[([][][[()[[]()()]]](()())[(()[[[[[[(([[]])[()])]][((()()[]()[])()[[](())])]]]([][((()))()])()()[]()(())[]()]][()])])][]])(([]()))]()[([[([[([[]])][()][[]()]]()[])]](([[]]()[])))][][()]))[]][][(()[](()()))])()[([[][[]()[][([])]()[]()(())]][[()]])()([][()])]][])[[](())])((()[[[]]]))[((()))[]]]())][[][]])[()][]))[()[]]()()]][][[[][]][]([(())]()[[[][[[()]]([[()()]([[]])()[[[[][]](()())[[]]]()]([[][](()())[][][()]][]())][][(())])][([])[][(([])([][([]([([()]())()()]))]))([])()()][(()[[()][()()][[[[[]]](([]([[[()((([[]]([]))((()))))]]()[([][()]()([[]]([(())[][]])[[]()()](([[()]]())[()()][][()]))[([](())()()[]((()([()((([][]([])[[]][[[([[]][[]])()[]][][()([()][][](()()[[()[]([(((([]())[[]])[[[([([()[[][()()[[]][()[][(())](([])([])())]]]()])](()[[](())[()]]))]]()()[()[][()][[(([()()[()]]([]()()(([()()[]][](([[([][(())])()()][]()][(())][][])))[])())))][()][][[]]]][[](((())[()[()][][]]))]()[]()])())])()][()([])]()]()))]](()[[]])]))([([[]]())][[([[[[[[[]]][()[]()[()]]]][]]])[()](())[([][])()[(([[][(()((()([[]()]([])[]))))][[][()[[]()]]]][])[[]([()(())])])(())([[[]]()[]])]]]]))(())]()[]))))])]][]([([[](()[[]()][[[[(([(([()()]))[[]()([])]()][(()[[[(())]([]()())[[]]]][[]()()[[]([([]()[](()())()()()(()([[([])]])[]([[[[[([])[][[][][()[][([])](())[]()]([[()[][][[]()][]]()])[()[]][[]()()[]](())](([]()))][](((())()[]([][])))[][([([([[()[]([()[][([]())][[[]()[]][][()()[]][][()()]]]())]])]())])((([()[][()(())(((()))[])]][])[])[[[]][][][][]([]((([])[])))])]]][]]])()())(())()[]())[[]][]][])]()([(([()[[][()[[[]]]([])]]])[()][()]()[])([[][][]])[[[][]][][]][][([(())()])]()][([][[()]])[()]])()])][(()[][][()])[]][((([]()[][][]()(()))))][[][]()([][()[][[([])]]()][[]])([])]((([[]((()[]))((())())][[(())]][])(([[][]()]()()))))))[][]]()](([][(())(())([](([([[[[]](((()))[(([()[[]](([[(())]]([]([[][]]))))[]][(())()[[]([])]()][])())([]([[][]][[(()(([[]()])))]][]))][([[([[[]]()((()))])()]])[(([[[]]][()][][([[]])][]([])[]))()[()]((()([([()(()[[[()[[][[]]]][[]]]()])][[()]])]))((()))[([]())[]()][]()(())()[])]])()([])([])][]](()[()][][])[()([(([]())()()[][()(([()][])[][])[]()]((()()[][])([()([])][]()()[])[([[((()))()([])[]][[][]([()])][()[][]](()[]()())]([[()]][]([]()[]()))[(()[[]])([])[()]()[]]())]))](([])[](([[]])[])[])[([[()[]][]])][])][])(([[[]][[[]([[]][()]())]]]))()][][][])(())))()][()]((()))([[(([]))]])()))]()](()))(())[]()])((((())(()[(((()[])[([()(([[[](([[][]][([])()()]))[(([([()][()([()()])])()](([[]]))))[]]((([])[[]]))()]([])]))[]])[]])([()]))]))[]([[]()]([]))[]))(()((([][]))([[](()[[]]([]))])))](()[])[()]))[])())[[][]][][](([(([[[][][][()][[]]]]((()[])([])(())[](())[](()(([])([]))(([]([]))))[](())()[[()[]]][[[[]][](())()]][(()())()])[()][(())()]()))])()()[][()[][(((()[]))[][]())[[]()]](([][()][]))([])([]())([[()[]]]()()()(()[][([()]([()]))][])([]()()(()()))()[]([()[][()]()([((([])[([[](()[]([[[[()(())[()(()()())()()()]]]()]()[]][]))])[][[][]]([()((()[]))](())())()()()([])]))]()(())([()[]()][[(())]([][()[(((((())())))(([])[][]))]([[(())][](()()())[]])[(([][[][][]])())()[]](()()())])]())())])[()][()[[[[(())][]]]][(()(()(()))()())[][]]])])]]])[([([])[][()][()()[[(())][][(([[()()[]]][()])([([()()])]))]]][[]]([()])])]]]][]])[[]]((())([]))](())[()[]]]]()([()][](([(([()]))]()[]))))))][()(((()))[])][]())()([[[()][][[]]][]])[][]([])(()[])([]()()[][[()]])[[()]()][]())[]]()[][]][()()()[]][]][[[]]][]])([][][])]]([[()]][()]())])]][([([[[]][]][][])[]][[]])[[[](([]())([](()[])))([[]]([]()))[(([[()]]))[[]]]((([([[[()[]]]])()]()(([][])[][]()[[[()]]])(()[([](()[[[()][([()()()])[]]]][][]())([][]))]()[])[])[()[]]((()([])[][(()[][][([[]][])(())[()][([])]][])])[([])])[[]])[()][()()()((()))[][][]]()[()[]([])])]([[(()[[([])[[]](())][]](()))]()])[]()]])[]][][]([][])[()][([[]([[][[][[()](()())]]()])])[[]]])[]][][[]](([]))([])([[()[()][]()]()[(()[])]][()()]())[()()[]]([]()[][()[[]]][()([])[[([])][[]]()[]]]((([](((()))))[]))[[()]]())[]]][[]()])]][[][]])[(())][[]])[][[((())[][([]([])()())()()([])[]])]()()]][])[]]()[[][][]])))()[[][]]([[]([]([[((([])))][]])((()[]))())]())[(([]))]())[()()](([])))])[[]]][(())][[]()()(([()][[][]]))[[[][][]([[[[]()()((())())]]()([])()[]]()[][])]]]))[[][(()[[]])]])[]([](([()]))((([[([](())[][])()()[][[]]]])[[()]([])[](()([()])((()))())[()()()][[()()[]]]([[[]()][(([[((()())()[([])][[]]()[])()]()])(()())[[[([])]]])()[([[]])()]]()])]()())))](()([])[[[()[]([([()][()])])()][([[[]][(())]])]][][]])[[([][(([]))])]()][][]()[()[](()()([])[])[]][[()[[[([](([([[([[]([][()])[()][]]()(()[[()]]()[](()[])(())[[](()[][[]][[]][])()]))((([][]()(()))))]()[(()[(([][[]])[()])[]([]())[][]]()[()])]()])()[[][][()]][][[()((([][]([()()]))[()]()[((([()][])))]))([[]]((())([([])]([[]()[()]]()))((()(())))[]))(()(([[]]()[]()[[[(([[()]()[][[[][](()()[[[][]([]())][()]])()([]()[])()]]]())[([])])]()[]]][[]]))(()))]]()])))](([](()[]()[[]][](())())))()]]]][[([((([[][([[[][](())()](())])]]))()())[][[[[]([]())][[[]()[([][[([(())()()]()[[[[((([[[]]()])))(([()]()[()]))][[]]]]])]][]()())([][(()[()[[][[]]]()])[[](([[()()([]())]]([[]]))())[()]][]])[]][]]]]]])()]]]]([([])](()))[([[[()()]()]()()[()()]((())[(([((()[()]))()[]])[][])])()])()]]([][])((([([[()]]([[()]][[[[][]()()[]]()][][](([])[()])][]([[[]]()([]())]())[])()([()[]][]())[((()))(()())]())[[](())[]][](([[()()[[[]([])()([[]((()))[[()[[(()())]]]()]([()()](()[(())([[()][()()[]]])])[()[()([](()([][][[]][](()([()()])[[]]))))]][])[]][[[[()]]]][([[[[[][]([()[]])()[]]]][[]()[]]][])([[[[]()[][][]][]]([[]][[()]])()]())(()()[]())])[()([]([()]))[]()[([[[[]][()]()[]([()[](([[[[([])[]][[]]]][[[()]]]][]))])][]((()[()]()()[](()))[])(())]([([][()])[]][]()())()(()[]))]][[[(())][]][()]()()()]([()[(()[[]])]])]]]([([(()())()()])[][()()]])][]([([(()[][()[][[([()])][[][](())[]][][]([([][])]([()][][]))()]][])])([[[][[((([][[(()[()])][][]](())[])()))]]()(()[][])()]])])()[[]]))]()()[]([[](()[[()[()][]][]][(())[([]())[((()[[][]]))][][[(()[(([][])[([])]((()))([][]))()]([]))]([()()[()[([()[()[[]([]([[][()]])[]((()([]([()[]][((()[]()([][])([]([([][[]]()[](([(()[][]()()[][](()))][[[][]]([([]()()()[[][[]([((([()[()]]())(()[()()[([()])[]]([(())()[]][[][]][])[[]][(()()(()))][[]]][])[[([[](([[]]([[]])))](()[(())()]))()()()([[]([])])([[]][(())][[]])[[([()][][[]]([]))]()]]][]))[]])[()]](())([][])()([])]()[[()][[()][([])][][]][[[][]][()]][][][[][[()][]][]](())])[]]()[()()]()()[][])]))[[[[]()]()][([([()])])]])[([][[]()][[()]])]()]))([[]](([(([](()[[]([][]()[])[[](([]))[](())]][][()[]])[](()[([[()]((()[]())(()[])(()))[]][(())](()()[]))(())][]()([([()()][](([((((([][[]]))[])))[]]()[([[[([]([])[()[]()])]([])]()(())((())(([]()[(([[](([])()[]()[][])](((()))))[[]([])])])([])(([][])()[[()]]()())())[[]()])][]([]))()((()))()[](([]))((([[](())[][]])[(((([[]][(())([][[[[((()))]((()([([(()(([()()()](([])([([][])](([])))[([])[(([]))][[]]]))[]()))(([]([()([])([[()[()([])][[([[][[()([[]]([([])])[[]]())()]]()])]([([[[[([])][[][]([][([([[()([(())])]])])[]([])]()[[[[()[[][(())()]]]][]][[][()]]])[(())[]]()]](())[[(((()[]()[()([])][()][()[][][][([])()()]])[]()[][][](())[[][([]()[][])()(())]])[[]][][])()[[(((([((()))]))))[(()[([[()[]]()])])]][[[][]]][][]()][(([][[(()()[()[[[]]][]])]][]))((())())]()]]()]])([([])(()(())()[])[([()]())]()[[]]][](()[][()()]))()])]()][]([[[[[()()]](())[[]()][]][]](())][(())])])()[([(([()[()()][(()())()]][][()[]]([]))([((()([])))[()[][[()][]]()[[[]][[][]][]()]()]](()([()])()))[](())([]()([[]])[]()))([])[[]][][]]()()[()])]([])](([()[()][[]][[([])[](([][]([])))()]]][[()()]]))[])[()])[][([[]])]())]())]))[()()[[]][(([(((()[][[]()][[][()([])[(())]]()][][[[[[(([])[])][[][]]]()]]])))][])[])]](()[[]]()))[()[((()[])[])][]]]]])()([()[[([[[()]([()]([()()])())]()])[[]]]]()[[]]])[()]()[][]]()))()()))(())[[]]][[(((([[]])([()[](([[([()[()]([])[][()]()()](([])[][])[][][]()[][]([(()[])])[[][][]](([](())))((()[])())())[[([()(())]()())([])[][[]]]][()()([])(())[]](())()()][()[]]](([])[[()]]))[([]())[()]]())((([])[[[][]]](((()[(([[()()[[]][()[()()][[[]]]]([][[([]((())[()[]()[()]()[][]])()([()]))][]]())[[()]()]][][[([]())]]()](([])[]([])([[]])[]))[[[[][][[((()))([([()][])[]]()([])([([])]))][[][]]]()[[]([[(())]()[]])]()([]((([])))[])][[]][]][()[[([(()[](()[[[][[]]][]]())()[[]])]()())]()([[]][([()[[[][][()]]]])[()]([][])()])()([()]()())[]][]]]([([(())][])]))([][[[]][([]((())))]]())][])[[]([][][[()]()[]][][[]]())])[([[]([][()])[]])[][][]][]()))[[()][()[]]][])]()([]()(()[]))()[]()[]())[]()[[]])))]]))[([][])]]))()())])()[])))])[]()([(())])[[([]((([])(()()()))([][[]])[]()))()[[[][]()(([()][[[[[[]]([])[]()()[([]()()(())())[(([])())]()]()]]()[[()]()]]]()[]))]]]])([[[[][][]([][])[()][][[[]]]](()()(([]))[][][])]]()[(()())]()))[]))]())())()[])())([()()]))[[[[][]]]]]][[]]])[[]]()]]([[](())])])([()][]()[]())]]()])])))())]][]()(()))(())]()[][](((()((()))())())[])[(([([]([])[[()[(((()))()[])]]][([([()(()[[()]()](()())[][([([]((((()([])[]))[])))])()[]])[]()[([][][][]()()())][]][[]])(([[][()]][]))()([])(((([(()([[[()]]()[[][()]]][][[]([][][])()([])])[](()[]))]((()[]()()(()))[[]([[[[([((([])()[])([[]([][([((()[])[[][]])([[]([])][[]()[[]][(())]])(())][()]()[][[][(((()()[])))]]([(())[()([[()(([]))][(())[]([()[]]([[[]((()))]](())(())()(())))][][]])[[]][](([][()][([](()[][([]([]))[()[]][([[][((([[[((([[]]))[](([[]])([][]([[]][[][()]][[]]))[(())])(()())[(())])([]())[][([])]]]]())[[]][]())[])]]([]))]][])[])])[()[()]][[[]]([([[[][][[]()(([[(())[]]([]())[]()])[()])(([][])[])]]([(()[((())())(([](()))()[[]])()][][])[]]())])[]])()]([[[]](()[])]))()([()[]][])]()[]][]))()](([]()[()]))(([[()]()][][[]][]))([([()])()][((()))])())(()[][])]()()[([[]]([(([(([]))()[]][()[]((()))([([(()())])])]([][])([[]])))][][(())]))]([]))[])][([()])[][]][[((()[]()))[()]]])()]]]()])])))([()()]([]()))[()]))]([[]])([[]]()[])[]())])()]))[][([()])]][[()]()([])])(()(([])[]))]())[[[[(([]))]][[[]([[][]])]]][][[]]])())[()(([])[(([[]]))()]()[][][[][][]([([[[[]()]]]([]))[]]())[][([[()]][()])]()])([[]])()[]]()))([])]()])))()]()()]([]))([([[]]())()(([][[](())(()[][]([[[][[()([(()([([()()()()([])([])][(())])]))([([][])][[[(())][()(([()][][[()[]](())([])()])())][]([(([])[([(()[[]][][()[()()]])])([[([]())][([][[]()])][[[()[]()[][]([]()[[](([]))[]][()][([])((()[])[(())[]][(()())[][(()([()[](())[]][()(()()[][[]][()])[][][](([][])([])([]))][()][[]])([]([[]])))()[()][[[[][[]]][]]]][]])()[[[()][[]([]([]([()])())())[]]][(())[]()()([])][(((()()([])[]))([])[]([]([]([])))((([][]())()))[][([])[([[()()[][((()))[([][()])][]][[]]]])[]]])](()()())()[][]]((()[([]())[]])([][((([]([[]]))()[[]()][([])[(()())[]]]))]()))[][]])[]((()[])[[[[]][]]((()))()([][]())[]])]([[]])[]()[[]([][]())]()[[]]][]()()][[][]]][[]])])([])])[[((([])[(([]))])())]([])[]([])]]][])()][][[]])()([([][][])])[][](()()([][])([()[[()]([][]())](([[]](((())))[][()]))])[][([]()[][](())(()([]([[()]([()[]])[][]([])])[]([][[[]([])([][])[]](())[]])((((([][])[([[]])][][])))[][]))[()[][[[]]][[]]()([]())[]]))(())[]](()[])[])]]][[()][]()[][()]]]))()])[[](([[](([])())()[[[[]]()[]]([]([([][()[[(()[])([[(())]])()][()](([((((([][]([]))[[]][(([(()()([([[]])]))[][[]]()[[]]])())])()[()[(())[[][()[[[]]([[[(()[])]([])()](()([]))(()[])[[()[]]]]([]))]](())[][([])]]]()])((([]()))()[(())()])[[]][]()[([()()])[(()(([(([])())([(([[]][]((()))()))])((([]((()([][()][()]))([][[()][][][()[][](())]()[][]()([()]()[][])]))))[]((([]))[[]])[()])[]](((([]))()()[[]()][]()()())))())[])[()]()]][]()))]))](())])]())(([[][]]())))[]]([])])[[]][])])[](()([()]))[][]][](()[]))(()(([])))))[]))[()][[]]))])[]()[[()[]]])])])))[])[])()[][[][]]][()][[][]([((()()))(())])[]()]()((())())]()]))])])()[])(()[][[[([(([()][])[()[]])[][]])([[]()]())[[]]](()()[][()])](([])[])[]])((())())[()]](())[](()()[][])[]))]()[[][]([[]()][((([[]])[(()())()()[()(()([][()[[[]][]][]])([])[][][[()]])()]]())[]())([])[()(([]()()()[](()[])))[]()()()]])[()]][])[[]][()([[]([[()()[]]])[[]]])[]([]()([[]])[][])()()[]]]][](([][([()[]])[]])[([(([])[(()[()([(([()[][()[]]]([][[]])))[]()]()[()()[[]]][((([(())(([]))][][[[[[][]()][()[[([]()[[()]([[][()]([])])[[()([])]]()()[][([]()[][])[]()[]]]())]]]][(([]([])[([([])]()())]))([])]][]()()[]()()])))](()[][]))()][([[]])[[[][]]]()()][]([])(()([[[]]][[[][]]]))())][])[()]])])([]([[]]()()))))][]))))[]][]))(([][[()[]]()])((([]((())()[])))([[]])()())[[]])][[][]])[[][[()[[[]][]]()[]]][]](()[]()((([()()[[[][[[[()]]]]]([[()]]()[[()]](([]([])[][[([])][]])[])[[]]()()([[(([[[[][([()])[()]]()][]][()[[]]([(([]()))][]())]])[])[]]]))[[]]()[]([][(())]([][(()[])])([]))()(())]([][(())]()())]([[([()])((()())(([()(()[[]][](()())[()((()))]()(()()[()]))])[()[(([][](([][((())[][]())][]))([]()[]))()()()[()])](((([][[]()([])[[][][()()]()]]))([][]))())](([])))()[()]([][][[([((((([[]]()())())))(()[])[][])])]])()[](((()()))))]([][[[]][]([])()])()[][()()(())[()(()[])[[]([])()]([()]()[()([()(()()[])()])])]][]]))((()([])))([[()]()]))[]))([])[][()])))[()](()()[][()]()((([()][])[([])])()((())()()()))[]([]))[]]]())()][[((()[()])()())(()[()[][]])(([][[(())[([][])[()()]]]()((([[[](())]()[[]([()])]()[][]][[(()[()([([][()([[]])([])])])])]]([((([()([])])))]([])[])([[[[]()[(([]))[]]]]][]([])[][[([()]([[()]](())[(())[]()[][]]))]([[()]()([()]()[[]()][])[(())][[()]()()(([])()([]))[()(()([(())()])([]))][]]]([[[]([([])[([][])]][])()]]([](()))())[](())[[]])()]())))[])])[](()[]([(([(([]))][]))[()]](())([](((([()])(())[([()])()[([])]()()(()[[]])]([[]([()[[]][]()])()]([])[[]()[][[()]]]([([()])[]][(([]([([])()](()(()([][]()))[[]]))))][]))()[])()(([])((([[]])())))))[[[[]]]][][][[()(([()])()[[][([(())[][][()]][[][[()]]])][[][[][][()[]]]](([[]([()][]()((())[[][[[]]]][][]))]))](()))][[][[][()]][[()[[(())]][([]([()])(((())(((())[])())(([][(())[]()])[])([][[[()((()))()]]](([()[[]]()()([])][][])([]()()()[([[(())]]([])()[]()((([][])())())[[]])()()])))[(())])()))[][]]()]((()[()][]([][(((([]))))])([()()])[](()()))())]]]([()])[]([[]()[]((([(())(([](([([[[[()[]][]]]()()(()()[[]])([(((([]))[[([]([[(())[[]]][]()(([[][]]))[]()][])([][[[]([])]]())()[[]])[()[]()[]]]()][]))]()[()([(())()()[]]()[])])[]])[]]))(([][([])()][[]][[](())[[[][][]()]][((())[][][()])[]]])())))()[([])]([()[[]]()()()]([])((())()[()][(()[][[()][]]()())])[]((())()))])()))]()))([[[]([()])]]()(())[]()[][[([]()[([])])]][()]))((([([])](())))))()[])]])]))][]()()[]()((())))][]))))[]()()]])((()([[]][[]]))()[[]([(())])][][()()](()[](()())())[[]])()([[]](()[]))[[()]][])()[()]]])))]()])]([])()]))([[[][[([([[([])[[]][][([[]][[]()][([[]](([([[]])[()[[((())(([[]()])[[[]((()()[()(()[]())]([[[()]]])()[[()([()][[]])]])[])()][[]][[]]][]))[]](()[])][](([[]([])([])][]())()[(()()[])[]][])]([()])([()[([]([([]()[([[[][[][[]][]()][(())]]][][[]])()()[(()([[]]))][]][[]][][((()))()[][[[]()]]((()[(([(([[]])[([]([((([]))([][])[])[]][[]]([[]])((()()[[[]]()]()[])())[]))[()]()])]))]))])[][]()()]))()]()][[][]()()])]()[]))[((([[]]()))(()[([[]])[()]]))[[][]]][()[[[]]]])[]])(([()([[[][]()][([()])]()([]()())]([][]))])[])(()(()))](())[[]]()]])](([](()([]())[])[[]()][()])))]([])]]][([][[[]([[][(()([([])[]][()()])[(([[[]([[]()][[[]][][()]]([](([])([(([]()(()[[]()][[(()[])]])()))]))()))(())]]([][]()[(())(()[]()([(()[])(())])[[[]]()][])([][(())][])])[]))])]]())(())]([]((([]))[[]]))[[[]()][]][]])[()[[()]]()]([])(()()[])]())[])(()[])][()[(([]()[]))]]])[]]((([])))()))[()]()[([])()])][()[][][[]]]]][]([[[]]][[]]())(([][])[]())()[()(([([([([]([()[[][]]]))()((())[][])][])])[([[[[]]][[][]]][])]])()[]()()[[()[[][[][[]((())())[]][[][]][[]()][]((()[][()]((())))[[[]]])]]]()])][[]]()[((([[]])[])())[]])]]((([[](((())))[][[]]()([()([])])(([[(([]))]]([()]([()()][(()[()])()])(()[()()]([])[[]]))[([][])[]]()[]((([[]])()()))(()()[]())()[()][()[()][]([](()))](()[])()[][])[])])[()()][[()()][][]](())[(())][()[]]()([(([][(())()()]()[]))])([])[[[]]])([([]([][]))((([()])([])[][()[()[]]])([[[[]]]]([[[[]([([[(()())][](())])])]()]([]([()][([])[[[]]]()[]]([]))())(()(()))[]][][][][[()](()[()]()[])[](()[()]((([]()([[[]()]][[([[([])]])()[]]()[()](())])()([([[[]([()])]]()([])[][])])())[[]]))[([])])[()]])([()([[][[()()]][]([])[][((((([])[[]][[][[]]](()()[])()([]([([])][[]()()()](()([[(())]()]([()[]][[(()[])(()()[])()]])([[()]()[[(([[()]]()))]]()[]])[])))))()))(()(())[(())]()[[[]](()([][(((()[()[[][()()]()][(([](()))(()))[]()][()[()]]()])[()[]]()[[]])[]()[([[][((([])[]))[([][([[][([][][()()[()((()))[([])]]][()[](()[])][]([]()(()))[]())[[([[]])()]([])([[][([[(())(((())())[])]])[(()(()[()[[]](())]))][]]])[][][]()]](()[])()()[]](([([])][])[[[([](())[][])]]([]())]))][])]([()][])]][])]()([]([([])([])[(((()[()()])))([[[]][]]())]()[](())]))[])[()()()[[]]]][()[]()][()]))()][][])[])](())][[[[([()][(())([][()(([])[[]](()[]())[[]])[]][][])])(([[]()][]))]]]([]())])[[[[]][()[([]()[()([][[[]][()()]]([()[]]))])](())]]]()([[[[]]][]()[()[([((())[][()()][]()(()([])[[]](()()([([()][()[(())][[()]]])[[]]][])((([])(()[[[]]])[[[[]][[]][]]()[]])))(((([()()][]((()()[][([])](()([[[[[()][][[]][[]][[]]](()[])[[][[[[]([])()][]][][]][[([[]])[([()[][]]([[]][])())][](())[]()[]]]]][][([([][])[()]])]]][][[([])()]([])([]()(([])))][([][[][()](([]()[])[([(())([()()()])][][][])[(()([]())[[([][()](())([]))]]()(())[])[][]()[[[]]](([](())))[([])]]([()](())(())(()([[][]]()))()()())][[[()][][[][()()][[()()[[()]]]]][([()]())()()]((())[])[()((())[]())[()]((([()()([[[(())[()()]()[]()]](((([[]]()[[][([]())]]))))][]())]))[[]](([])())((())([[[[]][]()[[]([()[]([])[(([][])())]]([[[]([])([()[]])](([]))]()[])((()[][()]())(()))[[]]((())))()[(())]][(([]()[[]]((([]))()))(()())[](()))(([])([][]())(([]([()][([()][]((())))()][])[])[()][(()[()[[()()]()][[[][]][][[]][]][][[][[][([])]]([])[[]]][]([]([])[(()())]()([])(([][([])])([])))[[()]][]]()()()([]))]))](([][([[]]([()()])[])()[]]))[]()](()[])[[[([])]([[()[]]()()])]]](())[[]]())()[()[([])()[][([[[]()]][[]])([()][])[()(()())[()]][]]]]))[[([])(()[])([])[]][]][]]](()[]())]())([(())[]][[]()[([()([])[]](())([]()(((((([]([])([[][[[([()()(())])][()][()]]]])))[][([])[]()]))[])))[(()()())])]])])]()))))))[]))[([()]())([])][()](()[(((([](([][][(()([()[]()[]]([][[]]))()[])[]][]))))[([][])[[([[][()][[()[]]([(())(([]())())])][[]]][])][()[[[]][]()]][[[][[]][([[]()][][([(()((([()[[]()[[()]()()()(((((([]))([][][])())([])([[][[]([[](()[[()]])[]])]()[]])))()([][])[()([()[]])])]][]])))[[][]])][(([()[][]]))])([][([[([[[]]])[]]]([][]()()((([])(()(([()()([(()(())([(([[]([()()])[](())]()[()[]]))][][[]([]())()[][][[[[[[][[]]]([]([](()(((([()[[([()])[[()]()([])([][])]]][[][[]()]()]]()[])([])[][]))([()()[]])))[]))([][[]])]]]]][[]])([[[([]())()]()[[[()]]]][]])(())([](([(()[]())][(((())[]()([](()[[[()()]]])[][[(()[][[()()(((([()]))[[][]()])[[][]][()(())]())([([[]])()])[]]])]][(())()([])]((()[]([()][])[]))()))([[[]][()]]()[]()[])(())[([[]])[[][()][]]](()))[[[()[]]]()()]]()()[])())[(()[[]])][(())()][((()()[([])]([][]([]))([[(())[((()([][][()[]]())()([])([[[[[[(()()[]())]()][[()()]]]]]()][][([[][([()])()][][]([()[]](([]))[[][](((())[([()]())])([()[(()[][[()]]([]))]]))][][()[]])])(([[[()]][][([]()[()]()[[()([]([(()(()))[][()](([])(())[])])([]))[[()((())[])]()][][[[()[[()](()[()[[[]]]])]()[[()([[][][[([])(())()]]()])][]([])]]][(())[](()(())[()]())(())]]]()()()][])()[([[][[](()[[](()[]()[[(([]([[]([])([[][[[[(())([()]((()([[]]))))]]][]()][][()[[](()()[]((()))[]())][[][]][([])([]([[[]][[]]]([([[([([])[[](())[[(()[(())()()[]][([])([[][(())]]()(())([])(()))]()(([[]][]([()][[]])))()[])][[]]][[[[[]]()]]]()]]((([[](([[([])(()((()))([]())[()])([[]([[[]()]][])])[][]()]]))]()[[([])()()]])))[]()())]]()[])]([]))))()[[()]][][]]()()]()](([()()][[]]))(())([[[[]([])]]][(([])[[][]()]()(()[](())((([]()[][()[]([[]])()()]))())()[]((()))())([()[()]]))([])])[(())()[()]]()[]([]()(())))[(((()((([]))()[]))[])()[([([(([])[][[]([][(([]))]())[]])])(())[[()[]]]])[()([[[(()[][])]]()])((((())()))([](([[[([[()][]])[]()([])[(()[(()((())[]()))()[[]]]())()[()()[[]][()[]()()]][]][()]([][[(()(())[(()()()([[(([([])](()(())())())(()[]))()]()]))]()[])]][([(())[[][][]][(()())()[[([])[]((([[](()[[]])[]])[]))[]]]]]()[]()()(())[](([][])[]()()))])][]([]([()([][]())]))(())()]()])))[])[](())[[()]]][[[()[][[[()]]]]]()][]()[]()()(()[][][[()]()][]()([]()([[([])]])(()[])([][]()))()[([([])()([[]])][[[]]][[[(([((())([([])[]]))[[]]()[[[]([[][]])]([])]]([])[[]])[])()]]][])])[]])][]][])([([[([[()[]()]([[[]][]])[[]]((()[(([]))()]))])[[([][])()]([[]])([[]][([])()[](([][[]]()))((([]())([(()()([[]]()))][()]())[])[()])[][(()([()]))[[]]]][[[[][((())([]))]]][][]])]()[]]()()(([([])])([([])]))][(())])[](([]()()))])([()](()))))[](([])()())][]])])]]()()())][[][]]()[][]][()]][][]([])((()()))))[][][[]][][]([[([()()])([]([([][[]])]))(()[([])](()(([[][()[][]]((())[][][[()]])()[]]))()))[[]]([])]]()[])()[[]]][])))]][]]))[][([])()][]((()))())[][()()[]([])][]([[((()(([])[[][]])))[][[()][]]()[[[][]]([]())([])][](([][]))]([][]())[][()[]]()]()[]()(([][()])([])(()(())(()([]([[](([][([()()()([[()]][([])[][][]][[[]]])][()][])][()])(([[][]]([()[][[()((()[]))]]()([])])()))[([[]])[[[[[()][]][[](()[])][[[[]()[([][]((()[]())))][()][[(())[]]]()]()]][]]]()()]])][[]][][[][[]](([]((([][()(([[]]))()]([]()[[]()])())))()([](())[])[()]([])))]))[]([])[[][][(([[][([][])[([][])]]]()))]([]())[]][]([(([](([([[]])]((())([()[()([(())[]()])[]](()[()[[[((()))()]()(([]))[]()]]])])[[[]]][](()()[[([][][([()])][[[]]]())()]])))[](()[[][[(([[]](())))([([([])[](([()]()))[][()[[]][[]([[][][]()()])]]])(()()[][])])]][[]()([]()[][[][]])]([[]][[[[]()([()()][(()())])]]()])[]([[]][](()([]())[]))][]([[([[[]][[[]]][]])[]]][]))[](([()])()[([])([[[]]()[[[]]()]()()([][[]])[][()([]())(([([(())[[[]]]])[]()]()[])[])][]])]())())[]())[][[]]((())[[]()()]())(())())]([[[[()([[([[][]()]())]][()])[[[()()][[]]][][]]]()][[]](([])())(()(()))()]]())[][()()][])())))[][][[]](([])[[][]()][()()][]))]))[]][([])])])))([]))(()[(((([]))[])[])([[[()(())()()]][][()]][][]()[()])[[[][]]([[[([(())][][])](()()()([]))([([(()())()][])[][]][]()[[]][([((([()])()()([]()))()(([]([((()[])())])[([[()[][]](((()(([([[]])])()([][([()()]()[()()()]()[[]])]())[[][[[[[([])()[]]]]]]](((())))(((()(()[[]()()[()[]]][[]])[])((())))())))))()[[[(())([()][]()([]())[][])][()[[]([])[[]][]]]([[(())[](())][]])]]][()][](([[][[]][]][])))[()]]))[])]([[]][][]))[]()])[][[](())]]()[()()]][](())(())(())[][])()[[[[]]][()]([])[]]]][][])((((([()][])[[()]([][()[()]])][[]()()[]][]()([[][[[()]]][]][[]]()[])))[])[[((([()((([]([[[]([[]()])]]))))(())()()]([]))))(())[]]]((((()([])))()()[](([[()()()][]([])([()()([[][[()]]]([()](())()()))()](()())[])][]))[]))))[])()([[][[[]][]]()()[]])()[])])[()][[]]]()[]())]()()[()]]]][()([([[(([])[([[()([()](()))]([])([])[()[((([()()])[[[[][(([()](([(())[[[()(())[]]](([()]([](([][(()())]))))()([]))][]]))))(()((()[()[[]]]()())))][]((()[])[])(([()[][[][(([[]]))(())][][]]][][()[[]]()[()]((((([[[][]]()][]))[()[[[([])]]]()[]]()[][([])]())())[])][()](([[]])))[])[[[][[]]()][][()[[()([()]())]]]([])][]]][[()()()[[]]]](([([])()(()(()([][]()()(([])[([]())()]((()))))[[]]([]((([]()[]([[[]()(()[(([()[()](())[[][][(()[((((())[]()[[]]([]))[()][][([])()]))][[[()][]]]()()())[()[()[]]([([[]()][[[]()][()[][]((()))[()][]]()])(())(()((()[])()))])]]([()])()][[[]()][]][[[]][(()[([])]([[]()]))]][[](())]][[]]))]([]()))]()[]][(())[]])[()][()[]][]())[][]()[][][([()([])()])[]][](([]))([()[[][]]][()][])()()))))((())[[][]]))[[[()[(())[]([](([])[[[]]])[()])]([()[(()())]([[[][][]]][((([])()))]([[()()]]()))])[[]]()()][()[]][()][]][[[([](())[((()[[()((([])))((()([(([]))[[]](()[[][][]][[([()[]])]])][])))[[[][[]]]]]((([]([()[]]()))))[(())][()()]]())[()([[]]((()[])([[([][[][]])[(([]()))]]]()[([]()[][])[()(()[][]()[]()()[[[[()[][]()](()[()])([([])]((([][()])[[(([]))(([()][(((((())(())[]))))[(([[[()()](())[]]][[]](([])[((()))]([[]]()()[()]))[]))[]((([])()([][([][])(())][])()))()]]([])))[][]][]])))]()]][[[[]()()[[]]()]()]][][[]](()()[(()([]))]))()]][][]))())][][])][()]([]))[([[]()()]())[]()][()(([])[])[]]]]()]][()]()(())[[]][[()[()[]][]][][]()(([(([]([])[[()(((())[])()([[]]())([[[][][]]()])[][])][]][])[[]()])[()][()[]][]([()][])]([]))())]][]))([(()[[]])])[][](()(()()())()[]([][[]])[])])())()][(()[]()[([(())](()([][((([]([()])((())))[()[]])())([()]((())((()([]))([()()]([][([])()()(([([])()()]))][[]()([])](()))))([]())())[([])[[[](())[()]()]]]([()][]([()[[(((())[[][[]]()]()[[]]([][]))())([])()][]([(()())])[([])[]]()]])()))]))[])])]]])[[]([][()])][][()([()][])([]()[([()]()[])]())]])(((([[()]]()[[]]([](([][])((())(())(((()))[][]([[][()]([]())[[[()[()[][]()[]()]]]()()]()][([])][]))([])))[])[([]())([])])[[[]]][])))]()()[][((()([([])()][(()[])([])]())(()())))][]])[][[()][(()()(([[[][()((()))()([])][][[[[][[[[([()]([()]))[[]]][([])[[([[]()[([][])][[[(()())[][]]]()]](()))[(())[(([][()][[][[()][()][][()()([[]][(([[][]][((()())[()])]()((((())[][[[((()[[][[]]()]([([])[](())[[]()](())(()(()[])([()[()]]()))(()[])((([])[])([[][]])([](()()[([])][(()(()))(([]))()]))(([])(([([])]([[]()[][]])[])((([])()())())())[]()())())]()()[])))()]]]()()))))[(()[][])]([([])](([([()()[[([[()()[()()()()[]]]](([])(()())))](()[([])[()(([[[][(())]][]])([[]](())[[()][()()()[[[()]]()]]]))[]([()[()](([](([[()]][])[(([]())([[[([[()[]][][()]])]]([][[[[]()]](()([([()][])]([][()]()))[()()][()])])][[][]()][()]([][[]])))[][[(((([]))[([][])[[][()][]([[[]]])()]])())()]][[]]][()][[]](([([]((()[[](())][[[[[]]((([[]])())[()[]()][[]])]([]()[()])()[([([][])()[]][])[()([](())(()))([[[]]()[([[()]])](())][][])()()[[]]()()]]]])())[])[[][([[]])[]][][]()()()([([(([]()[[[[[[()]][]()(()()[][[](([])[][([[()][]])[[](())([()([][][])((([]()[]()([([])]((([])))[([])()()][][[]])[])[]()))][[(([]()))]()(([]()))[[([])]]]([])([()([[]][[]][()([()([][()[]()[][]])]([]()[[(())(((((([([[[()[][]][[]]]()([(([[()[]]])[])])[[]][[][[[[]][()()[]][[]]()]]]]([[[][()([[()]])[]([[]])]([])](()()[])()((()[[(()[(()[]())]()(([[]])))()()([]([([[[[([([]()())()([()])]())(()()()[])]]]])])())]]))]))[](([](([][[]]))))]))[([])])[])))][]]))])[]])[])()[][][]]]()[[(([[][]][][()()])())()()[]]])][()][])]]]][]))])[([[(())[]][[()(()()[[[[[([]([()][]))]()][]]]([[]()[]((()[[(([])())][([()([[[([][([(([(())][]()([[(()()())[]]]()[](()[[()[]][]][[()]]))[]))()()])]([][][])()(()))(())][]]()])][[[](([]))[()[](()[[]][[([]([])((())))][[()]([])]](([][])(([])))[])]][()()[[][][]]]()])[[]([](()[[]()]()[()[[[][]]([][[]()([][])()])]([[()[]][]][()])(())])()[]()([]([(())])))]][([])]][]))[[]]])])]()(()[])]](([])[][]))[(())()([[[]][(()[])]][]([])())()][]()[()[]]]])([])[()]()]([()(())]([()[(()([[([]())]][]())[]()(()))][]]()))][])[()]()[][[]][(([[(())([][[[[][]]]])][(([]()[]((())([(([(())([][][([]([[][[]([])[][[][](([]))]([()[]][()[()[[()][()]]](()[])][[]]()[])]]))])()]([][][]([(()(([([(()[][[[]()]]([[[]()[]()(())][()]]))[(()()())()]])[[]()()][[][((()([[(()[]((((([((()[()[[][]()]])(([(([]))([()])][(())[][[([][][([([([[([()])](([[]()[]()]((([]))[][]([]([])[](())(()))))()()(([])))])][([])[][]])])])[]]([][][[][]()][(()(()[][]))()])()]][()()[]])[]))]()[[[[((([]([[[()]]]))))()()[]]][()[[((([][])[([(()[]()[])])]))]]](((()[([][([])()])()[(([])[[][[]]()])]][](())))())[()(())[([])()]([])([([()]([]()[([()])]()()[[]]))])][()[[]]]]])()))))[])]([[([][][(())([([[]]()[[][()]][])(([])((([([[(())[[]()](()([])[[]][][])[][(([[]([])])([]))()]]()])])[()])()))]())][]()[[][]])][[]()]]([[][([])([[]])]]))])[]([[]])(()))[([[[]][]]()()([]))])]()[[]([][](((([][[[(())]][]]))[()[]]()()(()())))())]]])[][]()))])[][][()[]]))[]([]))[[[([[]()([])][])[[[]()([]([(()())([]([]))]))[]([](([[(([[[][[](([]))]][]][]))][[()()]()[]]([([()[[]]()][])]([[]([[()()([]([])[[()](()[])[]])()()][]]())])[])()([])])))[][()()[([()((([])))]())]]()[]]]([](()()))[]]][]][()][]])[([]([])[])()([])[(())]][])())[][])]][()]))[[[]]]]())))[[((()))]])()[]])]](([()()[([][])]](()))[])[])]()[]][](())[])]([][][][]()[(((([[]()][](([[]]()()[()[(())]((([()[()][]()]))[]())][[]()(()())()])[])))[[]][]))[[]]])[((()[[[]]](([()]))())([]())[[[][[[]()][[([[([([[][[]()([[[[[[()()]([])]]()()]([][[][[([([()])])]([])]])(([[[[([[][][[]][()[(()[][()()[[]]])()]()[([[[[[[]]([[]])]((([(()[][])[]])[[][((()()()()))[[]([()])[][([][])][]]((([]))[])[()]([](()(([[][[[[][[()]][()]][]]]])()()()()[]()([[]([])[][[]((([[]()][])()([][])[][][]()())[()][])((([([[[]([()]()[([]([()[]]))])[[[([[]][]())][]()()][[]]]]()]()[[]])])))]([(())])()][])()))[])[(())]]([][[[]((())()[]([[]]))[()][](()()[][])[]]])([()])]))][[[[][]]()]]()(())][]()])[][]][]]][]((((()())(([]()))[][[[()([])[]]]([()([[]])][])][[()]][()]))()[()(())[()][()[]]])[()[[]([()])(([]))]])(()())[()[[]][([[[]()[[][([](()[])[][[]])[([()])([][][[]])(())]]]]([()])([])])](()([])())]][][](([[]()()()([()]()[])])[])()[][()(())]()(()()[])()]][]]))]()])]])[[(()())]()[]([[[[]]]])]][](()[]((([]()))((([(())[[]]]()[[(())(())][]])[][([])][]([[]()][]()()[[]([()()])[][(()([]((([]((([]))[]()[]()[](()[(((())))[[()]]][()[]()([])](()([([()()[]([])])[([([()]()())]([](()[[]])[(((([()])[([])([][[(())]][[()()()]][][[((()((()[[[]][[()]]([([()])])[([[[([([])])[[[][][()[[[[]]][[[](())()(([([([[[]]]())]()[](([])[[][]]([]([](()[([[[([([[[[][[]]]()]([])][](()[](([[(([[[[((()))((()))[]]()]()][([]())[]][]])[(((()())[[][[[[()[[(())(())]()]()][]]()(((())))()]][]]))[](([]))])([[()[(())]([()[](([])[])][])][()[]]])][]][[]][()])[])(([])))[]()[([[]][])])]()[()]())](([(()([([[]]())]())[])((()[](()[[()]]()[][()[()]])(([()]))))[[([[[][][]][]()]())()[()()[(([]([])[]([]())))[[[][()([])][]](()(([([])()()])[](([])[]()(()))))]([[[[]][(()())([[]])]]]()([]([]))[])[]]]]()]][]()[[[]][]()]))]][])[]][]))))[()[()(((([][[([](([[]][]))[][])]()()])([][()])))[[]()])[[[](())]]]])]))][][[()]()[[]]()[()]]()]]()][]][(()())][()]([[[]()()]()])]][[]]([]()())[[][]([]([]((())(())[[][[[[[]()(()([][]()([][(())][](())))())(([[(()[][()(())])]()][()[[[[[([][[][]])]]]]]]))[]]]]([[()[(([()[]()]()[]()(()[](()[])(())))[[](([]))()]())()][[]]]([[]])[]])[]]([]([[]()[]((()))()[]([][[[]]]())[()[[()[[([()()][([][][[]][])])]]](([](([]))))[[]()]]]]([[]()()])[]))])))]](()[[]()(([([()(()())][][])][])[])])][[([]((()()[])((([])))[]))]()])]()])()())[[]]))(()[[](([]))])][()(()[()[]])][([(([()(()())]([][[[[([()])][]]]([()]([()[[]()[[(()[[]([])[[][]()([][[()()([])[][]]][][()])[]]])([])]]]]()[])[()][]([([([([[()]()]([()[][]]))])])][()[]([])()([])(([([])[[[[]]]]]))(())()([((())([()]))])[()()]]))][])([][])([[[]]]([[[[[]([][([[]]())]([])()([[]()]([[()[[]]]([][][]())()[]()[[]][]()[]][]([[(()(((()())((()))))[]()[](()[([][()])]([()[(()(()[]()(()[[((()))([][[]])()()([])]()[]]()([])))[])]()][][])[([])]))(()([])())]()[([[]][[[[][]]]]([([[[]()()]])])()([][()]([][])((()[((([[[]]]))()[([]([()])()((()((([]))))()([()[[[][]]]()[]]([]())())()[]()))][])()]))))]([])(()(()()()()))()[]()][([])])))(([[[([])]]])))][]]]])))[[][([][][])]([()])]())[][([](()))][(([][])()((())))]](())(())[[()]])([])]])[([])((()()([]))()([][([((([]([()]))()()[]))][]())])[][][])]()])))][]))]()[()[(()()[[]()])((()[()](()[()()()][[[]]]([][()[[]()]])(([([][])((([][](()[()(()[])][[(()([])[[[]][]((()[[]])[()()[(())()][]])[]])]([()([])])])[][[][]]))()([]()([])))]([]()[])))()))[]())()()][]([((()())((()[]))())]())][()[](((([()[()()[]]]([]())))(([[][]][])[]))[][[([])]([])[(()(()([]()[]))[()()(()[[]])])()]([(([()]))][((([(()()())(([]((()))))(((([]))[[]([])]))[][[[()]]]](()))))[][()]])])([()[([])()]([(([](())())([]))])][])[]]()])([()])(([]()([(())(()())]())[[[[[]][]]()([(([][]()(()))([]()([[()()[]]]()[]))[])[[()(([])()())[[]]]]])[]]()])))[]()[][[][[[[([[]][([][()[([[[[[][([])]()]]]]([()()[]][]())[([])][]()()())][[[[()([](()[([][[()]()])])([]()))]()]()][()]]][()])])]]()[[[]]]][[([()]())]]]])([[()]])))()()))[[]])[]([]()[][((([()()()])[]()())([])[])]))[]()(()[]()[[][()]][](())[])][[()[[]]()][[][[]]](())]()()]([]()()[])))[]))))()]])((([()][][])[((()))]()))]][[[]([]([[()[]]]))]][]]][]()[][()][]])()[]([][])])))([][()(()())]))[[]](()([]))][])][[([][()][])][()()]()[()]]()(([(())([]()[()([([][()])[]([]([[]]))])][])](()[])(()))[][[([])]])]]))]][[]]]][]]]]]]](()[][(())()[](())])]]()[([])([()[()]])[()()([()[]])([])]]][]())))]([]()()[])[]][()(([[]])[()][(()([[]](()([][]())([()])[([[]])]([]))))][()()][])[()()[][]][()]()[()()]]()][()][])[[(([][])[][](([])([])))][([[[](())([])][]()])()[[[][[((()[[[][([()])()]][([[]])][]])[[]()()[[[((([](()())[][[[](())[]][([])()]]))[])]]]()])]]][]][]]([])]()[]][[()][(([])([]))()]]()()]))][(([])[])])()))[]])[(()()[][([[][[]()]][][]()(((([])([])()[][()]))[][[(()[])]])([][][[]]([][([][[[[[]]]]])([]()[()])]([[][()]])()))()(()))[([()])][()]])(()([][])[[]([[]]())((([]()[](()[](())()[]))[][])((([]))()[][]))[[]]][]([][]))[[]([[]()]([[[]]]))]([])[[]()]]][[(()())]]][]](()))[][][]]))([[]][]))((([((([]()))[[()([][])[()([])](([]))[]]])])))(((())))][[]()]))[()][])[][][()[]])[([][[[]]]())](())()()[[[][]()(()()())]([[]()])]([[]][[[[]]]][](([()][[([]((()()(([(([()][[[]][](()(([])(([])))[()()()])][()()()]))()[[][](((()([]()()[[([[[(()(([[(())[][[[[][[](([]))[[[]([][()]())]([])([(()(())[[[][]()][()[[][]]][]([()()(()[])]([(()()[](([][])))[()][()]()((()([()()][])[]))][](([[]])))[[]][()[]])()[[]]]())])]](([](())))][]]]([])][]([[[(((([[[()()[[]]][[]]]][[()[]][([][]([]()))()]](([]))))[(())[()()[]]])[([[[[]][(())][]][[([]()()[])[][(()([[]]))]][(([()[([([([[([(((()[[]]))[[][((())[[][[[[[()()]()[]](([]()[[]()])[][]([([[([[][[][][][([])]][((()[([])(())][[]]))[]([[]])]][([]())])]])([[]])]))([])[]()[]](())]]])][()]])])()]][()][]([]([()]))[()]())[][[[([[]]()())([[]])]()[]]()()]][][])((()([([[]])[](()[]([][[]]([()]))[()][[()()][(()([])[])([(()(([]))[[[]][][]][])[](()[[]][[[]]])[]((((([]()[][()][]))))((())))[([]([])[])[()[][](()[])](()[])[([]((()))()[][[]]((())[][]))()][][(([][]())[][])()]]])]((([])[[][[]]((())[[]()][[]][])])())()()]())[]]())[][[[]()]])()(([]))(([[][()()]][])))[(())][]()](([]))[((())([]))()])[]][[]]][]([()()])()))()[][([()(())()()[][[[]()][][[]]((())()[](())[]((())([]))[[][[]()[]]])]]((()([]))))]]]][])[]][[][]])[](()[])]]][][])][[][[()[(())[()[([][]()[(([][])[(([]))])[()]])]([[()]]()([()]))()]]][()]][[]]]))[])]]([][][[[][]]()[]][])[[([([](()))()[(([[][[()]]()[]][]))([])[()]([()])][](((()))[[([])]][()])[]()][([([])])()()[(())[([][])[]()][]()][()]])[]][][()[]]]()])][[[()()]()(([]))[[([()[]()[()][()]]([]()[[[()]]]))(())]]][()]]()[]][([])()()()]([[]]([])))([]))))]]))[]))[]()[[[((()[[]([]([][[]][[]]))]))][[[[]()]]][()[([[]()])]]]]([])([[]()()[()[][][[]]]])()(()[][])[][])][(())]()[]]([[[()[()]]]][])((()()[()[]][]())[[([[[()]]()[](()([[](([[]])[])()]())[])][()[]()])(())][]])[]))())(()[])[([()(()[[]]())]())([])][()]]))(()[])(()())[[]])][[(()()[()((()()))])[][[][[]]][([])]]()[]][(([[[([[]()])(()[[]()[]])()]]][([])]))]([((([])()))][[[()[]]]([()[[[][[]]()[][]]]])]()()()[][()(([[]][[[()]()[]]]()[[][[[[[]][]]]]])[]()(()))()])[(()[])][()[]][]((()))([])]))([()]))[([])((()()[[]()(((((()()[][][])[([][])[]]))[(()[][])[]]))][()]))[[]][]([]()[]())[]])))))[()]]))]])]][[[()()]]]])[]]()][[]]])[[]]])]())[][][()((()))])[])(())[([]())[]()]([])[[([[][[[]()[]][([()(([([]()[([(())])]([]))][])([([][([][])[]])](()(((([[()(())]()[()]][(([](())))])[[[]([[]])]])))([]))[]()))][]())([]()[()()[]()])()()[]]][[]]]())[()()]][()]]()()[(()())()[[[]][()[][[[]]()[[[[([])]]][[][()([([()])()([[](()(()([])())((([][()()()]))))])]()(([[[()()][]]][][[(()([])[])]()([()([([[()[]]][]()(())(())[]()([]([()[((((()))[])[])](())])))()()[[]([((()))])[]][[][]]][]([]))](()(())(()))[][])[]()]()()[][[[][[[()[(((())([[[][]][[](()[[](()[[(()([]()))[]][][]])])]]([]()()))[]()[](()(([]([()][]))[()])([])(())()[[]][])))[(())()]((()[()[]](())))[]([()](()[]))]][()()][(()()(()[][][]()[([])][[]][[()]()([]())[[]]]([([]()([[()][]])()[])]()[][([]())][[()[]]()]))())]]()[]][()]()]][[(()[])(()([()][][([()])(([()]())([]))[[[((([]())())[([][((()[[(([][[[[]][]]][])[])[()[]()[]]]]([][]())()))]())][[]][[]()]()[([]([]((())[[]((()(([([])][])(())()[]())))()()][[][()][][]([[()([[]])]][])[]][(())][[[[]][()()]]()])))](()))]()[((())())()][([[()]()][()[]])][[(()()[](([()]))[[][]([[]])])[([(()[][[]]([()])[])[]]([]()[][]))]]]]]](()[])())[((((([]))[(([]))])[][[]()((([])))[[](()()[()])]])[]())]()([([](()[()[][]()]))][[[][[[][][[]]][((((())))([]))]][()([(())()]()())][[][[]][][][]]]][]))]()[]]))[]()[[]()[]()()[]])][]()]]()[()[[][]]()]()]]]][[]([()[]][()][([[]([]())][])[]][][]()())[[[()((([([])][]))[[]][][[]])()][([])]]]()()()][]])(([]))]()]))])([((())([[([[]]((([()])(((())(())()))[(([[][[[[(([([])[]([(((([([[]][][])()])[()[][][]()[()][()]()]()(((([()])[]))[[[[([[[]]])](())]()([([()])][](([])()[][()][()()]))][()][][()]()][(([]))])[]((([])[]))))[[](()()())[()[]]()([]()[])])[[]][][]])([])[]]())())()]](())]]][()])(()([]([()[()[]]()])[][()()[][]][])))([])((([])))][[()][([][])]]([])[[]()]([()])))[][])]][])[][]([()][])()([]))()])(()([[]][()[]()])((()))()([][]))][[()]])[[]()]()(()(()[])()))))[[]]](()[(()[][[][[[([])[][]][([][()])]](())[[][]]()([])()]]((()(()[()[[[][]]]]))[]((())(()))[][])(()[])()[[[[]][]][]()]([[]([()][[[]()()]])()][[()[]]]()(())[](([])[])()())())[]](()[()]()[])))(([(([([([][[(()[][[()[[]][](([()]())[[]([])])][]()()[()]])[[[]]]][]])])()[]]()([])[()][[]]))()(()())[[]]((()))[[[[[((())())](()([][()([])[]()()[([])][()][]()()]())()[(([]()[([]([[][]])[[]][()])[]]())()(((([[[]()[[[]]](())]])[[]])())[()[]]()())[([])[[[][(()[(([([])])[(()())(([][(()[(([[[[[()]]()]][]][(())]([[()[][[([]([[](([[]][[][]][][[]]()([])()([](()[[][[[][[]]()[()[()()[()[[][()][[][[([][](([[([]([]))[([][])[()[()]()[][]]]]])))(([()]()))[[]]](()[[]])[][]()[[]()()]]]]]][]([[]]([])[[[]([[]][([])]()[])]])[()()()]](([()([([[]])[([])][]])()(()())])[][[]])]([()]()([]()[][[[()[()()()[]]]][[]((([][((()))[([[]][[]][[]])[]]]([()]))[]()[()])())([][]())[]][]]))()(([]([()()][]))([()()](([]())[(([][]))][[[]([])(()[])(([([])]([[(([]))()[][][]]]())))]]))[])()][]][][][]()[()])[[(([](())[]()))]()])[(()())]))[]])([()])[()]()([[[((()[()()][](())[]())()([[]()]))()]]]))]]]])))()]()(((((([[[]]()[]])[])([(()[][]())([[][[](((((()))[()((()))]()())))()[]]]()(([])([(([])[()[()][][][()()][]([()[][]])])(())]([]))))][][[[()[[[([[[[][()()[[][]]][]]][]])]]()[]()[]()[][(()[])[[[]][]()]]]()][]]]()[]))))([](((()))[]())())))]))()[]])])()([]([()([])][[](())][()[]()[[]]])[]()([[][][[([]()((()())()(()(([][()])))[[]][[]([((()))]([()()[(()())]][][()(([()[]]))]()))][][[]]))]()()((((([])[]))[()()(()[[]])])[][()][])[([(())([([()][][][][[]]([[][]])[]())][]())][[(([()])[][[][[()[()](())[(((([[](())]()()[]))()([]))()([[(([[[(()())[](((()[]()[])))]]])())]]([])))]]]][(())])()][]]()[[()[]]][])[[][]](([]([()]))[]())([()])[()]()](([([[]])])[])]]([])))[[()]([[]])][[]][]()[[][]()()][[()[[][]]]]()(([[][]]))[[()([()()[][]]([()[[()]][[](([(())()])())()]]))][(()[][]((()))(())([()(())[[()(([]()[()()[][]][((([([]([()]))(()(((([]()))[][]([])()([()][[()][][][[][[]][()][()[][]]]]))[()]))()][()()][][]()[])())[(()[])([[[()]]][(([]))][[[][()()][]]]([([][][]()[[[]]([()[(()())[(())]][][[][(()(()[]()()[()[][]])())[[[(([])()[][[[[]]]])]]]]()]]())])(())((())[][(())][])()])[]()()()())()[()]]())[][][][()][]([[]()][[][]][[()(([])[])][((([()(([][]([(())()][((())([[(())[][[]][]]][][[[](([[[[]](()[][][]())]](()())(([[[]]([])(())][][])[[()]][]))[]([()[([])()][[[][][]]]]))()]()]([()])))]([[]])((()[[][](())]()[[]][])))([])(()))[])]))[]()[[[]([][[]()])][[]]])()]])[]]()()(([()][][()(()(([](())[(()(())[])][][])()[()((([()[](([](())()[]))][()[](([[()(([][[]](()))([[()[[(()[])()]][[[]]]]][([(())])])[[[([[[(())][](())]]())[][([])[[]]]([][]())][[[]](()(([])))[[][]](())()(([(([]))]))]]])()[]]](((())((([])))))([(()[(([])()[([])(())[]()])][]()()([()])[])][][(([])()())][[][][()]()[()[]]]([])))())([])((([]))[([()[]][])[[]()()()]()()])](())))())]()[]))]))))][]]]([([][]())(()[()])])))[]([])][()]]([])]]]])])[]([[]]()([[]])[][((([([]())[([[]])]]))[]()()())][[([()[()[]]][][][](()()[])([()[[]]][]))[]()]()[([((())([[]()()])[([[][([])]])[[](())]])])](()[]()(((())[])(()()[]([[]]))))(([])[][])])][][]]()]]()][[(()[](([]()())))[][[]][][()]](()()(())[]()()[[()[]]]())][]))()[][][][]([[(([](([([][])]))[]))[]()[]]][])()()[[][](([[[(([]())[][][[][][[](()[()])(()[]())]])[]]][][[()]]](()))[[]()]()[]())]()[][]()()([])[]([])[[[()](())[]()]]()(()[(())])[][][][()][[()]]()[((([[[[]()()]()]])()))][]([]()[[([])](())[()]]()())([(()[[()[([[[([[([][([()])[(([([])](([]))))()[((()[])(([])([[]]))[][][[]](()))[[][()]([()()[]])][]][()]]()])][()()]]([[][][]()]))()](([[()(([]()))]]))()((()[]())([]))]([()])[]()])[[]]][([[([])[[()[][]()([()()[]()])](([]))]()(([[[()[((()[()]))()]([])]()]][[]((()[[]]))(())[[([])[]]()()()[[][()(([]))]((()))]()()]])())][[]([])()]([()])[](())()])]()][]])[[((([]))((())([([][][[]()[]])](()[[[[[(([][]())[[][()]])]]]]()[()([()()()])](()[([]()())(())()[(())((()))(())]])]()(([])([]())[()()])[]([][])[])())(())[([](()[()])(()())[][][[][(())[][()(((()[]([[[((()()))]]]()[()()[](([]))([[]])])()(()))[]))][]]()(())[()]][([([(((()((()(([])[()])))))(([]([][[([]())([])()(())()]()])(()))())((())))]())](())([]([])[]))])()([[][[()()]]])]()[]([]([])()([]))([[]](()[]))()[][]())[])[](()(())()([[([])([[[]([([][()]((([])()[[[()[][[](()[((([]))[[[(([([])()]()([]()((([](([[(())([]()[()([[]])(())((([()])()()[])[])([](([(()([()](((([(()()([()]()[])()[])([])(((([()[(())[(([[][]]))]]]))[()]))]())()(([]([]))[])[(())()]))[()])[])()[])][]))[](([[][[]]][]([]([[][[[[][[]]]]]([])[[([])]]]))())[([[[[][[]()[]((()()[[]]))][]][]()]([[[]]][])[()(())[(())]]])[]]()[](([[[]]]([[[[()]]][]]))))[][]())]()()()[([[[][]([()])[()]]][[[]]])()])()][[[[][[]][[[([()]((()())[])())]]()(()[]())(()(()))]][]]][]]()()))[])[[[[]()]]])[]())))[])[[()([](()(()[[[][()][][[[[(()()([]()()[()[](())(()((([()]())([([])][[([([[][([()])[]()[]]])[([[][[(()())[]][][[]][]]])()]])]()]()))))][([()])]([]))[])](())(([]()[[()]()])()[]())]]][]()]([])[[()]()((()))]()])())[](()))]]()[[([])[()]]](()[()]([[()]]()[([])]())(()))[[([])[]]]]()]([[][]()])][[[]]][[]][[]([])[]][[[]]][[]](()))][(()([][][[]]()))][([][])])[[([])](())][][][()][]]]()[]]][][[(()[(()[][([])[()]](()[[([])][]])[(([[]][]))])])]])[])[[()()]()([])])])()]]())(([[]()[]])[[[[[[([[[([(())][((([[]]))()()([][])(()))]([]))[]]()([[[]()()([])([[[]()[]][](([][])[([])[][]([]([][[[((([([])][[][([()([[[[][[]]]]]()()([]))(())][[(([]))([[]][](()))[][[[[]](([[([(()([])(()()))()])]])()())[(())]([()])[]]]()](())([])()])](((([[((([][][()]([]([][[]][])(([][]))[][][[[](((([[]][((()))((())[][])])[][([]([])[()])]()([])))[[]]())][[[]]]]()([])([(((()))[[[][]][]])[]][[]]())([](())[])()))))]])(()[(())])[]())(([])()[[[][((()))]([])([])]]()[])()))])[]))]]][])()[])])([(([[]([](()[]))[[()](()[])[(()[])[[][(())]()]]]()[]]()))([])])()][])[]]]((([])[(()(()([[]]([(()[]())][()]()))())())[(())(([([[([][()([((()))([()]([()[]](()[([])(()()()(()))])))()[]])()[]][][[()(([[[]()]([])(())()()]))[[]](()[]())((()))[][()]([[]()])[[](([])[][])]]])()[][][]]][[]])()[]]))]]))[][[([][])()]()[]](()))]()])()[]()[]](())]]]]][])()[]([])(([]))()[[]()]]]))()]()[()]][([][])()([[]()[()]])[]]([()][])[()[((([]))[][[]()])()]][]])()()[]()([]())(([]))()(([[()[]()]()[]()[]]()()(([]()[[[]](()[([])])][][][]())()))()([]()())(()[[]]))([])[]()([()[]]([([[[[()]][[][]]()(())]])()[[]]()((()))][[]()]))(()[])()()[][]()()[[]()](([[[]()[[[]]()[[[]([[[]([[[[[([][]([(((())))[([][(([])[[]])]([][([[[[]([((()[]))])(()[[[[]]]][])[][()()][][]()[][]([((([])[(())[]])[[[][[]([([])()(()[()][(()())[()([([(([[[]]][[][]]())[](()))]((())(((()())[]()[[[()][[[[[][]]()][]]()][[]]([()[][[]()(([[]()]([((())())])))([](())()[])]][[[]()[]]()[()()][[()]]()[[()]][()([])(()([])[]([()]))]][][[]()][[[]]])]()])([][]())[([([][](([((((()[]))(())))]()))(()()[[]][(()[()[][]])[([()][()])][()]])())])]()))())]([][]))]][](([()[(([]))][]]()())[]()))()][])]]])])()]]()[]()])()[]][()[][(())][((())([[[][[()([[]])[[]][()([](()[(())[]()]))][(()[][])[]]]()]]]()))[()[([][()])]]][[]]()[(([]))]]))]]()()[[][()]])[])()]][[]]][[[[]]()[]]]]])[]()[()]([][[()[[]()]]]([[][()[(()()[[][][](())[(()())()]][])](())]][()]()(([()[][[][[[]]]([[[]()]()][](([[()[]((((([(()())](()([](([[][()()(([])[]())]]))))[][[[()()()]()]()][[]](([]))([][[]]))))))]][][]))((())[])[])[]][]][][()](()[[()([[]][([((()[]())())])])][[]]])[[[(([()][]))[[[(())]][(()())]][[]][]][(([[]]()[()[()[[()[([])]()]]]]))()][([()])((([()]())[]([][[]((([])[[][((([[()()()]]([][][]([]))()([([])])))()())(()[])[][]()()[[([][[]])]()([][])([(((())(([])))[([][[()]])[([([][]())])]])((()))][[]()([((()(([(((([([][]((([()[][[[()][][]((()([][([]()([][[]])[()])]())))[([[]])[[([]()[])]]]([][])[()(()[(())([[]][])([]()[][[]([][([])][()](((()()[[]][][][](())()))([][[[]]()[]])))([()]([()(([]([[]]([]))[[[()]]][]))][]())(()([()])[]))(()([((([]))(()[([][()])]()[[()[]][]])()())])([[]])[][(((()(([]()[[[()][]([][[[[]()]()()[[][([()][])]]](()[[()[]]()([(()[]())[](()()[[(((())[[]]))([]()[[()()[(()[[]()])]]])[]((([()]))[([[[][]]]([]()))()([([[][]][([]([[][]]()[]))]())[]][[[][([][])]]])[]][[[]]])]])()([])([[][[()][]()[]][][]])[(([])()[])]])()][()[()[()][(())]([])[][]]]([([()([])]([([[[]]])]()))[]()()[(()[[()()]])()()()[]]([([([])])]((([[()[((()()()[][][[]]))[([[([()]((([]))([()[][][()(([]))[([])]]]([])()))([])([()][[]][[]]))]])[[]][(())](())]()]]])[()]))([][]))[(([]))()([([[]]()([[]][])[((([])[]))([()][])])])[[]]][]]))[][()]])]][](()()()[()[[]]])))[([([][[([[]()][([()])()()][])(())[()[[([])[[[][([])[]]]]()[[[[]([])]]][(())]()()[][][][[[]]]]]]][]]())])][()(([][[(()([])())()]]()[])[()])()[()]])()()())[])([]([]([])[[](()[][[[([()])(((([][()]())()())))][]()[]()]])])[]([()[]][()([[][]()(())[()(())][([[]][]()[((())[(())]())])]])]()[[()]()])[([])(([][][][][])[])])()][][[()][[][]]]()[((([][]([]))[]([[]][[]((((()))))[]][]([()((()))]))))()](()[]))]()[(())[][[]]][](()((([]()))((()()([])[[]]([([[]((()([[][[][][]]])([][()[]])))])][]))[((((()((([()([])[][]]()())([])[()([([[]])]())[()((()[[]([][[[]([])]][]([]))])[([]((([]))(([])([[()][[]]([[[]]([[]])[[][()[([(([][[([()[][][]((()[]()))()])[]][(()([[[[]]]])([][[]([][])]()[((()([][]()())[][])[([(([])())])])[]][(([([])][])((([]([][])[][[]()([]())()(())])(()[()[(([]()))[(([()[]()][[([(())(())])]]([][]())))][[[][[[][]]]]()]][[]]][(([([[([]()())]]()()[])])()[[][[]]][][()()(()()([()]))[[](())]])]([](()[]))))))[]][][[]]))][[]]([]())]()))[([](([])))]()][[]((([[[]]])[[[](()())][([])]([]([]()))[]()]))[][[[[][[[]([[]]([[]])[(([])[[[]]](()([()()])([()]()))())([])]()()[])]]]](([[][]](([[]]([[()(())]]([[([])]([[]]())()][[()([[[]()]()])[][]][[([()[()][]][])][()()[()([(())[]]())([((())()())][([])])](())][][[([](([[()]][([](([[]]))([])([[]]))[]][]))[()[]])]]][()]])[])([[([[]((()[()[]]))([])[]]([[(([])([([(((()[][](()[()])[]())))][][])]()()))([()[()[][]()()(())([[]([()])][([][])](([](()))(()[([][]())]()()[[()([][][[]])]][()])[])([[[]]](((()))[[]()(((()())()[])[[()(([[([[](()[][[[[([])(([])[][[]((()))])[[()([[[(([()]))][()(())([((()[[()]]())[])[][[][[(()([[()[()[[][(([[]([()([(([](([(()[[][]][])][[[[(())]()]][([[](((()())()[][[]]())())][])]]()[][(()[][([([])][[[[[]]](()[][])]])])]((())([[[[[([])]()]([])][]][]][()]()())))(([]([[([]()())][][([()[[][]]()])]([])][(()())[[][(([[()]]([](()([()][][[][]]())[][[(())]]))[]))]()[[][(())][()()]()]]]()))))))])[][][[[([])[][]()]]((([()]))())]][][[][()]]())]))()()]]]]]))]]]])([[]([[]](())[()][])[([])]()])][]][[]((()[])[])((()([])[[(((([(()[[]])()]))))[][[[]]]]](())(([()][()[[]]][])())[()]))]])()[()]([()[()(()(()))][]][[[][[([[][]])[]]()[]]]()[[][[]()()][[[([(())()()([]())[()()[][[]][(([])[([][])(())])[]]]])][((()(([])[]([]((())))([([[()]])])[][[]]([[([()()[()][]([(([]((()[][])))([([])][]))()[()][[[]()]]])][([][]()[][][][(()[])[[()[]]()[]([])]]())[([[(())]]())[][]]()][][][(()[][][]()([()[[[[()]][[[]][]]]]]))])][][([][[]])]][[]])[]([][(())()][()])[((()[[[([[()[()][]]][(()[])()])]][[]()[][[[[()[]]]]()[[]][]]]]))])())[((())(()))()])][](())]]]()])[[]]]()[]()[()[[]()()]]]]]]([])((()()[]([()])[()]))()])])[]][([])]][()[()]]()[]))]](([](([]))())()))((([[]])))()][()[][([]())([])()]])[]))][[()()]()[[][()]]([])([])]])([][[]][])]([][])]((()[[][()]()]()[[]]))(())())[])]()[((((())))((([]))))[()[]]][(()[][](((([[]])))[(())][[()((()()[[][]](()))())]]()[[]][([])]))]()])())))((([([]())]([()][][[(([(())([])]()()[()()(([])()[])]))[()()(([]([]())))()][]]([])[]]()())(()))[[][[]][()][]])()()))()][[[]][()[([](([[](((([]))))]))()[[(((()[[]])))()([])()[(([][([[()[[(()[][])]]]])()[]]([][][[]](((([][])()))[][[]()[]]))()[]))][[][[]]][[][[]]]()]][]([([][[()[[]]]])][[]][([([]())[()]([[()](([]([])[]))])()]([()[]][]))[](()[]([](())[[([][])][][]([])]))([])[(())(([])[()])()()][([](()[[](([([])((()[[]])[(())][[]])][[()([[()[[()]]]])()]])[()])][])(([([()[]()((([[[]()][]][([([[]])[](())[]][][()])([]([]())()[][([])((())[])()])][]))[]((()[[][(())]][([]([]))][])()))])])))]][])()())]][][][()][]]()][[[()][[()[]]]]()[]])]]]([([])](()([][]([[(()[[[([])]]])][]()([[]])]))))])[()[]]]))))[[[]][[[[[][()]()]][[][([])([]()())()[][][(())[()()]([()[][([()])]()]()())()()[]](([([])])()[])([][])]((([()[[][]]])((([][]))[([([[[[]((())()()())[()]]([[[((()))][]]])()][[]][][]](()))][][])][[]][])()[(()[[]][][()])[]()[]]()()[]())[[()]])[[()()()[[]]][]()][()()[]]][[](([]([[]])))[[[[[[]]([([])])][([])]([])]()(()(((())(((())[]))))(([[[]([][])]()][[[[][]](()(((()[]))[[]]))((([]))[])]]())())[][][])]][]()][][[][()]()][(()[(()[])([][[]][()])([][][(((([]()[]()))()[]))])][][()[][]()])][][]]()([]())[]][]]])]]()()([()()()[([])]](([([][][])[](([[[()]]]))()]())[()[(([]))]([[(([][[]][(()[()[((()()()))]])()][]))]()]())][([([][])]([()[()][[]]])[()([([(())]())[][()]()[]]()()()()([]()())[((())((())[[][]]()))(([[](([][]()(([]))(())))()])())])[[()[]]]])([(([])[][]()())[]])[()]][([(()[(([[[[[(()()([[[(())][][]((([]))[[]])][((()(()[[[[()()()[[[][]]]]]]([])[[]([([][])][[()][[](())]]([[]((()(())(()))[[[[](([]))[([()][()([])])][]]][][[[[][[[()([]([]))]]](()[[[]][]][([])][][][]()[[]()])([][]([][([()(())]([()][][]()([()[(([]))[]]()]())()()))[]()](()()[])()[[[[([[[()]]()])[]]()()(([[]]())([()]()[[(((()([])[[[]]])[(([[]()[]][([][[([[[[]]]][([]()([[[[]][]]]((((()))()[([[[()[[][([])]][]]][]][][([])](([][])([([(([[]])()()[[][]([][[([][])]])()()](()))][]([()]([[]()(([[[([])[[()]([]())[]((([])[()()]()[][]))()]]]]))][])[](((([]))([][()]()((()[[]()]))()(()[]((()()))())))[[]])())[()()])()((()[])(()([[[][([()])][]]()][[]()[]])()[[]])())()([[]]((()))(([[]][])([[](())([[]](()[]([](()))()))()()([])[]]()[([[(()[[(()()())]])[]]()])]([()[((()[[][]][(([]))(())])[[[][][[()][(([()[[([[][][[]](())((()[][(((([[(())(())()([][([()(([()])())()])]([[()()([([[][][[](())]])])((())[])]])(()(())()[()[[][]()](()[])])[][])]][])))[])][([()])]()[][[()]])([()()]))])][[[([()[[]](())])()()]][]]]][[([])]][[[]][]([])]))([]()()([]))]][][](()[[[[[[()]](()([][][()]))[[]()]](()[]([[[()]][([])()[]]]((()))[](())()([()()[]])[]))[]]]][(()[[]][()[][()[]([(([]))((()((([[](()()([[[]][([([(([[[([()])[]]]]))()()][(()(())[][[(([][([()[([()([[]((())[[[]([](([])[((()([])))()[][][]][][])([][()])[][[[[]]]]()[]()[[[][]]([][([()()()])([][](([]))[[]])((([])))](([((([[]()[()]()()[()]()[](([((([[][]()])([](())[])[]))[]][[[[[()[[]]([(((())))((([])()(((([]([]))[[[()](((())[]))[[]]]]([()(([[[]][(())]()[]([][(())][[]][])[[([[[[]]]]()())[]]][([])[]([])()]])[[]])])))[])))][(([][])[][()([([[]])()[[]((()(())[[]()([[[[[([])()]]]]])((([[]])[][]))])[[]]([][[[]()[]](([][]()))()])[]())][][[][]]()([])(())([])[][][[][[]]]])[][]](()))[[]]])[]](()())()[[]]()()[]]]][[[(([])()[([(([]())[])([()()])])](()[[()([()][([])][]())]]([]()))([]()(()[][([][(())])]))())][([([(([()[]][[()]([](([()((((()[(())])[[]][])()()))[()]][])[]()()[])([[]][[]]))()([][])])([]))(()())(()[[][]](((((())[([(([])(()[()()])(([()()(([(([()]))(())]([](([])[[]]))()(()[]))[[[][]][[()]]])])))]([])[][]([[]()[[][()]]])[()])][]([(()[[([[]][([(())[()]((()[[[[][()[]][()]()][]](()[]([([]()[([])])])[][[[[][[](([]([])(([]))([([[[][]()][[]()]]()())]))[()]()([([]([()([()](()[]))]))()])()(()[])())((())[((()([]())[()])[[[([(())][])][]([][])()((((()))[()]()))()]][([[[()(()[][][[]()]()[])]()[]][[]][]()][])]())[()][[([][(([[(())[][]()]])()([[[][]()([])[(())]()([([])]((([()([])]([]))[][][([]((()([])(())))())[]])())[([[]][[[[[]]()([()[]])]()[()]([])][()([([[]](([]()([[[][][]](()((()[([([][])])][[[]]]())))[](()()[[][][]](()([]()[])(())(()))([[()]]))[[[[()[]]]][]([]([]()[]))]]))[()[]])[])][[[][[[][][[]][]([]())][]]]()][])[]]()[][[]()]()]()([]))()()()[[[()]][][[[()[]]]]([[[[()[]]][()[](())]](([]((()[[[(([]))]()]()]()))))(([()([][](())())()([])()[][()]])()[[]]())[[()]()](()([])[])][]([[]]))(())[]([()][([[][([[]]([([])])([][[]][])[([()])([][](([()([[]([])([])])[()]])))()][])]])][][][]([][]()()([](([()])[])[])([])[](()((([]([][()])()()[[[]([([])[[]]])([()()()(())][])[][[[((()))[[(())[]]][]][()([])]][][][]]()]]([[(([]))()]])()()[(([()]))(()()[[]])][][(())[([(((())[]([([()[[[[]][][()([[(()(([])))[[][[[()]][[]]][[[]]]]][[([[]](()[]))](())][()[]]]()[([[[[]()[[([])[[()]][]](()[[]])][[]([()](([]()([][[[()][([()][([]([][()()]([]())))])[]]]]))))]]]()])[()()][()[]()]([])[(())()]]())[]]]]])[][[(())[((([([])[][([][]()()([]))]][()]([]))[[][((()[()[](([]()))[([()[[]]()]()[]()(([])[()]))[(()[[][()()][]]([])()()[[()]])](())][](()(([])[[[(()[])]()([()[()()]])()]][][]))[]]()[]()))]([[]]([([()])()[()][](([()[([[((()[]))[]][]()])()]]()([()()][()])))]()))(())])[](()))](([[[]]()()([]([[]([])[]]()))][[()]()[]()](()[[([()([()[[]()((([[]])[[[]]])[]())]([()[]])][])])]])))]]()()]()[[(()([])())[]][[]]])([])[[()]([([([])()[][]([()])[([(())])()]([])]())]())()]()()[()[]()][()])[()()(())(()())[()()()]])[]((())([])[(()([]))()()(()()[])])])[([](()))](()[[]])]]([])))([]))[([[()[(())()[][]([([]([]()())()([()][[[](())][][]][]([])(()(()[()()](())))()[(()[[[][([()][[[()(((()))(([()[]]((()))[][([()])(()()[][(([()]()[])([[]]))])(())])[()[]][[]])[]([[][[()[()][[[]()[[()][]]([[(()[])(())]([]([])())](([(()([()]))()(())])([[(([]))]]()))[[][][]])]][][([])]([()(([])())[]])[][([[]]()[])([]([]()))]][([][]())]()]][](()[])))]()[[]((((([[[[]([()[][([][][()]((()([[([]([[[]]]()[()])())(())[[()]()[][([()])][]]()]][[[][]()[]]([()[]])][]([[][](([]))])((())))((()()[[]](([][()]))[][]())[])[[[]((((()(([(()())]([]()[[]])()))[](()(())[])[]))(()()))([[()()()[[([])][[]]([[]])][(())([([])([[(()([]))]])([](((([][]())([])(((())[][]([(())[][([])[](([([()]())[()()]]))()]([[]])])()))))[[[][(([[]]))]((([])))[[()[[][[(())][()]]((()()[])()[])([])]]]]][][][][[[][(()[])]][]])[([[][([])[[]()[][([])()]]]]([](()(([]())()))([[]]((()))(([[()]]))())))])])[]]()]])())()]]())())()([()])[[][([[((([(((([[](()())])()))([]))][[]]([])([[(([((()(([]((([])))(((([]))[]))[(([([[()]])()[[][[(()[][])[][]]([([])][](()(([](()))())))()([])](()[][])[()]()]])((())[[[]([])[[]([[()]][[](())])([((()[][([[()]][[]()][])][][][[]()(([(([]))])([]()))()(([]))])([]))[]()]()()[])]]]))])[[][()[]()][()][[][[]([[](())][][[](([]))]([])[()])[][][()][]]]]())))()][]))]]))())())][[]([([])()]())]]())]()][][([[]](())[])]([][[]](([]))()([]()()[[]]())()[()])[][([])([[]])]())[]]])[((([[[()]]()][[[(((([([((()))(([][[]][]))[]]())()])[()][([([([])][])([]((()[])((())(([]([]()()[([[([()[][([]())[()][]([][()((([()]))()[[]][](()()))])][([[[[[[]]]]][]]([[([][])()()]]))()]])]])[](([])[])])[]())()(([])((([()]))([[][][][][(())((()[])[[[]]]([([])][[([[](([()]([(((([](()())))))[([][][](()()))][]])))(([][])[()]([]))][])]()])[([[]][([([()])[[([])]()][]([]()[])])((([][])))])])]])))))))])])))]]])))]]]])))))]]])]]])]))])]]])])))]])]]))])]]])]]]])]))])])]])]))))))])])]]]]))])))])))])]])])])]])]))]])])])]]))])))))])]])])]])]]))))])))]))))])]])]))]))]]))]]]))]]]])]))]])))]]))]]]]]))])])]))))))))]))))])]]]]))))]))))]))))])])]]]))])))]]]))))]])]]]]])) [][([])][][[()]((()[]()[]()((()))()[]))][]([])[[]([[][][][]])([][]([([()])])()((()[]))([][()]))[]](((())))((((()[])))[][])(([()[()([([](([])))[[]]])[]][][]]))[][[](())][][[]](())[[[][]]()[([()()([(())][]([()][()()]()[[[][[][()()[[]]]][[[[]()]()[]][()([()])][[]()]]][([([])])]]))])]()[]][[()]()][][()[[[]]][]([()[[([][])]()[[]](()[([()])][()])]()][])]()(([(()([()[]()[][[][[][]][[[]((([]([()()()(([[][]()[()[]]](()()(([(((())))][]))())())[[([])[]((([[()([]([[]][])(()))[[([[([[]])(([][([[]])[()[[[]]()(())[(())]][([([]((())[]))][([](()[][[]]([])[[()[][[[]()]]]](())[([][[()]][])][]))[][][[[][[[]][](()()[])]][()](([])[](([(([])())(())]))[][([[([()()][])[]][]])][][](([()[]][]())))]]()[][][[]][[(())]]())]]][][][[[[]][]]()()([])[]][])[[][[([]())((([[(())](()[()])()]())[])()[])]([])]()][[]()])]])]]()()[()][([])][]]])))(([()([(()((()[]())[]()))][[((()([]()[[()][][()]((([](())[([])[(()[([][[[]]])([])[]])[]]()])))()])[[]][][])[])]][()])])()[])[]]()[]]())]))))()[([()])]()]()][]()]](([[]])))([][])([[([()()()])([[]()()()])][((((())()[([])()[[[]]]([]()[[[()]([])()()]()()()][(([[[]]]))][][]([[]]))](()())[])[][[]([]())])[]()())()[][([][][])([([][][])][(()[][])()()[([]((())()(()()[][()]([][]()))())[]([((()))][[][]][[]])())[]]])[][][]][([(())][[]])(())][([][()])](((()))[]()[[()]])[][()][][][()]()[]]])[])[[(())]](()[])](())[[[[[][][[]]][()([])](()[])()()()()(())(()()[])()]]()][[]])())[[[]]([[]])]()([[]()([[]()[[][]][[]][[][]]()]([()])[]()[[]])])(([][]())([[]()])([[]])[[]])()[(()[])][[([([()[[]][](((()([])))([[[(())[[([()])[()()([]())]]()]]]()()]))[]()(())])[]]()[]())()]]()([[]][()][[[[[[(([])())[]()][][]]]][[]()(())][[[]()([(())])[([])]]]([[]()()])[[()([]()[()[[[][]([][])][[[()]()[[]]()][[[[]([]([()()]([()])(()[()()]))()[[()]((()))[[()][]([]()()((([]([][()]()()[()][])[][][[]][[]([])](([])()))[])))][()[][]]])[(([([[]]([][])[([])[]])[[]]]))]][][][]]]()]]])]]()]])[(()([]())())()]()[](([])(([((([[()()]([])[]][[[]()[[((([[](()[[[([])]]][][][][][])(()[][][((())[[[][]]])])()[]])))([[]][][[()][]])]([([([]())]((([()][])[]()))()[]([(((([[()(()[([()[][]()()[][([[]][[]()[][]])][()()]]()())(()()())][[]])()]([])()()])[])[(([])()[()])])[[][][](([]))])()([(())][[][]])[][[]]]))()][])()]]]))(([()](([])))))[]]()[])))[][][()()]()[]()()(()()())([]())()[((())())[()[[][]](())[][]][[]]]()()[]()()()[([(())]())()[][]]()()(())((()())[]()[])[]((()))[][][[]]()([]()()[(()[()([()])()][])])[][][][]()[][][]()[]()[]([(()[])](()[()()()()]))[][[()]][][([((()(()()(()([]([]))((([([]([]))])((([](()[]()))[]))([])[[]([])([])]))([([([][])()[]])[()][][][][([])]([]()()([(())])([([])([][[[([()([[([[[]][]])][([]())]]())])]]])](()()())((()[])))[[]])[[([]([][([]([()][[]()()][][[]]([[[]()]([[[][]]][[]]((([]())[][]()[][])())[])()(()())][])[]))]))(()()()())[][[()]()()]]()]]))()()([](())[((([]()[(())[][]]()[](()[[]])()(()[()[([][(())[][]((())()([()(())])[](([[][]]([][[]((())()([])()()[([](([[([()[]][([])][()[[(())()]([[]])[]()][((()[]))[]()][[(([[]]))[]][][]]([()()[[][[]([][][[[]]])]]])])[]]][])))([[]])][][[[[[][]]()[()[()]()][]([])[([[((([][]))[()](()()[]))()([](())())()][[]]()])[([[]][[[]][]()]())]]][[]([()([[()]])][[][]][]([()[]()]))[([[]])]]]][][])[[]]])([[[([([]())])]([]([[][()[[]([])[(([])())]][()]()([[](()[()([])]())])][([(())][])([](([[]]()[]()()()())()))[]()]]))]][][]))))()()])[[()]([][[[][[[[[]]()[]]]]][()[][[]][]]]((())()[()][()()[][(([[()]()(([[([])()()]()]([[][]()()([((()))])]()[])[()[][([[]])(([[]])[[()[[]]]])[[]()(((()[[[[]]]](())[])))]][]]))][()[[[[[][][[[]]][]]]]][]])[])]]))]](())][][])()()))(()(())[()]))[()][()[]][[]()[()[[][]([([(())][])]())]](()([][()][[]([]()[(([]))[[[()[]][([[]()[]](([()]())[[]()][[][[([([])(())[[()()][(())([()][]())]([[(())[()]]()])()([])()][]()])()[]]()]()([])()][[]][])(()())())][()(())([])(()([[]][[]]))][()]([[]])]]((([[((((()[]()))((([][()])[]))[()])[])[]]](())[])[]))])]([(()([[[()()]]][[[()[()([[]]()())[]([()])][[]]()]]]()))([])([]()())[]()]))([]))[[][]]][()]([])[]])))[])[][()][()[]]](([][][[[][[](([][[]([[()][]([])[][()()]()])[]([[][]([])]()())[[]]](())[]()[[][((()))]]))[[]][]]()[[()]([])[]]([][])]][[][[(([])[[()][[[[[]]()]()][[]()((()[](()[[]([()()])])[]())[[](((()(([()([[()][[][(((()))())([()][][]())[][()([()[]]()([]))[([[]])([])[()]()](())[()]()[][()[]()][()][]()(())[]()()]([()]()[()([[]][[()((()))]([])]([[[]]()(()[]())()[][]])[])()]())]()](([[]]()))][[[]][([()])]])[]])([]([()][][][](()))(()))))([[[([(([[][(([][]))()]([[]([](())())])((([]))[[()[[]]([[]([])])()[]]])[][([](()[])([][]()))()]]([()]))()(())([()()()()[[[()()()][]]]]([]))[]([(([()()([]()()[])]))[][[[]([])][]()(())[[()()(((()(()))[()[]]))()()()([]())[][[([][][])()]][]][[]][]][]]()])[])][]())]][]]))[[]([])((()()([][]())([[]])))[]])()()])[]()[[()(([]()[()[[[][[]][[]]][[[]]]](([])[[]()]()[])(())()[]]())())][]]()][[]([][[[][[]]()]][[[[]([][])]([[]([(([]([()()]))[])([[[(([]))]()]][[()[()()]([])[(([][[[][]()]])())]]([])])[(()[()])[]]]()[()([([][[]])()][[][[[[][]]]()[[()]]]()])]([[][([])]])[([[[]]()()[]]())[][[[]()]([])[()()[[]]]][([[]][]())()[][]][()]()(()[])])((([([[]]([[[[](()[]()[])[]]([[][[]][]])[(()([]))]()][[]()][][]][])[])()])[]((()(())())[[]]))[(()[])[[][]]](())[])[]()]())()]][()])([])]][]([(([((([[((([()(()()()[]()([[()](([][()([])[(())[](())]()(()[])])(()()()(()[])(()())[[[]]])()[])]()[()[]][])[][()[()]])()()[([])]]()((([[(())[][]][[]]]))))))[[]()(())][[][[][[()]((((()()[(())])[]([([])]()))()))()()]][[[([[()]((()))[()(())[[]()((())[])([]())]]])()]]]]]])))()])[([]()()[(())[]]())]([()](())[()]))([])])[((()[[]]())[[()]()[()([])][()]])()()]([])[[]]]()([][])[[]][]((([]))))]()()(([[]][([(((([]()[][])()[[]])[][]([([()()()](()[[]]())())[]()()[]()]()()(([[](()[([])[]((()))]()[([[]])][(()[[[[[]()]]]((([])))[()()][][[]([])][]]())[]])])[(([]))[[]]]()([[()([[]])()[[][]([])]]([[]])]()([[]])[])()()))))[]()(((()([[]]()[()(([[[[][]]]]()))(())][]()))[[]]))()]())[[[]()]][(()[[(()[])]]((([]()))[[]](())[])(((())[]([[]([])[](([])[()])([])][]()[][]))[]))[()[[](())[]]]][()]]()([])(())()))[[()]()]]][[]]))[])[][[([[[]]()])[]]]]()([([]())]()()([[[]()()]]()(())))[][[[]]][][()](())[][[[[]]]()([([](())[[]][(())]())()]()[]()[()][])([(([[[()([[(([()]))(((()([][([([([])[]()([])()()[][[[]][]([])][[][]((())())]()]()[[[]]()[[]([([])[([])([(()()([()()(())](())))])(([[[][[]]]][[]])()()[])[][]]])((()([()]))[()((([([()])][])(([[((([()])()([][])())[])()[][]]([([])])][()([]()[])][][][]))()[(())])[()][[()()(()()())([][])[]]])[()]()(()[][][()]()[(())()[]])])]]([[[]([])]()((([[](([][()]())[]())][([])()]())))[]]))])[]]))[[]((())(())(()[][]))][[][(((()))([()()][()]))()()()[][[]]]][]())([]))]])(()()([()()()]))][][(()[[]])]]])[()()()[()(())](()(())[])(())])][])([[]()])]()()()[[][]][][](())[[]]((()))[[][[]][(())]([][])][[]()[](([[][](((()()))())])([])[])]()()[][[]](())[()[[]]()][]()()(([]))[([])[()([](()([]))[()])()]]([[]][])[][[]]((())([()][[]()])(([]()([][[[]]][()](())[[[[[]()([][])]][]][(()())()()]](()))[]))())[([][[]][])[[]([])[(([])()([][][])())[()([]()([((()[()[[]()]]())[([[[]()([[()]])]()])[]()]())[[]][()]]))]()][()()[()[[]]]]([][])(())](())[]](())[()([])]()[[]([()])][(([]((([]))[[((([[([()])](())[(())]]))[])[]][]()])))][]()(())[[[[]]]][()]([])(()[][[]([([][[][]])][[](())[]()][])])[[]][]()[][](()[]([()][(())[[[][[((([])))][]][][]][]][]([])]))[()]([])()[[()()][]][][][][([]()[[()()[](([[()()[]][]]()(()[])([][[]]))[])]])]([])[()[[]]([[]])[][]]()()[()(())]()()(([[]])[[((()(()))([()])[]()[[]([()(([]()[()][])())])]([()()[[]][[[()]]([]([()[]])(()([[[[][][()]]()]][]((())())(()[])[()])))[]()[[]]()()]()]))([])()]([][])[((()))][]])()([][][[]([[]([[(([])(()))]])])([])][[[]]][])[[[]([](([(()([((([()[()[]][]()]([[[[()[([][[][[]([(()())][])][]])](([][[()]]))()]([][])]]](()(([]()([]))))([]()[[][]]((()[(((([[()]()((([][])(()[[]])[]))()])(()(()(()[][(())]([[(())]]))(()()))(()([()(())()]()))([])[])[]())()()[]))()()[(([()][]()[]([][([[][()]])][[[()]]])[[[([]()[][]()[])][][]]]))](())]()[]()()[]()[[()]()])((([])(()[]()([](([])[])(([[[()][][][]]])())[]))[[([[](((()())[]()))])()]()[][[]([[][]])]()]))(([([][[][[()]()[]]]()((([]))[][[]](()[])[]))()[(()[])()]([([])])]()))((())())[][]()()))()()[])()([])([([])()[]]()[][[]()]))[][][[][()[((([()(())()])()))[][][()]][[[([(([[]][[][()]](([()][][(()[]([[[(([()])())(())()([()])((([[[[()[][]]([]()()[])()()]]][])[()()][()]))[[()()[]]]()[]]](())[(([[()]()][(()()[[()[[]()(([([][])[[()]()[]]])[()[]][()])]]])][()])[][[]([]())]())[(([])[()(((()[[](()[])([][][()()()][[[][][]][[]]])()][][][])[()])()()[[[]()[]()([])[[]([](([[(())((([]([((([[][][]][](()[[][[([()[]()])]]]))[[](([](())[])())])(([]()[[][([])()[]][(()([]))][()]][][()[]])[([])[]][][()]))((()(())))[[]]])()(([][[()[][]]]))([])[[]()][][[([])[]]([[]])])[[]][][()]))([](()(()[][(([[(([][])()[()])][(([[]])[([]([[[][[()[()[]([()])][]]]]])[])]((()[][]())[[][(()[[]([][[[()()([((((()[]([(()([((()([])()))][()]()[()([[][[]][]([])[]()[[(()((()))[[[][]()]][])[[[]]()[[][]()]]]][]([][[]((()[[][([])]()])()(())[]([[(()([[][]]))[(([[[]]][][[]((()(()[([[[((())[()()])]][[]]][])])[]))][]()))]]])[]([[[]]()]))])](())[[[][]](())])][]()[[()([])([][[()[[[][]]][[]][[([])[([[()(())[[]()()[]]]])]([[[[]]]()[[][][]][[[](())[]()[][]]]])([(([([[[(()()[([]())])][]]][([()([[[]]])()][()()][[()][]]([]()()[]([(())([[][()([(()())()])]]([]))()][]()())[[]][])([()]))])]))])(((([[]]))(()([]()()))([](([]))(([]()[[()[((([])))()([[]()])]]])()[]()))[])())]]]][[[[](([]()))]([])]])][[]()([][([[[(())]]])][()][()]())[][[]]][([()]()[()][])[]]])[[[[[[]()][([[(())][[[][[[([])([[[]()()]])][]]]]()[]()]])]()[][]]][[[]]](([])[[][(([()](()(())[]))([])())]()])([]())]()[(()[][[[(((([()([])()(())[(()([[[]]]))]])[[]]())()[][]()[]))]((()[()]([[]])[]))()([[[][]]]([()[]]))[[([([])[]])]]]])[][()[]]][[[[([])(([](([[[](()[])]][])[]())[]))][[](([]))]()][](([()])[[]](()((()[([([])][][([[]])()])]()([()(([])()([])()[()()(())((())(()(([[]]())()([]))))[]](([()][()]([]))))[[]]][[[([](()))[]]()()]][[()]]()[])))[])((([]))(([()[]])[[][][][]((()()()[]))[[()[]([()[]([])]())[()]][]]][(()[])(())()[()]]([]))))]]])[]([()[]])()]))()[()([])(([][[]])[])()]([][])[])))])][[[]]]()(())[]]])]([])[])[](()())]])()())][]])[[[][][()[[](([])[(((([][(()[])][])))()(()))])[[[][][]][]([[[([()](([])))(())][[[]]][][()]()([[][]([[[(((())()([]())())[([][][]([()()[()]])[])[]][])]()](()[()])])])()]])][[][[[][([(())])[[]]([])](([[[([]([()[[]]](((()(((([][()])(([[][]]())[][])[]))[](())[][](())))()[([[]])]([]))()[][(()()([])[](())[]())([()]((([]))))[[]][]][])[]()))][]]([])])([](((((()[][])()[[()[]()]])())()))))]]()[[][]]([[][()[[]](())]])[([])[[](()([[[]]][]))[[][]](()([])())][](())[[](()[])[([([])()])][]][()][(())[[[[(())]()[]([()]()(()()[])()[[](())([([])])])]()[]([[][]([][][[](()[][][([()([((((([[]()()][])[[[]()()]()])((())([])[])(([[(([]()[][()[()()[((()([]((()())[][](())[()])))())](([[([])][]])[])([([])])[]][]])[]([[]]))][[(([]())[][]()([[]][]))]][(([()][[[[][]([])][()(())[([](()([])))[[([(()()(())[](([((([])[][]))([[][]][()]([[][()]])[])][[[[()]][()]()[]][][]][]()[])))(([]()()[[]()[]]))])(((([])[]())))]()][()(()([([[()(((()[][[(([()[()][()(([][][[](()[])[[]()]()][][()][])[])[[[]]][]][[][([]())]]](()()[])))()]][]())([[][][]][[]][]))[()()])[[](())][()(()[[()()[[]]]()])([[]](()))]]][]())[[((([[]]((()))()()[])))]](()[]()[[[[()]([])]([][])[(()[()][])]]](()))]))]()][()]()]]][](()[()(([[[][]]((())[][[[][()()[][(())][]]([[]])]])[()([])(()[](()))()[][]((((()))()[]([])))][(()([]))[()([[]()[[]([][])(())]()]()([][[](())()]))()()(([[[()[[[](([()()(([()])(([(([])([])([]([[[][]][[][()]]])[]))]([[]][]))))])[([([[]([[]])()])])][(()[])]((()[]()[][](()([()])[()[]])))[[[(())()]()[]]]())]][]([[()((()[()()()[([])]][]))]][()[()()[[]]]()()[[](([]))[[[()[([()])][[][[[]]()([[()[][]()[][][]]()()][])]((()()([[](([]))[[[]][](()())]]()[()]([][]()()([()][()([])[]])))([])))][]]]]][][[()([([[]])][([[[]]]([][()]))[(([[([]((([][]))()[]()()()))()]])()[()])][]])]]]())][[][([[](([])(()[([]()([][](()()())()(([()[([()[()]([()])][][]([[]])([()])())]][][]([])))))(((([]))))[()]()]))[]][[]][])]]()(([([])()])[])[(()[])[()]]]()()[]()]([]()())[()(([()])[[[]]()[][([](()))[[]]()[]]()]())]))()(([[]()[[]][([()])][]([[][][][]])][[](()()([()]))][([])])([(([([](()[[]]))[][([])]]()[[]()[][()]]))])[])[]()[[]]][]()](()())][(())[]()[[][][]]([](()))]))][[[()[[(([[]]))([[]]())()()]][][]]()[]]])(()[]([]))))][]([()][])][])([])))[])[])])([[]]()[])])][])]([][()]()[][()]()[[]])[]())])]()[()][]]()][]]]]](([])[[[()]()]])]][])]([()]([[[]]])))[]()[][[[]([][()][])()]]))()[]][((()(())()(()[[][[]]])[])()([[][([()])()([()][])[]]])())(())]((()))[[[([][([(([][])[]()[]())[()][[([])()]()][]][][()[]][[()]()][])[]])(()[[[]]][([[]][[][][(([[([]([[]()[(()([[[][]([]()()((([()])[][]([[(([]()[([(())[]])[([]((([[[[()][](()[][[]][])][]]](()[[[]([])]([])[()[][[]()]]]())[[[[][]]]])([]))[[][[([[]][()])[]()[((())())()()][](([[]]))]()[[][[[]()[]((()))[[]]([])[]]()]]]])[][])][]([]())[[][[[()]][]]([])]](((()[]))[][([[]([[[([(([]()))](([])))()[]]()()]])])(())[][[()][[]]((([])[([[[([()])(())[]]([()])[(())[]()][](())](())[[()[]()]]][[]()[[[[()]([()[]])[[[]]][(())[[][()]]]][]]]()])()()[[()[()]]()]][[][](([]))[]]())[([])()]([]))[]][()([()()[()]]())]([])]))())([])][([])][(())[[]][[][][]][[[]([()])()()[[(([[]()((()()()))()[]]))]]()[][]]]]][[]])(())()(((()()))[])))())]]([](()))))([])]])[([]([])[](()[[[]]]))[][[()][]]]([]()))((()[]))]]))()[]]([])[()][]]()([[]()]))])(()([[[][]()][[]][]]))()()(()[])([[()()][]][])[[]](())]]((([])))]][])[[]][][([([])((()(((([((()[]())[[][]()[[][[]][]()[][[()[]][]]][]])][[][([][(()[()][])](()[](([][[][[[[][[[]]]()((((([()][])[()])()))[(()([[]]()))])()[()(())[]()]]((())()([][([]([])[(())])]))]][[]()(())[([])][]]([])]()))(())([][]))())][[][][]([])[[]()()]]()(()[]()(()(()([][][()])([][]())[[[()]][]]())()()[((()))]))]()[()()()]))[([])()])[[]])()))]([](()))[[()][]][])([[[]][]]((()[])()((())[()([[][[[]]]([[][[[[[[[][()]()][[((()()))][()[[](()[()][[[]]][])]]((()[()(([([])()](([()]))[[](([[([])()[()][]](()[][()(()[[]][])()[][][]])[()]])())][])[[]])[](((([]()[]()()()())[])([(())[()[][][[[(()())]](())()][]][()][[][[[[[][][[()]]]]()][]([][]()[[][(())][]])](()[()])()]])))[(()([[][]()][()()[]()]))(([[[]([[[]]][])[]]])[()[]])[][()[]]]]())()[])]]()]]([]())]()]])[[()][][[]()[][][]([([])]())((()))]()[]]])()[([][([[()]][])])([()[]()[]])([]()[]([])([[()[]]])[])]])(([[([]())[]]()[[]]((([([])])))([[]])])(()[[[[[][][][[([])[][]]][]]([()][[]])[]]]](()(()[]())))()[])))](()[[]])[](([])()())))(([[()][([][([()[][]]())([[]])()([][(()[()[[()]()]])([])][][[]]())()])]])[](([]))[()])[]][[[]]]]][[][(()[])][](()[((((([(()([]()[][[]])[]([][]))]()([](([](())[[](())])))((()))[()()()])[])([]()))[()([([()])[[][(()())][[()(())[[]](([[]([[[]()([[[]][][[[][()()[[]]]]][]])]]()[][])[][[([[([[][]((()[[()]]()()[])())])([])]()]([[()[]]([])[(())][((([][[[]]])[]()()))]()]))[][[[]](()[([()][[]])[()()][[]((([()][]))(((([()[]()[[]]])[])[]()))(([])))[[]()]]]([]))[][[][]][]]][[]][[()[]]][][]][[]([[()][]][][])([()[]](([([[([])[]([])]()[((()[]))]])(()[]())]([()][](()))([])))[])]][(()()[][])]))]]([[][]()[]]((()))(())[])[[([()[()][]])]][[]][]][][(())[]]])]()()([]()[[]]))([]))])])()][[]()()[()]])()[()(())(())]]](([](())))(())]))()[][[[(((((()[][[][]][])))()))[]]]()()[()[()][()]([[]])][]]][][])))[])])]]][()()]]([](()(([](()[])[]())[[[]]()])))[(()[])]])(([(([][[[()]](([[]][([])])((([]))[][])()()(())[[[]][]])]))[[(([]()))([])()]]])())())]))][[]()](([]))[()(())])))((([[[]()](()[()[[]()]][])([])()][[]]))[])]][[]][]()[()][()[][]()][()][([])[[()()(()[][])]()()]()][]()[]()([](())())(()(())[])()[][[]([])[([])][[]][()(())[]]]()()[]()[()()[([[[(())(([[[[]][]()[]]](())[])([[]([][]()()([]()))()])([][([(())])([][[]((([])()[[][([])()()[][]][()(([[]([[]()[[][()[]]()]])][()[][(([][][(([][([](()))])())()])[])]()()])[][([][]()())()(())()[(())][]([])([()[[[]][[([()])]]]([()][]([[]([])[][[((()[(((([()[][()(())][]()([][[[]]][[]]())[[][]()]()]))))()]))]()][([[[][(([[]([[]()[[]][()(())[[]]]([([([()])[]])[](([[[((()))()([[()]][]())(()()([()()])([]))][]()][()]]))(()())])([][()([()][(([[[[]]][]()[[[]()][()()([[]]())()]]]))[][([(()[([([])][(([]))()])([])[()()][]])()[]][][])[]]][]([[()]]())[][])[[][()]()]][][[]]()()[])[()()]((([[]][[](([()[[]]()()[]()])([]([])[(())[](())](()[(([[][(())]][]()))[][(())]()[[](([]))[[[([])()()[[([]()[][(())])()]([])][[]][]([[]()()()]((()()(([()]))))())][[]]][]([][()])]([])()]()])))])([][()])))])[]](())[]))]]])((()[])([])[(()[[()[]]])(([(())[()][]]())()[]([()]))[[]][][]()](())([]))]]))[]])[(([[()([[]][([[]])[[](([[[][[][]]]]([(([[([](()))([][])]](())))([[]()])][][]([[()][(()[[]])][]]()[])([][((((()())([]))()))()()])[([()])[[()]]][])))]])][](())]()[()[]]()[([][])(()(()))][]))[]()()][[][][[[]()[()]([])[(()(())[])[((())())]([[[]]]())(())[]]()[()]]]]]())][]]))(()[()])]((()(())))([()]())[[()[(())((()[[]()])()())[]([])(()[])()]]])[([]())()]]))[]]()[[]]]]()([[][[]]]))()[][][][([])]](([])[][])([[]])[]](()[][[[][]((()())(()[]())[][(([()](()[[([])]][()]))[[][[]](([[([]([]))]]([()][]))[](())()())])((()()[()[[[]]]])[()][[[]([[[]([((()()))[]])[[()()][[][]]()][]]])]](([][][[([]()[([])])]]))()())()])][]][]([()]())[][([(())][]()()[(()()([]()[]())[()[()[]][]()][(([[]]))]())()[([]([[]][]))[()[[([][()([[(()[][]([][][])[]((([([](([])[][]([])())(([()[](([[[](())[]](())][[]]()))[[(([([])])([[([][])[]][([([][]()[][])])][()]][]))[](((()))[])(())]]()]()[[]([])])))][])(())[](([[]])[((()[[[]]]()))[][](([[]([][[[()[()()]]]()[([()[]()]()[]([])[])]([]([([[][][]])]))])[]()[[[[]][]][[]](([])[((()))[][[]]([])]()())]]))([[][]]([[][]])(()[]((())[[[[]([(())(())][[[]()([][])][]](()()))]]])(()([([]()[(())[]()])[][]]([][][][])))[])[])[]()][]))(([]())([()[()](()[[(())(())[][()]][([])]])()[]]([[()]]()))[]())[([([])()[][([(())])(([[()()()][]()]()([]))[])[]]])])[]((([]([]([][([[(())[(([(()[]((()[]))(()[](([][][])[][(()[(()[][])])()()])(())[][])[[][][(((())[][[[][]][]])[]((()())[][][[][]]()[])[]((()()())[[[[([])()]][[[[[]]]](([[]]))]([(((([()][(([[()()()()()(()()()[[(()[()[()(((()[])[]()))]])[([()()[(([[][]]))[[()([([](()[]([[]])))]()[(()([()]))])]][()()[[([((()))](()[()](([(()([]())[[][[]]])][])([(([([[]]([]))](()()())[][][[[()[](((([]))))()[[[[]][]()()([(())](()))[[([])[((([](((((()(([[]()()]())))[()]())[[]()])))))([[([()][])][]]))]]]]]]][()[[]]()]][][][][()[](())(())][(([])[[[([(())[[]()[([])][]]])[][]]]()])()][(())])([])[[]()[]][]())][(())[[[[()(())[][]]]]([(())]())((())[]([()([])[[[]]()[(([((([])[(([]))]))][])[[[](()()[()(([[]()][][])[][]([]()[])())[[[[()[()]]][]]()][](([]))()()])[]][]][()(([([[[]](())()[()]()((([]))[]())])])([([()])()])())])]]()([])][])())(([[]([]([])[()][[()][(()((()()[]())))]((([][()()[[()](()([]))]([])()()]()[][])))])([(())][][[][]])]))][]])()))[][])]()[]([])]()][]]()([()])[]()]()()[][()[()([(()[[]]()[[[()]]])(())]()[][])][[[()[()]]()][([()[[[()]()()[[()([])((([]()[]()))[])]]]]])]([](())()[[((([([[]])])))]])]])]][]][]())](([[](()(()[[[()]](())][[]]))])()([]())([][([])]([]))(([[]([]()())(())])(([(()[(([()]()[()])[[][]])(()[])]([([([()[([]([](()[[]()]()())[]))()][]]()[]()([()][]))](()[(([]()[])()([[[]]]))])())]()(()[])[]()([](([()[()[()][(([()([])[]])())][[([])]]][()]][])[])[()][][]))[()])[()][[[[]][[[]]]()]]])[][()()(()((())))[[]()][([])()]]())[]()[()])[(()()[][()])][[][[[][](()())()()]]][[][]()[[[]]]])(())(()[][][(())](()))()][]))[[]()()]])((([][]()()()([]))()))))())[[]()]])]])[])][]][[()[[[[]]]][()[]](())][]()]([(()())]()()[[[((())((()[])[][()([])]))[([][])]()]][(()[]())][](())[[[]([[][][]()][])()()][()][]]()([]())])()([]())([[](())[]()[()]()[[()]][()]([[][[[[((())[[](([[][]][]))[[[()][[(()((([][()[][][[][[][[]]][][][]([]())[]()[]]])[]()[[]()[(([]([])))[]()]]))[(())()[(())]][])[[]()()[][][(()()(([[]()([[()[]()]()[]])[[[()[]]]()()]])[]()))[]()]]([()[(()([[][]([[[()]][]])[()[[[](()[[][](()()[])])]]([]([[]()](()(()(()))[](([]())[][][(([[([])]()[[()[[][]]]]])[[]()][][[()(()[(()[]()[])]()())]])]))[[[()]]([]()([]))]))[[]]](()())([[([()[[]]([])])]((()()[][]())())][[[]]([(([]))([[]])(()[[][][](())])])[()]])])([])()([])[])()()[[[[()[[[()]]]([[]]([]))()[(())]]([][])]][][][]][]()](([(())[[][][][[]]()]][]))()()[[[](([(())])()[][]())]]][[()[()]][()()][[]]])]]][()((()))[()(((((())([()[[][]]()[()[]]])([])()[])([(())(())[[](([])[])()]]((()([]))(()([][])[[((()))([])][(()([(([][]))]([[]((()()))]((([()])(()(())()(())[[]]())))(([]))[])))]][])))))[])]]]][()[]([][()][()[((([[()]]([])))()([()(()[][]([[()[(([][]))[[[]()]]]][][()]])()[])[[[()]()]]])[()[][()[][](((()[()[()[[]()]]][([[[(())()(()[(())()(())[][[][[[]()[[[[[((([[[]][(([()])([[]()]))()[()]]()])[([][]([])(((()))))[([(())[]()(())][(())[][[]()]]([]()()([])()[[][][]]))]()][][]()[][](()[]))(((()[()([[]])])(())())())[()])[][]]]([()][])][]]]]][[][(())]([](([([(()[()[(([])()([[(([]))(([()()[[]]])[])][([])]()([])])()(([()[[]][()]([[[[][([[]]()[[]])][]]]](()[][]))[][[[()]]]([][])[]](())[](([()]))[][])))()[]()[[]][[][]]([([()])(()[[([[][[()[][]([])]]][()()[[][][[][[]]][[]]()()()()[[]][[(()[[][[()([()(([((()()[[[]()()]]))]))])][][[()]]][]])[]]]([[]][([][[]])[[]([(())()()]())]])]()][[(([](()[]))[]()[[](())(())()[[[]]()()]])]]())[]]]([])())])([])[[]]()([]([[]()](([[]][]))))][][]][])][])])))()]]]([[][[][[][()[()[][[()()[[]]]]]([]())]]]][])())([])[()(()[()])()[]]][()()]]()[]([([[]])[]()()()[[]][][(())]])[(())][]([()()][][[([[]]())][[][(()(())[[[(()([[]]()[]()))]]][()()])][()]]])()])[]][[([(()([]()[]((())())()(())))[]]()([]))([[]])][]]))()((())[[]]()[][])(())())]](())([]([[]]))()())[]]()])][()([])]([]()))]]]]](()))([])]())([([])][]))[[[[[][[]][]()]]]]()[[[]](()[]([]([(([])[[][][[]]][])]))[](()()[][]()()[()]()([]([]))[()]()([((()[(()[((()(([()](([[]][[[]][([(([[[[](((()[([])[[][[((([[()]]([[][]()]()))))()]([([][[]])]())]]][(()[[()()][][][]([])]([()[((()))]])[[]][(()()()()[[]][[[]([])()]][])])(())]([][])[])(()[[[]]([[]])()][[[][]((()))[([]()()()([(())](()[[][[[][[([])(())[]()]]()([])][]]([]())]))([[][([](([]))[]((()[])([()][]))[()[]][]([])([]))(([[[]()[[[]]][[()]]()([]()()())(()([])())]][[]()][]))]])[([]()()[](()[])[[(((((([[]])[[()]][()[[()](([]([(([[][]])[(())][()])]([([((()[]))()[[[]((())(()([[]([()])(([[[[()[([[[([()()()](([][])[()[[]]()][([[]])((())()([]([])))]()(()[]())[([])()]))((([][(())])))]]])(()([[[]]])[])][]][()([]([]()()[]([]([][](((()[[[]]][[(([()]()(()[([])()])))]()]))[[]]([()(())[([()][[]]())]]())[([](([()][[]][[[]()[(())[[]][[()()[]]()(()([[[]([[[[[][((()))]]][]()]])]([][[[](([])[])]])])[([()[]()()]()([])([](())(()([[([[]]([]()[]))[](([]))]][[]][[[()][]()[[()[([()]())()([[([[][]()[[()[[]]()]()]])[()[[(()[(())][[(()(())())]][])]][[]]][[[]](([][()]))]]()][[[]]])][](())]]]]([])()))[()([]([])([])())]))][[(())][][]([]([])[([[[(())]]])()[][[]]])])((()))]]]][])()))](()))[[]][]([[()]])[()[][](()[][[[]]][[]()[[()]]]())])()))()[[][()][(()[()][[[()()()([()()])]]])()]])[([[](())(())()[]]([()][([][()](()[[]([()])()])[][()][()](([([(([()]([])()([])[][][[()[()]([]())]])([])([])())[]][[]])([()()])][()()])))]([])[][])()[])]]]()(()())[()]][]][])([()[[]](([]()))]))][])[[([])[[()[(([]))([()][()][[[][[()]()]]([[[]]])()])[]]][]][[][[]]]]])[[([([][])])]])][[]]()[[]()]]]()[])][[[]()()]]))))[]()][]][[]]))[])))[]]([]())][][([])][][][]())])[((()()([[(([]()))]()()])())([()])([[[]]()[[][]][[()]]]()))][](([][[]][()()])(()()([][]))([])(()[[()][[]()](())()[]()](()))([[]([][()[]])[]((()[]))][()([]())][[[]]]()))]([()])([])]])))()([[]]()(()[()](())[[[][()]]]))]()[[[]]]]]))[[]]])]]())([[[[[()((()))[]][[](()[])][()([[()(())]([()(())[]([[]])])])]][]][]([]()(()[])())]()[([()()])](()()[([])])]([[]])))(()[][()])[])[[[]()]])[[][[][][][[[[][[()][]][]]]][][[[]]()]]()](((()[])[[][]([([][][()(([]()))])[()][()[][[()(())]]]][]())[[[[]][()]]]]([])))([([()]()()())])[][([])[]]))[]])()[][(((()([()])()([([])()[(([()()]())([[]()][])[])]])))([()][]))]])()())()([[][[()[]([()]((()(()(()[[][[[[]()]()([(()[(())[([[(()(([])[]()[](([()][]))[]))](()()[])()])[(()())][]][([(([])[[]])(())])[((()((([]([[[[[]()]]([[[(([()][[]]((([[()](())[[()][]([[[]]][[]])]()[]])))()([()[]()])([[(()())()][]()][][[((()))[(([]))[(((())[]))(()[])]([])]]])[][])[])[](()([[[([])][[[]]([([])])]]()([])()[]][])())[]]]]([[]()](()[]([])))[()[()(([][()(([([[]()()([]([])()())])([]([[]])(((([()])([([()][])])[])[][[](()[])([(([][([[[]]()]()[])]))([]([()((([[()[][(()()()([[]()]))]([][])[]([][[]]([])([(([[[][][](())(([])[[()](())]())]][([][])]()))]))]][])))()([])[([])](([[()()()][((())())][]])[()])[]](()))())[[([()](()))[]]][]((([]))[][[[((([])())[](()))[(()[][()[]])]()([]([]()))(([][]))][]]])([[](())[[]([[()][]])(())[]()((([((()([]()))[([]()())])[[([])[]([])][]()]([])][])))(())]])])()][]([[]]([])[][[([])()()[]()]](([][]()())())))[[()[([])]]][])())[[]]()[]]((([()])(()()())))[((([][[[([()()[()]((()))([(([()()()]([[]]())[]()[][])[])][[][]])])[()[][[(())()[][()][](([([[[()[]([]()[][]())[([](([()][[[[]]][()][[]]()()[]]())))]((((())()))(()([()()[(())]])([]))[][([])](([]()[[[[([([()()]([[]([])])[[[]][([[(([]))(([([])][]([()])))()()[()]([()])][]]()(()[][[]]))]](()())([()]()))()[[][][]][[[[]([()[[]][()]([([](([][][([[]([])]()())]())))[]][()([]())](((()()()[][]))))[]]()())[]()[][[[[[[([[(())([[()[][[[]]]](()(()))[]][(([][][[[][[()[[[][[]()()][]]]][][][]([[[]()]()])][]]]))[]()]([[[(([])[()[][[(()[([][[[][[][]]][]])[][()()[([((([]([()(([][()]((([[()()]][(())]()[()])))))([])]()()))[()]))][])()]]]())[[]][][[(())]]][][]]])[[]]][]()]([[([()][])[]]][[[][]]()(()[][][()][[]])[[()]]()()[]]())])[])]()])[](((([])))()(([]))())]]]([[]])]()[]]][]()][]]](([[]()][])[[]][]()[[]][]()[[][[([[[]]()][[]]([]))[]((()(([]()[](())[[]()[[]()]]([][([[]][]([()]))][()]())[][()[()[[()]]][]])([](()[])))[]([][[[]([[]][[((()))[]]][[]])](([((()))[()]]))][(()(())([][]))]))())()[[][][()[]()][()([])[]]([](([][[[[(())]]]]([])[](()[](()([[([([][])])][[]][][[]][((([][[][(([[[][(())[]()]]])())]]((()[()()[()(())]()[]])))[[]]))]([])([((()))])]))(())(())()([])[][][()(([[()()]]([]))())([()])][]([[](([]((()))))][[[[((()))]](()[][][[]])()(())()()([])()][]]))[])(([](([[(()())][]][]()))))[]))][]()(())]()]][[]][[]][])][[][][[(([(())([])[([[([])[]][]](()[[([()[()(()())]])][](([]))]([](([][])()[(())[](())])))())[[([])]()([])]]([])((([[][[]]()([][[([([[[([[]]()([[((([(()(((())[[]]))[])][[][]])))]][]([][])([][]))())]]])((()()([][[([][[]])()([[()([()]())]])]]()))[([])(([[[[[[]]]()]][(())]]))])][[]])([[]])]]()[[[]]])[()[[[(([](())())[][()][])()]](()((()[][])())[([[()]])][]((([]()([()]))())))[([](([()[]()()][])))][()]([(()([])[][]([[([]()(([][[()()]])([[[[(((()[][[](([]()[])()())]))[(([])())][])][][]]()]([[[[[][[][[[[]()][[[][[]][()](([()()[]])())[()]()(([()]()[[][](([[]][])()()([([[[((()))]]])]((())()[([[()][(())[(([()])[])()]()[][([])[]([]())]][]][()]([][][[([][](())([])())[[]()[()[](()[[[()([([][[([])][(([[[](()[])()]]))((([([])()[][]]()[[]]))(()))()][][]])](())((())))(()[[[]()](([][])(())[[]]()()[])][[]])][((()((()[[(())()]][()()])([]()())(()()([()()[]]))[()([]()(())[[]])])()))]]](()))]([][])]([((()[]()()))])[()()][[[[([]())]]][[()]()]][]]])([(()[])[]]))]([][[[]][]]()))())[[[]()[]]][([])()[([])[]]])])([[()()[(([](()[()[]([()[]])]()())([[()]]((([])())[(())[()]]((((()[([[][]]())]()()[[(())]])[()[[[]](()())][()]()])))[[]])))[])[]]((()(([][[]()]))[[[]]]))[]][][([[(()[[]][]())]([])])[][[]()[[()()(())][]]][[]][[()](([][](()(()()([[[(()())[]][][]()]])))([]())))(())]]]([][]))[])]]]]]]]]]((()[])([][[][()]]))(((([[]([])][][]())))))][[()]]())[])()[](()))[]()]][[]([()[](())[]])]()))][])][]]])))([][])][])[])[][[()[]][([([[]])()(([()((()())()[])()([()])][]([()])))()]())[][[()[[(()(([](([])))[](()(((()())[])))[][[]])[]())]]([]())][]][][([()])()(([])()[][][])(())[]]]]][]]])()[]]]([[()]])()][][()]]([]()([]))())))]]])()[][][[]]]))]]]]]()][][])))([[([()[[()[]]()()]()])()[]]]())[[[]][]]])[()(([][](([[]][[]]))[])[][([])])])])()[])]])[][]([])([()][][])]()]()[]([]()[(((([]))[]([])[[[]]]))]([()][()()([([()])([])])])[[(()[()()][()[][][[[]][([])][()()[]([])(()())]][()[[]](([])(()((()()))()([][][[]])))]]()[(([][[][]]([(()[])()[[]]](()(([()()][[([([[][()]([](([](()([[()()]]))))[]())()[]])])[][[][][]]]]))))(([[]])))[]())][][])]]()[[[[]]][]()[(([][[[][[[]]((()([[[[()]][]][(()(()(([([]())()[()[][]]([])][[][]])[[[[(())(()((()())()))(([]()))]]((([[][()([(())])()][]])[()([])][[[[[([]())[(([[]]([]()())))]]]]([][][()])[([()([[]])])]()()]([([(()((()))[][[()]])]()(([[](())[[]]])(([[()((([])(()[([])(())[]((([[([[][[[][[[]]][]]]()[][]([()([](())())](()[][])[]())])()](())]()())()))[][]()](([()][(([])()([()])())[(([])[])((([]([[]((())([][(())][(((([])[])))[][[[[]]()[[][()][]](()[][([[](())([()()(())])[[[]]]()])((())[[[][([])]][[([]()()[][])]][()]][](()[[[]]][()[(([()]()))()][]()]()[()]))()[][((([]))[()][[[][]]()])]][])]()()][[]]])[][])[]()[]][][()[]([(()[[()[[]]]])])](())[[[[([([][(([]()[]()(()[[]]))()())])][[]([()[()([][]())]]([[[()([[()]])()[]()(()[])([[([]())[]([]([[[]][[((([[([]())]()])))[()[[(()[]())]][]][[[[]]]]]][][[]]]()()([])()[]))]([][([])([[]][()()])])])]]()[[(()[][[[[]()[([((([[][]]())))(())((([(()()(()[[[()][]]][[([])][[[]()]]]))]()()[]()())))])]]]])()([])]()]][]))[]])][]]][]((())[](())()([](([([])]))())[[]])](([[][[[]][()]]]))(()((()[(([()[[[]][]([[[()[]]]()[][[]((([]())()()[([(()[(()[][[][([[(()[[]]()[[]([[][()][](([()()](()))[[[([])(([[]])(()[((([[[]](([()]))]()[])))[]()](([]())([])))(()))]][()[]][][]])()[][[]()]()](())[()[][]]()([]))[()[]([([]())])]])[()]][]()][])()]])()()])()[(((([])))[[][][()[]()][()()][]][])]])](()))()[])[]([[()[]](([]))])][][]])[]][]]))][[]]()()[])())))([]()[][])(()(()()[[[()()[](((()))[[][]])][][([])]]][[[]((()))[([()]()())]]])())())))]]))[()])[()])())()[[]((()))[([()()]()[[[[()([[]()]()()[[(((())))[[][([()])]]([([])])]()])]()([()()](((([])))))[()]()[]]]([[()[[([(()((())(([[()[[[()]]](([]())()(())(((()()))()([][][]))[([])])](()[](())[()][()])]))))[]([][])([[[](())][]])[](((([([([]())])()])()()[(())[[[([()[()]]([])()(())()()[[]])](()[()][]([][[]]))]]])[[()()]]()([])))])(()([[[][()]][][()([][((()))()[][]()])[]]([][][])])())]()()[][()[]]][()([()()][[]])]]]((())))])()()]][][][]]][]())))()())][][()[][[]]][])[]])())][]()])()()[]([])([[][][()[]](()()(())())()])([])()([]))())][]][(())[]])))]]][]()()[[]]))()[]()[([])]()]]))())()([[([]((()[]))(())[][](([([[[[[](()(()))]()[(()()([]()))]][[[][][]][()[][(()(()))[[]]([(())[]](()[]))](()()(()()[()(()[()(()[])[]][](([]([](()())()[[(()()[](((()([]))()[[[[(()()([]()[[[[]]()]](())(())))[(()((()())))[]()][[()((()())[][[]][])]][[([[()][[][[][[][(([][[]]))[]]]]]][()](()))][()()]]]][([])([((()((([((())()[])][[[]][[(())[](()[()()([[([])][[([]())[[(([][(())[][]()([])][[()]])()()(()))[]]]]][]()])]()[()])[[][([()()()])][[]][[]()]][][[()()][[([]([])())]]]()]]])[]()(([[]])))))[[([([()])])]])[([[()(((()[])[()[]])[()[([])]])()[][]][[]]][[[]]()]()([(())]([[][[[[]([()])()]((()))]]])()()))[]][]][[[()]][]](((()([])(()))[])([][(()[[[][[]]]])][][()]))()()[]()([()()])[()(()((()())()[[[[()([[]])]]()[](()[(()[][]([[[]]])((([([][[[][[()()][][]]][[](())[[((([()()()]))[()])]()]]][])][](())([]()[])([([()[]][[]]()[](()(((()[()(([([])[]])(())[[](()[])()()[]()(([][][][]))[]([[]]())[]()])][[]]))))[([([][(([([[]()(([]())[((([]))([(())]))[[](([])[(())[()]([])](([[([()[()](())]((())[][(([[]]))])[()()((([])[]()([])[]())[[][]]())[]([[((())(()))]](([][][()()([])])))[]][])[]][]])))]()])[]])])())])[]][])[[]]])[]][()][[([][[]()()])()]])[()[]()()(([()]([][[[[[(([()()]))][][()]]]][[]]([[(())[[(())([]([])[](([[(())]([()[[]()(((()()[()]([()()[][]])[([][[[[]][]]])][][()])))][]])[][][()((()))][]()[([]([()([[]()[[]()()()]](())(()))])[]([]()()[][[][[()]]((((()([[][(([]())()[()[(())[[]()]]()][])]([[[]][(()[])()()](()([])[])([])])])(([(())]([[]()]()(((((())[]((()))()))[[][(())()]()[][[[]([])][]]()([])]))))[][(())])))))(()[]((())[[[([]()[]())[()([(((())([]([[[[()[[[]()[[]()[]]]]]][][][()[(()([([[()][[[]]((()[][[([[]])]]([]([(()[]()[()()]()([[()()[[]]]])()[][])][])[])([([[]](()))[[[]]][()[]]([](((([[]()(([[]])([([])[[()][[([][[[[]]][([[][()([([])[]()][])[[][([()])[[()(([[]])[[()][[()]]])]]()]][[[((([])))()[]]][]](([]))[]()][][()]()()])[]([()(())])][[[]]](([][(((()[]((([](())))(([])))([()([[]]())]))[][()][]))()])([()[][()([])]][]())())]())]](())]]))]))()))[])][[]])()))]][]([([([[]()])])]))[]](([])))[[][(([]([][[()[]]]([()(())(([[]([]())()()]))([()[()()]]())][])))[(())](()[[][]()([])[]]))[()[([]([()()])[[][](([[][][()[]]]))[]])[[([()()([])[[[([()()[[()]]])]()][[()([([][])()[[()(())((([(()()())]()[]()))(([([([]([[]([]())]))[()]][][()[[[]]][][]])]([([])()]))[[](([()])(()([[][]])[])[[]])[[[](()[[]])[([[](([]))[]])]]]](([[]()([[]((()()())[(()[()([]())[(())[()]]])](()))]()[])(()[()][((()()))]([[[][[]()()[]]]]))][([[]])[()[[]()()]]]())([[]([])[]])[[]][])()([])()([()[[][[]]([][[[[(()[]()[]())([])][[[[(([[[[[[[]]]([])[()]][()[()[()](()([][[[()[()[[()]]()[[([()[(()())[[([((())()()[])][()()][])]]]()[][][[()([])]]([](()[[[[([()])]][()][]]][[[()](())[][]([])]()[]()([])]))])([](([(())])))()()]()()][][][([]((())[]([[[[()]](())]()]))()[[[][(([]))]]])][]]]()]])()()([])[[([()[]][][[[()]]]())]])[]]][[[[[()]()][[]]](()[](((()()()[])[]())))]]([])]((())()([((()))][[[]][()[[]][]][[[([][])[([(()(()(())))((()()([]([](((()()()))))())([([])][]([](([[]])[[]])[[]])())()()([()])))])[]([])[]]]]][[([[](())([[](([[[]]])())])])]()()]()[()]]()))(([](([[[()]()[()][]]][])[[]][[][([])([](()))]][[][(()[[[[]]]])()[]][([][(()(()(())[])(([()(()[][])()])))])]])))]])[])[](())](([]))][[()()]][[][(((()[]))())]][[()][][[(([])[(([[(([]))][]][[[([][])]]])()())])]([(())])]][(()())]]()][]()]]])]][][])()[()](())[[](())()[]])()())]([()(())[[[]]()]]([])[][])()[][]()[]]]())[]]]]()]())][()(([][][]()))]((([][]))[[]])(()[()][([[]][(((())[()])[][]()[[][(()[[][]()[()(())]])]])[]][[()()[]][]])[][[[([]())][()()][([])[[[[((([()((([([[[]][([[[]]](())[]())][]][[[[[([()])()]]]][]]([]))([][()()()([[]])])])[[()][]()](())((()))[]([])[[][()][[([])]]]))([])[[][([[[]]][][[()]][]()()([[[]]]))][]]]())[[(()[[]])]]))[[()]]()]]]][]()[][]]][][()][][]]])()[[()[]]][]][()([]())]]][[()()]][](()(([[][[[(([(([[[([])]]])()())]())())[([(()()([(())])()([])[[]])]([()]))][]][]]((())([([][][])([([(([][[][][[[]]]]([][([((([((([])(([]([](([]())((([[[()]](()())()]()([[[([()()[]])]([[]])]])[()[(())][(())()[[()[[][]]()][()][()]][[[]](((()())[([(([[]([()()])[(((()[])([[][]])([()(())(([][(((()[](())[])(()[[]]((([][()[]([(()[()([])[]])]())][[]]([]))))[(())[[[[]]()]]]([]))()([[][][]]))([[]]())([[[[(()())([][])[][]]()]]()[()([()]()())()]([[[([])]]])])(()[][][(())()][])[])[]()([[()[[]][]([[[][[()[[][]]]()]((())[])][[()][][]]][([])[]((([]((([])[[][[()()]]])()()))))[[()]()]()]([])[()[]]())([()])([([()()()[]()([])[[]()[]()[[]]]][])([])()])()[[]][]]()[]][[]][])[()(([[[]]])([(()()[[[]()(([])())(((())))][](([])()[([])[]])(([]))])()(()[(())[][(([[[[[][][]][()]]([[]]()[([](()[[]])())[([])][]])[]()]]())[])[]()[[][[]][[][]([([[]])])(()[])]]]((()[][]())()())]([[][([])][[]()]][(())()[]([()[][(()(()[]))]()]()[])()()]([])[]((())))()([]))[]()]))][()]][])[[]])([[()[()]((([]))([[()]]([([()]([])([])()([()])(([[]])[(()()[]())]))]())[][[[]][][()](([][(()(([[()]()])))])[]())]())[([()[(([([]()([])()(()([]))[])][]([]())(())[[(([][[()][]([[]([])])[()(())([]([()][[]([]([()](([])((()))()[])))][([[]])[()[[(())]]][]](([((()[][()][][]))]()([[]()[()]]()(()())[]()))([])()()[([])][][[]]))[()[](())]([][][((([][[(())]][])))[]]))]()][])())]])())[]]]([()]))][[]][])]]()[[[[[](()[]((()[])([][])()()[[[([]())][()([[[()]()][]][]())[][[[]][][][][[[()]][]]]]]]))[]()([])][[]((([]))((())()[()])(()[[][[[]]][]][[[]]()]))()]][[][][]([[]()])]([])([]()()()[[][]([]()([])([[]][[()()]]())[])])]()()[]])([([])(()[(((()[]())((()))[]()[]))[([])][]])]()(()(()())[]))[[([])[[]]]]]))[[]][])(([]([[](((([])()))())])([][][][([[]])[[]][[]](()([[]](()()(()))([][()(()(([[([])()[][]]]()([[()[[()]]([()[()[[]]]()][][])](()((()))[])(()([](()[[[[([]([[()][[]]()[()()[]][[][]][][((()[][([()(()[])[][[()]()]])])[])[()]()((([])([]))()())]])[[]]()(()))[][(())]][]()]]](([][[]]([])[])[][[([][[[]([[[[[([[][[()]]])]()]]]])[]][]][]()())(())[([[]()[[]](())([()][])[][[(()([]))]]][[][]])[[]]()()[[][]][([]())][()()]()]([(())])([])]][]))))]))([([[[]]([])[[][()[]]](()[[][][[()()][](()[[][()][](()([]([[][()[]][]]))()[()])()[[]([][][[()[]([])()(([])[[]]()[[]][])]]((([[[[]][[][]([])]](())][]([])[([][()](()[[]][])())][]))))]])()[]][()]()][[[((()())()[][[[][](())[()][]]]([]))]][]])[]([[]])]([]())()()[][[]()[][()[]]])]())))([]()[()([([([])][[][[()[[]]]([][][([[[[]]]][[]][][[]()()][[()]])([](()))[][([])]])]][])]([[()]()][[[(([][]()(()))()[])[[([][])]]]]])())][()[[[[]]]]])][]())))]))(([])([][]))[]()([([][(([[]])[([()])])[()]()([[]()])(()(()[()[]]))()]([]([])[()[][()]]()))[[]()(([[([()])[[][()]()[[()](())]][[[]]]]]()[])[[]]([])([[[]][]][([[([()])]]()[[][]()([[][]][()[([]()[()])(())[[]]]([])]([])[([()[[]][]]([[(((([([[][]])])()([]()())[(((([])([()[]([][[()[(()(()))[]]()()]]()())()]()()))(())[]))[[][((([])[])())]]([])]))[](()([]))[[[([(([([()][][])([])]))()[()](([[([()[]][])()((()((()()()))[]()()))[[]([][[(()[()]([])[[[([][])]](()())[()[]([])([(())])[]]([])()])[(([[[[](([]))]()]])())](()()[[()]])()][[][([][])]]][([])[()]()]([[](())([])][[]])())]()[]][]](((([[]][(([()()()[]][[[[][][[][[]][]]([([[][[(())()([])]([])]])])(())]()()]()[][][]]()(([[]](()()[((()()[][]()))()[[]([((()()))][[]])][([]((())())(([](([([])()][][])))))[(()())][][]][]]([[]][[[]][]]))[][()[()()][[[]]]()](()([([[]][](()((()))[[]]()([()])([][()[(()()(([][()(([()([()[((([])[()])()[()([])])]()])[([]())]]))()[()]])()(([[()(([]))]()(()[])()])([()[][]]))[])())(()())([]())(())[()()]()]][[[]](([(()[[][]([((((((())()[[[]()(())]][[][[]([])[][[]()]]([][][[[[]()]()]])()][][[([][(()[[]])()])]])[][[]([]()(((([]))))()[[]])])[])))()][[[()]]])](()[]))[([[]][])](((((())))))][(([[((()[()[]])[][])[]((()))]()((())())]())[[]])[()[()]([])()()]][([][])[[[()[()](()[][])][()](()[[](((())[[()[[[[](())]]]]][][][[]][[[()][](()[][[]([[()]])])]](((())[[]()(())]))))[]])[[(())[]][[][()[((()(([[]][])([])))()()(([[()()[((())[]([][[]()[[[()([(())([(((())[])((()([])()())[(())()[]])[([(())])])][()])[[(([(()[[]])[([([])[]][]()[[()]((()((()([[[]][]])()[[]()][]))))([(()[][][])])][[][()[[]()[]]]])(([]))]])()())[([(([])(([((())[[[]]][](())[[][][()[]]]())])))])]]][](())[[([][])[[([()[([[((())()[[()]]([(())]))][]()])](())[[]()]])]]]((((()[[](((()([[]])(()))))][]())()[()][[([([])])([(([]()))])([])]([()[]])](()[([[[]((([][(()())]()[[()]()])[(([[]()()(([])[]([]([(()[]([(()([][]())[][[[]([](([()()[[][()]][()([[][]()])[]][([[]])[][[]]]()[[]]][[]]((())([])))[]))][]][()](()))[][][]][])[])])())(([][()][[]][[(()((([]([()(())(([][](([]))[])(()))[[()[[]([])]]]][][[[()(())([])[[]]()]]()][]()[[][(([])[]([])([([[]([]()[()](([[]][[]()()])[])([(())]()([()(())[](((()))[]([[(((())())()(()[((())())()[]()][[()()(()[[]][])()[]][]])(([][[]])))]])()()(()))[[[([]()([()[]()()[]])[[[[]]][](())()][][][()[()][]]()[[([])]])]()(())]]([])[[([])](([][[()[(())[](([()])((())[]))[()()]]]]([(())()()][])([()[](()())[[](()()[(()[[()]])[]()()]([]))([])]]()[[]()][()]())([[]()]))())[][(())[((([()()()[]](()()))))][]]((([[()]])())[[[]]][])]]))[[]][])])]))]((())([])()())][]))([[][([()[[][()(()(()))()]]])]]([()()]))[])[]([[[][][[[[[()][[]](()[]())[][[([])]([(())[]])()]([(())][()[([][[()()[[]]]])[[]][()][]]](()()([[[]]][])[])[[[]]])][]]()()(([(((()))[()[]][[([])]])()()[()[](()[[]()[((([[(()[])][]])[])([][()]()[])[][])[[]]][][]]((()([]))[([])([()[(())[]()()]])])([[][][[(([()][[[](()[()]()[]()())]][]))[[]]()]][()][][][]]))[][[]([])[]](((([[[[[[][][(()())([]())[]][]]()][[]()][(((([([][[()](())[([[]])()]([])])][[()]])[]())[[([]())[]]]([](()))))[]]]]]()[][[][][()](())[]]))))]])[()])()((()[]([]([]))((()[[([[([])][[][[[[][]](()[[]()][[][]([()[]])()])]()(((([][]()[[[(([[[]([])][((())[()])[([()()([[]()]()()([[[()][][]]][([])()][]))]()[])]][]]))[(())()]]][]][])[()(()())(([()][])([]))][([]([[[([[[][]([])][()]([[]])])]]]))][]))([[[[()]]]([]((((()[]))))[[][]]([([])(([([[](()()(([[]]()()())[[][]()[[[]()()()()](())[]()[][](()())]](()))([])[[]]())[]([[()]])][[[]]([]())()()[[]][[()[[]][]()]]])]))])[()(())[](())][])()]))[()]]()][]()()()[]])[()()][]]([()(()([][()])[]()[(([[([])][[[]([](()))]](())]([[[[[][]]]()][][([([])])]()])(()()))())[]][()[[[()][]][[]]]])[()[]]])])[[()([[][[]](()())(())])]])[[]][[]]))[][[]][[]]]]][]([])[]()]([][[()[[[[]()][()[]()][]()]()([()()])]]])(()())()[[]][()()])))[][]]][])))[]])([[][[][[]()()]][][]()[((([[[([[[][[[[[[]][()]][()()([]())[[()[([])([])]][]()]]][]]()(())]]])([][[][][](([])())])[[[(())([()])]([([(()[]())[][]()()])()]()[()([][[((()())())]])](()))][]]][]]])((()([]([()])[([])]))))[[(()[])][[()([([])()])[]()][[][[]]]()][[[]]][][(((([[()]][([])()][[][[](())]([[()]]()[])()[]][]()[])([]())(([()[()][([([])][][])]][[]]([][])[()[(([]))]()()][]([]))()(([])(()[])([])))(([]))[[()]()[]]))([[]][]))[]]])]])[[()]]())]))[([(((())[(())]))([[][]])[()]])[]]([])]][[[]]])])())()[])([[]])([()])())]]([][])[])()]()[()]()()]]][[[]][[]((()))]][[](()()())]))][[]]()]([])[[()][]]])()[[()]])())]]()(([[([([][]([(()([][[]([()([[[]]()[]()()[]])][[([])][[[]()]]([]())()(()[()])[]](())[][(([[][()([])]][][]()))])])([([][[([][])]][])]))]))][()[]](()()(([]())([][]((([()]([]))[]))()((([[]])()[[][[[]]]()()[]]())[[]][[[[][]()]]]()()[])()))))][[[][()]][[]][]()()][[()[([[(([[][(((()[]([()[([][([([][])[]])]()(()))[()()[]]()]()((([])[[]([[]()[[]][]]())]([()[[]]][])())[][]()[[](([]))[][[()]()][(())[][()]][([()()()][])[]][]])[()((([[([](()[[]()][()]()[]))]])))]]))()))]]))([()])[[()][([])]]]])[()][]][]]]([()]([()]))]([]))()[[]()]()[(([()[()(()[])][][()]][(([[]])()()[])[[]]]()(())))(([]())[])])][]]()()]]])[[](([[]()]()()()[((()[(())])(()[([(()((())))[[[([][]())]][]]])])[][()][][[((())())[]]]((()())[(())[]])[()(())()()])([])()[]((([])))((()()))])()()()[[([]())([])]([()])]([[][]]([(())(())[[[]]]]()[[()[()[]]][][]()]()[[]])[]()[])[])])[]]([(([((()[([(())[][]([][])(())]()()())[[(()[]([(())([[]])])()[[](([[([]()()())]()]))[[(())]]]())]][[]]]))]()))([()])][]())))[[[]]([[][]]([[[[][]][([[]](([][]()())[[[([]())]]()[[]()()]]))[]]]]()[([])[](([][()[[]]()([[][][[(([(()())]))(((()[()[][][][([])]]([]()))))]](([]))])]()()(())())[()([])()])()][]))][][()[[[[]][[()(([]))]]]][][()]]()[])([][]()[()[]]([])()[[]()]([()([()(([]))])])[])([((([[]][(()[])[]])[([[[[[]()()]]()]])[]()]))][()](())[()])][][])[()[]]))([])))[](()))()]()[])[]))(()())[([[([()])(())[()[[[()(()[][[()][]]([])([]()))]()]]]](()([]()(()[][]))())([])()()][]()[])][][()]()([[]]))[][]))])]]])][[][][]()][(([[[[[[([(((())((()[()()]))))])[[]]()([[()][]][()])]]]]]()[]])[[[]]]()()((()()))(()()[][()()()]((()))()[])()())]()]()[[]][[[[](()[()[()][[[[()(([([])[([((()(([])))[(())()])][()[][[()](()([]((((([])[[[]]])()()))[()][][]()))())]()][[]])][]][]))](([[()]][][()]([][[([[]])]()[][][]])))()[[[(((()[()()][]()(())[[[[[[(()[])[]]][()()([[[[()]()([][])]()]])[]([]([]([[[(([])[])[]]](()([]([()]()[]())())[])[]()[[]]()]()))[][((((([])([]([()[((([([[[][[([][])][]]()()]]())][()[]][()[]])([[[([])]]()[([][([][[]()][][()][[()(())()[][()]]()])])][(()(()))]]))[[]][])]([[[(())[[()()]()()[(()[[]()])[[]]]][]][[]]]()(()(()))([][()])[[](([])[][((([[]])[[]]))[]])]])[[()[[]](())[[[][][()](())]]][]]()][[][][]]))))()([[](([]))]()([[([(())[][[]()]]()[()[()[]]])]]()))([()[[]][]])[]())(()))]())][[()]]]]]][()]([[()[]][[][()][[[[]]()][]]][[[()()([()][])[[()]]]]([])()()()()]]))[()[]][(([(())()])[])]()[()[()]][])[]())[[[[([()[[(())(()()[]()[()][])]][][([])]][()][])[][([])[[]]][()[(()[[[]]([(([[][]](()[])))])()()])[[[()]]()[()[]]](()())[]]]]]()]()][()[]()()][]]]][]]()[][([[]][[][]])][][]([[][[([()])[]([[(()([][((([[]()][])[]))[]])())]]()((()()())([][(()(()))([[][][()]])([]([])())])))[](()[])[]]]])(())]([[]][]())]([[[()[[]([((()[[(([]()[[()][[]]])(([](([(((())))]())[])))(()))()[[]]]])([([[]()][][((((([]([][()[]()[]]([[]()([]([[]][[[[]]]][[[](([]()))[]([][])([])][][]]()())([()[[][[[]()][[[]]()](()())(([(())]))][]][]][]))][]()))))())))][[()][]])]))])](([[][[](())]])([][](()())))]([])][][((([][()[()()][()()([(([]()(())))[]([[(()[][])]])]([[][([[(([][([[][(()())[[[[]][]]()[][]]]])[]()(())]))[()][[()[[()(([([[()][][[([()])]()]()(()[[[[(())][]][]]()])[[]([]())](()())][]()[()[[[]][](([[]])()[()])[]()][]][[]()[([]([[[]][()]]))]]())][])())()()]]()]]]()[]])()()]][([([])][])[[()]]])[])[][][([(())()()[]()[][]])((())([][])[[[[][()]]]])]([]([[[]()]]))()]()])))]][([()()])()[([])]()][]([()])(([([])])))][[][]])]]][])[()(())]([])([])(([[]])((([]))))()()[]([(([[]()([])][()][]))]([]([]))[][[][]]))])[]([][()][[]([](((())))[])][])(()()([])((())([[[()]][[]]])()[]))([])()])]))]]([])()([[]])))]]))(()())](([]()[])()[]()()))][()](([([]((([(()[[]([[]])])[[][][()[(([[]((((()))[[]]))][]))]]]()][[]([(((([](()())[[()()()]()()])((([]([()(([][()()[](())])([[][[([]([]()[])(()[]()))]](([]))])([])[][[[]]])([((([][])))[]])([][([([([])([([][])])[[]]])[]]())(()[[[[]]][]]())][])](([[[[[[][[((([][([()])](()()))[()([])]))][()([])]][[[()()[()]]()[]()]][]]([])]]]][][]()())[[[][]((([])[[]]))][][](())[]]))[(())])(()))))[]))])]()[]))(([])[()()])(([])())))][])((([[[([([])][]([]([]())))]()]()[][(([[]()]))]][[[]]()](()[][()()()[()[]]]))([][[][]])([][[][][()[][[]]]])[][()][])))))[[][][[][][[][]]]]()[]]][](()(([]()))())][](([])[[]](())[])[])([][[[()]]][][]([])()))[])[]))(()())))())())(()[()([[(([(([()[][]]))()(((())([])[[([[[]()]]()([[[]]]))]][][])()[[()[()[()[((()))()()(()(())(()[[]]))]]()(()([]()([])[])()())(([]))[]][]][]][][])[([()]())([()])()[([[]])]]]()))][]])][()])[[]]]([]))[]))(((()[()](())[])(([[[[][]()[[]]()]]]))[]))])(([[](((()[()[](([[((())(([])[]())())]](()[][([[()]](()(())))])()([])[[]])())[[[[]]()(())[(())[]]]]()()(()([(([([()](())[]([]))])()[]()()[][[[()[[()][]]]([])[()[()][]][][]][([([()[((()))([[[[[]][]]()()()[([]()[(([[]])(()))[](()[([[[(()[])[]()()()[([])[[]]([()])()]]()()][()]][[()(([]((())((())[][()()][(([()][])[])[]]()[()]())))())][()()]()])])[]])]](([](())))(()[(())()()](([[]]))())])[][]([][][]([][][[][(()[])][()(()(()[]))[(((()([()][(()[]())][([([])[]])][()()])())[[]()][()][[()]()])())()][][][[]()[(([]())[()[]()])()]][]()()]])(()[[([][[]]()[()])[[]]([(())[[(()(()))]]])[][]][((()[[[[()]()[[(()[])]([[]])]()[]][][[]()[[]][()[(())()]]()()]()][[][()][][]()]][[][[(())[]]]([])])[()])[[]]][[[]()]][[]]()][])()(()[[(()())(([()])()(()())())([()])[]()([()])([][])[()]()[()](())][((())[])]])[])()]([([()()([[[()([[]])]]](([[]][])(([])))([[][]][]([([[]]([[()]]))()][[]][])))[][[[]([])]]([[(())[]]][([[][]](([[[]][]][[[([])][[]]][][]][])[]))[()]()])()[][]])[](([])()([]()(((()()))([]))))])][])[][][[][()]]][])][]([()])[]()])])[[]])](()()()[()][][][]()))))])())][])([([][[[]()]][])()[][([])][((())[[()][([][()])]])[([[[[](((([[[([([()][])]([]([()[()]]))([[([[][](([]((()[[]])())[(([]))][((()([[][]]())))]))[[()[]][]][]()][[][()[()([[]])(([()]))[()(([]))]]]([()][()])])[[()]((())([]))]]])()(())(()))]][]])[[[[()]]]()[[]]([[()()()]()](([])))]()))()(()[()][]))()]][()]()([])([][])([([])[]]()[()])])]]])))()([])])(()([](([][()][])[[][]](()()))()[()([])[]]))[[]][]])]()[[[()]]])()[](((((()))))[]))()[[()[]()(((([([]([][]()()()[]))(()())[]]))([][()()()](()[][([[[]()](([][](()[()]())[]()))])]([][()()]))())([([[]([])()])[]]))[[[][](()[[()]()[][]]()([[[()]]([])])()[[()]]()(())())()]])]]()]])))]()])[[[[()()]()][[[()[]][]]]()[]]([](([[]])()([[]]))()()[])][(((([][][])())([][])))([([[](([[]][][()])([()()](())[]()))]())[[((()[]()([][]))([]))[[[([][])][]][]][([])[[[]()(()[]([])((((())()[([])[]((()))]))[])[((([(([([][()[]])([])])(([]))[[(([])(())[()]())()[][(())]][]]())][]))[]())])((()))]]]]([([(([][]))[[[([])]]]()])])]][((([])[([])()()([()(())][])[(()([]))]]()[()[()]()]))])]]]][]([][((([[[([()])]()[[([][])[]]]([](())([()[[]]])()[[]])]()]()[][[]][]())([()()(())][]())([])()))()[]((()[]))()()])][[()(()[])][][[]([])]])[])(([()]))))([()][][()((()((()[[[][[]]]([][])(())[()[]([[]([()[]]()[()()])[]]()[])][]()])[])()()()[(([]())[][])]()))[[()][([]()([(()())[([]()[]([[([])[]([[](((([])())()[]))[([][()])][]][[](()())()])([()(())]([])[](([()()]())())[(()([])[][](([[]()](()[]()([([()[[(([()()[]([]([])(())[](()(()[([]()([([[][([])[](()()((()())(())))[]]])(([[][]])())])[](()))]))[[()]])][]))]]]()[[][]([])])][])))[]()[[([])[[[()][]((()()[()([[[]()]](()([][[[]()]])))()]))]]([][]([][](((())))(())()[([[]])]))]()])(([([])[([()([]()([]))])[]]([])(((()()[(([[[]][]][]([]())[()][()()[]()([([(()(())[[]])])](([[[]((()))]])))])([]))](([])(()(())))))([(([][[]([]())][[()]][])())]([([])()((()([][([])](()))))])[]))()](())))[()]())][])[[([][(())][(()[]([[()[]()[]]][([][(()[])(())])]()(([])[(([]([][()])[])[()[[[]][()]()()]]()[])()][])(())))][](())()(())(())([]()[])[[][]()[]()[]])([[]()()][][])][]][]()[][]([])]([][])]))[]]])[])([]())]]](()))()])][()[]]([])()([()])[[()]]][]]]))]))(())[()]]([[]()[(([(([[[][][[]()([]([[][[()][[]()[]]]()(([[]][()]([[[([])[[[][([([])()()])[]([[]][[]][()])]]][][]()][()([[][(())]()][])[[([])]([]()[][()](([[]()[]](()[]([[()()[]]][]))))[([([]([](()[()])))()]([()[]([()])((((([[]()[[]()]](()()))[([])])[])(()())[]([][[[]]][])))(([](([[[]]])[][]()))[([][])]())([()()[]])](([])[[[()]]()][]))(([(([][()]((([]))[]([]()[])))()[])[()[]()[[]]()()]][(()[(())()()])]())))]([(())[()]])[[]][]([(([[[[]]][[[][([[][[](([[]]))]]()())]]][]]))()()]())())([][]((()))([]))]](()[])][[(([([][])])()[()][][](()))]][]][])[((([]())))]()))]))]][]])([]))[[[[[()[()((())(())())[[(()[]([[()]])[()]())[()[(())()]([][])()]()[](())()[[()[]]]][]][([[[[[([()([])])]]]([()]([[]])()[])[[]]]])[[][]][([()(())][([[]]())][[]])[][[(())]]([[()([[(())]])][(((()[[[][]([])]()[[[][][]]]])))]])([[[]][()[]]][[]()()([][][]()[]((([[[([(([[][]([][][[]][([[]][])()])][](()[][((()))()[][]()])[])[()((()))]())[(()[][([])])][[([[[]][[()[()]]]][[()][[[]()]]()[]])]][([[()[]()(([()([][])[]]))]]([[[][[][[[]]]][([[][([][[()[([()])([[]])]]])][]])][[]]()((()[()])(()([][[]()]))[[[]([()()])(([[[]([[][()([]())][[[]]]])(((([[][]([[]()])()[][](()()[[[((())()([]))]]()])])([[]][][](())(()())[[]]())))()([]())()[](([(([][]))[][]]()([])[][])))]])())[[][([[((()[])[](()[]([])))]([]([])()[][()][])])](()(()))[]]][]])[()()((([]([([(([(()[][]()([([][[]])()()([]())])())](())[]))])()()[][()](([((()()))][[()]][([][]()(([[]]))[(())])]))([][(([]))[([[([[]])](([[[(([[]]())[()[()]])[]][[][]]]])(()(((()))(()[][]()())[[]]))((())))][(())[]])[()][()[(()[])]]]])[()]]([(()())[()]](()[[[]][()][][]])))())))]]][])[()[]((())[]())][[][]][])(()[[()][(([])((()))((([[()()]]([])(([])))()[]()([[[[]]()]()()()(())]))())[[()](()[])(()[][()][])[]])][][((((([]))()))[]())][(())]])(([]))[(()[[]][][]((()()((([([](((())[[](((())[]([[[()[()]()()([[[()][][[[[([][][])[]][][]([[]])[][([])()]](([([[][]([][[]]([][([[[]](())[]][()((())[[]()])([][[]])[]])[()]()])()([])())])]))][[][]]]]()]([[]()[()(())]])[]())()()[[()[]][]](((())[])[])]()[()[]]]]()[[()[[][][[()[[]]][]][]()([])[[]()]]()]](([]))[(((()[()]))[()([()[()()[]]](()))])][()])()[])([[]]()(([]))[][[((()))]]((()[][])[[[]]][[[][]][]][([(())](([])[()])([()[][[[[]]([]([[(()[(()[]()[([])](()[][]))([])])]]())[])]]])())][[]]()(([])))[]()))][])))]))(([][()[]]))(()())(()[][]([]([])()()())[[][(()(()[([[]]([][()(()[[((([][]))[])((()[]))][[]][[][[([()](())())]](([]))][[]]])])())[(()())[[]]()()]]))][]()])[]))(())(([([][]())()()[[]]()])[((([(())()[[()][]]][]))[]())[((([[]()[]]))[]([])[()]([][]())[(())(()[()()])[]]([(()[[(()[][[()()[[[()]][[[]()]([[]])()]][]]][()]([[()][[(()[]()[][][][](()[]([[()]((()))[]])())[][])(([[([[][]]((([(([()[][]]))[]][[][]][()()])[])))][][]]([()[()]][(((([])[()]))[])([])([[[[]]()][][[[[(()[]()[()[[[()[[]][][[()[]()]](())[]]([[[]]])()(()[])(()[])][[[](([])[])]]]]())]](([]))]]])])))()[()[()]]]]]))(())()[]]()[(()([]()[]))[][[[[[]][[()][]]]]]]])]))[]()[]((()))()](([[]][[]]()[](()[][(([])([])[[]((([[[[]][][[][[()()]]]]()])(()[]([][()[([])()[]([[][()()]])()()][]])))([()()[][]][[()[][][()[][]]]]([[[(())((([([[()]])]))()[]()[][])]()[()][(([])[]())[[]()()(([[]])[]([]()))][[[]][]()[[()]]]][[][]()]]][([()()]((()[](())([]()))[]())[][()][[()]][]()())][(([]([]()[]()([])([([])()()])))[[]])][[][][]])[[]([][][[]])[[()][([(())[[][()]][][]][]())[([])()[](()(([])([[]]()([[([([])]())((()[(()[(([][]())())(())])])([])([]))([()])[()[[[]]([[(()()[][[]]()[])]])[()]][[[][[[]][[]]([()[()][([[(())]])[[[]]]]])]]]([()()()[[()([[[][][[]][]]])()[[]][()[([]()[]()[]())](()[][[]()])[][][(([[]()[([[]][])[()[]()]][][[()()((([][])[([([[((()))()]]([(())]((())[]())([])))[[]()]()[][(()[([((()([[]](([]())))))]())])()(([][[][()[][()][[]()[[][]]]][()]]))[((())()())]()[()][[(())[[]()[][(())][(([]()[[[([]([()])[][])([[]()][])((()))[]((([])))][][][]][([])]])[][()](([][][]())())[[[]]()]([][])[]()(([[()][]])))][][]]]]]][])])()(()))]]((()[]((()))[]())()()[[]()])][([()[][[]]])()][]([()])))[[]](())[]]]]]][])]((([]))[[]]((([])()[[()]])[(([[()()]])[](([([([])()([()()[()]])](([])[]))][((([()](())[[()[]((()()([]()(()))())[])][([[([](((())[][[()()][[()[()](()[[][][]])]()(())[[[[([()()][][((()[([[][[]][]]([]()([](())[][[]][[[]][]](([[][[](()[()()(([]()))()(())[](())[]()]([])[([]()([((()([[()][]([[][()]()([]())])]()()((([[]()][([])])))))([()([[[(())][[]][][[[]][[]]]]])]((()[[]((())((())))][][]()([]())))))[]][[]()][[(([([[()[][(()([](([]))[][][(((([])))[])]([[][]])()())((())([[[[]]]]))([[[[[[[()(((()))([(([[[]]])[])])[()()[(())]])]]()[]][]]]][[]]])[(()())]())[(())(([[]])[])()(()[][[]])]][]]()[](([()[[]()[[]][]]])[])])]))((())(([]([(()[[([])][]])][]))(())[([])([][[((()[](([[]]))[([])([])])()([(())]))()]][()])](())[[[()][]]])[]()([])[[]()([])[]])][][[]][[[]][([()])((()([[[]()]()]()()[][[()([[]()[]][((()))[[[((()[]))]]]((()[]((([()()[][][(([()(())(()[](()[([][])]()[]())()())]))()][[([])][[][()[]]]([[()[]]]())([[[[()][][((()))()[[][()((()))[([[]([[]]()(([][(()()[[[][]](((()([]))[[[][()]([]())][([])[()][[][[][]()[]]]][]([[]()])[()[][]([([][][([](([]()[([[[[[(())][([(([][()([])]))])]]()][]()][([])][][()]])([]()[][((())([[](())])[()(())])()[[]()[]]()])][][][(((([(([]()[]))])))(([]([()[([([])])[][]()]])()([]))[][[[]]()[[]]()][(())]))])))()])[([]()((([]())[()])))]()[()]([]()[()])])()]]))][[[[]][]]()[]]()[[[][][][]([()]()([][()[]]([[[()[][()[]][]]]])[(([][()()])()[])[()[(([]))]]((()))]((([()][(())][]()[[][][]])[][][[[][[[()]](()()())[]]]()]))[[]][()]()(())))][[([])]()[([][]([]()[][[]([[]()]()([([][()]())[[[]()[][]]][]][(())[()][()]]()))][()(()([[[][()]([()()](())[()[]()])()]][(((([[]])[][]([])([]([]()[[[][[]]]((()))])))(([[]][[]()()([][[()]]())]))[]))]([[][]([[[]()]])][])))][]()[(()([])[])[()]([[[[([(()[(())])])()]][[](([][[]])())]]]((()[[[(())]()[]]]()[[]]([]())[[(((()([[]][][[][[]]([]([([]([[(()[]())[[[][()](()())](())]]()[()]()[([[[[]()]]([[][]]([])((()([(()[[]])[]][][][]((()))()()))[]()([[[]()([((()[][[()]]))[[[[[[]()([((()))][([][]())()]((()[])))[]][]]]][][()()]][][](()([][[]][[([(()[])[]]([](()[])((())))[()])()]()()])[[]])()[[[([[[[[][]][()]][[()[]([[()()[]]((()))[]]((((([[[]][](())]))()(())))([]))()()[])()(()([][]))[([])]()((([([])()][[][]][][])((()[[]()][[]]))))[()[()][[][()([])()()][]([(()([](([][[([[()][[]](()[](()))])()[]]])()()))[[([])([(((()(()))[()])[])[()]])[[[()[()[()[[[[[]](()[])]][]]]]]]]]()[()(()()())[]()[([][][]([][()[](()([][](()[(())()([])])()))])[(([[[[]()][][](())[]()][]]([]())))])[][][[]]]]()[[]]()])])]()()()](([[]([[()[](([])[[][[][[[][[]]]]][]()([]()(())[()([[()]])[[[][()]][]()[()[()[]([(()())])()[]((()([][]())))]][[(((())()([])[([][]()((())[()(([]))]([()])()))()](()[[()][(()[])]()[()(()()[()[]](()[[]][()()[]])())][](())[[(())][()()()]]])()))([()])()[]]]]])()])]](())([(()()()[]())]()[]))[]])())]]]][[]])(()()[])[[]]]][[]()()()]()]([((()(())([([](()(()())[](()([([[()()][][[]]](([]))[()[][([])([[[]()]([[]])[]]())]]())[][]])()))()[])[()(())]])[()(())((())[()])[]][()[((([()])))([](((()[[]([][[]()[(([[[[]()][([(())()[]]())[][(())]]]()]()))]]())[()]()[][([[]][])[()[][([]([](())(()[]([([()]((([])))[]([]([[[][[][][]]][]([[[(())]([[]()])()][([])(([([])[((())[[]])[][()[(())[](()[[[()[][[()][[()]]()[[[]]][([]())([(()[()])[()]])[]]]]()[]](([])[([])[]]([][])()(((([([])()(())([])()[][()[]]()])()[[([])][[]][[[]][([])]](([])()(((())[[[[][](((([[]][])[](()[()(([[]]))][()]((()[[[]]]))))[([[()]()()[]]()(())[[]]())][[]]))([[()()[]]]((([][[[]]]()()(([]()())[[]])(([]([[]])[[()[]()]([[[]((([[][()[]][[]([[[][[([()(()())[][()][]]()(())([]()))[]]]()()]([])[]()()(())][(([][])()()[])])]])[[]()]))]](([](())([])[([()]([]))])))[[][]()][[[([[]][]())][[[[()](([])[])]([][][[]])]()(([()([[()([](()())[([][]([][](()))[[[]][]()][]([()])[][[][][()](()[[]]([[(([])[[]][[]][][[]][[]])]])[][[()[][[[()([])(([][]))(([]([])())[()][])][]]][]][(()(()()([[(())]][[[]][]])[[()[[]([[()]()])]][[][]]]))([])[]([]([])[([()[][]]([()][])([([[[]]()][()])]))]((([]))[][]([()[]][]))())][(([]()(([]))())[()]([[[][]][]])())()()][][]()()])][])])[][()[][(()[()])]][](()(())([(((())([][]))(([])()((([])[][])(()))[]()[])((()[]))()()())][([]())]())(()))]((()))])]))(([]))]([[[[]([([()[]])([][()([[(())[]]([])()[]])])[][]([][][[]()()])][][()][()])()([[][([][][])]](([])))]]([[()]](())([]([])([][])[]))](()()))]][]()[(()()()([][][]([])))]()](()(())(([[]()[[()[][()]]()[]]])([]))))())([])[()[]()][((([()])))()])[]))())()()]]])))][](((()()()[])()))[])[[()()]])[]))])][()([][[[()([]())][[[(())]]](([()]([([[]]()[[([])()]]()[()])])()[[[()()]][()[][]](()()())])())][]])]]([([][]())][([]([]()))]((())[[][[]](()()(()()))][[()][([[([([])[()]])([])[(([])[[](((())))])]]]()([])[][[][]][()][]((()([])[([])[([]((())))]([[]])])))](()[])[[][()][[[]][]]()([()])([([][])][][][[]([[()[]]([[[]]()])(([()]()))])()](([[][]([()[([(()(()[])[[()]])][]([[][()]])(()))][]()]([]))[[]][((()))]]))(()(()())(())[([][([[]][]((()(()[][][]())(([]()[])()[[[]]])()())[[]()]))])[][[]]])())]]([][]))())]()]()([]([[[()[([[()()]])([()()[]])]]]]))[][()]([])())(([[](([][[][([]()[[()][]][[()]](())[])]]))])[](([[[[]([])][[[]]]()(((()([]()))([])[()]()(())))()()]][][]))))][]])][[][][()]()][[]([[(()([[][[]]()([[]()([])[([])(([](([()(())([])]()[]([()][])[([[()(())((()[[()()[()([()](())([]))[][]]]([()()()]((())[][[][()]]))([([([][()[()[][()]][](()())[]])([()][((((([[[()]()][([()](()))[]([])]])()))()[]))])][]())[](([(())[()([])([]()()[[][()][[[()()[]]][[]]]])]]((([()]([]()((([(())(([()]()()))]()))())))[[]])[[((()[][[()]([][(([]))(())()[(()[])][]]([([([()()]())()])][]))]))[()[[()]]]]])[()]()))[]([[()[[()()][][[[[]]]][[][[[()()[[()()]]()]]]]()]]][][])])]))[][]]](()))][])))(()(([[]()][(())][([([()(((()([]))([[][[]]()][[[](([](()()()([](([])(()([][([[]])][]()[[()([][[()[[]]]][()[[]([()][[()]])[]((()()[[][([[][]][][][[[()()[[]][([]())[[[][]][()][]()(())]][[[]()((()[[()[[][[]()()[[]()][][][()][[(()([[(([[([()()]()(()[[]()((())(([][[]])([][(([()]()()(()[][]))[()]()()[])])())([])[])[][][]]()[][[[[()()][][][]]]]))][]]))]][])[])](())]]]()[][()]]]()([()]((()[]))([[([[]])([])]([])()(())]))([]))())]([][]([](()([]()))))()]([[][[(()[[][]([])][[](())])]]][][[][([[()[]]])[]]])()()[]]][]])(()[])]])[]()[](([]))[()((([()[()[([][[][]])][][]]([][][])])()))]()[[([][[]][][])]()()]([])(()[([[]([[()]][([])])])]))]()])]][]))())())()[[()]([([])[]])([([])[[([])()()]][([()()()()[]][([([[([][])]])])]()[])()](([[()][()()]][((([[]()([[[([(()([][])())()([[[]]])[][]([])([[[(([])())][]()]([[]])]())[(([(([]()()([([][([[]])][])]()(([])))))()[[[([](((()))))[]]]()]][])([]))]]([]([()][]([][()[([])()(([[]]([[((([][]))())]])))[[()]()]]][([[][[]]])()])[()])[][][])()[[][][[]][][]])[(([][[]]))()]][()[[([])]()]([[]([[][][]])])][([])][]]()])[[]]]()()))((([()[](())[[(())()]]([((()([])[]()()([][()])))][()])][])[])))(()[])][(()[][[[[]]([]()((()()))())]])[[([[([[]]())()(())(())[]][[([()])][][()[]][]]])]([][]())]]()((((()([[()()()[]]()])[[][]()]()()))))[])([])(()))][][])]()()()[]([]))[[]]))]])))])((([(([][]))[]])[[]])(())([[][][()([[]()[]][](()))(()[[[]([()])()[[](())][()]]])[]][[]([]()[[[[()]]]]()(((((())))[])[])()()[])][]()[()[][[]](()[])[[[]()()()[()]][()(())][()]]]()[]][]))[][][]])([[()]]())]))[]))[][()]]])()[]]))][][]])[]])[]))])()[([()()])()])[][]))()[[][]]]](([]))]])[][()[[]]][[]()[]])([])))]]()()))])()])([]()()())]()()][])()))])]])[])])[])[]]())()())())()[()][(())[()(())()[]]([][](([][[]])[])())])[]]]()([[()[]]()]))(([])(())[[]][][])))[][]])[()[]]([[[[(())]]()]](()()))()([()])[][])[](()[]())()[]]]](((([][])())))())]()[[[]][(([[([])[]]]))[]][()[][][]][[]][(())()[]()](())[(([]))[]]])[[]]()))](([]()()[][]))[]()(()[[][[[][[[][]][]()]()]][]][]([([()])])[[]()[]()[[[()[[]]][]]]])()()[(([()[()()]()[[[()]]][(()[][]([]))[()([])][()[]]]()][]))][]())]((()[]))]]()[][(())()[()]]([][]())][()[[]()][([])][[[(()()[]([][[(([[](([]()[][()()]))][]())[])][((()((()))([()[][[][[]()]]])[()()]()())([][]))(([])()((())))[][]]]))][]][]]][[]][()]]]])]]))([]))))])]])))((()))[(()[])[()]([])(())]]][([([[]][][])]())]((())[[()[[([]())()[][[()]]]]([((()[[](()())(())]))()]())[[]([[[]()()()]])[[[[]()(([][[()]([](()[()]())())[()[]]()]))()[([()[]][])]]([[()[]()()[]()(((())))][][]]()[][])]][]]]]())([([([()])(([]([])([((()[][]))[[()]]([([]()[[][][]])][])]))([])()[()][][[][]])[][[[(())]][[[[[[]]]]()()[[()([[]]((([])[]()[[((([[]]([((()))[]]))[[([](()))]][[][([])[([][])[][()[()](())]][(()[])[](()[[]]([[][[[]]]](()([[()]([])[]([([])]()[]([](())()([([])]([])()))([[][]]))((([][]()[[]])))]))[][]))()[]([][][[()()[([([[][]()(())[[][()](([]())())]()])])[()]]]][](())(()(())[([]()()[])()()])[])(())]]([]()[()[][]]())[[]]]()()[[[[]]()][]]([()[][(())]](([])))))([][()][[]](()))]((())[]([](([][][][([][][()[[]()](([[()][[]]])[()(([]([([([[(())]([(())([(([[]]()([(()[[]][])[()([]()([]()(())[][()[[()]][()]][([][]()[()])[]([()([][])()][])([()][])[()][[[]]]])[])[]][]([][[]()](()()))()]())))()[][[()([])]]])[(([]()))[[()[]]]](())([]([[]]))(())])][[([[([])()][([([][((())[][[]]((([]([(()()())][]))())[([()][((())[])[]((()[[[]][](([][]))]()))])[]]))(([][(())]()(([]()[]))((()[]))[[]][])[][([[]([][[[]()]][]())()])][]()([]))])(([]()()[()[]][[[]]][()]))]())()]()[]([[]])])][[]]][[]((([[()()][]([[([]()()([]))[[]][[]()]]])][[]][(([[()[][]](()(()[]))()])([])[[([])]])]))(((([](([((()([(()[[][()][][[()]([])[[[[]]]]]])])[()])[(([[[[][][[]([][[(()()()[(()[])[(([][]()))][]([[()[]]()])])]]()()([((()[][()[[]()]()[]()][[]][][](()((()))))[])]()))[]]][[]][]][()]]))][([[[()]()]()])[]]([]()())[()][])[][[()](())[]()]])[()]))[])[[()[[()]]]]))()([])[(())[]]((()()([])))()[])][()[[][][]]])[(([][([])]))]()[[[][][]]]][])]))[[]((())[](([][[()()(()()([]))(()()[][[()()()]]())]]))([()][]))([][[]([[()[([])[]](([])[][])[()[([])]([([]()[][[([])[[[]([[]][]()[[]()((()))()])[]]]][]()[]()])])()[][()()((([()[[]]])))]]]][[][[]]]()()[[([][])[()[(()(())())[]][()[][(((()())())()[])()]][[]]][]]]())[(([]))()][[][]]])]((()[[[([](()))]]])))])](()[([[[()()[]([][(())[[][]([([[([[]][](((([()][]([][])[][]()()))[]())[[[]]()]((()))))]]((([([][])])(([]()(())))()[])[]))()[[[]]]([]()())])]()[[]]()(())])()]][][([[[]](([](([[][[()[]((([][]())))][[][([])()]()]()(([[([()])()]])[([][])[]][((([[(()[])]]))()()([])([()([])]())[][][(([[()]]))[[[[]]]]])()()[]])](())][()]()))[])[((((([]([()()]()()()[()[][[]]])())[[([()()((([()([])[]][]()[][[()()]]())))][()]((()([((()[]))])))[[]])[][((([[[]]](()([()()])[[]])[])()))()][](()[])[][()]([])]][()()[]])[][]()()([])[[[]([])]()]([()[((([[[()]]][[][]]))[()[][]])([[([(())])]][(())((([[[][[(((([]))[[(())]][][([[]]()[[[]([[[](())[]][]]())][]])][]())[[()[]][()()([])][[][[()(()[]()[])](())[][()]]]()[]][([[(())]((([])[]))][][])((()[(())])[])])()()[(()[])([()][])[]([[()()[]([]())[()]][[[]]]](())[])]]]]()[[[][]]]]))[[]()()(((())[()]()()))])])[](())()[[]]][]][]()))()[])([[][()[[]]]([])])(()()))(((()[([[()[]]()])[[][]](())]))[[()]])])[]()]()[([])])]])()])(([][[[[][()[]][(()[[[]()]()()()((([]))[](([[]]))([]))])(((([])()(([()[([[][[()(()()[()])][(()([()()[]]))[([[[[()[()()]([([(()[][()])])()]())([][][[[[[](())]](()())((())[][([](([([]()([[]]))])([][]()[]((()(())([[()]([]())[([[]][][([(())()()([(([]))])](()))[[([])]()[[][]](([([][[][]()[][[]][(())][][(())][([](([[()([([]()())])()[][][]]]()[]))()[()]())][]])[[[[[]]]](())]]))](([][((([()()()[[[][]]]]()))[]([((()[])([([][(())()])([](()()()[]))[](())][]))])[]()[])()([([[()([(()()[[]](([]())))[()()]]())][](([[(()([([][]()()[([]()[()]())[[[[([[()[()]]()]()()[](([](([()]()[])[[()[[()]][]]([(()[[[]]][][[[]]([[(()())([])()]])()[]])][([([[]][(())])[]][()])]()[(()(())((())()[[]]()))]())]))(()[()])))](([][][()])()()(())())]](()(()()())[]()()()[[([])()()[[[]]][]()]()[[][([])][]]])[]()][][[]([])[[[(())(()[(([[[[[]][][]]]]))[((()((([[[]()]])[][[()]][([])][[]]))))]]()((())([()]([][[]][][]())[]([[[][[]]][([])[[[]][()()[[[]]][]](([]))]()][]()]([[()()[]]](()[[()([(()()())]())]][]()))([[]])()()()()[]()))))](([]))([()[()([([[()([])[()]]([])[([[[[[][(()([[[]]][()])[])]((()([()()[](()[])]()((([[([])[]]][])(())(([][]())()))))[]))]([][][])][]]])][]])])]][([()])])[](()([]()))]()]]()[([[()][()[()[]()(([()()])()([[](())[]]))([][()([[()[[([][][[][]]()([[][()](([()[[([]())()[(()[])[](([][()()][[([[[]]()[()]][])]][])()()(([]))(())[[()]()[][(([[[()]]]))]][([[()]])])([]())]][[]](())]((((()[][[]]()(()[])()[()[][()[()]]]))[][]))]))])()[])()]([])[()[[[[[]]]()()]]()]([]()[][[[]]](()[][[]()[]])[([()])][[([[]])[][][()[[][]()([()(()[[[][]](([([][([()[[]([]()([[()][][](())[]()]))()]])])]))[()][]][])[]]([[()([][]()[][([]()[(([()][])())[([[(()()(()[]()[](()()[[[][([()[][]]()())[][][()(())[[[()]]()](()[[([])][[]]][][([])])(((([([][][([[((([])))[[]]]([()])])[[]()]]([[[[[[][]()([]([([](()((([(()[([])[[()[]]()()([])](())()[][]()(()([][[(([]([]))([[()]][]()))]()]([()[[([][[([])]][])]][]]())()[()()([[]][[]([[]([[]])])])[]([])()(()[[[[[[]][]][[]]]()()[][][]]])]))()]([][]((([()[]])))[[][]()]))[][()]](()))[[[]()][]()(())()[(((([][]()[])))()[[][((((()))))]()(([][()]()()(()[[]]))())()()][])][(())()]]))))(())]())[])]][]]]]))([])((()(()()[[]])[([][[[([]())](()[][][])([](([](()[])[[]()([]()()[][[[]]]([()[](()[[[[]]]][()])](()[]([]()[([][])])(())()(()())())()))[][]])))([]())]()])()][()]))])[])))]]]()(())[[[]([(([][()])())])]()(()[(([()()[(()[[]()([][([([[]])()])])])]][[(([([()[][](())])]()()[()]))[]()((()[()](()([[()()][]][]([])[[[]()]][][[[]](())]))))]()((([](([])[]))()([])()))()]))[()]])[[]]](())[]([[](([()]()))](()())[][([[][]][])]())[][]()[][]][])))()()[]]])]()((()[[()]]))()[((()[])([]))]()]())[[]]([[()(())[([()[]]())([])([[()]]())]]])])[([[()]]()[])()][][[[]]]([[]])[[()][()([]())[()[][]([]([[((()))]()()[[([])]][][[()[([()([])][[[]](([](([[()]([][()])((()())()(([])[()]))]())((())[]))))]()(()[](())[[[[(([]([][[((([[[()[][]][][()[]]]]()([()](([(())][[()]]()[])[[[]()]][]))(()))[[]()[]([])]([]([])([][][][])(([[]][[()([][[]][][()])[](()())](([(([]))][]()(([()[[]]][[[]((())([][][][][](((())[]()[()])))(()))[[()]][[]]]]([()])))[[]]([()[(([[([](()()[])[()])[][]([[()]][])]()[[()]][[([]((()))[][()[]()[[]()][()()[()[([[](([][][[[]()[]]]))][[([][()()()](([]))(([]))([]()[][]()[]))[]]][][([])[]])]]()()[]]])]](()()[])]()()))[[][[[(())]]]]]()[][]])))]))[(([])([](()))())()])[[]]))]])[]))[()()][]]]([])]([[[[]()]]])([]((()[[]([]([()]([(((((()()))[])))([()([])[[[][]]]()]()[([()[]])[(())]])])))[[]()]()][][]))[])]()))[[[[][([[]](()))(()[])]]()]]]]][[]]])[[]])()()]()()]][([([[()()([])]()()([])()]())][[]])]()[[([])((()([])())[[]][[]()[()((([])))]([()][[[]()()([()])]]((([])[(([([()[]()[]][])]))][[]()]))[][(())][[][]][()()])()])(()(()(()[](())))()()())[(())]]((([[[[([[]([((()))]()((([(()[[]()((()))](()))[]][]([][][][([]([]))])[()[((([])))][]()]())(([()()])()[][[]()()][()]))((()()[])[]()[([])])))()(())])]()]()([[[[[][([[][]](()()()()[(()())])())(([])([[][()()]()]))][(([()])[][]()())]][]()]]([[][[[]]]()])])([])[][()[]]]])()()([])))[()([[[](())([][][([()])])](()()(())[((()))][()[]])]())[()]([])]]][(())[([[([]())(())][]])(())][[]][[[()()[]((([][(([][])([()[]][(([]()[[]]))[]]))][[()][](((([](())())[([()](()))[()()[((()(([][[[][](()()([]))[([[]()])]]]()(())([[]()])))))]][()([])()()(())(()()[])([[]])(()()())]][][[()][][][]]())[]))[][]][](([()])())(([][[]][[]][])[])()()))(([][])[][[[][()]]]()))([()([]([[]()][([[]([[]])[][]][]([]([[[[()]]]][(()()()[])])))([])][[]])()[()]()[])]([]))]]]][([[]])([[[()]()][(())][]])]()]))(())][]]]])]](()[])([]())()([]()())([[]])()()][])])([])][]]([()])][])]])][][([([()])([])[][]()()(([([])()()])(()([][[([[]])[]((()(())())([[]]))()][]])))]())]))]]))])])]([(())][[([()[](([()]([][[][](([()[([[[](())](()[][((([]())))()])])]]([][]))[][([[[([][][()[[[]]]([[[][]()](())][((())([[(())][]])[](()[][[[([])[([])[][]]](()[(((()[])()[]))[([[]])][()(()(([[[][[()[][()([[[[]((()[([][])]([]())))]][]][[][[]]]([(()[[]])])()([(())(())])()[])[[]([(([])(([]))(()))])]]()([()][[]()][])[]]]](([()]))][]))([](([[]])[][()([[][([([]([()]((([([]([[][]()[(())]]()(([[][[([])[()]]]][][(())[(([[]()[[[]]]([]([(((([]([])[])))[()()]())()]))(())]((([][([()[]([])][()(([])([][[]][()[]]([])(()([][])()())(()([])([]()[][[[]()][[[(())][]][]]](())[])))[]([()]([])[[[()]][]]([[[][[[]][()[]]()((()))][]()[(([[(())[][]()()[]]]()[]()))]][][][[]]][])[])([]())([][()((())()[[]]())[]]))](([][][])([[[]([])][()[[([])[()]]]]()])())((([]))[])[[([((([[]]()))[([][])[]](((([[([()])[([[([])(())][()]])][[[][]]]()()()[()]]]())([()])())))[][([]([[][((()))[[]]][[]()][[[]([([][][]())[][][]()([[](())])])]()[([(([([])])[[[[()[(([](((()))())))]](([][])[((()))[]][([[[]()[([()([])]([[[()[][[[]](([]())[[][]])([])]][][()((()([[]][][]))[])]]]))]]][()[]()[]][[[](())[()([])(([[[[()()[[()()]()((([][])(())))[]([[]](()[][()]))[]][][](())[]]](())[][]]][[][]]([]))()()([[]()](()))[](((([[][][()()][]])()))[[]][]))()(([([[[][]]])]))(()((())[][])(()))]]])[]])[]]([(([]([[]][(())[[(())[([()[][[()[]([])[]][[[[[()[][][][([][])[[]]]]][[]()]]]]]])][[]]][()]]()]((())(())[(())[]][([(((()[][[]](([(([]()[]))]))[[()]])))])[]]))())([])[][(()[()()])])])](()())()])[]]())([])][[[][](())](([][()]()[()()[()()]][[]][][])())[]]]()()[][()()]([[]])][()])([])()[[()[]]([])]([]())[()[]])()])[()][]][]()()()([[()]([])][]))[[([[[]]])()]]()][][()]])][()])))))][((([[[]]])))[[]]]]))[]()))])[]))[](())((((([][()[[()((()))[([][])[[][()[][()[][(([])([[]([]()[[]()[[]()[]][[[][[()]()[(([()](()[[()]([[]])()][()])(())))]()[(())[()][]([][])]]()([][[()]])[()()([[]])]][][]][][]()(([])((([[[[()][()][[()([][])][((()([])()))](([()][][])([]([])()[[[()([[[]()]])][](([((([[]]()()))[][[(()(()))]()()]([]))()[][]]))()()[(([]))()]([])]([]())][(([([[[[()()]]()()()[]]])[]])([][[([([[([[[()]]](()))][][(([[]])[])]]([]([][]()))[][]([([])][()((())[()])[()]([](([])))])()([]))[[]][([(([([()[](())])[][((((([]))[])))[[()]]][]][])[])()(([[[()][]]((())(()[[[]][[[]]]][((([]())))[]])[])](())[]))]())(())]])([][(()(()())()[[]][])](()[[([()])()]][([()[]])])[()[][()]()])[(([]()))]]])(()[(())([[]()()()])(())][[][]][]([([()])]([][])[([[][[[]]]()]())]([]))())[]([()][](())(([][](()[])()))))]([])))]()[]([](([[]()()()(())])))][][](([]))()()]([()])]())))[])])]))()]()][()]]]][()][([[[]][()[]]])]((([[()](()())[([](([]([][()[]][()(()[()][[()][()([][])[]]]())]()))))]])()))](()[])[]]([()][])([[]])()([(())[]])](([()]))))))(([(()[()]()[[[]]])])()()))))[]])[][]]])](())()))[])]])]]()[][(())](()()[]([]((()[[()([]())[]([([(()[][()])])([[[[()]()[()[]][[]]]()()][][([(([[()()][]][][][]([][()]()[])))]())]()])])]]())))()[[]])[[[[(())]]]()])([]))()])][(()[[([])]]())[]][])[[][][][[(())((())()[])]]()][()()[[]]((([][[[][]()]])))([[]])]]][]][][][[]][][()((()))[()][[]]])[()([[]()][]()[][])()[(()[()]((([[[]()[]]]))()[[[]][[]()((()()(())))[][](((()[[[[[[(([][][[[([[][][([()()])[]]((()[[][]()]))])]]()(()[])()][[[[((()([])[])[()][])[([[]([][])])]()()]()](())[]]()[(([])[([[(([[]()]))()([])[[[][]]]][[]]])])]][()[][[(()())[()]()[[]][]]()]()[]()()]))()]()[[()([[](()())])]][](()(()))]]([()([][[()]])[][][[]()()()[]][][[()[]([])()]]][[]()][(()(()))(())](([][])())[])]][[[](())()](((())()))]()])[])()[[]])()[]()][()()]([[][()](())])])[[](())[(([[]]([[][()()[][[[]]][][[[[[()()(([[[[]][[]([])()[()((()))()()](())[(())][[]]]]](([]))()[])())([([])])]]()[][][[]([[]()]([[]])[[]])]([][]([(([()]())[])]))(())]]]()()()([[]]()[[][]][](()))][[[]]]()()()()]))[])[][]]])[]]][[]([(()(())((()[])[]))])[[][()()()]]]][][])[]()])[]))((([])[]())[((([])()(([[()]][[(([[()][]]))[]][]]))())((()(())[]()[()])[[]]))[()]]()((([([[([])[][][()()]()]]([[]])([]())([([])])([[](([][()[()]])()((())[][][][]))[][][()[][[]]][]]()[][()]())[[()([])()]][])][()[()]])[]))[(((([])())[([()()[]][][])[(([[]]))()([(())()(())(())()][][()()])]])[([((()))[([][][])[()][(()()[[()()()]()([]([[][]()][[]()[]]((())(()[()[](([]))])))([](([])))([[[]]])[][]([](()))[[]()()[][()][[][[[]()[([[]])](([]()))]]][([([])])[]][]])])[[[]](((()[[][]][])([[((([[()()([((()()))([()][[]])])[([[[][[[[][](([[[([][([[[[[[]([[]()]([]))][][[[]]()]([][])([])]]]])()])][]]]()()[[()(()[]())][()(([][()](()(([()][()()])([[([[](()[])[()]])()][]][][])([()])()))[][])())[[]]()((()))[][()([])()[()]]]([])[(([()])())][]](()([[]()([])[]()[]]))[([[([])]([([[(()()()[])((((([()](([()[]][])[])[[]([[]()])]()())())()[[]][])([])()()([[]()()[[]()()][]]()())()()()()[][]((()[()])[[(())[][]([[()][][(())[]([])[][]([(()([])[[[]()]()])(()[]())])[]()(())]]()())]]([]))([]())[]))[[]]][](())]()()[([[(([])(([][((())(()[]))([()][(((([][][])[()][((([()]())())[]())()[]])()[])()([[][]](())))[([])]]()([])([][()]()[[[(([[[(())]][[[([])]]](())[][]])()())]][[][()[([]()()(())(()))][[()()()()]()]]]])()([])()[()(()[[([[[]][]])[]([(()([]()))()]([([([[]][[]()])][([]([()[]([])()[[([[]](()[]([][[]][])([](([[()[[]]]])[[]]))(()))[][([][]())[][][([]([()][[]()[()]]((([(([][]))[]][(([]()([[([()][()][])]])))[([])](())](()))((()))((()([]())[[()]([])[[]()]](()(()))))())((())))(([]))[[()]]))(([]()))]()])[()]][]]]()))]())(([[()[[(())]]]]()))][]([()])))]()][([[][]])[[[][()[][]()[]()()(())()()((()[]))][](()[][]([[()][[[[]]([((())[])[]()[]()[((())())][[[]](()[[[()[]]][(()[])]][])]][]([([])])([[]]()[])[()][])()[[[([][][]()[()[]])[[([])[]([[]()[]][(())[][]])()]](())]][[]()[[(([]([([[][]()])[[]][]][]))[])][()[][]()[([()()])[]]([])]]()[[]][[]]](()[[]()])(())][]]][][([])((([][[]()]))[[]]()([()]()[()[]]()))]])())]][[[[](())]()]][[[][]([()[[]()]][((()[[][][]([[[]]]()[])])([()(()[[[]([])]])[()](())[]][])()())]((([]()))))[]]()[][[(()[([]())])[()()]][]][(([()]([()]([[[]][[](()(([(())][]()[]([])[]))[[((()[])[[()][()][][]])[]]][[[()[()]](()())]])[][[()[]]()]([][][[][[]]()]())[](()[[][()[()]]])([(())()])[][[()()]][][]()]()()])())))][[[()[]]]]()]][([][]([(())[]]))()[]]()()(()[()[[]()(()(([]())))[[[]()()[]]][()]]]))][[]()][][])]()[]([][](())[][()]))))[]]])[]])()()][[]()])][])(())](())))]]][((())())][[]]]()])([[][]][]([][[]]))()]]])()))()][[][]()](())[()]]))[([])[(()[])[()[(([(())()[[[(()())[()][()]]]((()())[()](([()])))]]))][][(())][][]]][]]()[()][()[]]())[([[]])[]]()[]]][]()[]()]()][[[]()][(()[[]]([[][]()()])[])]])[([]()([[([]([()])[[(([((([(([[]])[])[]()])())[[[]]([])])[]][()][])((())[]()))([])][()][]][(([[[]]([])](())[()(())][[()(())()]]((()[])([[][[]()()([])[[([](()[()(())[([])]([((())[])(([[][]])(())([])[([[]])()][])](()))][[]])[][[][()()]])()()]]][[]][([])][([[]][])]][](()()(([])[()]()(())([[[[[(()[[]((()))[(())[][(()[][[[()()[(())[(())([][][((([[]])))])()]]]]()()[[()]]([([()[]](()))[]])][])]]][])]]]]]))[]())(()(()[[()()[()]([])()][()]])(([[]])[][][]))()([([()](([][][[(())()()[]()()()]()]((()([][][][(()[][(([[([])([[]])]()[]]()[[[([][[()()[(()[][]()())([])]]()])]((([(([](()))(([])))(((((()))()))(()([][()])([])[()[[()]][]]())())])([]()[][][[()]()][([])([](()[]((()))))]())()((([][[[]([][[]])()[]([])[[]([(([[]]([](([])[[]()(()[()[[]()[]]()])])())))]([[]][]([([])()()[[[]][]()[]]][[]])()))][][]]]())[])))())]()]()()[[]]))])])[[]]))[([(())])[][](((()(())))(((()[[]](())([][((())[[][[]([(([([[[]][[()[()([[()]([([([])()([])])][][][[()(([[[[([])([[()]][([([])[][]()[]])]([[()[]((()([]([]([()])([()]))))[[[[]]](((([][]))))])[[]][]][]]()(())[()](())()))]()[()[[][[]([])()()()][([(([][()])[](())[][][])](()((([([[][(((()[[[[]][]]()[](([])[]()[])][()[][([[([])()(())]]())[[][([[[()[](([])[])]]()([]([()[]()([[]([])[]()()[]][])][]()))]()[][([[[][][[][[]]]()]]())[(()())]][][((()(()()[[]])[][])())])()[[](([[]]))][]]]]])))([()])()]])][])[((()))]))(()[()])()[()]))][][[[()](([][(())]))]](([]([])[(([])[])[()][]][])(())())()([[]])()[[()()()[[[()()][]]]]]]()]]]])(()))]([(([])()(())())[]])[()]]()[([()])([[(()(()[]()[()[([])]]([[][[]]]))((([([()]()[][]([]())())[]])))[]([])[]())([])[]][][]][([]((())()))[][[[[[]([])()[()[]]][(([])())[[]([()(([]([]()[[[]]])))][][])]([[][(())]][([]())[]()([(([[()]])[([][[][[][[[]([([][[([[([])([[()(())()]][[][([][])[]]()()[]([]()[([])][]())[]])]()()(([[[[]]]])[][])](()))]])(())([]([()[[]]][[]]))]()[][][](([[]])()([[]]()))[])[]]]()(([((([[()]])))(()([[[]]][(())]()()[]()[])[][])[()[[([]((()()[(())][()[]])()[()[][[(()[])]]((()()[][((([()([][][]((()))(()[[]()()(((()[]))())([])[(()[]())]])[]([()((()())[()][()])([[[[]]][([])]])()()])[()()([(()())[[]]])()][((()(([()]()()((([()[[][](())]][]([[]])))[()][[]]))())[(())[([][()])]]))()])([(())[]]()[()]([()](()([][([()[((([[[[()]]]](([]([[]([])][])))[[]()[][()]])[[[[]]]])[])()][[][][[]]]]([[[]]][[()[(()[[()]([[]])])]()](([()[]()][]))][]((()([()]())[])())[[](([[]]([])[][[([(())()][])]]))(())[]()]))]([])[]()(()[])))[][]))(([()[]])(([]))[])[]])))[(())[[[()(([[([([])[]][[[]]])][][(([][][[](()[][(())])]))[[()(([()][]([()]([()[[([])][][][[[[([()([(([()])()[[[][]]([[[[]](()[[]])[]][[[]]]])]())()((())[([[]])([]()())([])()])]([]))][])]()[]]()]]]][[[()()][]]]))[([(()(([()[[]([()])[[]]]])))][]([])[()][([[]()])])[]]))](((()[[()]][]())[((([])[][]))[[](())([][](([][()])([[][]][[()[]]()][[]][][]))([])[[][[[(())(()[()((())([()]))])]]]])[()[[]][]][[[]]()([])](())]][()(())]([[()()(()[])][()[]([[()]])()()[()]]])))([]()([]()[][()][]()()[])[][]([()]))][]]([[()[]]()])(())[[[]][[]][]](()[[[]][[][]()[()][]]()[]()])]))[]]]()]](([(())])())([()[()[]]]()[((()))]())(()([]((())[])[()()]()))]))]))]]]]))()()[([](([])))[]()][()[[][[]]]]((())[][()()[]]()([()(())]()))]()](()()[[]()()()])(([])))]()[])]())])[[]([()])([[()[[]][]()]]())][()[()[((([[[()[]][]]()])[])()([[()()]])()())(([]([][])[[()]()(()([()[[([])[[(([][][[[[()[]]([])]]]))(([])[[()]](()())[][[]]([]))[]([()[](())])[][(())([[]()])[[([[[()[([]()()([()[]]))]]]]())]][]]()]][]](())[[]()]()](()())[[][]]]))[()(()(())[[()]([][([()([()()[]()][][][])[[[[(())()()([]())](())]](()([]()))][]])])])]([])]())([((()[])[()])[(())]()]))][[((())[()()]())[([(((()(([])[])(()[(())])[]((()[][]))))[][][[]])][(())()()(()()[[[([()()])]][(())([])[()][([()])]]])()([](()[[]]))(([[()[[]]][]([[](())]([((([])[]))()([()()])])([]))[][]])[])[]((([()()()[]])[[]()]))][()()]())]][(([])[])()()()(([])((([[()]()]([])([[(()())(())[]](([[]][][])()[][])[]]()))))[][]()[[]])(()(()([][])))][]]](((((())[]))))]()([]([])[[]][[]]([([]([[]([])])())][()][([]()[(([][[]][[[()([[]])]]][]()))[[]][]])[([()])()]][[([[]][]()[()()([]())()]([()[[()][]]()]()[][[]()(()()([]()[]))]))]]([[()((()[]()))()[[()()](())(([(()[[[[]]]][])][]()[(([[[[]()([])(()[()][])](([[[][()([])()]][[][[][()([[[[]]]])[]][]]()]]))][(()([]))][[]][][()][]()][])[[]([[]])])[[()]([])]][]))()[]]]])())((([[]]([]()[[]](([])[[[()]()]])(()))([([][()(([]))]())[]()](()((()[([()][((()([]()[]()([[([[[[]][]][](((([]))))()(([])())]([[[]([])]()]))([])[]((([()()][()[(([]()(()))[])[][[[((()[]))(())]][[()]([][][([()()(())()()[[()]()][[[]][[](()[])[()]]][()(())()][()]])(([]))()])]]]([][()][])[]]()[[]([[][]])[]])[[([()][[]])(()[])()]()]))[]][]]()[[[()]()]([(())])])()[(()[])[()][]][[[[[(())[([])][[[[]][]][]()[[]]][]([])]]()]][[]]])([][[(([]))[]]()()([()(([][][])[])][((()[((((([])[[[][()(()(()))]]]))[[]]([])))](()[]))(()))[([[[]]()])]])[[][]]()][[]([])])()())[])])[]([[][([[]])[][([](()(())()([])))][([][()])]([([][()])])]][[()()((()[]))]][[]])()()][])[][()([[]]([[]])()(([[[]]([])])[[]([([()][([])[[()][]]()]())()()][])]())[])[][()(([((()))[[(([[]()])([()]))]]([][[[]]])]()[](()())))[]][[([([][[()]])])[[[]][][]][]]][]][]()())()([]()))[][][]))))(()())[[()([()][])]()()])]][([]())]]()([])()]()[]]()()(()[][([][][])]()[](([][[]()]))[]))])])[]][([((([()]()[[]][])))(()()())])((()([]()[][(([()]))][[(()([((([()])((())[()[]]()()[[()]()]())))()()])[])(((())()))][()()(()[])[]((([])()((())[]))[()][])]()])[()][[(((([[]]))))]()[()[]]]([()[](()())[]]([[()[([][])[][][]()()[([][[]])([()])][([]()[])[]]]][]]))))][()[[[]]()]([[(([]))]([[]][()[()]][[[]][]][()[((()))((())[(([(([]()[]((()([]())[()])()()[()]())))[]]((()))(([][[[[]]]])()([(())][[]()])[[]([[]]([[]])[])[([])](()[[][()][][(())]]()()[]()[][])[]])([])))])()]][]())[]])[][][]][][]]]])[[][][][]]][][]())[])]())([(([]))()])()](()[][])[]()](()))[()]]))())()(([(()(([])((()))[][(())[([()])][()]([])()]([])))]))))(([[]]()[][])[()[]()[]()])]))([()])()())]()))[])))]([([[]()[][()[]]](())[][()][][])()][(([([](()(()[]))[[][]][()([])()((((()[]()[()])))([()()((()))]()))(())])[[][((())[[]])[((()([](()([][([])])()[]())(())([]))[])[])([[]])[[[([()()])()[][]]]]()]]()[]]]([[][[[][()]]]])))[][]([[()[](())()([])[]]])(([]))[[[()()[()][([[][[]][[]]]()[])[([()[(())](()([][([])[[[]][]]]))][()](())[]([])[]())()()]()([]([[]()()]))[([()](([][[]]))[(()((()([[]])[[[()][]([])[]]])(([]))([]))(()([(())])[[()]]))[(())(())][][[[]]()]][])([](()[])())]]()[][]]]([()])[][[()()()[]()([][])]][]]()][](())[()()])())[()(()[][()[[([[((((()([]())[][])()())[]))[()]()[[([(())][]())]]([](()[[]]())((()([]))))]([()[(([]([([[([[][((()))([])(()()[][[]()])[[][][]]]([(())(([]))()])])(([]())()((())))][[]][][()]([()]()()[[[[][[][[]][()]]]][(())(()[])]]([[[[[()([][][])[](([])(())()([][[()(())[][()()([([(([][]()[][](([])[]([][([]())()][][])()[])([][[]([])[]][](()))()()))])([(()[]((([])[][])[[]][])[])])][])()]()[]]][[][][[[[[()][](()[])][[]][()[]()[]]][]((((()[[]]()[]([[[]]])[][][])))[])[]][()()([](([[](()(())()[]())[((([]))[][[]()()([]([])([]([()][(([()[([[]()][()])([]())(())][]()]))[][[]]][]))())()]([()()([[()]()])()])())][[[(()([]([])()[]()[])[([])][[]])([[]()])()][]]()]()[]])()[]))]()()(())([()])][]])[])]][(())][]]]]))])])))([](()()()[](()[]([]))[]([[]])(([][]([[()][]])[()()])(([])[]))))]])[]][(()[([][()()[]])(())[[][][]()]])])][()]]()])[()][]][()[]][]()][]])[])[]]])][[[]][]()()((()[]))]()[()()()(())[]]()()[])])]])(()[[]]))(([][])[]))()])]]()))()[]())))[()])])[[]][]][([][])]]([[(())]](()(([[]()((()(())))])[([][]())]())([[()(([()][]())((()[])([[([])[]]]()(()[(()[[]])()]))))]([[][][([])[]]]([()()[]])()[[][[(([([[[][([])()(([]))[(())[]()]][[()]]][]][[(())()[]]()])()[]]())(()))]]]([]))()]))[[][]([[()()[]()[()]()[[((([[]([()[][(()[[]([()[]]())[()]()])([()()])][[[[]][[()[][(((([()](()))()))(([[[([[(()[[[]()]([([])[()][()]][][])([()]([([])])[([()][][])])()]([[[]([[][([[()][([[]][]([()]))[]][[]]])(())]])([])]()])([[()]])([]))[[][]]][][(())]])((()))((()))[]]][]])))[]]]][]][()]([[()]])](([])([][])[([](()[([[[]([])()(([][[[(([()()])[()()])[](()[])][()([[]([[][]][([])()])]())]()][]][()]))]((([[[[]]]][[]])([][(()[[[[]]]()])()])))[(([([][]())]))]]())[()]])[()(())[()]]()[])[(((()([]()))))]])])])))](([[]][]))([]([[][[[[]([])[[[][]([][()]()[([[([()[()()][()()]])]])][()])[]][[]]]]]]][()][[[[([()])([[][][]()])[][()](([][]))()]]]])[()([])([][[()][[()[[[]]]()]]][][])][]()()[()[]()(([([])()[]][]))][])()]]()][[[][(([][])[])[[[()]][]][]]][]])[]]()))]]([])[][]]][[]])][]()[]()][[]()()[][[()][]](([[[]]]))]]([[]])][][[(()[][[]])()()()][]])[]]])()))))[]]]]([][])()])[[()]]()))]))))])[[][[[]]]])[])[((()))()]]]]]]])[[()[(()[][])[[]()(()[[]])][[]]][](())[[[[]](()())[]]]([][[[][()[()()[]]()[[][]]](())[]][]])]]([()])])]((()))[[]((()))([]()[])([][][])])[([()[([])]])()(())]()())][])]][[(())()[[()([]())[][]]]][][[()([[()]][](([[]()][])[[][][][]()][()()][][][]()[[()([])]]))[]]()[[][()(()(()[])())(())[[]][]()]()[]][(())]]]))))(()[])())[[()]]]))(([([([][][()])])][()]()))])]]()]]][]]))[]([]))[[][[]()()()[[()()]()]]][][([])]]]())[][()]()]()])))][]))()[[([(()[[][[[[]]][][([[[()[]](())][]([[[](([[][](([([][][([])()][]()([()[][](()())][][]))[[][[]()][[]([(())[][]])()]]([(([((()))[]([][])[]](())[][([[[()]]]())[([()()()([](()[][[[[([])]()]](([]()))()])((())())()()[][[([[[()]]]([]))]])][[][][]])]()]()[[]]))()()[][[(()[])[[]]]][(()[[[]]])([([([[[()]]][])[]]())[][]([()[](([[][]()()[]])[]([([][][()]()[(((())(([()][]([[[][(()[])[](()[][])]]((()))][])[]((())[[[()[]][([[][[][]]([()()][][(()(([])(())[[][]][]())[])])])([]([[([])[(()[])[()[]]](()[][])]([[([]())]()])[](([[](()())((()))[[()(())][[[[]()][][][[]]][()()(())[[[]][]((()[[]][(())]))][]]][()[][()[]([[]][[][][]])[[][]]]]]])[[[()()([])]([])]][([[[]]])[][[]([])]][]()[])]))]]([]([()[[[[][()[[[[][]]]](())]]]()][[(()(()[])[])((())([[][]](()([([][[](())])])[]()[][])((([[][]](()))[()()][])([[(())[]([][])[]]]()))())(([([([]()[])])])([](()))()))()[]]][[]()][][]]([[()([][()[[]()[][[[[]()]]]()]([][][([])(()[]()()[])()[]()([]((([[]][()]))()[][[]([])(([])([]))(())[][[]][]])())()((()[[]][]([][])()()))])]()([(())][([][])((()[]))][()[()[((([][([][[]][[](()()[()])]([]()()))(()(())())])([]))[][]((()(([]))((())([([])[]])[[([])()]]))()))]]]([][([(())][])])([][[[[]]()([])[()[([])]]][]])))[[]]([[([])]])()[]]([[]()()([])[]][([][])]([[][][]][[][]][[][]][])())])))[(())]](()[[[[][]][[]][[([])]]([])]()[(()[()()[[(())]([[[]](())([(())()([[[](((()())[]()([]()([([[(([])(())[()])[([][][[](()[][][([]()[]([()])[()][]((())))([[]()])(([()](()))[][([[[][(()[][[][]])]()]])([](([()]()))[()])])[]()])[]])[]]]])((()))])())()()))()[]]([]())[]][[]])[]][]([[][]([[[]]][])[]])[([])])([[][()((()))()([(([][[]]))](()[[([(()()([]))])][]]())()[([[[[[[]()()[[]]]]]]])(())[[]]]()()(((()))))](([([(()([()][]))][[]]())]))][](()))][]())[]]][[[[[]()]]]])([()([()()[](()([])[])()()[[]](())](()))][])[()()[()([]())([[]()[(()[()][(())](([])()))][][[[[[[()][[(())()[([[]])[[]()]][()]()[]]][]]()[()[[][][()]()]]]]]]])([[(([])[][]())[]()()]][[([([[]()])[][[]]]([[]]()[][[[([]([[()[][][()]()][([][]((([[[([])]]]())([][]()))[]()))]][])[([()[[()[()[()][[]]]([[[[](())][(((()))[][()[[()[[(())[[[][([[()]][]([()((()[])([]()())(()))([[([][[]])]])])[])](())]]([(())[()]][[]])()]]]][()[([]((([()][]()[[[][([]())]]]()[]))))(([([[[(()())[][](()())[]()[]()]][[()]]][]()()[[[[]]]]([]()()))[]]([([(())]())[]]))[[()()[]](())[]])[]][()]]((([])[[()[[]]()][[([()][]()[]([()]))([[][[]()[[][([(())()]([([](([[[[]][]([()])()]]())[(())[[](())[][]()]]([]()))[])([])()[][[[(()[()([([][])]([])())])]]]]([()()(([])[()(()[]()([[]][])()[()]())][[]()[]((()()))])][][])())()[])([()()[[([][][][[]()]()()([[]]()()(((((()()([][[[[]][[[][]]]][()([[]][][[()[]()]([][[([[()[([([[][[([([][])[]])[()]][](((()([][[()]])[(())()])()[[[][[]]]]))]][[]])((([(())[]](()[][])())(())))]()(()[[[()]([]([[]]))[][(()[(()([[]()][(())()[(())]([])[][](([])((())))(([]))])[]()[][])][][]([[[][([])]]])()[](((()([][()(((([[]]))[]))[]()()]))))()[([])[()][[]]])][]]][()[[[]()]]][[[()[(()[])]]]()[[]]]))]][[[[[(())]([[()]])](()())]](()[[][]()])[][]()]()][])[()(()[][])([(([]))([])]())[]]]([])])([()()](([])()[()]))])(([[[]]])[])][][]][][[[]]]))))))[][])[])]][][]][[(([][]))([])()]()([])][[]()])()()]]]]())()]][]])())])[][[(()[[]])][]]]]][]([])(([][[[]([([])()()[](([[]()[[()[][[]()()[]]][](([]))]][](([()]([][((()(())))()[]])[]([](([][]()[][[()[]()]][([[]([])[]([])])][]))[])([()[[]]][[[(()[])][]][]][()]()))(())[()([()[]])]()()[()(([[()]])(())[]())([])])((([[[((()(()[]())))]()]]()[]((([()])(())([]())))[][][]([]))[[]][[]()[[[(())()]]]()([])]))))()]([()()()]))([()[]][][([[()()[]()[]]])()()[([]([()()]((()([][[]](())(([](())[(())]())()()())[((([[()(([]()))[([[][]])([[((([])(()((((([(()[])][]([[][]][](()))()[[]([][][])()]([[[]()[][[(()[[]])((())[])((()()))][[]]()()()][[()]()][[()][][([()]()(()))]]()]])(()))[([])])[(()[[()]])()[]]))))()[([(())])]([[()]()[[][()]]])[][(()(()))][]([[(())[]]])()(([])))[[[[(([][()()]))([])[]][[[([][[][][]()[]()](([]))[]()[[][(()[])(([][([])]))[]]()()])]]()]]]])[([[]([()])])][[()()]]]()([](()([][[](([]))]())))][])[(([[[()[[[()]([[[]]])]]()]]][][[([()]())]()]())(())(())[[[]]])]]][]])[]()))])[[][](([]))]))))()]()[]])][()[]][[[][]]][]()()[[]]])))]()]]()[])()]())[]]]]([])))(())[()]([][[[]([]())][]])]])][()[[][()[([(((()[])))([])][])][[()][]][][()([[((((([](()))([[[]()()]()][][])(([])[[[]]][()[()]([][([()()[]])][()[[[(())(()(()))[]](()[])[]]]])]))[[([[]])]][]))[()])()(([()][])([])[()(()(())[](()(([]()[[(())]()]([])[((()))()[[]]][])))[])[]()][])](())])][[](()[([])[(())[]]([(()[][[][(()[]())[(())][]][[(()(()[][][](([][()]))(())([]())))][]]([[][(([([]())[()]])[[[]([([()]([][])[][][](()[][()][[]][[][[](()([()()])(([])([])()))][]]))()]()[[]]([])(()[()]))]()])[][[]][[(([(()[])]))[]]]()]])])]())])]][][[]](()[(([[[([()()]([[()(([[]]))][]()[][]][]()))][]([(([(([][[][](([][])[[[()([])]]][(())[()(())][()[][[]()]()((())(()[([])((()[()]))]()))]][](((()([]()[()][][])[]()[]()([[[]]])))))()(())([([][()])][]()[[[][][]][][()(()[[()[][]()[[()()]][[](())][][()]]()][([])()()])]()[]]([]))][[]]))]()))][])]]))(()[][[]])[]([])])([()[]][[][()[]][()()([])(()()())[][]]]())((()))]]]][](()[])[][]])[()])[((())[()])[()[[[()][([(([[([])[()()][[]()[][[[]]]][[]]]](())))[()]])([()[]])[]]]]()[]]][]([[(())[()([])(()()(())(()))][[[]]][]()]()[]]())()))[[[](())([([])([[]][](([()][[]](([]()[])([[[]([()])[]]][([])[()[([(([(([])[])[](())[[(((([[()]([])[([(())])]])([(([[]])[])][][()[]]())[()][])([([([])][[](((([()()[]])([]))()[[[()([(([(([])[])])([])())((([])[[[[]()]()()]]([[][]([])][[](()[(([([(([][(()[])[]()[][]]())[[()]([[]()()])([(([()[]][][][[]((()))]))[[[][]]()()]()[([]([[[(([]()))]]]()()()([([])()[()[]]()]))()[[[[][()][()[()]]][][[[[([(([[()]]()([[]]()[])))(())]())[[]]]]][[(([()[]()])([]))[[[(())(()[])[][]]([[[]()]])]]()]()()]]]])]([])[]([])](())[()()]()[[]]())][][()])][])][[]([])])[([])[[][[[[[[]([](([()[][][(((()[[][]][[([(()[](())())[][([[][]]([([[]]([][()([[[[([()()()(([(())])())[]])([])()[[([]([()(())(((()())(([([])]())([[[()()()]]]([([()])][]))()[()])))[]]))][[([([[()][]()()])])([])((()()[[[]][()[((([()[]()])()))][]()]][]()))]()[(())[]]][][()]]][]](([[()][][]])[]([][[[[[([])]]]()([()])[][]]()])[[[()][]](())](())[]())[]][]()]()(()[]))][[]()][[()][[(()[()][])()]]]([()()](([[(()[]()[](([[(()())[(()[])[]([])[]](([(([[[][[][]]][[][][()][([()])][([][][]([]([])()(()[]))(([]))()())](((()[]())(([([()][][[[]([])()[]][]()()](())[[()]([])])]()))(())[[]()[[(())][[]()]]][([([([[]]((()[()][[()]])()))[[]]])[[]]])[[()]((()[])[]())][]][[([[[]]()([()]([]))()]([])[])[()()]][]][]))()]][](())[[[()(())[]([][()]()[()][])]]()[([])[(()[[([[]][][]([][][]))][]()()])]]()(())[]([[(())][(()[()])[][]]])[][]]([([])[]]()))(([[[][[()]]][[]]]()())))]))][]])))[[]][]([([()([])][]())[[]]]([])()()[])[]]])(((())())[[(()[([()[]])])([()])][[(([][][])[]())()]()[[]()]]]))[]([[((())[])()[][()[[[]]](())]]]([()([]([[[]]]))])))([])()[]())[(()[[[([[][]])()()][](())]](([()]()[([([][()])])[]])[][()()]())[])])()]()[()(())]([])([[((((()[]))((((()))(([((()))[([][()((()))[[()[](()[])()()[]]]][]())][[[[][[([])([](([()][]([[]()])([])(()))([](([()[()()][[]]](()[()]))[([[][]][][(())][()]()(()())[[(())()]][[[()[](()[])()()[(([]))[][]]]][]])][[]]))))]]][[()(())()]([(()[])[()]])[]](())[([][()()][])]][()]([()[]()()[[(([()[][]()[]])((())))]()][[]][]])]()()])())[](()[(((([])()[[]])())(()))()])()()[()([]())[]()()]))))][[[]]]()]([(([()[()[()[[]]]()]][])[[[]]([])[]])()(()[][()[](()[](((([[]()(())]()[[]([])[(((([])[()[]])([][((([()])))][[(())()([[]])](()[(((()[])))])[[][][()[][[()[]][]]()([([()(([(()[][[]])]([]()()((()))([]()[([])([()]([[][]]))])())[[][]][])()[]([]))])[]])[]()]]])))]])[]))))()][])([()([[([]()(()[]((()())[[()([([])(([[[()]]][()(()[([([[[()]][([[][()[]()][([((()))])[]()]([])])][([])][]])[]([])])][]())][[][(((()(([])))([()[]][]))())[]]])())][[]()[[][]()[[()[][[][()[[(())]()()(([]((([()(([[(()())]()]([])([[][[]]])[()][]((()))))])()))[([])][[([][()[()[[][]][]]])]]))[[[]([][][()[][]()]())][(([[()]()[]])[])]][][()()[()]]][[]]([]()())()]()]]]]()[]]())[()]]](())())())([]))]])][]())]))))[()()]([[]()[]()()[((())[(()[()][]([[[(())]()()][][([]()(()))()[[[]]()()(([()[]()[][[]]]))[]]]][]()[[[(())([(()[[()(())[([[]])]]()[()][]][])])()]][]])[[[([]((((()))))[()[[]][([])[]]])[()]([([])(([()([])])([[([])][]]()()[[([[([[()][[]()()()([(())])]]()[])[(([])[[()[([([])])(([]))]()]])][][([[][[][([[]])]()]])](([([])][()])[]())]])[[()]()[][][()[]][((([])[])[][])()]]]]([][])()()[](()())[]))[[()()[[](([]([([])()]()([]))))](())(())()[][]()]][()]])]]][])]())[()()([[[]]]()()[[[[[[()]][[(()[(((([[[]]()][]))))]())]()]]()()]([]()[([]([()()(())([])(()([])([(())([])()([])])())[]][[[()][]][]]))])]])](([]))]]([([()[]][])[]]))][[[][][(()[(())[[[[[[()](()([[()][()][][()]][]))][]([[][()]](([(([[]])[()[[][][](([]()[[()]][([])[][()()()()((([[]]))([]()[()]))[]([]([][([]([(()[(([]))[]][((([[]])([])))]([()])[[(([[[()()][]]]([[[[([])[][][[[[()((()))]][]]]()][()()([]()())][][(()[[]])]]][]])()[()][]))]()[][()]])[((()())()[])]][((()()))]()()[[](())(([])[[]()][])[[()([[]])()[[()()][]]([()]()[]()[[[()]()([[[]()()]])]]((()[([])([()]([]))[([][])][[()()]]()][[[]]()])))[]]]()[(()[])[[[]([])()]]]]((([(()[[()[([][[[]()[]][]][])[]](([[]])[])]])()])()))[])[[[]](()((())((([()(()([]))])[[[]][]([][])(())]([()()])))[(([[]()[[[[][]()([([[()()[]]])](()))[]]]][([](()))([[][(())][]()])][][(()[()()])[[]]]()([])]())([])[][])]()[[([][][[[]]()])[()]()]([[([()])]][()[[([[[][]]]([]))]]][](())([([]((())[([[]])]())[[]][[[[([[([[[]]])][]](())[])[]][(())[][][]]][]]]([((([]))()()())]([([]())]()[])(())))(())[]])[])()]))])()[[[[(())(())]]()[]()[][[](([]))([])][]][]]][[]]))(((([[][[[]]([[[]]]()[()(())])][[](())][[][][]]])))[[]([[[([])[[][]][()()][([]())]][[]()[]([]()()())]]()][()])]()((([](()[[]][()[]]))())[]()()()[()[[()][[()[([])[[]]([])]()[[()]]]]]()])[])[]()(())[(())]](((()[][]()[[[[][[[]](([][][]))[][][]](())([(([()[]([([])()]([()()])[])[()()()[]][[()([[[()(([][]([])))]]()])([])]]][([([[]([[(((())()[])[])]()()[[[[([()[][()]])]][[]([]()([(([[(((([[]((()((([]()[(())((([[][]])))][()])([]))[][]))())]((([]()))([()])()[()])))()))(([]()))]])[[]])([])()]))[][[][]]([[]])]][]()]])((())()[])]())[()]()][])[[[][[(())()]](())]](()()((()()[[[]][]]))[()])][][[]]()))])]][[][(())]][[]][][[][]]][][]))[[]([]()[()[]])[][()]()[[]]])[]])([()]))()()()(())((()[()[()](()[])()[()(([])()(())[][]([[]][[]])((()(()()))())[])[()]]][[]])())()()]]([]))])((([])[([[]()()][((()())[[()()[][(([[[()][()][]]]))()]]]()()(([[[()((())[[[]]()][][])()][]]((([])))()][])[]()[]([]())))])[()][[([[][]([][([]([[]](()[([]()([([()])()[]]))]())[[[([()])[[]][]]([(())]())[]([])()[]([][])]][]()))[][]]())()])()[]][()]()]()[]][[(([([([[[[()[[()[()][]][][]][][(())([])()]]]]()][]([[[][]()()[[()][()](()[]())](((())[[[([[[]]])[(([(([()[]][()[]][([()])()([])]))[]()[()]]))(())[]](([]))]()]])([([()[[]([[]]())[]]][][])][])[])]][()][[()]([](())()([])([[()[()[()]]]][([])]))()(())]))])][]))]()][[()]()[([][()[]][]()[()([]())[][]])]]()))()))]]]]])][([()][]((())())[])]]]([]()()([[(()[])][(())()]((()))[()]])[])[(())]][][]([[([][()]())[]][]()])[][[[](([[[(([()[][]])()(((())()([][])))[[]])[][[]]]]])[])[]([[([]())]()()(([([])](()(())[]())([()](())(([[](([(()[[([])]](()))([([][(())][])])])[[[](()([[([])]]())([()])[[()((())())]()][(([]))[]])[()]]([](()()))(()[()]())()](([]))[][[][]()[[()]][]()((()[]))]()[[[[[][[]]]()]][]](([][[[]]()[]]))())])[[]]()()([](()))()))[])())])([][[()]([((())([([])]))][[()[()()[([])][]]]])])[]()()]])]]))[()[]()[]]()[[[][[]()]][[()[]]]()][](())[(()[])[]])[[[]][[(())]]()]((([(((()()))())[](()[[]])[()]](()()))[[([()([])[[]]])]]))(()()[])]]())((()[])()))(([][])))]]]()[()[()]([])()([])]()][]]][]])][[[[[()()([]()[[]]()[[]]())]]][]((()))([[([[]])]([[][()]][])])][]()(())()[[[]()]([]([]))]][])][][])))])[]()]]][][]))[(())]](()))])([])()()(([][]))))()][()]()[]]]([(()(([]))()())][][]))([[[()]][](())[[([][])[]]]]))][][]()[][[][(()[()[[([]())()]]])[]]])[][()()(([(())][]([])()[()[[]()[]][()]]()()(())[]))](())[]]][]][([()([([])([])]())]())])))[]))][[]([])])]])())[][[]]][])][([[((()))[][([[()]])()]()]])[][]][][[]])([]([[]()](([[](())])[(()([]))]([][([([[]()[[()[[]](())]([]())[([(())[]])]]])()([])]([][]()))])())[[]]([[]])[])())())[[[[([](()))]()([[]([])(([()][([])[[]]][]))])]]()](())]()[[[[[]]([](([])(([()][]()(())))[[[([[]]([[[]][[]]]))]]][()[[]()()]]())([](())))([[](())[([]()[()[([((())(()[[]][()]))][])[[[((()([[]])))[]((()[])())]][][([])][][][]]]]((())())(([][])))()]()[](([[[]][[]]]()[])(((([(()[[[[][]][[[[[[(()[[(([](())))()()][]])()[]()((())[([][])])(())][[][()]]((()([()])[()()]([[(()[])]])[[[([[]()]([](([]()))))[()(())[([])]()]]]](([])[[(()[()[]])]])()([][])(([])[]))[[[[]()]][[](([]()[]()[])())][][()]])[]][[[(([])()([[[]]([][](()[([()([])][]([[][]][()(())][[()[[(([([][])]))[]([[[]]((()))])[]()][()()]]]]([])[][(()[]())([()])][()([])([[]([([][([(([])())])])])])])(())([]([][(()[][]()[])]()[]([](()[()()(([]))]))[[[]]]))([[[]([][])]])())])(([(())])()())((([[][[()]([])((([][]()([]))[])())]])()[()]))[[([](()))][()[[[[[]]]()]()[]]](()[])[()][]])][(()[]()()[]([[([([]([])[])][[()[([])]]()]())[](())([([])[][[([[[]]([[][][]][[][()(()[])][]](()())[[]()])(())])()()](()()()([()[[][]]][[]])())]])()][]][()()]()()[()()])([(()()(()))(()[(([[()[]([[]]()())]](()[[][]][()[([[]]([])[])([])()[][][]]])))[()]])]))]))[[[]][()]]][](([]([])[[((([]))[]([(()[[[[]][]]]([]([(()[])((()([]))[((([[()][([][[]()])[(()(()[(([]))[[]]]())[])[[[]()[([])()(([(()([])[()])])())]][()()]]][(())][[[[()]][(())][][[()]([[]]())[(((()[([(())])][()[](([][(((([])))()[()[([[([[[[[[]()]((())([()()](())))([]())][[([])]]]]()([()[]][])][])]]())()()][(([]))]][]())()][]))[]])()[])([])[(([[([]())[([][[[(()[])(())]]])()]([])[[[]()[]][([[[][]]()[]])]]]()]))()([[]][][](()[][()[]]))])]((()()))]()[]][(((()([([])]))[()[[[]()]]]))([[[[]]([[()]][()])]])[][[[]]]]()]()[]][]()([(((()[][[]])))[]])[[()]][()([[]])]])())[][])[]()[]][[][()(())][]]())[()()(())](())[]])([]())(([()[([])]])([][((((())())))()](([()[]()()](())()))())([(())((([])())()[()[()]])][[]((()))[()[]](([]([()()])([])())[[[[()()]][[]]][[]]][])(([]))][])([])([]))()[[()[]][]])([][][()[]()]()[()[]][(())[]]))])())[[]]][]])[[]([])])[]([]())]([][((()(())[])[()]([][]))(())()[()]])()]]()(([[]])[(()())()](([[(())]]))()[])]()]]]]()())][()()]))))[([]()(())()()[[[()(())()[][](([(([(()[[[](()[[]])[[]]]][[([(()[[[][[]]()(((())(())([(([[[]()]]()([][]))()[])][])((()))))()([[]][()]())][()]])((()[]))()[[](([])((())()[()[]]()([][[]([[[]][]][]((()()(()))()))[()]](()[[]](()())[])))([[[]]]))]]()([([[[[[[]][[()[][()[([][(([]))()[([()])(()())]()[]]([]([(())[]])))()](([()()]))]]()()[]]]()[]][[]]]])]))]][()(()())((([()()])))[]()()])[]][])())])[]([])[()[[][()][]]()])[]][][]]])])([([[[]()[[][(())()()][]()]]()[[][][]]]((([()]())((([()]()[[][][]])((()()()[]))[][[[]()]()]))))[]()[()()[][]]()([()]))])][][()](((([][][][]()()[()](()([()]()()[(([([])]()))]))([]())())()()[]))))][[()]]](())][][[(([]))((()([[][]])[()([()([([((((((((()[][]))(((()())[])))(([][[]((([(())]((([[([])[][((([][[()]()]())))]]()]([(([]()[([(()()[(()[()([]()())[[]]([[]][][](()))]([]())())][()][[][]([])()()[()()]([[][([])][(()[]()[[]([(([()()(([]))[[()][([[][[()()]]][])]]][[[[]()()]]()()([])])(([])[[]]))()()([](()))()])(([(([[([])()][][((())()(([])[]))()]][[([[[[()([[]]([]())()[[[[]]]]([][][()()()])[](()))][]([])[]][]][]]()[])([]()[]())][]])([([](((())()())[])()([((()[[[[]([](()[[]]([][](([])([][](()[]))))())(()[()[](([]))][][]))()][()[()]()](([()()[][[(([][()]([[][]])[[(()()()[])][][][]]))[()]]((()))[]]]())[(()())][()[]()][])[[](([]))[]]]()](((([([])]))([[]]))[[[()]][]])))([[]][[][][]])[[()()(()([(()([[]((())())])[[]][[][]])([[][]])])(([()])))][[]()((()()[[]()][[(())[]()]([()()][()([](()))][])[]]([])()[(((([[]]))(()[][[]]()())))[[[[]]()(([()()()(()()[()])]())())]]]()[[()]])(()()(([[[]][[[[()][[()][[()]][(()()[])]][][]]][][]]]))([([[][[][][][]]])[[]][][](()())(([()][]))()][[]([[[()[]]([]())([])](([]))[][((([([()(()())](()))]))())]])([[]])][()()])(()[()]([([(()())([][()()][(()[])()]()(()[[]()][[][[[(())()]](())[]([()()][]([[[][[]((()[]()())[[[[[[][(([([[](())][](()(()[[()]])((()())([]([][])))[([[[()[[]]]]])[[][]]((()[[(())[[()[]()]]][()]()][]()[[]][[()]][][][])[([])(())[[](([][([[]][[][](())()[]][[[[]](()[])][[]]])])([([[()]()][]())[()[(()[()[[]]()])([[]]()([[[]()][]()[][()]]))([]())]][]]))]()[(())]([][[]])()])]()[][][])[()][])[()[[([])][]([[()]([])])[[]([][][()])[]][][][()][]([[[()][()][]]])[([()[]()][]())]]()()]((()[]([[(()(([]()[(([]))[]])([]))[])]][])([([[[]][[([]([[]][[()(([]()([])))][]][([]([[]([])])())()])[])(([][()([])][[()]][[][]])(([[()()[]][]][[]()])())[[]()])[]((())[]([])()())[]]()]])]([]()[]())[][])((()))([[()](()((()[(([]))()[[]]])[([])][([])()[([[][[]]])(([[]]))][[][()](([]))]()]([])))])[])[([])()([](((()[]))()))[]([()][[]]()[])]([]))[[]([][])[[[](([])())][](()())[[][()]][()]]]]([[[[]([])[[]()][[]((()))()]]]()[[]][[[(([])()([[[]]()]([()([[[(()(([][()](())[](()[]())))()()[][]((([][][]))[][](([([()][(())][()][])()]))))]()()(())[][[[]([](()))]]]()[]][][([][[[[]][]]]()[])[]([]()[[](()[[]](()())(()))()()(()[])[]()[()]])])[[(([]())([]))]][]()])()))]]]()[()()]])())(([])()[][[[[][][[]]]]][[]]())[])]()]]]()[(([()])([[[(([]))]]([()([[([][(())])[([])(())][]]])[()]()])()[()[()][()()]([])][(())(([])[])]]([(([]))])(([]))))]]])[]]()][[]]]([])()))()]()])())])])[])[])[]([]))]()[()((([]))(([(())((())(()[[([[([])]][((([(([[]]()[]((([()[][]])))[])[])][(())])))][[()][][]])]]()()))])((())))[([[[(()[])]]]([](()([[][](())](()[[]]([]))[[[]]((([])([[[(()([][[([])()()([]())][]])(([[[]][][][()]][[[]()[[[[][[]()(())]](())]]]()(([]([[[[[]]]]][][()([(())][(())[](()[])]()(([]))[[]][])]()[])([][][]()))[]([()[[][((()))]]]))[]])([[]][])(([][]()[]))(())()()()[[]]()[])())]]])))]))))])]]]))]))]))])]])])])]))])))))))])))))))])])])]))]])])]])]))]))]])])]]])])]])]))]]))))]]]]))])])))])))]]])]]]))))])]]]]]]]]]))]])])))]]]])])))]))))])]]))])]]])))]]))))]))]]]])])))]])))))]]])])]]])))))]]])])))]]))]]])]))))))]])])]]]]])]) ([([(([[[([(([[[([[([((((((([[([[([[([[[(((([(((([(([[[[[([([[([([[[[[[[([((([[([[[[[((((((((([[((([[[[([[([[([[([(([[(([((([(([([[([(((((([[(([((([[([([(([((((([[(([[(([[([[[([[(([([(([[(([[(([[[(((([(([[(((((((([[[[((([([(([[[(([([([([[[[[[((([([(([[(((((([(([[[[(([[((([[[[(([[([((((([([([(((([(((([([[[[[[([[([[[((([([[(([(([[[(([(([[(((([(((([[([((([([(([([([((([[((([([((([([(([([([(([([[[(([([((([[([([(((([(([([((([[[([[[([[[([([(([([([[[(([[[[(((([((((([([[[[[([[([([[([[[((([([[[([[[([[(([([(([[[(([[([((([([[([[(([[([([((([[[[[[[[((([[[(([[([(([[([[[[(([((([[[[[[((((((([([[[(([[((((((((((([[([[(((([(([[([[(((([([([[[([[([[[[[[(([([((((([[[[([((((((([[[([(([[[([[(([(((([(([[[[((([((([[[[[([[([(([[((((([([[([[(([([[[([[([([[[[[[[[[[([((([[([([(([[[(([[[((([[([([((([[([([((([([[[(((([[(((((([(([[[[((((([((([(([[[(([((((([([[[[[[(([[[([[[[[[[[[(([(((([[[[([([([([([[((([((([[[[(([[[[[[[[([[([(([([[([(([[((((([([[[[[(([[(([[[[[[[(([[[((([([[[(([[([[([([(([[[([(([[[((([[[([[([[[[[([([[(((((([[([(((([[([[([([([[[[[([[(([[[(([[[([(((([[([((([[[(([[((([((([[([[[[([((([([(([[([([[[([([[([[[(([[(([([([[([[(([((([[[([[[[[(([[((([((([([([(([[((([[[(([[(([[[([[[(([((((([[([(((([([[[[([([(([[[(([[([((([[[[[[[[[[[((((((([[((([([[(([([[(([[[((([[((([([([[([[[([((([[[([([([[([[(([(([[(((([((([([[([([([((([[[([([[((((([[([([([[[(([([(([([((([[((([([(([([[([[(([([[([[(([([(([(([([[[([[[[[[[((((([[[(([((([[(([((([([([((([((([((([([[[[[[(([((([([[([[[[((((([[[([(([(([(([[[([[[((([[[(((([(([([[[[((([((([[([[[([([[([([([(([([(((([[([[[[[[[[([[(([[[((([((([[(((([[[[[[([[[([(((((([([[([([([[(([[[[[[[[[[[(((([([[[(([([(([[((([(([(([[([[(([(([([([[[(([[[(([[([(((([([([[([([([([(([[[[[([[([([([(([[(([([[(((([((([(((([([[[([([(([[[[([([[([[([[[(((((([[([(([[[(([[((([((((([([((([([(([[[[[((([([[[((([(([([(([([[([([([([[[[([(((([[([([[((([(([([(([[[([[(([(((((([[[[(([[[([((([[([([[[[[[(([([(([[[[[([([(((([[[[[[(([[([(((([[[([([([[[(((([((((((((([([[((([([([(([((((([[[(((([((([[(([[[[[(([[([[((([(([[[([([([[([[[[([(([([([[[([[[[[[(([([(([([((([[[([(([(([([((([[([((((((([[[[((([([[(([([(([([(((((([[(([[(([(([[[[[[(([([[[(((((([([[(((([([[([([((([(([([[[[(([([[[(([[([([(([[[([[(((((([(([[[[([([[[([([[[(([(([[([[([(((([([(([([[[[([([[[(([([((([([[[((((((([[([(([([[[[[[([[[((([[[([([[(([[((((([([([[[([(((((([[(([[[[[(((([[((((([([[[(([([([[[([((([[(([([(([[([([(((([([([[[[[[[([[([([[[[[[[[([([([[[[([(([(([[([[(([(([[([[[((((([([([(([((([(([[((([[[[[[[[([([[(((([[[[[[[[[[((([[([[([[([[([[([[[([[([(([[(([[[[(([[([(([([[([[[([[([((((((((([(([[(([[[([[[([([([[(([([[[(([[(([(((([(([[[[((([([[[(((([[[[([([[[[[[[[[(((([([(((([[[[((([[[([[[[([[(([[([([[[([(([(([(([[(((((([([([([[[[(([[[[[([[(([[([([[([([([[(((([([((([[[((((([[[[([([([(((([([[([[[[[([(((([(([(((([([[(([([([([((([[(([[((((([([(([[[[((([(((([[[([([[[([[[(([[[[(([([[(([((([(([[(([[([([(((((([([[([[[([((([([[([[(([[[(([[((([[[[[(((([[[(((([[((([([(([((([[(([[((([(([([([[((([([(([([[[[([([([[[[[[(([([((([([[(([(([([[[[[([[([([[[[[(([[[([[([(([[[[[([[([[[[[([[[(((([([([([[[([([([([[([([(([[((((([(((((([([(([[((([[((([[[[([([[[([(([[(([(((([((((([[([[[((([([(([((((([[[[[[((((([[(((([[((([[(((([[([((((([[(([[[[([[[[([([(((([([[[[[(([([((((((([([((((((([(([((([[[[[[[[[[[[[((([[((([([[(((([(([[([([[(([(([([([(((([[[[([[(((([[([(((([[([[[((([[(([(([([([((((([([[[(((([[([(([[([[[[([(((([(([[([([([[(([((((((((([(([[[(((((([[[[((((([[([(([((([((([[([[[[([[[(([((([[(([((((([[(([[([[([[(([([[[[(([([[([([[[[[[[[[([[([([[[[[[(([(((((((([([[[((([[[(([([[[[([[(([(([[[([[[([(([([[[[[[([[((([(([[(([[((([((((([[[([(([(([[[([([(([[([(([(([[[([[([[([[[[((((([[[[([[[((((([[[([((([(((((([[[[(([([([(([[(([([[[(((([[(([[[([[(((((([[((((([[([([[([[[(((([[((([[[((([[[[[[(((([([[((([[[(((([[([[[[[([([[[[[[([([(((((([(((([[((([(([[[[[[[([[(((([[(([([[[((([([([([([(((([[[[([[((([[[[(([([[[[([(([[([([[((([[([[[[(([[(([((([[[[[((([([(((([[[[(((([[[(([([([[[((((([([([[((([[[(([[([[[([[[((([[[([[([([[((((((([[([([(([[[(((([[([(([(((([[[([(([[[[[[[([[([[([[[[[[[(([((([([([[[[[[(([((([([(([([[[[([((([[([[[[(((((([((((([([[[(([([[[[([([[([[[(([[([[([([[(([([[([([(([(((([[([((((((([(([[[(((([[[((([(([((([([[([[[([[[[[([([[[([([(([[(([[((((([[((([([([[[(([[[(((([(((([[([(([[[(([(([[[[([[[[[((([([[([[[([[(([((((([([([(([([[([([[[[[[([[((([[(((((([[[([((([[[[([[(((((([[[([(([(([(([[[(([[(([[([[((([((([([[(([[(([[[((((([(([((([(([(([[([([([(((([[[[([(([[[([(([(((((([[(([([([(([[(((([(([((((((([((([[[([(([((([[(([(((([((([[[[((([[([[[(([(([(([[((((((([([([[(((([[(([(([[([(([([[[([[[([[([[[(([(((([(([([(([[[[[[[(([[[((([[([(((([[((((((([[(([[([[([([((((([(([([([[([[[([(([[([([([([([[[[[(((([(([([[[([[[(([(([([((([((((([([(([([([[(([[[[([([([[[((([[[([[(((([[(([[(((([[[((((([[[[((([((([[([(([[(((([[[[[[[([((([([([((([[[([([([[([[[([[(((([(([((([[(([[[[[[[[(([[[[([([(([([([(([[(([[((([((((([(([[[[([([[((([[([([(([[[[[[(([(([[((([[(((([[[[((([([[[(([(((([(([[[([((((([([(([[[[((([[([(((([(((((([[[[(([([([[[([(((((([([([(([([[([[(([[[(([[((([((((((([(((([(([[([([[[[([([[[[([(([(((([[((((([[[[(([[((([(([[[[[(([[[([(([[[([[([(([[[(((([((([(([[([[[((((((([[[[[[([[(([([([[[(([(((([([[[[[[[((([([[[[([[[((([((([[[[(([[[(([(([([([[([([(([([[([[[[(([([[(([[[[[[[([[([((((((([(([[([(([([[[[[[([((([[([[((([[(((([[([(([([[((([(([[(((([[[([[((((((([([([[[(([([([[((((([([[((([([(([(([[[(([[(([([[([([(((((((([((((([([[[((((((([[(([([[[[[(([([[(([[([([([(([[(([[[[(((((((((([([[[([(([[[([[([((((([[([((([[([[(([([[[[[[[[[((([[((((((((([((([([(([([[[([(([(([[([[(([[[[((([[[((([[[[[((([[([([([[[(([[([[[([((([[[([[((((([([([([[(([[[(((([[[([[[(((([([([(([[((([([[[[[[[((([(([(([(([[(([([([[[((([[([([[[(((([(([([([(([[[((((([(([([[[[[[([[(([[((([([[(([[[([([([([([[[[([[[([[[[[[[[((([([[[[[[([(([(((([([([[([[[[((([(([([((([([(([[[[([([[(([([((([[([([[[[([(([([([[[[((((([([[[(([[(((([[(([((([[[[([(([(([[(((([[[(([[((([[[([[(([[(([[[[[([([([([([([[[[[([((([([[([(((([([([[([[(([([[([[[[((([[(((((([[((([([(([([((([([(([[[[([[(([([([[((((([([([[(([[([[(([[(([[([([[([[((([(([(([[[[(([[([[([([[(([([(([[(((([([([((([([[[[[[(((((([[(([([((([([[[([(([([[[[[([[([([((([((([[(([[[([[[[([([[((([[([(((((([((([((([(([[(([(([(([([[[[[([((([[[[[((((([([((([[[(([[([[(([[(([(([[[[(([[([[[((([[[([(((([([[[[([(([[([([[[([((([[[[(([([[[[[((([[[[[((((([[[[[[([[([(([((([(((([[([[([[(([[((([[((((([[([([[[(([[((((((([([([[[[([([([([([([[([[[([([(([[([[[([([[((([[(((([((([[(((([((([[[[([([[([[[([([(([([((([[(([[([[[([([([(((([[([(((((((([[(([((([(([((([([[[([[((((([((([[[((([([[[((([(([[(([[(([(([[([[(([(([[((((((([(((((([[[[[[[[[[((([[([([[(([([([((([(([((((([([((([[[[[(((([([[[([[[([((([([[[[[[(([(([(([(([([([([(((([[(([(((([[([[[(([[([([[[([((([(((([(([[([([([[[(((([(((([((([[([[[([([(((((([(((((((([((([[[([[(([[((([[([[[[[[[[[([([[((([((([([[[([[((((([([([[([[[([([(([[(([([([((([[([([([[[[[[([([[([(([(([((([([((([[[([([[([[[(([([([[[([((((([[[((((([[[[([((([([[[[(([[((([[[(((([[[(([([([(([([[(((([[([[([[[[[([[[([[[[([[[[((([((((([([[[[[[[[[[[[[((([(((((([[[[[[[(([[(([([([[([(([[[([[[([[([(([[((([[[[([[[([[([([[(([[([[[[([([[([[[[[[(([([([((([([[(((([[(((([([[[[[([[(((([[(([((([((([[([([(([[(((([([[([[[[[([((((((([[[(([([([([((([([[[[[((([[[(((([([[([[[(((([[[[(([[[[(([(([[([((([[([[((([[[([[(([([[[([[[[([[[([((([[(([([[[([(((((([[([([[[([([(((([[[[[([([[[[([([[(((([(([(((([((([[([(((([(([[[((([[[([((([[[((([((((([[[((([[([[[(([[((((([((([(([[([([[((([[(([([[(([[([([([[((((([(((([[[(([(([[([(([(([([[[[[[([([[([[(([[(([[((((([([[[(([[[[(([[[[[(([(((([[([[((([[[[([[([([[([[[[([([[[[(((((((([(([((([[[[[[([([[[[(([[([[([((([((([[((([[[([[[([[((((((((((([[[[[[[([[(([[[[[(([[[(((([[[[[[[[([(([((([(([(([[([[[([([(([[[(([[([([(([[[[(([(((([(([[[([(([((((((((([([[[([((([[([[[([([(([([(((([[[([([[[(([[[[[([[[(([([[[([[[[[((([(([[[([[[[[([((([[[([([[([[((([(([([(((([(([(((([[((([[[([((([[[([[[([[([(([[[((([((((([([([([([[[([[(((((([[[([(([(([([((([((((([[[[(([(((((([((([[((([[[[(([([[[[[([(([[[([[[([[[([([([((([[[[[[[(((((([([[[[([([[((((((([((([((([([([(([[((([([(([(([[[([([[[[([((([[((((([(([[(((((([[[[((((([[([[(((((([([[([[([(((((([[([[[[([[[[([[[(((((([((((([[[[(([([[[[([([([[[([[([[[([([(((([((([[[[((([[[([([[[[([(([[(((([[[([[([((((([[([[[(((([[([[([([([[([[(([(((([(([[(([([([([[[([(([([[[(([([[[[([[(([[[([[([(([([([([[[[(([[(([[((([[[[([[[([([([(([(((([[[(([([((([([[([(([[([[([[[[[[([(([([((([(([(([([([([([[([[((((([[[(([[[([[[([[(([[(([([[(([([[[[(((([(([[([([[(([[[(([(([(([((([[[[[[[[[([([(([[([([[([([[[[(([[(([[((([([([([[[([[[(([([([([((([[[(([[([([[[[(([(([[[([[[((([[[[(((([([[([([([([[(([([[([[[[([[[([([[[[([([([[[[([[(([([([((([(([[([[[[[[[([[[[(([[[[[(([[([[[([(([[([[[(((([[[(([[([[(([((((((([([[[[([[[([(([((([([([[[([([([[[((([[(([[[(([(([([[([[([([([[([[[[[([[([([[([([[[([(([[[[((([([(([[(([[[[(((([([[([[([([[([[[(([[[[[[([(((([([([[[[([[((([(((([([([(((([(([([([[(([([([[[[[[[((([([[[[[[[[(([[[(([((([[((([[([(([([[[(((([[[(((([[([[[[[(([[[([[[([[[((([(([[((([[(([[(([(((((((((((([[(([([([(([(((([[([[([([[([[[[[[[([([[(((([[[(([((([([[([(([([((([[[(([[(([[[(([[((([([[[[([[[[(([(([([[(((([([[[[((([[[(([(([([[[[((([[[[[[[(((([(([(((((([([(([[(([([[[[([(([((([(([(((((([[[[[((((([[[([((([([[([((([((((([[[[(((([[[[[([([[[[[([[[(([((([[((([((([([([[((((([((([([[([([([[[[[[([(([[[[[[([[((([([[(([([[[((([(([[(([[([[[[(([[[[[(([([(([[[(([([([[(([([(([(((([(([[[((([([[[[(((([([[([((([[[[((([[[[([([[([[[[[[([[[[([[[[[[([[[([[(((((([[[[([([([[([(([([[([[([((([[[(([([[[[[(([[(([([[[[(([[((((([((([[[([([[[[((([([[([(([(([(([[([[[[[[[([[(([(((((([(([([([(((([[(((([[[(([[[(((([[(([((([([([(([[([([[[([[([(([([[[((((([[([([(([[((((([((([[([[[[([[[([[[([[[[((((((([(((([(([[(([[[[([[[(([[[[[((((([(([((([([[(([([(([[[[[([[([([[[[([[[((((((([[(((((((((([([([[([([((([[((([[[(([(([(((((([(((([([[([[(((((([(((([[((([([[([[[([((([[[[[([[(([([[[[[([([([[[(((([(([[[([[[[[(([(([([((((([[([[((([[([[[[[[([([([[((([[((([[[([[[([([[(([[([[[([[([[[(((([([([(([([[((([[(([(([[[[([[[(([([[[[[([[((([[(([[([(([([(([[([([[([(((([([(([[[[(((((([[(([([([[[([[[[[([[[((((([[[([([(((([[((([(([((([(((([[([[[[[([((((([[([[[(((((((([[[[([[[([[(([[[([(((([((([([([([[([([([[(([(([[[[([[([(([[[[[[([[[(([((([((([((([((((([([((([([([[[(((([(([([([[([[[([([([([([[[[((([[([[[((([[((([[([((([[([([(((([([((([([((([[([[[[[[((([[[[[((([[[((([[([[[[[((((([((([([([[[([([(([[([([((((([(([[(((([([(([([([[(([([[(([[(([[[[[[(([(((([[[([[[([(([([[(([[[[[[[([[((((([([((((((([[[(([((([((((([[([(((([[(([([([[[[((((([[[[(([([[[[[([(([[[[[(([([[[[([([([(([(([(([((((([[([(([((([((((((([([([[[[((([((([[[[([((([([(([[(([[(([(([[[[[([(([([[(([[[([(([([[[[[[([([[[(([([((([[((([([((((((([[[[([([[([[(([[[([([(([([[([([[[[((((([(([[(([[[((([[[[[[(([(([[[[([[([[[[((([[[[(([[([[((([[([[[[((([[(([([[[[(((([([[(((((([[([[[([([[[([[([[([([((([(([([((([(((((((([[([[((([[[[([[[[([[([([(([[[(([[[[[[((([(((([(([[([[((((([[(((([([[[(((([([((([[((([[[(((([([[([((([[[[(([[((([[[[([(([[(([[(((([[((([([[[[([[[((([[([[[(([[(([(([(([[(([[([[([[[[[((([[[[[((([([([[[[[[([[[((([(([[((([([([[([[([([([(([[[[([(([(((((((((([((((((((([([[[[[[([[(([((([((((([[([[([([[((([[(((([(([[[([[[[([[[[([[[[[[(([[([((([((([(((([([[((([[(([([[([[[[(((([[([[[[([([(([[([((([[[[[([[([[([([((([((([((([(([(([(((((([([([[[[([[[[[[([[((([([[[[((([[[[[[(([[([[([([[([[[([([([[([([(([[([(([([([([[[(([((([[[[[([((([[[[(((([([[(([((([[(([[([(([[((([(((([[([(((([[[[[([([([([((([([[[[((([[[([[[[(([(([[([[([(((([[[[([[([((([[[([((([[([[[[[([((((([[([(((([([[[([(((([(([[((([((([(([[[([([([([((((([[[[[((((([[[([([([[([((([[[(([((([[[[[[(([((([[([[([([[(((([([((([([[[[(([([[[(([([([([((([[(([[([[[[([[((((([([[[[([[((([[[[([([([(([[[[[[[[(([(([[((([([[((((([([[[([(((([(([[[[([[(((([([([(([[[[[(([[((((([[([[[([[(((([(([([([([[([([[[[[[[([[[(([[([[[(([[[([[[([([(([[[[[([([((([[(([(([(([(([[([[(([[([[[((([[([(((([[[[[[[(([(([([[([([[[([[[[[([[((((([[[(([([((([[[([[[[([[[([(([[([(([[([[(((([(((((((([(([((((([[(([[[[[([([[[(([(((([[[[([[[[[[([[([[([([(([[[[[(((([[[(([([([[[[([(((([[[[[([([[(([[[[([[([[[[[[(([[([[([[([[[([([([([([(([([[[([[([[[(([[[[((([[[[[[([[[[[[([[([[((([([(((([[([([[[[(([([(([[[[([(([[[([[[[([[((([[((((([((([([(((([([((([[[[((((([([[(((((([[(([[([([([(((((([([(((([(([[([([(([(((([[((([[([([[([[(([[[[([([([([[[(((((([[(([([(([[[[[((([[([[([((([([((([[([[([[([([(([[[([([((((([[[[[(((([[[([[(([([[(([([(([[(((([[[[[[[[([[([((([(([[([[([([[([[([[[[([(([[[[([([[([([([([[([([([((((((([[(([([[(([[[([[(([[[[[([[[(((([[([([(([([[(((([([[([[(((((([([([((([[[(([[((([(([((([(([[[[[[[[[(([[([([[(([[([[(([(([[[(((([[([([([([[(([[([((((([([(((((([((([[([([[[([(([([([[((([(([((([[[[([[([([[[(([[([[((([[(([[(((((((((([(([([(((([([(([(((([((([([([(([([(([[((([[[[((([([[([[(([(([[(((([([([[(([[(([(((([((([[((([[(([([[([([[(((((([(([[[(((((((([[[[[(([(([([[[([[[[([([[(([[(([[(([((([((([([[([(([([(([[([([[(([((([(((([((([[[[((([[(([[[([(([[([[[[[[[(([((([((([([([[[[[(([((([([[([[[[((([[[[[[[[[[[(([[[[[(([([[([[[(([([([([([([(([([(([((([([((((((((([([[([[[[([[(((([[[[(([([[[[[(((([[((((([(([[(([([(((([[[(([([[[(([(([([([(((((((([[[([((([([[[([([[(([[[(((([([((([([[((([[[([([((((((((([[([[([([[(((([[((([((([(((([[((([([[((([([[([[([([([[[[(([((((([[[[((([[[(([(([[[(([[((([[([(([[[[([(([[[([[[[[[(([([[[[([[[[([(([[[([(([[([([([([[[([[[[[(([((([([[(((([[[([(([[[[([[[((([[(([([(([(([[(([[((([[([[([([([[[(([[[([[[([[([[([([([([[([([([[[[((([([[[[[([([[[([([[[[((([[[[([[([[[([(([(([(((([[([[((((([[[[[((([(((([[(([[[((([(([([[(((([(([[([([[[[(([([([[(([([(([[[[([([[(([[([([[(([(([(([[[((([(([[[((([[(([(([([[([([[(([((([[([([[[[(([((([(((([[([[[([([(([([([([(([(([(([([[((([[[[(([([[(([([((([[[[[[([[[([[[[([(([[[([(([[([(([[[[(([(((([((((([[[([(([[[([([[(([([([([([[(((([[(([([[([(([[[[[[[(([[[([[(((((([([([([([([(([([[(((([((((((([[([[[[[[[[([([[(((((([[(([(([[([[[((([([([[[[(([[([[[[(((([([[[[([[(([[((((((([[[[[(((([([((([([(((([([((([[[[([[([[((((((((([[([[[(((((([([[([[((([[(((([(([[[[[(((([[(((((([(([[([[([[[([[[[[[[[[[((((([[[[((((([([([([([[(([[([([[([[([[[[[([([[((((([[(((([[([([([[[(((((([[((([[[(([([(([[([[([(([([(([[[((((([((([[(((([[([[[[[[(([(([(([[[[(([([[((([([(((([([([[[[(([(([([[([[([[[[(([([[(([(([[[([[(([((([[([([[[[[[([[[[([([[([[([[([[(([([[((([[[[(((([[[([([([(([((((([([[[[[[[[[([([([(([((([[([[((([[([[[([[[([[[([(([(([([((((([[[([[([[([[(((((([[([(([[([(((((([[[[[((([[([[[(([((([[[[([([((([((([[[[[[([([([(([([[(([[[[(((([[([([([[[[[[[[([[[[(([([(([([[((([([[((((([[([(((([[([([([([((([[[[[((((([[[(([[[[([([([[[[[[([[(((((([(((([(((([[[([[(([[[([([[((((((([([[[([[[((([(([[[[[((([[[(([(([(([([(([([[[([[[[([[([[[([((([[[([(([([(((([((([(([[(([([([[([[([[[[([([[(([([([[([[[[[[([[([((((((((((([(((([(((([([([(([(([((([([(((([[((((([([[((([[[([[((([[[([((((([([((([([([([(([[[[([((([(((((([[([[((((([[[[[([((([[[[([[[(((((([[((((([[[[[([((((([[[(([([(([(([([[([([([(([([[[([[([([[[([[((([(([[[([[([[((([(([[([[([(((([([(((([[[[[([([(([(((([(([([((([[((([(([[(([[[[[(([([[((([((([(((([[[([([(([[([([[[[[([([([((([[[([[[[[([(([([[(([([(([((((((([(([[([[(((([(([([(([([([[[([(([((([(((((([[([[[([[((([[[([[[(([[[(((([[[[[([([[([(([[([[[((([[[[[((([(([[[[([[((([[[[[[[([[[([[[(([[((((((([((((((([[[[([([[[([(([[((((([[([([[[([([([[[[(((([(((([(([[(([([[[([[[([[[(([((((([([([[[[[([(([[([[[[((((([(((([(([[[((([([[[[[([[[[[[((((([((([([((((((([[[(([((([[([[[[(((([([[([(([(((([[[([([([[[([[((([([(([[([((([[[([[[[((([(([[([[[([([[(([(([([[[(((([([[[([[([(((([[[[[((([[[[(([([[[((([[([[([([[((([([[[([([[[[[((([[[((((([(([([([[[[[[[[([[[((((((((([[((([[(([[([[[([([([[[((([[[([([([([[([((([[[([([(([([[(((([[[([(([([((((([[[([[([(((([[([[[[([([([([[[[((([[([([(([([((([([([(([[([((((([[(([[[([([([([(((([([([([(([([([((([([[[[([[[[((((((([((([([([[((([[[((([((([[([([[[([([[[(([((([([([[((([[([(([[[([[(([[[[[[([[(([([[[[([([((((((((((([[[[([[[((([[[([((([([[(([[[([[[(([((((([[([(((((([[[(([[[(([[(([([([[([([([(((([[([[(([([(((([[[([[([[[((([[([([[[[[(([(((([[[[(((([([([[[([(((([([([[[[([[([[[((([[([[[[([([[(([[[[([[[[([[(([((([([[[[[((([[[([[(([((([[([[[[[[([[(((([([[[([([[[([(([[[[[[[([([[[[([([[[[([((([[[([(([[[([[((([[[([([(((([[[(([[(([[[(([([[[[([([[[[[[[[[[[[[((((([([[([[([([(([[[(((([((([(([[(([[(((([[[[(([[([(([[((([([([([([[((([[[[[[(((([[[([([([([[([[[[([[([((([(([[[(((([([([([[([([([([[[(([([(([([[([([([([[[([[[[[[(([(([[[[[[([[[(([[[([(([((([([[[[[[([[(([(([([[[((([([(([((([(([[[([[([[([([[[[[([(((((([([([[(([[[(((([(([(([([([[[[([([([(([[(((([[((([[([[[[[[[([[[[[[([((([[[[[((([([(((([[[(([([[[((([[([([(([[(([([((([(([[([[([[[[[[[[((([([([[[((([[(([(([[([(([([[([[([[(([([([[[([[[[((([((([((([([[(((((([[([([([[[((([[[[(([((((((([(([[[[([((([([(((([(([((((([((([([[([[((([(((([(([((([[[[[[([(([((((([[([[(((((([([[[(([(((([([[([((([((([[[[[([[[([([(([[[[[[[[[((([[[[[[[[([[[(([[[((((([([([(([[((([([[(([[[(([[[[[([[[[[[(((([([[[((((([[[[([[([(((((((((((([(([([[[[[[(([([[(([([[[(((([([([[[((((([(([[[((([[[(([([[[[([[[(([[([((((([(((([(((((([[[((([([[[[([[[((([(([(((([(([([[[([((((([([((([[[[((([(([[([([[(((([[[(((((([[[(([[[(((([[([[[([[(([[(([((([[(((([[([([[[([[[((([[[(((([[([([[[[[[[[(([[([[[((([([[([[[[([[[((([[[[((([([(([(([([(([[[[(([(([((([[(([((((((([[[([([[((([[([(([[[(([([(((([[([[[[(([[((([([[(([([([[[([(((([[[(([([[((((([(([([[[(([[(([[[([[[([((([((([(((([(([((([[([[[((((([[[((([((([([[((([(([[([[([[[([[([[([[((([[[[[(([(([((([[([([(([([[(([(([([([([[[[([[[[((([(([[([([((([([[((([([[[([[([[[[[([([[[[[((((((((([[([([[[([[(([((([(([[[[[[([[[[([((([[[([[[(([(([([[[((([[[[(([(([[((([[(([[[((([(([((((([(((([[[([([(((((([((([[[([[[[(([[((((([([[[[[[[((([([[([[[([(([(([[((((([[[[[((((((([((([[[[[[([[[[([((([((([([[([[(([([(([[(((([[[((([(([[[(([[(([([((((((((((([[((([(((((([([[([[[([[[([(((([[[[([([[[([((([[[[[(((((([(([(([[[[((([([([([[([[[([(((([[[[([[[[[([[([([((([([([([([(((([(((([[([[[(((([([([(([[[([[([[[[([[(((((([([((([[([([(([[[[((([[[([[[([([[([(([[[[[(([(([([(([[[([(([([((([[(([[([[(((([((([(((([[(([([(((((([[[([[[[[[([[[([(((([[(([([[([((([[(((([(([(([([[([([(([([([(([(([[(([[[[([(([([[([(((([((([[[([[(([[[[[((((([[[[([[[([([[([(([(([(([[[[[((([([([((([(((([[(([[[[([(([(([[([([[[[([(((([[[[[([(([([([[[([[[((([([((([[(([[[[[[([([([((((([([[[(([[[([[[[[[[((([([([((([(([(([(([(([([[[[(([([[((((([([(([[((((([[([[[(([[([[([[[[([[[[([(([[([[[[([[[[[((([(([[(([([([[[([((([((([[([([[(([([([((([[([[[([[(([([[[((([[[([[[(([(((([[([([[([([(([[([[([([[[[[([[[[[(([([[((([((([(((([[[([(([[[([(((((([[[[((([[[(((([[[[((([(([[([[[((((((([((((([[(([(((([((([[(([[([(([[(((((([[([[[(((([([[(([[([(((([([([((([[[[(([[[[[[([((([((([[([([[([([(([[[[([[[(((([([((([[([([[([([[(((((([([((([(([([[[([[[([[([[([(((((((([(([[[[[([([([[[(([([[([[[[([(([[[[[([[[([([[[[(([([[([(([([[(([(([[(([(([([[[[[[[[[([[[([[(((((([(([[(([[[(([([[(([[((([[([([(([[[([([[(([([([(((([[[[(([[[([([((([[(((([([[([[[[[([(([(([[([([[[(([([([((([[((([((([[[((([[[(([(([[([([((([([[[[[[[(([(([([([[[[[[[[[([[[(((([((([((([[(((([[[((((((((((([[[([[((([[[(([[[[((((([((([[[([([(([[(([([(([([[((((([[([((([(([((([[([(([[([[[(((((((([[([[(([([([[(([([[((([[[(([[([([[[[([([[[(((([((([(([([((([([([[(((([[[[[[((([((([[([((([[([(((((([[[([([[(((([[[((([[[([(([[[[[[[(([([((([[[([[[(([[[((([(((([(([[[([[([[([[((([[([([[([(([[([(([[([([([([[[(([([([([([((((([[[[[(([[([[([[[([[[([([(((([[(([(([([[(([((([(([[[((([[(([((([[[(([(([([([[([[[[[(((([[[([[(([([[[[(([[(([(([[([[[([([[([[([(([[([[[[((([((([[((([[(([(([(([[((((([[[([[([[[[[[[([[[(([([[[[([([([([[[([([[[([((([[[[([([([[[[[([[[[[(([[([[[([[([[[(([(([([[([[[([[[((([(([([[[(([[([[((([([[(([[([[([((([[([[([[(([[[[[([[[[[[([((([[[[[([[[[[((([(([[[[[((([[(((((((([[([([[[(([([(((([[[[((([[[[((([[[[(([[(([(([[[[[(((([[([(((([([[[([[[((([([[(([([((([((([[([[[[[[[[[[([([[[[(([[[(([[([(([[([[[[[(((([[[[[([[[[[[((([[[[[[[(([((((([((([(([([([[(((([[[([[((([(([[(([[((([[[([([([[[[[([[[(([[[([[[(([([(([(([[(([[([([[([[(([[[([([[[[[((([[[[(([(([([[[[([([[(([((([[([([[[((([[((([[(((([[(([([(([(([[([[[[([[([((([(([([[[[([((([(([([[([((((([(([[[[[[([[[([[[(([[([[((([[(([([[[([[([[[[[[[(([((([([[((([([([([(([(([([([(([((((((([[(([(([[[([([([(((([([(([(((([[([((([[[([([[[[[((([[[[[(([(((((((([([[([([([[[(([([(([[(((([([[((((([(([((([[([[(([[[[[[(([(([((((([([((([[([([([[((([(([[([([[(((([(([[[([([[[(((([(((((([([[([([([[[[[(([([[[((((([([((((([(((([[([[((((((([[(([(([([(([([[(([([([([[[[([(([[[([((([([((([(([(([(([[((([(([[(([[[[[([[([[((([[([[(([(([[[[[([[[([([[[([(((([(([(([((([[[(([[[((([([[(([[[[(([[[([[[[[[([[([[[(([[(([([((([(((([(((([[[([([((([([[([[[[([((((((([(([[(((([(([([((((([([[([(([([[([[([([([[[[[[([[[(([[([[([[([[[([[[([([([[[[[(([[[([(([[(([([[((([[((([[(([[([([[(([(((((((([([[([([[[(([[(([[[(([([((((((([(([[[[[([[((([[([((((((((((([[(([[([[(([([(((([([[([[([[[([[[([[[((([(([([[[[((([([[[[[([[[([[(([[((([[([(([((([[([[([[[(([([(([[([[(([([([[[([[[[[([[[([((([([[[(([[([([[[[([(([[[[([[(([(([([[([[([[(([([[[[[([[[([((([[([[[([[[[([[[([[[(((([((([([([(([[([(([[[([(((((([[[([([((([([(((([[[(([(([(([(([[[([(([([[[((([(([([([([[[[(((([[[([(([[([(([(([[[([[[[(((([((([[(([[[[[[[([(((([([([([((((((([([((([(([((([[([[[[([[(((([[([[[[([([((([(([((([((([(((([((([[[((([([([[[[([(((([(([[[([([[([[(([[(([[([[(([((((([([[(([(([([[(((((([[([[[([[[(([[(([[[([([([((([[([[([(([[((([[[[[[([([[[(((([[[[(((((([(([[[[((([([[([[[((([[([[([[([[[(([[((([[[[(([[[([(([[[(([[(((([([[[((([((([[[([[[[([[[([[[([[[((((([((([(((([(([[((([[([[[([[([[([[([[(([[(([(((([[[([[([([([(([([[[[(([(([([(([[([(([[[[[[(([(([[([[(([([(([[([[((([[[([[(([[(([[[(([(([(([([(([[([((((([((([((([[(([[([([([[([[((([([[(([[[[((([([(((([[[[((([(([([[[(([[([([[(([((([(([([[([[[([(([[(([([[[([((([(((([[[((((([[([(([[(([[[((([[[[(([(((([([[[((([([(([([[[(((([((((([[(([[[([([[(([[(((((([[[(((([((([[(([([([[(([[([(([[[[([[((((([[(([(([[[((((([(([[[(([(([[(([[[[[[[([((((([[[([[(([[[([([[(((([(([[(([(([([[[[(([[[([[([[((([((([([([[([[(([[[([[([([[([[([([[[(((([([(((([(([[[[((([[[[[([[[(([[([(((([[[([([[[[([[([((([([[[([((([[([(([([(([[[([((((([([([(([[([([[((([[((([([[[([(([[([[[([[[[(([(((([([[[[([[([(([[[[(([([[[[[[([((([[[([[([[(([[[[[[((((([([([(([[(((((([[([[[([[(([[[[((([[((([((([([([([((([(([((([[[[(([([[(([[((([[((([[[([[([[[([[(((([(([([([[[[(([([[[[[(([[([[[[[([((((((([(([[[[([(((([(([[([([([(([([([(([((([[((((([[([([[((((((([[(([[[([[[(([[[(([([((([[[(([(((([(([(([([(((((([([(([[[(([(([[([([[([([([(((([((((((([((((([((((([((([[[([([[([[[((([(([[([[([((([[([([([(([[[[((([[(([[(([(([[([([(([[[[([[(([((((([[[((([(([[(([(([((((([(([[[[[([(([((([(([([([[[((([[((((([([[[[[[[[([(([([[([[((([[([(([((((([([([[([[(([[(([([(([([(([[([[[([([(([[[[([[(([[[[[[[([([((([[([[([[([([((([[[[[((([(([([[[[[([((([([[((([(([([[[[([((((([([([([[(([(((([(((((([([(([((([([[([([[[[([(([[((((([(([([[([(((([[([([[[([[[(((([([[[(((([([[[[(([([[[(((((((((([((((([([[[[[[((([([[[[[[[((([[[((((([[(([[[([((([[([(([([(((([[[(([[[((([[[(([([([([(([([[([[[(([[[[([(([([(([[[(([([[([(([[[[[((([[(((([(([(([[([(([[([((([([[([[[[([[[[([[[[[(([[([[(([[[[[[[[[([[(([[(([[((([[((([(([([([([((([((((([[(((([(((([((((([([[[[(([[[([[([[([[[[[(((([(((([([[([[[((((([[[[[[([((([([[[(([[((([[[[(([[([(([([([([[([(([[((([([[(([[[(([([(([(([[([[(([[((([([(([[((([([((([[(([([[((([[[((((([[([[(([((((([[((([[[[[(([([([[([((([(((([[((([([((([[([(([[[(([([((([([[(([(((((([([([(([([([[[[[(([[[([([(((([(([(((([((([(([([[(((((((((([(([[[[[[([([([([(([(((((([[[(([[([[((([(([([(((([(([[(([[([([([[[[[[(([[([([(([(((([[[[[[[[[([[([((([([(([[[((([([[((((([([[[([[([(([([(((([[[([[((([((([[(([((([(([(((([[((([[([([([([(([[[[[([((([[([((([[[([[[[[[((((([[[[[(((([((([(((((([[[[[([([([[[(([([(([([([[[[[[((([[[[[([([[[[[[((([((((((((((([[[(([([[(((([[[[(((([([[[[[[([([[[[(([([[((([[[[([([((([([[[[(([([([[((([([[([([([[[((([(((([[(([[[[([[[([(([([([[[([(([([[(([((([[([(([[[[[[[[[((([[[[[[(([[[[(((([((([([[((([([[[[([((([([[[[[([((([([((([([([(([[(([[[((([([[[(([[(((([[((([[[(([([(([([((([[[[[[[((((([[([([(([[([[([((((([[[((([(([[((((((((([[(([[([[(([(([[(([(([[[[([([[[(([[((([[([[(([((([([[(((([[[([[[[[[([[([(([[([([([[[[[[(([[([(([((([([(((([(((([([(((([[[([[[(([([(([[[[([([([[[[([([(((((([[[(((([[(([(([[[([([(([([[[[((((([(([(([[[[((([([([([[[[[([([([[[[[[([(([(([[([(([[([([[[((([(([[[[(((((([[(([([(([((([[[([((([(([[([[([(([((((([([((([[(([([([[[[[[((((((((([[[[((((([(((((([[[[((((([([[((((([(([(([(([[[[[((([[([[([[[(([[[[[[([[([(((([([(([(([([([[(((([([[([[[[([[[[((([[[([[([((([[[[[((([(([([([[[[(([((([(([([[[((([(([([(([((([([[[[[[(([[[(((([((([([[[[((((([([((([(([([[([[[[(((([[((([[[[[[[((([[([(((([((([[(((([[(([[[([(([([[((([[[[[([[(([([(([[[((([[([([[([[([[[[((((((([((((((((([([[(([[[([([(([[([[[([([[(((([([[([([[([(([((([(((((((((([([((([[(([[[(([((([(([[(([[(([[[[(([[[[((([[[[[[([([[(([([([(((((([[([[[[[(([((([[((([([((([[([[[[([([([[([([([[((((([((([([[[(([[[(([[[([[([((([([[[[((((([[[((([(([[([([[[([[[(([(([[[([(((([((([[[[[([[[[[([[[([[([([[([((([([[([[[((([[[([((((([([[[[(([(((((([(([((((([[[([[[[[[[([((([((((((([(([[(([(([[[(((([(([(([((((([(((([[[(([(([(([[[(([[[([((([[[((([[[[[[[((([[[([([[[([((((([[(([[[((([[[[([([[[[(([[[[[[[[[[[(((([[[(([([(((([(([(([([(([[(([[[[([([(([(([([[(((([(([(([([([[[[[((([[[([(([([[([((([[(([([([([(([([((((((([((([[[(([(((([[([(((([[([(([([[([(([[[([([([[((((([[([[[([((([[[([([([[([([([[(((([(([([[[[(([[(([[[[[(((((([([([([([([([[[([[[[[[((([[[([((([(([[([((((([([(([([([[[(([((((([[[[(((([(([([([([[(([[[[(([[[[([(([((([[[([(([((([[[((([(([[([(([[(((([([([[(([[(([[[([[([(((([([[(((([([[(([(([([[([([[(([(([([([(([[[[[[([(([[[(((((([([[([(((([[((((((([([[[([((([([([[([([(((([[[[([[(((([[(([([((((([([[[([((([([[([((([((([[([(([(((((((([(([([[[[([(((([[[(([([((([[[[(([([[[(([(((([[([(((([(([([([[[([[[[[[[([([([[([[(([([([(([([[[[([([[([[([(([(([[(([[[((([[[[([(([[[(([[([(((([([([[([((([[([[([((((([[([[([[[[[([([([(([(((([((((([([((([[([(([(((([([[([[(([[(((([[(([(([([[([([(([([(([[[(([[([([([[(([[[[[((([([[[([(((([(([[[[[[[[[[[[([([(((([[[([[((([([[[[([(((([(([(([((([([[[[([((([[[[[([[[[([[([[([[[[[([[((((([[([[([([[[[[[([(([[[([(([[((([(((([((([((([[[[((((([([[([((([((([[[[([(([(([(([([([[[([[[(([[([(([[(([[([[((([((([[(([([[[[[[[([[([(([[[[[[(([([[([((((([([[[(([[[([[([(([(([([([[[([(([([[(([([[(([[([[[[[(([(([[([[[(([([[[[((([[(((([[[[((([([([[([([((([([[(([[((([[[[((([([[([(((([[([(([(([[[([(((([[[[[[[[([[[[([([[[[([[[[((([([([(([[([[(([[([[[(([([([(([((((([[(([([([[[[([[([([(([[[[[([[((([[([[([[[(((((((([[[(([[(([(((([[((([[(([([[[([[[[([([(((([[[([(([([[([[([([([[(([((([([[[([([([([[[(([[(([(((((([[[([[[([(((([[[[(([[([[([[([([((((((([(([([(((([[[([[[[[([([([[([[([((([[[[(((([[([((((((([[([([[([[[([[[(([[([(((([[[[[([[[[([(([[((([([(([([([[([(([[[(((([((((((([[([((((([([(([[((((((([(((([([([[([[[(([[[[([[[([([(([[[((([(((([[[[((([(([[[(([(((((([([((([([[(([[[[[(([([(([[([[[([[[[[([(([([[[(([[[(([([(([([((((((([((((([(([([(([([([((([(([(((([[[[([[[[[[[([([[([(((((([((((((((([[[([[[[([[((([[[([(([((((([(([[((([[[([[[(([[[[[(([(((([([[[([[[[([[([([([[((([([[(([[([((([[[([[([((((((((([((([[[[[([(([[[[([([([[[[([([[[(([[[((((([([[[((((([[(([(([(([[((([[([[((((([(([([[((([[[[[(([[[[((([[[[((([(([([([[(([[[([(([(((([[([((([[[[[[(((((([([[(((((([([([(([((((([([([(([([(([[((([([([([[(([(([[([([(((([(([((([(((([[([(([(([(([((((([[([[[([[[[[(((([(([[[(([[[[[[(([((((([(([(([(((([([[(([[[[(([[[([(([[((((([[[(([([([[(([[((((([(([([[[[(((((([(([[[(([(((([[[((([[[((([[[([[[[[((([[[[(([([[[(([[[[[(([[[[([[((([([(([([([((([[[[[(((((([((([(([[[((([[((([((((([[[[([[((([([[(([[(((([[[[([([[[[[([(([[[[([(([[((([([((([([([[[([((([[[((([([[(([[([([[[[([[([((([((((([(([[[([((([([((((([([(([[(([[([[((((([(((((([[([(([[(([([(((([[[([[[[(((((((([[[[[((([[(((([([([[[[[(([(([((([(([[([((([[[[[[(((([((([([[[(([(([[((((([([([[[([((([(([[[([((([[[((((((((([[[(([[([[([[([[[(((((([(([(([([[([([([[[[[([((([([[((([[([([(((([((((([[[([[([[(([(((([[[([([[[([[[[[([[[[(((([([[[((([[((([[[[([(((((((([[((((([([(([[(([[(([([([([([((([[(([((([[(((((([(((((([(([(([[[([[[(([((((((([[(([([([[(([[(([[[([([(([[(([((((([[(([[(([(((([([[[[[[[((([(([[[(([((([[[[(((([(([[[[(([[[(([[(([[[[[([(([([[[([[[(([(([([(([[(([(([([[[[[[(([[[([(([[[([[[[([(([(([(([((([[([(([((([[(([([[[([[[[[([((((([[[([([((([[[([([(([[[([((((([[[([[(([[([[[[[[([[[[([([[([[[[[(((([(([((([(([[([([[[[[[[[(((([[((([([(([(((([[(([[([[[([[(((([[(([(([((((((((((([(([[[([[[(((((([(([[([[([[([(([[(((([[((([[[[[(((([([[[[[([[[([(([[[[([[([((([([[[(((([((([((([([((((([[[[[[[((([([([(([((([([[([[(([[([[([[(([([(([[(([[[[[([([[((([([[(([(([((([[([([[([[([[([((((([[([([(([([((([[((([[[(([[[[[([((([([([[(([[(((([((([[[([[(([(([[([([[[([[((([((((([[([([[(([[[([(((((([([([([[([((([(([(([[([([([[[[[[[[((([([[[[(([[(([[[[[[([[(([[[([[[[(([[[[[[(([[[[[[[((([([[([[(([[[([[([[([(((([([([([[[(([[([([(((([[([([(([(([([(((([([(([(([[([(([[(([((([[[([([((([[[[[(((([([[(([[([(([[([(([[([([(((([[[([[([[(((([[[[(([(((([([([[[([[((([([(((([((((([[[([[[(([[(([[[[(([((([[[(([[[[[(([(((([[([([[((((([[((((((([([[[[[[((((([((([[(([([[([([(((([[((([[([[(([[[[[[[(([[([(([([([[(((([[[[(((((([[[((([((((([[[(([([(((([(([([(([[([(([[[[[[(([([([(((((([([[([[[[[[((((([(([([([([[(((((([[[(([[(((([[(([[(((([([[[([([[[[([[([([([([[(([(((([[[([[[[[(((([[[([((([[[(([([((([([(([([((([[[((([([(([[([([([[[([((([((([[(([([([([([((((([[((([[[([((([([([[([(([[[((((([[((([(([[([[([(([(([[[[([[([[[[[[([([(((([[[[[[[[[[((([((([([[[[[([[[[((([[([([([([[((([[[(([[[(([[[[[([([((((([(([[([([([([[[[[([[([([[((([[([([([[(((((((((((((([((((([(((((([[[[([[[([(((([[([[(([([(((((([([([[[[(([([[[(([[([([([([([(([([[((([[([[[(((([(([[([[[[((([([[[[[(([[[[[[((([([[[[[(([(([[[([(([[[[([([((([[(([[[[[[((((([[[[[([[[([[[[((([[[([([([([([[(([([[([[[[(([([([[([[(([[[[((((([(([((([[([([([[[((([[([[[[([[([(([[([([((([(((([[[[[[[([[[((((((([[[[[([[([(([[[([(((([[[[[[([[([[((([([([[[((([[((([([([[([((([[([([([(([((([((([[([([[([((((([((([([([([([[[[([([[[((((([[[(([(([(([[[([(([([((([[([[(([([[[([([([[((([[(([[[[[([([[[([[((((([[[[([[((([[(((([((((([[[[[[[(([([[([((((([([[[([[[[((([(((([([([([(([[[(([[(([([([[(([[[(([[([[([([[[[(([[[[((((([(([([[([(([[[(([([[([[[[[[([([(((([([([[[([[[[(([((([([([([([[[([[([[([([((([[[[[[((((([[((([[[([[(([([[[[((((([[(((([((([(([[[[([([([([[[((([((((([([[[(([[[([([(([(([[([(((([[[([(((([[(((([[[(([[[(([[[[[(([[([[(([([(((([[[[[[([((([([[(((([[[((([[([[([[(([(((((((([[(([[((((([([[[([[(([[([[[[([(([[([((([((([[((((([([[(([([[[(([[[([[[[((([([[[((([[([[[[([[[(((([[[([[([([([[(([[([[[[([[[(([([[[([([([([[([[[[[[([[(([[(([[[((([[[([[([[((((([[[[[([[(([(([[((([([[((([([[[([([[[([((([([[([((([(((([(([[[([[[[([[[[(([[[(([[[([[([[([[[[([[[(([[[([[[((([[[([(([([[[([[[(([((((((([[[([[(((([(([(([[([[([[[(([[((([[[[[[([[[[[([[([([[(([(([([([(([(([(([([([[[(([[[([([(((([([[[([[([[[[((([[[[[[([(([([([((([(((([[((([[[[[([[([[[([(([[((([((((([((([(([([(([(((((((([[[(([([[([[(([((((([([(([[(([([(((([(((([[[[(((([(([[((([[[[[([((([[[([[[[[[(([((([[[(([([((([((([[[([((([([(((((([[(((([((([([([[([[[(((([[(((((([[([([[([[([([((([[((([[[[([[[([(((([[([[(([([[[([((([[[[[([([[((([(([[([[[[([([([([(([([([([([([[[[(([([(((([[([([([[([[[([([([(((([([([[[[([([([([(((((([[((([[([([([(([[[([[[[(([([((([([((([[([(((([([(([([[([([[[((([[(([(([[[[((([([[[[[[[[([((((([[([[([[[(((([[[[(([[(([[[[[(((([[(((([[[[[([[[((([([([(([[[((([([[([[([[[[(([((([[(([[([[[[[[[((([[[[([([[(([[[(((([([[[((([[[[[([(([((([[[[((([([[[[((([[[([(([[[[((((((((([[([[([(((([[[[[[[[[((([[([[[([(((([[(([((([[(([(((([(([([([[[[[[((((((([[[[[[(([(([[([((([(([([[[[[[[(([[(([[[[[(([[([([[([[[([[[(((([[[[([[([([[(((((([(([(([(([([([[([[[[([([((((([(([(([[(([[[([[[[[([(([[([((((([([([[[(((([[[[[(([[[[([[[(([([[[[[(((([[[(([[(([[[(([[(([[((([[[[([[(([[((([(([[([[[[([[((([([([([[[(((((([([([[(([(((([[[((([[[[(((([([[[(([[([(([([(([([[([[[(([[([([([([[([[((([[([[((([[([[((([([((([([[[([[[[(([[([([[(([[(([(([[([[([([(((([[(([[([([([(([((([([[([[[((((([((([[[([[[[[[(([([(([[(([[[[(([[[([([(([(([(([((([([[[([([[([([(([[[[([[[(([[((([[([((([[[[(((([[[[([[(((([([([(([((([[[[[([[[[(([([[[[((((((([([(([[[[(([((([[[[((([([[(([([(([[([([(([(((([[[(([((([[(([[([([[[(((([(([[(([([([(((((([([[[((([(([[[[[([([([([([([[[([([[(([[((([[((([[[([([([([[([(([([[([[([[[([[([([(([(((([([[((([[[([((([[[(([([[[(([(([((((((([([([([[[(([[[[[[((([((([[[[(([(([([[([(([[((((([([[(([([[[(([([[[([[([(([([([([[(([(((([(([([[[[(([((([([((((((([(([([[[([[[([([[[[[[[[(((([([[([[(([[[(([[[([[(((([(([(([[([(((([[[[([(([(([[([[[[[[([([([[(([[([([([([((([[[[[([[(([[[(([(([[[[[(((([(([[[(((([([(([(((([[([([((([([[[(([[[([[([((([[[[([((([[[[[((([[(((([([[[([([((([[[([[[([[([([([[(((((((([([[[[[[[([[([[[[[[[(([[((((([([([([([(((([[(((([[[[([[[([(([[[(([[([([([([[[[[([(([([([([(([[([[([[[([[([[[[[[([[([[[[[[[([[(([[((([[[([([(([([(([(([[([(([([((([([[(([[[[[([[([[[[[([([([([[[[(([[[([([[[([((([[[[[[((([[[([[(((([(([([([[((([[((((((([[[[[[((([([[([([([([(([(([[([(([([[[([(((([[(((([[(([(([([(([(((([[[[[((([[(((([[([[[([[[[((((([[[(((([([[(((([(([[[([[([((((((([([[(([[(((([[[[([[[((([([[[[([(([[([(([([([[([[(([([[[((((([(((((([[(((([(([((([([(((([(([(([[(([[([[((((([[(((([([(([[[[([([[[[[(([[([([[(([[([(((((((((((((([((([([[[[([(((((([(([([([[(([[[[(([([[([((([([[[([[((([(((([[[([([[(([[(([(([[[[(([[(((([[[([((([[([((([(([([(([([(([[[([([([((([(((([(([(((([(([[[[([([[[((([([[(([(([[[([([(([(([(([([(((([([[[([[(([[([([((([([([([[[[[[((([[[[[(([[([[([[[[([([[[((([((([[[[([((((([[[[[[[([(((([[(([[((([[[([[((([[[[[[[[[[(([((([(([((([(((([([[(((([([(([([[[(([[([[((((([(([[([([[[([[(((([([[[(([[(([([(([([([[[([[([[([((([([([[((([[([(([([[((((([[[[[[[([(([(([[([(([[[([[[[(((([[[[([(([[([[[[[([(([[[(([[[[([(([([[[[([(([[[[(([(([([[[([(([[[[[[[[([([([[([[((((((([([[[([[[[([((([[(([[[(([((([[([([[[[([[(((((([[[[[((([(((([[[([[[[[[[([([[(([[([(([([([[[[[((([((([([[[[[([[[[[[(([([[((((((([([([(([([((((((((([[[[(([[(([(([(([([([[(([([([(([[((([(([[[((([[(([[[([[([[((([[(([[[((((([[(([[[((([([[([[([((([(((((([((([(([([([[[[[[[[[[((([([[[[[[((([([[[(([([([([[([[[[(([[[[[([([([[[[[[([[(((([[((([[[[[((([[[([[[([[[(([[[([((([[[([[([([[([[((((((([((([(([[(([[[[((([[[[([(([[([([[[[[[((([(([(([([([([([[[[[[[([((([[([([([((((([[[[([((((([[(([([(([[([[([((([[([[([([([((([[[(((([(((([[[([[[[((([([[([([([([([((((([([[([([[[(([[[([[[([[[[((([([([([((([([(([[[((((((([((((([[([(([([([[[[[[(([(((([[([[[[[((([([[(([(((([((([[([([[([([[(([([[[([([[([[([[([[[[([[[[(((([[(([[([(([([[[([(([(([[(((([[(((([(((([([(([[[[([[((([(((((([[[([[((((([[[[[([[[[[[[([[[([([([(([([(([([[[([[([[(([(([[([((([(([((([[[(((([([[([[[[([([[(([[([(([[[[([[([(([(([(([([[[[(((([[([([(([([[[[([[(([[(([[([([[[([[(((([[[[([[[(([([(([([([[([[[[[[[([([((([[([[([[[[[[[([[[([[(((([[[[([[[(([([[((([((((([[(([([([[[[[[[[[([[[(([(([[[([[(([([(([([((([[(((((([[[(([[(([[(([(([(([(([[[([[[[[(([(([[((([[([(([[[[[[((((([((((([[[(([[((([[([(([[[([(([(([([[[(([[[[([((([[[[(([[([[[(([[(((([[([[[(([([[[[[[(((([[[(((([([([[(((([[[[(([([(((([[([((([([[(([((([[((((((([[[[(([([[[[[((([[[(([[[(([([[([[[[((([[([[[([([[[([([((([[[[([([(([[[[([(([[([(([[((([[(([[[[([(([[[[[([(([(([[(((([(([[(([[[([[[(([[([([([[[[[(([[(([[([([[(([[[([[([[(([[[((([([(([[[[([((([(([[(([([[[([[((([([[[[([[[[(([((([(((([[[([[(([(((([[(([[[(((([([[([(([[[(([[[[[[(([[([[[[[(([(([(((([[[(([[[[([[[((((([(([[[[(([[[[[[([(([((([[[[(((([[[[((([[([(((((([((([[([[[[((([(((([([(([(((([[[[[[[[[[[([(([[([(([[([([([[(([((([([(([(((((([(([[((((([[[[((([((((([[[[[[[([[(([[(([(([([([[[[(((([[[([([[([([((([[(([((((((((((((((([[[[[([[[(([[[[[([[((([([[((([[(((((([([[([[[([(((([[((([[((([[[[[([[[[([[(([[[[[(([[[([[[[[([[([((((([((([[[[([[[[([[[([[(([[[[([([(([[([([([[[([[((([[[(((([[((([[([((([(((([([[[[(([[[[[(([((((([[((([[[(((([([[(([([([[[[[[((([[[([([(([([[((([(([[[[[([(([((([([[([[[(([[([(([[(([([([[[([([[[([([(([([(([[[[[[((([(([([(([(([[([[[(([(([([[([(([(([[([((([([([([[[(([([([([([((([(((([([[(((((([([(((([(([([[[[[([(([[([([[(([(([([[[[([[[[[((([([([([(([([[[[(([[[[[([[(((((([((([((([[[[[[(((([((((([([([(([(([[([[[([(([((((([((([(([[[[[([[(([[((([[[(([[(([[[((((((([([[[([[[(([([(([[(([[[([[[[[[([((([((([[(([(([[[(([((([[(([[((([((([[[([[[[[[(([([[[([[([(([([((([[[[[(((([(((([[[(([(([[([[[[([[[([([[[([([([[([[(([([([([([(([[[([([((([[[(([(((((([([([([([([[([[(([[[([([[[(([([([([[(((([((((((([[((([[[[([[(([[([[[([[([[[([([([[[[[[[[(([[(([[[[([([[[([[[[[[([([[((([[[([[[(([[[[([[(((([((([[[[((((((([[([((([[([[[([(((([((((([[[[([[[[([([([([((([[((([[[((([[[((([([(([(([[((([[[[[((([[(([[((([[(([[[(((([(([(([[([[[(([[[(((((((((([((((((([[[[([[[([([([[[[[[[((([[((([[((([[(((((([[[[[[[(((([[((([((([[[(([(([((([((([([[[((((([([[[[([[([[([([[[([([((([[[((((([[[[[[[[[(([([(([(((([[([[([((([(([((([([[[[[[([[([[[[[([([[[((([([([[((([([[([[[((((([[(([[[[[([(([([[[[[[[[([[[([(([[((((([[[([([([[[[([[([[([(([((((([[([[[([((([(([[(([[[[(([(([[[(([[[([([((([[(((([[([[[([([[[([(([[[[[((([[[[(([([([[[(([[([[((([((((([[([[[[[((([(((([[((([[[(([([([[((([([([(([[(([(([([[([((([[((([(([([[(((([[(([[(((([([[([(([((([[([[[([[[[([(((([[[([[[[([[(((([[[[([[([([(([[((([([([[[([[([[[[[[([[[[(([[[[[(([[[[[([(((((([[([[(([(([[([([[(((([[(([[[[[[[[(([[[(([[[(((((((([[(([[[[(([([(([([(([(([(((([[([((([(([([[[[[(([[[((([[[[(([([(((([[[[([[([([[(([[[((([([[([[([[[[[[[[[([((([(((((([(([(([([(([[[([(([(([[([([[([[[([[[[(([((([[[([([([([([([[([[[[[([[([([(([([[[([[[((([[((([[[((([[(([([([[[([([[([[[[([((([[(([[([[[([[(([[[(([([((((([(([(([((((([([[[([((([[([([[(([[([(([[[([([((((([([[((([[([((([(((([[([([((((([([(([[(((([(((([[[(((([[[([[[[[([[((((([([((((([[[((([([([(([([([[(([(([[(((((([[[([(([[[[[(([[([(([[((([(((([(([[((([[([[([([[[([[(([[([([[[[([[[[[([([[[((([[((([(([(([([[[(([[(([[[([[((([[[[([((([[([[[[[[[[[((((([[([[((([[[((((([[[((([[[[((([[[((((([(((([[(([(([([(((([([[[[([[[[((([[[[(([((((([[[[(([[([[(([[(([[[[(((([[[([([[([[(((((([(([([([[[((([[[((([[(([[(([((([[[(((((([[([[(([([([[(([[[((([[[[([[[[[[[([[[[[(((([[((([((([[[((([[[[[[([[(([[[[[([[[((([[([[([[[[[[([(([[([[(([(([((((([([[[(([([((((((([[[(([([[(((([[[([[[[(([[[[[([([[([[[([[[((([(([([((([[(((([(([((([[[([(([(((([([[([(([(([[[([[[(((([[[[([[([(([([((((([[([(([[([[[([([([[([((([[[[[(((([[[[[([[[[([[[(([([([([([[([[[[(([[[[[([[((((([([[((([(([(([[((((((([([[(([(([[[([[[(([[[[([(([[[(((([[([[((([[[[([([(([((([(([[[([[[[[([(([((([[([[[(([[(((((([[([([[[(([([([(([[[([([[([[([([[([[([(([[[[(([(([[[[([(([[[[([[((([([([[[([((([(([[([[[[(((([([(([([[[([([[[[[(([[[[([(([[([[(([[[([[[([([[([[([[[[[((((((((([(([[([[((((([([([(([[([(([[[([[([((([((([[(([([(([((([([([[([(([[[[[([((([(((([[([[([[(([([[([[(([[[[([[(([[[[[((([(([([[(((([[[[[[([((([[[([[[[[([[(([([[([[([(([(([[(([[([[(((((((([[[[(([(([(((([[(([[[([((([((([([[([[[((([([[(([(([[[[([(([[(([[(([([([[[[[[([([[[(([([[[[[(([(([([([([(([[([(([[(((([[([[([([([[[([[[[[[[[[(((([((([[[[([(([([[(((([([[[[[[((([[(([([(([((((([([(((([[([((([[([[[[[([([[[(([((((([(([([((([(([(([[((([[[[([([([([[([(((([[[([[[[((([[[[([[[[[(((([[[([((((([([(([(([(((([[[((([((([[[[[[[[([[[([[[(([[[[(([(([(([((([((([([([[[[[(([(((([(([[[[(([([((((([[[[[[([[([[([[([[[(([(([[([[([[([[([([([([(((([[(([[([[([[[([[([([([([[[(([([[[([((([(([(([[(([[([([((([[[(([[((([(([([((([[([[(([[[(([(([([[[([[[([(([(([((((([[(([[(([[([(([([([[[([[[(([[[[[(([(([[([([([[(([([([([[[([(([((([[[(([[[[(([[[[[(([([([([([[[[([(([[[[[[[([([(([[[[((([([[[[([[[[([[[[(([[(((([[[[[(([(([[[([[([(([([((([[[[[([(([[([[(([[[[[(([[[((([[(([[[([([([[[[(((((([[[([[[[(((([[(((((([([(([[((((([((([(([([[[((([([[[(([[([[[([[(([(([([[[(([[[[((([[([[([[([([[([[([((([[(([([((([[([([[[[(([[[[[(([(([([([[[[([[(((([[(((([[([(([[[(([[(([([(([[(([[[(([[[(((((([[[(([(([[[([[([[[(((([[([([[[[([[(((([[([([((([(([([((([[[([(([[(((([[([[(([[(((((([((([(([(([([[(([([(((([[([(([[((([((([([(((((([(((([[((([([[([[[[[[([(([(((((((([[([[((([([[(([[((((([[[[[([((([((((([([[[[[[[[[([[[[([[([([([[(((([([[[(([([[[([[[((((([[[([((([((([[[([([[[[[[[[(([([[[([[[[[([[[[([[(((([[[((((((([[((([[[[[([[([([((([([(([[[([[(([[(((([([(([[[[[([[[[([[[(([(([[[[[[((([(([([[[([[(([[([[([[([(([[((([(([[((([(((((((([((([([([[[([[([[(([[[([[([([(([([(((((([(([(([[[[([[([[[(([([[([((([([((([([([((([(([[(([([((((([(([[([[[((([(((([((([([[(([[[[[([((([[[([([([[([[(((([(((([[([(([[((([[[((([((([[[[[([((([[[[([([[(([([([(([([(([[[(((([[[(([[[((([[[[((((([[[[(([(([[([[[[[([(([[(([([[([[[([([([((([[[[([[[([[([([[([((([((([[[((([[[([(([[[((([((((([([[[[[[[[[((([([[(([[(([[[[[[[([(([[([((([[(([[[(((([(((([[(([([[([([([([(([([[[[[(((([(([(([(([((((((([(([(((([([(([[([[([[(([((((((([(([(([[([[([((([[[[[[((([([(([[[([([[([[([[[[[[([([[[[((([((((((((([([[[([[([[[(([[[((((((([[(([[((([(([[([[[((((([[([[[(([((((([[[[[[(([[(([[[[(([([(([[([(([[[([[(([([[[([([[[((([[([((((([[[(([[[([[(([[[(([(([[[(((([([((([[([(([[[([([((([(([((([(([([(([([((((([[[[([[([(([[[[((((([((((([([[[([([[[(([(([[([[[([([[(([[([[[((([((([([[((([(([[[[[[[[[[(([(([([([((([([(((([([[(([[((([((([([((((([([((((([((([([(([[([[[(((([[[([[[([[[([[(([[[(([[([[([[[[([(([[[([([[(([((([[[(((([([(((([([([([([[[[([[([[([[(((([([([[[(((((([[[([[(([(([[([[([[[[[[([([[[[([([([([([[[[([([(((([[[(([[(([[([[[[[(([(([[[([[((((([(((([((([((([([([[[(([[[([([(([(([([[([((((([[([[[([([([[([[(([([(((([([[[[(([([([((((([[((([((([(((([[[[([[[[([(([[(((([[[[[[(((([([(([[([(([[[[[([[[[[(([([([(([([[[(([([[((([(([(([[([(((([(((((((([((([((((((([([([[[[(([[[[[[(((([[([([(([((([[[[[[(([(([[[[[[[[([(([((([[[([[((([[[[([[[(([[(([((((([[[[(([[(([[((([[[(([[[[(((([([[([([([[[((((([[([[[[(((([[[([([[([([(((((([[(([[(([([[[[((([[[((([((([(([(([(((([(([[(([([[[([([[[[[([([[[([[([[[(([(((((([[([[(([([((([((((([[[[[[[([[((([(([[[([([[([((([([[([[[([[[([([(((([([[([(((([[[([([(([((((([[(([([(([[[[([([([[[(([([((([([[[[(([([[([([([[[[[(([[(([([([([[[[[[(([([[([[[[[((([(([[(([[[([(([([(([[(([[([[[((([(([[([([[[[((([[[([((((([[[[[[([[[[[(([[(([[(([([[([[[[[[((([(((([[(([[[[([(([[([[[([[[[(([[([([([[(((([[[[((([((([[([([([([([((([[[([[([[[[(([[((([[(([((((([([(([[[(([((([[[(((([[(([[[(([(((((((((((([(([((([[([[[([[([([[[(([([[(([[[([[[(((([((([[([[([[[[(((([([[[[[[(([([((((([([(([([([[[[[([[[[(([((((([([[([([[[([([[[[[([[([((([([[((([([[(([[[([(([(((([[(([[[[[[[([([((([([[([((([([((([(([[(([((((([[([[([[[((((((([[[(([([(([((([[[[[([(([[(([[[([[[(([[(([([[((([[[[[[[(([(([([([([[[(((([[((([([([([(((((([([(([(([(([[[[([(([[[[[(((([([[[((([[[((((([([[(([(([(([(([[[[(([(([[([[(([((([[([((([(([[(([[([((([(([([[([[(([[(([(([([([([[[[[([([[([([[[[([(([([(((([[((([((([(([(([[[((((([[([[([[[((([[([[([[([[[([[(([(([(([([[[((([[[(([([[[[(([[(([(([[[[([[[((((([[([([[([([[[[[[(((([([[([(((((((([(((((((([([(([[[(([[((([([[(((([([((((([[[[(([([(([([([([[[[[[[[(([[(([[[(((([([([([([([((([((([[[(([(([[([[([[((((([([[[([[[[[([([([([[[(((([[([(([([((([[[(([[([[(([[[[[[(((([[[([([((([[(((((([[(((([[([[[[([[[([(([(([([[[(([[[[[[[[([[([[((([[[([[([(([[[[(([[([(([([(([[[[(([(([[((([[([[(((((([(([[[[[(([(([([((([[([[[((((([[[[([(((([[(([((([(([(([[(([[[([[([[([([[[([([[[[[(([([([[[([[(([[(([((([[[(([[([(((((((([[(([(([[[(([[[([((([([([((((([([[([[((([[[(([[[[[[[[((([[([[(([[[([(([((([[[[([([([[[[[[([[(([[[[([[([([([[[[(([(([[[((([[[([([[[[[((([[[[[([[((([((([[([[(((([([([((([[([([[[[(((([(([(([[([([([([((([([[(((([((((([[[(([(([[[((([([([[[[(([((((((([([((([[(([[[(([([[((([[[[([[[[([[(([([([[[[[([([([((([([[((([[[[[[([(([[(([[[([([[(([[(([[[((((([([([[[(([[([[(((([([(([(((([(((([[(((((((([[[([[([[(([[[[([([(([[[([(([[[[(([([([([(([[[[([([([(([(((([[((((([[[[([(([(((((([([[(([([(([(([[([([(([[([(([[((([[([[[([([[[([[((((([([(((([[(([((([[[((([[(([((([(((([([[(((([[([(((([([([[(([([([[([(([([[[([([((([[[[(([([[[[[[[(([[[[[(([[([([[[[[([[[[(([[(([[((([(([[[([[((([((([([[[[(([[[[[[(((([([(((([((([([((([[([([(([[[[((([([([((([(((([[[[[[[[(((((([[([[[[((([(((([([(([[[[([[[((((((((([[((([[[[[([((((([[[[[[([(([([([([[[[([[(((([(((([[(((([[((([[[[[(([[[(([([[[[[[(([([([((((([((((([([([([((([([[(([[([[(((((((([[([[(([([[[([[(([[([[(((([([[[[(([[[((([((([([(((([(([[[((([([(((([[(([[([(([[(((((([[((([([[[[([([[[(([([[[([([[[([[([([(([[((([[[([([(([([([(((([[(([((((((((([[[(((([[[[([(([[(([(([([[[(([[(([(([[[[([(([[[[[[[[((([([([([([[[[[[(((([[([[(((([([[[[[[[[((([([([[[([([[[[[[((([[[[([((([(((((((([(((([([[(([(((((([[[([([(([([[[[[[((([[[([([([([(((([([([[[[(((([[[((([(([[(([([((([[((((([[[[(([[([([[(((([((([[[[([([((([[[[[([[[[([[[[([[(((([([[([[[([(((([[[[[((([(([[([[[(([((([(([([[[([[([(([(([((((([([[[(([[[[([[([([[[(([([[([[([((([((((([([([[(((([[[[([[(([[([[[[[[[[[[(((([[[[((((([([([([[[([[[(([[[([([[([(([((([[[([((([[[[([[[([([[[([[([([[[[(([[([[(([[[[([[([[[((([(([(([([[((([[[(([[[[[((([[([([(([[[[(([[[(([[(((([[([[([[[[([(((([((([(([[([([([(([[[[(((([[([[[[([(([[[([(((((([[([[[((((([(([[(([[[[[([(([[([([(([((([([([[[([(([[((((([[[([([[[[[(([[[([([(([([[[([([([([(([[(([([[[([((([((([[[(((((([[([[([(([[[([(((([[[(([([[([[[[((([(([[[[((((((((((([[([([[[[[(([(((((([([([[(((([[[[[[([[(((([[((([([((([(([([(([[[([([(([([[[(((([[[[(([[(((((((([[([[((((((([((([(([((((([[[[[[(([[([[([(([[[[((([([([((([((([([[[((([((([(((([([(((([([[((((((((((([([([[(([(([[[[([(([(([([([(((((((([((([(((([[(([([([[((((([((([(((((([(([[([([[[((([([[([([[(([([[[((([([[([[[[([((([[((((([[[((((([(([((([([[[(([([[((([[[(([[[[[([([([[(([[(([[([(([(([[(((([[(([(([([[[([[([[([[[[[([[(([[(([[([(([[([[([([[[(([[(([[[[[[(((([[[[[[[[[([[([[([[(([([[([([((([[([((((([([[([([[([([([(([[[(([[[[[[[[[(([([[([[([(((([[([[((([[(([[([([((((((((([([([[[[(([((([[[([([([(([([[(([((([([[([[(([([[[(((((([(([(((([(((((([([([[[[[[[[([[(([((([([[([(([[(([(([[[([(((((([([[(([([(((((((([((((([[[[[[([([((((([[[[(([[[(((([[[[[(([(((([(([(((([[[[((([[(((((([([(((([[[(([([([([([[(([[[((([[[((([([[(([[[(((([[[((([([((((([[(([[(([([([[[[([([(((([[([(([[[[(((([(((([[([[[([([[[[([(((((((([[[[[(([[[[[[[[[((((([([[([([([(([[[[([[((((([[(([[([[[(([[((((([[[[(((((([[([(([(((([[([((([((((((([[[[[([(([([([([[((((([[[([[[(([([[((([[[(((([[([([[([[[([[([(([((([(([((([[([([[[([[(([[[[(([[[([([[[[[[([([[[([((([([[[[((([[(((([((([(([((([[[[([[[([(((([[[((((([[[([([[[(((((([([([[(((([[[(([(([[[[([((((([(([[([[([[[([([([([[(([[(([((([[((((([[[([((([[[([(([([[([[[[[([([[([[([[[([((([[(([((((([[[([((([[[[[[[[[([([[[[[((([([[([[[[((((([[(([[([([([[([([[[[[[(([[((([[[(([(([[[[[[[([[(([(([([([([[(([([([(((([[(((([([((((((([[[([[[[((([([([[([([[[(((([([(([[[[([[(((([[(([([[[((((([[[(([(([[([[((([([([([(([((([[[(([([[(([(([[[([(([((([(([([[[([([((([[[((((([([[[[[[(([[[(([(([(([[[(([([[[[(((([([([(([([[(([[[[((([[[[[[([[[([[[([[[([[(([(([[((((((([((((((([[([([[[[[[[(([(((((([[[(((([[(([[((([[[([([((([[[([([([[[([([[(([(([[([[([[[[([[[[([(([[[([([([([(([[([[([[(([(([([((([[[[[[([((([([[[[[(([[([(([([[([([([([([([([([[[[[([([[((((([[([([[(([[[((([(([[(([([[[[([([([[[(([(([((((((((([((((([([[[((([[([[([(((((([[[[(([((([[([([[[[[(((((([[[[((([((((((([[[([[([(((([(([((([[([([[[[([[[(((([([([([([([(([(((([[[([[[((([[([[([[([[([(([(([[([[([[[[[([[((([[([[[[[([[(((([(((([(([((([(([[([[[([(([[[[[[(([[[([[[[[[[([[([([(([[[([(((([[([([[(([([(([[(([[[((((([([[(([[([((([[(([[[[((((([[([([([[((([[[[[([[[([(([(([(((((([[[[[((([[[[[[([(((([[[[[[[((([((([[([((([(([([((([[[(([((([([([[[(((([[[[(([[(([[[(([((((([(([[(((([[[([[[(((([((([([(([[([[[[[[([(([([[[[[([[[(([(([[[[[[(([([([[[[[[[(([[[[[[[([((([([(((((([[(((((([(([((([[[(([[(([(((([[([([([(([((([([([[[([[(([(([((([[(((((((([[[[[[([[([[([[([([((([([(([[[[[[[[[([[[(((([([[(([[([(([[(([[(([((([[([[(((([[[[[[[([([[[((([([[[([[[(([[((([[[[[((([([[[[[[([([(((([[(([([[[[((([(([[(((([([([([[[([[[(([[([[[[([[[([([[[[([[[((([((([([((([((([[[[([[[[[[([[[([[[[([([[[[[((([(([[[([[[[((((([[(([[(([((((([[(([([((((([[[(([([(([([[(([(([(([(([(((((((([([([[[(([([[[([((([([[(([([[[[[([([((((([([[[(([[[[((([([([((([([(([[[[[[[[([[([(([([[[[([[(([([(((((([[[([[[((([[([((((((((([([[([(([[[[[[((((([[[([[[[[[(([[(([[(((([[(((([([[([[[([(([([[[((((([(([((([([([((([([[([(((([[(((([([[([([[([[(([[[[([((((([[[([[[(((((([[((([[[[[(([([[[[([[[([[[[([([(((((((((((([([[[([([([(([[[[([(([([([((([([[[([[[[([[([(((([((([[(([((((((([([[(([(([(([(([(([((((([[(([[(((([[[[([(([(([([[([[[[((([[(([[(([[[[[[[[[[([[([([[[(([[[[([([(([[([([[[([[[[[[([[(([[[([([[([(([[[([[(([[[([([([[(([(([[[([[([[(([([([([[[(([([(([((([([[(([[[[[((([[([([[[[(((([(([[[[(([([(((([([(([([[[(((([((((((([(([([[[(((([([[[([((([([[([[[[([[[[[[[[([([([((((((([(([[[[[((([[([([((([[[((([[([[([([([(((([([([[[(([[(((([([[[([([((((([([((([([([([[[[([[(([(([([[([([([([([([[[([[(([(((([([[([[[[[(([[([[[(((([([[([[(([[[(([((((((([([[([([([[[([([[[[((([[[((([(([((([[[[([([([[[([[(((([[((((((([(([[([((((((([([(((([[(([[((((([(([([[((([[([[([(([([([[[([([([(([(([[[(((([([([[[((((([([(([[[([([([[[[([((([(([([[([[[(([([[[[[[[[([(([[[([([(([(([[([[[(([([(([(([[[([([([(([[[(((((([[(([([(([(((((([([(([([[((([(([([[([([([([(([([(([([(([[((([(([([(([(([[((((([[[(((([[[([[[[[([[[[[(([[((([([(((([(([[[[[(([[(([[[[([([[(([(([((([[((((([[([[[[((((([((([([((((((((((([([[((([(([[[[[(([[([[[([[[[(([(((([([(([[[[(([[[([([[[[(([[[[([[[(((([[[[[([(([([[(([[(([[(([(([[(([(([[[([[([[([[(((([[[(([(((([([(((([[[([[[[[[([[([[([[[(([[[[([(([[[[([((([[[[(((((([(([[[[[(([[(((([[[[([(([((((([([((((([[[((([(((((([[([(([[[[[[[([(([((([[[[[[((([(([[([[[[[[([(([[[([((([[[[[([([[[[(([[([(([(([[([[([[([((([[[(([[[[[[((([[[(((([[([([[([(([[([(((([[(([((([(((([(([((((((([[([[[([[([[[(([[(([(([[(([([[[([[[([((([[((([([(((([(([[(([((([([[[[[[(([[([[(([[[([(([[[((([[[[(((([[[([((([[[[[[([(([[[[([[(((([([([((((([[[([[([((([((([((([[([((((([([((((([([([[((([[(([((([[((([[[([(([[(([([[[[[((([[[([[[([[[[(([[([[((([([[(([((([([((([[([([((((([((([(([([[([([(([[[([[([[(([(([[((([([[[((([[([([([[[[((((((([(([(([[(([((([((([(([([(([[([[([([[[(([[((([([((([[[(([[[[(([(([[((((([[([[[(([[[[[([((([[(((((((((([[[([[([((([((([(([[[((([[(([[([[[[[[[[([[[[[([[[[(((([(([[((([[(((([[[([(([([[[(([([[([([(([[([[[[((((([[[[(([[([([((([(([[[[([[([([[([([[[[(([(([[[[([((([((([[[[(((([[[[([[[([[(([[[(([[[[((([[([[[(([[([(([[[[(([([[[([[[[(([(([([[[([(([[[([[[[[[[[([([(([[(([((([[((([[((([[[[[[([([[[[([[([[[([((([[[([[[[[[[[([((([[[[(((((([([[[[[[((((([[([([(((([(((([(([[([[([[[[[[[(((([[(((((([[[(((([([([[(([[((([(((([(((([((([([((([((([[[[[(([[[[[[((([[([[([([([[[[[[[[(([([([[[(([([[[[[((([(([[[([[[[[[(([[[[(([(([[[(([[(([([[[(([[[[(((([[([[[[[[(([(([([([[([[[[[[[[[((([[[[(((((([((([[[[[[(([[[[[(([([[[(([([[[[[[[[([[[([[[((((((([[[[[([([([[[(([([[[[([[(([[([([([[[(([[([[([([[[[[[[([([([([[(([[[([[[[(([[[([(([([[([[([[([[((((([(([(([(((([([[[((([([(([(([[[((([[([[([(([[([(([([([((((([(([[(([[[([(([[[[([([[([([[[([[(([[[([(([[[([([[([[[[([[((([(((([[[[([([[[([[[[([([([[[(([[[[(((([[([[((([([[[(((((((((([[([[(([(([([[((([[[([(([([[([[(([([([(([[([[([[(((([(([[(([[[([[([[[((([((([([[(([(([[[((([[[([[[([[[((([(([[((([((([([[[(([[([[[([([[(((([([[[((([[[[[[[[([(([[[[[([[([([[(([[[([[([[[([(((([([([([(([([(([(([[[[[[[[([(([[([[([[[((([[[[(([([([([([[[([[([[((([([[(([((((([[(((([(([[[[([[[[[((([(([[[[[[[[(((([([([([[(([([((([((([((([[[[([[[(([[((((([([[(([[[((((((([([([([((([[[[[([[(([([[(([(([([([((([((([([([[(([([[[([[(([([((((([((([[[[(((([([((([[(((([[[([[(([((([[[([([[([((((([[[[[[((([[([([(([[([[[[[[(([([((([[(([(([[[([[[[((([[((((([(([(((([[[[((((((([[[([(([([(((([(((([[[[[([[([((([((([[([([(([[[(([((([[([[[[[((([((([([[[([[[([(([[([[(((((([[[[[[(([[([(([[([([[[([(([[(([[(([[[[([((((([[[[((([(([([((([[[([[([[([(([(((([[[[(([[[(([[([((([[((([[[((([([[(((((([[([([[[[([([[([([[([((([([[[[(([((([[[([[[(((([[([([[[[((([([[[([([((([([[[([([(([([((([([(([(((([[(([[[[[(([[[((([([[([[(((([(([[[[((([([(((((([[(([[(([(([[[[([([([[[([[(([(([[[([[([[[(([([[([[((([[[[(([([((([(([[[(([([([(((((([[[[([[(([[[[((([[[([[[([([(((([[[[[([([(([[(([[[([((([(([([(([[([(([([[[[[[((([[[(((((([([(((([[[[([[[[[[[((([(([[([[(([(([([((([((([(([[(([[[[[[([[([([((((((((([([([[[[((([(([(([[[[[([[([([[([([[((([([([[[(([([[([[[((((([(((([[(([(([([((([[(([[([[((([((([[([[[(([[[[((([([(([((([(([[[(([[([[[[(([((((((([([(([[[[((([(([([(([[[[[[[(((((([([((((([[[((([[[[[([[(([[(([([[[[([[(([[(([[[(([([[((([[([(([[(([((([(([([([((([([[([([[((([[[((([([[[[(([[[[[[[(([[(([([[[([(((([([[[([([([[[(([((([((([(((([([([[([([([(([[([[([(([(([[((([(([[((([(([[[([[(((((((([([(([(([[[(([(((([[[([([[[(([[([([[(([[(([[([[[(([(([[(([[[([[(((((((((([([([[[([([[[([[([[([[[[(([([[([(([([[([[[((((([[((([([([[(((([[([([[([[(((([([[[([(([(([[(([(([([((((([([[([[[[[[(([[([([[((([[(([([([(((([[[(([([(([[(((([[([[(((([[[[((([(([([[[([([([[[([((([([[([[[[((([((([((([([([[[(([[[[(([[(([[([(([(([([([[[[[([([[[([(([[([[([(([(([((([(([[[(([[[([(([[[([[([[(([[(([[([([([[[([([([[(([[[(([([([[[([((((([([[[([[[[(((((([([[(([[[[[([[([[(([[[([((([[([[([[[([(([[[([([[[[[[([((((((((((([[[[(([(([[[[[(((([([((([([[(([[([([(([[[([[(([[([[[([[[([((([((((([([[(([([[[[[[([([([([([(([[[[(([([[([[[(([([[[[[[[[[[([[[[[(([[(([[[[([(([([[([[((([(([([([[((([[([[[(([[(([[([([([((([([([(([((([[([((([([[[((([([[((([([[[[([(([([[(([((([([([[[([([((([([[(([((([[[((((([([[((([[[[[([[((([([(([[[[(([[[((((([([[([[[[[(([([((([[[(((((([[([(([[((((([[(((((([((([[[[([[[[[(([[[[([([([[[[(([[([([([((([[[[[[(([[[[([(([[([[((([([([(((([[(((([([(([[[((([(((([([[[[[[([((([[[(([[([((([[([[([([((((([(([([([[((((((((((((([[[([[([[[((((([([[[([[[(([([[[[[(([[((((((((([((([(((([([(([[(([([([[([[[(([[([(([([([[[[(([(([([[[[([([((([(([[([[((([[(([([(([([([[[[((([[[[[[([([([([(([((([(([((([((([(([([(([[([([(([[[([([[[((([[[[[[[[[[[([(([[[((([([([[(([(([([([[[[[([[[[(([([(([([[((([([((([[[[[[[(([([[([[[([[(((([([(([[(((([(([([[[[([([[((((([((([[((([[(([([(([[[((([[[(([[[[[([[[([[[([[(([[([([[[[(([(((([(([[[[((([[[((([([((([((((((([([(([([[((([[([[[[[[[[([[(([(([([[[((([([[(((([(((((([[([[([([(([[((([[[((([[[([[[(([[[([(([([((((((([[([[([[[[([[[([[(([([[([((([([([([([([(([([((([((((([[([(([[(([[[([([[([([([[(([[([(([([([[([[[[((([(((([[[[[[((([((([([[([[([[(([[(([(([[[[[[[([([(((([[((([([[([(((((([(([[([[[([[[[[([[(((([([(((((([[[([[[([[((([([[[[([[[([[[[[((([[(((([([[[(((([([(([[(((((((([[[[([(([[[(([((([[(((((((([([[[([([(([[[((([[[(([((([((([[[[[([[[[[(([[[[((([[[(((([[[[[[[([([[[[((([([([([(((([[(((([([[([([([(([(((((([[[(([[[[[([[[([([[[((([(([([(([[[[([([[((([([([[[([([[[[([([([([[([([[[([[[((([[(((([[(((([[([[([((([((([(([(([[((([[[[([(([[(([((((([[([((([([([[[([([[([[(((([((([[[([(([[[[(([([([((([[[(([[[([(([[([[(([([[[[[[[[(([[[[(([([([(([((((((([[[([[[([[(([[[([(([[[([(((([[((([[([((((([[[[[[(((([(((([(((([((([([[[([(([[([[[[(([([([(([((([((((([(([[(([(([([[([[([[([[[([([[([([(((([[[[[[([([(([([(((((((([[([[[[([(([[[[([[[[[[[[((([[[[([[(([[[([[[((([([([[([[(([([(([(([[[(([([([[[[[[[([[((([[(([([[[[[[(((([(([[((([([((((([[[[(([((([[(((([([([(((((([([(([[([(((([[[((([([(([((([(((([([[(((((((([([([(([[([(([((([[([[[((([([([[((([[[([[[[[[[[((([([((([(([[(([[((([(([([([([[([(((((([[([([[[[[[[[[[(([([[[((([[(((((([([[[[(([(([[([[([(([([([[[[(([[([[[[[([(([(([(([[([([(([([(([[[([[([((((((([((([((((([((([(([[[([[[([((([([([(((([[[([((([[([[([(([[(([[[([[((((([[[[(((((([[[((([[[[(([[(([([[(((([((([[([((((([[(([[([(([[[[[[(([(((([[(([[[(([[[(((([([[([[[[([(([[[[[[[([[(([(([[[[[((([(([[([[([[[([(([(([[((([[(([([[[[[[([([[[[((([([((([(([([(([(([([[([(([[[([[[(([([[[[([([([[(([[[(([[[[[[[(([[[[([(([[((([([((([[([[([[[[(([[([[[[[[([[[([[[([([[[[([([[([(((([([[[([([[[([[[(((([[[([((([([[([[[([[[((((([(([([([([((([[[((([[((((([([[((([[([[([[([(([([([[(([(([[[([[([(((([[[[[([[(((([[[(([((([[[[[([([(([(([([((((([([([[([[[[(([[([[[((([[[[[([[(([[[[((((([[([[[[([[[(([([[[([(([(([[((([([[(([[(((([(([[[(([([[[[[[[([([(([([([([(([[[[[([((((([[((([[[[([([[((([(((([[[(((((((([(([([[([(([((([([(([[[[[([[([((([(([([[[(([[(((([[((([[([([[(([((((([[[((([([[[([([(([[((([[((([(([([[([[[([[[[[(([(([[[((([([((([(([[([(((([[[(([(((((([[[(([[[([([([([(([(([[([[[([[[([([((([[[[[[([(([[[(((((((((([[([[[([(((((((((([([(([[[(([[[(([((((([(((([((([[[[[(([([[[((([((([([[([([[[[([[(([[[(([[[([((([[[(((([[[[[(([([(([([([[(((([([[[[((((([[[[[(((((((([[[[[[([[[[((([(([((([[[([([[[[(([[([((([[[[[([([[(([(([([(([[[[([[[([[[[[([[[([[([[([(([[[[[([([[[([[[([(((([[[[(([[[[[[[[[([[((([[([[([([((((([([[((([([[[((([(([[(([(([(([[[(((([[[[[([[[[([(([[([[[[[(([[[[([(([[(([[([([([([([([([([[[[[[[[[([([[[((([[[([(((([([(([([([[[[([(([[[[[[[([([(([((((([([[[([[([[(([(([(([([[(([((([([([((([[[(([[[([(((((([[(([((([([[[[[[[[(([([(([([((([[[([((([[([((((((([[[[(([[([[[[[[[([((([[[[[((([[[([[[[[((((([([([[((([((((([([[[([[((([(((([(([([[([([([[(([([((([[((([(([[((((([[(([[[[((([[([((([((([([[([[(([[(([[((([[[[(([([(([(([[([([(([[(([[[[((([(([(([[[(([(([[([[((([[(([[[([[([([[((([(([[((([((([([[[[(([[[[[([([(([([[([(((([[([((([([[([(((([([[[[([(([(([[[[[(([([[([[([(([([(([[[[[([([(([(([[[[[[[(([[([([(([[[(((([([[(([[(([[((([([(([([((([([([[([[[([([[[[[[[([[[[[[((([[([[[[(([[[[([(([([[((([([(([[[[[(([[[([[[(([[(((([(([[(([[[([((([[[[(([[[[((([[(((([([(([[(([[[[[[([((([[[[[([([([[([([[((((((([(([([([[[[((([[[([[[[([(([[[([([([([([((([[([((([([(([([[[(((([([(((([[(([((([((([((([[[(([[[((([((([[[[[[[([((([([([[[[([[[([(((([([[([([([[([(([[[[[[[[([([(([(([[[(([([([[((((([[(([[[((([[([[([((([[([([[(([[[(([([[([([([[([([[([[((([((([((([((([[((((([[[[(([[[([[(([[[((([[([([([[([(([[((([((([(([[(([((([(([[[[([([(((([([([([[([[([[[[[([[[(([[[(([[([[((([[(([([[(([[[[([([([[[[[[[((([[([[[(([(((([((((([[([[[(((([[[[([(([((((([(((((([[([[[[([((([[[(([([[([[[(([[[([(((([((([([([(([[([(((([[([[(((([([[(((([((((([[(([[[((((([[[[(([[((([[[([((([[[[([([([[([(([[((((([(([([[([[[[([[[(((([[[(([[[([([[(((([(([[([(([[(([[((([([[(([[(([((((([[(([(([[((([[[([([[(([(((([([[[[[[[([[[[[[([[[([[[((((([[(([(([((([((([[[[[([[((([[[[([([([[([[([[[[[[[([[[[([[[[[[([((([[[(([[(([[(([((([([(([[([([[[[([[([((([([[(([(([(([(((([(((([([[[([([([([[[[(([[([[(([([[([[([(([(((((((([[[[([((([[[((((((([[(((([[((((([(((((([[[[(((([[([[([([[[([(((([([[[(([[[[[(((([[[(([([([((((([([(((([(([([[[(((([([[[(([[([(([((([[(([([([([(([(([(([((((([[((([([[[([(([[[([[[[[[[[(((((([[([(([(([((((([(([((([((([([[(([[(([[(((([[[(([([([((([(([([(([[(((((([([(((([[[[[([([[((([([[([[([([((([([([((([[(([([([[([(([(([([(([([(([([(([[[(([[(([([(([[[([([[[[[([([[[[[(([([(([([([(([[[((((((([[(([[([[([[([[(((((([(((([(([([[([([([[(([[[((((((([[([[[[[[[(((((([([([(([[([(([[((((([[[[(((([[[(([([([(((([([([([[(([[[[[[[([[[[([([(([([(((([[[[(((((([([[[([[([[([([[[[[[([([([[(([[[[([[[[[[[[[([[[[((([[[([(([[([(([([[[(([[[((([((([((([(([((([((([[[[[[[[[[[[[((([(([[(([([[[(([[([([[[([(((([[[(([((((([(((([(([(([([[[([(([((([[([([([([([[(([([([(([[(([((([[([([([[[[(((([[([([[[([(([[([([(((([[[(([[(((([[([[([([[[([[([(([(((((([[((([(([(([[[[[[[((([([[(((([([[[[(((([[([[([([((([[[[([[((([(([(((([[[([[([[([(([(([[[[([[([[([([[([(([[([(([([[[[[([[([[(((([[([[([([([[[([(([([[[[[((([([([[[(([(([[(([[[([[([(([([(([(([[[([((([[(((([[(((([[((([(((([[([([[([(((([(([((((([[((([((((([([([([([(([([[[[[[[[((([[([[[[[[([([(([[(((([[[[((([[([([[[[((((([(([([([[(([((([[[[((((((([[[([[([[([(([([(([((([[([([(([([(([(((((([[(((([[([[([([[[[([[[((([([[[(([[(((([[[[[[[[([[(([[[[(([[[([([[((([[[[(([(((([[((([([[(([(((((([((([((((([([([[([[([(([(([[(((([[(([(([([([[((([((([(([([[((((([[[[([[([[(((([([([(([([[([([([([([([(((([([[[((((([[[[[((((((([((([([[[(([(([(((([[([[[([(([[([(((([([[([(([[((([[[[[((([((([[(([[((([(([([((((([([([(((([[[(([(([((((([(((([((((([(([[(([[[(((([(([([[[([(([(([(([(([([([(([[(([[[(([([(((((([((([[([([([(((([(([(([(((([[(((([[([[([([[[[[[([([[[[[([([((([[(([[[([((((([[[[[([((([([[(((([([(((([[[(([(([((([([([[[[(([((([[[[[([[[[[[([(((([(([([[[[[[(([[[([(((([([[[[([[[[[[[((([[(([[(([([(((((((([([((([(([[((((([([(([[([[([[[([(([[(((((([([[[([([[((([[[([(((([[[[[[(((([[(([[([([[(([([((([[(([[([[[[[(([[[[[(((((([[([([(((([((([[[[[[([(([(((((([[([([[[(([(([(([[(([[([[[([[[[(((([[([[[[[([(([([([([[([((((([(((([([[[[[([[[(([[[[((([((((((((([[[(((([([(((([[[((([[((([([[((([((([([[[[([([(([([(([([([[[([((([[[[((([[[([[[[[((([(([((([([(((([([(((([[[(([[(([[[[[([[[[(((([[([(((([[[([[(([([((([[[((([([[[([[([[[([([(([(([[([[(([[[[(([([[(([([([[[[([[(((([[([(([[[[[[[((((((([((([[[(([[(([(([([([(([((((([[[([(([[[([(((((([[[[([[[([[[[([[[[((([[[(([([((((([[[[[[([(([(([([([(((([(((((((([[[[[[[[([((([[([([[([[[[([(((([[([((([[([([(([([(([((([([[([[[([[(((([[([(((([[(((((((([[[([[[[(([[[((([(([(([[[(((([[([[(([[[([([([(([([(([[[[[(([([[(([[([[([([[(([([(([[[[[[[[((([(((((([((([[[[[(([(((([([[[[([([[[(([[[(([[[[[[[(([[([(([[([([[[[(([[[[[[(([(((([[(([((([[[[[(([([((([[((([[[[[(((([([(([[(([([[[[[((([[(([[([[[[([([([(([((([([[[(([([([[[([[[[[[[([([[[(([[([([([(([[([((([[[[([[[([[(([(((([[[[[([([[(([([[([(([[([[[[[([[[[[(([[(((([[[[[[(([[([[([[(([[[[[[([((([[[[([([(((([((([([(((((([[[([[([(([((([([[([(([([([[[([(([([((([(((([[([([[[(([[[[([((((([[(([[(([(([(([([([(([[([([[([(([(([(([([(([([[([([[(([[((([([(([([([[([(([[([([[(((([[[([[[(([([([(([[((((([[[[(([(((((([([[[([([[(((([(([[[[[(([(([(([([[(((([[[([([[[([[([[([((([[[[[[((([([[((((([([(([([((([[([((([[[([[[([((([((([([[((([([((([(([([[((([[[[[[((([([[[((([(((((([((([[[([([[([[[(((([[(([[[(([([(((((([[([((([((([([[[([([[[[(((([([((([(((([[[[[([[(([[[((([([[([[[(([(([([[(((((([(([([([[[((([(([[((([(((([([[(([[((([((([[[[[((((([[([[[[[[[[([(([([([([((((([([[([([((([(([[[(([[((([([[[([(((((([[((([[((([(((((([[[(([(([[[([[([[[[[[[[((([(([(([[[[([([([(([[(([([(([([([([((([([[(([([([([((([[[((([(([[[[(([[([([(([([((((([[(((([[([[(([([[(([([((([([[(([[[[[[[([[([([[[([[(((([([[[([[[([([([(([(([[(([[([[([[(((([(((([[(((((((((((([[[[[([(((([[(([[[[[[([((((((([(([[((((([[[[[([(((([([[[([([([[([([[([(((([[([(((([[[(([[([((((([[[[((([[(([[([((([(((([([[(([([[([([[((([(([[((([(((([(([[[[[[[(([[[((([([[([[[[[[([[((([(([(([([[([(([(([(((([((([[[[[([[(([([([([(([((([[[[[([[[[[[[[(([([([[[([[(([((([[([[[([([[([[[([(((([([([(([[(([[([[((([[[[[[(([[(([[([[(([[[[(([([(([[[[[[([[(([([[((([[[(([([(([(([([[([((((([(([((([([[[([([([([([(([[[([([[([((([(((([(([([[[([[([([[[(([([[([[([[([[([[[([[([([[[[([([([[[[[([[[[([[[(((([[[([([[((((((([[[([[([[[([[(([[[(([[([[[[([[[((([[[(([[[(([[(([((([[[(([[([[[([([[[[(((([([(([((((((([(([(([[(([[([[(([(([([[([([[[([([[([[[[((([([[[([[[[([[[[((((([([[[[[(([([[[(([([([[[([((([(((((([([(([([[[([(([[(([([[([[[(([([[([[[((([([[[((([(([[[[([((([(([(((([[(([((([[(([([([([([([(([([[[([([[([([([(((([[[[([([([([[(([[([[((([(([[[[([(([[[[([((([([[[[(([([((([(([[([[(([((([([([[[(([(([[((([[(([([([[[[[[((((([[[[([(([((([([[[([[[([[([[[(([[[[((([[[([([([[([([[([([[(([[[[(([([[[[[[(([(([[([[[[[[(((([[(([[((([[[([[[(([[((([[[((([((([[[[[[[([(([[[[(([([[[(([[(([[[([([([[(([([[[[[(([[[[(([[([((([([[[(([([([[(([([((((((([[([([[(([((([(((([(([([(([[([[[([[[[(([(((([[[([[((([[[[[[[[[[(([([[(((((([([[([[(((([[((((([[[[([([[[[[[[[(([(([[[(((([(([(([([([[[(([(([(([[([([[(([[([(([([(([[(([((([([([(((([[[[[[([([[[[([[[[[((((((([[[[[([((([([([[[[([(((([[[((([[([[(([[([([[([[((([(([(((((([([[[[([[[[[[(([([(([[(([[[([[[[[(((([(((((((([([(([[[[([[[[[([((([([[([[((((([[([[[[[[[((([(([([([([[[[([((([[[[((([([([[[((([(((([(([(([([[([((([[([(([([(((([((([[([([(((([[((([([[[([(([[[[[[[([([[((((([[([[[([(([[[(([[([([(([((((([[((([([[([(((([((([([(((([(([[([((([([[[[([[(([(([[([[[((((([([[[([([([(([[[[[[(((((([([([([(([(([(([[((([[(((([[[[[[([((([([[[([(((([((([((([[((((([(([[[(([(((([(([[(([([[([[[([[((([(([[[[[[([(([[[([([[[[([([[(((([((([[[[(([[[(((((((([[[[([[([(([[([[(([[[([([([[[(([[[(([[([((([((((([[[((((((([((([(([([[[((([([[(((([([([([[(([[[[[[[([[([[([[[[((([(([((([[[(((([([[[[([[[([[([[([([([([([[[[((([([(((([[[(([([[([[[([[[(([[[[[([[[([([([[[[[((([((([[[(([[(((([[[[[[[([[[[[(([[(([[[[[[((([([[[([(([([[((([[[[[[[([([[([[([([[[([[([([(([(([((([[(([([[[([([[([([[[[((([[(([(((([(([[[([[[[(([[[[([[(([(([[[(([([([[(([[[((([((([[([((([((([[[[[([[[[[[[[([[[[([([([([[[([[((((([([[([((((([((((([((([([(([([(([[([(([[([[([[([([[[((([([[([([[[[((([[(([([(([([[((([([[((([([([([[[(([[(([(([([[((([[[[[[(([(([[[([[([([[[([([((([([[([([[(([((([(([((([(([[(([([[([([(([[[(((([[([(((([([[[(([[([[[([[[[[(([[[[(([(([([(([([[(([([[[(([[[[[[([[([[[[(([[(((((([([(((([[[[(([[([((([[(([(((([[([[((([(([([[(((([([[([((([[([[[[[[[[[([[[[[[[[[([(((((([([[[([[((((([[[([([[((([[([[[(((([[([[[([[[(((([[[[[[[((([[[([[((((([[(([[(((((([(([((([((((([[((([[[[[[(([([[((([(([[[[[[[[(((([[[([(([(([[[[([[[[[[[[([((([[[([(([((([[([[[[[[[[[[((((((([[[[([[((([(((((([[[[(([[((((([[[([([([((((([([([([(([[[[[[([([[([([[(([[[[[[[([[([(((([([([((([[[[(([(([((([[[[(([([[([((([([((([[[(([(([[[[[([([([(([[([[[([([(((([([([((((([([([[([[[[[([[[(((([[[([(([(([[[(([([((([([[([[[([([(([[((((([([[([[[(((([[((([((((([([[[([(([(([[(([([[((([([([((([((([([(([((([[((([([([([([([((([[(((([[[([(([[[(([(([[[(([([([([[([[((([[[((((([((([[[(([(((([[[[(((([[([[(([[[[[[[((([([[[((([[(([(((((([[[[[([[[((([([(([[(([[(((([[([([[[[((([[(([[[[(((((((([([[(([[(((((([[([([([([((([([[([[[[([[([([[[[([[[([([[((([([([(((((([([[[[(((((([[[([[(((((([((([(((((([[([[[([(((([([([[(([([[((([[[([[([[[[(([[([[(([(((([[([[[[[[([[[([[(((([([[(([[([[[[[[[[[[(((([([([[[[([((([([([[[(([[[(([((((((((([([[(([[[[[[((([(([[[[([([[[((([((((([[(([[((([[((([[[([(([([[([((([[[[[[[((([[[[[[([[[([[[[(([[([([((((((((((((([([[[([[[[[([((([[((((((([[[((([[[[[(([(([[(([[([[(([[[[([([[[[[([[([(([([[((((([([[(((([(([[[[[([(((([(([([[([([[([([((([((([([[(((((([[((([[([[[([(([(([[[[[(((([([[([([([(([[((([[([([[((([[[([[[[[[[([(([[(([([([[([([[[([([[(((([(([((([[([[[[[[[(([[[[[[[[((((([(((([[(([[([([[(([([[[(([(((((([((([[([([(([[([[[((([[[([[(([[[((([([((([[(([[[([((((((([[(([(((([([([([([([([([[[([[([[[(([[[[[[(((([[[[[((([([(([([(((((([([(([[([(([[((([[[[(((([[([[[[(([[[[[[((([[[[((((([(([([[([[(([[([[(((([[[(([([([[([(([[[(([([((((((((((((([([[([[((([[([[(([[((([[[[[(([[([[((([[[([[([([(([([[((([(([[((((([[[[(([([([[(((([[[[(([[([[[(([[[([((([([([((([[[([([[[(((([([[[[(([(((([[[(([[[[[[[([[[[(([((([[[([(([[([(((([([[[(([[[([[[[[([[((([([(([[([((([[([[([[[[(([[([[(([((([[((([((([(([((([([[((([([[[[([([((([[(((([([[([([[([([(((([([([(([([((([((([[(([[[[((((([[([(([[[[([([[(([[[[[[(([([([[[([([[(([([([(([[((((([[[[[([((([[(((([([[[(([(((([[[((([(([([(((([((([[(((([[([[(([(((((((([[[(([([([([[[(([[((([(([[((((([[([[[[[[(([(([[((([([[((((([[([([[([([((([([[([[([((((([[[[[[([([[[[([([[[(([[[[[(((([[(([[([(([[([[[[[(((([([([([[[(([(((((([((([[([[(([[[(([[((([([([(((([[((([([((([[[([[([[[[((([[(([[[[[([[([((([([[[([((([[(([([(([([(([((([(((((([([([[[[[[([(([[[[(([[((([[[[[([[[[([[[((((([([([(([[(([[[([[([(([[([(([([(((([(([[([(([([[[[[[([[[[([([[[[((((([[([(([([[([((([[((((([([[[(([((((([([[((([([(([(((([(((([([[[([([[[(([[[([[[([[([((([[[([([(([[(([([(([[[([(([[([[[(([([[([[[[[[([[[(([[([([([([[[([[([[([[((([[[(([[[[[[([[([((([([[[([[([((([(([((([([((([([[((((([(([[[[[([[([([[[[([([[[[([[((([([([[([[((((([[[(([[([[[(([[[(([((([[([([[[[[[[[([[[(((([[(([[[([[((([([(((([(((([(([([(([([[(([[([[([[[[[[[[([[[[[([[[([([[((([([(([([((((((([[(([[([(((((((([[[([[[[[[([[[(((([[([(([[([[(([[[([([(([[((([[[[((([([[(([([[((((([(([[((([((((([(((([[(([[([([(([[[([([[([(((([[(([[[([[([([([[[(([(([(([([([([[[[((((((((([[[[([[[[((([([(([(((([[[([[([[[[([([(((([[[((([([[([[[((((((([[([[([[(((([[[(([([[((([([[[(([[(([[[([[[[[[[(((([(([([[([[[(([([[[([([((([[([([((((([(([[[([[[(((([((([[[((((([[[[[[[[[([([[([(([([(((([[[(([([[([[(((([((((((([[([([[([[[((([[(([[(([([((([[(([(([[[[[[[(([[[[([[(((([(([[[[[([[([[([[[[[([[[[([[[[([(([[(([[([[([[([(([[[[[([[((([([[([(((([(((([[[[(((([[([([[(([(([[[(([[((([((([([[([([[[[[[[[([(([[[([[[[(([(((([([[([(([[([(([[((([(((((([([[[(([((([((([[[[([[((([[([[(((([[[[[[[[(((((([((((((([([([((((((([([[[((((([(([([((([[[[(([([[[[[[((([[([[([[((((([[([(([([[(([((([[([([[[[([((([[(([(([[[(([(([([[([[[((([((([(([([[([([[[((((([[([[[[[[[(([([(([[([[[([(([([[[([[[(((((((([(([([[[((([(([[[[(([[(((([[(((([((([[(([[(((([[[[(([[(((([[[(([([(((([[([([[[[([[[[[([(([[([[([([((((((((([(([(([((([(([[[[(([([[[(([(((([(([((([[([[([[[[(([[([(((([[([((([[([[([(([[[[[([([(([([([([(([[[(((([[[[([([[[(([[([[[(([[([([([[[[[[[[[(([[[[[[[([[(([([[([([[(((([[[[([([[((([[[[([([[[[[([([[[[[((((((([(([(([((([[([[[[[[[([(([[[[[[((((([[[([([([[([(([[(([(([[(([(((([[([(([[((((((([(([((([((([([([[[([[[[[[([[[(([[([[[[([((([([[[(([([(([([[[[[(([(((([([[[[[((([[([[([[[[[[[[[[[([((([((((([([(([[([[[(([([[([[[[([[[[(([([([([[((([[([[(([([([(([[((([([(([[([[([[([[[([(([[(((([[[[[([[[((([[[(([[[[(([([[[([[([[((([[[[([[[(((([([[[[([([([[([([([((((([([[[[([((([[[(([[[[(([([[(([[([([[([(([([(([[[([(([[[[([[(([([[[(([(([((([(([([(([([[[[([(([[(([([[(([([(((((([(([[([((((([[[([[[(([([[[((((([[([[[[[(([[[[[([[([([([[[(([(([([[([(([([([(([([(([[((([[((([[([[[([[((([([([[[[[((([([([[[([[(([(([(((([[[[[[[[[[[(((([([([([[[[[(((([([[([(((([([([(([(([([[([[(([((((([([(([[[[(([(([((([[[[[[([([([[[[[[([(([(([([([([[[((([[[(((([(((([((([[(([([([[(((([([(([[[[[([([([[[[[[[[([[[[[[([[([[((([([([[([[([[[[((([[[([([([[[[([([([([[(((([(([[([((([([(((([(([(([[(((([((([(((([(((((([((((([[([(((([[(([[[[[[(([[([[[[[[((([(([(([[[([([[[((([(([(([(((([([[((((([[(([[[(([(([[[[([[((([[[(((([[((([[[(([[[[[([[[([[[[[(([[((([[(([[([(((([[[[(([[([(((((([(([([([([[[[[(([([((((([([(([([([[((((((((([((([([[((([[((([([[[[((([[[(([([([[[[[([([((([[[([([[([[([(([([[((([(((((([(([([((([([(([([([[[((([((([([([[([[([[((([[(([[[(((([[[((([([([(([[[[((((([[((([[((((([((([((([[[[[[[([[([([([([[[([(((((((([(((([([[([([([([[([[([([[((([([[[[[(((((([[[[([[((([(([[[([[[(([[[([([([([([[[([(([[[(([([([([[((([((([[([[(([[((([[[(((((((((([([[(((([[([[([([(([[[([[(([[[[([[[[([(([([[(([((([[[[[([[[[[((((((([(([([([(([[[[[[([([((([[((([([[((([[[[[([[((((([[[[([[(([([[[[([[[(((([((([([[[((((([[(([[((((([([[[([[([(([((([[([[[([([(((((((((((([[[[[[([(([(([[[[((((([[(((((([([[((([[(([[(([([([([[[((([[[(([([([[[[(([([(([([[[[[(((([[(((((([[(([[((((((([[[[((([[(([[((([[([[[[([[(((([[(((([([[[((([[[([[[[[[(([[([((([[[([[[([([[[[[(((([(([[[[[([[[([((([(([([(([[[[(((([([[[([[([[([([[[((((([([[([[[[(((((([(([[[[[[((((([([(([[([((((([[[(((((([([[[([(([[([([([((([([[[([[[(([([[[[(([(([([([(([(([([[((([[(([[[[[[[([[([((([[([(((([(([((([[([([[[[[(([(((([(((([[([([([[[(([[[[[((([([[([[[[(((([([([[[(([([([([[[([[[[[((([[[((([[(([(([[[(((([([([([[[(((([((([[([[((([([[[[[[[([(([[((([[[[(((((((([([(([([[[((([[[[([[([([(((((([[[(([[[[(([([[([([([[((([[([[([((([(([[[(([(((((((((([[((((([([((([((([[[([[((([[[(([((([([[[[[[[([([[[([[(((((([(([[([([(([[[[[([([[[((((([([(([[[([((([([[(([([[(([([(([[[((([(((((([[([[((([(([[(([([((([[([((([([((([[[([[[([([([[[[[([([(([([(([[((([[[([[([(([[(((([[([[([[((([[((([(([[[((([([[[[[([(([([[[([[(((([[[[[((([[(([[(([[[([((([(((([[([[([([[[[([[[([[[[(([([[[[(((((((([[(([((([[[((([([[([([[[[[[[[[[(([[(((([[[([((([[([[[(((([((([(([(([([((([((((((((((([([[(((((([([(((([([((([([[((((((([[[((([[[[[((([(([[[((((((([(([(([[([[((((([[([((([[([[[[([([[[(([[((([([((((([([[[(([[[(((([[[[[[[[([([([[[([[[[[(((([[[[[[[[([(([(((((((([([([[[([[((([[[([(([[[([((([(([([[([[[[([(([[[([[[[(([[[(([[([[[[(([((((([([[(([[(([[((((([[[[([[(([[[([(([[[[([[[[[([[([[[([(([[[[(((([([[[[([[([[((([[[([[[(((((((([(((([(([[[[(((([[(([([[(((([(((([(((([[[[[[([[(((([([((([[[([[[[([[[([(([([[([([((([[[([[([([((((([[([[([(([(([([([([[[[[[[(([((((([(((([([[(([[[[([([([[(((([[([[[((([[([([((([([[[[[(([([((([[[[[[[(([[[[[[((([[(([[[(([([(([(([([(([(([((((((([(([(([[[[[([(([[([[([([[[[[[((([[((([([[[([[([(((([([[([[(([[([([((((([([[[[([[((((([[([(([(([[[[((([[(([[[([[(((([([[([(([([((([[((([[([[(((((((([[([(([([[[([[([[[[[(([([[[([(([[((((([([[([([[[([[([([([((((([[([([[[(((([(([((([(([[[(([[[(([([[[(([[(([([[(([([(((((([(([([[(([([((([([([[([((([([[[([((([([[(((((([([[(([[[([([([((([([[([[(((([[[((((([[[[[(([[([((([[((([([[((((((([(([[[[(([((([[[([([([[([[[(((([((([(([([[([[[[[[[(([([[(([(([[[[[[[[([[[[(([[[([([[[([([[[(((([[(([[(([[[[[[((([((((((([[[([[(([[(([[[([([((([[[[([((([[[([[([([((((([(([((((([[[[(([[[[[[([[([((((([[((([[[[[[(([[(([[[[((([[[([[[[([([(([((([[(([[[([([[[[([((([([((((((([((([[([(([(([([[([(([(((((((([[[[([[([[(([[(([([[[([[(((([([([(((([(((([((([((((([([([[([(((([[[[([[([([[((([([(((([[[((([([[([([((([([([([[[(([[((((([([((([[[[[[((((([[[[([[([([([(([(([(([[[[[([[[[[[[[(((([([(((([[[[[[[[[[[[[([([[([([[([[([[[(((((([([([[([[(([(([[[[[([[([([([[[([([[(([(([(([([(([[[[[[[[([[[(([[[[(([([([([([[(((([((([[[[([[[((([[[[((([([(([([[[(([(([([(([(([(([([[(((([((([[([[([[[[[[[([[[([(([[(([([((([[([([(([[(((([([[(([[((((([[(([[((([([(([[[[([([[[[[([[[(((([[[([[(((([(([[[[(([([([(([[[(([[[[(([[([[([([([([[(([(([[[(((((([(((([[([((([([((([([((([[[([([([((([((([([(([[[([[[([(((((((((([(([[((([[([([[((([(([[[[(([[[[([(([(([((([[[([[[[[([[[([((([([([[(([[[[[((((([[([[(([(((([([(([[[([[[((([[[[([[([((((([([[[(([(([(([[([((([([[[[(([([((([[([[[((((([(([(([[([(([((([[((([((((([[([[[[[[[(([[[[((([([(([[[[[([[[[[[[[[(([[([(([(([[[[(([[[([([[(([[[[(([([[([[([(((([(((([([([((([((((([([[[([[([[([(([[[(((([(([(((([[[((([[(([[[[([(((([[([(([[([([[(([(([([(([[([(([(((([[([([[(([[[[([(([([[[[[(([[([((((([[[[[([[[([[[([([[([([[([[[(((([([[((((([[[((((([([[((([[[[([[((([(([([([[(([[(([[([([(([[[([([([(([[((([([[[[[[([([[[([(([[[[[([([[(([([[((((([[[([((((((([([(([([[[[([(([[(([(([[((([[[[([[[[(([(([[(([((((([([[(((([[[[([(((((([((([[((([[([(((([[[(([(([[((([([((([((([[([([[([[([[[([[([[([[[[([[[([(((((((((([(([(((([[[([[[[[[[(([[(([[(([[[[[[[[(([[[([([(((([[[[[[([[([[[([[[[([((([([(([[[[[(((([([([[([[([([[[((([((([[([([[[(([([[[[(((((([([([[[[([(([([[[[(((([([[[([[((((([[([[([[(([(([([((([((([[[[([((([[([[[([([((((((([[((([([(([([([[[[[(((([[(((((([[[([[[[[((([(([([[[([[([[[[[[[[[[[([[[((((([([[[([[([([[[[((([[([([((((([([([[(([[([[[[[(((((((([[[(([[[[(((([((([[(([(([((((([[([([([[([(([(([([(([([((([[(([([[[([[[[((([[[[[([([[[(((((([[(([[[((((([([([[([[[[([([([[(([[[[([([([[(([(([(([[((([[[([([[[([([((([[([[([[([((([(([[([(([(([((([((([[(((([((([[([(([[[[([[([([[(((([[[([((([(([[([((((([([[[[[[[[([([[([[[(([[([((([([([[[(((([([(((([[[[([[([([(([([(((([[[[(([(([([([([[[[(([([([([((([([[([[([[([([[(([([([[(([[(((((([[([((([[(([[[[(([([((([[[[[([(([(([[([(([[[([([[((([([[[(([[[[[(([(([((((((([[([[[(((([[[([[([([[([([[((((([([[[[[[[((([[[((((([([([([[[(((([[([((([([[[([[(([[([[[[[[([([[[[[[(([([(([[([(([[[(([(((([([([([[(([(([((((([[([(([([(([[([[(([[[([(([([[([[[((((([[[([([[[[[([(([[[([([([((((([([[[(((((([[[[([[(([[(([(([[([(([[[([[[(((([(((([((([([([([((((((([[[[[[[[(([([([[([(([(([([([([([[[[(([[[([[[((([[(([[[([([[[[[[([([([(([([([[[[(([[[[[([[([[([(([([([([[[([([[([((([((((([([[((([[([[[([[(([(([((([[(([(((([([(([[[(([([((([[[([(([[[[[(((((((([([[((([([[[[([[([([([[(([(([[((([(([[((([(([(([((((((((([([[(([([([(((((([((([([[((((([(([[(((((([[[([(((([(([[([[[(([([([[((([[[(((([[[[[((([((([[[((((([[([[([[[[([(([([[[([[[[[[([[[([(([(([([((((([[[([([[[([((([((([[((((([([[[[([(([([[([[([[[(([[[[[[[[[[(([[([[[[[[[([[[[[[[([([((([(([[[((([[[[[(([(([[[[[[([[([(([[[(([([([([([[[(((([[[([((([(([((([([[[[((([[[([[([([(([[(([[[[[[[([([(([[([[[([([[[[[([[[([((([([([(([[[[([([([[([([[(([([[[[[((([([(([([[([[[[[[[(([((([[[[[(([(((([[([(([([[([([[([([[(((([([[([[[[[[[[([(([([([([[[([[([([((([([(([[([[[(([([[((([[([[(((((([[((([[((([([([([(([(([[[[(((([((([[([([(([[[([[([[[[[[[[((([[([[([[([([(([[[(([(([((([[((([([[([(((([(([[([([[(((((([([[[[[[[[(([[((((((([[[((((([((([[[[[[(([[[([[([(([(([[(((((((((([[(([[[([[((((((([((([(([([[[(([[[[[[(([[[[[[([[([(([([(([[[(((([(([([[((([[(([((((([[([[[([[([[((((([[([[(((((([([([[[((([[((([[(((([[([[(([[[[([[([[[([[((([(([[[[([((((((([[[[[[(([[[[[((([[[(([[[[[[[(([[([[[[[[([[[(([[([((([[((([([(([([([([(([[[[[([[([[([[[[[[([[([([((([[[(([(((([([[[[(([[[[(((([[[(((((([(([[[([(([[[([[(([[[(([[[([([([([(([([([((([((((([(([([[[[([[[[((([(((([[([((([[((([([(([([[(([((([([[[[[(([[([[((((([[[[[((([([(([([([([([([[(([([(([([(([((([[[[[(([[(((([[[([[([[[[([(([[([([[[([[([[(((([([(([[[(((((([[[((((([(((([([([[[[([([([([(([[([[[(([[(([[(((([[[[[(([[[([([[((([[[[((([[[[[([[[(([((((((((([[((((([([([[[[[[[[[([[(([([([[[(([[[([([(((((([[(((([[[([([([((([((([([[[[((((((([(([([[((([(([(((([((([[[((((([[[([([([(([((((([[[([[[[[(([([([[[([([(((([(([[[([(([([(([[([[[([([((((([([(((([(([[[[([([([[([([((([[[[((([([((([(([[[[[[([[([[[([(([((((([([[[[[(((([(([(([[([(((([[([[[[(([(([[(((([(((([([[[[[(([((((([([([[[((([[([(([((([[[([[[(([([[([[[[[[[(([((([([[[[[(((([([([[[(([[(([[[[(([((([[[(([[((([[(([(([(([([[[((([(([([[((([((([[[[(([((((([([[[[[[[[((([[(([[[(([([[[(((([[([[([(([(((([[[[([[([[[([(([[[[[([[([[([[[[[[[[((((([([[(((((([[[[[(([((([[[[((([([[[[[(([[[(((([[(((((([[[([((([[([[([(([[([[([(([((([[[(([((([[[[[[([[((((([([[([[(([(([([[[[([([[[([[([([(([([[(((([(([[[[([([(([[((([[(([(([[[[[([([[((([[(([([((([(([([[((([[[(((([([[([[(((([[([[[[[[([(([((([[([(([[[([[[[((([[([[[[(((([(([(([([[(([([[(((([[((((((([[([((([[[[(([([[((([([[[(((([[[([[(([[[([([[(([((([[(([[[([([[(([([([([(((([([([[([[([((([(([[(([((([[(([((([[[[[[([[[[[[[[(([[(([[((([(([([[(([(([[(([[[(((([[[[[([[([(([([([[([((([(([([(([[([[[[[[[((([[[[[((((([[(([[(([[([[[[([[[(([[(((([[((([(((((([((([((([[([[([([([(([[[(((((((((([([[[[([(((([((([[(((([[(([[([([[[([[([(([[((([((([([[[((((([[[[([[(([((([([(([[(((([[(([[([[[[[[[([[(([((([(((((([((((([(((([[[((([[[[([[([((((((([[(([([([(((([(([([[[[[([([[[([(((((([((((([[[(([([[[([[[[([[(((((([((((([((([(([[([([[([(([([[([(((([(([[[([([(((([((((([(([[[[[(([(([[[[(([[[((([[([[(([((([(([[([[(([[[([([([(([[[[(([([[(([[((((([[([([(((((([[[[([[[[[[[((([(((([([[[([[([[[[(([(([(((([[(([((([(([([([[(([([((([((([((([(([([(([(((([[[([[[[[(((([([([([[[[([([([[[([([[([[([([[[((([([[[[[([(((((([[((([[[([([(([[([([[[[[[[[[[[[([[([[[[[[[([([([(([([[[([([[([([([[(((([[([([[([([[[([[([[([[[(([([([((((([([(([[[([[[([[[[[(([([((([(((([[[([((([((([[([[[[([[([[[([[[(([[[((([[[[[[[[[[[[[((([[[[([[[[(((([((([((((([([(([[[[((([([[([[[[[[(((([([([([((([[([(([([[([[([([(((([(([[(([[[[[(([[[([[([[([[[[((([[[([(([[([[[[[[((((([((((([[(([([[([([([(([([[[[([[([([[[[[[[[[[([((([[([(([([[[[(([(([[[[[[((([[[[[(([[(([[[([[([([((([((([[[(([([[[((([([[[([([[[[[([(((((([[[(((([[([[[(((([[[[[[([[(((([([([[([[[[([([([[[[([(([([[(([[([((((([(((([[([([([(([[[(([(((([(((([([[[[[[(([([((([[([[[([[([([[[(((([[[[(([(([([([[(([([[((([[[([[([[((((([([([[(([([[([(((([[((([(([[[(([[[[[[[([[(([((((([[(([([[[[[[[(([([[([([[[[[([([[[[(([(([[[(((([(([[[[[[[[(([(((([[[[(([[([[([[((([([([([([(([(([(([[[([([[[[[[[[[([[[(([[[[((([(([[([([([([[[[([[[([(([[([[[([(([[[([[([[[[((([((([[[[[[((((([[((([[(([[((([(([[[([[[([[[([([[[([([([([[([([[([[([[[(((([[(([[([((((([[(([[((([[[([[((([(([[[([([[(([([[(((([((([[[([([(([[[[([[[(([([[(([((([(([(((((([[(([[[((((((([[(([[(([[[[[[((([[([([(([[(([[((([([((((([([(([(([[[(((((([[[(([([((([[[([((([[([[[(([([((((([(([[([((([[([[(([((([([([([[(([[[[[(([((([([[(([([([([((([[([[([([([((([[[[[((([[((([[(([([([([((([[([(([[[[[[[([([(([([[[([(((([[(([((((([[[((([[([[[((([[[[(([([[([[[[([[[[([[([((([[[[[(([[[(((((((([([[[[[([((([[(([(([(((([(((([(([((([[(([((([(((([[[[[(([[[[([(([((((([([[((((([(([(([([[([[([([[[([[[[(([[[(([[[[[(((([[[([[([((([(([[([[[([([([((([[([(([([(([[((((([[[(((([[(([[([([[(([[([[((([([([([[([([(([([([((([[[[((([[[[[(([((((([(([([[(((([([([([[[[([([([([[([([[(([[(([[(([(([((((([(((([[[[[[[[(([[[[[([[[([[((((([[[([([([[([((([(((([[[([([(([([[((([(([([(([[[[[[[((([[(((([([[[[(([([(([([[((([(((([[([([[[[[[([[[[[[[[[([[[[([[([[([(([([(([[(([[([[[((((([([(((([[(([(([[[[[([((([[(([(((([[[((([[[((([(([[[[(([[([[(([[([[(((([[(((((([[[(([[([[[[([[(([[[(([[((((((([[([[[((([[(([([[[([(([([((([[((([([[[[([[[[(((((([([([[[(([(([(([[([((([((([[[[([(((((((([[([[[[([[([([([[[[[([([(([[(([[(([[(((([([[([[[[(((((((([[((([[([(((([(((([[([[[[[[(([[([(([((([[[[(([([([[[([[[[([(([(([[[([[((([[[(((([([[[[[((([(((([[[[([([[((([[[[((([([[[((([((([([[([[((([((([[[([[(([(([([[[([[([(([[[[[([([([(([(((([[[[((([([[[([((([((([((((([[([([([([([((([(([((([([([(([([[[([([(([(([(([[[[(((((([([([[[[(([(([([[([((([[([([[[[([((((([([(([[[[([[[((([[[([(([[[[(((((([(([(([((([(([[([(((([([[[[[([([([[((([[([((([(([[[([(((((([[((([[([[[[(([[([([([([[[([[((([[[([((([[(([([[([[(((([([([[[(([[[([((([[([([[(([([[([((([([([[[([([[([[[[([((((([[[[([[[((((([((([[[([([(([([[[([([[([(([[((([([[[[([(([(([[[[[[[((([([[[([([(((([[[[[[[(([(([[[([[([[[[[[[[([((((((([[[[[[(((([[[(([[((((([[((([[(((([[([[[[(([[[([[([([(((([[[[[([[[([[(([([(([[(([[[[(([((([([(([([([[[[([([(([[[[([[[[[[(([[([(([[[(([([[([[((([[([[[((([(([[([[([(([(([([([[([([[([([[[[[((([([([[((([(([([[((([([[[[[([[[[[[[([((([((((([((([[[[[(([([(((([[[([[[(([[([[[([([(((((([([((((((([(((([[[[([(((([[(((([([(((([[((([([(((([([[[([(((([[([[(((([(([([[[[(([[[([[([(([([[([[[(([[[([[(([[[[[[[[[[([[[[[(([[[[[[[((((([[[([(([((([([([[[[([[[((([[([[[([((([[(([[(([[([[[((((([([([[[[([([[[((([[(([(([(([[[[[[[[([([([[[[[(([(([[([[([[[[((([((([[[[([(((([[(([[(([[[[((([[(([[[(((([([([[[((([[([(([([[[(([((([([([[([[([[[[[[[([[[(([[[[([[[[[[([([[((((([([[((([[[(([[([[[[[[([[[([[[(([(([[[([[([(([([([([[([([([[[((([(([[[[(([(((((((([(([[([(([[[[([([[([([[[[(([([([[[(((([([(([[(([[([((([[([[([(([((([[([(([([[([(([([([(((((([(([(([[[(([[(([[[([([[(([[[[(([([[([([[(([[([[[[[(([([([[(((([[[[[[(((([[[[([(([([[[(((([([[[[([[[[([[([[[((([(([[[((((([[[[[([[[([([([(([(((([((([([[[[(([[[[[[((([[((([[(([[([[[[[[([(([[[[(([[(([(((([(([([(((([((([[[([([([(([(([(([([[[[((([(([([([[([[([[([[([[(([([((([[[([[([((([((([[((((([[[[((([([[[[[[[(([([[[([[((([[[([[[[(([([([([([([[[[[[(([([([[[(((([(([(([[[([[[[(((([([[[([([([(([[[[[([[([(([[[((((((([([[((((((([[[[[(([([(([[[[[((((([[((([(((([([([[([[((((([[([[((([(([[[([([[[([([[[[[[[([([((([[[[[([[[[[[([([[[([((([(([[((([(((([[[[[[([([[(([[[[[[([(([(([[[[[((([[[((([[([[(((([(((([([[[(([[[[[(([([([[(([(([[([[(([[[([(([[[[[[[[[[[([[[[[[([[(([((((([([([[((([((([[([[(([([(([(((([(([((([(([[[[(([[(([[([([[[[[[[[[[([[([[([[([[([([([(([([([[[[([[(([(([[([([([([[[[(([([((((([(((([[([([[[([(((([([[([(([[[[[((((([([([[[(([(([[[(([[([(([([[(((([([[([[([[[[[[[([([([((((((([[((([([([([[[(((([[([[([(((([[([[[(((((((([((([[[[(((((([([[[[[([[[[[[[[[([[[[((([[[[(([[([[[(((([[((([((([([[[[[([([(([((((([[((([(([((((([([((([[[[[[([(([(((((([([([[((([([[[[[[([[[[[(([(([[([[((([[([[([([((([[[(([[[[(((([[(((([[([[[[[([(((([([(([[([[(([((([([[(([(((([[((([[[[[(([[[([[[([[[[([((([[[[[([([([[(((([[(([[(([[[([[[(((([[[[([((([[(([([(([(([([(((((([[[(([(([[(((((([([[((([(([(((([([[[([[([[[[[(([[[[[([[([[[[(((([(((([[(([[[[([[[[[([(([([[([[(([[([[([[[([(([([[((([([[[(([(([[([[[(([[(((((([(([[[[[([([([(((([[(([[([[([[(([[[(((([(((([[([([[[(((([[[([[([((([(((([[[[[[[[(([[[(([[([([([[([((([([([((([(([[((([[[[((([(([(([[(([[(([([[[[[([[[[((((([((([[[[((([[(([[([(([(([([([[[[[[(([[([(([[[[[[(([[(([(([(([(([([([[[(([[[[[[[[[(([[([(([(((((([(([[((((((([[([([[(([[([[[(([(([([[([([[[[(([[([[(([([(([[(([[([(([([[([(((([[[(((([[[[([[[[([([[(([[(((((([([([[([([(([([([([[([[[([([[[[((([(([[[([((([((([[(([[([([(((([[((([[[[[([(([[[([(([[(([[[(([((((((((([((([[(([(([[[[[[((((([(([[[[[(([([([[([((((([(([[[([[[(([(((([([((([([[[[[[([((([[[(([([[([(([(([(((([[(((([([([([[([[[([[(([[[([([[(([[[[(([([(((((([(([(([((([([[[(([[[((([[((([[[[[[(([[[[((([([(([[[([(([(([([[[([(((([[[([([([[[(([((([[[[((([[(([([[((([[[([(([[[(([([[([([[[((([([[[(([[[[([(([[[((([[([([([([[(([([[[((([[[[[[(([(([((([(([(([([([[[[[[[([(([[[[[[[([[[([[[([([[[([[(([(([[([[((([[[[((([(([([[([[[[[((((([(([[[([(([[((([(((([[([[[((([([(([[(([(((([[[(([([[(([[([[[([([(([[(((([[([([[[[(([[[([[([([[[[[[[[([(([([[[((([([[([((([([((([([(((((((((([[[[((((([(((((([[[([[([(([[([[((((([([([([[[([(((([[[[[([(([(([[([[[((([([((((([[[(([[([[([((([([([[(([[[[([[(([[[[[[([(((((([[(([([([((([[([([(([(((([[[([([(([[([[[[(((([([[[[[[((([(((((([(([[[[[[[(([[[([[([(((((([[((((([(([(([(([[[([[[([(([([([([[([[((((([[[[[[[((([((((([[[[[[[(([[[[([([(([[[[(([((([[(((([[[([(([[[((([[[[[(((([([((([([(([[((((([[[[([[([[(([(([([[([[([[(((((([[[([[([[[([([[([(([[((([([[(([[[[[[([[[(((([(([([(([[[(([([(([(([[(([((([(([[(((([([([(([(([[[([[([[[[[[[([([[[([[[[(((([([([[[[[[([[[[(([(([[[(((((((([([(((([[((([[([((([[([([([[([([[[[[[[([[(((([[[([(((([([[([([((([[([([[(([[(([([(((((([[[[[[([[[([[[[[[[[(((([((([(([(((([(([((([[((((([([[((([[[[(((((([([[([[[((((([[[(([[(([[(((([((((([[(((([[(([([(((([(([([[[[(([([([[[[[(([(([[[[([(((((([[[[((([[[[(([[[((([(([[(([[([(((((([((((([[((([[([(([([[[[[[([[[((([[[[(([([[(([[[[([([([[[[([[[[((([((([([([[((([[[[([[[[[[[((([[([[([[([[[[((([(([(([[([[([[[((([([([[([([[[[[([[[([[([[([([[(([[[([[([[((([[[[(([[[[[([[((([[([((([[[(([(([((((([([[([(([(((([([[(([[(([([(((([[([([[[[[((([[[[([([(([([[[([[(([[[[([([(([[([(([[[((([([[([([([[(([[(([(([([[[[[[((([(([[(([((([(([[([([[[([[(([(([[([[[[[[([([[([(([[([((((((((((([(([([(([(([[(((([(([([[[([[[[[[([([[([([(((([(([[(([[[(([([[[([((([([[[([(([[(((([(([[[([[[(([([(((([[[[([[[([([([[[[(([[([(([((([([[[([[[[[[[[([[([([[[[[(([[(((((([([[[((((([([[[[[[[[((([[([([([[(([([[([(((([([(([[[[[([[[[[([([[(([([[([(([[[[[(((([([(((([([[([[[(([([[([[[[(([[[[([[[[(([[[([([([[[(([[[[[(([(([([((([[[[[((((([(([[((((([[[(([(((([(([([((((([[(([[[([(([([((([[[([[(([[([([[([[(([([([([([[[[[[([([[[[[([(([([[([([(([[(([(([([(([([[(([[([[[(([[([[[[([[[[([([([([(([((((([[[([[[([(((([[([([(([(([((([[((((([[[[[[[[[[[(([([([[[[[([([[[([[([([[[[([[[([([[([[[(([(([[((((([([([(((((((([([(((([[([([[[[[(([[([([(((([((([[([(([([[(((([(([([[[([(([[([([((([([((([[((((([(([(([[([[[[[[([(([[((([((([[(((((((([(([[[([[[[([[(((([[(([[((([(([((([([([([(([[(([[[((([(([(([[[[[(([(([[[([(([[(((([[[[[[[([(((([([[(([([([([[[[[[[([((((([([[[([[[(((((([([((([[((((((([([([[(([[[(([(([(((([(([([(([[([[([[[[(([([([[([[([((([[(([([((([[([([[([((([[([(([([[[([[[(([[[(([[((([[[[([[([([((([([[(([[([([((((([([[[[([[[([((((([[(([([[(([[([[[((([([[[([([[(([(([[[(([[([((([[(((((([([(([[[[[[[[(([((([[[[[([((((([[[[([([[[(((([[([([[[([[([([[(([(([[((((((((([[[(((([[[((((([[((([[([[(([([(([([[[((([[[[[[[[[((([[[[[(([[((([(((([[([([[(([(([([[[[([[([[(((([[([[[[[(([((([(([((([((((((([(([([([([[[[(([([[[([[((([(([((([[[([([(([[[([[[[(([([[[((([([((([(([[[([([[[[[(((([([([[[([([[[([([[[([([[([(([([(([([[[((([(((([[[([([(([(((((([[[((((([(([(([([[[[(((((([(((([[([[[([[(((([([([([([[[[[[[(([([[[(([[[[([[[((([[[[[(([[([[[(([[([[[([(((((((([((([(((([([[([[[[([([[[([[(([(((([[[([[[([[[(([[([([[[([[[[[(((([[[(([[[[[[[[(((([[[(([[(([[([[[((([(([([((([[[(([[((([([(((([[([([[(([(([((([([[[[[(([[(((([([([((([(((([[[(([[(([[([([([[(([([([([[([[[[[([([((([([((([([[[([[[([[((([((((([([[([[(([[[[[([[[([(((([(([([([([[[([[[[[((([[(((((([[[([([((((((([[[([(((([[[((([[(([[[[([(([((((([([[([[(([[((([([[([((([[[([([(([((([[((([[[[(([[(((([[((([((([((([[([[[[[(((([([[([(([[(([[(([([([(([([([[(([([([(([[[[((([[[((([([[([[(([[((((([[([((([[[[([[[([(((([[[[((((([[(((([([(([[[[([[(([(([[[[((([((([[[([[[((([[(([(((([[([([[(([[[([[(([(([[[[[(([([[([(([[([[([[([[[[[[(([((([[[[[[[([((((((([([([((([[(([[[[(([[(([[[[[[([[([((([[((([([[((((([(([((([(([[[[(([([((((([[[[([(([[[([[([([[[[[(((((([([[([[[[[(((([(([[([[[[[([([(([[[[(((([[([[(([([(([([[[[([[((([[([[([(([(([[[(([([([[[[[((([([[(((([([(([[[([[(((([(([[[(([((([[((([[([[[((([(([((([[[[(((([[[([[([[[([([[[[[[[[[[[[[((([[[(([[[[([[(((((([[([(([(([((([(([[[[([(([([[[[([[[([(([[[([[((([((([([(([[(([([([[([([(((([[[([[([([[[[(([[([(([([[[[[([[[[[([[(([(([[(([[[[[[([([[(([((([((([[(((([[((([[((((([[[[(((((([[((([[([((([(((([((([[[([([(([[[((([[[[[[((([[(([[([[([[((((((([([(([[[[[[[(((((([([([(([(((((([((([([[([[(([[((([([([([[[([([([([[([[(((([[(([(([(([[(([(((([[(((([((([[(([([[(([((((([([[[([([([(([[[(((([([[(([(([[[([[[([[[[[([((([([[[([([(([(((((([((([([[(([((([[[(([(([(([([([(((([[([[([(((([[[[[((([([[([(([[[[((((((((([[([[(([([([([[(((([(([((((((((([[[([((([[[[[[(([((([(([[[[(([[((([([[([([(([((([(((((([(([[[([[((([[((([(([[([[([(((([[([([(([([[[[([[[([[[[(([((([([[(((([[[([[[((([([(([([[[[([(((([([[[[[([([[(([([([[(([([[[[([([([((((((([([((((([((([[([[[((((((([[[[[(([[([[[(([([([(([([(([((([(([[([[([[((((([(((([[[[[([[([([[([[[((([(((([[((([(([[(([(([[[[([[((([[[([(((([([[[((((([[(([(([[[[[[[(([[[(([[[[([([((((((((([[[[[[[[[[[[[[([(([[([[([[[([[([[(((((([(([[[([[[([([(([[([[[([((([[[(([(((((([(([([[[[[((([([[[[(([[[[[((([[[(([([[(([[[(((((([[([([[([(((([[([([(((((((([[([[[([([((((([([[([((([[[[[[[[([[(([[([[[([[[([([[[[[[((([[([(((([[([(([[[[(([[[((((([[[(((([[[[[[([[([[([[[((((([((([[([[[[[[[[(((([([[([((((([(([([[[(([[([[([[([[([(([((([[(((([(([([([(((((([([[[(([([(([([(([([(((([(([[((([[([[[(([((([[[[(([([[(([(([[[(([(([((((([[([[[[[([[[([[([([[[[([[(([(([[[[((([(([(([([[((([([[([(((((([[[[(([[(((((([(([([[((([(([[[([[(([[([([((([(([[[([([((([[[[([([[([([[[[[([[([[[(([[([(((([([[(((((((([((([((([[([(([[(([((([[[(([[[[[(([[(([([[(([([(((([([([[([(([[(([(([([[(([[([[(([((((([[[[[(((([[[(([(([([(([[[[([(([((([([([[[[([(([[([((((([[[(((([([[(((([((([((((((([[[[[[[[([[((([[([[(([[((((((([([(([[(([([([[([([([[([[[([(([[[[(([[[[([(([((([(([(([(((([([[[(([(([((([[((([[[(((([([(([[((([([((([[[([((([[(([[[([(([([(((([[(((([(((([((([[[[((((((([(((([[((([[([[[([[([[(([((([(((([[[((([[[[[[([(([[[[[[[[(([[([[([([([([([([[[[[(([(((([(((([[([[[([((([((([(([([((([[[([[(([((([([(([(([[([([(((([[((([(([(([[((([([(([(([([[[[[[([[[([[([(([((([((([[(((([[([(([[([(([([[[[[([((([((([[[[(([(((([([[((((((([[([[[[[(([[[(((((([[([([[[[[([((([([((((([[(((([(([[(([([(([((([((([[((([[[(([[([(([[[([([(((([([[([(([([([(((((([[(([[[[[(([([[[([([[([[[(([(([([[[((([(((([(((([([((([([[(((([([(([[([([([[[((((([[(([([([[[[([(((([(([([[([[[([([((([[([[[([[([(([[([([[[[((((((([([([(([[(([(([[(([[([[(([([(([[[(((([([((([[(([[(([[[([((([(((([(([[([[[[[([([([(([[([([[[([[([[([((([[[[([[[(([[([[[[[[[[[([([[([[([[(([[([((([[(((([([(([[[[(([[[[(((([([[([[((((([([[((([([(([[(((([[[[([([[(((([(([[[(([(((([[(([([[([[((((((([[(([[[([(([([[[[(([(([(([([(([([(([[([[[(([[(([[[[[[[(([([(([([(([[[([((([[(((([([([((((([[([[([[[(([[[(([[(([((([[(((([[(([([([(([(([[(((([[[((([[([[[(([[[[([[(([[(((([[[(([([([[[((([(([((([[[([[([(([[[([([([(([[([(([([([[[[([([([[[([[[[[((([[((([[[([(([[[(([([[(([([[(([[(([([(([[[[[[([[(([[[(([([[[([([(([([[((([[[(([((([([[((([([([[(([((([[[[(([([(((([[[(([[[[((([[[[[[(([[[[[[[[[[[(([[[[([[[[[((([(((([([((((((([[((([([[[([([([([([([(([[((([((((((([([([(([[((([[[([([([(((([[[([(([([((((((([[[(([((([[([[([(([([((([[[[([[(([[[([([[[[[([([[((([([[((((([([[[[[(((([[([[([([((([([[([[(((([[[[[([((([[[[[[((([([[([([([(([([((([[(([((((([[(([[[[(([[[[((([[([((([([([[([((((((([((([(([[[(((([[(([[([([((((([[[[[[(((([(([(([([[((((([[((((((([([[(([[(((((((([([([[([[[(([((([([[[[[[(([[[([([([[([[[[[[[[([[[[[(([(([[[([[[([(([(([[(((([([[(([([(((((([[([[[[([([(([([([[([([[[([([((([[[[([[((([[[[([[([(((((([[((([[([([(([(([[([(([([((((([[(([([[[(((((([[[[([(([([[([((((((([((([[((([[([([[((([[[((((([[[(((((([([([((((((([(([((([[((([[((([([[[[([[[[[(((((([[[[[((([([(([[([([([[[[((([(([((((([[[((([(((([[[([([((([([[[(((((([[([[[[[[[(([[[[[([([[([([[[([([[[[[[([[[[([[((([((([([[([[([(([([[[((([(([((((([[[[([((([[((([(([[[((([([[[[(([([(([[[[[([[([([(([[[[[[[[((((((([(((([[[[[(([[(([[[([[[([(([[(((([([[[(([([([((([(((([[[[[[[([([[(([[[([[([([[(([[[[([[([[[[([[[[((([[[[[([([([[[([[([([([[(([([[[[[([[(([[[[([[([[([([((([[[([([(([([[([[([(([[[[([(([[[[(([([([[([[[[[([[[[[[[[[[((([([[([[[[([([([(([[[((([([((([[[[(([(((((([([[[[[(([([[((([([(([([([([[[((([([(([[(([(([[([[(([[(([[(([((((([([(([([[([[([[[([[((((([(([[([[[((((((([(((((([[([[(([[(((([[((([[(([(([(([([[(([[(((([((([[[[[((([[[[([(([[([[([(([[([([([(([[[[([[[[[(([[[[([[(([([([[(([([[((((((([[[(((([([((([[[([[([[[[([[(([(([[[[((([[[[(((([[(([[([[([[[[(([([((([([[([[([([[((([[([(([([[[[[([([([(([[([(([[([([[[[([[(([([[([([[[[(((([(([(([(([((([(([[[[([[([([[[([[(([((([[[([[[((([[[[[(((((([((([([[[[(([([[([([(((([(([[([([[(((([[[(([[([(([[((((([([[[([[[[([(((([([(((([[[((([[(((([(([([[([([[[((([[(([((([(([[((((([([[[(([[[(([[[([(((([[(([(((([[[((([([[([[([[[[[(([((([((([(([(((([([[[[([([[((([(([((((([[((([(((((([((((([((((([((([[[[((([[(([(([(([(([(([[[(([[[[((([[[[[([([[([([[([([([[[[[[(([([[(([(([[(([(([([((((((((([[[([([[[([[([[((([([([[([([[[([[[[[[([(((((((((([((([[[([(((([(((((([[((((([([((([[(([[([([(([[[(([((([[[[([[([[([([(([[[[([([[[(([[[(([(([([([[(([[[[[(([[(((([((([([[(([((((((([([([((((([[([[[[(((([[(([[[[[([((([[([([((((([[([[([([[([([(([([[[[(((([([((((([[[[([[[([[[([[(([[[((([[([((([(([[([[[[((((((([((([[[[[([([[[[(((((([[([[[[[[[((([[([([([[[[([[([[[(([[([([[[((([[[([((([[[([([[([([[[[([(([((([[(([([[(([[([([([[[[(([([[[([(([([([((((([([[[[([(([[[[[[(((([([([(([[[([(([([[[[([[[(([[(([([[(((((((((([[[[(([(([([(([([[[(([([([([([[(((((([([[[(([([[[([[(([((([[(((([[((([([[[[(([([([([(((([[[([(((((([([[([(([[([[(((([[((([[[((([[[(([([[[(((([[[([([((([([([[[((([([(([[((([[(([[[[[[(([([((((([[[(([[[((([[[[[[([(([[(((((([([[[([([[([(((((([[[(([([[(([[([(([[((([([[[[(([[([(((([[[(([(([[[(([[(([[[[((([[[[[[[[(([[[[(((([[(([[[((([[(([([([(([((([[((([([[[[((([((([[[(([[((([[[([([[[((([([[[([[[[(((([((([((([[([(([(([[(([(((([(([[[((((([((([([[[[([([[((([(([[[([([[[([[[[((((([([([[[([(([[(([((([[([[([([[[([[([[[[[[([[(((([[([[([[[((([([([[([([[(((([[(([([(([[((([((([[(([[[([[[([[[[[[[(([[([[[([[[[(([((([(([([[([[(([(([[[[([([(([(([[([[[(([(([([[([(([((([([[[[[[[([[([([(([[[[[((([(([([(([[([[(([[(([[[([(([[((([[[[((((([([(([[([[([[([[[[[[([(([[((((([[((([[[(((((((([[((([([([([[([[[((([[[[[[[((([[([([[[([([([([[([[([([[[(([((([(([[[([(([((((([([[[((((([[[((([[[[[[[[([[[[[[(([((((((([([[[([(((((([((((((((([[([((([([(([(([(([[([[[([[[[([[[[(((((((([(([[[[([([[[[[[[[(([[(([([[(((([([[(([[[(([[(([((((([[[[[([([[((([[([[[([[[[[((([[(((((([(([([((([[[[[[([[[[[[((([(([[[([[((([(([([([[[[(([[(((([([[[([((([([(([[(([[[([[[([[(([[([(([[([[([[[[([[[([([[[[((((([[([([[[(([[[[(((((((([(([(([[([([[[[[[[[([[(([[(([[[[[(((([(([[([([([([[([(([[[((([[(([([([(([([[[(([[([[[[([([[([[([[(((([[[([[(([[([((([(((([((((([[([([[[[[[[([(([(([(([[[[[(([[([[(([((([[([[[(([[((([[[[(([((((([[[[([(([[[[(((([[(((((([([[([(((([(((((([[[(([[[([([[[[([([([([[(([([([([[[([[[(((([[[[(([([[[[[[[([((([[[[[(([[([[[((((((([[[[(([(([[([[[([[[(([([[([[[[[[[([[((([[(([[([([[[[([[(([[[((([[(([([((([([[[[((([((([(([[((([[[([([(((([([[((([[(([[(([[(([[((([[(((([([(([[[[[((([[([([[(([(([[(([([[(([([(((([(([[([[([((([(([(([((((([[(([(([[[[(((([((((((([([(((([([[([[[[([[[[[[[[[[[[([(([((([[([([[([[[[[([((((([((([(([[[([[[[[[((([([([([([[([[[((([[([(([[(([(((((([(([([[[[[(((([[([[[[(((([[([(((((([([[[(([[[(((([[[[([([[(([([([[[[[[([([[[([(([([[([([([[[[[([((([[(([(((([([([[([[[((([[((([(([(([[[[[[([[([[(((([((([([[([(([([[(([([((([[[[[(((([[(([((([([[[[[(([[(([[[[[[[[((((([([[(([[[((((([[(((((((([(([[([[(((([(([[[[([[([(((((((((([[[[[[([([(([[[([[((((((([(([[[[[[([([[((([(((((([([((([[(([[(([([((((((((((([([[[[([[[([[[(([[[([[[([([[((((((([((([((([[([[[[(([([[[(([[[[(((([[[([[([(([[([[([([(([[[(((([([(([(((([([[[[[(([([([[[([([([[[[[(([([([((((((([[[[((([[[[[[[[[[[[([[([([([([(((([[((([(([[([[[[([([(([([(([[(([([((([[((([[(((([[[[[[(((([(([[[([[[((((([[[[(([[([([[[(((([(([([[([[[[[([((([([([(([[[(((((([[[[([((((([[[[[[([[([[[[((([([([[[([(([(([([((([[(([[([[[[(((([[(((([((([(([[[[[([(([[((([[[[[([[((([[(([[([([(((((((([[[[[(([[[(([[([([[[[[(([[([[([((([[[([[(([(([[[[(([[[[([[([((((([([[([((([[([[[((([((((([([[((([([[[(([([(((([[(([[[([(([([((([(([(([(((((([[([[[([[[(([[(([(((([[([[[([([[[([(([([((([[(([([([[[([((([[[[[((([(((([([([[((([[[[[([[[[[(([[(((([[[([[(([([((([(([[[((([[[([((([[(([([[[[([[([[([[(([(([[((([[([[([(([[(([(([(([([[([[([((([([[([([(([(([[[([[[([[(([([[((([([([[[[[[[[[[([[((([([([((([([[(([([[[([[(([((((([[((([(([([[[(([([([[[([[[[[[[[([[[((([[(([((((([(((((((([[[[[[((([([([[[[(((([(([(([([[([[(([[((([[((((([[(([[[[([[(([(([[[([([[[(([((([([[[[(([[([[([[[(([[([[[(((([[((((((([[((((([[(((([[[(((([[(([[[(((([[([([[([[((([([[((((([((([([[(((((([(([(([([[[([([[[([[(([[([[[(((([[[(([([[((([([[(([[[((([([[[[([((([[(([([[[[([[([[[([((([([[[((([((((((((([(([[[(([[[([(((([([[([(((([[(([((((([(([((([([(([([([([([[[([[[((([(((([[[([[[(([(([[[[[([[[([[[(((([((([[[[(([[([[([[([[(((([(((([[([[[([(([[[[([((([(([[([([[[([[([[[[([[[((((([[[(([((((([(([[[((([([[((([[([[[[[(([[[(((([[[([[[(([([(([(((((((([[([(([[([((([([[([[([(((([[((([([(([[[[[[[[(([[[[[[[([([([([([(((([[([([([(([((([[((((([[[[[([[([(([(([[[([[([(([[[([(([(([[([[[((([((([(((([(([[(([[(([([[[((([((([[[[(([[([([(([[([((((([(([(([([([(((([((([([[[([[((((((((((((([[(([[([([[([[([[(((([[[([(([[(([[(((([([([[([[[[([[(((((((([(([([((([[[([[[[(([[[((([[[(([([([([(([([([[(([([[[[(([[[[((((([[[((([([[[[[[(([([((([[(([[([[((((([[([[(([(([([[([[([[[[((([[(([([([[(([[([([[[[[[[[((([([[((([[(([((([[((([(([[(([([([((([[(([([[(([[([((([([[([[([([([([(([([((([[[[([[(([(([(([(([([[([(((([((((([[([((([[[(([[(([(([([([[([[([[[((([[([(((((([[((([[([([[([(((([[([[([([(([[[(([((([([[([([([([[[[[(([[([([((([(([([[[[[(((([[[[[[[([[[([[((((([([[([[[([[(((([((([(([([([([(((([[([[[[[[[([([[[(([[(((([[[([(([([[((((([[[[[[(([(((([([[[(([[[[([[[[[([[[[[[([([(([[((([[[(((([[[(([[(([[[[(((([[(([[[[((([([((([[([([[[((([([(([(([[(([([[[[([[(([[(([(([(([([[[([([(((([[([(([([[[[(([(((([(((([[[([[[([((([([((([(((([[(((([[[[([([[([[([[[[[[(([((([([[((([[[[([[[[([[[(([[[[[([([(([([[([[([([(((([(([([[[(((([[[([([[([[([([[[(((([(((([[(([(((([([[[(([[([[[[([([((([[[(([([[[[([[[[[([[((([([([([([(([[[(([[[(([[[[([[[[([((([([[[[((([[[(([[([([([[((([[[[([[[[([([(([[[[(([[[([[([((((((([(([[([([((([(([([[([((([[[([[[[[[[[([((([([[([((([(((([(([((([[[([[([[[(((([(([[(([([((([((((([[([([([[[[([[([((([[([([((([([(([[([((([[([[(((([([[(((([((([((([((([([[([[[([([([(([[((([[[(([[(([[[[(([[([[([(([[[(((([([[[([[(([([([([[[([([[([[[([[[([(([(([[[[(([([([([[([([([[[[((((((([([([[((((([[(([[[[(((([[[[[[[(([[(([((((([[[(((([[[[(([[[[(([[[([[[[([[([[[[[([[((((([[[((((([([(([([[([([((([([[[(([[[([([(((((([(((([[[([([[([(((([((([[[([(([([[[[([([[(((([[[[(([([[(([[[[([[(((([([([[([[[[[([[[[(([[([([[(((([(([[([(([([([[[([[[[[[(([([([([([([[(([((([([([(((([[([((([(([[[[(([([((((([([[([[[((([([(((([[[[([[[[[[([[(([[(([[([((([(([([([([[[[([[([[((([([([[(([([(([([[[[([(((([([[[([([([[([((([([[(((([([([([[([[[[([([([[(((([(([([[([([[[(([((([[([([[[[[[((([([([(([(([(((((([[([([([(([[([[(([[(([([[[[(((((([((([([[[[[[([[(([([[[((([[[[([[[([([([[([[[[[[(((([[[[(((([[([[[[([[[[[([[[[(([([([([[[((((([(([((((([[([[[[[[(((([((([(((((((((([([(([[[[([([[[[([(([[(((([[([[(((([(([(([[[(((([([((([([[(([[([((((((([([[[[[([([([[[[[[([(([[[[[[([([[[[([([([([[([((([([([[[[([[([(([([[(([[[[([[[[[([((([([((([((([((([([((([[[([[[([([[[[[([[([([[[(((([[[([(([[[(([[([([([[[[[[(((([[(([[([([[([([(([[[[(((([[[[([(([(([([[([([[[(([([([[[[[([[[[[(((([(((((((([[[(([([[[[([[[[[[[((([((([([(([(([(([[[([[[[([([[([[([((([((([[[[(([([[([([[(((([((((([[([[[((([[(((([(([[(([[([[[[[[[[(([[((((([(((([(([([(([([([[[[(([([[[[[(((((([[(([((([[(([([[([[([(([[([([[([[[[(((([([[((([(([[[([[[[([([(([(([[[[[[[(((([[(([([((([(([[[(([(([[[(([([[(([(([(((([([[(([[[((([[[[([[((((([((((([[([[(([([[([[([[[[[(((((((([(((([[(((([(([([([([(((([(([[([[(([((([[[((([((([((([[[[(([[[[[([[[[[[((((((([[([[([[[[([[((((([[(([([[[[(((([[[[((((([[([([[([(([((((([([([([[[((([(((([([[[[([(([[[[(((([([(([[[[(([(([[[[(([(([([((([((([[[([(([[[(([(((([[[([[[(((([([([([(([(((([[[([(([(([([(([(([(([[([([[([([[[([[([[([([(([(((([[([[([([([[(([[[[[([(((((([[[[([(([[[[[[([[(([[((([(([((((((([((([[((([(([[[([([[((((([[[((([([(([([[([[([(([[[[[((((([[[(([([([([(((([(([[[([(([([([[[([(((([(([(((([[[((([((([((([[[[[[(((([([[([((((((([[[[[[[[[(((([([([[((([(([([[(([[(([[([[([[([([[([[[[[[[([((((((((((([([[(([[[[[(([[(([(([[[([[[((([([(([[[([[([(((([[[[([([[[([[([([[((([[(([([[([[[(([[[(([[([(([((((([[[[[[([(([(([[((([([([[((([([[[(((([[([(((((([[(([[((((([[[[([[([([[[[(([[[[((((([[([(((([((([(([[[[[([[[((([[[((([([(([[([([((((([(([((([[([(([([(([(([([[[[[(((([([[[([[([(([[[(((([[([[(([[[([[([[((([([([(([(((([([(([([[([(((([[[[((([[((([[[([[[[([(((([[[([((([[([[([([([(([([[([((((([[([[[[[[([[[([[([([([([[(([(([(([([[([([([([[([[[[[([[[[[(([((((((([[[(([[((([([[(((([([[(([(([[[([(([(([[([[[([[((([[([[[[([((([[[[[[(([([([[([([[(((([[(((([[([([[(([[([((([([([[[[[(((((([([([[([[()]])]])])]))))))]]]]])])])))])]]))]])])]]))))]]))))]])])]])])]))]]]]]])))])]]]])]])))]])]]])]]))]))])]]]))]))]])]))))]])])))]]))]]])))))))]))]]]]])]]]]])]])])])])]])]))]))]))]])])])])]])]]])]]]]]])]])))))])]])]))])])])]])]])))])]]]))))])]]]])]]])))]])))]]]]))))])]])]))])]))))]))])])])))]])]])]]]))]])]]))))]]]))])]])]]])]))))]]]]])]))]))])]))])]])))]))])))))])])]]))])])))]]])))]]])]]]]]))])))]))))])]])))))]]]]))]]]])])]])]]]])))))]]))]]))))))])]]))))]]])])))]])])])))]]))]))])]]]]]])))))]))])]]))]]]))]]])]])]))]])))]])])]])]]])])]]]]))))])]])]]]))])])))]]])]]]))]))]]))]]]]]))]])])))))))))))])]]]]]]])]])])]])]])]]))]]))]])]))])))]])])]))))]]]]]]]]])))))))])]])]))))]]]]]])))])))])))]]]))))]))]))))])]]])])]))])]]]))]))))])])])]))]]])))))]]]]]))])]])]])]))])])))]]])))))]])])]]]))])))]])))])))))))]))])))]]))]])]]]]]]))])]]]]))))))])]]]]]))]])])])]])]]))))]))])])]])]])]]])])]])])]]))]))]))])]))]))])]]]))))]))])])])]))))]]])]]]))))]))]]]))])]]])))])))])]))]))]]]]))]))]]]]))])]))))]]]]))])]]]])]))))])))]]])])])])))))]))])]])])]])))))]]]]))))]]]])]))]])))))]])]]]])]])]])))))))]]]]]])]]]]]))]]]])))])))])))]]])))]))]])]]))]))))])])])]))]))))]]))))]))))))))]]]]])]])]])]))]])]])))))])))))]])]]]])))]]]))]])]))))]))]))]])]))]]]))]))]]]))])))])]))]]))))]]]]]]]))]))])])]]]])]]]))])))]])]))))]]]])]])])]]))])]])]])]))]])))]))]]))))))]]]]])]))]]]])])]))])]))]))))])))))]]))]]]]]]]])]]))]]))]))))]])))]]])]])))))]))))]])])]])]))]]]])))])))])]])]])])]]]])]]]))]))]))])])))])))]]]]]]])]]]])]))]]]))))))))]))))]]]]])]]]]])])]))]]])])]])]))]))])]]]]))))]]]]))])])]])])]]))]]))))]]]]]])])])]]))]]]))])]]]))))]]])])]])]]]]])])]]])]]])))])])))])))])))])])))])]]]]])]]]]))]])]))])]])]]]])])])))])]])])])])]]]])])]]]]]]))])]]]]]])])])]]]]])])))))))])]]))]])])))])]))))]]]))]))]))))]])]]))))]]))])]]]])])]]]]))])]))))))))))])))]))))]]]]]])]])))))]))])))))]]])])])]))]]]])]]]]])]]]])]]))))]]]]))))]]]]]])]])])])]]])]]]])))]]])]))]])]]]]]])])))]))))))]]]])]))]]))]])]]))])])])]]))))))]))]))])])])))]]]]]])])]])))]))]]])])]])]))]))))]])])])]]]])]])])])]))))]])])))])]])])])]]])]))))])]]]])]))])]))]])])])))]])]])]]]])])])]))])))])]]))]]))]])]]]]]])]]]]))))])])))]]])]])])))))])]))]]]]))])))])]]))))])])])))]))]])])])])])]))]]]]]])]]])])]))])]]))]))))]])])]]))]]]])]]]]])]])])]))))]])]]]]))]])]))]]]]))))]])])]]]])]))])]]])))]))))])]])])]]]))))]))))))])])]]]))]]])])))])])]])]))])])))))]]])))))]])]]]]])]])]]]])]]]))]]]]))]]]]))))]]])))))]))]]))]]]]]]]))))]]]]))]])))))]])])])))))))]]]])])])]])])])]))]]]]))]))])]]])]]])]])])]]])])])]))]])]]])]))))]]]))])]])]]))]]]]))]]))]]])))]]))])])])]]])]])])))])))])))]))))]])]))))]])]])))])]]))])])))])])]])))])]])]]]])])])]])))))])))])]))]]))]))))]]])]])]]])))]))]))))])))])]])])))])]]]]]]]])]]])))])]])]))])))])])]]))])))))))])]])]]]))]]]]))])])]]]])]]]])))]])])])]]))]]])))]]]])])))])]]]])]]]]))]]]))]]]))])])])])])))]])]]]]])]]]])]))]]])))])])]]]])]]))]]])]))))]))]]))))]))))]]])])]])]])])]]]))))]]])]))]))))])])]])]])]))])])]]]]]))]]])]]]])]]]])))]])])))]))]]]]]])]])]])])]]]]))))]]))))])))])])))])]]])]]]))))]))))]))]]]])]))])]]))))])])]]])]))]))]))]]))]])]]]])]))]]))]))])])))]]])])]])))])])))]]]]))]]))))]]]]))]]))]]]))))]]])))]]))])])]]]]]])]]]]])]]]]))]]])]))))]))]]]]]])))))]])]))])]]]))))]]))]]])])]]]]]]])]]))))])])])]))])))]))))]])]]])]])])))))]])]]])]]]]]]]))))]]]]])]))])))])])]]))]]]]])])])])]])])))]))]]]))])])]])]]))))])]])])]])))]]))))))])]])))]]])]])]])])]))]))]]))]]])))])]])))))]))))])]])]))]))]))]))]])]]]])))])]))])])])])]])]])])))])]]))]])]))]])))])])]))]]))])))]])))]))]])))]])])))]]]]]]]])])]]))]])])]))]])))]]]])]])]])]))]))]])]])))))]])]]))]])))])]))]]]]]])])))]]])))))]]]]))]]]])]))]])])]))])])])]))]]])))]]]))]]]])]]])))])]))]))))))))]])]]]])]])])]))))]]))]]))])]]]))))]])]])]])])]]))]])))))))))))))]])]]])])))]))))])])]))]))])))))])]]))])])]]))]]]])))])))]]])]))]]))]]))]))))])))])))]]])]]))]))])]]]))])]])]]]))]))])]])]]]]])))))]])))]))])])])]]))))])])])])])]]]]]]]))]]]]]]]]))])])))]]))))])]])]])])))])]]))])]]))))))))]))])]))]]])]]]))))]]]))]]]]])]])))]])])))]]]))])))))]))]]])))))]]])]]]])]])]]])])]]))])))])]]]]))])]]])]]))))]))))]])]])]])]]))]]]])))]))))]]])]]])]]]]]))]))]]])]]]))))])))]]])]]])])])])]))])])))]))])))))]))]]))))])]])]))))])]]]))]]]))])))))))))])))]]])])))])]]])]])]]]])]))]])))])]]]])])))]]]))]])])))]])]))]]]))))]]])]]))]])]]])])]]])]))]))]))))))]])])))])))))]])])))]])]])])]]))))]]]))]]))))]]]))))]])))))]])))))))]]))))]]])]]))]]])]])]]))]]]])])))]))]]])])]]]))]))]])]]]]))]])))))]])))]]))]])]])]))]))]))))]]]])])])))]]]]]]))))))))])))))]))]])))]]])]]]]]]]])]]])])]))]]])]))])))]])))))]))]])]]])]))]])])))])])])))]])]]]]]]]]]])])])))]])]))]])]]])]]]))]))])])]])])))])]])]])]))]))]))]]))])]])]])))]]))]))]])]])]])]]]])]))]])))])]]])))]]]))])))])]))]])]]]))))]]))]]]]])]]]]])))]])])]))))])))]]]]])))])]]])])]))]])))])]))])]]])])]]])]]))))]))]]))]]])]]])]]))))))]))]))])))])]))])]]]))]]))))])]))]]])])))]])])))))])))]]])]])))])]])])))))])]])]]]]))]]]]))]))]])]]])))])]])]]))]]]]])])]]))]]]))]]]]]))))))))])])]]))]])))]])]]]]])))]]))])]]]]]))])))]))))]]))))]]]])]]))]])))])]))]))])]]])])])))]]]])]])]]]]]])))))])]]]]))))))]]]))])])])))])]]]]])]])]))]))))]]])])]]))]]]])))))]]])]]]))]))))]]]]]]))))]])))]])))])]))]]))])]))])])]]]])]]))])))]]))))])])])])]])]]]]]]]]]]]])))]]]])))))))])])]))]]]]])])])]]])])]))]]]]])]))))]))])]))))]]]))])])]])]]))])]])]]]))))]]]]))]]])]))]]]])]])))])))])))))))]])])]]])]]]))]]])]]])]]]])])))))))))))])]))]]))]])))])]))))))])))]])])]]]]]]))])))))))]])]]]))])])]]]]]]))))))))))])]])]]]]))]))))]])]]))]))))))))]])))))]]]))]])])))))]]]]]]]]))]]))]]]]])])))]))]]))))]]]]])))])]))]])]))])]])])))]))))]])]])]]]]]]))]))])))]])))]]])]])])]))))]))]])))])]]]]])])])]])]))])]]])])]]]]]])])]))]])])]]]]))))]]]))]]])]))))))])]]))))]]]])]]))))]]]]])]))]))))))]))]]))])]])))]]])]])])])])])))]]]]]])]]]))])))])))))])]]]]])]])])]])))]))])]]]]]]]]]]]])]]]])]])]))))])])))))))]))))]]]]))]))]])))))]))]))])))])]])]]))]))))])]))]])]))]]))]))]])])]])))]]]]]))])]))))]])))]]))]]))]]))]])))]])]))))])])]]])))]]))])))])))]]]])])))])]))]])))]]]))]])]]]])])]]))]])))]])]]]]]]])]])]))]]])]]])]]))]))]]]])))))))]]])]]))]]]]])))])]]]]]]])]))]]]]))))]]])]]])])])]))]])])])])]]]])])]]]))]]]))))))]))))])]])]))))))]]))))]]]]))])]]]])))))]))]]]])))]]))]]])]])))]))]])]]))]]]]]))]))]))])]]]]]]])])]])))))]))))])))])]]))]])]]]))))]])]])]])])]]]])]]))]]])]))])])]))]])))]]]))])]])])])])]]))]))))]]]]]))]]))]])]]]]]]]])])]]))]))]))))))))]]]]))]]])])]])))))]]]])])]]])]]]])]])]]))])]]))]])]]])]]]))]]))])])))])]]])]))))]]))]]]])])]))])))]])]]]))])))]]]]]])]]]]]])))])]))]))))))]])))]]]]])]]])]])))]])])]]]]])))))]))]]))]]]))]])]))))]])]))]]))]]]]]]]])])]]]]))]))))))))]]]])]]]])]]])]]))]))]))])])))])]])))))))))]))))))])]]])])))))))]))]]]]]])]]]]]]]])))]]])))))]]])])))))]))])]]]))])))]))]]])])]])]])])])])]]])])]])))]]]]]]])))]]])]])])])])))]]))))))))]]])))]])))))]]))])]]]]]])]])]])]]))])])))))]]]])))]]))])]]]))]]))]])]]))])]))])))]]]]]))])])]])]]]]]]])])))]))])]])]))]))]]])]]))]))])])]]]]))]))]])]])]))])))]))]]]])]]])]]))]]]]]]])]]])]]]))]])))])))]]))])]))]]))))]])])]])])])))]]])]])]]))))]])]]]]]])]])]]])])]])]])))]))]]))])]]])])])))))]]]])]]])])]]]))])))]])])]]]])])))])))))]]]))]))))]))]]))]))])]])))])))]))))]]]])]]])])))]]])])]]])))]]))]]])))])))]]]])])))]])))]))])])]))]])))]]]))]]))))]]]]))]]]]]]]])))]]]]))]]))]]]))]))]]]))))])]]))]]]])])))]]))])]]))]])]))]]]))))))])]])])]]])]))))))]]))])]]]]]])))]]]))]]])))))])]))]]]]]]))]])))]]))])])))]]])])])))])])]]]))))]]])]))]]])))]]])))]]))))]])]]))])]])]))))))])]]]))))])])])]))]]]])])))]]))))]])))]))]])]]])]))]]])]))))))]])])])])]))]]])]))])]))]))]]]]))))))))))]])]))]]))]]])]]]])]))])]]]))])])]))))]]]]]]))])]]]])])))))])])]))])]]])]))]]]])])])]]))]])]))]])))]))])]]]])])]])])]]])))])]]])))]]])])]]))]]])]])]]]])])])]])))]]]]]]])]]))))))]]]])])]]]]])))])))))))]]]])]]))])))])]])))]]]))]])]]])]]])]]]])))))])]))))]]]])]))])])]])])]])]])))))])])]])))])]]]]]))]]))))]]]])]])))))])])])))))))]))]])])))]))))]]))]]]]]))]])])]))]))]]]))]]])])]]]]))])])]])]])]]]])))]))]]]))])])]]))]])))])])))))]]))))))]))))])]]])))]))))))))))])]]]]]])]]])])]])])])))]])]])]]])])]]])))))))))])]))]))]]))]))]])]))]]]]]])])])]])])]])])]]]]])))]]]]))]]]))]))]))]))]))]])))]]]])))])))))])))))]))))))])))]])))))]))])))]])])]]]])]))))]))])))])))]))]]]]])]])]])])))]]]))))]))]]))))])]]]))]]]))]]])])))))]]))])))]))]])))]]])])]])]))]))))]])))]]]))))])]))))])]]]])]]])])))))]]))])]]))]]]))))]])])]]))]))))])])]])]))]]]])])))]))))))]]]]])))]]])]]])))]))]])]]])])]])]]]]))])))]))]))]))]))))]]]])])]])]))]])]]]])])]]))])]]))])])])]]]]])]))])]])))]])])]])]])])))])]))]]]])]])]]))]]))))]]]])))]]]]))]))]])]]]])]])]]])))])]))))]]])))))))]])]))]])])]))]])]]]]))]]]]])]]]]))])])])]]))])]])]]))])]]]])))]]]]])))]))))]]))]])]))]))]))]])))]]))))]]))]])]]))))))])))))))]]])]]))])))))]])]]])]])]])]))])])))))]))]]))]]))]])]]))]))]]))])])))]]])])])]))])])))]])]))]]]]])]))))))]))]]]])))])])))]]]))])])])]]]])]])])))]]]]]]]]]])]]]]])]])])]))]]]]))])]]]]))])]])]])]))])])]]])))])])]])]])]]]]))]])]]]]])]))]])])])]])]]])])])]]]]])))]]]])]]]])]])]]]]))]])])]])]]]))]])])]]]]]]]))))])))])])]))]]])]))))]]))])]]])]]]))]]))]]]]]))))])))))))]]]]]]]]))])])]])]]]]]))])]))]]]])])))]]]))])))]])))])]]]])))))]))])))]]])]))])]])]])])))])))]])]]]])]]]]]])])]]])])]])])]]]]]))]]]]]]])]]))))))]]])])))])])]]]))))])))]]])))))]))])))]]]])])])]]))])])))]]]]]))))))]]]]])]]]])])))]])))]])))]))])))))))])])]))))))]]])))))]]])))]])])]])))]])))])))))))])]])]))])]]]]))))))]]])]))]])))))])]))])]]))]))])])]])))]]))))))])]])]]]])))]])]]]])))])])]]])])]])])]))])])]]]])]]))))))])]))]])]))))]]))]))])]]])]]]))]))]]]]])]]]]]]]])]])])])]]]))]]]]]])])))]))]]])]])])]))))))))]]))]])])))))))]])))))]])]))]))]))))]]]]]])))))])])]]))]]))))]]]))])))])))))))])]])])])))])]])))]]]]))]]]]))]])))))]))]])))])]))])])])]])])))]]]]]])))])]]]]]))))]])]])])))])])]])]]))))]]]]])])))))]])])))]])])]]]]])])]]]))]])]]]])))])]))])]])]])))]))]]])))))))])]))])]]]))))])])])]]])))]]))])])])))))))])))]]))])])])])])])]]])])))]])))))))])]))))])))]]]]])]]]]))]]]]]]]]]]]))]]]]]])))]]]]))]]]))))])]))]]]])))]))]])])])))]])])))]))]]])))]])]))])])]]])]))]]]))]])]]]]]]))])]))]]))]])]))]])]))]]]))])]]])))]])))]]]]])]]])])])]]]])])]))])]]))])])])]]]))])]])]]])))]))])))]]])])]))]]]))))]]))]])]]]]))]]])]])))]]]))))]]))]))])])]))]]))))]])))]))]]))]]]))]]])]])]])))))])])]))))]])))])]]]))])]))])]))]]]]]]]))]]))]]])]]))])]))])]))]))]))]]]])]))])]]]))]])))))))]])]])]))]]))))]))]]]))]))))]])])]]]]))))]]))])])))]])])))))]])]])]))))]]]]))]]]]))])]))))]])))])]]))]])]])]])])]]]]]]]]])]]))]]])]]]])))])]])]])]]])])]]))])])])]]]]])]]))]))))])))])]]]))]]))]])))])]))))]]]))])]))]])]]))]]))]))]]))])])])))))))]]]])])]]))])]])]]])]])))])])]]])]])]))]))))])]]]])])]))]])))))]]])])])]]))])]))))]])])))])]))))]))))])))]]])]))]))]]])]])])]]])]))]]]]]))]]))))))])])]))])]])]))))])])]]]))])]]))]]])))]])))])))]))])]))]]))]))))]])))))])])))])]]]]])])]]))))))]]]))]]]]])]])))))))]])]))))]))]]]])))])))])]]]]])]))])]]))])]]))))]])))])))]))])]])]]])]]]]]])]))]))])])))]]))]))])))]]))))])])]]))]))])])))]))]])]]])))])]))])))])))])]]])]]))))]))))]))]]]]])])])])])])]])]]))]]]]]]]]))])]]]]]])))]]]))))])))]))]])]])]]])]])))]]))))])))))))]]]])))]))))]))))]]))))])]))])]]]))]])))])]]])))])])))]]))])]))))]]])))]])))]))]))]]])]))))]))]))])))]))])]]]]))]]]]))])]]])]])])])]])])]))]]))])])))))))]]))]])]])))]])]]]]]]]])))))))])))]))))]])]))))]]])))))])]]))])]]]])])])))]))])]]]]))])]))]))]]]))))]]]]])))))]))]])]]))]])]))]))]]))])]])])]))))])]))]])]))]]))]]]]]))]]])))]))]]))])]])))])))]))))))))]])]))))])]]))]]])]])]]]]])])]])])]]]])))])])]]]))])))])])]]))]])]]]))])))]])]))]))))))]]))]]]]))))))])]])])))]])]))]))])))]]]]))]))]])]]]])])]])]]])]]]]])]])))))]))]))]]]))]))]])]))]]]])))]))]]])]])))]]))]))))])]))])]))])]))]]])]))))))])])]))]))))]])))]))])]])]])]])]]))]]])]))])))))])]])]))))]]]]]]]])]])))])))))]]])]])]])]]]]]]))))]]])))))]]]))]]]]))])]]))))])]])))]]]]]])])]]])]]])]]))]])]]]]]]]])))])]])])))))])])]]])]]))))))))])])]]))))])]])])]]))))))]]]))]])]))]]])))]]]]]))]]]])])))]]]]])]))]))))))]))]]])))])]]])]]))])])]]])]]]))]))))))]])]])]]])]])]]))])]]]]]]]]]]]]]])))))))))])])]]]]))]]]))]]]]]]]))]))]])))))]]])]))))])]]])))]])]]]]))]))]]))])))]]))))])))]]])]])])]])]]]]]))))])))))]])]])]]))])))]))])]))])])]))]]])]]))]]]]])))))))]]])]])))])))))])])))))))])])])]]]])]))]])])]))]])])]]]]])]))))])]]]])]))])])))]]])]]]))))]])])))]))]]]])]]])]]]])]))])])]]))))])]])]]))])))]])))]])]]]))]))))))])))]))])])]])])))]]))]]]]))])))]))]]]]]])))])]]])))))))))]))]))))]])])])]))]])]])))))))))]]]]))])]])])))]]]]]))))])]])]]))))])])]))]))]))]]])))]))]])])))]))))))]))])])]]])])))])]]]]])]]])]]]))]))]])]))))]]]))])])])]]])])))))]))]])]))]])))]))))]]))))]))]]))]))]))]]))))]])]])])])])]]])])])])))]]))]])]])])))]))))))]))])])]))))))]]]]]]]))])])))))))]])]])]]))]])))]]]]]])))]]]))])])]]])))]))))])))])]])))]]))))))]]]])))))]])))]]))))]])))])))]))]])])]]]]]]))]]))]))]])]]]]])]]]]])]))])]]))]]]])])]])]]]))))])])]])])]))]]))])])))])))]])]]]))])]]])]]]])]))])]]]]))])))]))]))])]]))))))]])]]]]))]]])))]]]]]]]]]]]]])])]]])]])]]]))))]]]])))]))])))]]])]])))]])))]))]]]))]))))]])]]]))])]))))]])])))]]]]])])]))]]]))]))])]])]])))]])]]]])]))])]))]])]]))))]]]]))])])]]]]])]]))]))))]]]]])]])]))))))]]]]])])]])]]]))])]]]])))))])]))]]]]))])))]))])))))]])])))]])))])]])]]]]]]))]]))]]]]))]])))])])])))))))])]]]]]]])))]))]]]]]])]])]])]]))])]])]))]]]]]))]))]])]]]))]])])]]))))]))]])))]]])]]])))])))]]]]))]))]])]]]]))])]))))]])))))]]]]))))])]]])]]]])))])]])))))]]))]])]])])))]]])))]]]]))])])]))]])])]))])])]))]]))]]))])]])]))))]]]]])]])))])))])))]]))))]]))]]]])))]])))]))])])]]])))])]])])))]]))]])]])])))))]))])]]]]))]])))]]]))))])]]])))))))])])]]]))))))]])))]]]]])]]])])])]))]))))])]]])]]]]]))]])]])])))))])))]])]]])]]])])))])])))])])]]]]])]])])])]))]])])])]]))]]))]]]))))])))])])]))))]]))]]]]])])))]))]))]])])]]))))])])))]]))]]])))])]))])))]]])]]))]]))]]]))))]]]]]]]]))]]]))))]]]]])]]])])]]))]]])]]])]]]))))]))]])]]])])]]]])]])]))))])))]))))))))])]]])]]))]]])]]))]]]]])))]]])]]]]))]]])]))]]]]]]])])])])]))))]])]]])]]))))]))))))]]]])]))]))])))))]]]))))))]))])])]]]))))])))]]])]))])]))])]])])]]])])]]])])]]])])]))))]]]]])])]]]))])))])])))]]])]))]]]])]]]))])])]]])))]))])))]])]]])]))]]]])])])]))])))))))])))]))])))]))]]]]])]]))))]])]])]]]])]))]))]])])]]))))])))]]))]]]]])))]]]]]]]]])))]]])]))])]))]])]])))]])))))]]]))))]]])))))))))]]))]))]])])]])]]])])]]))))]]])])]]]])))))])]]]]])))]))]]]]]]]]))])]))))))]])))])]]))]]]))]))]])])]]])])))]]])]]))]])]))]])))))])]]])]]]])])))))])])]]))]])])))])])]])]]]])))]]))]]]))]]])]]])]))])]])))])]])])]])))])]))]])))])]])]])])]))]]]])]])]]))])]))]))))]))]))]]]))]])])])))))))]])))])]))))))]]])]]])])))))])]]]]]]])])])]))]])]))))])]]]]]]]))))]]))])]]]))]))]]]]]))]))])))]]]))]]))])])])])))]))])))]]))]]))))]])]]]])]]]))]))))))))]])))])))]]))])]]]]]])]]))]))])))))]])))])])))])])]]))])]]])]))]))))]])]))])]])))]))))])])]]))]]]]])])]]))))])]))))))))])])])))))]]))]))]]])]])])]]])]]]])])]])]]])])]]]]])])]))]]]]]]]]]]])))))]])))]))]))])])]]))))])]]])]]])))))]))])])])])]]]])]]]])]]))]]])]]))]])]))])]))]))]]))])])]])]))])]]]]])])]]]]]])])])])]))]])]])])]]))]])]]])))])]))])]]]))]])))))])]))]))))]))]]])))))]]))])))))]]]]])))])]))]))]]]]]))]]])])])]]]))]]]])]]]]))]]]])]])]))]]])]])]))))])]))))]]]]]))])]])]))]])])]]]]])]]]]]))])]))))])]])]))]])])])]])))]]]]]]]])])))))]]])]))))))]]))]]]]])])]])]]]]]]]])]]])])))]))])]]))]]]])])])]]])]]]]))))])]))]]])]]]))]))))]]))])]]])])))])]]])]))]]]))]]))]))))])])]])])]]]]]])]]])]))]))))]]))]))])]))])))))))))))])]]))])]])])]]]]]])]]))]))]])]]])])]]))])))]))]]))])))]]]]]])]))]))]]))]])])])]])])))]]]))])]]))])])]]]]))]])]]])]))])])]]]])))]]]]])])]]))))])]))]]))]])]))))]))])]])])))))]))]))]]])))])]])))]])]]]]]))]]]])))]])]])]]]))]])])]])]])]]])]]]]])])]])])])))]]])]])]]))]))])))]]]])]])]])]])))]]]]]]])]]]])))]])])])))])))]]]])]]]])])])]]]]))]])]))]]]])))]]])]]]]]])]))])]])))]])))))]))))))])]]))]]))])))]]]))]]]])))]]]]))))))])]]]]))]))]]]]])])]))]]]])]))]))))])]))]]))))]])))))]))))]]))]]))]]])))))]]])]])]))))))]]]])))]])])))))]])))]))]))))]))])))]))))]]]]]]]])]]])]]]]]]))))))])]))]]))]])])]])))])])]])]))))])]]]))))]])]]]]]]])])]])])])]])))])]])))]]))))])]))))))))]]]))]))]]]])]]]]]])])]))))]]]])]]])])]]]]]]])]])]]]))]))])])]))))]]))])))]))]]))]))])]))]]]))])]))]))))]]])]]]]]]))]])])))]]))])]])])]]])]])]]]))))))]])]])]])]))]))]])]])]]]])))))]]))])])))])]))))]]]]])))]]]))])]]]))))]])))]))]]]]))])])]]]]))]]]]]]])))))])))]]]]]]])))))]])]])])])]))])]]])]]]))]))]))])))))]]))))))])]])]]]))]]]]]]]))]))))))])))]]]]]])]))))]]]])]]))])])]]]))))]))])])]])))])])]))]]))))))])]]]]]]))]])]]]]))]])])])))])]])]]))]]])))))])])))]]])]]))]))])]]]]]))))])]]])])])])))))]])]]))])]])]]]))))))])))))]]]]))))))))))])])))])])))])]])])))]]])]))])]]]]]]]])])]])]]]))]]]])])]]))))]]))])])]]])]]))]])]))]]]))))]))]]))])])))]]])]]))))])))]]))])]]]))])))))]]]]])]])]))])))]]]])))]])]]))]))]])]]])])]]])]]])]]]]]]]))])]]]]]]])])]))]))])))]))]))]]]]]])))]]])]))]])])])])]])))]]]))])]]]]))]]])])))]]])])]])]))]]]))])]]])))]])]))]])))]]]])))]))]]])])])]]]))))])]]])]))]))])]]]))])])))]]]]))]]]]]])))]])))]]]))]]])])))]))]))]))))))])]))]]]]))]])])]]]))]])]]])]])])])]))))]]))))]))]))])]])]))]]])))])]]]]]])])))])]))))]))]]])]]]))])))))])]])])]))]]]]]))])))))]]]]]]))]))]])))])))))))))]))]]]))]]))])]]]))])]]]]])))]]))))])])]]))]])))])))])]]]))])))]]]])])]]])]])])])]))])])]])])]))))))]]))]])])]]]])]]]]))))]]]))))])]])]))])]]))]]))])]))]])]]))]]]])])]])]))]))]]])]]))]])])]])))))))]]))]))))))]))])]]))]]]]]]]]]))]]])])]))]))]))]))]]))]]]]]]))])]]))]]]]]])])]))]))])]]))]])))]]]])))])))))]]]])]]]]])]))]]))]]))]))])))]]]])))]]))])))])])])))])]])])])]]))]]]))]]]]]]]]))))])))])]])]]]))))]]])])]]))))]))))]]]))]])]])]]))]]))))])])])]]]]]))]))))))]]))]]])]]))]))]]])])))]])]))])]]])]])]]))]])]])]))])]]]]])]]]]))]]))))]))))]]]])]])]]]]]))]]]]])]])]]])]))))]))])))]])]))))))]]))]))]]]))))))])]))]))])]))]])))])]]]]))))]]])]]]))]]))]]))))]])])])]]]]])))])]]]])]]])]]]))]]]]])))]]))))]))]])])))]))]])]]))])]))))])]]]]])]]))))]]))))]]]]))]]])))])])]])]])))]])]]))]))]]]]])]]]]]])])))]])])]))))))]))])]]]]]])))])])))))]))])))]])))))]))])])]]]]])])))])))]]))))]]])]]))]]]])))]]]])]]]]]]]]])]]]]])]))))))]]]])))]))))))))]]])]]))))])]])]]))))]]])])])])))]])))))))])])])]]]]]]])]])]])]))))]])]))])]]))]]]))]))]]])])])))))]]]]]))])]])]))))])]]])])]]))))])))))])]))]]]])])])])]]))]))]])]]]])])]))])])])]])]])]])]])]]]]]]]]]])])]]))]]))]]]]))])))]))]))))]))])]))]])]])))])))]])])])))))]))]])]]]]]])]]]]]]]]]]]))])]]]))]])]]))]))]])])]))]]]]]))]]])]))))]))))]])]])))]]])))]]]]]))]))])]]]]]]))]])])]]]]]]))))])))]]))])))])]]])])]]]]]])]]]]])))])])]]]]]]])])]]])])]]]))])))]])]])))))]])]])])]))))])))]])))))]]]]]))])]))]]]]])))))))]])])))))))]]]))])]])]]]]]))])])])]]])]))))]]]])]]]))]))]))))]]])])]))]]]]]])])])])])]))]]]])]]])))]])]]])]))]]]]]]])])))]]]])))))]])))])))])]])]]])))])]))]])]])]])]])]])])]))])))]]]])]))]))]))])])])]]])))]))))])]))]))))]))]]))]]]]))])]]]]]])]]))]])))]])))]]]]]]))]]]])])))]))))]))])])])]]])]]]]])))))]]]))])))]]])]])]]]])]]]])]))))]]])]))])]]]]))))]]]]]]))))]])])]))]]]]])]]))]])])]])]))]]]]))]])])]]]))]]))]]]))]))]))))))])])]))])]])]))])]])))]))])]])]])))])]]))]]))])]))))]]])])]))]]]])])]])])]]]]))])]]))]))))))))]))]]]]))])))]]])])])]])])])]))])]])]]]))]))]]])]]])]]]]]])]]))]]])))]])])))))]])])]]]]]])]]]]))]]])]]]]]]])]])]])])])))]))]]])]))])]])))]]])])]))))]]]))]])))]]]]))]]))]]))))])]]]])))])))]]]])]])]]))]))]]]]])])])]]]]]]]]))]))]))]])))]]])])]]]])])])))))]]])]]))]]))]])))])]]])]])))]]])]]]])])])))]))])]]])))))]]]]]]]))]]]]])]]]]]]]]]]))]])]]]))]]])]])]))])]])]]]))]]]])]))]))))]])]]))))])]]])]))))])])))]]))))])]))))]]))))])]]]]))))])))))))])]))))))])])]]])]]))]]])]]]))))])]))]]]]])))])))))])))])]]]]]]])]]]]])])))]])]))])))]])])])))]]]]])])]])])]])])]))]))])]])]]))])))]]])]])))]])]])]))]]]))])]]))]]]]]])]]]]))])])]]]])])]))])])))]))]]]]))]]))])]))]])]]])]]]]]))))])])]])]]]))]]]])]]))))]])))]])))))]]))]]]))))]]]]]])))))))])]]]]]]]])]])]]]))]))]]]]]]]))))])])]]])])))]]]]]]]))]))])]]]])])))]]))])]])])]]])]))])])]]])))])))))]]])]]]])))))])]]]])]])])]]])])])))])]])]))]])])]])))])]]]))]]])])]))))]])]])]))]])))])]]])))]])]]])])])])]]))]]]])]])))]]))))))])]]]))])))])]])))]])])])]]]]])]))))])]]))])))]))]))]))))))]]]]))])]]])))]]])]]]]))])])))))])]]]])])]])))])]])]))]))]]]])])]))))))]]]]))]))]))])])]]])]))])])])))]))])))])])])])])]])))))])))])))])]]])])))]]]]))))]))])])])]]]]]))])]])]]])]))]))]])]]])))])))]])]])])))])))]]])])))]]]])))]])])]]]]))))])))]]]]])]))))]]])))]])]]]))]))])]]]])]]])])]))]]]])))]))])]]))]]]]]])]]))))]))))])]])))]]))))))))]]]])]])]))))]]))]]))]]))])])]]]]])])])]])]]]])]]))))))))])]]]])))])))])]]))]))]))]]])])]))))))]]]])]]]])])))]])))])]))])]]])]))]])))]]])]])))))))]]))]]]))]])]]]])]]))]]]))))))]]))))]])]]))]])]]))]]]]))])))]]])))]]]))))]))]])))])]]]]]))]))]]))))])])))))]]])]]))]]))])]))])]])]])]]]])]]]]]]]]])]]]]]])])]]))))])))]])]))])]))]]]])]))))]])))]]]]]]]))])]))])))]])]))])])]]]))))])))])]])])])]]])))))]])]]])]]]]]))]]]]]]]]))))])))))]))]))]]))]]))]])])]])])])])]]]])])])]))))]])]))])))))]))]]]]])))]]]])))])])]))])])]])])])])))]])]]))]])])]]))]]))))]]])))))]]))])]))])]])))])])])]]])]]))])))])]])]]]))))]]]]]))]]]))]]]])]]])])]])]])]))]))])))))]])])))))]))])]]]]))]]]]]))))])))]))]])))]))]))))]))))]))]))]])))])]]]]])]))))))))]]]))]]]]])))])]])]]]])]]]])]])]))]]]])))]]])]])))]]])))))]))]]))))])]]])]))])])]]]]]]]))])]])))])])])]))]])))]])))]]]]])))])])])]])]])))])])])]))]])])))]))]]]]]))]])])])])))]))]])]])))])]]))])))))])]))]]])]])))])]]])))])]))]]]))))))]]]))]))])])))))])])))]]))]]))])])]])))]]]]]]))]]))]])))))))]]]))]]))))))]))])))]))]])]))]]])]]]]))])])]]])))]))))]])]))]])])]]]))])))]])]]])))]]))]])))))])]]))]]))))]]])]])]])])]])])])])]]])])]]])]]])]]]))])))]]))]])))]])))))]]]]]])))])))]]]])]])]]]))])]]])]]))])]]])]]]])])])])]]))])))]]]]))]]])]]]]]]]]])])]]]))]))]))])])])])])))]])]])]]))]]]]))))]))]]]]]]]]))]))))]]]))]))]]]])])]]]]])])]])]))]]]]]]])]))]])))))]))]])]]]]]]]))]]]))])))]]))))])]])]))]])])])))))]])]])]]])))]])]))]])])]))]))]]]]))))]]])])]])]]])]])))])]))]]]]]])]))))]))))]))]]]))])])])]]))))])))))])]]))]])]))])]]]])])])]]]])]])])]))))]])]]]]]]))))]]])]]))))]]]))))))])]]]]])])]]])])))]]])]))]]])))])))])])]])]]]))]]))]]]]])))]]]]]]))]))]]]])]))])]])))])]]]]]]]]]])])]])]]]])]))])])])]])]))]])))))])))))]]]]]])]]))])]]])))]]]])]])]])]]]))]]]]]))]]))]))))])])]])]])]))])]])))])])])]))))]]]]]])]])])))]]]]))])])))))])))]))))]]]])]]]])))]]]]]]]]]]]]])))]]]))]]])]]])]])]]]])]])))])))])]]]))))])))])]))]]]]])]]])]]]))])])))))])])]))]]])]])]])]]])])]])])]]))))]])])])]])])]]])]))])])])]]]]]]])]])]]]]]]]]]]]])])]]))])])]]])))]]))))))])]]]]])])))]]])])]])]])])]]])])])]]]])])])]))))]]]]])]]]))))]))])]))])))])))])))])]))]])])]))])))]))]]))))]))]))]]]])]])]]])]))))])))]]]]]]])]]]]))))))])])]])))))]]))]])]))]]]]))])])])]]]))]])]]))])))]))]])]])))]]]))]]]]))]))]]]]]))])))))]))))])])]]]))]))))])]])]))])]])])]]))])))])))))]))))))]])]]]])]]])]))]]])))))]))))))])]]])])]]]]])]))]))))])])]))]])))))))])]])]]]])))]]]))))])))))]))))))])))]))]])]]]]]]])]]))]]))))]]))])])))]))]])]]]])))))]]])])))])))]]))])]])]]])])]]))]]))))]])))]))))])]]]])]))))))))))]]]))])])])]])]])))])))]))))))])))]]))))]]))]]])]]]])]]))]]))]])))))]]]]])))]]]]]]])]]))])]))])))])]])])]))])]])]]]]]))))]]]))]]))]))]])]))])))]]))]]))]]]]]]]])]]]]]])))]))]])))]))]]))])))])]])]])])]))))])])])]))]])])]]]))]])))]))]])])]]]))]])]]]))))]]])])))]])]))]]]])))])]])))))))]]))))]])]))]])]))]))]))))]]]])]])))]]]])]]]))])]])))]))])]]]]]])]]))))]])]])]))))]]])))]])]))])))])]))]])))]])])]]]]]))]))]])))]]))])])]]]]))]))))]])]))])])]])]]])])]]]])]))]))]])]])])))))]])]]]]]])))]))]]])))]))])]])]]))])]])]])))])]]]))))))]]))))]]]))]]]]])])))]]]])))]))]]]]]))))))]])])))))]]]]]]]])]])]])]]]]]))])]]])]])]]]]))))]))])]])]]))))]]])]))]]]))]])))]]]]]]]])])))))]))]]]])))])))]])]))])))]]])]))]))]))]])))]]))]]])))]))]]]]))]]))]]])])]))))]]]]])])))]))]]]]]]])]])]))]]])]]])))]))])]])))]]])])])))))]))]]]]])]))))]))))]]))]))]]]])]]))))])]]))]))]))))]]]]])])))))]))])]]])]])]]]]]]))])))])])))]]]])))])])]])])])]]]]))]))))])])))))])])]]])]]))])]))])]]]))]))))])])]]])])]))]]]]])]]])))))]))])])])]]])))))]]])))]))))]))])))]])]))])))))))]]]])])))])))])])])]]]))))]]))))))])])]]]))]]])])]))]])]]]]]]]]])])])))))]])))))))))]))]]])]]]]])))]]]])))]])])]]]))]]]]]))))]]))]]))]]])]]))])])])])]]]])])]))))])))))]]]))))))]]]))])]))))]])]])]]])])]]))])]]]])]])]]]))))]]))]]]]])))]))])]))])]))]])])])])])]))])])))]]]]])))))]])]]))]]]]])])))]))]])]))])])))]])))])]]))))])))]]]])]]]])]))])))))])))])])]))])])])])]]]))]]]))]])]]]))])]]]))]))))))]]]))))]]]]))]]]])]))))]))]]])))])])]])]]]]]])]])]])]]]]]))])])])]))])])))]])))])]]))]]])]]]]]])]]))]]]]]]]))]]])))]]]]]))]]]]]])))))))])]]]]))])))]])]]])]])]]]]))]])]]))))]])))]])))]]])])]))))))]])]])))))]])]])]]])]])))))]))]])))]])]))]))))]]]))])]))])]])]]]]]]))]]]]]]))]]])]))])))])))))))]])]]]))]]))))))))))]]))]))])]])]]]))]]]]]])))])))))]]])))))))]]))]]]]]]]])]))))))]])])]]))]))))])]])])))]])))]))]))]]]))])])]])]])]])))]]]]]]]])]])]]]))])])]])))]))))]]]]))]))])])])])))]])))]]))))))]])]])))]])]))]]])]]))])])))])])]])]]])])])]))])]]]]]]]])]])]))))]])])]])])]])]))])]]))))]))]]]]])))]))]]]]]]])]])]))])])))]]]]])]))]])])]])])])]]]]))])])])))])]]])]]]]])])]]])]]))])])]]]]]]]))]]))])])]])]]])))]]]])])))]))])))])]]]))))]]])])])])]))]]]))])]])]]]]]]))]))]]]]])))]]]))])))])])]]]]]]])]]]]]]])]]))]]]]]]]]]]))]]])]])]])]))])]]]])])))))]])))])))])]]])])]]])))))])]))]))])]]])]]]]]])]]])]))])]]]])]])]])))))]]])))])))]]]]]))))]]])))]])])]))]]])]]))]))))])]]]))))))]]))])))))]])])))]))))))])])]))]])])))))))))]))]))])))]]))])))]]))]))]])])])]])]]]])])))]])]))))))))]]]]]))])]]])))])]))]]]))])]))))]))]])))]))]))]])]]])]])))]])])))))])))])]])])]]])])])]))])]])]])]]]]]))]]]])])]))])])])]]]]]])])]]]))]])))]]])]]]))]]]])])])])]))]))])]])])]))]]]]]]]])))))))])])])])))]))))]))))]]])]]]))])]]))]))]]))]])]]]]))))))]]])])))))])])])]]]))])]]]]])])]]])))))]]])]])]))])]]]))]])]]))])]))])]])))))]))]))]])])])]))))]))]]]))])]]))])]))]]]]]])])]]]]]])]]))]])]]])])))])]]))))]]])])])])))))]]])))]]]]]]])])))))]])])]])])]])]]]))))]]])]])))))))]))]))]]]]]))]]])])))]])])]]]))])]]))]))])]]]]])))])]))]]]]))]])))])]]))))))]]))]])])]))]])])]])]])]])])))])])])]))]]]])])])]))]))]]]]))))])]))])])]])]]]]))))])]))))]]])])])))])]]))]]])]])])]]]]]]]])])))))])]]))])))])]]]))))]])])]])]]]]))])]])))]))))]])))])))]))]))])]]))])))])]])]])]])))])])]]])])]]])))]]))]))]))]])])])]]]]))]])])])]]]])]])])])))))]]]))]]))))))]]])])]]]]])))]]]])]]])]))]])))])]))])]))]))])]])])])]])))))]))]))]])))]))))]]]]))]]]))))))))]]]]])]]))]])])])))))])])]])))]]]])])]])]]])])))))]]])]]]]]]]]]]])]])]]])]))])))]]]]])]]]))))))]]))))]]]]])])]))])])))]])))))))])])]]])]])))])]]]])))])))])]))]))]])]])]])))))]])]]])]))))]]]])]))])]]]])])]))))))]]]])]))]]])])]])))])))]]])])]])]])])]))))]]]]]))])])))])]]]])]]])]])]]]]]]))))])])]]]))]]]]]]]]))]]))]]))]]]]]]])]]]))))]))]))))))))))])]]])]]]])]])]])]]])]])]])])]])))])))])])))]]))]))]]]))))])]])))]])))]))))))])]]]]))))]])])))))]))]]))]))]]]])]]]])))]]))]))]]))])]]]])]))])])))))))])]]])))))]])]))]])])]]]]]))])]]])])]]]]]])])))]]))])])])]]]))])])]]))]]))]])])]))])))]])]]]])))]])])))))]]])))))]])]))))]]])]])])]])])]]])]]])]]]]])))))])]]))]]]]])]))])]]]]))]])])]]))))]))])]]))])]))]))]])])]]))])]]))))])]]]]))]])))]]]))))]))]))))]]]))])]])]])]]])])))))])))])])]))))]))))])]])]])]))]]]]))]])])]]]))]]]]))]))])]]))]]]]]]]]])]]]]]))])])))]]]]))]]]]]]])]])))))])))]])))]))])]]))]))])))))]]])]])))])]))]]]])])))])]]))]))]))]]])])))))])]])]]]])))]]])]]]))])]))))]))]])]])))))]]]]]))]])])])))])]]])]]]]])]]])))]))]))])]]]]))]]]]))])))]])])]])))]]))]))))))))))])]]])]]]))])])))])))])])])]]])))])])))])])))])]]))))]))))))]]]))]))]])])])])]])]]))]]]]))]]]))])])]))]]]]))]))))]])]]]))))]]])]]]]])])]]]]))])])))]]))]])))))]]))]])]))))]]))])])]])))])]))]]))])]]])]]]]]]])]])]])))]))))]])]))]))]))])]))]))]]])]))])])))]]]])))]]])]]]])))]))))]])])])])]))]]]]))]]])]]]]]]]]))])]))]))]))]])])]]])])])]])]]]]]))]))]])]])])]))))))]]])]])]])])]])])]]]]]]]]]]]]]))))])]))))]]]]]]]])]]]]]))]))]))])])])]])]]]])))))]]]]]])))])])))))]]))]]])])])])))])])]])])))]]]))))])])))]])])]])]]]]))))])]])])])))))])))]))))]))))])])]))))]])]]])]))]]))]])]])]]]]))))))))]))])]])]))]))])]])))])))))))])])))])]]]])])]]]))]])))]))])])]]]])]]])))]]]]))]]))]]]]]])))]])))))])]])]]]]]]))]]]])))))]))])))))])])]])]]])))])]]]])))])])]]]))]]))]])]]])))))))])))]]]]]]))]]))]]))))]]])])]]])])]]]))]]]])]]]]]]]]))]))]])]))]]]]]]])]])]))])))]))))]]])]])])])]]])))]))]]]]))])))))))]])])))]])))])]]))]]]]])))))]]]))))]])]])])))])])])]]]))]])]))))))]])])))])]]])])))])]])])])))])]))]])]))]))))))])]))]])]))]]))]]])]))]]]))]]]))])))]))]))))]]])])]])))))])])])]])]]])])]])])))))]]))])]]])]))]]]]])]])]]])]))])]]))))))))]])]])))]])))])]))])]])]))))]])]]]))]])))]]]]))]))])]])))))]])]]]])])))))])])]]))]])]])]))))])]])]]])])))]])))]]]]]])])]])]]))])]]]]]))]))])))))))]))]))])]))]))])]))]]]))]])))]]]]]]))]]]]]]])))])]))]]]]])])))])])]])))]]])]]))))]])])])]]]]))]])]))))])))))]))]]]]]]])])])]))]))])]])]])))))])])]])]]])))])])]])]))])]]])]]]])]]])))])]))))]])]]]]]]))))]))))]))))]])]))]]))))]]]]))]))))]))))))))]]])]]])))]])]])]]]])]))))]]]]))])]]])]])]]]]])]]]]))])]]]))]])]]]])))))]]))]]))]])])))))]))]]]])]]))]]]))]]]])]]]))])]]]])]])]))])))])]]]))])]]])))]])]]])])]))))))))]))])]]]]]]]]))))]]]]])]]])])])]]]]]]]]))))]]]))]]])])))))])])))]]))]]])])]]]])]])))])]])))))]])]]))]))])))))))]]]))])))]]]]])))]]])))))))]])])))])]))))])]))))))]])])))))))))))])))])]))]))])))]))))]]])]])))])]]]))))]]))]]]]]]]]]])])]])])))]]])))]))]]))))))))]]]])]))]]]])]]])]]]])])]])]]))))])))])]]]))]]))]])))]]]]]))))]])]]])]))])]]]]])])))]]]))])))]])))]])]])]]))))]]))])]])]]])))]]))])]))])])]]]]])])])]]])]]])))])])))])]])))])]))]]))])))]])]]))))))])))]]]))])]))]])]))]])])))])]]]))])])))))]]])])]]]]]))])])]]))]))))))]])]]])])]]]]]]])])))]))]]])))]])]]])))])))])])))))]]))))))))))]))]]]))])))])]])]])))]])])])]])]))]]]]))]]]))))))])])]])]]]])))]]])]))])]))))))))]]]])))]]))])]]]]]]])])))]])]])))]))))]]])])])]))))]]]))]))]])))]]])))]]]]])]]])])])]))]]])])]))))]]]])]])])))]]]]]))]]])])])]]))))]))))]))]]]]])])]])))]))]))))])]])))])]])]]]]]]]))]])))]])]))]))])])]))]))]]]])]))]]])]]])])))])])])]]))])]]])]))))))]]])))))])]]))])])))))]]]]]]))]))))))]]]])]])])))))]]])])]])]])]]])]))))]]]]))])]))])))])]]])]]]]]))]))))]]]]])])]]])]]])))])]]))]]]]]])]]])))]]])]))))]]))))]])]]]])]])))]]))]])))]]]])))))))]]))]]))))))]]))))]]]]])]))])]))]]]])])]))]]])))]]])])])]))]]))]])))]])]))))))]])))))]]]]))]))])]]]]]]))))))))))))])])]]])]])))]))])]])]]])])))))]]))]])))))]]])])))]))))]]])]]]])]))]])]]]])))))]])]]]]])))]])])))]])))])])]]]]]]))])])]))])))))))]]]]])]]]]])))]))]])]))])]]]])]]]]))]])]]]))])])]])]]))))]])]))))))))))]]])))]]))]])]])))])))]])])])]))]]]))])]]])])])])])]]]))]]])]]]))])))]])]]]]))))))]]]]])])))]])])]])]])])])])]])]))))]))))))))])]]])])])])]])]]]]]]])))])))])))))]])))]])))))]]]]))])])])))]]]))))]]]))]])))]])]])]])])])))])))]]])])]))])])))])]))]))))))])))]])]))])]])]])])]]])))])])]]]]])])]))]]])))]]]])])))]])))]])])))])))))))))]])])]))])])))))])]))]]]]])])])]))]))))))])]]))]]]]))))])]]))]])))]]))]]]]])]]])]]]]]))]]])))]]))))]]])))]])]]]]))]))]]]))]])))))]])]))))]))]))])))]]])])]]]))]))])))]]]]]])]]))]]]]]]))]]))))])]])))))]))))))]))))])))]))))]]))]))]))))])])))])]]))]))))]])])])])]]]])])])]]])))]]]])]])]])])])))]])]])]]]]]])]]]]]]]])])])]]]]]))])]))))]])])]))]])))]))))]))))]]])))]]])])])]))]))])]]]]]])])])]]]]]])))]))]))]]]]))])])))))]))]])]])]))]))])])]))))])]])]))))]]]]])])])]))))]]]]]]]]]]]))))]))]))]])]]])])])))]]]]])])])))]])]]])]])))]])))]]))])]))])])]))])]])]))]))]]])])])]])]]]]]))]]]]])]])))))]]])]))]]])]]])))))])]]))]))))))])]))]])]))]]))])]]]])]))])]))])))]))]))]]])]))]])]]]]))])]]]))])]))])]])])]]))]])]))]]]]))]]])))])]]]])])))))])])])]])])])]]]])]))))]]])]]]])))]])]])]]])]))]]]]))]]])))]]])]]]]]))))]]))])]]])]])]])]]))])])))]]))])])]))]])]])))]])])])]))]]]])]]]])]])]))]]])]]))])])))))])))])]]]]]]]]]]])]])]])))]]]]])]))))]))]]]]])]))])]))]]])])))])]]]])]]))]]])]]]]]])]]])])])))])))]))])))))))]]))])]]))))]))]]))]))]]))])]])])])]]])))))]]]]]]))])]]]]]]])]])))]))]))])))))))]]]]])])]]]]])])]]]])))]])])]]]]))))]])])]])]))]])]]]]]]]))]]]]]]]]])])])]]))]]])]]))]]])])]]]]))))]]]))])])])]))])])]]]]]))])]])]])))])]]))))])]]))]]]])]])]])))]))]))))]))]]])]))]]]]))])))]))]))])))))))))])])]])]]))])]]]]])]]]])])]]))))])]))]]]))))]]))]]]]))))]]))]])))]))))]]))))]]))]]]]))])))]]])]))]))))))))]]])]]])]))])]]])]]))])]))]]]]]]])]])))))]]])])]])]))])))])))]]])]])]))]))]]]))]))]])))])]]]])])]])))]))]])]))])]])))))]])]])]])))]]]]]])]))]]]])))])]))])))))]]])])))))))])])])))))))]))))))]]]]]]]]))))]])]])))]])]]]])))])))]))]]])]))))))])))]]))])]]))])]])]))))]))]]]])]]]))])]]]]]]]])])]])])))])))]]))]]]))]))]])])]]))))]]]]))))]))))])]])])))]])]]]]]))])]])]])]]))]]))])]]]])]]]])]]]]])]])]])]]]]]))]))))]])]]]]))]]]]]]]))]))]])))])]))]]))]])))]]])]])])]])))))))]))))]])]])]))]]]))))])]))])]])])]]]]]]]]])))))]]])))]))))]]])]]]))])))))])])]])))])])]]])]))]]])]])]))]))))]]]]]]])]]]))]]))]]])])))]])]))]]]))))]])]])]])))))))]]])]])])))]]]))))])])]]]])]])]]]))))]))])])))]]]])]]]])))))))))]]]])])])]))]))]))]]])])])]])]]]))]]))))])]])])]]]))])])]]))]]))))])))))])))]]))])))))]])]))]])])))]]]])))]]))])])]]]))]])]]))])]]))))]]])]]]]]])]]]))))))))])]]))]])))))))])]))])])))]])])]]])]]]]])]]]]]]]])]])]]))]])]))])]))]))))]))))])])))]])]]]))]]))))]]])]]]]]]]])])]])))]))]]]))]]])]]))]]])))))]])]])])])))]])]]]])])]]]])])]])]]]]]))])))))]])])))])])))]))])))])]])]]])])))])]])]]]]]]))]]])))]])]])]])]]])])])])]]))]]])]]]]]])]])]))]]])]]))])]]]))])]))]]))])])]]])))])]])]]])]]]))]]])])]]])]))))]))))]))])])))]])])))))]))]]])])))))]])))])]])]))])]])))))]]]])])]]]])]]]]]])]))])]]))]))))])]))])]]))])]])]]]))]]))])])])))))]]])]]]])]]]]])))]]))]]]]))])]]]]]])])]))))))])))]))])]))])]))]])))])]]])])))])]])]]]]]))]])))]]]])]])]]])))])])))]]))))])])])))]]))]]]))]])]])))]))))))]))]]])])])]))))]]]]])]]))])]]))]]))))]]]]]))]]])])]]]])])]]]]]])))))])]])]])])))])])]])])]])))))]])])))]]))]))]]]]]])]])))))]]))])))]]))]]])])])]))]]]))))))))]))]])]]))))]])))]))))])]))])))]]]))))]))]]])]))))]])))])]]]]])))))]]))])])]))]])])]]])])]))]]]]]]))]])])]]]]))])]])))))]]]]))]])))])))])]))])])]))))])])]])])]])]))))]])))])])]]]])])))]])])))]))])))])))]])))]))]])]]))]]]])]])]])))])]]))])])))]])]]]]])]]]))]]])]))))])]]))])]]])))]))]]]])]]]]]]]))]]]))))]))]]]])]))))]]])])]]])))])])])))])]]]))]]])]]))]]]]))))]])])]))]]]])))))]]))])))]])]))])])]])]]])))]])]]))]]]]])))]]))]])]])))]])]])])))))))))))))])]))]]]))])]])])]))]]]))))]])]]))]])]])]))])))))]]]])))]]]]]]))]]]])]]))))]]]])))]]))])]]))])]))))))])]))])])))]]]]]))))]]]]]]))]]])]])]]])])])])])])])]))))]))]])))))))])]]]))]])))])])))]]]))]])]]])))]]])]]))])])]])))]))))))]))]]])]))]])])]]))]]))))])))))]]]]]]]]))]]]]]]])]])))]))]))))]])])]]])])]])])]))]]))])]]]]]]])]]])))]])])]])))]]))])])])]])]))))]]]]]))]))])]]])]])))]]))))))]])])))])))])])]])])]])]))]))))])]]]]]))]))))]])])))))]])]))])]])]]]]])])]]]]))]])]]))]]))]))]]]]])))]]])))))))]])))])]]]]])]]])])))))))))))))])])]]))]]]])]]])]]]]]])))]]]]]]])))])]])]))])]]])))]])))]]))]])))))])))]]])])]]]]))])))]]]]]]))]])])))))))))]))]]]))]]])])])))])]]]])])]))))]]]]]]]]]])]]))]])]))))]])]]])]]]]]])]]))))]))]])]]))]]]])]])]]])))]])]))]])])]))))])]]])]]))))))])))]))))))]])]]]))))))]]]])]))))))])])])))]])])]]])]]]])])]])]]]])]])])))])])])])]]))))))]]))]])]))))))))]]]]))]])))]]]])])]]))))]]))]]))])])))]]])]]]]]))))))]))]])))]]])])))]]]]]]]))]])]]))))]]]]))))]))]]])))])))))]]])))]])]])])])]))]]]))]))]]]))])]]]))))]])))])])])])])])))]])))]))])])))])))])])])))]])]))]]))]))])]]])])))))])))]]))))]]])]])])))))]]))])])]]])]])])))])]))]]]))]))])]]]))))]]])]]]]])]])])])))))])])]))))])])]]])]]))])])])]]]]]))]))]]])))])])))])]])]))]]]])))]))]))]]]])))])])]))))])]])]]]]]]]))]])])]])])]]]]]]))])])])])))))])])])]]])))))]]))]]]]))))))])))]])]]]])))))))]]]]]]]]]])]])))]))])]]])))])]]]]]]]])]]]]))]))])]]]))))]]]]]]]]))])))]])]))]]]]]])))]])))))])))]))]))))))]]))]])))))]])]]])))]]]]]]]))))]]])]]])]]))))]]])]])))]])])]]])))))]])]]])]))))))])]]]]]]]]])]]]]]]]]])]])))])]])]))))]])]))])))]])]]))))]))]])))])]]))]]]]))))])]))))))]]))]]]])]])]]]]]]))]]])]))]])]))])]))]))]]]]))]]]]])]]])]]))]]])]))))])]]))))]]]))])])]])]))]]))])))]))])))]))]])])]])])))])])]]])])]])]]]))]))]]]]]])))]])]))]))]]))]]])])])])))]])])))]])]))])]))]])))]]]])])]])])))]]])])]])]])]]))])]]))])]))])])))])))))])))))])]])])))))]])]]])])])])]]]])]]]]]]]])]]]]])))])))])]])))])))]]]))]])])]))]]]))]))]])]]]]))]]]])]]]))]))))]))]])))]]]])])]])])]]])]))]])))]))]))])])]])]]])])]])]])])]]]]]]])))]])]))])]]])])))]]]]]]))]]))]]]]])]]]]]]]))))]]))]]])))])))]]]]])])])]]])]]]]]))]]])]]])]])]))]]]))))])])))]]]])])])])])]])]])]]])]]]])]))))]]])))]))])))]]]])]])]])]]]]]]]))]])])])]))))]])])))]]])]))])))])))))))]]])))))])))])]]))]]]))]]])])])]]]))]])]]))])]])]]]]))))))))]]]))]]]])))]))))]])])]]]])])]]]))])]]]]]]))])))]])]]])]])]))]]))]))))]))]]]))])))))]])))])))]))))])]]])])))])]]]]]]))))]])))]]))]))]))])])])]))))))]]]]]]))])])])]]])])))))]]])]]))]))]])]]]])])))])]]))]))))])])))]))))])]])])))]])))))]))])])]]))]]]))])]]])]])))))]])])]]]]]]]))])]]])])))]]))))])])]])))]))))])]))])]])))])]])]))]))]))))])))]]])])])))]]]])))])]]]])])])]))])))]]]]]]])]])))))]])]])])))])]]]]])]]]]))])]))))))))]))))]]]]])]]]))]]))])]))]]]]]])]]]])]))))))]))])))]])]])])]]))]])]])))]]]))))])]]]])])])))])]]]]])))))))]]]]])]]]])])]]]]]]))))])])])))]))]]))])]))])]]))]])])]]))]))]))]]])])]))]))]))))]]]))]))]]]]]]]])])]]]])))))]]))))]])]])]))))))]])]))]]]]]]]]]])))]])]]]))))]))]]]])]]])]]))])]))]))))])))]))]])])]])))))))])]))]])])]))]]])])))])]]))]]]]))]]]]])]))]])])])]]]))]]))]]])]))]]]]))])]]]]]]])))])))]]])))]]))]]])]]])))]]))]]))))]]]]]])]]))]))]]]]]])]))]]]]))]])])]])])]])])])]]])))]]]]))]]])]])]]])]]])])))]))])]]]])))))]]]]]])])]))]])))]]))]))]]])])])))]))]])]]))])))])]))]]]])])))])]]]]))])]]]]))])))]])]]))]])])])])]]]]))))])])])]])])]]])]))])])])])])]))]])))]))]]))))]))])))])]]]]))])))]]])])))]]])]])]))]]])]])]))]]))])]]])]))])]))))))])))])]]])])]))]]])]))]]]]])])))))]]]])]]]])]]])])))]]]])]])])]]])])]])]))]))]])]]))]]))]))])))))))]))])]))))]]]])])]]])]]))]]])))]))]]))]]]))]]])))]]])]]]])]]))]]]))]])]]])]])]]])))))))]])])]]]))))]]])]]]])]]]]])])])]]]])])]])]]])]])]])]])]])]))]]])])]])]]])]))]))))])))])]])])]]]))])])])])])]]])])))]))])))))])]])]))]))])]))]]])))]])]))]])]]]]]]))])]))]]]]))]])]]))]]))]]]]]])))]])]]))]]))])])]))))])]]])]])])]]])]])))]))]])]]])])]))]]]]]]]])]]]]])))]))])])])]))]])]]]]])))]))))]))]))])]])]))]))])))]])]]]]]])]])])))]]]))]]]]]]]))]))))])))]]))])))]])])]])]))]])]))))])))])]]))]])))]]]])))))])]]))]]]))))])]]))))])]])])]])])])]]])]))))])]]]]])))))]]))])))))))])]]]]]]))]]))))])]]]]]))))))))))))]]))))]))))]])]])]]))]]))]))])])])]]])]]])]))))]])]]])])]])]]]]]]]))]])])))])]))]])]))]])]]))))]])))))])]))])])]]))]]]]))])))]]])))])])])]))]])])))])])])]))])]))]]))])])])]]]]))]))])))]]]]]]]])]])]]]))]))]]]))))))])))]])))]]))))))])]]])])))]]))]]]))])))])])]])])))))])])])]))])]]]]]]]])]])))))]]]]])))])))]]))]])]))))])))]]))])))]]])])]))]))))))]])]))]))]]])]])])))]]]))]])]]]]]))))])))])]))))]]]])])]]])])))])))])]]))))))])]))]]]))]]))))]]])]])])]]])))]))))))])))]]])])))]]]]]])))]])]))])))])])))]])])))])))])]]])]]])))])]])))])]))])])))))]])])))]]]]]])))])]])]])]]])])]]]))))]])]))]))]))]]]]]))]))))]])])]]])]))))))]))]]]])))))]]))])])]))]]])]]]))))]])])]]))])]])])]))])])))]]))]])])]])]))])]))]))]))])]])])]]))])])]))]))]))]]))]])))))])]]]]))]]])])]]))))])))])]))])]]])])]))])]])])))]))])]])]]]))))))])])))]))))])])]]]])))])]]]]]]))]])]])]]))]]]]]]))))]]))]]]]])]]]]])]]))])]])]))]])])]]]]]))))]))]])]]])]]]])))])]]))])])])]]))]]])])]]]]]]])]]])])]))]]])])))]))])])])]]]])]]))]])))]]]]])]))]]))])]))))]]]]])))]])))])]))]]]]])))]))]]))))]))]]]]]]))]]]])])]]))])]]))]]]]]]]))]]]))]]])])]]]])]))))]))]]]]])))]))))))])))]]]]]]]]))])]))]])])]])]]))]])]))]]]]]))])]))])])])]]]))]])]]))))]]]))]))])))]]]))]]]])]]]))))))))]]))))])]]))))]])]]])]])])))]))])]))])])]])))])]]))))])]]]])]])])]])))])]]]]]]]]))))))))]))))])])]))]))])]]]]]])))))])]))]]])))]]]])]]]])]]])]]]]))))))])]]]))])]]])))))]))])])]))]))]]))]]])))])))))))]]]]]]]))])]]))))]])]]]])])]))]])]))]]]]))]])]]))]))])])]]])]])]]])])))]]])))])]))]])]]]))))])]]))))]]]])]]]]]))]]))]]]))))])]))))])])))]))])))]]]]])]]])))]]]])))])]]])])]))])]))])])]]]])])))])))]])])))]])))]]]))))])]))))]]])))))))))])))]]]]))]]])]]]]])]))))])))))])]])])])]))])]]]]])]]))))]]]])]]])]]))]]))]))]))]]])])]]))))))]))])]]]]]])))]))))])])]]))))))]]]]]))]]]]])]]))]])))])]))]])])]]))]]))))]]]]]]))))])]]])))]])])]]])]))))))]]))])]]])]])]]))])])))))]]))])))])]))))))))])]))]]))]])))]]]]]]])]]]])]))))])]]]))]]]]]])]))]))))])]]]]]])]]]]])))]))]]]])])])))]))]))]]]))))])]))))]])])))])]]]]])))))])]]]))]])))])])]]]]])])]]]]]])])]])]]))))]]))))]))]))]))))])])])]])))]))))))])]))]]]))]]))])])]))]))]))]))])]]])]))]))))]]]))]]))])))))]))))])))))]))]))]]]))))])])])))))])]))])))]]))]])))])))]]]]])))]]))])]])]))))])]]))])]]])]]))))]))]))]]])])))])))))))]]]]])))))]]])]))))])])])])])])]])]))])])]))))]])]])]]]])))))]])]))])))])))]])])]))]))]]))))]]))]))])]])]])])])))))])))]))))))]))]])])))]]))))]))]]]])))]])])]]]))]]]]))]])]]]]]]]]))))]]))]]])])))]]])]]]])])]])]]))))]]))))))]))])]))])])]])))]))])]))])]])]])]]])))))))]]]])))]))]])])]))])))))]]]])])]])))]]]]))))]]))])])]]]]]])]])))]]]]]]]])]))])])])])])))))])))]])))))]))]))))])]])])]]))))])))]]))))]]))))]])))])]]]))]))])]))])]])]]]))]]))]))]]])])])))]]]]])]))])]]])])])]])]]))))]])]])]]]]])]))])]]))])]])])]])]])]]]]))]))])]])]])]]]))))]))])))]])]]]])))])])]])]]))))]]]])]))))]])])))]]]]]]]))]))])))]]))))))]))])]])]]])])]])]]))))]]))]]]))))])])]]))])]]])])]]))))]]]])])])]])))]))]]))])])]))]])])])])])]])))]))])]]])]))]))]))))])))))]))]]]))))])]]])])]]))]]])]))]]))])))]]]]]]]]]]]]])))])))]))])))])))])))]]]))]]])]))])]]))])]]])))]]]])]]]]]]]]])]]]]))]])])])]]]]]])])]])]])]]])]))))))]]]]))))])]))])])]]]])]]]]]]]))]])])])]))))])])]))]]]))))]]]])))))]]))])]]))])])]))))))]]]]]]])]])))))))]]]))]])])])]])]))]))))]))))))]])]])]])]]))]])))))))]]]))])])]))])]))]]]]])])]]]]])])]]]))])]))]]))]]]))])]))])]))])]))]))])]])])]))]])))])])])))])])]])]])])))]])])]]]]]))))])]))))))]]))])]))])))])])]))]]]))))]]))]]))]])])))])))]))])))))]))]))])]]))))))]]]]]]]])]]]))])]]])])))]])))))]))]))]))])])])]))]])))]))])]]))]]])]))))]]])]))]))))])])))))])])]))]]]))))]]]]]))]]])]))))])]]])])]])]]))))]]]]))))))])))))]]))))]])))))))]]])))])]]]]))))))))]))])]])]])]))]])]]))]]]])])])])]]])]))))]))))]))]))]))]])])))])]])]]]])])]]))])])))]))]]))]]))]]])))])]]]]]])]]]])]]]]]]])]])]])])])]]]])))]])]]]]])))])))]))]))]])))))]]])]]])]]]]]])]]]]]]])]))))]))]])])]]])))]]))]))]])))))]))]]))]])])))]]))]]))])]]))]))))]])])]]]))]]]))))]]])]]]])]])]))])))))]]))])]])])])]]]])))])]]])))]]))]]]])))))]]]))]])))))]))))]])]))))]])]]))))])]]))])])])))]))))])]]]))]]])]])]))]]])))])]]]])]]))))))])))))]))])]]]]))))]]])]])))))]))))]))]]])]])))]]]]]]])])])]]]]))]])]))]])))]])]]))]]]))]]])]]]]])]])]])])])]))))])])]]]]))])))]))]]))])))])))]]))])]])])])]])))]]]))]])]]]))]]]])))))]])))])))])))])))]])]])])]])])])]])]))]]]))]])])]])))])]])]])))]]]))]])))))]])])]))]]]))]))])])]]]]]]]]))])]])])])]])]))))])]]])]]]])])])))])]]]]]]])))])))]]]))]]])))])))])))]))]]))))])]))))]]])]))])])))])]])))])])])])])]]]))])]]]])]]])))]]]])])]))])))))))]])])]])])])]]]]])))])]]]]]]))]]))])]))))]])))]]]]))]]]])))])]]]))]]))]))))]]))]]])]]]))]]]]]))])])))]])]))])]]]]))]]]])]])))]]]]]])]]]]]]])])]]])]])])])))])]))])])))]]))]]))]])]))))]]]))])])]]))]]]]]]]))]))])])]]]]]))])]))])]])]])]))]]]]]))]))])]]]])]))))])]])])))])]]))))])]])]))])])]]]]]))]]]])])))])))]]))])))]])])]])]]]))]])))]])]]))]))]]]))]))])))]]]]))]]))])])]]))]))])]))]]]])))]]))]]))]])]])])))])))])]])))]]]]))]])))))]]))])))]])))])]))]])])])]])]))]))))])))]])]]])])))))])))]])])])))))]]]]])]]])))]]]]])))])]]]]]]])]]))]]]])))))))])]])))])]]])))])]))])]))]]]]]]]])])))]))]]))))))])]]]))]]])))])])])))]))]])]))]))]))]])]])]]])])))))]))])])]]]]]]]))])]]]])])]))])]))))])]]])))]]])])]]]]]]]]])])])])])])])])]]))]]))])]]]]))]]]]])]]))])]]]])]]]]]))))]]]))]))]))]]))])))]]])])))]])])))))])])]])]])))]])]]]]]]]]]))]]]]))))])]]])]]])])]]]]]))])]])]])]]])]]]]])]]])]]]]))])]))]))]])])]]]]])))])]]))]]]])])]]])))]))])))]]]])]]]]]]))))))))]]]]])))))]]]])]))))]])])]))])]))]]]]]))))]]])))])]]]))]]]))]])]]]])])]])])))])))]]])]))]]]]])))]))))])))))]))]]]))]]]))])]))))))))))])]]])]]))))))))))]]]))])]]]]]])))])])]]])]]])]]))]))])])])])]]]))]]]))))))]))]]]))))])]]))])))])])))]]]))]))]]]]])]]])]])]))])))]])))]]))])])]]])])))]]])))))]))]])])]])))]]))))]]))]]])]))])))])]])]]]]]))])])))]))])]])]))]))))))))]]]))))])))]])])]]]])))]])))))])]]]]]))])])])]))])])]]]]]]])]))]]]))]))))]]))]])])))]]))]))])]]])]))]]])]]]])]])))))]]]]))]])]]]]])))]]])]]))]]]])]])])])))))])]))]))])])]]]]])))]))]]]))))]])]]]]]))))])]])]]]))]))]])])]))])]])]])]])))]])])))))]])))]]])))])])])]))])))))]]])]]])]])])))])]]]))))]]])]]])])]]])]))))])]])])]]]])])]]])]]])]]]]]])]]))]]]])]])]])))])])))]]))])]]]]))]]]]]]]))]]]))]])])])]]]])]))]]])]]]))])]])]))]))])]))])))])])))]]]])])]]]]]])]))]])))]]))]))])]]])]])]]))])))]]]]]))]))]])]]]]]]]))])]]]])]])]))))]]]))]]]))]]))))]))]]]]]]))])]]))]])))))])]])))]))))]])]))]]))]]]])))]]]))))))]]]])))))]])]]]))]]))])]])]])))])]]]))))])])])))])]]])]]]))])))])))))])))])))))))])]])]]]))])]))])])]]))]))]))])]]]]])]]))]]]])])]))])]])]]))]))]]]])]))))))]])))]]])]))]]]]]]]]]])])]]))))))])]])])])]))])))]]))]]))])))])])))]]]]]]]])]]])))]])])])))]]])]])))]))])]]))])])]))))))))]])]))))])))]))])])))]]]))))])]]))])]))))))])])]))))]])))]))]]]])))))])])))]]))]))))]]]]]])]))]])))]])]]]]]]])])]))]]]))]))])]))]])]])])])))]]])]]]))]])]]]])))]]]]]]]])]]]]))])]]]])]]))))))))])]))])])]]]]]]))))])])]])])]]])]])]])]])]))]))]]))])))))])))]))])])]))]]]])]]))])]]])])))]))))]))))]))))]]]]]])))))])]])))]]))))])]]]))])]]]))]])]]])]]])))))))]))])])]))]]]]))]]]]]]]])]))]])]]))])]]]))]]])))])])]))]]]]))])]]])))]))))]])]])])]]])])])))])]])))))]))]]))])]]]])))]]))]))])))])))])]])]]))))]]))))]])))]]])]]])])]])])])])]]]])])]]])])])))]])])]]]]))])]))])))]]])])]]])]]]]]))]]]))))))]))])])])]])]))))]]))))])])])])))]]]])])]]]]]]]))))]]])))]]]]))]]]]])]]]]])))])))]))]]])))]]]))])])]]])]))))))))]])))]))]]]))])]]]]))))))))]]))])]))))]]])]))))]])))]]]]])]]])]]]])])))]])]]])]]]))))))])]))))]])]]]]])]]])]]))]))))))])]])])))]]))))])])]]]]]]]))]))]]))]])]])]])])))])))]]]]]]))))])))]]]])]])])]))])]]))]])])])]])])]]]))]]))])]])))))])))])]))])])])])])])))])]])]))]])]]])]]]])]])]])))))))])]))])]]]))]]])]]])))]]])))]]))])])]])]]))))))]))))]])])))]]])]))]))]])]]]]]]]])]])))]])]))])])))))))])))])])))]]])))]]]]))]))))]))]]]])])]]))]])]]])]]])]]]]]))]]])))]]]))])]))]])))]])))])))))]])])]]]])]))]))))]]))])]))))]])]]])]])]))]]]]]]])))])])))]])]))])]))]]]])]]]]])])]))]))]])])])))]]]))])]]]]]]]]]]])))]]])])]]]))])])]]))])]))])))])))]))])))]))])])])])]]]]]])))]]]])])]))])]))]])))]])]]))])))])])]]]])]))]))]]]])])]))])]]))]]])]])])]))]]))])]))))])))])))))))))]]))]]]]])]))]]])]]])])))))]]])]])]]])))))))))))))]])])]))])))))])])]])]])))])]]))]]])))])]]]]]])]))))])))]]]))])]))))]]))))])])])))]])]]))])]]]]))]]]]]])))])])])]]))]]]])])])]]]]))]]]]])]]]])))]))))))]])))))]]))])]]))))))]]])))])]))]]]]])]])])))))]]]))]]]]))])])))]])]]]]])))]])])))))]]])))]))]])])))])])]]])])])))]))]])]))])]]]])])))]])])))]]])])))])]])))]))])])])))])])])]]))]]))]]])]])))]])])]))])))]])]])]))])]]]]))]]))]]]]])]]]]]]]]]])]))]]])]])]))]]]]))])])])])])]]]]]])]))]])])))))])))])]]])]]])]]))]])]]]))])])]]))]])])))])]))))]]]]]))]))]]]])))))))))))])]]]]]])])]]]))])]]])]])]])))])]]]))]])]])]]]]]))]])]))))))]]]])]]])])))))])]]])])]))]]]))]])])])]]])])])]]))]]))]])]])]]]))])]]]))]]]))])))]))]))])]])]]))])]]])])]]]]])])]))]))])]]))]]))]]]]))]]])])])))])))])))]]]])]])])))])]]])])])]]])]))])))]]]]))))]])]]))))]]))])]))]]]))))])])]))]])))]])])]]))]]]]]])]])])))))])]))]))]]))]))])]]])]))))]])]])])]]))))]])])])))]])))))]]])]])]))])]])]))]]]])]])]])]]])])]]])])]))))))))))]])]]]))]]))]))]]])]]))]]))]])])]]))]]])])]]]))))]))]]]))]))])]))))))))]])]]]))])))]]))])))]]))]))])]])]]))])])])]])])]))))])))])))]))]]])])])]]])]))))])]]])]))]]))]]]]]]]))]]]])])))]]])))]])])]])])))])])]))])))]))]]))])]])))]])]))]]]))]]))]])]]]])]))]]))]])]]]]])))]]])))))])]))))))]]]]]]]))])]))])))]]]]))])])))))))]))]]]])]]))]]]))])))]))])])))]]]]))]]])]])))])))]])]]))]])))])]))]))]]))))])))))]]])]])]))]]])])])))]])])]])])]])]]]]]))]))])))]]]])])])))))))))])])]])]]]]]]))]]))])))])))])]))]))]])]]))])))]]]]]]])]]]]))))])]))))))]]])))]]]]]])]))])]]))])]))])))])]]]))]]))])])]]]]]))))])])]]])]]])))]]]]))]])]]]]))))))])])]))]]]))])))])]))]]]])))]])]])]))]]])]])]]]))]))]])]]])])])]]]]))]))]]))]]))))))])])))]]]]))]))))]])]])])))]]]))]]]]]))]]))))]))])])))])]))])])]]])])))])])]]])])))]]]])])]]))))]]])]]])))]))]]]])])))])]])])]])])]]]])])]]))))))]])])))]]])))]])))])]]))]]]))]]]]))))]))])]])]])]]])))])]))])))]]]])))))])]]]]))]]))]]))])]]])])]]))])]]))]]]]]]))))))]])]]))])]]])]]])])))])))]]]]])]])))]))]]]))])])]])))])))])]])]]]]]))))]))))])]))])]]])))))))]]]]))))]))])))))]])))]]]])]]]))]))]])))])]))]]]]]])]]))])])]])))]]]]]])))))])]])])]]])))]))]])]]]))))]])))])]))))]]]])))])))))])]))]])]]])]))]])])])))])))])])]))]))]])]))]])]]]]])))])])])])))))))]]]))]])])))))]]))]]])]]]])))])))])))])]))]])])])]))))]]]]]]]]))])))]]]]])]]]]))]))))]])))))]))]])])))]])]])]]])])])])]))]]]])))]]])]])]]))])]]]]]]]]))]))])]))])])])]))))])]]])]])]]]))]])])]])]]]]]))])]]]]]]]])))]]])]))))]])])]]])]]))]]])])))])))]]))])))]]])]]])]]])))]]]))]))]])])))])))]]])]])]]]))]]))]))))]])]])]]))])])]))]])]])]))])]]])))]])]))]))]])]]))))))))))]]])])))]])]]))))]]]]))]]])])])]]]])]]])])]]]]))))])))]])]]]])]])])]]]))])]]]))]])]]])])]])])]]]]))])]]]))]]))])))))])])]))])]]))])]])]])))]]]))]))])])))]]])]))))]))]))])))))]])]])]])]])]))])]]]))]]]])]]]))]])])])])]]]]]]])])]])]]))]]])])])]]))]])]]]])]))]]])])])]]]]])))))))]]])]]])]]]]]]]])]))]]])]))]]]]]))]]]]]])))]))))))]]]])))]]]]]]]]])]])])]))]))]]]]]])]]))))]]]]))]]])]))]]))]]]))]))]]]]))]]]]]])]]]))])))]]]]])]))]]])])]))]]]]]]]])])])]])]])))]]]]]]))]]]]])))])))])])))]))))]))))])))]]))]])])]))))]]]))))))]]))))]]]]]]])]])]]))]))))]))))])])]])))))]]]]]])]))))))]]]])))])]]]]]]]])]]])))])]]])]])]]]])])]]]]]])))]])))]])))]))]]))])])]]]]]]]])]]]))])]]])]))]))]]]])]]])]))]]]]))])]]))]]])]])))]]]]))]]]))]])]]])]]]]))))]]]])))])))])]]]]))]))]]]])])]])])]])]]]]))])))])])]]))]]]])))))]]]])]]))])])]])]))]]])]))])]]]))))]])))]]))]))))]]]])]]]]])]]]]]]]])]]))]])))]]]))])))])))])]])]]]))))))))))]])))])]]]]]))]]])]])))))]]))]))]]]]))]]])))])])))]]))]]])])]])]]))])]))])))])))]))]]))]))])))))))]]]])])])]])))]]])])))]]))]))]])]])]]]))])])]])]))])))])))))])])]])))])])))]))]])])))]])]]))]]]])]]])]]])))]]]]])]))]]))])]]])))]])))]))]])))]])])])))))])])))))])]])))])))])))])]])]]])))))])])]))))]])]]]]))])]]]]]])))])]]]))))]]]])))]]]))])]]]))]])]]))]]]]]])])))]))]]))]))))])])))]])))])]]])]]])]))]]))]))]]))]]])]])]]])]])))))))]))]))))])))]))]]))))])]]))])]])])]]))))]]])))]]]]]]))]]])))])]])]])]]))]))])]]))]]]])])]]]]])))])]]]))])]]]]]])]]))])))]]]]]])))]))])]]]]]]]))])]]))))))])))]]])))))])])))))]))])]]]]))))]]))]]]]]))]))))))]]]])))])]]]]))])]]]]))]]])]])]])]]]]]])]]]))))])]))))]))]]]))))]])]])]])]]]))]))]]))]))]]))]]))]])]))])]]]]]))))]]])]]]]))]]]])])]]]))]]]]))])]))))]))]]]])]]])]]))]]]]]))])))]])])))))))))))])])))])))))]]]])]])))))]])))]))]))]])])]]]]))]]))]]]]]))]))))])])))]]))]]]]])]]]]])]]]))))]]])))))]]))]))])]))])))]]))])]))])]))])])])])]])]))])))]])]))])]))))))]))])]))]]))))))]]]))])])])]]]))]))])]))]]])]]))]))])])]]]))])]]]]]]]])]))]]])]])]))])))])]]]])])])]]]))])])))))]]])])]))))]]]))]))])])])]]])])]))])]])]])))]])]))])))))]]))]]))))])])))))))])]]))])))))))]]))))]])]]])])])]]]])))]))])))]]])))]]]])])]]])])])]])])))))))]))]]]))]])]])]))))]]])]]))]]]]])]])]))))]))]])]]])])])])])])]])]))]))]])]]]])])])])))])])))))])])]]])]))))]]))]]])])]))))])])])]])]])))]]])))])])]])))]]]]]))])))))))])])])]]]]]]]])]]]])]])])))])]]])]))))]]])]))])))))))]))))]]])]))])]))))])]))]]]]))]))))]]]])])]])))]]]]]))]])])))]))])]))]]])])])]))]])]])]]]))]))]])])])]]]))]])]]]))])]])])]]]))]])]]]]]])]]])])]]))])])]]]]))]]])])]])]]]]]]]]]]))]]))]])))]]]])]])]))]))])]]]]))))]]))]])))))]))]))]))]))]))]])])))))))]))]])))]))))])]])]]]])]]])])))])])]))])]]]]))])])])]]])]))))))))))))])])]]]])]]])]]]])]))]]]]])))]]))))))]]])]]])))))])]]]]))]])]])])]])]))))]]))))])]])])))])])])))]))])))))]]])]))])]]])]])]))))]]))))]]))]]))]]]]]])]]])))))]]]]]]))])]])])))))))))])]])))]]])]]]))))))])]))]])]]]])]))])]])]]]]]]]]))])])))])])])))]]]]))]]])])))))])])]]]]])]))]])])))])]]])]))]]])])]))))))))]))]))]))]))]])]))])]))]]])))))])]))]])))))]))]]))]])))))]]]])]]]))])))]]]]])])]]]])]]])]]]]]])]]]])))])))])])))])))]]])]]]])])]]])]]]])]]))]]])]]])])])]))))]]))])))]]]])]))]]))))])])]]]]]])])))]]]]])))]]))]]])]]])])))]]])])]]]]]]]))))]])]])))]))]]))]]))])]]))]])]))))]]])]]]]]]]]]))])])))])])]])]])]])]]]]]]))))))))]])))]))]))]])]]])])])))]))])])])]]))))]))]]))]]])))]))]))))))]]))))))])])))])]]]]]]]))]]]]]]])])]))]]]]]]))]))]]])]]]]])]))])]]]]]])]]))])])))]))))]]])]]]))))]]))])))))]))]]]))]]))]]]]))))]]])])])))]))]]])))])]))])))])]])))])))]]]]]]]))))])]]]]]])))]]]]]))))))]))]))])]]])]]]]])))]])])])]])))))]]]]))]])))])]]))]])])))))]]]))]]))])]))]])])]]))))])]]]))])])]])]]]]]]])]]]))]]]]]]))])]]])]]))])))]))]))))]))))]])]]]]])]])))]])]]]]])]])]]))]))])]])]])]])]])))]]])]]]))))]))])])])])])]))))]]])]]]])])]])))]))]))))])]])]]])))))))])))]]]]))))))]]]]])])]])))]))]]]]))))))])]])]])))]]])])))))])))))))))]))]))]]])])])]]]])]))]]))])))]]]))]])])]])))))]])])]]]]])])])])])])])])]])]))])]]))]]]]])])))])]]]]]])))])]))]))]])]])]]))])])])])]]]))])]]]])]]]])]])]]))]))]])])]]])])])]]])))])])]]])))]]))]]))))]]]))))))]))]]]]]]])])]])))))))])))))))]]))]))]])]]])]]])]]])]]]]]])))]]]]))]])]))])])]))))]]]])]))]]]))]))]))]]]))]]]]]])])))))]]])))])])]]])]))])))]))])]]]))]))]])]))]]])))]))])])])])))]])]]))]))]]])))))]]])]))]]))))]])]]]]))])]))))]]])])]])])])))]]]])]]])))))))])]))))]]))))])])]))]])])])]))]))]])]]]]]]]))]))]]])))]]))]]]]]])])]])])])]]))]])))))]]]])]])])))]]]]])])]]]]]]]]])))])]]])))))]))]])))])]]])]])]])])]]]]])]])]))])]]])))])]]])))))]])))]))]]))]])])])])]]])]])]]))])))))])]]]]))]))]]]))))]])])]))))))]]])])]]])))))]]]))))])]]])]]]])))]))])))]))))]])))]]]])])))])]]])])]]]]]])])]]]))]]]]))]])]]])])]])))]))])))]))])]])]]])]])])]]))))]]])))]])]))]]])]]])))))]])])])]))])]]]]])))))))])))])]]))))]))])]]))))))]]]])))))]]))]]])]]))]])))))]])]]]]))])])])]])])))))]]]]]]]]]))]]]]]))))))))])]]]])])]]])]]))))]))))]]]]))])]]))))])])]]]])])]))]]))]])))))])])))]]]))))]]]))]])])))]]])))]]]))]])])])])]))]]]))))])]))))))]])))]]]]))))]))]))))]))]]]]]))))]]]))]]]])))))])])]]]]]])))))]))))))))])]))]])]))))))])]]]))]))]]))])]])])))]))]])]]]]]]]])])]))))))]))))]))]))))))]]])]))]])]])])))]))]])]))])])])]]])))]))]]]])])])))))))))])])]]))]])))]])]]))))])]])]])]))]]]]]]]]]))]]]))])])])]])])]])])))))])]])))])])]])]))]])]])]])]]]]]]]]]))))]]]]]]))]]))]]])])]])]]))])]]))]]))]])]]]]])]])]])]]])]))]))]]))))]]))]))])]]))]]))]])])])]]]]]))]]])))]])]))]]])])))]))])))))]]])))))]])))])]]]])]])])))]]])]))]])])]])])))]]])])]]))]))))))])))])))))]])])]))]]))))])))]))))))))])])]))]))])]]]]))]))]])])])))))))))))]])]))))])]))))])))])))]]])])))])))])])])))]]]]))])]])]]))]]]]]])))))]))])))])))))))]])]]))))))))]]))]]]]))))]]])]))])])]]]))])]))])))])])))]]))))]])]]]]]]))))]])])]))))))]))]]]]])])]])))))))))))]]]]))])))]]]])]])]))]]]))))])]]]))])]])]]))))))]]])))])))])]]])]))]]))])])])])]]])]))])])]]]))]]]]])])]]])))))]]))])]]])])])))]))])])]]))])]]]]]))]]))])))))]]])]]))))))])]]]))])]]]])]]))))]]]]))])])])]]))])))]))))])]]]])]])]]))))]]))]]]))]]]]))])])]])))]]]]]))]]])))]])]))]))])))]]])]])]]]]))]])]]))]]]])])]])]]])])]]])]]]])))])]]])))]))])]])])]]]))]]])]]])])])])))))]]]]))))]]]]]]]]]])]]))]])]]]]))))]])])])))))])))])]])]])]))]]])])]])]]]]))]]])])))))]))]))])]])]]])]))])))]))]]])]]))])))]]]]]))))])]]])]])]))))]])]]]])]]]])]]]]])))])])]]]])))]))))]])])]]))]]]])))))]])))])]))]]))])))]]]))))]]]])])]))))])])])])]]])))]]]]]])]))])])]]]))))))]))]])]))))]))))))))])))])]]]])))]]]]]])])]]])])])))]]]]]]]])]))))]])]]))))]]]]]])])])])])))]]]]]]]]))])]]]]))]))]]))]]])]))]))]]))])]]]]))))]]])))))))))]))]]))))])])]))])])]]])))]]))])])]])]]])])]]])]))]]])])]]]])])))]]))))))]]))])]]))]]))))])])))]]]))]))))])])))])))]]]))]]]])]))))]])]]))]])]]])]))]])]]))))))))]])]]))]])])))])])])])))))])))))])])]))]]]]]])]))]]]))]]]]])))]]))))]]))))]))))]])]]]])])])]))])]]]]]])))))])]]]]])))]])))))))))]]])]]]]))])]))))])))]]]])]]))))))]]]]]]]]))))])))])])])))]]]]))])])]])))])])))]))))])]))))]]]]]]))]]]])])))])))]])]]]))])))]]))]]))]]]])]]]]])])]]))]]]]]))]]]]]]])]))]]]])))])])]]])]))])]])])]))]])])]))))])]]))))]])]))))])))]))]])))]]])))]))]]))))])])))))]])]]])])]]])]])))]]))])]]))])])]]))]))])]))]])]))))))]))])]]]])))))]]))))]))])])])]]]]))])])])]))]]]]))])]]]))])])]]]]))]])]])]]]))))))))]]))))]))))]))])]))))]])]]))]]])])])))))]]]))]]))]])])]]]))]]))])]]]]]])))]])])))])])])]]]]])])]))]])]]]])]]]])))]])]))]]]))]])))])])))))))]))]]]])])])))]]]))]))]]])))))]))))]])])))])])])])]]))]))]))))]]]])])]])))])])]))))]])]])))])))]])]]]]])))]]]]])])]]])))]]]))]))]]]])])])]])]]]]))]])]]]]]])])])]]]])))]))])]]]))]])]])))]]]]]]]]))]]])))]])]])])))))])])])))])]]]))]]]))]))]]))))))))])]]))]]])))]))]]))]])]]])])]))]]]]])])]]])])]])]])]]]))]]))]))])))]))]]))))])]]]])))))]]])]])))])]))]))]]]]]))]))))))]])]])))]]))]))]]]]))])]))])]]))]]]]))])]])]]])))]])]])]]]]]]]]))]]])]))]))])]]])]]]])]]))))]]))))))]])))])])]]]))))]]]]]]))]])]]))]]])))])]))])]]))))]]])])])])]]]]])]]])])))))]])]])]]))]))]]])))])))])])])])])]))))]]]))]]))]]]]]]]])])])]))])]))]]]])))))])]))))]])])))]]))]]]))])]))))))))]))))))))])]])]))))]]]]]])])]])])]])))))]]])]]]]))]))]]))]]]])]))]]])))]]])]))]))]))]])]]])]])]])]])))]]])]])]])))))]]]))]))])))])))]]))))])]))])]]]])])]])])]]]]])])])]))]))]]))]])]])]))])))])]]))]]))])))])]])))]))]])]]))]))]]]]))]))]))]))]])])))))]]])))]]])]))))]]]]]))])]]]]))]))]))])]))))))])])])])))]]))))]]])])])]))]))]]]]]]])))]])]))]]))]]])]]]))]]))])]]]]])))]))])]))]]])))))))]]])]])]])))))]))]]))])))])])))])]])])))])])]]]]]]]))]]))))]))])]]]))]])])))]])])))])]])]]]]])])]]])])]])])))))]))]]]])]]]]])])]))])])))))])]))]]]]]])]))))]]]])]])]])))]))))]]])]]]))]])]))]]])])]])]]])]])))]))]))))))))))))]))]]]))]]))))]]])))]))]]]))])])))))]))]])))]]))]]]])]])]]])))])])])])])]])))])))]]]]))))]])])])]]))]]]])]]])]]))])]]]]))]]))))])))]]]]]])]])]))]]))]]))]]]]])]]]]]])))))])]]])))]]]])])]]))])))]]])]]))]]))])]))])]]]))]]))])))]]]]])]])]))]]]]]])])])]))]]))]]]]])])])]])]))]]]])])))])]))]]])])])]]]]))])]))]])))))]))])])]]]))))])]])]))))])])]]])]]])]])])))])]])])]]]))])))]])]]]]]]])))))])))])]))]])]]))))))]))]]])]])]]])])]]]]])])]]])]))]]))]))))]))]))])))])))]]])))]]]])]))]]))]]))))))])])]])])]]]))))]]]])]])))))]]])])])]])]))))]]]]))]]])))]]))]]))]]]])))))]))]]))]]])]]]])))]])]]])))]))])]]]]]]]]))]))]]]]]])))]))])])]]))))]]]]]]))]]]])])])))))))])))]))))))))]))))])]]))]))])))]])]))]]])]))])])]))]]]]])]]]]]))])]]))])]))))]]]]]]))))]]))])]]]])]]]]))))])))])))]])))))])])]))]]]])]))))])]))]])]])])])]]])]])))))])]])]))]))])])]]]))]]])])])))])))]))))])))))]])]]]))]))]]]]])]]))]]))]]]))))])])]]]])])])])])]]]])])]]]]]])]])]]))]))]])]]]))))))]]])])]))))]])]])]])]]]])])])])]))))])]))))]]])))]))]])])]]]))])]]]])]])]]))]]]))]])]]])]]])]]]))))]]])]]))])])))])))))])])))))])])))])))]]))]])]))))])])))])])]))]))]]]]]]]]]]))])))]])])))])))]]])]]))]])])]]])]]))]))]]])])]]])])))))])))))]]]]))])]])]]]])))))])]))])]))])))]))])))])])]]]))])]])))])]))))]]]))]))]]]))]])]]]))]]])))))])]])))]]])])]]])]))]])]]]))])]]))])]))]]]]))]]))]]]]]])))))]))]]])]])))))]]])]]))])))]]))]])))))))]]]))]]])]])]]])])))))))))])))]]]])])]]]]]])]])]])])]]]))])])))]]]]]])))])]])]]))]))])))))))]))]])]])]]))])]))))]))])))))))]))]))]))]))))]]]]])]))])])])])]])]))]]))))]))))]]]))]])))])]]))])]]]]]]]))]]))]])])))]]]]]]]]])])))))])))]]]))])]]])))]]])))])))])]])])]])]]])]]]])))])])])]]])]])]))]]))])]]]]])]]))]))]]]])))))]]]])))]]]))]]]))))]]]))])]))])])]))]])])]]]])))])]]]]])))])))]]])))]]))])]]))))]))))]])]])])])]]])))])]]]]]))]])])))]))))])))]]])]]))])))))])]))]]))])))])])])))])])))])]])]))]]])]])]]]]))]))]))))))])]))])])]])]]]))]])]])]]])])])))]))))))))])))]]))])))]]))])]])]])]]))]])]]])]))])))]]]]]]))]))]]])]]]])]]]]]))])]))))]]))]])]]]))])])))])])]])]]]]])))]])))))))]]]))))]])]]]])]]]]])]]])]))]]]]]]]])])]]])))])))])]]])))))]]])]]])]))]]])]))))]])])])]])]]]])]]]]]]]]])])))))])))])]]]]])))))]]))]])])))]])]]))))))))]))])]]]]]])]])])))]]))))]))))))])])))])))]]))])]]))))])]))]])]))]))])))]))))))]]))]])]]))))]]))])]]])))])]))])))])])]]))))]])]]]])])]]))))]]])]])]]]))]))]]]))))))]]]))]]]))]]))])]))]]))]]]))])]]))))]]))))]])]]]])])]))]))]]]]]))]]]])])]])))])]))]])))])]])]])])]])]])]])))]]]]))]]])]))]))]])]]])]]))]]])])))]]])]))])))])))))]]))])]))))))]]))))]]]])]]]))))))]]]])])])]]]))]])))]]]))]]]]]))]])]]))])]]]]])))])]))])]])]]]))]))]]]]]))))]]))]]]])]]]])]]]])])))]]]]))])])]]]]]]]))])]]]])])])])]))]]]]]))]]]]))]]])))]))])]]])])])]))]])])])]]))]))]]]]]))]]])]]])])]))])]]))]]))]])))))]))]))])]]])]]])]))]))]]]))]])]])))])]))])))]]))]]])))])])]]))]]))]))])))])]]])]))]]])])])])]])]]])]])]]))]]))))])])])])]])]])]])]]))]))]]])]])]])]])]]]]]])))))])]))]]]]))]))))]))]]]]])])])))])))]))]))]))]]]]))]]])]]])]]]]]]]])))])))]]]))))]))]))])])))))])]]]))))]]]]])]]]])))]]]])]]]))))])]])])])])]]]])))]]))]))])))])]))])))))]))]]])])]]]]])]])))])]]))))])])))))]))])]))]])))]]]]]])]))))]])]))])]]]])))]))))]]]]]]]]])]]])])])]])]]))))]]))])]]))])])])]))]))]]]]])]))]]])])]]]]]])])]))]]))]]))])]]]]))]))]])])))]]])]])])))])))])]]]))]]))))]))]))]]]]))))))))]])]]))]]))]))])]])]])]))]])]]]]])]]])))])]]]]]]))))]])]))])))]]]]]))]])]]]]))]])]])]))]])]])]]))))])))])]]]]]))])]])])])))]))])]))]])))])))])]])]]]))])]]))])])])))))]])]]))])))))))))]]]]])]])]])])]]])]]]))]])]]))])]]]]))]]]]])])]]])]))])]))))]]]])]]))])))])]]])])])))]])]]]]))])]]]]))]))]]]]))])]])]])])]])]])])]]]))])])]))]]])])]]))))))]]))]]])]])))]))])]]]]])]]]))])))]))])])]]]])))]])]]))))]]]))])]]]]))]]])]]]))]))]])])))))))]]))]))])))]])])))))]])]]]]]))]]]])]])])])])]))]]])]]]])]]]]]))))]]]]])))])]])])])]]])]]))])]])))))])]))])]])]]]]))))]]])]]]))]))])]])]))))]))])]]])))]))]))))]])))])]))])))]]])]]])]])])]]]]]))]]]])]]]))))]])]))]]])))))))])]))]]])])))))]))]))]])]]))])]]]]]])]])]])))]]])]]]]]))]])]]]]]])))]]])))])))]]))))]]]]])]]]]]]])]]]])))]]]))]])])]))]])]]))))))]]])))]))]]))]])))]]])))]]])])]))]))))))]])]])])]]]))))]]]]))]]))]])]]))]]]])))))]))]]]])))]]]])]]]])]))))])]))]))]]))))])))))]]])))]]]])))]]])))))]]])))]])]])))))]]]]]]]]])]])))])]]]])))]])]]]))]]))]]])]))]))])))]])))]]])])]]]]])]]]])])]]))]])]]])])]])]])))]]))]))))])))]]))])]]))]]]]]))])]]]))))))]]))]))]])])]))])])])))]]])))))])])))))]])]]]]])]]]))))]]]))))]))))]]))])])))))])])]]))))])))])]])))]])])))))])])]]]))])]]))]])])]])))])]]])])))))]))]))])))))])]))]]]))]])]]])]]))]])))])]]]])]])])]]])])]))]])))]]])))]])))]]])]]])]))])])]])]]]]])]])])])])])])]]])))]))]]]])]]])]])])]]))]))])]]]))])]))]))]))))))])))])]]]]]]]]])]])]])])))]]]))]])])]])]]]]))))])]))]]]])))]]]))]]]]])]))])))])]]))))]))]))])]))])]))]]]]))]]))))))))]]]))]]]))]]]]]]]]))]]))))]])])]]))]))]])]]))))))])]]]]]))]]]]]))]]]])]]]]]])]])]]])])])))]]))])])]])]]]]))))]])]]]])]]]))))])]]]])]]])]])))]))])]])]))))]]))]]))))]])]))])))]])))])]])]))]))]]))])])])))]])])]))]]])))]]))))])))]]]]])]])))))])))]])]]))]]])])]))]]]])))]]]]]))])]]])])]]])]]))))]])))])])]]]))]]]))]))]]]]))]]))])))])]]])]])))))]))])]])]])]]]])])])]]])))))]]))])]]])]]]]]]]])]))])]]]]]))]])))))]]])]])])))]])])])))]]])])]]]]])]])]]]]]])])))]))])))])]])]]))))]))])]))]]]]]]]]])))))]]])))])])]]])])]])]])]]]])])))))]]])])))])))]))]))]]])))])))]]))))]]]]]]]))))))]])))]])))]])))]]]]]]])])])]]])]]]])))))))]))))))))))]]]))]]])]]))]))]))))]]]))]])))]]))]])))]]]]])))]]))]))])])))]]])))]]])))]])))])])])])]]]])]]]])))))]))))])]]])]])))])]])))))))]]]])))]))))]])]]]]))]]])]]])))]])])]]]]]])]]])])]]]]))]]))]]]]]]]])])])]]])]])]]])]]))]])]]]])))]])))))))]))))]])])])]))]]])])]]]))]])]])])])])])]))))))]))]]])))])])]]]))])])])])]))]])]])])])]]])])]]])]]]])]]))]))]]]))))]))))]]]]])))])]))])]])]]])]))]]]]]])]]])))])))]]))]])))]))]]]))]))]])))])))])]]]]]])]]]))]]))])]))]]])]]])])))))))]]]))]]))]]])))]]))]])]]]]]))])))])))))]))])]]])]]))]))])])])))))]))))]]]]]])))])))]))))))]])]]]]]))]]]])]))])])])])))]]]]])]]]])]))]))]])])]]))])]]]]])]))]))))])]))))))]])]))))])))])])])])]))]]])])])])))])]]))]))])]])]))]))]]])]]))]))])]))])))]]]]]]))])]))])])]]])])]]])])]))]]))])]]))]]])]])])))]))])]]]]]))])))]])]))])])]]])))]]]]]])])]))]])]))))]]])))]])))))]))]]]]]))]]]])]))))])))])]])))]]))))]]])))]])]]])])])]]))])])]]]]))]])]]])]]]])]]]])))])))))])]])]]]]])]]]))]]]]]))]])]]]])]]]]])))]])))]]))))])]]])]])]))))))]])))]])])))]])]]]]]))]]])]]]]])))))))))))))))]))]])))])])]])])]]]))))]]]])])]))]))]]))]])]]]]]]])))))])))]]]])))))]]))]))))))]))])])))]))]])])])]]))])]]))])]]]]]]]]]]]))))]))])]))))])))]]]])]])))]))))))])]])))]]]]))))]]]])))]))])]]]]]]))]]]]))])))))]]])]]]]))]]]))))]))]))]]]]])]]))]]]]]]))]]]))])]])]))))]]]))]]))))]))]])]]]))))])))]))]]]])]]]])])))]])]]])]))]]))])))])]]]]))])])))]]]))]])]])]]]))]])])]]))]]))]]]]])])])]]))]]])]]]))]]))]))))]]))]))])]]]]]))])]]]]))]])))]]))])]]))])]]]]))])])]]]])))])])]]])])]]])]])))]]]])]])]))]]]))]]])))]]]]])]))]]]])))))))]])))]))]])])))])]]))))])]))]]]]))))]])])]))))]]]))))]]]]]])]))]]])]]))))]]))]]])]]))]]]])))])]]]]))]]])]))]))])]]]))])]])))]]))]]])))))])))))]]]]]]))])]])))]]))]))]]]]])]]]))]))]))]))]]))]]))]]]))))))]])))])]))])]))]])]]]))]))]]])]]]]]]]]])])]))]])))))])))]])]))]]])]]]]))))]])]]])]]]]]]])]])]])))])])]]]]]]])]])])]))])]))]]])]]]]))))]])]]])])]]))]]))]])]]]])]))])])]]))))]]]])]))]))]))])]])]]]]))])]]))]])])]]]])]])]))))]]])))]))])))])]]))]))]])]])]]])]))])]))])])])]]])]]]]]]])]]]]])))))]])]]]))))))])))]])]]]]))])]))))]))))]]))))]]))]))])]]])]))])]]))]]))))]]]])]]]])]])]])]])])]]])]))]])])]])])]])))]))))]))]])])))]]]]])]]))))]))]]]]]])])]))])]])))))])))))))]]]))])])))])])])])))]]]])]]])]]]))]]])])]])])))))])])])])])]])])))]]]])]]]))))]))))]]])))])])])]])]])))])]])]]))])]))]])))))])]]]])))))])])])]])))])]]]]]]])])])])]))]))])))]]]]]])])]]))])]]]])))]]]]))]]))])))])))))))]])]])])]])]]])))])]]]))]]])]]])]]])))]]]]])))]]))))]])]]]]]])])])]]]]]))]]]])]])])])]))]]])])))]]]]]])])))]]]]]]]]]])])]))])))]))))))])))])]])]])])))]]]))]])))))]]]))]])))]])]])]]]))]])))]]]))])))]]))])])]))]])])]))]))]))]]))]]]])))))))))])]))])])])))))))]])]))]]]]]])]]]]])])))])))]]]]])])]))])]]))]])])]]]]]]])]]]))))])))]]]]]))))))]])]]]])])]])))]))]]]))]])))])]]]])]]])])))))))]])]])])])]]]]]]]]))])]]])]))]))]]]]))])]]]])]))])]]]]))]]]))])]]]]])]]))])]]]]))))]]]])]]]))])]]))]))])]]]]]]])))))]])]))])]])))]])])])))])]])]])]]])])]))])]))]]))]]])]))))]])]]])])]]))])))))]])]]))]]])]))])]))))]])]))))])))]))])))]))]]]]]]]]]])))]])]]])))]]))]]))))])]]]]]]])))))])]]]])))])))]]])])]]]])]])]]))]]]]])))]]]]]])])])])))])])]]))]])]]])]))))])]))]))]))])])]]]))]))]])])))]]])])]]]]))]))))]))]))))])))])])])]]]))])]))])]))])))])]])))])]]]))))]]))]]]]))]))]]))]])])]]]))))])))]])]]])])))])]])]))]]]]))]])])]))]))))))])]]]])])))]))))))))))))))])]]))]])])]]))]]]]])])]]]]))])]))))]])))))]])]]))]]))]))]))))])])))]))]))))]]))))))])))))]]])]))]])]])])]))])]]))])]]]])])))]]])]]]]))))]]))]])])))))))])]])]]]))]))))]])]))))]]])))))]]]])]]])]]))))]])))]]]]]))))]))])]))]))]]))))]]))))])]]])]))])]]))]))])])])])]])])))]]]]]])))))))]])))]])])]))]))))]])]]])))]]]]]])))])]]])])]]]))]]]])])])])]]]]])]])]]]]]))]])])))])]))])]]))]))])]))])])]]])))]]))]])]]]]]]])]])]]]]]])]])]]])]])]]))])])])]))])]]]]])])])])]]))]]]))])]]])]]]]))))]]))))])])])])])))))]]))]]]]]]])]])]]]]]]])]))))))))]])])])]])]]])]]])))])])]]])]))))]])))]]]]])))])]]]])))])]])]]]))]]])])))])])]]))))]))])]))))]]]))]))))]]]]]))]))]]]))]])]]]]])))])])])])]]))]])])])]]]]]])]]))]))])]]]]))))])]]))]))]))))]])]]]))]]]))]])]])]))))]]]]]]]])])]]])]]])]))])))))))])])))]))]]]])]))]))))]))]])])])]))])]])]]])]))]]])]))]])])))))]]))])]])]))]))]]]])))])))]]]]]]))]]])])])])))))))]))]))]]])]))]]])))])]]])))]])]))))]))])])]])]]])]])]])]))])]])])])])]]])))]])))]]))]])])]]])])])])])])]]]]]))])))]]])]))))))])])]))]]))]))))]]])])]]))]])))]))]]]))))]))])])]]))])]))]])])))]]]])))]))]]]]))])])))))))]]]])]))]]]])]]]]])))]))])])]))))]])]]]]))))]]]])))])]])))]]))]]])]]]]))])])]])])]]])])))]))]))]))])])]]]))]]]]))]]))])]))]]]]]])]]])))])))))]]])]])])))]))])])])]]))]]))))])])]])]]))]))]]))]])])]]))]]]])]]])])))])])))]])]])))]])]])))]])]])])])])]]))]]])]])]))])]))])]]))]]])]))))]]]])))]]]))))]))]])])]))))))]]])])])])))]])]]]])]]))])))]]))]])]]]])))]]))]]))]]]))]]))]]]))))]]]]])]))]]])]]]]))]]]]]))))]]])])])))))])]]))])]]]]])]]]))]]))]))])))))])])]]]])]])])]))]))]))]))))))]])])]])]]]]))))]]])]]])]])])]]))]]]]]))]]))]]]]]]])]))])))])]]))]))]]]]]])))))))]]]]]])])]))]))))]))]])))]))]]))))])]]])]])))]]]]]]]]]))))])]])]])))))))))]]]]))])]]])))]]]])])))]]]])))]))])]]]]])))]]])]))))]]]))]])])]]]])))]]]]]]])]]))]])))]))]]]])]])]])])))]]]))])])])))]]])]]]]]))))]]))))]]]]]))]]))]]]]))))]]])]])]])))))])]]]]]]]])])))]]]]))]))]])))]]])])]])]))])]))))])]])))])])))])]))]]]])]]]))])])])]])))]]))))))])])])])]]]])])]))))])])])]]])]])])])]]))))])]))]]]])])])])])]))])])])])]]]])]]))])))]])])]]]]])))])]]])]))]])]]))))])]]])]]]])))]])))])])]])]])])]]))))))]]))))]]])]])])])))]))))]]))))))])])))])]]])))])))])]))]]])))]))]]]]]])]]])))])]]]]])))]]))]))))]]]]))))]))))])]))]]))])])))))]))]])]])]))]]]))))))))]))])]))])))])))))])))]]))])]]])]])]]]]])))]]))))])))])])]))])]]]]]])))]]]])]])]]])]))))])])]]]))]]])])]))]))]))])])]))]))]])])]])]]]]])]]]]]])))]]))]]])]])]]))]))]))))]])]]])))))))]))]]])]]])]))])]]])))]]])]]]))]]])]]]])]])]])]]]))]]]))]]]])]]]])]]]))]))))])))])]])])))])]]])])]]])])))]])])))]]))]))]])]]]]])))))]])]])]]])))]]]))]]))]])]]]]]])]])])])])]]])]))]]])]]]])]]))]])])])]])]]]))))]]])]]]])]])))]]])])))]]]])]]]))]]])]))]])])))))]])))])))])]]))])]]]])]]))]])]]])])))))]]))]]))))))))]))]])]])]])))]]]))))]])])))])]]]]]]))))])]))]])]]))]]]]]))]]]))]]]))))]]))))])]]]))))])]]))]))])])]]]))]]])])))))])))]]])])])])]]]]))])))]))))]])))))]]]])]))]])]]])))]])))))]]]]]])))])])]])]])]]])])])])])))]))]]]])]]])])]))))])])]]]]]])]])]))]]]))])]])]))])))))]]]]))]]]])])]])]]))]]]))]])])]))]]))]]]))])])])]))))])))]]]])]]])])))))])]])]))]]]]]]])))))]))))]])))]])]]]])))))]])]]])])]]]]]))]])))]])])])]]])]))]])]])))])]))])]]]))]))]))]]])))))]]])])]]]])])])])])))])))))])]])])]])))])))]))])])])]])))])]])])])))]])))]]])])])))]])]])]]]]]]))))])]]]))])]])]]]]])))))))]]])]]]]]]]))))])))])])]]))])]])]]]])]])))]]])])])]])))]))])))))]]]]))]])]])])]))]]]])]])]))]])])])])])]]])))]]]])]]])]]]]])))))]]]]]]))]])))])])]]]]))])]]]))]))]]]]])])))]]]]]]))]]]]])])))]]]])]]))]))))]]])]])))]])]))])])])])])]]))]]])]))]]]])])]))))))])]))]])]]))))])]]])]]]]))))))])))))]))))))))))))))]])])])]])))]])])]])]]]]])])])])]]))])))))])])]]]]]))]]]))]]])))]])])])])]])))]]]])]]]]])])))])))]]]]]]]]]]))))])])]]]]]])]])]]]]))]))])]])]]))])))]])))))]]]))])]])])])))])]]])))]])))))])])])])]))]])))])))])]]])])])]]))])])))]]])))])]))])])))])]))]]])))])]]]))))]]]]])]]]))))]))]])])])])]])]]]])])]]])]))))]]))]]))))]]))]]]))))))]])])])]))])))))]]]]]])]])]))))))])])]))]]]]]]))])]]))])]))]))))])]))]]])))))])))]]]))))))]]]]))))]])])]))])]]))]]]]]]]))]])]])))]]))))])])]])]))]])))])))))]]]]]])])))))))]])))))]])])]]))))]))]]]]]))]]])))]))]]]]))]]))]]])]]])))))]))))])])))]])]]])])]))))]))]]]]))))]])]])]]]))))])])]]))])]]))])]]))]])]))))]]]]])))])])]]])))]))]]))])]]))]))])]))))])]))]))])])]]))))])])]]))]]])])])]))))])]])]])]]]))]])]])])))]]]]]]]))]]]]]]))]]]])]]]))]])]]]]]]))]]))]]]])])))]]]]]]]])])])]]))]))])))])]])])])]))))))])]]]))]])])]])))))])))]])]]])])]]))]))]])]]])))]))))]]))]])])])))])]]]]]))]]])))]])))])]))])])]])))))])]])]])]])])]])))]))]))]])])))]])])]]]]]))]]))])]))]])]])]]))]])]])])))]))])])])))]]]]]]])))))])])))])))]))))]]])])))])]])]]]]))])]]])]]]]])]))))]]]]])))]]))))]]))])]])]])]]))]))))))]]])]]]))])))))))))))]))]))]]))))]])]]])]]))]]))))]))])])))]]))))]]]]]]]])])]]))])))]))]))))]]]]])]])])]]]])]]]]]])]]))]])]]])))))])]]]))])])]]])))])])]]])))))])]]]]])]]])]))]])))]))])]])))]))]))]))])]]]])]]]))])]]]))]]]]]])]))]))]]))])]))]))]]])]]])]))])]]]]]))]]))]]]))]]]]))]))))]]]])))]))]]]))])))]]]]]]])]))))]))]]))]])))))]))]]))])])]]]))]]))]])])]))]])))))))]))]]])]]]))]))]))))))]))))))]])))]))]])))])])])])]))]]))]]))])])))))]]))))))))])]]]])))]])))]]])]))))]]]])]]]]])]]])])]]]))))]))]])]])]]])))))]))))])])]])))]])])))])]]]]])])])]])]))]))]))))))]]])]])]])]]))]]])))))))))]]])))])]]]))])))])]]])])])))))]]))]))]]])])))]))))]]]]]])))])]]))])))]))]))]]]]])])]))))]])))]]]]]))))))))]]]])]]]))))])]))]]))])]]))))))])))))]])]]))]]))])])))))])])))])]]]))])))))])))])]])]]]])])]]))]])])))]]])))])]]])])])))])])))]]))])]]]]))])]]]]])])]]]]))))]]))]])])))]])]]]])))))])))]])))]]]))])))]))))))]]]]])))])])]))])])))]])]]]]))]]]]]))]]])]))]]]])))]]]]])]]])))]]])))]]]))))]))]]]))]))))))]]]])]))])))))]]))]])])]))]]])))))]]))])]]]))]]]]))]])]))))]))]))])))))]))]]]]]]))]]]))]))))]]]]])]]])]])))))]))]))]))])]]))))])))]))]))))])])]]))]))]])])])])))]]))])]))])])])))))]))])])]))))))]])]))))))]]]]]])))])]]))))]))])]]]))]])])]))])))]]]])))]]]]))]]]]])))]])]))])))))]])]])))]]))]))]))]])))))]]])])))))]]]))]]])])]]]])])])]]]]))])]]]]])))])))))))))])]])]]])))])]]))]])])))]])])])]])]]]])]]])]))))]))]]]]]))]]])]]])))]]))])))))]))])]]])))]])]]]])]]])))))))))]))))))])]])])]]]]]]])]]]]))))]))])))])])]))])]))])))))])))))))])]))])]))]]]))]]])]))])]]]]])]]])]]))])]))]]]]]))]])])))])]))))))]))]]]))])))]]]]))))])))]]]))])])]]])]]]]))]]])]])])]))))])))))))]]))])])))))])]])))))))]))))]]]))])]])])]))])])))]]))])]]]])]]]]]))))])]]))]]])]]])]])])]])))))))])]]))))]]]])))])]])]])])])]]]]])]]]))))])]))])))))))])])]])]])]]))]]]]))))])]]])]]]))))))]))]]))]]])])])])]]])])))]))]])])])]])]])]))])]]]))))])])]]]])]]])]))]])))]]))))]))]]))]]]))))))))]]])]])]])))]])]]]]]))])])]])]]]])])]))]])))))]))])])]))]]])]]))]])]]))])])])))]]]])]]]])])]]]])]]]]]]]]))))])]]]))]))])]]))))])]])])))]]]])))]]))]])])))])])]])])])))]]]]))))]])))]]]])]))]]])]]))]))]]]]])]]))]])]))]])]))])]]])])]))]))])]])]]]))]]])])))))])]])]))]]]]]]))])]])]]]]]]])]))]])))])))]])]]))]]))])]]))]]])]]])])]))]))]))])]]]])))])))])]])])))))]]]])))])))]))))])))]]))])]]]))])]]]]]])])]])]])))))]])]]]]])]])]])]]]])]]]]])))])]]]])])))]))]))]))))])]]]])])))]])]]]))))])])]]]]]]]]]]]]))]))))])]]])])))]]]]]))]])])])]]))]]]))])]))])])]])]))]))]]))))]]))]])]])]))))]))])]])))])])))))]))))]))])])])]]]]])]])]])))))])]])]])))])]])])]))))])]]))]]]))])]]]])))]]]))]]))]))])]])]])])]]]])]))])])]))]])]])])])]]]]]]])]]])])]))]))))])]]))))]))]]])]))]]]])))])]))]]]))))])]]]])]))]))))))))]))])]])))])))])]])])))])]]])])))))])]))]]))))]])]]]]))))])])]])])])))])]]])])))))))]]))))])]])]))))))]]]))])]]]]]]))])])]))]))]])])]])]))]))]])]))))]])]))))])]])]]]))]]))]])])]))))]]))])]]))])))]]])))]))])]]])))]))])]]]]))]]]]))]])])])]))]))))]]]])))))]))]]])])]))])])))))])]]))])))])]]])))]]]]]])]]])])])])])])]))))))]]]]]))]]))]]]])]))]))))]])])])]])])])]]])))])]]])]])))))]])])])]]]))])]])]))])]]))))])]]))))]))]]])))])))))))])]))])])])]))]])))])]])]))])]]])))]]]]])])]))]))]))))]])]))]))])])]]]]))]]))])]))]))]))))])]))]]]))))]]]]]]]]]]]))]]]])])]]]])))]]]))]])))))])]]])])]]])))]]]]]]])))]]])))])]]]))]]]))]))]))]]]))))])))))]))]))]))))]]]))]))]]))])))))))])))])]]]]]]])]]])))))]))]))))))]))]]]])])))))])]]])))]]])]])])))])]])])]])]]])]]]]])]]]]])))]))))])]]]))]))]]])]]])])]]))])))]]])))))]]]])])))])]])]]]))]]]))]]])])))])))))]])])])]])])])]]]])]])))])])))]])))]))]]]]])]]))))))])])]))]])])]]]]]])))]]]]))]]]]))]]))]]))])))]))]]]))]])))])]))))))))))])))]))])]])])]])]))))]])])]]])]]))])])]]]))]])])))))))))])))))))]]]])]])]])])]])))]]]))])]))]])]]]]])))]])]))])]]]))]]))))]])))]))))])]])))]]]]]]])))]]))))]]]])]])]))])))])])))))]]]])])))]))))]]]))]]]]]])])))]))])]))])))]]])]))])))]))]]]])])]))])))]]]]])))])]])]]])))]]]])]]]])]])]))))]])])]))]))])]))))])]])]]]]]]))]]])]])]])))]]]]]))]))]))])))))]])])))))]]]]))))))])))))]]]])))))))))]]]]]])])]))]])))])])))))]))])]])]]))])))])]]])))]))])]))]]))))))]]]]))])))]]])])]]))])]]))]))])]]]]]])])])]]]]])])])])))]]]]))]))])))))]]]])]))])])]]]))]))]]))))]]]))))))])])]]]])])])]]]]))])]))]]])]]]))))])]))))]))))])])))]))])]]))]]]]]])])])]]))])]])]]]]]])]]]))))]])])))]))]])]])))]]))]]])])]]]]))]))]]))]))]])]]))]])))))))))]]))])))]]])))))])]])]]))])])]])))))]]]]]]])))])]))])]))]]])))]]))))]]))]]])])))]]]))]]))])])])))])])))])]]]]])])))])]]]])])))]])])))]))))]]]]))]]]]]])))]]]]]]]]]))])]])))]))]])]))])]]])])]))])]]])]]]]))]]))))])))]]])])])]])])))]])])]))]]]])])))])])]]]])))]])]))]]]])])]]]]]])]))))]]]]))))]])]))]]])))))))))))])))]]]]]])])]]]]])))]]]]]])])]))])]))]]])])])]]]]]))))))])))]))))]]]]])))))]]]]]])]]])))])]])))])]]]]]))])])])])]])))]]))))]))])))]))]])))])))]])]]]))))])]))])]])]]])])))))]])])))]]]))])])))])]])]]]]]]]]]))))]))])])]]))]]]]]])])])]]))]]))]))))])]))])))]])]]))]]]))))))]))])])])])]]]]]]))]))))))))))]])]))])))]))))]))]))))])])]]]))]]]]])])]))])])]))))))]))]])])))])]))]]]))])]])))])])))]]))))])))])]])])]))]]]]])))]])))))]))]])]])))))]]])))]])]))]])))])])))]]))])])))]]))]])]]))]))])]))]]]))]])])))]]))])]])])])]))])]]))]]]])))]]))]]])])))])]]]]]])))))]]])]])]))))]))))]]]]])]])]])]]]))]]]])])))))]))))]))))]])))))])))])])])]))])))]])))]]))]]))]])]]]]]]]]]))]])]]))]]]]])]]]])]]]])]])])))])]]))])]]))]))]))))]])))]]]]]))])]])]))]]]))])]))])]]]]))]]])]])]))])])])]))]]])))]]]))]]]))))])]))])]])))])]]]))]])))))]]])))]]]]]]])])))]]]]]])])))))]))))))))))]]])]))]]]])]))))]]])]))))]]])]]])])]]))))])]])]))])))))]]))])]]]])])]])])))]))])]))))))]))))]))]])])])])))))])]]]])]))])))]])])))])]]]]])]))])))]]]]])))])])]])]])]])))])])]]]]]]]))]])]]]]))])])]]])]]))])]))])]))]]))]])]])])])))))]))])]])))]])]])]))])]]]]]]]])])))))]])))]]])])]))])))]))])]]]]]))])))))]))]))]]))])))]]])))))]))]])]]]]))])])]]))]))]]))]])))]]]]))])])])]])))])]])]]))])))]]])]])])]]])))])))))])))))])))))))]))))])])])]])])]]))]))]]]))])]))))))])]))]))]))))]))]]])))])]))]]]))]]])]]]))]])))))))]])])]])))))]])))]))])])]))])])])]]))]))))])]]]]))])))))))])]]]]])]]))]]]]])]))]]]])])]))]))))]])]]])]])]]])))]])))]]))]])]))]]]])))]))])))])])])])))])))]])))]]]]))]])]]])]]))))))]]))])])])))))]]]]]]))]])]])]]])))])]]]]]])]))]]]]))])]])]]]])]))))]))]]]])]]])]]))])]]])])))]])))]])])]]))])])])))))])]]]))])]))])]])))])]]])])))])]])]]]])])]]]))))])]]))]]])]]]]])))]]]]))]))))])]))))]]])])]])]])])]])]]]))]])]])])])))])))]])]])]]]))]]]])]))]))]]))]))))]])])]]]))]])]]])))))])]]]]]]]))]]))]))]]]))])))))]]]))]))]])))))]])]]]]))])]]))]])])]))]])))]))))]]]))))))]]))]])])]]]))]])))))]))))]]])]))])])))]]])]))))]))]]]])))]]]))]]))])]])))))]]]))))])))])]]])]))]]))])]]])]])]))])))]))]])])]]))]]])]))])))]]]]))))])])))]]]]))]])])))]])]])])])]]))]])))])))])))))])]]))])]))]))]))]]]))]]))]])]]])))]])]]))])]))]])]]))]))]]]]]]))])]]))])]))]))]]]])]))])])])]])]]]))))]))]]))]])]])]])]])]]])]])))]]))]))))])))])))))]]])]]])]]])]]]])]]])))])))]]])]))))]]))]]]))])]]]))]]]])))]]))]]])]])]])]])))]]])]])])))]]]]))]))))))]]]]))))]]])])]]]]]])))]]))])]])]])))])])])]]]))]]))]]])]]])]]))))))]])]))]))]])])))))]))]])]]))]]))]])]])])]]]))]))))])]]]])])])))]]])))]))))])))])))]))])))])])]]]])]]))))]])]]]])]])))]))])))])])))))))])])])]))))])]]]]]]]))]])))]))))]]]])]]]))]))])]]))])]]]))))]]]])])])]))])))]]])]))])]]]))]))]))]))]]]))))])])))])])]]]))))))])]]]))])]]))])])])))]))))]]])]]])]]]])]]])]])))])]]])]]]]])]))]])]])]])]))]))]])]]]]))])]]]])])]]))]]])])))])]]])]]]]])]]])])]))]])]]))])]))]]])]])]])))]))])]])))]]))]])]]])]]]]])])))]]]])]))])))]]])]]])]]])]])]])]))))])]))]])]]))]])))))))))))])]])))]])]]]]]))])))))))])]))]]]))]]))]]])])]])]))))))))]))]])])]]))]])))]])))]])]))]]))])]]]))]]]]])])])]]])]]])]])]])]]))]]])]]]]]])])])]])]])]))])]])])))))])]))]))))]]))])))))))])]]]])]])])))])])]]]))))]))))])))])]))]]))]]])]])]]]]]])]]]))]]]]))]])])))]]]))]]])))]))]))]))))])]]])])]]])]]]]]))]))]])]])))]])]])]]]]]))]]))])))]]))]))]))])))])])))])]]]))])]]]])])])]))]])]))])]))]))]])))))))]])]]))))])))))])])))))]]])]))]]]]])])])]])]))))))]))))]]])])]]]))]))))]])])]]))])))]])])])]])))])])))))]))]))]]]]]]))]])]])))]))])))))]])]))))]]))])]))]]])])])]])]))))))))]))]]]]])))]]]]])])]]])))])]]))))]))])]))))])])])]]]))]))]])))))))]))])])]))]))])])])])))]])])))]))]]]]]]])]])]]])]))]])))]])]]))]]])]]])]]]]]]))])))))])]])]))])))])]]]])]))])))])]])]]]])]]))]))])]))]]))))]])))]])))]]])])]])))]))]])])]]]])]))]))]]]])))]]]]])])]]]))]])]])])]]))]]))]))])]))]]])]]]))]]])]]]]])])])]]])))]]))]]))])))]])]]]))))]])])]))])))])))))]))]]]]]]])))]]]]]])]]]]]))))]]]]])]]))])]]))]]]))]]]])])]]]]]]]]]])]])))])))])]))]])])))]]])]]])]))))])]]))))]]]]]))]))]]))]]]])))]]]])))]]]]))))])]))]]])])]]))))))))]])))]]]]]))])))]]]]])]]]]])))])]]]]]])]]]]]))]])]])]])))])]])]]))]])])))]])]]))]]])]))])))]]])]]])]])]))]))]]])]])]]])]]))]]]]])]]]]])])])]]]])))])]]])])]]])])])])]]]])]))]]])]]]]]]])]])]]])))))]]))]))]))]])))]])))])))]]]])]]))])]])]])])]]])]]))]))]]))]]]])]))]])]]]))))]]]]])]])])]))]))]]])))]))]])))]]]))])))]))]])]))]))]]))))])])]]])]]])]])]]))]]]]])))))])])])])]))]]])])])])]]))])]]))])]])])]])))]])]])]])]]]))]))))])))]]]))]]])]]])))])]))]]]]]]]))])]]])))]]]))))]])])]]]))))))])]])))])]])))])))]]]]]]))))]])])])))])]))])))]))))]]])])]]]])])]]))]]])))]])]))]])])]))]])]]))))))))]]])]]))])]])))]))])))])]])))))]])]))])]))]]))])])]]])))])))))]]]]))]]])))]])]]])))))))))))]]]))))]])))])))]))))]]])]]]]]]]]])])]))]))]]]]]]])])))])])]]))]))]]])))]]])))])))]])))])])]))]]])])]]))]))])]]]]])]])]))))]])))])])]]]))]]]]))))])])]))]])])]]]))])])]])))]]))]])]))]]]))]]))]))))))]])]]])]]]]]]]]])]))]))]]))]))]])]))])]])]))]]]])])]]])]]]]]))])]]]])]])]))]]])])])]]]]]))]))))))))])]])]])]]])]]])]))])))])]))))))]])])]])])]])))])]))))]]])]]]]))])])]])])]])))])))])]]]]]]))]]]])))])])]))))])]]))]])]))))]]])]]))))))]]))])]]))]])))]))))]))]])))))])))))))]]])]]))])))]]]]))))]]])))]]]]))))))])]]]))])]]]))))])))])))]])]))]]]]])]]]]])])]])]]))])])]])])]]))))]))]]])]]])))]]])]))]])]]])]])))])])]))]])])]])))])))])]]])])]))]]))])))]]]]])]]]])]]))])]]]])]]]])]])]]))]]])]])))))]]))])])))))]])]))]]]])]))]))]))]))])))])])])))]]]]]]])]]]))]]])])))))])])])]]]]]]))]])))])])))]]])]]])])]))])]]]]]))))])]]]])])]]))]))])]]]]))]]))))])))])])])))]]]]]))]))]))])]])])]]])]]]])))))]]]]]))]])]]])))]))))])]])]))])]]]]))]]))]))])])]))])])]])]))]))]))))]])))])]])]))]]))))])]]])]]]]]])]]]))))))])]))]]))))])))]))))]])]]))]])))])]))])]]]))])]))]))]]]]]))])]])])]]])]]])))]]]]))])])]])))])]))))))]])]]]])]])]]]))])])]))))]]])]]))))]))))])])])])])))])])]])]]]]])]]]]))))])]]])]])])])])))]]]]))]))]))))))]]]]])))])]]])])]]]]))))])]]])]]])]])]))))))])))]])))))))))))])]))]]))]]]))])))]]]))))]]))])]))]])]])])))])))])]]]])]]]]]])))])))))))]]]]])))))]]))]))])]]])]])])))]]]]]]])])))))]]))]]]])]]])))]))))))])])]]]))))])))))]))])))]]]))]])))]]))]))]]]])))]]])]))]))]]])]]])))])]]]])]]]]]]))])))]))]])]]])])]])))))))))]]]]])])]]]]])]])]]])])))]])])))])])]]))])))]]]])]]]])])])]))]))]])]))])])]])))]))]))]]]]])))]])]])]])]]])]])]]))])))]])])))])))]]])))))]]])]])))]))]))))])))])))])]]])]]]))]]))]]])]))])))))]])]))]]]))))])]]])])]))]])])))]]))]]]])]]))))])]))]]]))])]])))]])])]]])))))))]))]])))]))]))]]]]))])]))]))])])))]]]])))]]])]]]])]])])))]]])]]))]]]]]]]])])]]))))]]])))]]])]]])])]]))))]])))]))]]))]])]]])]]))))]]]))]]]))))))]]]))))]])])]]))])))]]]])))])])))))])]]])]))]))))]))])))]]])]]]])])))]]]))))))]))))])))))])]]))]]])]]]])]))]]])))]]]))])))))]]])])]))))]]])]))]])]))]]]]]])]))]))))))))))))])]])]]]])))))]]])]))))]]]]]])]]]]]))]]]))]])])))]]))])])])))))]]]))]]])]]]]]]]])))]]]]]]]]]))])])]]])]]]]])))])))])]])]))))]))]]])]))))))]])]])))))]))])]]]]]])))]))]))))])))]])]])])))])))))]))]))))])])))])]]]]))])))))))]))]]]])))]]])])])]]))))))]])])))])))])))]]]])]]])])]))]])]])]])]))])]]))]))]])))]]])])])))]]]]]]]])]])]]))])))])]))]]))])])]])))]]])]))]]]))))])])))]]]]])))])]]]]]])]]]]]]])]])))]]))))]]))])])])]]]])])]))]))]))))]]]))]])])]))))))])]]]]])])]])]])]]]))])))]))])])))]]])]))]))]])]]]]]])])))]))])]]]))]]])]]]]]]))]))]]]]]])]]])])])])]])]))])]))]]])])])])]])])])]))))]]]))])))])]])]]]])]])])])])]]]))))]]]]]])))]])])])])])))]]))])]]))]]]]))))]]))]]))])))]))))]]]))])])]])]])])))))]]]]]]]]]]]]])])]]]])]))]]]))]]))]]]))))])])]]])))]])]]]))])]]])))])]]]])])]]]])])]]]]]]]))])]]])])]]])]))))]])]]]]]])]])))]))]])]]])))]]]]])])))]))]])]]]])]]]]))]])])]]]])]])))]]])]])]]]])])]))))])]]])])]))))]]]]))))]))]]]]])])]])))]]])]])]]]))))])]))]])]]))))])])])]])])]))]]))]]]))]]]))))))])]])))))]))]]])]]]))]])])))])]]])))]]])]]]])))))))))))])])]]]])]))]])]]]]]]))]])]]]))])]])))]])])])))]))]]])])]]])])]])))])))]]])))]])])])))])))))))]]]])]]]])])))])])]))])])])]))))])])])])]]]))]])))))])]]))])])])))])]))])])]])))]]]])])])])]]]])]]))))])]])]]])))))])]))])]]]))))]])]))])])]]])))])]])])])])]]])))]]])])])]]])]]))]])))]])))))))))]]])]]]]]]]])])]))])))))]]])))]]]]])])]]])])))]])])]])]])))]]])]))]]]])))]]]]]))))])]])]]])]))))]]])]))]))]])])]]])]]))])))]]]])]]])))])]]))])])))]])]]])])])]]]))))]))])]])]))))]]]])]])))]))]]])))))))])])))])))))]]]]]])]]]]])])))]]]))]))))])))))]]]])]]))])]]]]])])])))))]))]]])]]])]]])]))]]))]))))]))))]]]])])])]]])])]])))))]]))])]]])])]]]])))))))])))))))]]))]]])]]])]]]]]]])))]])]]]]))])))]]]]])))]]])]]))])]])])]]]]]))))]]]))]]])]]])))]])]]])]]))))))])))]))])]]])])]))])]))]))))]])]]))])))))))]))])]))]])]))])]]]]])]]])))])])])]]]]])])]]))])])]]]))))])))])))]])]))]]]]]))]]))])))]])))])]))]))))]))])])]]]]]))))])]))))])]])]]))])))]])]])]]]))])))]])]]])])]])]]])]))])])])]])]))]))])]))]]])))))])]]]]])))))]]))))))]]])]]]])))])]]]]])))))]])]]))))))])))])]]]]))])])])])))])])))))])]]])))]])]]])))]])])))))]]))))])])))]))]))])])]))))]))))])))))))))))])]])]]]]]])]])])]))]])])]]]])]])]])])]))]]))])))]))))])]))])]]])))])]]])]])]]]])]]])]))])]))]))]))]]])))]]]]]))])))]]])]]])])))))))]])])]]]))]])]]]))))]))))]))))))]])]]]]]])])])]]]]))]]])))))]]]]])))])])])])]]))))])]])))))]])])))]])]))])]))]]]])]]]]]]]])])])]]))))]]]]))]])]))])])])]]]]]])))])))])])]]]])))]))]]])]])))]]]]]))))))])]]))])]]))))))]])]])]])]]])))))])]))]))])]]])]]])]]])]])))]])]])))]))])])])]]]]]]]]])])))))]))])])])]]]))))]]]])))]])]))]])]])]])]])])]]]])]]]]]])])]])))]))]])]]]))]))]])]))]]]])]])]])]))]))]]]])])]))))])])))]])]))]]]]))]))]))]]]]]])]]))))]])))])))))]]]))])]))])]])]]))])]))]]])))]]))))))]]])])])]]))))]])))))]])])]]]]])]])]])])]]))]])])])])])))))]]]])))))]]]]]]]]]])]]])]])]]))]))))))]]))))]]]]]))]))))]])))]])]])]))))))]]])]])))))))))]])]])]]]])))])]))))])])))])]))))]]]]])))))))]]))]])]]]])]))))]]]])]]))]]]])])])))]]])]]))]))]]))))))]])])]]]]]]]])]])))))))]))))]])]))])])])])])]))))))]])]]]))]]]]]]]))])]])]))]]))))]])])])])]))]])])]]]))])]]])))))]))))]))]]]]))])]]))])]]]))])]]]])]]])]]]]]])))])]))]])]))]]]])))]])]))]))]))])])])]))])])]]])]]))))])))]))]]]])])]])))]))]])])]])]))]))]])))]]]))])))]]]))]))]))]])])]]))]])])]]]]))])]))]])])]))]]]])])]]))]))))]])]))])))]]]))]]))))])))]]]]])))))]])]]))))]))]))])]]])]])]]]])))]]]])])]]])])]]]]])])))]]]])])])]])])])])]])]])]]])]]]))]]])])])]])]])))]]))]]))]))])]))]])))]]])]]]]))])]]]))))]])])))]))]]]]])]]])])])])]]))])]]]))])]]]])]]]])]))]]]]]])]]]))])]]]]))])]])))]]))]]]))]))]]])))]]]])))))]))]]]])])])]])]])])))]])])))]]))))])))])))]]))))]])])]])]])))))))))])])]]])))]])])))])]))))]]]))]])])]]])])))])]]]))))))))])])]))]))]]])]))]]]))))])]))]]))])))))]]))))]]]]])]))]]]]))))]])]]]])]])])))))))))])])))]))])]))])])])])])]))]]])]])]))]]]]]))]]]]]]]]]]])))]]]])]])])))]))]]]]])])])))])))]))]]]]]]])]]))])]]]))]])))]]]])))]))))])))]))]])])]]))])]))])]])])))])))]))]]))]]))]])])]]]])]]])]))]))]]]]]))))))))]]]))]))))))]])])]])]))]])))]])))]))))]))]]))]])])]))))]]))]))]])]])])))]]]])))]]))])]))])])])))]))))]))])]))))])]))]))))))))))]]))]])))]])]]))]]])])]])]]]])))]))])))]])])]))])]]])])]])))]))))))])])))))])]]))]])])])])]]))))]]]))]))]])]]))]])])]]))]]]]]]]]]))])))]))])))]]))]]])))])])]))))))]])]])]))))]])]))])])]]))))]]])]]]]]))]])]]]))]])]))]])))))))])])])]])])])])]])])]]]]))])]]]])]])]])])]])]]))])))])]])]]]]]]]]))))]]))])]))]])]))]])]]]))))]]]]])))))])])]]]))])])]])]])]])))])])))])]])]])))]]]]]))])]))]]))))))]]])])])])]]]]))]])]])])]])))]]))))]))])])]]))]))))])]))))))])])])]]))]]))))))]])])))))]]]])))])]))))])])))])))))]])))]])]]]])]]]))])]]]]))])]))]]]])])]]))))])])))]])]])]]]]]])]]]]]])))]]]]))]]])]])]]])]))])])])])])]]])]])]])]]))]]]]]])]])]]]]))]])])]]]]]))))])]]]])])]))]]]))))]]]]]))])])]])]])]]]]]])]]]]))))]))]]])])]]]]]))]])))))]))]))))))))]))))]])]]))])]]))])]]])]]]])]]])))])]))]]])))))]])]]]]])]]])])]])]))]))]]]]]]]))))])]])))]]])]]))]])]]))]))]))]))]])))])])]]]]]))])])]]])]]]))]]])]]))]]])]]]]]]])])]])])])]))]))))]])]]])]])))))]]))]]]]]))])])]))))]])]]]]))]))))])]]])])))))]])])))]]))]))]]]]]]]]))])])])]]]])))]])]]]])])))))]])]]]])]]))]])))])])])]))]]])]))]]]])])))])]))))]])])]])]])))]))]]]]]])))]))]]])))])]])])])]]])))))]]]]])))))])])])])]]]))])))])))]]))]))))])]]])]))))])]])))))])]]]]])]])))])]]])))])]])]]]]))))])]])]]))]))]]]])]]])))]]]])])))])])])])]]]]]))))])]]))))])))]]))])]]))]])))]))]])]))))]]]])))])]]]]])))]))]]])])])]))])]]))])])]])])])]]])]])])]])]]))]]]]]])))]]]])])))]])]]]]]])]]]])])]))))))]))]))])))])))])))])])]])]])]]]]])))])]]))])])]]]])]]))))]]]])]])]))]])))]])]))))])))])))])]]))]]]]]])]]]])]]]])]]]))]))))]])))]])])]])]])))))])))]))]])]]]]]])])))))))))]))))))))))]))])]]]]))])])])]])]])])])))]]))])))]]])]]]]]])])])))]]]]])))]]]]])]])]]))]]))]))]))]]))]]])]])))]]])]]]])])))]]))))]]))]]))])]]]])))]]))]]]])))])]])]))))]]])))]])))])]))))]]])]))))]])))))]])]]))]))))])))]]]]]]))]]]))])])]])]]]])]]]])))]])]]))))))))])))])]))])))])])]])]])]]])])]]])]]))))))]])]))))]]]])]))]])))]]]])]])))]])]]))]]]])))]]]])]])]]]]))]))]]]]]])))]]]))]]))])))))]]]])])]])]))])])]]]))]])]])])]]]])))))))])])))]])))])]))]]])])]]]]]])]))])]]]))]])]))])]]]]]))]))]]))]]))])])))])]]]])))])))]]]])])])))))))])))]))])]])))))]))]))]))])])])]]]])]))]]]]]))])]]]]])]))]]]])))))]]]])])]))]]))))])]])))))])))]))]]])))))))])])))))]])]]]]]]]))]])]))])]]])]]]))))]))]]]]]]))]]))]])]))]])])]))])]))))]]))])))))])])]]))])])]]])])])))])))))]]]]])]])))]]])))]]]]])))]]]]]])]])))])])))])]))))])])]])))])]])))]])))]]])]])))]]]])])])])])]]])]])])]))]))))]]])])])))])])))))])))])))])))]))]]])]]]]]]))])]])]]]]))]))]])])])]])])])])))]))))])]]]))]])]]])]]]]))))))))]]])]])))))])]]]]])]]))))])))]))])))]]))))])])]]])))))]]])]]]]])]]])])]))]]))))))]]]]))])]))))])]])])]]))])]))])]]))]])))]])]]]]])]))]]])]]]]))]))]])))]])]))])])]))))]]])]])]]])]]))]])])]]])]]])))]])))]])])])]]]]]])]])))]])]])))))])]))]))]]]]])]]]))]))))]]])])])]]]]])]))]])]]]]])))])]]])]])])))]]))))]))))))]])]])]))))]))))))]))]))]]])))]])))])])]])])]))))))))))]])))))))]]])]]]])])]])]]]]]))])]))]])])))]))])))))]]]]]))]]])]]]]))]]))]))))])))))))]]]])]]])]]])]]]])]])))])))))]]))])])]])))))]]])]))])]])]]])])]]))])])])))]))]]))))]]]))]]]))))]]))))])])]))]))))))]))]])]]]]]]])]]))]))]))])]])])))]]]])])]]])))])))))]]))]]]])]))]]))]]]]])]))]]])))])]])]])]))])]])])])]]]]))))))]])]]])]]]]]])]]]])]]]]]])]])])]]]])))]]]])))])]])]))))]]]])])))]]]))]))))]))])]))]])])]))]]]))])]))]]]]]))]]]])]]))]]))])))]]])]))]])])))]])]]]]]]))])]]]]]])])])]])])))])))))]])])])))])))]])))]))]]])]]]]])])]]]]]))))]]]])))))])))])]])])))])]]])))))]]]]]))))))]))])))]))])]]]])]))]]))])]))))))]))]))))]]]]]]])))]]]])]))]))]]])))]]]])]))))]])]))]))]]]])]]]])])))]]))]]]))]]))]]])))])]))])]])])))]))]]]))))]])])]]]]]]])]])])]])]]))))]))])])]))]]))))))))))))]))]]))]])))]]))])))]]])]]])]]]))]]]]])]]))))]]]))))]]])]))])]])))]])))]))]]]))]]]]]]]])])))]]]]]]])])]))]])])]))]))))])])]))))])))]])]]]])])]))))])]]]]]]))]]])]])])]])]])]))))]]]]))]]))])])))]]]]))])]]])])]])])]])]]]]])]])])])]])]])]))]))]]]))]])))]]])])])]]])])])))]))])]]])]]]])])))))))]))]])]]))]]]))))]]])]]))])]]])]]))]]]]]))]]]])]]]]]]])]]))])))])])]))]])]]]])])])]]]])])]]])]]]])]])]))]])])])])]])]))))]]]])))]]])]]]))]))]]]])])]]))]]])))])])])]))]]])]]])])])])))]]))]]))]]]])])]])])]]))])])]]]]]]]]])))]))]))]))]]]))]])])]]))]))))]]]])]))]])]))]]))]])]]])]]]))]]])))))]])]])])])])]))]))])))])]))])]]]]]])]])]]))])]])])))])]))]]]))))]))])])])]]])]]]])))]]))]]))]]]])])])]))])]])]]]))]])]]]])]))]]])]))])]]])])])]))]]))]))))]))]])]])])])]])]]))))]]])]])))))])]])]]]))))]]))])]]]])])]]])))]]]])))]))))])])]]])]])]]])])])]]]])]))]]]])))))]))))))]]])]]]])]]]])]]))))))])]])]])]))))))]])]])))))]]]]))))))]]))])))))]])))])]]]])])]]]))]))])])))]]))])])])))])))])))))))]])])]]]])]))))))]]]]]]])))])])])]]])]]])]]]))])]]]]])]))]]]])))]])))]))))))]))]]]])))))])))])]))]))])]]]))))))]])]]])])])])])))))])))]]]))])]])]]])]]])))])]]])))]]))))]))]))))])]))])))]])]])])]]])))])]]]]])]]]))])))]]]]])]]])]))]]])]]]]]))]]])])]]]))))])]))])])]]])]])))])]]])])))))))))]))])]]]))]))))]))]]]]))])])]]))]]]))])])]]])]]))]))])))]))])]]]]]]]]))))]]]))]]]]]))]])]]]]]]])))))))))))]])]]])]]])))]])))])))])]])]]))]]]])])]]]]]])))]))]))))))))]]]])])]]]])]])])]])]]]])))]])]]))))]))]]]]]))]]]]))]]])])))))]]))]]))]])]])])]]]]]])]))]))])]]))]))]]]))))])))))]])])])]]))]])]))]])))]])])]]))])))])))))]]))]]])]])))]]])))))])))]]])))])]]])))]]]))]))))])]])))]))))]))]))))]])])]]]])])]]]]]))))])])]]])])]]))))))])]]])]))]])))])]]])]]]])]]])]))]])]]])))]])]])))])]]))]))]]]]))]]]]))))]]])]])]))))]]])))]]]]])])))])])])]))]]])))))))])]]]]])]])]))))]]))])])]])))])))]))]]))))]])]]]]])]))))]]))))]])])))])])]))]]]]]])]])])]]]])]]))]])])]])]]])]]]])))]]))])]])]]])]]]))])]])])]))]]))]]]]]]]))))))])))]]]]]]]]]]]]])])))))])))]]]])]]]])]]])]]]]])]])]]))))]])]))])])]))]]]))))]]])))]]))]]]])])))])]]]])))))]]])))))])]]])])]))]]])]])])]]])))])])))]))]))])]])])]]]]]])])])]])))])])]))]]))])])]]])]])])])))))]])]]])])))])))]])])]]]]]]]]])]])))]]))]])]]])))]))))))))]))))))])])]]])]])))]))))]))))]]])])])]]))]))))])))])]]])])]]))]]])]]))))]))]]))))])])])]))]))]))]))]]]]]])])))])]]])]]])]))))]]]]])))])])))))]))])))])])]))]])])]])))]]]]]]]]]]))))))])))))))]]))]))]])]]))]))]]))]]))])))]]])])))]]])))])))))]])]]])])))]))])))]))]]))))))))])]]))))])])])]]])]]))]])))])]))])])]]])]])])]]]])))]))))]])))]))))]])))]])])]]])]]))])])]]])]])])])])])])]]]])])])))))))]]))]]])])]])))))]])))]]))]])]])]]))))])))]))])]])]]]]]])))))]]]]])))]]]]])]))]]]])))])]]])])]]))])]]]])]))))])]]])))]]])]]))]]]]))]))]]))]])]]))]]])))])])))))]]]]])))])]]]]])]))]))]))]]))])))])))]))))))])]])))]])])]]]])]]]))]])))])))])])]])]]]]])]))])]]])])))])]))]]))))))]]]]]])])))])])]))))]]))])]))]])])]])]]))]]]]))]))])))]])]])])]]))]]))]])]]))]])])])))))]])])]))]])]]]]))])])))])]))])])))]]))))))]])))]]]])]])]))]])]])])]))))])]])])))])]]]]])])])])])])]]]]]))]]))]])]]])))]]))]]]))))]]))]))])]]]])))]))]]))))]]))]]])])))))]]]])])]))])]]]])])]])))])]))]])])]]]]))])])))])]))])))]]]])]])])]))))]))])]]]]]])])))]]]]]]]])]]])]]]])])])])])]]]))]])])))]]))]])]]]]]])]))])))))]]]))])])]))]))))]]])])]])))]]])])]))]]))]))]))])))]]]]]]])])))]]))])])]))))]]])]]]))))]]]))]])])])])))))]])]]])))])]]])]]))]]])])])]])))]]]]])))]]])))]]]]))]])]]))]))])]]])]))])])))])))))))))]])))]]]]]]]]])]))]])]])))])]])))))])]])]]]))])]]])]))))))))))]]]]))]]))])])])]]))]])]))]]]]])]))]])))))))]]])])))))]))))))))])])]])]))]]))]]]))]))])])))]])])))))]])])]))]]])])])))))))]])]]]))))]]))])))]])]))])]]))))]])))]])]])))])]]]]]])]))])]]))])))))))])]])]]]]]]]))]])]))]]]])]])]))])])]])])]))]))]]]))]]]])))])))]]])]]]])])))]]]]]]])]))))]))]]])])]))]])]]]]]])))))))]]])]]))])))]))))]]]))])]])]]]))])]]]))]]]]]))])))]]))]]]])))))]]))))]))])]]]])])]]]])])]]))]))))])))))))])))]]))]]]))]])]])]))])])]))))))])]]])])]))]]]]))))))]))))])]])))]]]]))])])))))])]]]))]))))]))]]])])))]]]]))))]])))]]))]))]]]]]]))])])]])))]])])]]]]))])))))])))]]))]]))])])]))])])]]]]))]]]]]]]]))]])))]))]))))]])]]])]])])])]]])))])])])))])]]]]]]]))))]]))])]])))])))]]]])))))]]]))))]]))]]))))]])]]])))]]])])])]]]]))]])])]))])])))))])))])]))]))]]])]]])]))]))))]]]]])])])])])]]))])]]])]])])]))])))))])])]])]]))]])))))))]]))))])]])))]]]))]]]]]]]))])]))]))))]))]]])]])]]])]]])]))])]]))]))]]))))]])])])))))))]]))]))]))]]])]])))]]]])))]))))]))]])))]))])]]])))])))))))]))]))))]]))])])]))]]))))))]))])]]]))])]]]]))))])])])]]))]))])))]))])))))]]]))]]))]])])))])))]])]]))]]))]]]))]))]))])]]]))))))]])]]]])))])]]]))))))]])))]])]]]]]])])]])]))])])])))))]))]])]]])]])])))]]]]])]]]]))]))]]]))])]]))))]))))]]]))]]])])])))]])))))]]))]]))])])]]])])]]]]])]]])]])])))]))])))]]]))))]]]))])))))))])]]))))]))])])]])]))]])])]])]]))]]])]])])]]]])]))]]])])))))]))))))]]]])]])))])]]]])]))])])))]))]]]]]])])])))]))]]]]]]])]])]])]]]]]]]))])]]]))))]))])]]))))]]]))])])]])))))))]])])]])]]])))]]])]]])]]))]]])))]])])])))))]]])])]))]]]))))]]]]))))])])))]]]]])))]))]]))]]]])]])))]])])]]))])]]]])]))]]]])))]])]]]]))))])])])])])))]]])]))]]))))]])]]]]]]]))])))]]))))]))))))])])]]]]]])])]]]]])]]))))]]])))]])]))))]]]]]])))]]])))]]))))]]])]])])]])))))]]))))))]])]]]))]]))))]]])]))]]))])])]))]]]]))))))])))])]]])))))]]])]]]])))))]]]])]])]])]]]))]))])]]))])])]]]))]))])]]])))))])))]]))]]))])))]])]]]]]])]))])]]])]]]))]))]])]]]])]))]]])))]]])]))))))))]))]]]]]])])]])]]]]]]]]])])]])]))]]]])]))]])]])]]))]])))))]))]])))]))]]])]]]])]])))])))]))])]])))))]]]]))))))]]]))])))))))))]))]])])])]]))]))))])]]]])]]))])]]))))]]])])))))])])]))]))]])))]]])]]))))])]]))))]])]]]]))))])])]))]))]])])]]))]))))]])])))]])))]]]]]]]]]]]]])))]))])))))))])])))))))])]))]]]]])]))))])])]]]])]]]]))]])))))])]]))))]])))]]))))]])))))]]]]]])))))]))])])))]]])]])))))]))))]))]]))])]]])])]]]])))]])))]]))])]))))))])))))]]))])])]])])])])]]])])])]))))]]])]]]]])]])]]]]]))])]])]]]))]]]]])])]])]]]]])]))]))]])])))])]))]]]]]])])])]]]])]))])])))]])])]))])))]]))]])))]))])])))]]))))]]]))))]]]]])))]]))]]]))]])]])])))])]]])]])]))))))])])]]))]]))])))]))]])]))]]]]))]]])]]])])]]]))))])))]]]]))])])))))]]))]])))])])])]))]])]))))]))]))))])]]]]])]])]))))])])])]]]])))))]]])))])]))))]])])])]])])]]))]])]]]]]))]]]])])])]))))))]]))]))]))])]]])])]]))]])]]]])]]])))]]]]))))])]))))]]]]]]]]])])]]]]))))]]])])))]]]]))]))))]))]]))]]])]))]])])])]]])]]]))]]))])))))))))])]])]]])]])]))])]]))]]]]))]]))])]])]]])]])]])]])]])]])))]]]]]]]]]]))))]])])]]]]]]]])))]]))])))]))])])])))))]]])]]))]))]])]]))]))])]]]])])])]]]]]]]])])]])]]]]]]])])]))))])])]]))])]))]])))])]]])])]))]]])])))))]]))))]]]]]))]]))))))])]]])])])))))]]))]])])]]])))]]])]]]]]])]))])]])))))))]]])])))])]))]]])])]]]])]))])]))))])]])]]))]))]]])])]]])])]]]]))]))))))]])]]]))])])]]))]]])]))]]]])]))])))])])]])]))))]])]))))))]]])]))]]]]]]))]))]]))]]))))))])]))])]))]])])))]]]])))))))])]])))])]))]))])]]])))])]))])]))]]]]]])]]])])]))])]]]])]])])])]]]))])))]])]]))]]]]]))]])))]))))]]])))))]))])])])))]])])))))))))]))))]]])])])]]]))))])]]))]]]]]]))))])])]]]]]))])]))]]]]]])])]])))])]]]))]]]]))))))]))]])]]]))])]))])))]])])]]))))])]]]])])])])]])]))])]))])))]]])])))]]]]]))])])))])])))))])))]]))]]]))])]]))))))]]])]])]])])]]]]))])])]]])]))))])))]))))]])]))]]))])])])]])]]]]]))])])])])]])])]))))])]]))]]]))]]])])]))]))]])]]))]))])))]]))])]))]]])]))))]]]]]]]]]]]))]])])])]])]))))))])]]])]]]]]]))))]])))])))]]]))]])]]]]]]]])]]))))])]))])])])]])])]]])]])))])))]]]])]))]))))]]])))]]])]]]))]))]))])]]])))))]]]])]])])))]))]]]]]])])))])))])))])])])))]))]])))]))]]])))))]]]]]]])]]])]))]))])]))]])]])]))]])]])]))])])))]])))])]))])]))]]])])])]])))))]])])]]])))])])])]])])))]))))]]))]))]])]])])])]]])))])]]])]])])])))]])))]]]))]])]))]])])))]])))))))]]]]]]]]]]])))])]]))]]]))])])]]]])]))))])]])))))]))]]])]]]))]]))]]])))]]))])])])))])))]]))]]]]])]]])))]))]])]])])]))]]))]]])]])])]]])])]]))])])))])]]]])]])))])))]]))]]])))])]]))))])]]]))]]]))]])]]]]])])])]])]]))))])]]))))))]])])]]]]])]])]]])))]]]))])]]]))])])]])]]))]]])])))]]]))]]]]]]]))]]))]]]]])])))))]]))])]])]))])]])]]]]]]]]))]]]])))])))]])])])])])]]]]))))]))]]]]]]]]])]]]))]]]]]])])))))]))]]]))])))])))))]]]]))]))))))]]))))]]])])))])])]])))])])]])))]]]))]]]))])])]])))])]]]]]]]]]])])]])]]])]))]])]])])))))]]))])]])]]]]])))])))]]]]))]))))]))]])]]]))])]]])))))))])]]]])))))])]))]]]]]])]])]]])])]))))]])]]))]))))]])]])))))))))))]]))]]])])))))))]]]]]])))]))]]]])]]))])]]))]]])))]]]]]]]])))])])]]))]])]])])))])]]))]]]))])]))]])]]])]]])])))]]])]])])]])]]]]])])))))]))))]]]]))]]])])]))])])]]])]]])]]])))])]))]))))])])]])))])]))]]])]))])])]))])])))])])))]])))])])]))])])))])]]))))]))))]]))]))]]]))]))]])])))]]])]])]]]]]])]))))]))))])])])))))])]]))]]]])))]]))]]]]))]))))))]]))])])))]]]]]])])])]))]]]))])])))]]]]))))))))]]))]))))]]]))]]))]]))])]))]])]]])]]))]]))]])))))]))])])]])))]))]]))))))])]])]))])))]))]]))])]])]])]])]]]])))]])))))))))]]]]])]])))])]]]]]]])])]])])]]]]]))]))))]))))]]])]])]])]])))))))])]])]]]))])]]]))])]) [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] [((((((([[[(([(([([[[((([([[([[(([[([[((([[(([[[[(((([[([([(([(([[[((((([[[[[((([([([[[[(((((([((([[[[((([([([([[[[([(([[[[([[((([(([[[[((([([((((((([[[([[(([[[[[([(([([[((((([([[((([([((((([[([[(([[(([((((([[[[((([[[[[([([(([[((([[(([[([[([([[(((([((([([[(([(((((([[[[(([[(([([[(((([[[([[[(((((((([[[((((([[[(([(((((([[([[[([([(((([([[((([[(((([[(([((([[(([((((((([(([[[(([[[(([(([((([([((([(([[[([[[[[[[[(([(([((([([[[[(([([([(([[[[[([[[([([[([([[[([[(([[(((([[(([([[(((([[[[(([([[[[([(([[[((((([[[[([(([[[[[[[[([[[([[[((([[[[[(([[[[([(((([[[[[[((([[(([((([([[((([(([([[([[[[(((([[[[([((((((([[[[[([((([([[[((([(([(([([[[[[((([[[(((([((((([([([(((([(([(([(([[([([[[([[[[[[[([[(([([[([([([(((([([((([([[[[[(([((([[[[[[[[[[([(([([[[[[([([([(([[(([[(([[[((([[(([[[[[[[(((([[([[([[([[((((((([([(([([([([[(([[[[[([((([[(([[[([[([[[[(((([[[[[[[(([[[((([([[(([[[[[[[(((([[[[([([[[[(((([[[[([[[[([([[(([([([([[[(([(([([(([[([([[[[[[([([[(([[[[[(((((((([(([[([[([((([[([[[[([((([([(([((([([[(([([((([[[((([[[(((([[(((([([[[[([([(([([[((([((([(([[[(([[[(([(((((([[(([(([(([(([([((([([[([([(([[((([[[[([((([[(([([[([[[([(([[[[((([[[[([([[[((([([([([(([([(([[[[[[[[([([([([[[[[((([[([[[([[[[(([([[[([[([[(([([([(([([(([[[([[[[(([((([[(((([([([[([[[((((((([([(([(([[(([[(([(((([([[[(((([([((((([(([[[(([[([([([[([([([[(([[[(([(((([(((([([[[([([[(([[(([([([([[(((([[[([[(((([[[([([[[[(([[([([([[([(([([((([([[[[(([(([[[[[((([[[[[([(([[[(((([[[[([([([[([[([([[([[[[([[[[(([([[((([([([[[(([([([(([(([[([(([[([[[[(([[[[([([([[(([([([([[((([([((([([[(([([((([[[[([[([(([[(([[[(([(([([[(((([[((([((((([([[[([[((([[[([[[([[(([(([((([[[[(([[([[[[[[[[[(([([[[[[[(([(((([[([([[[[[[[([((((([((((([([(([([[[[([((([([[[[(([[(((([[(([([[[(([([(([([[(([(([([[([[([[[[[[([[([([(([[((([([((([[(((((([([[[[[(((([[[([[[[[[[(([[(([(([(([[[[([[[(([[[(([[(([[(([(([(([[(([[([(([[([[(([[[((([(([([[([[([[[[(([([[([(([[([[[([[([[[((([[[(([(([(([(((([[[(([([([(([[[([([([[(([([[([((([(([[([[[(([[[[[(([[([[[([[((([(([([(((((([(([(([[([[((([[([[[((([([[[([[[(([(([((([[[[(([([(([([[[(([[[((((((((([(((([[[([[[[([[([[[(((([[((([(([(((([(([((([(([[[[([[([((([(([([([[[[(([([[((([(((([([[[[[[[[(([(((([[([((([[[[(([(((((((([[([((([[[([(([[[([[[(([[[[((([[[[[[[[([(([[[([([([([([[[([([([[([[([(([([[[(([[[[[[([[([[([[[([[[([[([[([[([((([([[[([[[[[((((((((([(((([(((([[((((([(([[[((([[([[([([[(([([[[[[[(([([((([([([(([[[(([[[[[([((([(([([[((([[([([[[[([([(([([[([[([[([[([[[((([[[((([[[(((([[[([([[(([(([((([([([[(([[[[[(([(((([[(([([((((([[([[(([([(([(((([[(((((([[[[[[[[[((([[[(([(([[[[([[[[[(((([[((([([[(([([((((([([[[([[(([[[([[(([[[((((((((([[([[[(([([(([[[([[[[(([([[[[(([((([[[[[[([[([[([([(((([[([[[[([([(([((((([([(((((([[(([[([((((([[[[([[([[[[((([([([(([[[(([((([((([[([[[([[[[[((((([([[[[[[[([[([(([[(([(([((((([(([[[(((([[[[(([([([[[[[(([[[(([[([(([[([([[(((([[((((([([[(((([((((([[[([[([[((([[[(([[[[([([[([([[[[[[(([[(([((([(([((([[(([(([((([(([(((([[[((((([((([([([([[[(([[([([([[[[(([[([([[[[([(((([(([([([([[([[([[[([[[(([([[([(((([([[([([(([((((([([((((((((((([(([[[[[[([([[[([((([([([([[(([([([[([[[(([[[[(((((([(([[(([[[[[([[[([[[[[([([([[[[[[[[((([((([((([[(([[(([[[(([[[(([([[([((([(([[([[[(([[[[[[[([(([[[(([((((((((([([[(([[((((([[([([([[[(([[(([([((([(([(([[[([[(([[([[([[((([(([((([[[[([[[[([((((([([[[(([((([[((([[[[([[[[(((([([[([[([([([([((([[[[[([[([((([[([([([[[[((([(((([(([([([[([((([[[[([([[([([(((([[([[(([[((([([(([[([[([[[((([([(([[(((([[[(((((([[[([[[[([[[[([[[[[[((([[(((([([((([([(([[[([((([([((((((((((([([[[[([[[[(([(([(([[([([(((([[([[[([([([([[((([[[(([[[([((([([[[[([[[[[(([(([[(([(([[[([([[[[[[(([([[[[(([([[[([[([[([[([([([[([[([([([[([(([(((([((([(((([(([[(([((([(([([[[([[([[(([[(((([(([[(([[((((([[([[([((([[[(([(((((([[[(((((([[[[[([([[[([([[([[(([[[([([([[((([([([([[[(([((((([[((([[[[[(((([((([(([(([([(((([([([[([(((([([([[[[(([[[[(((([[[[[[[(([((([([([([[[([([([[[[[[[[[([[[[([([([([[[(([[[([((([([([([[([[([([[[[((([[[[[[([(([(((([[[[([([[(([([[([([([[[(((((([[[(([[[[(([((([([(([([[([([([[((([([[[[[[([([[([[[[[([[[[[[([[(([([((([[[([[([((((([((([([(([[((([(([([([((([(((((((((([[[[[[[[([([((([[[[([([[[[([((((([((((([[([(([[[[(([([(([[([([[([[[[([(([[([[([[([(([(([(([([[(([(([[[([([([[[[[(((([(([[[(([[[([([((([(((([[([([(([([((([([[([(((([(((([((([(([[[(([(([([([[[([([(([[[[([[[(([((((((([([[[[[([(([[[[[[[[(([[[[[[[([[[[((((((([[(([[(((([[[[([([([[[[((([[(([((([[(([(([[[[((((([[[(((([[[([[([(([[([[[[[[(((([[[(((([[([([[([(([[([[([(((([[[(([((([[([[[(([[([[[(([[(([[(([[([(([[((([[([(([[[[([[(([([[[[[([([[(([([([[[([(([((([[[[[[[([([[[[[[[[[[(([[[[[[([[[[((([(([[([(([([(([(([([([(([(([[[(((([([((([([[[[(([((([[[[[([([[[[((([(((([(([(([[([(([[[(([[(([[([(([(([(([([[([[[[[(([[[[([([[[[[((((((([[[[([[([([[[[[[([[([[[[[(([((([[([[([[[[([[([(([(([(([[([(([(((([([([([(((([(([[(([[(((([[[[[[[[[([[([[([[((((([(([([((((((([[[([[([((((([[(([[[(([[(([([((([[(([[([([[([[[[[((([([[(([(([[[[((([(((([[[[[(((([[[([[([((([[[((([[([[((([([[[[[((([[[[(((([([[(([[[[[[((([[[[[([[(([[([[[((([((((([(([[(([[([((((((([[[[([([(([[[[([([([(([[([(((([(((((([([(([[((([[[([[((([[(([([([[(([[[(([([[[[([[[[[[[(((((([[[[[[[(([(((([[((((([(([[[[((([(([[[[[(([((([[[(([([[[([((((([[([[([([[([((([((([[([[(([([([([[([[[([((((((([(([[([(([(([[[[[[([([[(([[[(([((((([[((([(([((([([[(([(([(([((([([[([[(([((([[[([((([[[[[[([[[(([[[((([[([([(([([[(([[(([((([[([([[(([((((([(([[(((([((([[[[((((([[([(((([(([(([([([[([[[[[(([[([[([[[((([[[([([(((([[[([[[[(([[[[([[([([[[[[([([((([[[[([([(([[[[(([[[([[[((([[((((([(([([[[([((([([[([[([[[[[[([([([([[(([([(([[((([([[([([([[[[[[((([[[[(([(((((((((((([(([((([[[[((([([([[((((([(([[(((([[([(([([[[[[[(([(([[[[[[[[[(([[([([([[((([([[((([[(([([([((((([[[([([[([([([[[[(([[([([[(((([[(([[[(([([[((([[[(([[([[[[[(((([([[[([[([(([(([[[((((([([[([((([([[(([[([(([([([[([((((((([[[(((([(((([[[[([([[(([[((([[([[[[[([(([(([(([[[[([([[([((([(([((([[(((((([([[(([[[([([[((([([[([([[(([[([(([(([([[[[[(([[(([[[[[[([[([[[((((([[[(((([(((([[[([[[([([[[[[[((([(([([([[(([([[[[[[[(((([[([[(([((([([((([((((([[[[[([[[[((([[[(([((([[([([(((([[[[[[[[((([[([([([[([[(((([((([(([([((([(([[(((([([((([[(((([((([[[(([(((([(((([[(([([[([[([([((((((([((([[[(([(([([[[((((([[[[[[[[[([[[[((([([[([([(([([[[[((((([([(([((((((((((([[(([[(((([([([(((((([([(((((([[([([[([[([([([[(([[([([[[([([((([(([((([[[([[[([[([([([[[[[[[((([[(([[[[([[[[[([[[[[[[([(([(([(([([(((([([((([[((((((((([[([([([[([([([[[[[[[([([((((((([(([([[[[[[[(([[[[[[([[[([(((([[((([(([([([[[[[([[([(((([[[((([[([([((([(((([((([([(((((([[[(([[(([[([([[[([([([[([[(((([((((([[(([([[([[[[([[[[[([[[[([([[[([([((([[([(([(([[[([[[([[(([([([[[[[[[([[(([((([((((([[[([[([[[((([[[([((((([((([([(((([[([[[[([[[(([[(((((([[[[[([(([(([((([[(([([((([([([[[([(((([[((((([([(([[([[(([[([([([(([[[(((((([(([([[[[[((([[([([([[([((((([(((([(([[[([[(([[[[[([[([[([((([[[([(([[((((([[([[[(((([(([[([([(([([((([(([[([([[[([(([[[[[([((((([(([([[(([([(([([(([([([([[[[[([[[((([([[[[([(([([[([[(((((([((((([[[(([(((([([[[(([([[[((([[((((([[[[([[([([[[[[((([([(([(((([([[[(([[[(([[(((([(([([((((((((((((([((([[(([(([([[[([[[([[(([[[([([[([((((((([((([[(([([(((([([[(([((([[([[[[((([[([([(([([[([[[[[[[([[((([((([[([(([[[[[[[[[([[[([([([((([([([[([[([[[[[[[((([(((([[((([[([([([[((([((((([([[([([[(([([[(((([[([[([([[[(([(([[(([[((([[(([(([[(([([[[[[[((((([((((((([[(([(([(((((((([([[([[[[([((([(([[[([[[[([([[[((([([[[([(((([[[(([[([[[([[([(([([[([([[((([([[[(([([[[((((([(([[([[([[([([[[([[(([([(([[(([([([([[([[([([[((([[[(((((((([[(((([[([[(([[[(([[[([(([([([(([([[[([[[[[([(((([[[((((((([([[([[[[[[((([[[([[[[[[(([[[(([(([((([([[[(([((([[[([[[[[([[(([([([[(([[[[([([((((([([[((([(([[[(([([([([[[[[(([[([[[[([[((([[([[[((([([[([[[(([(([(([(((([[([([((([[[[([([[([(([[[[[([(((([((([(([([(([[(([[(([(([([[[(([([(((((([(((((([(((((((((([[([((([(([(([([(([([((([[((([(([([([[((((((([(([(([(([([[[(((([(([[([[[[[([([(([[((([([[((([[[[[([[[(([[[[[([(([[[[[([[([([(([[((([[[[[[[[([[[(([(((((([([(((([((((([([(([([(([[([[(([[[[[[([([[([(([[[[[(((((([[(([((([[[(([([([([([(([([[(([([[([(([[(([((([[[[[[[[[([([([[([[[([(([(((((((((((([[([((([[[([([[[((((([([((([(((((([((([[([((((([((([[[[([[([(([([((((([[([(((([([[(((([([[[[([((([([[[(([[[((([[([([[[(([[[[[[([[[[([([(([(([([[[[[[(((((([[[[[[([[(([([([((((([(([[[[(([[([([(([[[(((([[([[[([(([([[[[(([[((([(([(([(([[[(((([[(([(([((([(([[[[((([[([[[[(([([((([[(((([[[(([[[[[(([((([([(([([[[(((([((([[([([[[(([[([(((([(([(([[((((((([[[((([[[[([[[(((([[[[(([(((([[[[[(((([([([(([((([((([([(([([([([[[([[[([([([((((([[(((([((([[([[((([[([([(([[([((([[([[(([(([([[([([([[[([[((([(([(((([[[(([([[([(((([([[[[(([[[(([((([[([[(([[[[(([[(((([[([([[[[[([[(([(([[[([[[([((([[[[[(([(([(([(((((([([(([[([([[(((([[[(([[[([[([[([[([((((([([[([([([[[[[(([[[[([([[(([[[[((([[[[([((([[[[[([[([[((([[[((([[([([[[[[(([[(([([[(([((([([[([[[([[[([([(([([[[[[((([([([[((((([((((([([[[[[(([[([[(((([[([([[([(([(((((([((([([(((([([([([([(([([([([[[(((([((([[[([[([([(([[[[(([(([((([[[([[([[([(([(([[(((([((([[[(([([([[([([(([[((([([[[((([(([[[[[([([([[([[([([[[([[([[[[[((([[[[([[([(([[([[(((([[[[[[(([[(([[[[[[[((([([([[((([[([((([(([(([([([([(([([([(([(([[([[[([(([[[([[[(([((([([[([(([((([(([([[[[[[([[[(([((([[([[([[(((([[([[((([[([([[([[([([[[[[[([([([[((([[[((((((((([[([[[[[[([([[([[([([([([[([(([(([[(((((((([[[[(((((([[(([[[[[[([([[([[([([[[([[[([[[[[([([[([[((([[[[([([(([[([[[[[[([(([([[[((([[((([[[(([[[([([[((([[(([[(((([([((([[([(((([[[(((([([[[[([((([(((([[[((((([(([[[[[[([((([[[[[(([([[([[([[((([[([([([[([(([([[[[[[((([[[([[([[(([(([[[[[[[((([([((([[[([(([(([[[([([[[[([((([([[[[((((([[((((([([((([([(([[[[([[[((((([[([[[[(([([([(((((([[[(([[([([[[([(((([((([(((([[[([[[([([(((([[([[[[([([([[((([(((([[[(((([([((([[[[([[[[([[([[[[((((([([([([([((([((([([(([([[((((([([(([(([[[[([[([[[([((((([[[(([[[([([([(((([[[[([((([(((([([[([([[([(([([[(((([[(([[[[[(([([([[[[[[[(([(([[[[[(((([[(([[(([[([[([[([[[[[([(([[([[([[(([([[(([[([[[(((([[(([(((([[(([[[((([(([[[((([((((([[((([[([[[[[([[[[([[([(([[[((([((((([(([([([[[[([[[[[[[[([(([(((([[((([([(([[[[([[[[(([([[([[[([([([(([[([([([([[(([[[[[[([[([((([[[[[(((([[((([([([[[[([[[(([[((([[([[(([[([[(((([([(([(([([([[[[[[(([[([[((([([[([[(((([[[[[(([([[[[[(([([[(([(((((([[((([([[(((((([([[[[([[[[(((((((((([[(([[[([(([(([(([(([[(([[[[(([([[[((((((((([([[([(([(((([([[[[[[(([((([[[[(([((((([[[[((([([[[(([([([[([[[[[((((([([((([[((([(((([(([(([[([([[[(([((([([([[(((([[(((([[[(([([([[[((([([[([[[[[[([((((((((([[(([((([(([[([(([([(([[((([((([[([((([([([([[[[(([[([[[[[[([[[([(([[[(([[[[(([(([[[(([([[([((((([[([([([([[([((((([[[([[[[[[([((((([([([([[((([(([[([([[([((((((([([((((((([[(([((([[([[[([(([([[([((((([(((([[([(([[[[[([[([[[[([[((([[(([([[((([([[([((((([([[[[[((([([[[[[[(((([[([[[(((([([([[[([[((([(([[(([(((([((([((([(([[([([[[[(([[([[((([[((((([[[[(((([(((([[([[([[[((([([[(([[([([(([[([([[([[[[([(([[[[([([((((([[[(([[(((([(((((([[[[[[[[[([[([[[(([[[(((([(([([([[[(([[[[[((((([((([[[(([([([[([(([([[[[[[([[[(([(((((([[([([[[((([[(([(([([[([([[[([[(((([(([([[[[(([([[[[([(([([[[((([([[(([[[([([([((([[([(([[(([[[([([[([(([[[[[([[([(([(((([[[([[[([[((((([[(((((([[((([[[([(([([([((([[[[((((([[[[([[[[[[(((([([([([[[[([[([[[(([(([(([[([([([[(([([[(([(((([([[((([[[[[(([([([([([[[((([(([[[[((([[[(((([((([(((([[([([(([([[[[(([[(((((([[[[([([[[(([([(([[((([[[([([[(([([([([[[[(([((((([[[(((([[[([([(([((([(([[[((([[((((([[((([[([[(([([[[[(([[[([(((([[(([([([(((([([(((((([[((([[[([[(([([([([[[[[[((([((([(([[[[[[[[([[[([([([[((([([([(([[((([([[[[[[(((((([((([[([[([[(([[((([[[[([([[[(([[([(([([(([[([[[((([(([[((([(([([([[(([([[[([([([([[([[([[[[([(((([[[(([(([([[[([[[([[([[[((([[[[[[(((([[[[[((([[[(([(([[[(([[[([([[([[([[((([[[[[[(([((((([[[([([(([((([[[([((([(([(([[[[(([(([[(((((([([[((([([[[[[[(([[[[([([([[[[[[([((([([(([[(([(((([[[([[[(([[[((([[[[(([[[[[(([[([[(((([[[([(([[[((((((([(([[((([[(([[[([[[[[[((([([[[((([(((([(([([([(([[[((([[[([[((((((((((([(([([([[(((([[[[([[([[((([([[[[[[[([[([([[(([(([((([[(([([([[([([(((([((([[[(([([[[[(([[([[(([[[(((([[[[[([([(([[[[[([[[([[[([[(((([[([(([([[((((([[(((((((([(([(([[((([[[[([(((([[[[(((([[([[([[([((([[[[((([[[((([(([[(([(((([([((([(((([([[[(([[(([(([[[[[([[[[[([[[([[(([[(([([(([([[[[(([([[[((([([[[[[(((([[[[((((([[[([(([[[((((([((([([[([(([[[[[[[([[[([(([(([([[[[[[([[(([((((((((([[[[([[[[[([[(([[[[[[[([(((([[([(((([([[[([([[([[([[([[(([(([(([[(([([(([([[[(((((([[[([((([[((((((((([[([[[[[[([((([([(([[[(([(([((([[[[(([(([[([[[((([[([(([([((([(([(([([(([((([[[[[(([[[(((((([((((((((((((((((([(([(([([([[[(((([[[[[([([([[[[(((([((([[[((([((([[((([[[[(((((([[[([[[(((([((((((((((([[[[[[[([((([[[[[([([[((([[[([[[[((([([[[[[([[((([(([[[[[[([[(([((((([[((([((([(([((([[([[[(([([[[[[([([[[(([([((((([[([(((((([[(([([([[[([[[([([[[(((([([[[(([[[(([[[([(([([[(([([(([((([[([(([([([(([([([([([[[[(([(([([[((((([([([[[([[[[(([([(([[(([((((([[([((([((([((([(([[(([((((([([[[((([(((([[(([[([([(([(([[(([[([([[[[((((([[[([[([[[[([([([[[[(([([[(([(([(([([[[([[(([[([([[(((([[[([([([([((((([([(([[(((([(([([((([([[[[[(([([([([([((([[([[[[([(([[(([([[([([(([([([((([[([[(([([[([([([(([([([([[(([[[[[(([([[([[[([((((([[[((((((([[[[[((([(([([[[[[[[[[[[[[([[((([([[[(((([([(([([((([[([[[[([[(([[[[(([([[[(((([(((([(([([(([[[([[([[([(([[(([([([([([[((([[([([([[[[[([([[[[[[[[[[[(([[([[[([[(([[[([[[[[(([[[(([([((([(([[[(((([([(([(([[((([[([([((([([([([[[[([((([[([(([[([[(((([[([([(([[[[[[([(([[((((([[(([(([((([[[[(([[(([[(([[[(((([([[[[((((([(([[[[(([[[([((((((([[[(([[(((((([(([[([[[[((([(([[[[([((([((([[[[(([([([([([(((([((((([[([[([[[(([[([(([[[([[(([[[[([[([([([(([[(([[[(([[((([[[[((((([[(([([[(([([([([(([[(([([[[[([[([([(([[[[[[[([([([((([[([[(([[(((([[([([(([[[(([[[[[(([([[([[([[[([[[(([([[[([[(([[([[[[([[(((([((((([(((((([[([([[[([[([[([([([([([[([[([((([[([[[((((([[[[([[([[[[[[((([[[[[[[(([[[[[[([((([[([[([(([((([(([((([[[([((([([[((([[[[[([(([([[(((((([([[(([[[([[[([([[[[[[[[[([[([([([(([[[[((([[([([([[([[(((([([([(([(([([[(([[([([([[([[[(([[([([([(([([[([([(([([(([[([((([([[[[[[[[[([([(([(([[(([[[(([((((([(((((((([((([([[(((((((((([[[(([((([(((([[[([[[(([(((([([[[([[(([[(([[(([[((([([(([[[[(([[([([([([[[[[((((((([[[(((([[[[((((([(((([[[(([([[([((([[([[([[((([((([[([[[([([[(([(([([(([[([[[([[([[[((((([([([[((([([[(((((([[(([((([((([(([(([([([([[[([(([([[[([(([[[[([[[[(((([[[[[((([([[[([[[([[[(([[([(([[[([[(([([([([(([[(((([([([[((([[(([([[[[[([[(((((((([([[[([(([([[[([[([[([[[[[[((((((([[[(([([[(([[([([[([(([[[[((([[([[([(([((([[([[((([(([([[([([[[((([([([[([[([([[[([[[[(((([[((([([([((([[([[[[[[[((([[[((([[(([[([([(([(([((([[(((([[[[((([(([[([[([([[[([[[[((([(([(([[([([[[[[[[[[((([((([([((([[[[([[(([[[[((([(([[([((([[((([([[[[[(([[([[([([[[(([(([[[[(((((((((([([[[[[([[([[[[([[([[[(([([(((([([(([([([[([[[[((([[(((((((([([[([[(([((([[[(([(([[([[((((((([([([((([[[(((([([([([([[[([([([((([([((([[[[(((([[((([([[[(((([((([[[[[[[[[[([(([[([[((([((((([(((([[([[([(([([[((((([([[([([([[((([((([[[([(([([[(([[([[[([((([[[[[((([[[([([[([[(([[[(((([[([([([([([[[(((((((([((([(([[([(((([[[([([[[[([[((((([[[[([(([[[[[[[((([[[([([[(([[[(([(((([[[[[[[[([[((([[[[(((((((((((([[[(((((([([[([[([((([(((([[([([[([(([([(([[[[[[[(([([(((([[([[[[[([[[[[[(([[(([[[((((([[[[([[([(((((((([[([([[[((((([(([(([[[(([(([([(([([([(([([[[([((([(([[((([(([[[[[[[[[(([([[([[[([([([[([((([([([[[([([([(((([([(([(([([(([([([[([([([[(([([[([([([([(([[([[[(([[([[[(([((([(([([[[[([[[(((((([[([([[[([([(([[[([[([[[((([[[([((([[[([(([[((([[[[[((((([[((([[([[[([(([[(([[(([[(([[(([[([(([[[[(((((([([([([([(([((([[(([[(((((([[[[[[[([[(([(((([([[[((([[[[[([(([((([[[([[([[[[[[[((((([[[[(([((([[[([([([(([((([(([[([(((((((([((([[(((([[[([((([(([[[(([([[(([((((([[([[(((((((((((((([([[([((([(((([([([[([[(([([[(([[[[[(([([[[[[[((([[[((([[[[[(([([[(((((((([(([[[[[[[[(((((((([([[[[[(([((((([([(([[[[[(([[[(([[([((([[[[[[[[([[(([[([([(([([([[((((([[((([([[(([[([([([(([[(([[(((([[[([([[([[(([([(([([[(([[[[[(([(((((([[(([([[[([(([(((([[([((([(([([(([(([(([[([[[[[[[[[((([(((([((([([[[[[[((([(([((([[([([(([([[[[[([([[[([([[(([[(([((((([[[([([(([[[[(([[[([([((((([((([((((([[([[([[[(([[[(([([[[(([([(([[[([[([[([(([(([[[([[([((((((([((([(([(([([(([[[[[[(([([([([[[(([[[([((((([[[((([[([(([([((((([[[[((([([([(([[(([((([([((([[(([([([[[[(([([[[[([[((([([(((([[[([(([[([[[[([[(([[[([([(([(([[([[[[((([([[(([[([[[[[[[([[([([(([[[([([(([[(((([([(([((([[[(([[[([[[[([([([[([[[([[(([[[((([[[[([((([(([[[(([([[[[[([[([(([([[[[[[[([[[([(([(([[((([[([[[[(([[[([[[[([([(((([[[([([([((((((((([[([([([[([[([[[([([(((([[[[([([([[([([(([([([(([[(([(([[[([([[[[([([(([[([((([(((([((([[([[[[[[([[([((([(([[((([[[((([([([(((([((([((([(([[[[[((([[[(((((([[([([[[(((([[[[((([([([([[[([[(([[([[([([[[([[[((([[[((([([([(((([[[([((([[[[[[((([([((([[[[([(([[([([((([([[([[[[([(([(([([([[[[[[[([([[[([([[(([([[[[([[((([((([(([([[[[[([[[(([(((([(([[[[[[[(([[[[((((([[(([[([[[[([[((([([([([[[[[(([[([([(([((([([(([[[([([(([[[(([[[(([(([(([[[(([[[(((([[[[[(((([[((([[((((([[(([[[(((((([([[[([([([(([[((((([[([(((([([([[[((([[[([([[[([[([[(([((((([[[(([(([[(([[[(([((([[[[([([([[[[[[(([((([[[[(([[[[(([[[([[([[(([[[(([([([[[[[[[([(((([((([[[((([[[([[([((([([(([((([[([(([[[(((((([[((([[[([(([[[(([[[([(([[[([([((((([[[[(((([(([(([[[([[[[[[[([(((([[([[([[[[((([[([((([[([[(((([[[(((([(([([([[[((([[([[((([[([[([([([([[[[[([((([(((((((([([(((([[[[(([(([([[([(([([([[[([([((((([[((([([[[[(([((([[[[[[[[([[((((([[[(((([(((([[([[(((([[([(([([[([[[((((((([[[([[[(([[([[(([[(([[([[[[[[[(([(((([([((((([(([([([(((([(((([[[[[([(([[[[[[[[([([([([[((((((([((((([[[((([[([[([((([[[([([([[[[([(((([[[[[[(((([([[[[(([((((([[[(([((([[((([[[[[[([([[(([(((([(([[[[([[[[((([[(((((((([[([[[[[([(([([([[[([((([([(((([[[(((([(((([[([[([((([(([([[(([(((([([((((([[[(([((((([([([([(([([[[[[(([[[(([(([((([((([([[([(([[(([[(([([([(([([[[[[[[[[([((((([(([(([([[(([[[(([([[[[(([[(([(([([([[[[([([[[[[[[((([[(([[([[[[([[([((((((([(((((([([[[(([(([([[((([([([[[(([([[([[[[([(([[([[[(([[(((([([[(([([((([([[[(((([[[[[[[([(([([[[([([([([((((([[[([[([([[([([[((([((([([[([((((([[[(([([[[[([(([(((([[([([([[(([([[[[([(((((((([([([(((((([[(([(([[[[[[[(([([(([[([(((([[[([[(((([[[[([(([[([([[[([[(([(([([[[([[[[[([[[[[[(([(((([([[[[[[[((([[([(([(([([((([[(([([((((([([([[[[[(([([([((((([([([((((([[[([[[((((([[(([(([([[[[[[([(((([[[([[[[[[[([([((([([[([[(([[[((([([([(((([((([[((([([[((((([([[([[(((((([(([(([[(((([[(([[(([[[([[[(([([([(((([[[[[[([[[[((([(([[([([[([[[[[((([[[([[([[((([([(([[([([((((([[[((((([([[([([[(([([([([[((([(([[(([([[(([[([[[[([[([([[[[([[[(([[(([[((((([(([[([[[[([[((([([([([([(([[([(([[([([[[([([(((((([[([(((((([([(((([[((([[[([(([[[(([[(([(((([(([(([[[[[[([([[([[[[([[([([((([[[(([(([[[([[[(([([[[[([[[([((((([[([([[((([[[([[[[[[([[[(([([([(([[[([([(([((((((((([(([[([([((([(((([[[([[(([([(([(([[(([([[((([[[([[(([[[([([([[((([[[((([([([([((([[[[[([[[([[(([((((([((([[[[[[([(([((([[[(([[(((([((([([[(([[([[[(([[([[[([(([[([(([(([[([[[((([([([[([([(([(([[([([[(([[(([((([([([((([((([[((((([([((([[(([([(([([([[[[[[([([[[[(((([[[[[[([(([[[[[[([[([([((([([(([[[[[(([([[([([[[[[(([(([((([[[[([([[[[[([([([[((([((([([[((((([[(([[(([[(([(((([[[[(([(((([(([((([(([[([((([(([[((([[[([[([[[[[[(([([[[([([(((([[(((([[[((([(([(([([[[(((([([([(([([([([([(([[(([((([((((([(([([([(([[((([((((([[[[[[[([([[[[[[[(((([([[([([[(([(([([[([[[([[[([([([[(((([[([([[(([([[(([[[([((([[[(([(([(([(([[[[([(([[((([[([([([[(([((([([(([([[[(([([([([(([((([[([[[(([[[[(([([[[(((([[[(([[([[[([(([(((([(([[([([[([[((([([([(([[([[[([[[[[([(([[[[[[([[([(([(([[[[(((((((([[([(([[((([((([(([(([[[([([([[[(([(((([(([([([[([[[[[[(([[([[[[[[(([([((((([[[([[[([[[(((((([[[[([[([([[[([([[[[([[(([[[([[[[[[[(((([([[(((([[[([([[([[[[(([([[((([[((([(([(((((([[([(([[(([([([([[((([[[([[[([[([[[[([[[(([([([((([[[(([[([[([[(((([[[[((((([[[(([((([[[[[([[([(([[([((([[(([[([[[([([((((([[(([[([[[([([[((([[(([([([(([[((([((([(([[[[([([(([[(([[(((([([(([[[([[((([[(([[[([[((((([[[[((([[[((([[[([[[([[([[(([([[[([([([[([[[[([((((((([[[[((((([[((([(([[[[[[(((([[[([([[((((((([[([[([[[[[([[[([((([[[[[(((([[([[[[([([([([[((([[[[((((([(((([[([(([[((([(([((([(([[[[([[[[[([[([([(((([[[([[[[[(([(([((([[([[[([[([([([((((((([[((((([[[(([([((([[([[(((([([[(([([[([([[[((((([(((((((([(([([[((([[[([(((((([([[[[[[[(([[((([[[[[(((([[(([[[[((([[[(([[((([[[((((([[([([[[[[(([[(([[([([[[[[([([([([([(([([[[[([[[([(([((((([[(((((([([([([[(([[[[(((([(((([(([([(((([([[([[((([[([(((((((([[[([[([((((([[[([[(([([([[[[[([([((((((([[[[[([[(([([[[((([[[[[([(([[[((([[[[[[([[[([((((((([[[([[([((([[[[[[([(([[[((([[(([(([[[[[([([((((([[((((((([([[(([[([(([([(([(([((((([[[[[[(([[[[[[([[([[[[([([(([[([[[((([((([[((([[((((((([(([[[(([[(([[([[[[[[([([[[((([[[[[(([([[[[[[([(([[([[[[([[[((([((((([([[[[[([[([[(((([([(((([(([([([([[([[[([[(((((((((([(([[[([[([[[[[([[[[[(([(([[(((((([[(([[([[([(([(([[[(([([(((([[[(([[([([(([(([([[((([(([([(((([(([[([[((([(([(([[[(([((([[[[[([[[[[([[(([([(([[[[([(((([([[((([([([[(((((([[(([(([[([[([[[[[(([[([[[[(((([[([[((([((([(([[(([([([([[((([([[[((((((([((((([(([[([[[([[[([[([((([[[[([[([[[([[[((([[[[[(([(([[[[(([([[([(([[[[[(([[[[[(([(([[[[([[[(([([(([((([[[[([[(([([([[[(([((((([(([([[(((([[((([[[[[(((([[(([([[[[[(((([[[(([[[[(([(([((((((([[([[([[[[([[[(([([[(([([([[([(((([[(([((([[(([[(([[([[([([(([[([[[[([[((([[[((([(([([[(((([([([(([[[(([([[[[[([[([([([(((([([[[[[((([((([[(([(([[((([(([[([(((([[[[[([[[[(([(([(([([(([([([[[(((([[[[[(([(([[[([[[([[([[[[([[[([[[(([([[(([[[[(([([((([[[((([([[([[[[([(([((((([[[[([([(([([[[[[[[[[((([[[([([([[[[(([[([[([[([[[[([[(([([(([(((([((((([([[(([(((([[((([[[(((([([([[[([[((([([[[(([[([([[([([[[([[((([([((([[([[[([[([((([[([([[[([((([(([((((([([[([((([([[[([[(([((([([([[[([[((([[[[[(([[[[([[(([([[[[([[[((([([[[([[(((([[([([([([([([((([(([(([[[(([[([(([[[(((([[[[([[([[[(((([(((([[((([[[[(([([[[[(([([[[[[(((([((([([[([[[(((([([[[[(([([[(((((([([[((((((([([([(((([[(([(((([([[[([[((((([[[(([[[[(([[[[[[[[[([((((([[[(([(([([((([[[[[[[([(([[([([(([([[[[([([[[[[([[[[((([[[[(([[[([[[[[([[[[([([[[(((([([[(((([[[([([[[([([((([[(([[[((([[[[([[((([[[[[((([((([[([(([[[([[([(([[(([(([[([[((([[[[[[([[[[([[(([[((((([[[[([[[[[((((([((([(([(([([[[[[(((([([(([[(([((([[[[[([(([[[([[[(([([[[[([((([[[[([(([[((([([[([[[[([[(([([(([(([[((([[(([[[[((((([((([[(([([(([[([(([[(([[([(([(((((([[[[[[[[[[([([[[[((([(([[((([[([[([[(([[([([[([((((([(([[((((([[(([[([([[([[([(([(([[[[[[[([(([[([[[((([[(((([[(([[(([[[([[[[(([[([[((((((([[(([[[(([([[([(([[(([((((([[[[[((([([[([((([[([([([(([[([[[[[((((((((([(([([([(((([[[(([[[[((([[([[([([(((([([((((([(((([(([[[[(((([([([(([[(([[(([([(([([[[[([[[([([[[[([([[[[([[[[[([[((((([([(([[([([([[[((([[((([[(([[[[([(([[[[[(((((([((((((((([[[(([[([([[[[(((([[(([[[[[[(([[(((([([[[[[[(([(((((((([[([[[(([([(([([([(((([[([[([(([(((([[((([[([((([(([[([((([([([[[([([((([([[[(([(([[(([([(([(([[[(([(([(([[[([[[[(((([[[(([((([((([((([([(([[[[(([[([(([(([([((((([(([[(([[[([([[[[[([([([([([([[[(([(([[([[[[((([([((([[[[[[[[[[[([([([([((([[([[(([[[(([([(([[[[((([[([[[[([(((((([([[((((([(([([[(([(((([[[[[([(((([[[[([[[[([[[[([[[[(([[(([[([((((([([([[([[([((([[([[([[[[(([[(([[(([([([[(((([[([[((([[([([[([((([[[[([(([(([(([((([[[([[[[[([[[[([[(([[(((([[([[[((([(([(([[(((([[[[[[[[[([([([[([([[([([[[((([[(([([[[(([(([[(([([([([([([[([(([[([([[[(([(((([[([[[[([[[[[([[[[([((((([[[[((([[[([[[([[((([[[[(([[[([(([[([[[[([([((([(([(([[[[[([([[((([[((([([([(((((((([((((([[[[[(((([([((((([[(([([[[([[[[[(((([[(((([(((([[([[([([[[([([[([[[(([[(([([([[[[[(([(([([[[(((((([[[[[[[([[[([[([((([[[[([([[((((([[([[([([[(([([[(([[[((([(((((([[([([([[([(((((([[([[([((([[((([[(([((([([[((([([(([([((([[[([([[[[([[[([[[[([((([(([([([([([[[[(([(([([[[(([([[(([([[[([([([[([(([[(([((([([[(([[([([[[([(((([[([((([[((((([(([[([([(((([[[((([[[(([([[[(([([(((([[[[([[(([[([[[(([(([([((((([([([[[((((([[(((([([[[[([[[[([[(([(((([[[([[([([[(((([[[((([(([[[(((([(((((([[[(((((([[(((([(([((([[(([[[[([[[[(([((((([(([[[(([(([([[[[(([([(([[((([[[[([([[[([[[[(((((([(([[((((((((([(([[(([[[[[((([[([[(([[((((([[([((((([[(((([(([((([((([([[[(([([[[(((((([[[[[((((([[[[(([((((([[[[[[[[[[(([[[([[(((([[[[[[([([[(((((([[[[([[[[([(([[[((([[[[(([[[(((([[[([([([[([[([[([([([[(([[([[[([(([((([[(((((([[[([((((((([[([((((([([[[[[[[([((((([((([[((([[[((((([[[(([(([(([(([([[([[[([([(((([[(([(((((([[[([[[(([[([((([[((((([((((((((((([[[[([[([([[[(([[[([[(([[[((([[([[([[(((((([((([((([[(([[([(((([([([[[(([([([(([[[([[[[[([([([(((((([([([[[[(([([([[[[(((((([(([[[([([([[[[[[([([[([([([([((([((([(((([[[[[[(([(([[([(([([([(([[([[[([([(([[[((([([[[(([([[(([([([((((((([[((([[([[(([[[[(((((((([[([[([(([[[([[[[([(([[([[[[([[[[([[([([[[[[([([([[[((([((([[[((([[[((([((([(([[[(([[[[[[(([([[[(([([((([([[[[([[[([(((([[([[([[(([[([((((([[((((([[[[([((((([(([([[[[(((((([([[[([[([[[([[([[[[((([[[((((([[(((([[[[[[(([([[([[([[[[([[(((((((([[([[((([(([[[([[[[[[([((([[[([((([[[[[([([[(([((([[[((((([([[[[([[[[([[(([([[([(((((((((([([[[(((([([[(([[[[([([[(([[([[[[[[[[(([(([([[[(((((((((((((([[[(([[([((([[([[[[[(([(((([[[(([([(((((([[[[[[((([([[[([((([[((([[(([([[[[[[[(([(([[((([([((([[(([([[(([[([[[((([[[[[((((([[([(([[([([[[[[[([[([([[([[(([[[[(((((((([(([(([([([[([(([(([[((([[[[[([([(([([([((((([(([[(((((([(([(([[([([([(([([[[[([[([([[[[[[[(([([(([([([((((([[[(([([([[([(((([(([[([([([([[[([([[[((([[([(((([([[([[((([[((([[(([[[(([([([([(([[[([([([(([([[([[[([([(((([[[([([[([[([[([(([(([[[([[[[(([((((([([([([([([(((([([[[[[([[[[[[[((([[([[((((((([[[([[[((([[((([[((([(([[([([([[(([[[([(([[([[([[[[[([[(((((([[(([[((((((([[[[(([[(([[[[[[[[([([[(((((([[(((([((((((([[[[[([[[[[((([[[([[[[([[([((([[([[[[[[(([[[(([[[[[([[((([[(([[[[[([[(([([([[([[((([([([[[[(([[([[[([[([((([([[(([((([([([[[(([[(((((([[[[[(([(([([[([((((((([[[(([[([[[(([(((((([(((([([([([[([([[[(((((([([[[((([(([((([([(([[([([[[(([[(([[[([([(([[[[([[[[[(([(([(([(((([(([([[([([([[([([[([[(((([([((([([[([(((([([[[[(([([((((([[([((([((((([([[[(([[(([(([(((([[([[[(([([[([([[(([[[(((([[[[[(([((([((((([(([([([((((((([([[((([[[([([([[([[(([([(((((((([([[([((((((((([[[[[((([[[(((([[[[[(([[([(([[[[[(([[[[[(([[[(([([([((((([[[(((([(([([[[[[[([[[(([([(((((([[((([(([[([[[(([[([(([(([[((([([([([([((([(([[(([[[(((([[([([([((([((([[[[[(([[[(([([[[((([((([[[[[([([([([[[[(([([([[([(([[[(((((([[([((([(((([[[([([[[([(([([(([(([(([[[[([([(([[(([([([[[((((([[[(([(([(([[[[[(([[[[([[([(([[([([((([[((([([(([[((([[((([[([[(([[[((([(((([[[([(((([((((([[(([[[[([[[[[[([[([[([([([([[[([[[[[([[([((((([[(([(([[(([[[[[(([[[([[[([[[[[((([[[(([([((((([([[[(([[((([([(([([[(((([([[[([(([[[[((([[[([((([[[([([[[[[([((([[(([[[([((([[[[([(((([[(([(([([([(((([[(((((([[[([([((([[([([[([[([[([([((([[[[[([(([[([([([(([[([(([[[(([([[[[[(((([(([[((((((([([[[[[([([(((((([[[[((([((([([((([[[(([[[(([[[([(((([((([(([([([([([[[([[((([[[([([[([([([[[([(((([[[[((([([([[[[([[(([(((([[([[((([([(([[(([(([[[[((([(((((([((([([(([[[([[[[((([[[((([[([[((([[(((((([((([([(((([([([[(([([(([([([(([([[(([(((((([[((([[[([([((([[[[([([((([(((([([([(([[[((([(([(([([([[([([(([((([([[((([[[([([[([((([[[[([[[[(((([([([([[([(([[[[(([[([[[[((([[([[(([[([(([([[([[[([[[(([[(([[[[(([((([([[[[(((([[([(([([(([(((([(([[((([[[(([[(([([[[([(([([([([([[[([(([[[[[[(([([[[(([(([([(((([[((([([([([([(([[([([[[[([[([[((([([[([[[(([(([(([[((([[[[(([((([([(([[([[[(([[[([([[[[[[[(((((([[([[(([([(((([(([[(([([[[(((([([(([[(([(((((((([([[[[[[[(([([(([(([[([[((([([[([[([[[[((([[((([((([[([[(((((([(((([(([[(([([[([(([[[[((((([[((([([[[(([[([(([([(([([[((([([(((([([((([[((([(([([[[[[(((((([(((([[[([([((((([([[(([[[([((([([(([[([([[(([[[[((([[([([(([[[[([(([[[[[([[[((([[(([([[([[((([[([([(([((((([([((((([([([[(([[[[[[[([([[(((([(((([([[([(([(([([(([[((([([((([((([(((([[[([[[(([(((([[((((((((((((([[(([([[(([([[[[[[[[[((([(([(((((([[[(((((([[[(((([[[[(([(([([[[[([[[[[(([[([(([[(([[[([[(((([[(([[(([[[[[([((([([[[[(([[(([[[[[[(([[(((([(([([[((([[[[[(((([(([[[[(([([(([([[([(([[([([[[([(([[((([((([([(([[[(([[[([([([[(((([((([([[[[(([[[[(([[[[(([[([[[[(([([([([[[(([((([((([([[([[(([([[[[(([((([[(([([(([([[(([[([[([((([((([((([[[[[(([[([[[[([[([(([((([[[[[([[[(([([[[[((([[[([(((([([[(([[(([([(([([[(((((((((([([[[[[([(([([([(((([((([[[(([([([(([[([[[[(((((((([([[[([(([((([[[((([[([([([((([(([([[[(([[[[(((([(((([([[(((([([([[([[[[[([[[(([((((((([[(([[((((([(([([[[[((([([[([[[(([([([(((([([([[[([(([[(([([[[([([([(([(([[[([([(((([((([[((([[[[(([([([[(([([(([[(([([[([([[(([[([(((((([[[((([[([[[([((([[[[[((([((([[((((([[[[[[([([[[[[((((((([(([[[[([(([[([([([[(((((([([[[([([([([[[[[([([(((((([(((([([[[([[(([[((((([([[([((([[[[(([([(((((([[(([[[([(([[[([(([[([([[([[(([([[[([[[((([[[[[[[([[[([([([((((((([([([[[(([(([[[([[((([[[[[(([(((([[(([(((([[[([[[(((([((([[[([([[(([[(([([[([([(([([[(([(((([((((([(([[[([((([[([[([([[([[(([([([([([(([[[[[([([([[(([(((((([[([[(([([([(([(([[([(([((([(([((([[[[(([[([[([(([[[([[[([[(([[([((([(([([[[[[(([[[([[([[([[(([((((([[([[(([(([((([(((([[[([[([([[[(([[(((([[[([(([[[[([[(([[(([(([([[([[([[[[([[[[((([[([[(([([((([((([([[[((([([[(([([[[[([([[(([((([[[[[([[(([[([((([([([[[[([([[((([(([(([([([([([[[([[([[[[[[[(([[[(([((([[[[(([([[[([[[[((((([((([[(((([[((([[[([[[[[[((([([(((([[[((([[[(((((((((([[(([((([(([([((((([([([[[[([[([[((([[((([[[(((([[([(((([[([[[[[([[([([[(([([(((([(((([[([((((((((([(((([([([[[([([([((([([[[([([((([((([(([([(((([([(([([[[([([(((([([[([(([([[(([[[((([[[[[([[(([(((([[[(((([([[([([[[([[(([([[[[[([[[[(([(([([([((((([(([(([(([([(([(([[([[[[(([[([((((((([([((([[(([[((([((((([[[((((([[[[[[(([[([([([([([[[([[(([([[(([([[((([([((([([[([[[([[([[[(([[[[[[((([(([([(((([([(([[[[((([(((([[[[(([[(([[(([((((([([[[(([[(([([[[[[(([(([((([((([[[[([[([[[[[[([[(([(([[[[(((([(((([[[[([((([[[((([[((((([[([[[(((([[[(([[(([[[[[(([[[([[([[[[[(([(([[(([[[[(((([(([(([[[[(([(([[[[[[[(([[(([([[[([([([([[([[[[(([[[[(([([(([(([[([[([(([[[((([[[[([([[([([[[([(([[([[[[[[[(([([([[([([[(([(([(((((([(([(([([[[[[([[[([[([([[[([[[[[[((([[([[[[[[([([([[[([[([([[[[[[[([(((([[([(([[[(((([([[[([((([((([([[([(([[([(([([[[[[([(([[(([[((((([((([(([([[((([([[([(([[([[([(([((([[[[[[[[(([[[[([[[(((([[(([[[[((([[([[([(([(((((([([[[(([[([[(([((([[[[(((([[[[[([[[[(([([[[([[(((([(((([[[([[(([(((([([[([([(([([(((([[[([[([[([[([[([((((((([([[[[[[(([([([(([[([[(([[[(([[((([[([[(([([(([[[[[(([(((([[(([[[[([([[(((((([[([[(([([[[([(([[[([([[[[([(([([[[(([[[(((([[(((((([(((((([(([[[(([[[[[[[(([(([[[[([((([[([([([([[([[((([([[[((([[([[([[[(((([[[([((([([[[[[(([[(((((([(((([(([[([(([([[([[[[(((((([[([(([([(([[[([(([[[[[([(((((([(([((([[[[((([[([[[[[[((([[((([[(([(((((([[([[[[[(([[[(([[((([[[((([(([[([([[[((((([([[[[(([[[((([[[((([(([([(([[([([(((([(((([(([([[([[(([((([[(([((((([[[[[([((([([[((([([[([[((([[[[[(([([[[(((((([[((([[(([([[[[[[[[([([([([[([[[[[(([[[(([[([(((([([[[[[[([([[[((((([[(((((((([[(([[((([[(([([([[[([([([[[(([([((([([[[([(([([[([[(((([[(([(([[[[((([([[[[([((([[[(([[(([[[(([([([[[[([(([([([(([([[[[([((((((([((((([[(([[(([[[([([(((([[[[[([[([[[[[([[[([([[(((([(([([((([([([[[([[[[[[([(([[[[([[([((([([[[[[([[([([(([([[(((([((((([[[[((([[((((([((((((([[((((([(([([(((([(([[[([([[[([(([([[[[[([[([[[([[[([(([(([[((([(([(([[(([[([([([([(([([[([[[((([[[(((([[(([(([[[[(((([([(([[(([[[[[[((((([(([([((([[[[(([([[[[[[[([[[(([[([([[[([((([(([(((([[([([[(([[[[([([[((([(((((([[[([((([([[[[[([(((([([[[([([[(([[([[(([((([[[([([[[([([([[([(([([[(([(([(([[([([[([([((((((((([(([[[[[[([(((([((((([(([[[((([([[((([[((((((([((((([[[(((([((((((([[[((([[([([([[([(([(((([[(((([[(((([[[(([[[([[([((([(((([[[[([([([([[[[[[(([(([(([(([[[[[[[(((((((([[[([(([[([([([[[(([([([[[[(((([([([[([[(((([([[[(([([[([([([[[([([([([[[[([([[[[((([(([([[[[([[[[[([([[[[[(([[([[([[[((((([[(([[[([[([[((((([([([((([(([[[[[[[(([([[[((([[(([([[[(((([(([[([[(((([[([((([([[[([([[[([[([([[[(([[([[[[([((((([(((([[([(([([[[[[[(((((((((((([([([[[[((([([[(([([(([((([([([(((([[[[((((([(((([([(([[[[([([((([(([[[[[([(([[[[((([(((((([((((([[[([[((([[[(([[(([[([[([[[((((([[([[((((([(([[([[([[[(([[([[[[([((([[([([([([[[[([[([[[([((([([[(([([(([([[[(([[[[(((((([[[[([(([[[((([(((([([[([(([([[[[[([[[[[(([([[[[([([[[([([([([[([[((([((([(([[(([([[([[[[[([[[((([[[((([[[[[([([((([[(([[[(([([([[[[[([([[([([(([[([[([[[([[[([[[[[([([[(((([([(([[[[[([[[([[[[[[([(((([(((((([[[[(([([([((([[([[[(([[[[[[([[[[([[[[([(((([((((((([[([[[[(([[((([[([([[[[(((((((([[(((([([[[[(([([([[[(([([[[[[([((([[(((([([([([([[((([[[((((((((([(([[[((([[[[[([([(((([(((([[[([[[[[[[([([[[((([((([(([[[[[[[([(([([[((([[[(([([[(([([[[([(([[[([[[[(([([(((([([([([[[(([(((([[([(([[((([([[[([([(((([(([(([[[(([[(([(([[[[((([[[[([([[([[([[[[((([(([[[([([[([[([([((((((((((((([[[[[[(([[((([[[(([[[([[[[[(([([[[([((([(((([[[(([[[[[(([[([((((([[[[(((([[[([[[[[[((([[([[([[([([([[[[[([([(([([([[[((([[[[[[[(([([([[[[([((([((([([[([([(([[([((([([([[[[[[([((([((((((([[[[[[([[[(((([((([([(([([[([[([(([[[[([([[[([[([[[[[(([[((((((([((([[[(((((((([([([[([[([([([([([([[([([([(([([([(((([[[([[([[[(([(([([[[[([(([[[([[((([[[[[[([(((([([[([(([(((([[[[[[([((((((((([([[[[([([([[(((([[((([[[[[(([([([([[((([[[(([(([[[[[[([[([[([((((([[([([([([[[([[[[((([[([[(([[([[[[[[((([[[[([((([[(([([((([(((([((([([[[(([([((([([[([(((([[([[[([([[[([[([([([(([(([([((((([(([[([((([[([([[(([(([((([[([(([(([[([[[[((([[(([[([[[((([((((([[[([((([(([[[[((([((([[(((((([([[(([[[[([[([([[[[([[([(([[[(([([([([[((((([([[([((([([((([[(([([((([(([[([[[[[(((((([[([[([((([[[(((((([[[([[[[(([(([([[(([[[([(((([[([((([(((([([[[[[[[[[(((([((([((([([[([[([[(((([[([[[(([([[((((([(((([[((([([[([((([[[(([[(([(([[[[[[[(([([(([((([[[(([((([[[([[(([[([([[[(([(([[((((((([((((((([(([(([(([((((([((((([([([[[([[(([[([([(([[[([[((([[([[((([[(([[[(((([([[[[(([([[[(([(((([([(([((((([[[(((([[([[[(([((([([[(([([[[[[([(([[([[((([[([((([[(([([(([(([[([[[([[[([([([([[[[[(([(([([[[[[[[[[((([(((([([(([[[(([[((([((([[(([([[((((([[(([(((((([[([[[[([(([[(([(((([[([[[([[([[[(((([([((([[[[[[[[([([[[[([[[([[([((([[([[([[[(([[([([(([[((([(((([((([(((((([[[([([(([[(([[[[((([[([([([[(([(([[[([([([([((((([([([([([[(([[((([((((([[[(([([[(((([[[[[([(([[[[[[[((([(([[([[(([([(((([([([[([[[[([[([[[[[((([(([[([(([[[((((([[(([[([((([[[(([(((((([(([[[(((([([[([([[(([([((((((([[(([(([((([(([[[[[([[[([[((([(((([(((([((([[[[(([[((((([[[[[([([[(([[[(([[[(((([([[([[[(([((([[((([([(([(([((([(([[((((([(([([[[([([([[[(([[[(([[[[((([[[[[([[[(((([[((([[((([[([[[((([(([(([[(((([([[[[((([(([([([[([(([((([(((([[[[([(([([((([([[(([(((([(([((([([[[[(([(((([(((([[((([([[[(([[(([(((([[[([[[(([[[[(([(((((([[(([([([[(([([[[[[([[([([[[((([([[((([[(([[[((([[(([[(([(([[[[(([[[[(([[[[[[[(([[[[[[(([[([([(([[([(([([[[([[[([[([([[([[(([[[([([(([([[((((((([[([[(([[[([(([(([[[(((([[[[([[[[[[[[[[[[[(((((([(((([[([((([(([[([[([[((((([(((((([[(([(((([([[[[[((([[[[(([[[(((([[[((((([[[[[[[([[[[([[[(([([([[([[[[(((([[[[((([(([[([([[(([[(([([[[[([([[(([([(([[[[((([([(([[[[[((([(([[[([([[[([[([[[[[[[[[[[[(([[[[[(([[([[([([((([[[([[(([([([([((([([[([(([([[(([[(([(([[[([((([(((([[([[([(([(([([([[[[([(([[([[(([[[([[(((([[([[(([([([((([[((([[[[[([([([(([[[[[([[([(([((([[[([[(((((([(([[[(([(([(([[[([(([[([((((([[[[[[[((([[[[[[[[[[([([((((([[([([([([[[[[((([((([[[[([(([([[[([([[(([(([[([[[((((((([([[(([[([(((((((((((([(([[[((([((([([[([[[[[(([([(([((((((([[[[((([(([[([[[(([(([[([[[((([((([([[([[[[(([([([[[[[[([[[([((([[[(((([([([(([(([([(([[[[([[([(([(((([[[(((([((([[[[([((([[[[[(([(([([[([[([[([([[[[([(((((([(([((((([((([([((([([[((([([(([((([[[[(([[[(((([[[[([(([([([[([([[([[[([([[(([(([[((((([([((([[(((([[(((([([(([[(([([([(([[([[[(([(([([[([([[[[((((((([([(([(([([(([(([([[(((([[((((([[[(([[[[[([([[([[[(([(([[[[(([([((([([(([(([[(([((((([((([([([(((([((((([(([(([[([[([[(((([(([(((([((([[(([(([[(([[((([[[([[[[[[[[[(((([[((((([([[[[[([(((([[((([([([(([[([([(([([(([(([(((([([((([[(((([(([([[(([([(([[[(([([(([[[([[[[[([(((((([([[(((([(([([(([[([([([(([((([[((([(([[[([([(([((((([[[(([[[([([(([[([[([[(((([[([((([([((([(([[([[[((([(((((([([[[([(([[([((([(([[[((((((([([([[([[[([[[([([(([([[[[[[[((((([([(([[(([[(((([((([[(([([([(([([[(([[([[[[[[(([[[(([[([[[[[[[[[(([[(([[[(([[([((((([[[((((([[(([((([[[((([[(((([([([([(((([([([(([[[((([([[([[[(([[([([(([(([(([([((([[[([([(((([([[([([[[([[(([([(([[[([[([((([[[[[((([([(([(([[([[(([[[[[[[[([((([[((([(((([[([[(([[(((([[(([[(([[(([([(((([[(([((([[[[[[((([[([[(([(((([[[([((([([(([([(((([([([[((([([[[[([((([((([[[[[[[[[([[([[(([[[[((((((([([([[[[[([[[((([[(([([[[(([([(([([(([[(([((([[([[([[[[(([[([[((((([(([[([((((((([(([([[([([([[[[[[(([[(([[((([(([([([[([([[([([[[([([[[[([(([[([([[[[[((([([[[[[(([[[(([[[(([[([[(([((([((([(((([(([(((([[(((((([[[([((([([([([(([([[([[([(([(([[[((([([(([[[[[([[([([([(([([[[[[[[[[[[[(([([[[(([[[[([([[([((((([[[[[[([((([([(([[((([[[([(((([[[[[[[[[(([[([[[[[((([[(([(((([([(([[[[(([[(((([(([((([[[[[([([[[([(([[[[[([([([(([(((([([[[(([[(([([[([[[(((([(([[(([([[([([(([([(([((([((([([[[([([(((([[([[[[(([((([[(([[[[((([(((([[((([(([(((([[[([[(([([[((([([([[[([[[((([[([([(([[((((([([[(([(([([([[[[([(([[[(((([([[([[[[(([([((([([([(([[[[[([[[[[[(([((([[([[(((([[[((([([[(([[([([[[[(([[[[([[(([([([[[[((([[(([[([[[([(([([[[[([([[[[([[((([([([[((((([(([([[[([[(([((([[[(([[[[[([((([[([((((((([[[[([([([(([[((([[([(([([(((([(([((([[[[[[(([(([[(([[(((([[([([([((((((((((([(([([[(((([[((([[([[(([[[(([([[((([[[((([(((([[[[[(([([([[[[([([[([([[([((([(([((([[[([[((((([[([([(((([(([[[((((([[[[[[(([([[([[([[[([[[([[[[[([([([([[[([[((((((((([([([(((((((((([[[[[([(([([[((((([(([[[[[([[(([[((([([([([((([[([([((((((((([([([[[[[[(([([[([[[[[([([((((([((([([(([([[([(([([[[((([[(([[([([([([([([(([([[(([[((([((([[[([[([(([[(([[(([[([([[[[[([[([[[[[([[[(([[[(((([([[([[[([([[([[[[([[(([[(([([[([[((([[[[[([([([[(((([[((([[[([([[[[[[([[([[[[[[[[(([([[([((((([[[[([([[([[[[[[[[[[[[[(([[[([[[(([[[([[(((([([([[([([[[([(([([([[[((([([[[((([([((((((((([[((([(([((((([(([([[[((([((([(((((([([[([[([[(([[([((([[[((([[[[[[((([[([[[[[([[([[([[([[[((([((([(([((([[([([((([[[[[[[[[[((([((([[[(([[[([([[(((((([[[[([([((([([[[(((([(((((([[(([[[([((([(([[[((([[((((((([((([([(((((((([(([((((((([(([[(([([([([[([[([((([[([[[([[(((([(((([[[[([[([[[((([[[[[[[[[[([[[[[((((([([((([[(([[[[[[([[(((([[[[((([[[[[[((([[[([(([((((([[((([[[[((([[([(([[(([[[(((((([[([(([([[(((((([[(([[[[((([(((([([(((([([[(((([[[[[[((([((([[[[(([((((([(([[[(([[[[((([[([[([([[([([([[[((([([[[((([([([[[[([(([[(([[[[([[(([(([[[(([[[[[([([([((([((([[[[(([[(([[[((([([[(((([([([([(([[(([[[[(((([(((((([(((([(([([(([([([[[((([[([[[[([[[(([((([([(([[[[([[[((([[(((([(((([[((([[(([([[[[([[[[(([([([[[[[[([([(((([((([([[[[[([((((([((([[([([([[(([[([[([[([(([[[[[((((((([([[([[([[([[((((([[([[[([((((([([([((((([([[[([[([[(([[([([(([([([((([([[(([[[([[[[[([([[([[[[[[(([[[[[(([[([[[[[(((((((([(([[[([([[[((((([([(([([[([[[[[([([([([[((((([[([(([[[[(([[(([[([[[([[[((([[(([([[[[[((([[[((([([([(([((([([(([[[[[([((([(([[[((((([(([[([[[([[[(([((([[[((((([[([[([[([([([([[[[(([[[([(([[[[[([(((([[[[[(((((([(([(([[[[((([([[[[[((([[((((((([[([((([[[[[(([([[([(([[(([([[(([([[(([[[([((([(([([[[(([[[[(([((([[[([([[[[([[[(((((([[([[(((((([[([[[[(([[[[[([([(((((([[([[([((([[[[[[[[[(([((([([[([[[([[[([[(([([([[[[([([([([[(([[[((([[(([[([[([[[([(([[[(([[([[[[([[[([[[[([[[[[([((([([([[[[[(([([([[[([[[((([([([([[(([(([[((([[((([([((([[[[[(([[[(([[([(([[(([((([[[[[[(([([((([[[([(([((([[((((([[[(([[(([([(([[[[(([[(((([[[[[[[[([([([([[(([[([([[((((([[[[[([[[[[[[[[[([(((((((([[[([((([(((([[(((([([([[([[[([[([([[((([[([([([(([[[[[(([([([([[[[[(([(([[((([(([([([[(([[([[[[[[[(([([(([[(([[([[(([([([[[(([[[((((([([([[(([([[(((([(([[[[([((((([((((([([[([[[(([(([([[([([([[([[([[[((([[(([([([[(([([((([[[([[((([[([[(([[(([([[[[((([[[[([(([[[(([[[(([[[[[[(([[[(([((([((([([((([([[([(([[([[[[(([[[([([[([([([([([[([[[[([[((((([([(((((([(([[[((([[[([[[[([([[(([(([([[([([[[[(([([([(([[((([[[[[[[[[[(((([(([([[[(([[([[[[[(((((((((([([([[[([[((([[(([[(([[[([[([([[((([((([([[[([[[[[[[([[[[[[([([((([([((([([[([(((((([[[(([(([[[((([((((([((([[((((([([([([[([[(([((([([(([(([[[[[([([[[[[[([([([(([([[[([[[[[[[((((([((([[[(((([(((([([[[[([[[(([([([(([[[(([([(([[[[[((([(([(((((([[([[([[[(([[(((([[[[(([([([[[((([([(((((([[[([[([(((([[(([[([((([([([[([[((((([[[([(([([(([[([[[([[(([[(([([([[([[(([([([(([(([((([([([([[[[(([((([([(([[[[((([([((((((((([[[([([[[[[[(([[[[([([[([((((([([([([[([[([([([[[(([(([([[[[([((([[[([[[[([((([[([(([[((((((([([[[([[[(([[[[((((([[[[([[((([([[([[[[[[([[([[([(((([([[[(((([([[[[([([[((((((([(([([([[((((([[(([([[[[[([[(([([[[([[([[[[((([([(([[[(([((([[[[((((([[([[([[(([([[[((([(((((([[(([(([([[(([(([[[[[[(([[([([[[[([([[[([([[[([([([[[[[[(([[(([([(([[[([(([(((([((([[[[((((([[[[[((([(((((([(([((((([(([[(([[[(((([([([(([[([[[([(([[(([(([[[[[[[([([(([[(((([[[([([[[([[(([[[([[[(([([[([[(([(((([([([[[([([((([[([[([[([[[(([([(([(([[([[[[[[([([[[[(((([[[[[[((([[[([((([[[((([([([[(([[(([([[([[(([[([[[[[([([((([[([[([([([[(([[[(((([[[((([[((([[[[([([[[((([((([((([[(([((([([(([[([(([([[[[[([[(([([[([[((([[[[([([[[[(((([[[((([(((([([[(([([[(([[([[[([[[([[([[[([[[([([[[((([((([((((([[((([((([[(([[[[([([[([([[[[((([([([(([([(([(((([((([([((((([[[((([[([(([([[[[([[([[[[((([[[[([[(([(([[(([[[(([(([((([[[[[[((([[[([[[[[(((((([((([[([([([[[([[[(([([[[((([[(([([([((((([([[[[[[([([[[[[(([([([((([[[[[[(([(([[(([([([[(((((([[(((([[(([((([[((([[(((((([((([[[(([[[((([([(([([[((((([[[[([[[[[([([[[[[((([([[[(([[([[([(([(([(([([[[[((((([([(([[[(([[([(([((([[([(([[((([[[([(([[([[(([[[[([[(((([[((([[[[[([([[([((([((([[([[[[([[([[[[(([[[((([(([(([[[[(([([([[[(([[([([([[([([((([([([[([[[[[([(((([[(((([[[[([([(((([[[[([[(([([[[[[[((([([[[[[(([[[(((([(([([(((((([[([[([[[[[[[[[(((([[(([[[(([[([((([(((([[[((([(([(((([[([([[[(([(([[(([(([[[((([((((((([[[([(([([[[(((([[([((([(([((([([(([([([(((([[((([(((([((((([([[[[(([[[[(([[[[[([(((((((([(((((([([[(([([[[([(([[((([([(([[([[[([(((((((([[[(([([[[([[[([(([[[[[([[([([([(([[(([((([([[[([([([(((([[([[(([[[[[[(((([[[[(([[(((((([[[([[(((([[[([(([(((([((([([[([[[([[([([(((((((((((([[([([[[[[[([([[[[(([[[(([[[((([[[([([((([(((((([[(([([[[[[(([(((([[[[[([[([[[[[(((([((([([([[([[((([[([(([([([([([([[([(([[([[[([((([[((((([([[([(([((((([(((([([((((([((((([[[[(((([([([([(([(((([([([[[[(([((([((([([[([((((([([(((((([[(([[[(((([([[((([([[([[(((([[((([(((([[(([[((((([(([(([([[[((((([[(([[[[[[([([[[[([[((([[[[([((([(([[((([((([(((([[([([[([[([[(([[([[[[[([[[([[[[((([[[([(([[(([[((([[[[((((((([([([[[((([(([([[[((((((([[((([((((([[[([([(([(([[(([[[[(([(([[(([[[[((([[(([[[(([([([[[([(([(([[[([([((([[([[(([[((((([((((([(((((([[[(([[(((((((([([[[([[(([[[[([([[[((([[([((((([[[[(((([(([[([(([[([[[([[([[[((([[((((([[[([[([[([(((([([[([((([(([(([([[([([([(([(((((([([[([[([[([(([((([([([((([(([[[[[[[((([((((([((([([(((([([([[[([[(([[((((([[[[(((([([([([[([[([[[[([(([((([(([((((((([([[([[[([[(((([[([[[[[(([[[([[(([[[[([(((([(([[[([([[(([[([([[[[[([[([(((([[([[[[(([[([[([(((([([[([[[([[(((([(((([[[[([((([([[(([[((((((([[[(([[([([(([[([[[(([(([(([[([([([([((((([[[([(((((([([[([((((([(((((([[(([[((([[(((([[([([[([[[[(((([[([[([[[([(([[[((((((([(((([([[[(([[[([[[([[(([[((((([[(((((((([([(([[[([[([([([(([[[(([[[[[(([[([[([[[[((([[[[[[[([[([[[([[[[([[[([[[([[([[[([([([((([[[([((((((([(((([[([(((((((([([[[[[[[[[[[[[[[[([[((([(([[((([(([([([([[(((((([[[[([[[[[[([(([([[(([[[[[(([(([([[([[([(([([[(((([((([([((([([(([([([[((([((((([[(((((([([[((([([[[[([(((([[((([[[((([[[[([([([(((([[([([[[[([[[([[[([[[([[[[[[[((([(((((([[([[[([([[([[[([[[[[([[[([(([((([([(((([[([[[([(([[[([([[[[[[((([[[((([[(([[([[([(([(([([((([[(([([((([[([([[([([[([[([(((((([([[([[(((([(([[[[((((([((([[([[[((((([[(([(([(([[[(([[((([([[[(((([((([[([(([([([([[([[[[[[(([((([((([[((([([([[(([(([[[([[[[[[[((((((([[([((([[(([[([[[[[((((([[[((([([[[([([[[((([([([([([[[((([[([[([[[([([[[[([(([[[[([([[((([([((([[[[[[[[(([[[[([[([[[[([([[[[((([([[[[[((([(((([[(([[(([([[(([[([([[([[[[((([(([[[[[[(([[[[[[[[([([(([[([([[[(([(((([[[([([((([[([(([[([[((([[([((([[[[([([([[([((([[((([(([[[[[[(([([[([([[([[((([([(([[(((([[[([[(((([[[[(((([(([[[[([(([[([((([[[((([[((([(([[[(([([(((([((([(([((((([(([[[((([([(([[([[((([[(([[[(([((([[[(([[[[[([((([([([[[((([([[[[([[(([([((([[(([[([(((([[[(([[[(((((((([([(([[[([[[[([[[[[[([([[(([([[([[[([(((([(((([[[([([([((((((([[([[((((((([[[(([([([([([[[[[([[[((([([[[[[(([([(([((((([([[[(([[(((([[(([([[([[((([[[([[(([(((((([[[((([(([((([[(([[([([((([[((([[([([([[[([[[([([((([(((((([(([((([([[([(([(([([[(([([[[[([[[[([([([[(([[[[(([[[([(([[[[((((([([(([(([[(([[(((([[([[(((([[([([(([[[[[[[([((([[([[(([[[[((([[[[(([[[[[(((([((([[[([((((([([(([[[[[[(([(([[(([([[[[[[[[[[[[[[[[((((((([(([((([[[([([[([(([([[[(((([(((((([(([[([[(([(([[([((((([(([([([[((((([(([[([[[([[[([[((((([[[[(([(([[((([[[[(([[((([[([([(([[[[([[([[[([((([[[((((([[(([([[([[(([[([[((([([(([([((([[[(([[[[[([(([([[([([[[[[([(([(([[[[[[[((([[[[([([[([([(((([(([([[[[[([([([[(([(([[[([[[([[((((((((((([([[(([([([(((((((((([[[([[[[[[[[([[[[(([[(([[[(([[[[[[([(((([(([([(([[[([[[((([[((([(([((((([[[((([([[[[([[([(([((([(([([((((((([([[[[[([([([[[(((([[(((([((([[([([[([(([([(((([([[[((([([(([[[[[(([(([[[([[[[[[([([[[(([[([[[[(([[[((([([([[((((([[(([[([[[[[[[[[(([((([[[((((([([[[([[[(((([([((((((([((((([[[[[[([[[[[[[([[(([[([[(([((([([[[(([[[[[(([[(([([[((([((([[([([((([([(([([([(([[(([([([([[[([([([[([[([([[(([([[[[([([([([((([(((((([[[([(([[(([[[([[[[[(([[[[[[[([[(((((([([[([([([([[([[(([[[(([[[[[([((((((([(([[((([(((([[[(([[(([([[[[(([[[([([[([([[(([[(([([((([(([[((([[[([[(([[[(((([[(((([([([(([[([([(((([([([[([[[([[([([[([[((((([((([[([([(([[[([[[(((([[(([(((([([[[[[((((([[(([((([[[[[[([([([[[([[([(([((([[([[[([[[([[[[(([[[[[([(((([(([[([([[([[(([([(((([([[[(([[[[([[([[[((([([[(([[((((([([([([(([((([[(((([(([[[[[[([([[[(([(((([(([[[([[[(((([[((([[(([((([(([[([((([((((([(((((([[([[([[([[[[((([((([[([([([(([[((([([[((([[(([(((([[(([[[(((([[[[(([[[[[[(([(([[(([[[[((([[(((([((((([((([[([[[([[([([((((((([(([(([[(([[[[([[(([[[[((([([((((([((([([[[[[(((([(([[[[([((([(([([[[([[[[((([([(([[[((([[[[[[([((((([[[[[[([((([[[(([[([[[[[(((([([[([[([([[[[[[([[[(([[[[([[((([(((([[([[[(([[([([[[([((((((((((([[((([([(([(([[((([(([[[([(([[[[[(([([([[([([(((([[([[([(((([([[[([[(([(([([(([[(((([(([[[(([((([(([([[[(([(([[[([[[(((([[[[[[[[[(([([([(([([((([[((([[[([[([[([[([([[[[([(([([[[[(((([[[[([((([[[((([[[([[[((([([((((((([[([[[[([((((([[([([[[((((([(([([(([[[[[[[(([[[([[((([[([([((((((((((([([([[(([([(([[(([((([((([([[(([((([[([([(([[([([[([[(([([[[(((([[[(([((([[((([(([([(((([(([[[[((((([[([((([[(([[[[((((([[((([[[((([[[[[(([[(([[([(([[([[([[[((([[[(([([[([[[[([([([(([[[([[([[[(([[[([[([[([[([([([([[[[[[[[((([[(((([([[[[(((([[[([[[[([([[[((([((([[([([([[([[[[([((([[([((([[([[[((((([[[[[([(([[([[(([[[[[([[[([[((([(([([[[([[[[([[[(([([[[(([[[([((([((([[[([((((([[(([([([[[([[([[[(([([[([[([(((([[((((((([[([((([[(((([(([[((([([[([([[(([[(([((([([[[[(((([((([((([[([[([(((((((([(([[(([([[[(((([([[(([[[(([((((([[[[[[((([([[([[([[([([([((([[((((((([[[[([(([[[((([((([[(((([[[(((([(([(((([[([(([(((((([[[(([[((([[((((([[([[[((([[[[(([[[([(([[([([[[[[((((((((([[[[[[([[[[[([[([([[[((([[[[[[((([([[([[([[(((([[(([([[[(([(([(((([((([[[[[([(([((((([([[([[([([[(([[[(([[([([[[([[([(([([([[(([[((([(([[[([[(([[([([((((((([[((([(([[[(([([[[[([[([((([[([[[([[[(([(((([(((([([([([[[[[([[[[((([[[([[[([[([[([[[(([[[((([(([([[[([[(((((([([[([[(((([[(([[[(([((([(([((([((([((([[[(((([[((([[[[([(([[[[[([[([[(((((([([[[[[([((([((([[(([[((([((([[([[(((([([([([([(((([(([([([[[([(([([[[[[[([[[(([([([((([([([[([[[[[[([[[[[(((([(([((([[[(([(([[[((((([[[[((((((([[((([[([[(([[(([((((([(([(([[[((([[([[[(([[[[([([(([[(((([((([[(([[[[[[[[(((([[[([[[[(([(([[[(([[(((([(([([(((([[((([([[[([(([((([([([[[(([([[[[[((((([[[[(([[([([([[[([[[((([[([[(([[([[[([(([([([((([[[([[([([(([[(([([(([[(([([[([[[[([([([([[([[(([[[((([(((((((([([[([[[([[[(((([[([(((([[((([[(((([[[[(([[[[([[[[[[[(([[[(([[([([(([[((((([[[([[([([[[[([[((([[([[[([((([[[((((((([([(((((([([(([[(([(([([([[((([(([[[[[(([([[[[[(([[[(([(([[[(([[[[(((((([(((([((((((([[([(([[[[[[[[((([[((((([([[[([[([([([(([[[([(((([[(((([[((([[[([[[([[((([(([[[[(([([[[(((([([([[(([([(([[[[[[(([[([((((([[[((((([(([([[([([(([[([[[[[[[[[([[(([[[[[([((([([([[(((([([([[([[((([[(([[(((([[(([[([([([([([([[([[[(([[[([([[([(([(([([[([[[([[(([[([([(([[([(((([([[(([[[((([[[[[(((([[((([[([[[[([([[([[[([[((([([(([((((([((([([[[[[((((([(([((([(([[[(([[[[([[([[[([[([[[(([(([(([[(([(((([(((((((((((([[([(([([[([((((([((([[((([(([([([[[[[([[[(([([([[[[(([(([(([([([[[[[(([[(((([([([[[[([([([([[[([[[[([((((([[[((([[[([[[[((((((([([[[[[[(([([[[((([(([[([[((([[[([[([[[[(([[([[[[([((([([[[[((([((((((([[[[((((([[[(([(([[[([[([([[[([((([[[[([(((([[[[[[([[(([([(([[((((([[[([((([([[[[([[([[[([([(([([[[(([([([[((([([[(([[([[[[[[[[[(([[([([(((((((((([[([([[([[([([([([[[[[(([[([[([[([(([([[[[([[[([(([([[[[([[[((([[(([[[[([[[[[[(((([[([[([[((((([[[([([[[((([[(([[([[[([[[((([[((([[((([[[[([(((([[([([[(([([((([([[[((([(((([[([[[[([([([[[[[[([((([[[[[[([[(((([[[[([([[([(((([((([([[[[(((((((((([[[([[((([([[([([[[[([[([([[([[[[([([((([([(([[([[[[[(((((([[((([(([[(([[[[[[(([[[([[([[[([[(([(([[((([[([([(([[[[[[(([([[[([[[[(([([([[([([((([[[[(([([([(((([([([[(([[(((([([[((((([[([[[(([([[[(([(([[[(([[([[[([[[(([([([(([[[([([[[([[(([([[[([(([[([[[[([(([([[[((([[([[[[([[([[(([([([([([([((((([([[(([[([([[[((([(([([([[([[([([([(([[([[[[[[[[[[([([(([[[([((([((([([[([[[[[([(([[(([([[[(([([[([[([[[[([([[[(([([[[[[[((([[((([[[([([([((((([[(((((((([([[([[[[(([[([[[(((([[[[[([[[([((((([(([[((([[[[(([[((([((([[[[(([(((([([(([([(([([[([([((([[[(([([[(((([[[(((([[((([(([(((([(((([[([[[[([(([((((([(([[[[[(([([[[[([((([[[([(((([[[([([((((((([[([(([[[[[[([([[(([[(((([[[(([[([[([([[[[[[([([(([([[([[[([[(([[(((([((((([([(([([([([[[([((((([(([[([([[[(([([[([[[[([(([[[([([([[[([[[((((([[([((([[[(([([([([[[([[[((((([[((([[(([[((([([[(((([(((([[[(([((([[([(([((([[((((([([[[([([([((([[([((([[((((([(([(((([[[[[[(([[[[([(((([[[(((([[((([[[([[[[([((((((([([[[[([((((([((([(([[[([(((([(([([([([([[(([[[((([(([([((([[(([[(([(([(([(((((([(((((([[[(([[[[((((([[(((((([[[([(([[[[[([([(([(((([[((((([(([[((((([([([[[[[[([[(((((([[((([([(([([[([(([[(([([[[[[((([[(([[((([[[([([((([[[([(((([[[[(([([(((([(((((())))))]))))])]))]]]]))))])]]])))])])]]])))]]))]])))]]]]])]))]]))])]])]))])])))]]))))))]])]]]]]])])])))))]]))])))))]]))))]))])])]]]]]))])]]]))))))]])))))]]]]))]]]))))))]))))))]))]))]))]]))]])))])]))])))]]]))]])])])])]))]))))])]]]))])))])))))])]]]])])))))))])]]]])]]])))]]))))]]]))))])]]]]))]]]]]]))))]))])))))]])))])]])))])])])]]])])))))]])))]))])]])))]))]]]))))]))))]])])))]]))]])))]])))))]]])]]])])])]))]]])))])]])))))]]])]]])])])]]]))])]]]])]])]))]]])])]]))])))))])]]])])])]))])])))))]))))]]))]])]]])]])]))])])]]]]]])])]])]]))]]]))))]]))]])])]]]]]]))])]])))))))])])]]]))))])]]])))])]]]])]))]]]]]))])))))]))])]]]])]]))))]))))]))])))]]))))]]]))))]])]))]]])))])])]])]))])]))])]))))]))]]]])))])))]]))]]]])))]]))])))))])]]])]]]]]))))]]])]]))]]]])]])]))))))))]])))))])])])]]])))]])))]]]]]])]))]]])])]]]])]])]])]))]]])]))]]))])]]]]])]])])))])))])]]]))])])]]]]]]]]]])]]))])])])]])]])])]))])))]]])])]]))]])])))))])])])])])]))]])]])]]]])]])))]]])]))])]]]])]]))])]]])]))]])]]])])]]]))])])]))]]])]]])]]))]]]))]))]]])]))]]])]])))))]])]))))]]))]])])]))))])])]))]]]])))])])]])])]))]]]])]]])]))]]]]]]))])])]])))]]))]))]])]]])]])]]]))]]]]]]))]]))])))]]))))))]]]]])]]))])])))])])]]]])]])])]])]]]])])]])])))]])]]]))))))))))]]]])])))]))))])]])])]]]]))))]])]]]]]])))])]]]]]])])])]]]])]]))))])))]]])])))])]))]])])]]))))])]]]])))]])))]])))]]])]]])]]))]])))]]])])]]])))))]])]])]]))))]]]]]])]]]]))]])))]]])]]]])]))])]]])]]]])]))])]])]])]]))]]]]])])])])]])]])])]]))))))))))])])]]))]]]]]]]]])]]))]])])))]])])]))]]])]))])])]]])]])]]]])])))])]]])))))]]))])]))]])]]]]]]))))])]]]])))])]]])])]])]]]))]))]]])))))]]]])))))))])))]]]])])))])]]]])]]))]]]])]])]]])))]])]]))])))]]])]))]]]]]])])))))))]]]])]]])))]]])))))])]]]])]]])])])])]]]])])]))))]]))]]]]])])]))]))]))]]]])])]))]]])]]]]])])]))])))]])))])))))])]])]))])]]))))))))))))]))))]))]]))]))]))]]])]])]]])]])]]]]))]]]))])))]))])))))]]]]])])))])))))]))])])))]])]]])]])])]]]])]])))]]))))]]]]])))]]]))]])]))))])]]))])])]]))]])]]])]])]))]))])]])])]]]))]]])]])])])])])])]]))]]))))]]))]])))]])]])])]))))]])])])))])]]]]]))]])]]]]]]]]])]]))])])]])]))])))))]]])))))])]]))]]]]]]))])]))]])])]))))]]])]))]]]]))])))]])]]])]]])))]]))))]]))))])]]]))])])])]])]]])])))))]])))]]]]]]]]))])]])))))))]))))]))))))]]]]))]]]))]))]]]))]]]]])]))]]]]]))])))]])])]))]))]]))])]))))))])])))))))]]])))])]]])]])))]])]]]])])]])]]])))))]]))])])]]))]]]))]]]]]]])]]]]))]]]]))))]])))]]))))])]]))))]]])]]])]])]))))))))])))]]]))]])]])])])])]]]])]])]))]]))])]))]]))])])]])]]])))])])]))])]]])]]))]])]])))]]])]]])])])]]))]]]])))))]]]]])]))]]])])])))]))])]]])])))]]))))])]))]))))]]))]]]))]))]]]])]]]))))]]]]]]]]))]])))]))))]]))])])]]]]))]]])]])))]]]))]))])))))]))]]))]])]])))]])))))))]]]])))))]]]))]))]]])))]))]))))]]]]])]]]]]])]])])])))])])]))]]])]]]]]])]))])]]])])]))]))))])])])])]))))]])]])))])))]]))]])))])))])]]]]])]))))))]])]])]]]]]))])]]]])))]]))))]]])))])))])))]))])))]))]]]))]]))))]])]])]))))))]])]]])]))])))]]]))]]])]])]])]]])]]])))]]]])]]]]])])])]))))]))))]))]]])]]])]])))])]])]]]])]))]]]))])))]])))))))])])]]))]])]]]))])))]]))]])])]))])]])]]])])]]))]]]))]])])]])]])])))))]))])]]]]])))]))))]))]))]]])]))]]))))]])]])]])])))]]]]]])))]]])])]])]]]]])]]]]]])))))))))]]]]])])]]))])]]]))]]]])))]]])]])))))]])))]]))]]]))))))]))])]]))))]))]))))]]]))))]])))])))]]]))])]]]])))))))]])))])])])]])]])]])])))]]]]]])))))]))]]]))]])]))))]]])]))]]))]))))))))])]])]])))])))]))))]]]])])))]))]]))]])])]])])))]]))]))))]])))])]])))))))]]))))])]])]])]))]]])]])]]])])]))]])))))])]]])))])))])]]]))]]])]))]]])]]]])]]])]))])))]])]]])]]]]]))]])]]))])]]]]])))))]]])]])))])]])))])]]]])]])])])]])))])))]]])])]]]])]]]))))]]]])]))))]])))]]]]]]]])])])])]])]])]])]]]))]]])]])]]]))])])])]]]])]])]))]]])))]]])]])]]))])]]))]]))]]]]])))]]])))]])))))]]]]))]])))])]])))))]]]]))]))))])]))])))]])))]))]]]))))]]])]))]])]])])]]))])])]])))]))]])])))])))]))]]))])]))]])])])))))))))))])])]])))]])]]]))]]]]]]]))])]))])))))]]])])]])))))])]]]])]])))))))])])))]]])]]])))]]])))])]]]]))))]]]])]))])]]]])])]])]])]])]]])))]])))])]))])])]))]]]]]]]]]))))]]])]]]))]))]]])]))])))]))]]]))]))))]]))])]))]))]])]]])]))))])]])]]))))])])]])])]))]]]]]))])]]]))])))]]))]))])])))]])))))))))))])]]])])]]))]]])]]))))])))]])]]]]))]]])]]]]]])])]])]])]))))]]]]])]]))]]])))])]]]]]])))))])]]]]]])))]]]))])])))]]]])]]])]))])))])]]]]))]))))]]]]])])))])))))])])))]]]]))]])]]]]))]]))]))])))))))])])]])]]])]])))])))))]))))]])))]]]]))]]))]))]]]]]]))]]]]))))]]]))]]))))]))]])))]])])))]]))])])])]])))])))]]]])]])]])]]))))))])))))])))])]]))])))]))]])))]]))))]]])]]]))]))))]))]]])])]]]]]]))]))))]])))]))])])])])))))]]))]])])))]]])]])]]]]))]]])]))))])]))]])]])])]]))]))))])]]]]]))]]]])]]])]]])]])))]))])]])]]])])])]]]]]])))]))]])))))]]]]])]))))]))]]))))]]])]]]))])])]])))])))))]])]])])]])]]])]])])]))))])])]]))])])]))))]]))))]]]))]])]]])))]]))])))])]))]]))]])])]])])]]]))]]]])]))]]))]]]))))])))]]))])))))))])]]]]]))]]]))]])]])])])])]])]))))))]])]]]]]]]))]]]]])]]]))]]))])]]]))))))])))])])])])]]]])]))]])])]])]])])])]]])])])]))]]))])])]))])])))])])]])))])))]])]))]]))]]]]]))]]])])))]))]])]]))]])]]]]]]])]]]]]])))))])))))))])]))))]]])]]])])))))]]])))]))]]]]]]]]])]]))]])))))]])])])))]]]))]]]])]]))]]])])]]]]]])]]]))]))]]]]]))])])))]]])]))))])]))])]])])]])))]))))]]))))]]])])])]]]]])])))))))])]))])))]))])]])]]]])])))]]])))))]))])))]])))]]])]]]))])]))]))))])]]]]]]))]]]))]]))]]]])]]]]]]]])]]]))))))))))])])]))]])])))))))))))]])]]])]]]))]))]])])])]]]]])]))]))))])])]])])]]]])))]]]]]]]))]))])]]]]])])]])]))])]]]]]))]]])))])]))])])))]])]]))]])]])]))]])))))]]])))])]]])]])]]]]))])])]])))]]))]]]])))]]))]))]]]])))))]])]]])]]])]]))])))))]])])]))])))))])]]))]))]])]]))]))))))]))))]]])]))])]])])]]])))]))])))))))]]]]]]]]]]]]]]]])]))]]))]))]]]]]]))])])))))])]]])))]))))]]]]]))]]]])))]]]]))]])]])))])]]]]]]]))])])]]))))]])]]))))]]))]]))]))])])))))]]]]))])]]]))]]]]))]])])])]]]])]]]])]))]])]))]))])]])])))]))]))))))])))])])]]])]]])])])]])))]])))])])]]))]])))]))])))]]]))))))]))]])]]])))]])]])]))]]))))]]))]]])])))))]))])]))]]]]])])))]]])]]]]])])])])]))]]])))))))]])]])))))))])])])]]]))))]))))])]]])]])]))]])])]]]]]])]]]])]]]))])]))))))))]]]))]]]))))])]]))]])))])]))]])]]]])])))]]])])])))])]]]]]))]]])))]))]]]))]])))]])]]))])])))]]]))])))))]))])))]))))])]))]]]))])))]])))]]])))])]]))])]]]]))]))))]]]]))))]])]]]))))]]))])])))]])]])])]])]))]]]]]]))])))]])))])]])])])]]]])))])]])))]])]]))])]])))])])]]]))))]))]]])])]]))])])]]]]]]]]))]]]]]]))])))]]]])]])])]]))]])]))]]))]]))))])))]]]]])])))]]]])])]]]])]])]]]]))]]]]]]]])))])])))]])])]]]]))])]]]])])]]])]])]])))]]])])])])])))]]])])]]])])))]]])))))]]]]])]]))]])))])]])))))))]]]]]]])]]]))]))]])])])))]])))])))]))]]]]]])]])])])]))])]])))]))))]]])])))]]))]]]))]))]))]])))))]]])]])))])))))]]]]))]))))]])]])]))))))])]])]])])]])])]])))])]))]])))])]))]))])]])]]))]])))]]])))]]]]]])])]]]))])]]])]]))))])])))]))])]]])]]]]])]]])]])])]]])]]))))))])))]]]]]]])]]])]]])]]])]]]])])]]))))])])])]]]])))]]])))]]))))])]]]])])))]])]))))))]])))))])))]])])]))])])))])])))]))))]])]))])]])]])]))]))]]]]]))]])]))])]]]]]])]]]]))))))]])])])]))])))]]))])))]])]]]]]]]]]]]]]]]])]))))))))])]]))))])))))))])]]])))])])])]]])]])]]])]]])]]]])]]])]])]]]]]]])))]]]])]])]]))]]]]]))]]]))])])])]])]]]))])]))))))))]])))))]]))]])]]])]]]))]]])]))))])))))))]]]))])]]])]])]]))))]]]])]])])]]))))]])))]]))]]))))))])))))])]])]))))))])]]])))))])])])])]]))]))]))]]])]]))])])]]))]]])))))))]]))]])])))])]]]]))))]))))]])]]])]])]))))])]])]]))]]]])]]))))])]])]]]]])])]]))]])])]]]))]))))])]]]]))]])]]]))]]]]])]]))))]])]]])]])])))))))]))])))]))])]]]])]])]])])])]))))]]]])))))]]))]])]]])])]))))])])))])))))])))]]]]]]]))])))])])])))]))])]])]])]])]))))))]))])])])]])]))]))])))])]])]))))])]])]])]]])))))]])))]]])]])]]])]]))])]]))]))))]]]])))))])]])))]]])])]]]]))]])]]])]))))))))]]))]]]))))))])))))])))))]]))]])]])))])])]]]))]))])]]])])]))]]]))]])))]]]]))]]))]))]]]]))]]))]))])])]]])))))])))]])))))))]]])]))])))]]])])])))))))]]]])))]]))]]))])]]])))]]]])]]])]]]]])]]))]])]])]])])]]))))])))])))]]))])))])]]]])))]])]]]])])]]]]]]))]])))))]]])]))]))])))))]]))]]))))])))]]))))]])]])])))]])]))))]]]))]]))))))])])))))])]])])))])))]))]]]])])]))))]))])])])]))))]]]])))))])))))])]))))])))))]))])]])])))))]])))])]]])]]))])]])])])])])]))])]])))]])]])])])))]))))]]]]])]])]]]]]))))]))]]]]])]))]]))))))])))])])]]])))]]]))]]]))]]]])])]]]]]])])]]))))))))))))])])]])]]])]])])))]))))]))])]]]))))]])]]]))))))]]))]]]]))))]]]]]]))]])]]))))])])])]]])])))]))]]))])])])]])]]]]]))])]]])]]])]))]]]))))))))])]]])]]))])])))]]))])]]])]))]])]))))))]))))))))])]]]]]))]]]]))]]]])])))))]))))])))]]))))])])]))])])))]))])))])]]))))]]])]))])]]])))))))])))]]]))]))]]))]))]]])])]]))))]))])))]]]))))])))])]]))]]]))]]))))]]]]]]]]])]])]]))))))])]))]))))]]]))]]]]])])))]]]]]])]))]])]]]]))))])])]]]]))))]]))))])]]]]])]])])])))])])]])])])]]))]]])])]))]]]]))]))])))]]]))]]]])]])]]]])]])))])))])]])])]]]]])))]]))))]])]]]]))]])]]))])]]])))]]))])]])))]))])]]))]]]))])])))))]]]])]))]))]))])]])]]))]]])])))]]]]])])]]]]])]]]])))))]])]))])])))]]]))]]])))]))))))]])))]])))]))]]))))]]))))))]])])]))]]))]))]]]]]])))])])]))]]]]])])]]]]]])])))))])])]))]])))]]])]))]]])]]])])])]])))]))))))]]]]])]]])))]]]]]])))]))]))]]]))]]))]))]])]]]])))]]]])]])]]]])]))])]])))]]])))))])])))]))))]))])]))])])])))]]]])])]])])]]]]))]])))])))]])))))])))])))]]])])]]])]]])]])]]])]]])]]))]])]))]])]))))])))]]]))))]]]])])]]]])))]])]])]))]])]]]]])]))])]]))])])))]))]])))])))])))]]])])]]]])))]])))]]]))))]]]))]])])])]])]])))])])]]]]])]]))]])]])]))]]))]])])])))]]])))])]]])))]]]]]]))))]]]])])]]]]]])]]))]))])]))]]])]])]])]])))])])]]])])]))))]))]])]])]))]]])]]]))]])]]])])]]]))))]]))])])]]]]]]]))]))]]))])]]])]]))])])]))))]]]))]]))])))))]))]))))))])))]]]]])))))]]]])))]))))]))])]]]))])]))]]))]]]]]])])])]]])])]]])])]]]])])]]))]]]]]]))]))]])]))]))]]))))))])))]]])]))]])]])]])))))]]]])))]))]]]))])])))]]]])]])]]])]))]])]]]]])]))]])))))]])])]))])))))))]])])]]]])]))))]]])]))))])]])]])]]]]]])]])])))]])]]]])))))]]]]))]]])]]])])))))))]]))])]])))])]]]])]]])))])]]]])]))]))]]])])])]])]])])])])))))])]])])]]]]))]]]]]])])]]])))))))))])])))]]]]))])])))]))]]]])])])])))]))]))])])]))]])]])])]))]]))]])]]])]]))])]))])]]])))))]])]])])])))])]]))]]))))])]])]]]))))))])])))]]])])]))]]]]))))]]))]]])]])]]))))))]))])))]]]]]))])]))]]]))])])]))]]])]]]])]))))]))))]]])))])))))]]]]]]])]]])]))])])])]]]]]])])]]]]]))]))])])))]))]])]])])])])))))]])))])))))])))]]]))]))]]]))))))])]])])))])])))])])]]]]]])]]]]]]])]]])])))])))]])])]])]]]))]]))]])))]])]]])])]))))))))))]]]]])]]))]]])]))]))))]]]]]]]]]])))]]))])])]))]]]])])]])]))]))]])])]]]])]]])))]]]))]))))))])])))))]])]]]])]])])])])])]])])]]]))]]]])]]))])]])])))])])))])))]))]]]))]]]]]]))]]]))]]]))])]]]])))]]]])]))]]))]])]])))]])]]])))])]))]])])]))]])))]]])]])]])])])]])]))]))]]])]])])))))])))))])]]]]))]))))]])]))]])])])))))]]]))]]])])]))]])]]))]]))])]))]]]]]]])]]))]])])]))])))]]))]))]]]]])])])]))]]]]]))])])])]])))]])])]])]]])]])])]))))]]))))])))])]]]))))))))])]]]]]]]]]])]]]]])))))]])])]]))]])])])])]]]]]]]]))))]]))]]]]))])]))]]))]]])))))]])))]))])]]])))])]))]]]]]])))]))]]))])]]))]]]))]]]]])))])])))]])))]]))]))]])])])])))]]])]]])])]))]]]]])])])))])]]]]])]]]])]]])]]]])]]))]]]))])]]])]])]]))]])))]]]))]])])])])]]]])])]))]])]]])]]])]])])))]))]]]]]]]]])))])]])]]))))))])])]]]]]))]]]])]]))))))]])]]))))))]]])]]]])])]]])))]))]]]]))]]])]))])))])]]]))]])]))]])]))]]))])]])]))]]]]])))])]])))))))]])))]]]]])])))]]]]))]))]))))))]]]]]))))])]]]]]))])]]]))]]]])])])])]])]])]])))))]]])))]))]]])]]])]]))])))))]]]))])))])]]]]]))])])))]))])])])))]]])))]]]]])]))]])))]]])]]])]]))]]))]]]]))])]])))))]])])])])]]]]])]])]))])])))))]]])])]]]))]))))))))]]]]])]]))]]]]]))]]]]]])]])])]]]]])]]]))]])])))])])]))])])]]))]])]])]]])])))))])])])))))])]]])]])))))]])]])]])]])])))))))]]]]]))])]])]])]]))]])])])]])))])))))])]]]]])])))]))))])])]]]]]])])]))]]]])]]]])]))]])))]]))))]))))]])))]]])]]]]))])])))]))]]])]]]])]])))]]])])]))])]))]))))]))))))]))))]]]]))]]))])])])]))))]])])))]]]))]]))]]]])))])))])])])]]]]]))]]]))]))]])]]]]))]]))])]]]])])])))]]])])))]]])])])]])])]])]])))]]]]))]]]))])))))]))]]]])))])))]]]]]]))))]])]))))])]))))])))]]]]))]]))))))]])]))])]]))))))]]]))]]))])]])))]]]])))]])))))]))])]]])))]]]]]])))]]]]))))]])]]]]]]))]])))])])))))]]]]])]]]]]]]]]])))]]])]])]]]]))))]))))]])]]])]])))])]])]])])])]))]]))])))))))]))]))))))))])])))])))))))]])))]]]))])))])]]]))]]))))))]))))]]])])))])])]]]]))))))]])])]]]))]]])))])))]]]]]]]]]])))])])]])))]))])))])))]]])]])]])]])]]]]])]])))]]]]]])))]]])))])]]))]])]])]])]))))))])))])))]]])]))])))))]))])))]])))))))))])])))]]])])))]]])])]))])]]])])]])])]))))]])]]]))]]])]]]))]]]]]]]]]]]]])]])])]]]])))))])]])]))]]]]]]]])]])]]]]]])])]]])))]]))))]])])])]]]]])))]])]])]))]]))]])]]]])]])])]]])]])]))))]]]))]]])]]]]])]])]]]]])])]]))]]))]]))])]])]]])))])))]]))]])]))])])])])])])]]))]])))]]])]))])]])]))])])))])))))])])]]]]])]])]))]]]]]])])])))))))))])])]])))])])])])))]]))]])]]]]]))])))))]])]))])]]]]]))))))))))])])])))))))))]])]]])])])])]]]]])]]])]]])]])]])]))]]]]]])))))]]]))]))))])])]])))))]])]]])))]))])))])]])])]])])]]]])])]))]]]]]))))])))]]])))]])]))]]]))]])]])))]]))))]])]))])))))))))))])])])]]))))]]))]]))]))]]]]]])))]))]))))])]))])]])))]]))])])])]]]])))))))])]])))])]]]]]))]]])))]))]])]]])]))])))))]])])])))]])]]]])])]]]])]))])]]])]]))]])))]]]])])]))]])]]]]))]]]])])]]))]])])))]]]))))]])]])))]))]]]]]])]]]]]))])])])))])]))]]]])]])]))))]]]))])]]]])])]))]))]])])))))]]))])])]])))]]])]]])])])))]])]))]])]]]))))]))])))]]))))])))]]]]))]])))]))]]]])]]))))])])]]])])))])))]))])]))])])]])]))]]))]))))]]])]])]))]]))]]])]))))]))])])])]]]]]))])]]])])]]]]])))]))]))))]]))]]]]))])]))))]))]])))]]]]])]]))]]]]]]]]]))))])]]])))]]))])])))])]]]]]])))))])]])])]]]]))]]])]))]]]]]]]]]]]])]))])])])]])]]]]]))])])))]]]))]))])]])]])]))])])])])))])]]]))))))]]))))]))]))))])))])))]))]])]]))]]]))]]]))]]]]])])))]]]]])])]]))])]]]])])]]])])]])])]])])]))])))]]))]]))]]]]]])])])]])]))])))))))])]]))])))))]])]]))]]]])]])]])))]))]]))])]))])]))]]])]))]])))]]])]]]]])])])))))))]]]]))]])]])]]]]]]]]])))])))])]]]])])))]])])]))))])]))])])))])]]]))))]))]])]])))]]]]]])))]))]]))))])]))]]))]]))]]))))]]))]])]]))))])))]])))])]]]]]]]]))]])]]))]))])])))]]]]])))])]])]]]))])]))]])]]])])]])]))))])])]]])))])]))]))]))])])]]))]]])]])])))]]]))])])]))))])])])]))))]])))]]])))]))]])))))]]])))))])]]))]]]))]]))]]]]]]]]])]]))]]]))]]]]]])]]))]])]))])])]))]])))]))))]]))]]))])])))))]]]]]]])]))])])]]])]]])]])])])))))))]]]))])))])]]))])]]])]))))))])))]]])]]))])))])])))])]]))))]])]])]]))])])]]]))]]])))))]))])])]]]))])))]])))]))])])])]]))])]))]))))]])]))))))])]]]]])]]]))])]))]]]))])]))]])]))]))))]])))])]))))]))]))])]))])])]]))])])])))]]))))])]]]]])])))))]]))))]]]]]]]]])]]])))]]))]]))]))]])))]))))]))]))))]])]])]]))]))])))))]))))])])])))])))))]))]]))]))])])))])]))]]]]))]))]]])]])])]]]]]))]]])))))]]))))]])]))]))])]))]))])])))))))]]]])])]])]))]))]]])]]))])])]))]]))])]))))]]))))]])))])])))))]]))]))]])])]]])]])])]])])]))])]]]]))))]]]))]]]])))]))])])))]])])))])])))])))))]))]))))))])]]]])])]])]])]])]))]))]]]]])))])]]]])))]))))]]]))))]))])]])]]]]))])]))]))])])]))))]]])))])]]])]]]]]])])]))]]]])]])])))])))]]])]]))]))]]])]]))])))]]]])))))))]))])]))]]]]])]])])))])))]]]))]))))))))))))])]]))]])])))))))]]])]]))]))]])])]]])]))])]]]])))])))]]]]])])])])]])))))])])]]]]]]]]]])))]]]]]]])))))])]]))])]]]))]))]))]]]))]))))))]])]]])))]))])]])]]]]]))])])])]]]]])))]])))])])]))]])]]))))]])]]]))]])]]))])]]]])])]))]))])]])]]))))])))])]]]))]))]]))]])]))])]])])))])])])]))]])]]])))])])]])]]))]]]]]))]]]]]]]]]]]])]])]]])])]]]))])))]]]]]))])])))]]]]))])]))]])])]]]])]))]]))]])])]]))])))]]]]))))]]]])]])])]))]]])]]]])]]]]]]])))))]]]))))]]]))]]]])))]]]]])]))))]))]]))))))])))))]])]])]]))])))])]]))))]))))))]]]]]]]]]]]]])]]]]))))]]]))]))])]]]))]])]])))))))]])]))])])]]]))]])]])])]])]]])]]])]))])]]))])])]]))]]]]]]))]]]]]]]))]]]]))]]]]))]))]]))]])))]]]))]])))]])])))]]])])]])]]]]])]))]])])]))]]))))))]))]]]]))]]])]]]))))]))]]))]]])])))]]))))]))))]))]]]])])))]))]))))]))]])])))])]))])]]]]))))])))]))])]])])]))])))]]]])]))))]]))]))])))]]])]])))]])))]]))))]]])]]]]])))]]]]))]]]))]]])])])]]])]))])))))]]))])))]))]))])])))]])))]))]]])]])]))))]]]))]]]))]])])]]]]])))))]]))]]]])))]))))]))))])))]])]]])]]]]]))])))]))]))]])))))))])]))]])])]])]))))]]]))]))))))]))]]])))])]]))]])))))]]]))])]]))])))]]]]])]])]]]])]])])]))))])]))]])]]))])))]]]]]]]))])]]]]]))))]])]))]]])))))])))]]))]])])])])])))))])])])])]]]))]))]])])])]])))]]]]))]]))])])]]]))))))])))]))))])))]]))])])]]))]]])]])]])))])]])]]])]]]])])]]]]]]]])))])]))))]]])]])]]])]]))))]))]]))])]]]])]]))))))]))]])))))]])]))]])))])))]]))]]]))])]))))])))]]]]]]]]])]))]))]]]]])])])])]]])]]])]]))]))])]))]])))])]])))]])]]))])]]]]])]))]])])))]))]]])]]))))]]])))))]))])]))))]))]]])]))]]]])]))))]]]))]])))]])]])))]])]]]))])])]]))]])]]])])])))))])))))]))]))]))])))))))])))))))]]))]))]]])])]]))]])]]])))]))]]])))]))])]))]]]]]]]))]))]]))]]])))])]])])))]]))))])))))]])]))]]])]]))))]])]])]])])))])))]))))]]]]]]]]])]))))])))])]]))))])]]]))]])]))]))]]]])]]]))))))]]])))])]])]]))))))]]]]])]]))])))])]))]])))])])))])]])])))))]])])])]))]]]))])]])]]]])])]])]]]]))]])]))))))]])))])))]]]]))])))])]]])))))])))]]])]]))]])))]]]])]]))]))])]])))]))]))]])])]])))])]]))])))))])]))]))])])])]])]]])])]]])]]))))])]])])))])]))]]])])))]))))])))])]))]])))])]]]])))]]]]]])]]))]])]])))]]]])]]])])])])]])))))])]])]])]]]]]]))]))]]])))]])])])]))]]]]])))]]))))]])])])]]]])])))))))))])]]]]]]))))]))])]])]))))])]]]]]])))]])]]]))])]]]])]))]))]]])]])]]]))))])])]))])])])]])])])])])])]])]])])]))))))))]]])))])))))))]]))]]]]])]])]]])])]]]]))])]])]])]))])])))]))))]]])]]]]]])))))))])))])]]]]]])])])))])]]))])])]])])))])))])]]]])])]))]]]]]]])))]]])])]))])])]]]]])])])]])]])]])))]]]]]])]]]))))]]]])))))])]]))]]]]]))]]]))))])))])]]])]))]]]]])]]]))]]])))]]))]]]]]])))))))))))))])])]])]])])]]]))])))]]]])]])]])])]]]])))]]]]))]))]]))]]]))]))]))))])])]]])])))]]))])]]))))]))]]])])])]))))])]))]]]])]]]))])]]])]))]])]))]]])))]])]))])]]]]]]]))])))])))]]])])]]]]]]])]]]))))]))))])])]]]]])))]]]))])))))))))]]])))]])])])])]))))]])))])]]]]])]))]]])])]))]]]])]))))]]))))))))]]]])])]])))]]))]]]])]])))))))]))))])]]]])]]]])]]]]]]))]]])]])))])])]))]]]]))))))]))))])]]]]]])]]])]]]]]))])]))))]])])]]]]])]]])]]])]])]]))])])]])])]]]]])])]))]]]))]])))])])]]]]])))]]])))]]])]]]]])]])]))]]))])))])))]])]])])])])]]])])]]]])]))]]]]])]]]]])]))])]])]))))])))]]]))])]]]]))))))]]]]))]]])]))])]))]])])))])]]])]])]]]])])])])]])))])]]]])]]))]]])]])]]))])))))]])]])))))]]])]])]]))]]))]]])))]])]]])))))]))))))])))]]]]))])]]]]]))])))])])]]]]))])]))))])))))]]]]))))])])])))]))])]))]])])))]]]])])]))))))))))))]]]]]])]))])]]))))])))))])]]]])]]))]]])])]])]]])])]]])])))])]]))))]])]]))]))))]]])]))]])))]]])]))]]]]]]]))])))])])])))))]])]])]]]))]])))))]]])]])]]))]]]]])])]]]]])]]]])]))])))]]]])])]]]])])])])]]])])])]])]))]]])]))))]])]])])]))))]]]])])]))]]])])])]]))])]]]))))))))]]]]]]]))]))]))]))]]]]]])])])])]]]]))))])))])]])]]]))]]]))))]]))))]]))))]))])]])])])]])))]]])))))))]))))]]])))))])))))))]])))]])])))]]]))])))))]))))])]]]]]]))])))))))))])])]])])]]))]))]))]])]))])]])])])]]])])]]])))]))]])]]))]])])]]])]))))])]]]]])])))])]]]))))))])))]])])]]]]))]])])]]))))]))])))])]]])])]]))]]])]]]]]]])]))]]]])))])]))])))))]]]]]]))]]))])]))))]]]]))]))]]))))]]])))]]])]])]))])])])])]]))]]))]))])))]]))]))])]]])]]])]])]]]]])]))])]]])])]]]))]))))])]))])))))]])))))))])))))]])))]]]])))))]))))]])]))])])]])]]]]])])))])]])]]]]))])]]]]]])]]])])])))])]))]))))]])])]]])]]]]])]])]]]]]))))])])]]]))]]))]])))))])))))))])]]]])]))])])]))])]]]])])]))]]]))]]))]]])))])]]]])])))]]]]))]))]]))))]])]])]))])]]])])))])]))]]])])])]]])])]))]])))]]))]]))))))))]])))))]]])])]]]]]])]))))])]]))]]]))]]]]])]])])])])]]]]]]]])]))]])))]]))))))]]])]))]]]]])))]])]])])))]])])))])]]]]])))))]))]])))]))]])]])]))]))))]))))])])]]))])]))])))]]])))]]]))]]]])])))))]]])])]]))])))]]])))]]))]]]))]]]]])]]))))))]))]])))]])))]]]]]])]])))]]]])))]))]))))))])]]]]]))])]]]))])]))])]]))))))]]]])]])]))])]]))]))))]))))))]]))]]]]])])))])]]]))))]]])]])]])))]]])])))]])]])])])])]])))])]]]]))]))]]]]]]]))]]]))]))))))]))))))]]))))]]]))]]])]))])]]]])])]]]))])]]])]))]])]]))))))]])])]]]]))]]))))]))]]]]]))])]))]])]])))]]))]]]))]])]]))])])]))]]]]]])])))))))])]])]])]])]])]]]))))])]))])])]])]))))]))]])]]]))))]))))]])]]])]))]]]])]]]]]))))]]]])))]))]])]]))]]])]))))))]))])]])]])))]]]]))]]))))]]])]]]]))]]]]]]]])))]))])]])]]))])]])])))]])]))])))])))))]]))]]))])]]]]])]))])]]))])]])])))])))])]]])]))))]]]))])]]))))])]]]]]]])])]])]]])])])]]]]]])]])))]]]]]])]]])])]])]]])]]]]])]))]))]))))))]))]))]])])]])])]))]]]]]]])]]))])]]])])]])])]]]])))]]]))])]])]]))]))])]))]]]]))]]]])]])])])])]]])]))]]))]]]]]]]))]))]]]]))]))]))))]]]]))]]))]))]]]]])]])]]]))]]]]]))]]))]]]))))]]])]])))))]])))]]])))])]]]]))))]))))]]]]))]))]])]]]]]])]])]]]])))])))]))]))]]]]])]))]]))]]])])))))]))]]))]]))]]]]))))])))]]]]))])]))))])]))])))]]]]]]))]]])]])]]])]])])))])])))]])]))]])]))]])]]])])])])])]]))]]]]]])))))]]])))))])))]]))]])))])])))))))])]]))]]]])]]))]))])]))]))]))])))))])])]))]))]]]])]]]]])]))]])]]])])]])]))))]]]))))]))]])]]]]])))]]]))]])]))])]])]))))])])]]])]))])]))))])]))])))])))])])]]])])))])])])]]])])]))))])))))))))])]]))))]))))])]))]])])]])]]]]])]]))))])]]))))]]])))]])))]])]])]]]])])])))))])]))])))]))]]))))))))))]]])))]]]))))])])))]]]]]])]]])))]]))))]])))])))))]]]])]]])]))]]]])))]))]]]))]]]]]]])]])]]])])])])]))]))])))]])])]]]])])])))])]]))]])]]]]])))]))]])])]]]])]))]])])))]]])])))])))])]))]])]])))]]]])]]]])]])]])]))]))]]))]])]]]]))])]]]))))]]))]]])])]])]]]))))])))]))]))]])]])))))]))]])]])]])]]]))]]]]])]))])))])]]))]])]]])]]]))])]])]]))]]]])))]))])))]))])]]))]))])])]))]])]]))))))]))]])])])]]]]]))])])])])]))]])]])])]])]])))])]]]))])))))]))))]))]])]))])])]])]))]]))]])])]]])))]))))]]])]]]))))]))]]))))]))]]]]])))]])]]]))]))]]])])])))))))])])])]]])]]]]]]])))]]])]]])]))]])]])])]]))])]]]))])]]]))]]))))))])]))]]]])))])]])])))))]]))]])]]])]))))]))))))])])]]]]])])])])]]])]))))))]])])])]]))])]]]]))])))))))]]]]])])]]]]]])))))]])))])))]]]]])))])]]])]])))]]]))))))])]]))]])])]])]))]]))])]))]])])]))]]]])))]])))]))))])])]]]))]))])])])]]])]))]]))])]]])])]))))])])]))]]])]])])))]]]])]))])))))]]))]])))))))]))]]])]]]]])]])])]))))]])]))))]))))]]]]))]]])]))])))])])])]])))]]])))]))])]]])]))))))))]]]])]]))])])]))]]])))]))))])])]))])]]]]])]))))))))))]])]))])]))]]))]])]))))])]]])))]]]])]))]]])]]]]])))]))])]])]]]])]]))]]]]])))])))])))])]])]]))]])]))])]))]])))]))]]]])]))]])]])])))])))]))]]])])])]))]]]])]]))]]]]))]]]]))]]]])])))]))))]])])])]]]))]]]))])])))])))]]))])]]])])]]))])]])]))])]))]]]]))]))))]]]]])))]])]))]))))]]))]]]]]]))]]))]]]])])))])]]]]]))]]))]]))))]])]]]))]]))])]]))]]]]])]]]])]))]))]]]]))))]]]))))))]]]))))))]))])))]]]]]]]]])]))]])]))]])))))))))))))]]))))]))]]])]]]))))])))])))])])))]]))])]))]))])]])]))))]))))]])])]]]]]]]))]])])])))))])])))))]))])])]])))]])]])]))]])))]]])]]]]]))])]]]]))])])]])))]]]]))]])])]]))])])))])]]]))]])])))))])])]]]))))]))))))]]]]])]))])))]])))])]))))])])))]])]))])]))])]]))]]])])))]])))))]]]]))])]])]))]]))]))))]))))))]])]])))])))]])))]]]])]])]])])))]])]]))]))])]))]]]]]]])]))))))))]))]]))])]))))]]])]))]]))]))))])]))]])]]))))))]]]]]]])])]]]))]]])]]))])])))]))]]]])))]]))]))]))]]])]])])))]])]])]]]])])]]))])])])])])))]]))))])]))]))]]])]))]]]]]]))])]]])])])])]))])]]])]))]]))]]])))]]))]))))]))])]))])]]))))]]]])])))]))]]]]))]]))]]])]]])]])]))])]]))]])]])))]]]])]]))]]]]))])]])])])]))))]]]])]]]])))])]])])]]])))]])])))]))])])]])])]))]))])))]]]))])])]))))])))])])]]]])))])])]]])))]]))))))]))]])]))])])]))])]))]])])]))))])])))]))))))]])))]])]])))]]])))]]]])]]]))])])))]))))))])))]]]]))]))]]))])])))]])]]))))]))]])]]]])])])))]]]]))))])]]])])])]])])]]])))]])]]])])])])]))])))]))))])]]]))]]]))]]])))])])))])))]]]]))))))])])]]]]])])))))))]]))]))))]]]]])]))]]]))])]]))])])])]]))])]]]]])))])])]])]])]])])]])))])])]]]))))))]]))))])])]))]))]]))))])]]]])))])]]]))]])))])]]]]])])]]])))])]]])))]]]]))])]]])]))))]])]))])])))]]))]]])])))))])]))]]])))]]]]])]]])]]]))]]]]]))]]))]))]])))))])]])]]]]])]]])])])])]])]])]]]]]])]]]]))]])))))]))))])]]]))))])))]]]))]])]])))]])))]]))])])))]])))])])]]))])]])]]]]))]]]]]))]))]))]]])))))]]])])]))]]))])])]]]]))]))]))])]))])]]])])]]]))))])))])]]))))))]]]))])]])])]))]]]])])])])]]]]])))])))]]])]))]]]))]]]]])))])))])])])]]))))]]]))]]))])))])])])])])))]]))]))])]]))]]])]]))])))]]))))))])]))]]])]]]]]])]))]))))]]])))))])])]))]]]))]]]]]))]]]]]))])]]))]]]]]))))]]])))]]]]])))))))))])]])]))))))))])]))]])]])])])]]])))]])])))))))])])]))])))))])))]))]]]]]))))]]]))]])])]])]))]]])]]))))]))]))]]))]]])])))))])))])]])))))])]))]]]])]))))])]])])))])]))))]])]])])]])])])]])]))]))))]))]))]))]]]]])]]]]))])])]]]))]]))]]])])]]))])])))]))])))]]])]))))))]]])])]])])])]))))]))))))]))]]])]]))]]])))))))])]])]))]))]]]]]))))))]]))]]])])])))]))]])])))])]])]]])]]))]]]])])])))]])]])])]))]])]]]]]))]])))]])]]]]]))]]]))]]]]]])]])))])]])]]]])]]])))]]]]])]]]]])))))))]))))]]))))))]])])]]]]]]]]))]]))]]]])))))))]]))]]))))))]])]]]]])]])]]))])]]]))]])])])]]))])))]])))]])))]]])]]])))))))]])]])))]]]]]]])]]]]])]))))])])])])])])))))]))]]]])]]]))]))])]])]])]])])]]]))))])])]]])]])]))])])])]]]))])])])]))]]]))]])))]])))]])]])]))))])]])))]]])])]]])])])])]]))]))))])]])])]))]]])))))])])]))])]))]]]]]]])])]])]]]])]))])])])]]))]))]))))))]]))])))))])])]))])])]]]]])))]]))]))])]])])]))]))]))))))))]]]]))]])]])])]])]]]]]])])]]))])]])))))]]]]])))]]])]]))]])]))]])))])])))]]))]))]]]]]]])]))]])))]])))])]]])])))]]]]]]))))))])]))]]]))))]))]]]]])]])))])]]))]]]))))))))))))))]]])]))]))]]]]]]]])]]))]])])]]]]))]])]))))]]])]))))))))))])]])]))]])]]]])]]]])])))))]]])))]))]])])]]]]])))])]]])))])]]]]]])]]]))])))]])]]))))))))]])]]]])]])]])]))]]]]]]))))]])))))]]])))]]]])]])]]])]])]]])]))))))]]]])]))])))))])]]]])))))]])))))])]]))]])]])]]))))])]]])]]]])])))])]))]]])]))]]]]]]))]]]))])))])))]]])))]]])))])))]]])])])]]]]])])]])]]]])]]]])]]))])]]]])]]]))])]])]]))))))))]]]]))]])]])))]])))))))])])]))]])]))]]])])))]]]))])])]]])]]))])])]))])]]))]))]]]]]]))))])))])))])])])])]])])]]]]]])])])]]]))]))))))]]]])])]))]]]])])]))))))])])])]]]]])]]]))])])]))]]])])]))))])]]))]])))])))]))))))]])]])]])))]]]))]])]]]))]]])])]])]]]])))))))))))])))))]])))])]]))]]])]]]))))))]))]]))))])])]]])]])]))]))]))]))]]])))))]]])))]])))])))))])]]]]]]])])))))])]])))))))])]]]))))))]])))]))])]]])]]))]])])])]])]])]])])])]]]))))]]]))]]]])))]]]))])]]]])]]]]))))))]])])]]]]]]))))]])]]]))]]]]]]]]]])))))]))]]]])))))]]]]]))))))]]])]))]]])])))])))]))]))))]])))))])]])))))]]))]])]])))]]]]]))]]))])))))))))]]))]))))))]]]])]]])])]]]])))]]))])]))]]]])]))]))]]]))])))))]))]]]])]]]]))]])))]))]))))]]))))))]]]))))))]))))]]]))])))]]]))))]])])]])]]]))))]))]])]]]])]]]])]))))]])))))]]])])])))))])]))]))]]])]]))]])]]]]))))])]))]]])]))]]])))]]]))))])])]]))])))))]])))])]]))))])]]])])]]))]])])))]))]]))])]])])])]]])]))]])]))]]])]))]))]]]])])])])]))])))])]]]])]]])]]]])])]]])))])]))])])))]])])))]))]])))]])))])]])]]))))))])]])])])]]))))))])))]]]))]])]))]])])]])]])))))]])])]]]])))])]])]]])]]]]]]]))))))]]])]))]))]]]]])])]))]]))]]])]])])]]])])]])]]))))]))))]]))))]]]]])]]])]))]])))))])]))))]]]]])))))]))))))))])])])))]])))]])])]]]]]))]))])))])])]]]])]]))])]]]))]]]])))]])]]])]]])))]]]])))))])]]]])]]]]])]]]])]]))))]))]]])])]]))])]])])])])])]))]]))]))]]])]))]])))]]])])]])])]])])])]]]]]]]]]))))]]))]))])))]]])]]))))]]))]])]]]])]]]]])]]])))]))]))]))])]]]])))])]])])]])))]])]]))))]])])]))]]))]]))]]]])]])]])))])]])]])])])))))])]]))]]))]]]])]]]])]]]])]]]]))))])]]]]]))))]))]])]))])))))]])]))))))])]]]])]])))]]]]))])]))]]]))]])]])))])])])])]]]]]]]]]]])))])])))]]]])]]))]))]]])])])])])])]]]]])])]]]))]]))])))))])]))]))])]]))]]]]))])])))])))])))]))]]]))))]]]])]]]))]))]))]]]))]))])]))]]))]))]]])])))])])]]])])])))])]]))])))])]])))]]))))]))])]])]]))))])])]))])]))]]])]]))))))))]))]]]]]])]))))]]))]]]]]]))]]))))]]]])])]]))]]])))))))))]))))))]]]]]))])]]]]))]])))]])))]]])])])]]))])])))))]])]]]]])]]]])])]]]])])]]])]]]])]))])]))]]))]]))])])]))))]]]]))]))))])))))])]))))])])]])]])))]]]]))]]]))))])])]))])))))))))]]]]])]]))])])])]])))])]])])))]]]]])))))]))]]))])]])]))]]]))]])))))))]])]]))]]]])]]]))]]))]]))))]])))]]])]]))])]]]]]]]))]))])]])]])])]]))]])))))]]))])))))])]])])]]))]])]])]])))]]))])))]]]])])]]]]]]]]]]))))))]))])]]))]]))])]]))])]))]])))])))))]]]]))]])))]]))]))])]))]])]]]])]])])))]]))])]]]])))])]]]])]))]]])]]]))])]]]]])))]))]]))])]))))]]]]])]))]))])))])))))]]]]])]]]])))))]]))]])]]]])]]]]]])))]])]]))]))]]))])]])]]]))])]])))])))]]]]])))]])]]]])))]]]))]])))])])]]])])]]]))))]])]))))]]])])]]]])]]]]])]]]))]]]])))]]]])]]]]])])]]]])]))])])]]))])]]]]]]])))])]))]))]]])))))])]]]]]]]]]))]]]]))]]])))))]])]]])]))))]))]]))))])])])))))))]])]))))))]])]))]]]])]))))]]])]])])))]))))]]]]])]))]]]])]))]]]])))]]))))]))))]]])]])]]]]))))]]]))])]]))]]]))]))])))])])])])])])]]))))]])]]])])))]]])]]]])]))]])]]]]))]]]]])))]])]]])])])))]))]])]]])])))])]])])))))]))])))])]]])])]])))])]])]]])]])))])])))]])]]])])]])])]]))]]])])))]])]]])])]))))]]])))]]))))]))]])])))))]))))]))])]))]])]]]])]])]])]]))]]]])])])]]])))]]]]]]]]])]))])])]]]])))))]))])]]]])]])])))]]])))])]))]]]]))]])]))]]])]]])]]]])]])]]])]]]))]))]]]]]))))]]])])]))])]))]))]))]]]])]]]]]))))])]]))])))]]))]))]])))])))]]]]])]))))])])])]])]]]]])]))]]]))])])]))))]])]))])))]]])))]])]]]])]]))])])]])]]))]]))]])))]))]]))))])]])])]))]])]))]]])]]]])]])]])))))))]))]))]]]]))]]]))))]]]]])]))]]))))]]]]])))]]))))]])]))])))))]))]]])])]))]])]]]])))]))])]))]]])]]]]))]))]]]]]))]]]]]))])]])]))]]]]))]))]]]]])))]]])]]])]])]]]])))])]])]]])]]])]]))])))))])))))))]]])])))]])])])]))]]))])))])))]])]]))))]]]])]]))]]]]])]])]]))]))]]))))))]])])])))]])]))))])]]]]))])]))]])]]]]])]]]]])))]))]]]))]))])))]])]]))]))))])]))])))]])]))]))])])]]))]]]))))])]))]]]))]))])]])]]))]]))))))]]))]))]]]]])]]]]])]])]]]))]))))))))))]])]]])]])])])]))]))))])]))))]])]])]]]]])])))))])))]]])]]]])]]))])]]]]]])]))]]]]])))]]])])]]]]]])]]))]]))]]]))])))))))]])))]])))])))]]])]]))])])]]]])]])]]]]]]))]]]]]])))))]))]))])]))])]]))]])])))))))]])))))])])]]]]]))]))]])))]]]))])]]]]]])))])]])]]])))))))])]]])]]]]]])))]]]))])]]]]])))]]])]))]])]]]]])))))))])])]]]]])])]))]])]]])))))])]])]]]))))))))])]])))]])]])]))))])]))]))))]))))]]]]))]])])])]))))))]])))))]))])]]])]]]])]))])])])])])]]]]])])]]))]]))]]]]])])]])))))]]])))]]))]]])))]]]]))]]))))]]]]])))]]))]]]]]]])]))))))])]]])))]])]))]))))))))])))))]]])])]])]))]])]))))]])]])))])]))]]])))))]])))))))])])])]])]]])]])))]))]))]]]]])]]]))))])])]])]]]]])]]]]))])))]))])))]]))])]]))))])))))]]]])))]])])])])]]]])]]))))]]]]])))])]]])]]]]])]])]])))))))]])])]]]))))]]]]]]))])))]])))))]]]])))))))])]]]])]])])])]]])]))]])]])]]])]]])))]]])))]]]])))))]])]]]))]])))]])]]]))])]))))]]))]]))])])]]]]))])))])))]]))])])]))]])))]])])]]])]]))]])))))])])]]])]]))]])))])]]))])]])]]]]])))]))]]])))))]]]]))))]])]])]]))]]])))])])]))]]])]]]])]])]]])]]])))]])])])]))]]))])]]))))))]))])))]])))]])]))]]]])]])])]]]))))]])]))))]]]]]]])]]]))]])]]]])])]]])])]])]]]]))))))]]])]]])]]])))))])]))]]]]]])]]))]]]]]])]])])]))]))))]))]]])])])]]]))]))])))])))]]))])]]))))))))]]]]))]))])]])]]]]]]))])]]]]])]]])]]))])])])))]])]])])]]))]))))]))])]]])]]))]]]))))]]])]))]]]]))]]])]])))]))])])])]))]]])]))])])))]))]])])])]])))]]))])]]]]))]))]))]))]]])))])]]]))]])]))]])])]]))))]])])])]]])]]])]])]))]))]])])]])]))))]]]]]]])])]]]]]]])))))])))]]))])])]))])))))])))]))]]))])])])])]))])])]))))]]])]))]))])))]]]))))]]))))])])]]])]))]]]]]])]])]]])))]]))])))])]]))])))]))]))))]))]]]]))))]))]]))]]))]])))))]])])))])))]])])])]]]]])])]]]])))]))]))]]]]])])]])]))]]]]]))])])))])])]])]]]]]]))])]]]]]]))))]]]])])]]]]]])])]))])]))]])))])])))))]])))])))])])])))]))]]))]])])]]))]))])])]])])])))]]])]]))]))])]]))])]]])]]))]]])]]))]])])))]))))]]))]]])))]))])]]]]]])))])))))]))]])]]])]]]]])))])])])])))]]])))]])])])]]]))]])]]])))]])]))]]))]))])]))]])]]]))))])))])])]]))])))))))))]))])])]]]))])])]))]]])]]]]]])]]])))]])])]])))))])]]])]]]])]))]]])]]]))]))]]])))])])]])]]]])]])])]]]]]]))]))]))))]))]]))]]]))])]]])))]]))))])]))))))])]]))))))])])]]])])]]))])]]))])])])])])))]])]]]])]]))])))))]]))]]))]]])]]]])])]])]]]])]]))]])]))]]))])))]])])])]))]])])]])])))))]]])))))])])]]))])])))]])]])]]])))]]]]])]])])]]))])))]]]])]]]]]]))))])])]))]]])]]]))]]))]]))))]]))]))]))))))]])]])])))))]])])))]])))]))))])])])))]]]))]])]])])))])])]]]]]]])]]]))))])]]]]]])]))]))]])))))]]])]]])))))])])])))))])])]))]]]]])])])))))])]))]])))])]))]))])]])))]]]]]]])]))))]))]]]]]])]]]]])]]])]))]))]])]]])])]]))])]]]]))))]])]]]))))])]]))])]))]]]]]]]))]))]]))))))])])]))))))))])]]]])]))]])])])]]))))]))])]]]])]))]]])))))])]])])))])))]])])]])])]])]]])))))])])])])]]])]))])]]]]]]]))))]]])])))])]))]])]))))]]))]]])]]))])]]]])]])]))]]])])])))]])]))]))]]])]))))))])))))))])]])]]]])]]))]])))]]]]]]])])]]]])])]))]))]]))]]]])]))]]]))]])]))]))])))))])]]]]]]]]])]))])])]))]]))]]))])]])])))])))]))]))]]]))]]]]])]))])])])])))))]))]]])))))])]))))]))]])]))])))])]])]]))))]))))]]]))))])])))])]]])])]))])]]]]])]]))))))))]])))]]]])]]]]))]))))]))]])])]]]]]])))]])))]))]]])))))]))]]]])]))))]]]]]]))))])]]]])])])]]])))])]])]])))]]])))))])))))))]])])])])]]]]]]]]))])]]]]]))))]))))])])]))])))))])]))))]))]]]]]]])]]))]]))]])]]))]]])]]])))))))]]])]])]))])]]))))]])]]))))]))))]]])))))]])]]]]]]]])))]))]]]])])))]])))))])])]]])])]))])]])]))]))]]]]))))])]))))))))])))])]]]]])])])])]])]])))]])]])))]]])])]))]))))]]]))))]])]])))])]])))]]]])]])]]))))])]]]]]]])]]]))]))]))))]]]])))))])])]]]))])]]]))]]]))])]]])))]]))))))]]]))])]])))]))])])))])]])]]])))]]])))]))))])]]]]]]])])]))]]]))]])]])]]]))]]]]))]]]])))]))]]]]]])])])]]]])))]))]]]))]]))]))]]])))))]))]])]])]]])])]]])))]]])])]))))])]])))))]]))])])])]]])]))))))]]]))]])))))]])))]]))))]]]]]))))]]]))]]]))]))]))]]]))]]]))])])]]]))])])))]))])])]]))]]]]])])])])))]])]]]])]]))]])))))]]]]))]]]]]]]))]))))]))]]])]]]]])]))])))])))]])]]]])]))]])])]]])])]]]]]]])])]))]))])]]]])]])])))])])]]))])]]]])))])])))]]]]]])))])]]]))))])])])))]]])))]]])]]])])]])]]))]])]]])])])])))]]]]))))]]])])]]))))))]]])))]]]]]))])))])))]))))])])])))]]])))]]))])))])]])]]]]]])]])))]))))])))])]]))])])]]]])])]]]))]))]]))])])]))])])]])])])]]]]))))])])]]])]])]])])])]])))))))))])])])]]]))))])])]]]])]]]))]]]])]])))]]))]))])]]])]]]]]]])]))])]])]]]]])]))]]]))])))])]]]])))]]]))]])]]])]])])])]]]])]]]))]]])))]))])]))))]]))])])]]]))])])]])]]]]]]])]]))]])])))]]]])]]))]))])])]]]))]])]]]])]]))])]]]))))])])))]])]]]])]))]]]])])]))]])))])])))]))]]))])])])))]]]])))))])]))])]])))]]])))))])]]]))]]])])])]))]]]]]]))])]))]))])))])))))))])]])]]]))]))])]])]])]]]))])]))]]])]))]]]))]]])]])]])))))])))])))))])])]]]))]]]]))])])]]])))))]))]]))]])])]]])])]]]]])]))])])]])))]))])))]]]]]])])))]))))])))]]]]]]]]])]]))]))]))])]))])))])]]))))]))])]]])]))]]))))))]))]]]]]))]])]))])]))]])]])])]]]))))]]))]]))])])])]]))]])])))]])))))]])])]))])])]]))]])]]]]]]]])))])]]))]]]))]]]]]))])])))))]))]]]]])]))))))))]]]]]]]]))]))))))))]])]))]]]]])))]]])))]]]]]])]))]]]]]))]])]))]])]])])]))))])))])]])]))))))))))))))]])]])))))]))]])]))]]]))])))])]]]))))]])))]))))))))])]]))])))]))])])])]]])))]))]]]])))))]]]]]]])]])]]])))]))])]]]]])))]]])]))))]))]])]]]]]]]))))))]]))]])))]))])])])])]))))))]]]]))])]]))]]))]]))]]))]]))])]]])]])))]])))))]]]]])))]]))])]]])))])]]])))]]])]])]]]))])])]]])])]]))))))]]])]]]])]))])))]))]]])]]))]]])]]))])])])])]])]))]])])])]])])]))])]))]))])]))))])])])]]])])])))])]])])])]]])]])]))]]]]]]]]]))])))]]))])))])]]])]))])])]))])]))]))]]]))]))])))))]]])])]]))))))))])]])]]]])))))]]]))]]))]]]]]])]]]]])]]))))])]))]]]]]]]))])]))])]])])]]))))])))])]])]])]))))))]]]))))))))))))]]]])))]])]]]]]]]]))))]))]]]))]])])]]])))]]]]]]]))])]]]])))))]])]]]])])]]]))))])]]))])))]))))))))]]])])])])])]]))))]]]))]])]])])]]])))]]]]])))])]]])]]))]])]))])]]])))])))]])])])]])])))))]])]))])]])]]))))])))))])))]])]]))])]]]]]]]]]])))]))))]]])])))]]))))]]]])))])])))])])])]]])])])])]))))]]])))])])])))))))]])]]))]))]]])))]))]])]])]))))))))]])))]]]])]])])]))])]))))])]))]]])]])]]]])]])]]]]])]))))))))))]]]]))]))]]])])]])]]))]]]]])])))]])))])]]))])))]]]]))]])]]]])))])])))])))]]]]]]]]])])]]))]))])))]]]])]]])])]])]]))])))]]]]))))]])))]))]))])])]]))]])))]]])))]]]]]]])]])))])])])))]]))))]]]])]]])])]])]])])])))]]])])]])]))])))]])]])))]))])]])]])))]]]]))])]])])]]))]])]))]]])))))))]]]]]])]])]])]]])]))])]]])]))))))))]])]]]]])]))]])))]])])]))))]]))])])])]))]])]]]))])]]))]]])]]])]]])])))]]]]]))))]]]])]]]]))])]]])]))])]]])])])]))]))])))])))]))]]))))))]])])))]])])])))))]]])]])]]])]]))])]))]))]])])]]])]])))])))]])]])]])))])]])]))]]]))))])))))]]]]))))]]])))))))]]]]])])])])]]))]]]]))])])))]]))]]))]]))]])]]])]))))]))]]])]]]))))])))]))]]]))))))))))]])])))]))))))))])))))]))]]]))]]))]))])])]]]]]]]]])])))])]]))])]))])])]])]))])])])]]))]]])]])])])]]))]])]))]))])])]))))]])]])])])]])))]]]]))])])])]])]]]]]]]]])])]]])]]]))]])]))))))]])]))])]]]]])))]])])))])]]])))]))])))]))])]])]])))])]]]]]]))]]]]]]])))]]]]]])]])]]]])))))]]])]])))])]])]])])])])])]])]])]]])])]]))))))])))))]))))]])]]]])]]))]])]]])]))]]])]]])]])]])]))]]]]]))]]]))])])]]))))]]))]])]])))])])])]]]]]]]))])])]])]]]])]))]]))])])])]))]])]))]])))))]]]])))]]))]]]))]]))])])])]])]]]]))]])]]]))])]]))]]])]])]])))))]))))])])])])]))]]]])))])))])]]]]))])))]]]])]]))]))))))]]))]]])))))))])]]]))]]]]))])))))]]]])]))))]]]))]]))]]))]]]])))]))]))]])))))]]))])]]]]]]))])])]]))))]])]]))])]])))])]]]])])])])))])])]])))]]))]))])]))))]]]))])))])]))]]]))]]]]])]]]))]])]]])]]))]]]]]]]]]]])])]]]]])])])]])))]])])])])]))]]))])]])]])]]]))])]))]))))]))))]]])]))]]]]))]])]]]])]])))])]))])]))))]]])])))]])]]]]]]]]]]]]])]))])))]]]]])))))))]]])))))])]]])]])]))]]]]]))]])])])]))])])])]])]))]])]])))])])]))])])]])]))]]))])]]]])]])))])])])])]))]]]]])])))])]))]))))]]))])])))))])])])])]]]))))]])])]]))]])]]])]))]))]))]])]))]]]])])])]]]])]])]]])))))]]]])])]]))]]))]))])])]]))]]))))])))]]])])))))]))]]))])))])))])))])]])))))]))]]))])]))]]]])]]])])])))))]])]))]))]]]])])])])]))])])]))])]])))]))])]))]])]))])]]]))]]]))]]])]))))]]])])]]])]]])])]))]]))))))])]])))))])]))]]])])]]]]])]))]]])]])))]))])))])))]])))))]))]])]]]]]]))])))]])]]]]])])))]]]])]]])))]])])]]]]])))])]]]]]]])))))))))))]))))]]])]]]))))))]]]])))]])))])))]]])))]))))]]]])])])]]]]]))))]]])])]))]))])))))))))))))))))]))))))]]]))]]]]])))]))])]))]))])))])]))])]])))]]])]]))]))]]]])))]))]))]]]))])])))])]]]]]])]])))))))))]])))])]]]))))))]]])]))])]))]]))]))]))]])]])]])]])])]]])]))))])]]))))])]]]]]]]))]])]]]]])]]]])))))))))]))]])]]]]]])]))]))])]]])]]]]]]]))])]])])))])))))]]]))])]]])))))]]]]))))]]]]])])))]]])]))]]]])]))])]))]]))]])]]])]]]]])]]]]]))]))]]))]]])]))))])))])]))))]))]]))])))]]])))]]]])))])]])]])]]))))]]]]))))])]]]])))]]))]))]))))))))]])))))]])]))])]]))))]])]]])]]])]]]]]))])])]]]]]))))]]]))]])]]))]]]])]))]]])))]))))])])]])])]))]])))]))]))]])])]])]]]]]]])])))]])]])]]]]))))]])])]))])))))))))))]])]]])))]]]))])])]))]))))])))]]])])))]]]]]])]]]))]])))]]))])))))))]]]))])]]]))))]])]]))]]]]]))]]]])))]]]))]]])]]]))))]))]]))])])))])]]]]]])])])]]]]))]]]]]])])))]])]))))))]]))]))]]]]))]))])))])]]])))]))])])]]])))))]))]]]]]])))]])]])]])])]]]))]]]))]))]]])))]]]]]))))]]]]]])))]]])]])]]])]]])]))]))]]]))))])]]]])]])]])])])])]]])]))]])])]))])))]]))])))]]])]]))])]))])]]))]]])])]]]])))]]))]])]])]])))]))))))]]]]]])])))]]))])])])))]])])])]]])]]]]]]]]))])))])))]]]]]])])])]))]])]]])))]]))))))])]))))])])]))]]))))])]]]))]]]])]))]])]])))]])))))]])))]]]))])))]))])])]]]))))]]])))))]))]]]])])])]))]])])]]])))]]))])]))]]])])]]]]))))))]]))]]]])]))])])]]))))])))]))))]]])))]]]]))])))]]])])])])]))]]]]])))]])]))))]))]])]))]])])])]]))]))]))]]])]])]]]])])])]))))]]]]]])]]]])))))]]]])))])])]))])]]])))]]))))))]])))))]])]]])]]]))))]))])]])]]]]]))])]])])]]]))]]))])]])))])])])]]]))]])])))]]])]))])]]]])]))]]]])]))]))))]])]]])])]])]))]))]])))]]])])]]))))))]))]]])]]]]]])]))])]])])]))]]])))])))))]]]]]))]]])])]))]))))]]]))]]])]])]]]]]]]]]))))))]))))]]))]]])))))])])]]]]))])]]]])]])])]]))])])]]))]])])))]]])]])]]))))]))))]]]])))))]])))]])]]))]]]])])]]))])))])))]))))]))]]))])))]])]]])])]))))]]])]]))))]]]]]])])))]]]]])])))))])]])])))]])]))]])))]])]]]])]])]]]]]))])]]))))])))))])]])]))])]]])]])))]))]])))))))])])))))))])]])])]]))])))]])])])])))))])]]]]]])]]])))))])]])])])])]])))))])]])]))]]]))]))]]]]))]]]))])]]])]]]]]])]]))]]]])])])])))])]])))])))]]))])]))])]]))])))]))]])))))))))])]]]]]])]])])))]]])])]))]]]))))]]))))]])])])))]))]]])])]]))]))]))))])))]])))])])))))]]]]])]])])]))]]])])))]]]])))))]))]]]])))]))]]]]]])]))))]))])]])])))))))))]]])]))]]]]))]]))]))]))]))])]]]))]]))))))))))]]]])]]]])]))))))]])])))]]))))))]))]])]))]]]]])]))]]]]]))))]])]])])))]])]]))]]]]]])])]))]))])]))))]])]]))]])]])))]]))]]])]]]])])])))]]))))]]]]])))])]])]]]]]]))]])])])])]]))])])])]]])]])]))]]]])]]]]))])])))]]))))]))])]]]]]]]])]]]])])]))])))))])))]]]))])]])]]]])]]]]])]])))]])))))])))]]]))])))]]]))]]))))]))]]))))]]])]]))]])]))]])]])]]))])]]]]])]])]])]]))]]))]]))))]]]]]))]))]]]]]]])])]))]]]]]))]]))))]])]))])]])])]])]))))])))])]]]]))))])])])]]]))]]])))))])]]])]])]]]]))]))])])))))]])]))])])))])))])])])])])))))]]]])]])]]]])]]]])))])]))))]]]))))])))]])])])]]]])]]))))])])]]])]]]))))])))]))))])]]])])]]))]]]))))))])])]))]]]])]])))))]]])]]]]))])])))])])))))]])))))]]]])])))])]]]])])]]]))]))])]]])))])])))]]]]]]]))]))]])]])]]])))]]]]]])]))])]])])])]])))]])]])]])]))]]]]])))])]]]]]]))])))))]]]))))])))])]]]])]))))]]]))))])]])))])]))))]]))]])))]])])]]]))]]])))]])))]]])]))])]]]]]])]]))])])]]]])))]])]])])]]]]])]]])]]])])]])]])])]]]]]]))]]))))))]]]]))))))))]]))]))])]])])])])]])]])])]]]]]])]])))))))))]]])))]])])])]]]]]])])]])]])])]])))]])]]))))]])]])]])))]))]]])]]]]]])]))])))]))])]])])))]))]]])]]]))])]]])]]))]))])])]))])])])]))]))])))])]])))]])])])))]]]]]]]))]]))]]]]]]))))]])]]))])]])]]]])))]]]]])]])]]])])]])]])])])]]]]]))])))]]])])))]]))])])]])])]))]]])))]))))]]))]))])]])]])]]])))]))]))]]]]))])])]])]]])))]))))]]])])])]))])])])])]))))])])))]))))))]))])]])])]]))))]])]]))]]]]])])))))])))))]])])])))]]]]])]))])])]]])]]])]])])))]))]])]))]]))]]]]])])]])))]]])))]])]])]]]]])))])]]]])))]]]]))]])])]]]]))]]]]])])])]])])))))])]])]])]])]]]))]]]))))]])])]]))])]))))))]))]))]))]]]]])))])]]])]]]))]))]])]]]]])])]]))))]]))]]]]))]])]])))]))]]]))]]]])]))))])]])]))]]]))))]))])))]])]]])])])]])]))]))]])]])))])]]))])])]])))]])]])))]))))]])))))])])])]]])]]])])])]))])])))])))]))])])]))))]]]]]))))]))]]]]))))]]])]]]])))]]])))))))]]))]))]))))])]]))]]])])]])))]))))]]])]))])])))]))]]]]]))]]]))))]])))])]))]]]])]])))]]]]))])))]))]))]]))))]]]))]))]))])))]]))]]]])]))])]]])]]))))]]]))])])]]))]]]]))])))))])])]))]])]]]]]]))))))]]]]]])]))]))])])]]]])]]]]]]))]]])])]])))]]]))]]])])))])]]]])]))))]])]))))])]])))))])]))])]])]]]])))])))))])]])))]))))))])))])])))))]]])])]]])))])]]))))))))))))]))])]]])]])])])]]]]]]]]])))]))]]))])]])]))]])]))])])])])]))]]])))]))]]))))))]]]]]))])]])])]]]]]]))]])]]))])]))])])))))]))))])]))))))]))]]])]]]]]]]])))]]))])])]])]]]]]))])]]]]]))]]])]]]]])))]])])))]]))])])]]]]])]]))]))))]]])]))]))]))])))))))]])])]))])))]])))])]))])]))]))])))])]]))))))))))]))))))]))))))])]))]]])]))]))]]))]]))])]))])))]))))])]]]]]))])]])])]]]])))])])]]))))]))]))]))]]])]])])))]]])]])))]])]]]])]]))]]]]])])])]))]]]))])))]])])))))])])]]]]))]])])]))]])]]]]])]]])))]))]]])])))]))]))]]]))]]]]]])]]])))]]]]]])]])])))))))]]]))))])]]]]])]]])]))])])]))])]]]))]]]))]])]]))))]]))))))))]]])))]])])]])]])])])]))]]))])]))]])]]])])]])]])]]))])))))]]])]))]]])])))]])])]])]))])]])]]])]]))]]]))))])]]])])))]]])])]]]])]]]))])))])]]]])]])]))))))))]))]))]])))))))])))))]]]]]])]))]]))]))]])))]]))]]))]))]]])])]])]]))))]])]))]])])]])])))))])))]])])])]])))]]))))])))]]]]]]])]])]])])])))])])])]]])]]]]]]]]]))])]])))])))]])]]]]]]])]])]))])])]])))]]]])]])))]))]])]))))])]))]])))])))))))])]])])]]]))]])]]])]]])]))]))]])))])))))))))))))])]))]))))]]))]]]))]]])]))))]))])])))]]]]])])]])]]]])))))]])))]]])]))]]])]))))]))]]])))))]))))))]])]])]))])]]]])])))]]])]]]]])])])]))])]))])]))]])]))])))))])]]]]]))])]]])])]]))])))])]))])])]]))]))))]]])]])))))]]))])]]])))])]])]])]]]]]))]])]]]))]))))])))))])]])])])]])))]]]]])]))]))))))]]]))])])])]]))]])]]))])])))))]]))))])]]])])])))])]))]])))]))]))])]]]]]))))))]]))]]])]]]])]]))))])])))])))))])]]])))]]])]])]]])))))])))]))]])]]]]]]])])]))]])]]])]]]))]))])]])))])])]]])])]]]])]]]]])]]]])]])]))]])))))]))))]])]])])])]]])])]]))]]))]]]))))))])])))]))))])))])])]])))]]]))))])]])]]]]])])]))])))]]))))])]]])]]]]]]))]]]]]]])]))])))))))])])]]]]]]])])])]])])])]])))))))))]])))])]))))])]))]))]))])]]]]]]])]]]]])]]]]))]])))]]]]]]])])])]])]]])]]])))]))])))])])]]])])]]))]])])])]])]])])]]))))))])]))))))])])]))))]]))]])))))))))))]))])])))))]]]])]))])])]])])))]]]])]]]]]]]]])))))]]])]))]))]]])))])))))))])])]])]])]))]]))))]))))]))]]])))]))))]])))])]))))]]))])))])]))])))]))))]])]])])])]])))]]]]]]]]))))])])]])))]))]]])))]]]])]]]]])))))])))])])))]))]])]]))))]]]]]]])]))]])])]))])))]]]]]])])]]])]]]))))]))))]]])))))]]])]])]]]]]]))]]))]]]]])]))]))])]]))]])])]])])))]])])]]]))]])]))))))]])))]))])))])]])])]]]]))]))]))])]]]]])]])))]]))]])])]]]]))))]))))]]])))))))])]])])]))])]]))]])])))])]])])))))]]]))]))])]])]]])]))))]]]]])]]))]]])))]])]))]]]))]]))))]])])]]))]]]])])])]])])]]])))))])])]))]])))]])])))]])])])]]))]]]]]]]]]))]))]]]]]])]))])]]))))]]))])))))]])])])))]]]])))]))]))))))))))))]))]]]])))]]]]]])])])]])])))]]))])]))]])])])])]]]]]])]])]])])))])]]])]))])))))]])))]]])]]]))]]]]))])])]]]])))])])]]]]])])]])]]]]))]]]])]]]))))])])]]])))]]])]])]]))]]]]])]])])]))]))]))))])]])))))]]]])))]))))]]))])))))]))]])])]])))]))]]))]])]))])])]])))]]]))]]])]]]]]])))])]]])))]))]])]])])))]))]))]))]])])))]))])))]])))))]))]]]))]])])]]]]]]))]))])]]))])))))))])]]])]])])])]))]])]])))])))])]])])]])]])))))])]]])]))]]])))]))]]]]]))])))]]]]))])))))]]))))]))]]]]]]]))))))]]]]]]])]]]])]))]]]))]])])]))]])))]])]]])))]]))])]))))))]))))])]]))])])])]]]]))])])]]]])))))))])]]))]]))])))))])))]]])]]))]])]]]]])))]]]]]]))]])]))))]]]])))]]]]])])))]])]])))]]])))])]])]]]))))]]]]]))))])))]]]]))]))]])])))]]]]])]])])]]))]])))])]))]]))]]]))]])))))])]])]]])))))))])]))])))))]])]])]])]]]]]]]]]))))]]))]]))]))))])])])]))))]))])]]))]))]))])]])]]]])]])]])))]))]]]]])]])]]]]]])])]])]]]])))))))]]]]])])]]]]))]]]]])]])]))]))]))])]]))]]))]]]))])]]))]))]))))])))]]]])])]]]]])))]))]]]])])))])]))))]]]))]))])])]))]))])]))])]]))])))]]]])]]]]]]))]]]]]]]]]])])]]]]]]])))]))])]]])])]))]])])]]]]])]))]])]]]]))])]])))]]))])]]))]]))]]))]]])]]))]]])]])))]))]]]))))])]])]]))])]])])]]))))]]]))))]]]]]])]]))])]])]]]))))]]])))))]]]]))]))]])))]))]])))]]]])])])]]]]))))]]))]])))))))]]]])]]]]]]]))]]]]]]]]))])]]]]])])))))))]))]]])]]]]))])])]]])])]))]))]]]))])))]))))]))))])]])])))])]))])])]]))))])))])])]]]))]]]))]))))]]]]])])])]]]))]))]])]))]))]))])]])]])]]))])]]]])]])])]]))])]))]]]]))])]])))))])))))])]]]])])]]]])))])])]]]]]]]]))))))))))])))])])]))])))]]))])])))])))))])]])]]])))])]))]])]]]]]])]]]]])]])])]]]]]])])))]])])])]])]))])])))]))]]]]))]]]))))))]]])])])]])]))]])])]]]]))))]))])]]]]]])))]]]])])]])]])])])])))])]]]))]]])])])])]]]])]]]]]]]]])])])]]])])])])))]))]]]]]]]))))]]]]))]]]])])]))))])]])])]))))])]))]))])))]))))]]]]])))]])))))]))]]])])])])))]])])])]]]))]])]])])]]])])]]]]]))))))]]]))))))]))]]])))])]])]])))))]]))]]))]))))]]))]])]])]]])]))])))]))]]))]))))])))]))))]))])]])])])]])]])])])]])]])]])]]])]))]]]])]))]]]]]])])]]]))]))]]))]))]]]]])]]]])])))])]]]))]]])))]])])])])]]])]]))))])])]]))]))]))]]]])]]]])])))))))))))])])))])]]]))])])))])]))))]])))]]]]]])]]]])]]]])]]]))))))]]]))))]]))])])))]]])]])]]))])])))]]))]])]]))))])])]])])]]]])))])]])])]))]))))])))]]]])])])]])))])]])]]]]])))])])])])]])]])]))))]]]])]]]])))]])))]))]]])])))))])]]]])]]]])))]))])))]])]])]]))]])]]]))]))])))])]))]]))]]])])])]])))))]]))]])])))))))))]))]]]))])]]]]]]]))]]])]]))])))])]])]))]]]))]]]))]]))]])))])))])))]]]]]]]])])])]]]]])]]])]]]]]))]]))]))))))]]]]))]]])]])])]))]])])])])))])]]])])]]]]]]))])))))))))))])])))))]))])])]])]))))])]])]))]]])]]])]])]])])])]))]))))])]]]])])]]))]]]])])])]]))]]])])])])))])))))]]]))))]))])))]))]))]])))]))])))]))]]))]]]]]])])]])])]]]]))]]])))]])]])]]])))))]))))]])])))))]]))))]])])]]))])]]))]]]))]]]]])])]))]]]]))))]]]))])))))]))]))]]))])]])]]]]]]])])))))]]]]])]]])]])))])))]))]]]))])])])))]]]])]])]]]])))))])]]))]]))))))])])))))]))])])]]]])]]))))])])]])]])]]]]]])))]))]]]])]))]]]])]]]))])]))]]])]])))))))))]]]))]])]]]))]])]]])])))))])]))]])])))]]))))]]]]])]]]]))]))]]])))]]]]]]]]]))))))]]))))]))])]))]])]])))))])]))]]))))]))]]]]]))]])])])))]))]))]])])]]]))))]]])))]]])))]]])]])]])]])]])]))])])]]]])])]])))]])]))])))])]]]]]))]]]))])])])))])]))]]]]]])]))]])])]])]])))]]]))])))))]]))))]))))])))))))))]]]]])]]])])))])]])]])]])]]])]]])]])]])]]]]]]))]]])]))])]])]])])])]]])])])])])]]]))])]]]]]]]])))]]]]))]]])]]]))])]]])))])]]))))))))]))]]]])))])]]))))]))]]]]]]]])]))))])))]])]))]]]])])]))])))])]])]]]]))])))]))]))))]))])))]]))))]]])]])]]]])]]]))))])))))))))]]]))]]])]))])]))]]]])))]))]))]]])]]])])))]]])]])))]])]]))]))]))))))])]))])))]])]]])]]))]]]]]))]]])]]))])))])]])]))]])])])]]]))])])]))]]]))))]))]))]))]]])))]]])]])]]])]]))])]])]))]]]])]])]])]))])))]]]))]])]]))])]]))]]))]))]))]]))]]))]]]))]]])]]]]))]))]))]]))]]]]]]])]]]))))]]]]])]))))))]])))])])))]]))])])]])]]]]]])]])]])]))]))]])]))])]))]]])]))]]))))]]))]]]])])))])]]]])]))])])))))])))))])]]]]]]])])]]))))]))]]]]]])]))]]]]]]]]])]]))]]]])))]))]))]])]]])]]])))]])]]])])))))])))]]))))]])]))]))]]]))]]))])]])]]]])))])]))]])])))])])))]])])])]))]])])])]]]]))]]]])]]))])]]))]))])])]))]]])])])))]])]))]]]])]]]])]])])]])]])])])]]]]))))]]]))])]]]]])))]]]]]))]))]]]])])))])]))])]])])])]]))]]]])])]]]))))]])]]]))))]])])])]))]]))]])])]]])]))))]))))]))]]]))]])])])]])])])]]))]]]))])))))])]))))]]])]))))]))]]))]]))]))])])))))))]]])]])])]))))]])))]))]]]])]]]))])]))])])]))]])]])]]])]))]]]])]]])]])))]]]]])])])])]]]]]]]]))])]))])])])])))]]])])]]]])))]]]]))])]]])]])]))]])))])]]]])))]]))])])]])])))])]))]))]))]))]]))))))]))]]]))]]]))])))])))]])]))])])]]]])]))))]]))))]]])))]]])))])]))]])])))]))])])))])]]]])]])))])]])]]))]))))))))]]]]]))]])])]]]]]])])]]))])]))]))]]])])])]))]])])]]]])]]]]))))]]]])])]]]]))))]]]]]]]))]])])))]]]))]]]]]]]))))]]]])]])]]]))]])))])]]]]]))]])])])]))])])))))))]])]])]])]]))))]]]]]]]))]])))]]]))]]))]]))])])])]]]]])]))])]]]]]]]]]])))]))]]]]])])))])]))))])])])]])]))]])]]]]]]])]]])])]]))]))]))]))))])])])))))]))))]]])))]]]]])]))]))])))]]])])))])]]]]])))))))])]]]]))))]]]])]])]))])))]])])))]))]])))]]]]]]))))])]]]]))]]]]])))]]])]]])]]]]]]]]))])]]]])))))]]]))])]]]])]))]]]]))))]])]))]]))))]]))]])]]])])]])])]]])]]]]]))])])]))]]]])])))]))]))]]]]]]]])]]]))])))])])))]))]))]]]))]]]))])))))))]))]])))]))]]))))]])))]])]))))])])]]])]]))))))]))]]])))))]]]))))))))]]])]]]))))]])]))]]))]]]]))))))]))]])])))]))))]])])]])]]))]])))]]))])])]]]]])))]]]])))))]))]]))]])]])))))])])))]])])))))]])]))])]]]]]))]])]]])))))))])])))]]]]))])))]])]]]]))])]]]])])])])))]]]])))]))))))]]]])])])))]]]]])))))]]]))]))])])]]))))]]]]))]])))]])]]))]])]])])))]]])]))]))]]])))))))] [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] (([(((((([[[[((([(([([((([((([([([[([[[([(([[([(((([[([[[[([[(([[[(([[[([([[[[[[([[[[[(([[((([[[([(([([(([([([[[[(([[([(((([(((([[([[[(((((([[([([[([[[([([[(([([((([([[((([([([(([[[[(([[[([(([[[([[[[((([[(([[([[(((([((((((([([((([([([([([(([(((((([([((([([[((([[(((([(([[[[[([([[([[[(([([([[((((((([[[[(([[([([([([[[(([([[([([[(((((([([([[[[[[[[[[[[[[[[[((((([[[[[([[(([(([((([[((([((((([[[[([[[[([[([[[[(([[([[[[[([(((((((([(([[(((([(((([((((([[([[([[(((([([[[[((([[[(([([[[[[[[([[[([([(([[[([([([[[[([[[(([((([([[[[((([[([[([(([([([(([[(([[(([(((([([[(([[([((([((([[[([([[[[(([[(((([[([[[([[[[((([[[[[(([[[([(((([[(([([((([[[[([([([((((((([([[([([(([([[(([[[([[(([[([[[((([(((((((([[[[([[[((([((([[(((([[[[([[([([(([(([[[((([[(([(((([([[([(((((([[[([((([[(([([[([(((([(([[([(((((([[[[([([[((([(([[([[(([[([[((([([([(([((([[[[((((([[[((([([(([([([[[[([[(([[[(([[((([([[([[[[(((([([(([(([[[(([[[([(([[([[[([[(((([[((([[[[([([[[([([[[([[((([[(((([(([(([([(([([[([([([((([([([[[[[[[[[[[[[([([(((([([[[[([[[[(([([[[[[([([([((([((([([[[[([[[((([[[[[[([([([((([(([([[[[([[[[[(([[[(((([[(([([[([([[([(((([[([[(([(([([(([([[([([[[[[[([[(([((((([[[([[(([(([[((((([[[[([([[([(((([[(([([([[[(([((([((((((((([[[[(((((([[[[([([[([([([([[((((([([([(([(((([[([[[[([((([[[[[[([[[([[[[[[([[([[([[([(([((([[([[([(((((((([[([[[[[([(([[([(((([[([[(([[([(((((((([([([[[((([[[(((([[[[([(([[[([(([((((([[(([((([(([[[[([([([[(([[(([[[[[[[(([(((([[(([[[([[([[[(([[([([([[(((((([[((((([([[[([[([[(([([[[[((([(([[(([([[([([[(([[[([[([[[[[[(([[[((([([[(([[[(([[[(([[([((((([([[([[(([([((([[([[(((((([[((((((((([(([(([[[[[([(([[[[(([(([([([[([([[(([[[(([((([(((((([[(([((([([(([[([[[((([[([[((([[[[[[[((((([[([[[([[([(([[[([([[(([(((([[[[[([(([[[[([([[([([(([(([[[(((([([([((([[([([[[(([([[([[[[((([[[[(([(((([(([[[(([([([([(([(([([[([((([[[[((((([[([(([(([[(([([[[[[[([[([[[(((([(((([([(([([[[([[([[(([[([[[[[[[([([[[[[[([[[[([[[[(([(([([[[(([[[([[((([([((([[[((([[[([[([([[[([([([(([[([[(([[[((([([([[[([([[[(([(([[[[[(((([[(([([([(((([[([[[([[[([[[([([((([[((((([[[([[[[([[(([([((((([([[[(([[((([[[([(([[(([(((([([[([[([((([[[(([[[((([[[[[([[([((([([[[([((((((([[(([[[[[[[([(((([[((([((([([([([[[[[(([[((((([([[[(([([[((((([[[((([[(([((([[[(([(((([(([[([[[[((([[(([([[[(([[[([(((([[[([([([([(([(([(([([(((([[([([[([[([[[[[[[[[([[([([((([[[[[[((([[[(([[((([((([(([[(([(([[([[[[[[[(((([(((([([[([[(([([(([([([((((((([[[[[[([[[((([[(([[([(([([([[[[(([[(([[([([[[([([(([([[(([(([(((([([[[[([[([[([[[(((([(([[(((([[[[[[[([[[[([([(((([(([(([([([[((([([((([([((([((([([[[[(([[([([[([([(((([((([((((([(([(((([[(((((((([[[[([([[[[[[[[[(([([([[[[[[(([[[[[((([[((([[([(([([[[[(([[[[((((([[[([[[[([[(((([[[([[[((([(([(((([[[((([[([[[(([[[[[([([[[[[[[[[[(([[([(([([([[(([[(((([[[((([[([[([([(((([[[(((([[([[[[(((([[[(([[([([(([[(([[([(([[(([[([[[([[(((([([[(([([[[[((([[[((([([[[[([([(([([[[([[[([[[(((([([[([([(((([[((([[[((((([(([[(([([(([[[([[([[[((([((([([(([([[((([((([[[(([[[(((([(([[(([(([([[[[(((([(((([[[[[((((([([([[([(((([((([[[[[[[([([[([[[[((((([[[([[(([([([[([[([[[[(([(([((((([[[([[([([[(((((([([[([[(([(([((([[(([(([(([[[[[([((([([((([[[[[[[(([(((([[[([[[([[[([[(([(([[([[[[[[([((([[[([([((((([([[(([[([((([[(([[[[[(([[((([[([[[(([[[[[([[[[[[([[[(((([([[[[(((((((([[[(([((([([([[[([(([[[[[[[(([[[(([(((((([[([[([[([((([[((((([[([[[(([[([[[[[[[([[([[[[((([([[(([[([([((((([[(([((([([[[(([((((((([[[(([[[([[([([[([[([[[[(([[(([[[[([[[[(([[[[[([((([[([([([([[[((([[[[[([(([(((([[((([([[([(((([([([([[([((([(([([[([[[([[[[([([[[(((([((([([((((((([([[(([[[[[[([([(([(((([[[(((([[([[[[[((([([[([([([[([(([[(([[[[[[[([[([((([([[[[([(([((([[([[(([[([([[((([[[([[(([[(([((([(([([([([([((([[[([([[([[[[[[[[[[([[(((([[([[[((((([((([[[((([((((((([((([((([((([[([(([[[[([([[[([[[(([([(([(([(([([([([[(([(([[([[[([[[((([([[(([[[[([([[([[[[((([([[[(([[((([[[([[([[([(([[[([((([(((([[[(([([((([[[((([[([[((([([[[[(((([[[[[([(([([((([[(([([[[([[[((([[[([[([((((([([[[(([[([[[(([([([([[(((([([[[[([[(([[[[[[[((([[([[(((([[[(((([(((([[[(([[([(([([([[([([(([[([([(((([[[((([[[((((([[[([([[[[[(([[(([[[[([([[[[(([((([[[[([(((([([([(([([[((([([([([[([[[([[[[([(([[[[(([[[([((([[([[[(([([[([(((([[[[[[(([(((([[(((((((([([[(([[[((([[[[(([(((([((([([([[[([[[(((([[[([[[([[([[(([[[[[[([[(([((((((([[([[(([[[[(([((([[[(([[[[([(([[([([([[([[((([[([([((([([(((([[[[[([[((([([[[([[([([(([[[((((([[[([[[(([[(((((((([[[([(((((([[((([[([[[(((((([[[((([[[(([(([[[(((((([[([[([((([[([([([(([[(([([([([([[[[((((((([[((([[([[[[([[([([[([([(([((([(([([([([([((((([([(([[[[[((([((([[(((([((([[([[[(([([([([[(([[([((([[[[[((([[([[[((([([[(([[((([[(([[([[[[[[[[([[[([[((([[[(([([[[[(((([[(([([(([[([[(([[([[(([(((((([(([(([[[[[([(((([[[(([[((([(([[(((([(([[([([[([[[[([[(((([[((((([[[[[[(([[[[(([[(([([([[(((([[[[[(([(([((((([[((([(([([[([[([([[[[[[([[([[[[[([[[([[[([([([[[[([[([((([[([[([([([([[([(([(([[[[[((((([(([([(((([((([[([([[[[[([[[([[[([(([(([[(([([(((([[([[[(((([[[[(([(([([(((([[((([[[[(([[[[[(([(([[[([((([[(([[[[(([[[[[[[[[[([[[([(([[([[[([(([[([[(((([([[[(([([([((((([(((((([[[([[(([[([([[([[(((([((([[(([([[[[([([[[(([[((([([[[[[[(((([[(((([[([((([[([[((([([[(([([[([(((([([(([(([([(((([[[((((([(([[[[([[[[[[[[([(((((([([((([[([[[((((([[((([[(((([(([([([[[((((((((([([([[[[([[([(((([[([(([[([([[[([[[(((([([[([(([[[[[((((([([([[[([([([([([[[(([[(([((([([[((([[([[(([[(([(([([[([[([[([(([(([([([[[(((((([(([([([[([(([[[[([([([[[[[(([([[([(([[[([[[[([[((([([((([[(([([((([((([([[([((([(((((([[([([(([[[[[[[((([[[((([[[([[(([[([[[([([[([[[[[[[(([([[((([[[([([([([[(([([([((([[[([[(((([((([([([([[(([(([[((([[[[([[(([[(([[[[([([[((([([[[[[([([[([(([([(((([[([(([[([[[([[([[[[(((([(([[(([[((([[[(([([([[([((((([[([(((([[[[[[([[((([[[[([[(([((([[(([([[([((([(([[[([[(([[([[([((([([[([([((([[[(((((([[[((([((((([[[(([([([((([[[[[[([[[((([[[[([[[[([[[([[[[(((([[([(([[(([[[((([[(([(([((([(([([[[[[(((([[[[[[[((([(([[(([[([[[[[[[((([((((([[[([[([[([([(([[([[(([[[[(((((([[[[(((([([([(([((([([[(([[([[[([((([(([[([[([([([[(([([[(([(((((((([([(((([[[((([[((([([([[([([(([[[([[([((([[([([([([[[((((([[[[([[[[[[[[(([[([((([(((((([([([([([((([[([([[(([((([([[[[[(([(((([[[[[((((([([[(((([((([([[([([(([((((([[([([([((([((((([[(([(((([([[([(([(([[[[([[[([([[[([[[(([[(([[((([((((([((([[[([[[[[[[[(([(([([(([[[[([(([(([((((([((([[[[([[[([[([((([(((([([((([([[(([[(((([(([[[(([((([([([([[([(((([[(([(([(([[[(([[[([[[((([((([[((([[((([([([(((([([[(([(([[[[[[((([[([[([[[(((((([([[((([([([[[[[[[([[[([([[[[[[((((([([([(((((([(([[[((([[[[[([([[(([[[([(([[[[[[[((([[([(([([([([[[[(([[[[([[[[[[(((([(((((([((((([[[[[([(([[[(((([[[((([[([[([[((([(([[([(((((((((([((((([[[[[(([[((([([[[[[(((((([[([([(((((((([[[([(((((([[([(((([((([([([[[[[[([((([[[([([([[((((([([[((([[[[[([[[([((((([[([[[[([([([([[(([([([[[((([(((((([[[([(((([[[((([[([[[((([((([[[((([[[[[(((([[[[((([[[[([[((([([[[[([[((([[(([(([([[(([([([([[[((([[((([([[([([[[([[(((([([([([[(([(([[[([(([([([([[[([[([((((([(([[[[([([[([[[([([([[[[([([(((([[([[[([[[[[([([(([([([[([([[[([[(([([[([([[([[[([([([(((((([[[[[[[[(([(([[[[[[(([([([[([(([([[[([[([([[(([([([((((([([((([[(([[([(([([(([[(((([([[([[[[[([[([([[(((([([(((([[[[[[[[[([((([([[(([[(((([[[[([[[[([(((((((([([([[(((([[(([((([((([((((([[[([[[[((([([([[[[((([[[[(((((([([([([[[[[[[[(([[(([(((([([(([[[[[[[([[([[[(([[(([([((([([[([[[([[([((((([[[(((((([([(([[((([([([[(([([([[[[[(([[[[([[(([[[([(([[[([[[([[[[((([(([([[[[((((([([([[(((([[[(([([(([(((([((([([[[([[([([[((([[[[[[([(([[([[((([[[((([[([[[[(([[(((([[([(((((([(([([[[[([[[(((([[[([((((([([((((([([((([((([(([[[[[(([(([(([[[([[[([[(((([[([(((((([(((([[([(([[([(([[([[(([[[[[([[[(([[[(([((([([([[(((((([[[[[[[[((([(([([(([[((([[[[((([([[[([[([(([[((([[[[([[([([(([([[(([([[([((([([((([(([(([((((([(((([[[[(((((([[[(([(([([((((((([[(([[(([([[(([[(((([(((([[([([[[(([(([([([[(([[([((((([[(([[([[(([((((([[[([([(([[[([([[(([[[[[([[[[[(((([[[((((([[[[[(((((([([[[[(([[[([[([([[[(((([(([[([((([([[([[[[[[([[[[(([([[[[[([[[[([(([(((([[([(([[([((([(([[[[[((((([[[[([([[([[([[[[[(((([([[([([((([[((([[(([(([([(((((([[(((([[([([([(((((([(([[[([((([([([[[([[[([(([([(([[[(([([([([[((((((([(([((([([[([(([([([([(((([([[([[[((([((([[([([[(([(([[((([(([[[[[((([([([([[(([[[[([([[([(([([([(([((([((([(([[[[(([[[[([[[(([([[[[([(((((([([[[([[[[(((((([(([(([[([(([[([[[(([([([[([([[[([([[[(([[([[[[[([[[[([((([[[([[(([[(([[[[[((([([(([[[[[[[([[(([[([((([([[([[(([[([([[[[([[[([[[[([[(((([([(([[[([(([(((([[([[[((([(((((([[(([(([([([[[[((([([[[[([[[(([(([[[[((([([[[([([[[(([([[(([[[([[([[[[[([([[[((([[((((((([[[[[[[([[[[[([[(([[[((([([((([([([[[[[(((([([([[[(([[[([[[(((([((([[(((([[([(([[((([[[([[((([[([(((([[([[[[[(([([[(((([(((((([([[((([[[([[([[[(([([[[([(([[((([((([([[(([[(([[[([[(((([([([([([((([[(([[([[[[[([[([[[(([[[([([(((((([(([[[[[((([[([[((([[[([((((([(((((([[[[[(((([([[(((([[([((([[([([[(([([((((([(([(([([[[((([([(([[[(([([[(([[[[[[((([[([((((((([((([((([(([([[[([([[((((([([([[(([([[(([((((([[((((([[([(([(([[[[(([((([[[([((([([(([[([([[([(([((([(([[([[[([[[[[([[[[[(([[([([[([([[(([[([[[[[[[((((([(([([[[[[((((([[[(((([[([[[[(([(([([[[((([[[[(((([((([((([[[([[[[[((((((([[((([[(([(([([[[(([(([((((([[[[[[[([([(([[([[[(([([[[[[([([[[[[((([([[[([[[((([((((([(([[([((([(((([[[[[[[((([((([([([[([[[(([([(([(([[([[[((([((([[([[[(([([[(([[[([[[(([([(([[[[([((([[([([(((((([[[[[(([[[([[[[((((([([(([[[[(((([([(([(([([[[[([([([[([([([[[(((([[[([([([[([[[[[[([[([[(([[[(([[[([[[(([([[(([[([([([([[[[[([[([(([([[([([([[[(([(((([[[[[((([[[[[(([[[[[((([(([((((([(([(([([[[[([(([([[([[[([((([(([[((([[[(((((([(([[[([[([[([[[(([(([[([[(([[([[[[(((([[((([[(([(([([[([([[[[[([((([[([((([[(((([[[[((([[[[[[[[([(([[[[(((([([[([([([((([([([[[([[(([(((([([(([[[[[([([[[[[(((((([([[([(([[([[([(((([([[[((([[[((([((([[[(((((([[[((((([([[([([(([[([(((((([[(([[[[([[([(([[((([((([[(([([(((([[[(([[([([(([([(([(([((((([([((([[([([[[([[[[[[[(((([([(([[(((([[[[[(([([[[[([(([[[[((([([((((([([([([[[([[(([(([[[(([[[(([[[(([([[[[((((([[[(([(([(([[[(([([[[([((([([((([[(([[((((([([([([([(([[(([(([([([[((([([([([([[[(([[[(([[[([[[([((([[[[((([([[[([[[[((([((([((([([[[[((([([([[[([((((([[[[(([[[[([([[[[[[[[([[[(([[([[[(((([([(([[([[[(([([(([([[[[([[(((([([((([[[([[[(([((([[[(([([(([[[((([[[[([([[([([[((((([((((((([([([[(((([([([[[([[(([(([([[(([((([[((([([[[((([([[[([([[[([([[([([((([(([[[(([[(([([[[[([(([(([(([([[(([[([([([(((((((([[[[[(([(([([([([[(([(([[[[([[[([[[[[[[((([[[([((((([([[([[([[[[[([(([[[[([[[([[[[((((([[[[[(([[[[([[[([[[[[[([[[([[[[(([((([([((([[[((([((([[[([[([((([[(([[[([[[(([[(([[[([([([[[([[[([[((([[[([[([[[([([[[((([[(((([((([[[([[[[[[[[(([[((([[([[[([([(([[((((([([[[[(([([(([[[[([([[([((([((([[((([([([[(((([[[[((([([[((([[[([(([([[([[[[[[((([((([[[([[[[(((((([(([[[([([[(((([(([[([(((([([([[[(([([[[(([([[[([([([(((((((((((([[[([((([([[[([[([((([[([[[[(([([(([([[[[[[((([[[[[((([[[[((([(([[(([([[([([([[(([[([[((((([([[([([[[(([[[(([([[(((([(([((([((([[([([((([[([([[((([([(([[[[([[([[[[[((([(([([([[[([(((([([([(([((([[(((([[[[(((([([((([((([[(([[[[([([[(([(([[[((((([(((([[[([(([[[((([[([[[[(([([[([[([([[[[[((([([[[[[([([([(([[[([(([([([(([[((([[[[[[((((([((([(((([[([[([[([(((([[[[([[[[[([[[((((([([[([([(([[(([([[[[([((((((([([([[[[([[((((([[(([((([([[[([((((((([([[[([[((((((([[(((([([([([[[([([[[[[([[([(([[[[((([(((([([(([((([(([([([[((([[([[[[(([[(([((((((([([([[([([[[([[([(([([[([((([[([([([([[([(((((((([[([[[([[[(([[[[([[[(([([[([[[(((((([[([[(([((([(([([([([(([[[[([([[([[([[(([([([([[[[[[([((((([[[[[[([([[[([((((([([([(((([(((([([[[(([([[(((([(([[[(([[[[([(([([([([(([[((([[[[([[[[(([(([([((((([(([([([[([([[[[(([((([([[[[[([[[[[([([[[([[[[[(((((([[[[(([(([(([[(((([([((((([(([((([[(([[[([(([[([([[[[((([[([[[[([([[([[(([([[(((((([[[[(([[[[(([[(([([([([[[([[[[(((([[(((([[[[[[(([([([[(([[((((((([[[[[[[[((([(((([([[[([[[((((((((([[([[(([[[[[([[(([[[((([((([((([[(([[[[[[[((((((([[[[([([[[[[((([[(([[[[[([[[[[[[[[[((((([((([[[[([[[(([((([(([([[[[[([((([((([([[[(([([[([[[(((((([[((([[[[[(([[[[([[[[((([(((([([([[(([(((([[(([[[([[(((([[([[([[[[(([(((([[[([[([[[[([(([((((([(((([[(([[((((((([([(([((([[[[([([([([([[([[([(([[([[[([(([[([(([[(([[([((([[(((([(([(([[(([(([[[(([[[[([([(([[[[(([([([[(((((([([[([((([([((([(([[[[([([(([(((([[(([((((([([(([[(([[(((([[(([[[[[(([[((([[[([([(((([([(([([[[[[[[((([[(((((([([[([([([([((([(((([[[((([(([(([[[[[[[([[[([[(([[(([[[[[([[[([(([[[[([[([((([((((((([([[[[[([[(([([[(([[[[[((([(([[([[((([[[(([[([[(([((((([(([[(([([[[[[([[[[[([(([(((((([((([([[[(([[([([([([((([[([([[((([[(((((((([([((([([[(([[((([([(([[(([([[([(([(([[([([((([[[(([(([[[([([(([[[[([[([[((((([((([((((((([((([[([[([[[([[[[[[([[[((([([[[([[[[([([([([([([([[(([[([[[(((((([([[(([([(((([([[[[[([[[((((([([[([[([(([[([[(([(((([[([(([((([[[([(([[[[((([[[([[(([(([([[[([[[[(([([((([(([[([([[(([[((([(([[((((([[[([[[([([[([([[[[([([([[([([([[[([([[[(([([[(([([([[(([[[([((([[[[[([(([[[[([[([([([[(([[[(((([(((([(([[((([((([[(((([(((([((([([([[([([([[((([([[[((([[(([(([(([([[(((((([((([([([[([[[[(([[[([([(([[((([[([[(([([([[(([[([[[[[([[[[([[[([[(([([[[[(([[[((((([((([([([[[((((([(((([[(([(([[[([[(([[(([[([([([[(([[(([(((([[[[([[[(([([((([([([(([(([([(([[(([[[[(([[(([([[([([(([(([((((([([[[(([[[((([([([[((([[((([([[[([(([[[([[(((((([((([[[[[(([([((([([(((([([(([[([[[([[([((((([[([(([([([[[([[([((([[(((([[(([[([[[(((([[([([([([((((([[[(([[[([([[[(([([[([(([(([([[[[[[[[((([[([[[[([([[([((([([[([([([[((([[[[((((((([[([[[([([[(((([[[((([([[(([[[[[[[(([[([([([([(([[(([((([([[[[[([[[[([([([(([([(([[[((([([[[[(([[((((([[[(((([[[[(([(((([(([(([[([[([[[((([(([((([[[([[[([(((([([[[[[[[(([[([[((([[([[([(([((((([[[((((((([([(([[([[([([[[([(([(([[(([[[[([[(([(([(([(([[([[(([[[[((((([([([(([[[([[[[[([([[[[[[([([[([([[[[(([[[[([([[(([(([[[((([(((([[([([((([[(([[[([(((((([[(((((([[(([[([((([[(([[[[([[[(([[[([([([(([[[[[([[(((([(([[[[[(((([[([[[[([([[[(((([([[[([[[([[[[([[[[((([[[[(([((((([((([(([[[([(([[([[([([([((([([[((((([([([(([[[[[([[[[[[[(([[((([([[[[[[(([(((([[([[([([[((([((([((([(([[(([[[[[(([[((([[[[(([[[[[(((((([[([[[[([([[(([[[[((([([[([[(([[([([[[[([(([[((((([[[([(([[[(([(([[[[[([[[([(([([[(([([[[([((((([([((([[(((([[((([([([([(([[(([[(([([[[[((((([([[[(((([[([[[[([([(([[(([([([[[[([(([[([([[([[(([[[[(([[([(([([[([[[([[([[(([[[[([[([([([[[(((([[([([((([(([(([[(([((((([[(([[([[[[[[([[([(([(((((([[([([(((([([[[[([[((((([[[[[[[[((([(([[[[(((((([[[[([[((((((((([[(([[[([[[([[([[[(([[[[(([(([([[([[([[[[((((([((([[(([[([[[([[[[[([((([[[([([([([(((([[(((([[[[(([[[[([[[[[([([([(([[([([[(([([(((([[[[(((([(([[[[((([(([(([([([[(([([[[([[[([([[[[([((([(((([((([[([[([([[[([([(([(([([[[[[[[(([[[[([[[[[[([([([[((([[((((([([[[(([(([[[([([([(([([[((([[([[((([[[([[[([[(((([([([[[[(((([[(([[(([[[([([[((([[[[[((([((([[(([(([[[([([([[([[(([(([([[[[((([[(([[((((((((([[[[((((([(([([[[(((([[((([[[[[[[(([((([([[([((([(([([(([(((([[([[(((([[([[[((([((((((([(((([[((([[([(([([[(([([[([[[([[((([[([((([[([([[([([([[((((([([[[[[([([([[[(([([[[([[([([[(((((([[([([((([([[[(([[(([([(([[(((([([[(([([([((([((([[([((([[[[[([((([(((([[[[([[[([([[([(([([(([[[[[[(([([[[[([[[[[[[([([[[([([[([(((([((([[[[((([[[[[(([((([[(((([([[[(((([[([(([(([(((([[([[(([[((([([[(([[[[[[[[[(([[([[((((((((([(([[[[[[([[(([[([([[[[[[[[([[(([[(([[[([[([[([[[([([[[([[[([[[([([([((([((([[([[[[[(([[(((([([([((((((([([((([(([([[(([[[(([[([[((([(((([[[((([[[[[[[((([[(([(((([[[(([((([[[[[[([([[[[[((((([([[(([[[[((([([[([[[((([[[[((([([([[([[((([([([[((((([[[(((([[[([[([(([[(((((([[[[[[[[([([[((([[[[[[[(((([(((([[([[[[[([([[([[[[([[[(([(([(([[[[(((([((((([((((([((([[[[([[(([[[([([[[([[(([([[([[[([(([(([[[([[((([([[([([([([(((((([[([([([[[((([(([[((([[[([(([([(([((([[(([([[[[[([([[[[[(([[(((([[[([(([[[([[[((([[[([(([(([[(((([[([[[([([[([([[[[[[[(([(((([([([[[[((([[[[[[([[(((([[([([([[([[([[[[(([[(((([(([[[[[(([([[((([[[(((([[(([(([([[[([(((([([(([[(([[[([[[[(([(([([([[((([[(([([([[[(([[[[[([[([(([([[([((((([[[(([[[[[[[([([((([[[[(([(([[([[[([([(([[[[(([[[(((([((((([([([((((([([[([[[([([[[[[(([(([(([(([([[[[((((([[[[[([([[[([([((([([(([[[([(((([[([([[(([[((([[[[[([[([[[(((([(([[[([(([[[[[[([[([[[[(([([[[[[[[([[[(([(([[(((([[(([(([[(((([([[[[[[(((([(([[[((([[[[[([[([(([[[[([(((([[[[[[[[[((([(([[[([[(([([[[[(([([[[([[([([[((([[(([[([[([[([(([[[[[(([[[((([[((([[((([((([(([[(([([([[[(([(((([((([[((((([[[[(([([(([(([(((([(((([(((((([([([((((((([([[(([[([([[([([[[[([(((((([[([(((((([(([(([[([(([(([([(([(((([[([([([(((([[(([(([(([(((([([(((((((([([((([((((([[[((([[[([[[[[([[[([[([[[[([[[([[[(([((([(((([[[[[[[([([([[((([([[[([[[([[(((([[([(([(([[[[[[([[[([([[([([(([(((([((((([[([(([[[[[[[([((((([((((((([(((([[(([[((([((((([([([(([[[[([([([(([([(([[((([[([[[([[([(([[[(([(([(([(([(([[(([[[[(([[([(([[[[([[[([[[(([[[(([[([[[[(([([[[([([[(([[([(([[(((((([[[[[[[[([[[(([[[(((([(([[[(((([(([([[[[[[[[[((([([(([([(([[([([[[[[[([([(([[([[[((([[[[[((([[((([([((([([[((((([[([[((([[(([([[([(([[((([[((([([[[[(([[([(([((([(([[([[[(((((([[([[([([(([([([[([[[[[[[([([[[[(((((((([((([(([[[[([([[[((([(([[[[([[[([((((([[[([[([([(([([[(([((([[[(((([([([[[[[([(([[(([([[[[(((([[(([[((([[[([((((([[([([([[((([([(([[([(([([[[(([([([([[([[[([(([(([([(([[([([[([[(([(((([[[[[([([[((((([[[[[[[([[(((([((((((((([([[[([([[[([(([[[[((([((([([[([[[[[((([([((([[(((([([([([([([[[((((([[([[((([[(([[[[[[[((((([[((([([[[[((([[[([(([([[([((([(([[([[((([[([[((([([[[([[[([[([[[([((((([((([([[(([[((([([([(([(([[(([[[[([(([[((((([(([([[[(([([((([((([[(([[[[[[[([((([[(((([[[[([(([((([([[([[([[[((((((([[((([(((([((((([[([[[([((([[[[((([(([[[([(((([([((([[[[([[[(([[(([[[[([(([[([[[([[([[[(([(([[([[[[(([(([(([(((([[[[([((((([[([([[[([(([[(((([[[([[[[[[[[([[(([[[[[([[[[(([[[([[([(([([([[[[(([[([([((([[[([(((([([[[[([([[(([([[(([[([(([([[((((((([[[(((([[(([[[(([([(((([[(((([((((([[[[[[[[[([((([[[[([(([[[((([[[[(([[[[([(([[[[([([[[([(([[[[[[(([(([([[[([(([[(([[([(([([[[(((([[[(([(([[[((([([[[[[[([[[(([([[[[[([([([((([[[(([[((([[((([(([(([[(([[([([(([[((([[[[(((([[[[([[(([[((([(((([(((([[[[([([[[[[([[[[([([[[[[[([[[([[[[[[[(((((([[[[[((((([([((([[([[([((((([(([(([[([([([[([([[([([[(((((([([[[(([[([[[[((((((([[[([[[([([(([[((((((([[((([[([[([[([[([(([((([(((([[[[([(([[((([[[((([(([[[([([([[([(([((([[[[[[[[[[([(([(((((([([[(([[[(([([([[((((([([([([([([[[((([[(([([[([(([[[(((([[((((((([[[(([[[([[((([(([([([((([[((([[([((([([[[[(((([[([(([[(([[([[[(([[[([[[((([[[[[([[([[([[([(([([[([([(([(([[[([[[[[([(([(([((((([([[((([[[([[(([((([[[(([(([([[(([[[[[[([[[[([[[[([([([([[[(((((([[[[[[[[([[(([(([[(((([(([((([[(([(([([([[([[[([[[([((((((([[[[([([[([[[([(((([[[(((([((([(((((((((((([[[[[[([(([[([([([(((([[([([[[([([((((([[([((([(([(((([[[[([(([[[[[[[([[(((([(([[[(([([[(([(([[[[([[[([[[[(([(([([[[([((([((([(((((((([([[[[[(([([(([[([([(([([([([[([(([([[[[[[[[([[[[[(([((((([((([[([([[[((([[(((([[(([[(([[[(((([(([([[[(([([([((((([(((((([[[(((([([([[[[([[([[([[[[[[([((((([[[[[[[([[[[[[([[[([[(([([([([[(((([((([(([[(([(([[([[[[[[(([[(([[[([[(((([[[(([([[(([([(([([([((([((((([([[[(([([([([((([(([[[(([((([(([[([(([[[((((([(([([[[[[([[([[[[(([([[[[[(([([([[(([(([(((([([((((([([([[(([[[[[[[([[[[([[([([([[(([[(((([(((((((((([[([((([((([([[([[[(([[[[[([(([(([((((([((([((([[[[((((([((((((([([([[(((([((([(([[((([[[[[([([[[(([((([[[[[[((([(((([([[[[([[((([((([((([([([(([[[[((([([[[([([[(([([(((([[([[([([(([[(([((((([[(((((([[([[[([[[[[[[[[((([([(((([[[(((([(([[(([([[[[(((([[[[(((([[([(([([[[([([(((([[(([[([([[[([([[([([(((((([[([([[(([[[[([[(([((([(([([([[[(([[[([[[([([[[[[[((([([[[[((([(([[[([[[[[(([([([[(([[([(([((([(((([((((([[[[([[(((([([([[([[[((((((([((((([([[[[[[((([[([[((([([[([([((((([(([[[([[[([([[[([(([([[([([(([[(((([[[[[([([[[[([[[((([[([[(([[(((([[[(([[([[[[[([[[([([(([(([((([((([[[((([[(([(([[(((((([([(([[([([((((((([([([(([[[[(([[[[[(((([(([[[([([[([([[([(([(([[[[([(((((([[[([[[[[([([[[([[((([(([[[[[(([[([[[([([[([[[(([[[[[([(([([[((([(([[[(([[([((([(([(([((([[[[[([[([((((([[([(([([((([([[([[((([[([[([[([([[((((([(((([[((([[[(([(([(((((([[[[([(([([[[(((([([[[[(([[(([(([(((((([(([[[[[(([[([[[((([[((((([([[[([([(([[([((([[[[[(([[((([(([(((([([[(([[[[([[(([(([(([[([[([(([((([[((([[[[([[((([([[([[([[((([[(([[[((((((([[[[[[[([([([([[((((([(((([((([[[[(([[[[[[[[[([(([[(([[[(([([[([([[[[([(([[[[(([(([[([[([((([[([([(([[[[([((((([[([(([(((([[[[([([(([([([[[(([([([([(((([[[[(((([[[[[[[[[(([(([([(((([[(([([([[[((([([([[[[(([(((([([[[[[[[([([[[[((([((((([[[[[([([[[([([((((([[[[([([[[[[(((([[([([[([(([[((((([((([[((([((([[([(([[(([[([((([[((((([[[([[([[[[[[(((((([(([[([([[([[((([[([[((((([[([([[[[(([[([[([[[([(([(([(((([([(([(([(((([[[[(([([[[(([([((([([[([[((([((([((((((([([(([([[[(([[[[[(((([[(([[([(([[[[([[(((([[(([([[[([([[(((([([([[([[[[([([((([(([(([[[(((((((([[((([(((((([[[(((((((([[[[[[[[[(((([[[([[[[[[[[([[(([[[[[(([([((([((([[((([((([(([[([[([[[([[(([(((((([[[([(([([[[([[([([(([[([(([(((([[([[([[(([[[[[((((([([([([(([[[[([[([[[(([[[(([([[([[[[([[[[[[(((((([((([[[[(((([([(([([((([[[[[[[[[[([(([[([([[[(([[([[([([([([[[([(([([(([(((([([[[([[((([(([([[([[((([[(([[[[[([[([([([[([((([([((([[[((([[[[([[[[(([[(([[[([[[([[([([[((((([[[[[[[(([[[([[[[(([([(([[(([[([(([[[([[[[(([([(((([(((([[(([[[[[([[((([([([([(([([([([[[(([([[[[(([[[([(([((([[(([([[[([([((([[[[([[[[[[([([[([[([([((([[([((([([((([([(((([(([[[(([[[([((((([([((((([([(([[([[[([(([(((([[[[[[((((([[[[((([([(([((([([([(([((([[(([([[[[([([([([[[(([(((([[[((([[((([([([[((([(([[[[[[(([((([[((([[[((([(([((((([[(([[[[[([[[[[((([([([[([[(([[[([[[(([[([([((([(([(([[(((([([[([([([(([([[(([(([([[[([[([(((([[([(((([[[([(([[[([[(([([([[([(([[[[([[[([[[[([((([((([[[[[[[[([[((([([[(([[[((([([[(([([[[[((([([[(([[(([((([(([[((((((([[([[([(([([[[[(([[[([[((([((([[[[[[(([[[[[[([[[[([((([[([((([[[([[([[[([[[([[[([[([[[[[[[[[([(([[([[[(((([[([(([(([[([([[[([([([[[[[(([[([(([(([[[[([[[(((((([([[([[[((([[(([([((([([[[[[[[(([(([(([[(([[(([((([[([[([(([[([[[(([([([(([(([([(([[([(([((([((([[[[([([([(((([[[([(([([([([([([[[[([([[[[(((([[[[([([[[([(([([[(([([(([[([[[[[([[[[([(([([[[[((((([[((([[[([[([(((([[[([([([([[[[(([[[([[([[[[[((([[([[[([([[[[([[[([([[[[([[[(([([[[[[[((((([[([[(([[(([[(([[[[([[[((([([[([[[[[[[[([[([[[(([((((((([[[[[([((([((((([[(([[[[[(([[[([(([[([[[(([(((([[(((([[(((([([[([[(([(([[[([(([[(([[((([([([((((([([(((([([([([([[([((((((([[([[((([[([([[(((([(([[([[[((([[(([([(([((([([[[[((([(([((([([[([[([([[[(([[([[[(([((((([[[[[[[[(([(([[(([(([([[[[(((((([[([[[((([(([([[[[[([(([[((((([([[(([[([[[[((([((([(([[[([(([(((([[[[[([[[[([([[[([[((((([(([[(([[[([([((([[([[(([(([([([[([[[[[(([[[([[[([[([[[[[[((([(([(([[[((([([[[([[(([[[(((([([([([[[[[[([(([(((([[[([[([[(((((((([[[[[([(([[[(([([([(((([(([((([([[([((([[(([([[[([(([(([[[(([(((([(([((([[[([[((([(((((((([([[[([((((([(((([([(([(([[[([((((([((([[([[[([[[[[[[[[[[[(([[[((((([[([([[([[[((([(([[([([[[[[([(([[([(([([(((([[[[([(([[[([((([([([([([[[[[[([[([([(([[[[([([((([((((([[(([((((([(([([[[((([[[[[([[[([[(([([([([([[((([((([([(([[[(([[[(([[[([(([[[([([[(([([[([(((([(((((([[([([(([([[([[([(((([[[[((([(([[[[[([[([[([[([[([[((([[([[([[([[[([([(((([(([[([(((([[(([[[(([([([[[[[[([[[[[((([[((([[[([([[(([((([[[[[[([(((([([[([([([((([(((([[([([[(([[[[[([([([([[([[[([([((([(([[[[[((([((([(((([[[[((([[[((((([[([[[[(([(([[(([([[[[[[[([(([[([[[((((([(([([(([([(([((([[[[([([([([(([[[[([(((((((([[((([[[[[([[[[[((([([([[[[[[([[[([[[[[([[((((([([[((((([[([([(([([[[([[[([[((((([([([[[[[[([((((((((((([(([(((([([[(((((((([((((([[([[([(((([[([([([[[[([[([(((([(([((((([[([[([([[[((((([([[[[[(((([[[[(([[[(([[[([[[([((([([([([([[[((([(([[([[[[(([[([[[[[[([[[[((([([([(([([([[(((([([(([[[[((([([[[((([[[(([([(([[((([[[[[([[[[[([[[(((([(((([[[[[([[[[[(([(([([([[[[([([([[([(([[([([([([[[([[([[(([[(([[(([[(([([[([[[([(([(((((([[[[([[([([[(([[([([((([([([[[([[[([([[[(([[([[(((([([[[[[[[[([(([([[[[[(([((([[(((([([[[([([[[([((((([[(([[[(([(([[[([[(([((([([(([[[(([((([[(([[[[[[[([(([([[[(([([((([[[[[(([((([((([([([[([([(([[[([(((([([[(((([[[[([((([[[([[[(([([([[([[[[[([[[[[[[([[((([[[[([((((([([[[(([([([(([((([[([(((([(([[([([((((([[((([[[(((([[([((((([(([[([[(((([([(([[[[([(([(([[([([((((([[([(([[([([[(((([[[(([[[[(([[[([[([((((([(((([([[[[([[[(((([((((((((((((([[(([([((((((([((([[((([([[[([(([[[[(((((([([(((((([(((([[[([(([([([((((([[([[(([(((([([([(([([([[([([([[[[([(((([((([(([((([[([[[[([([((((((((([[[[([[(([([(([[([[(((([[[[((([([[[((([((([([([((([(((((([([([(((([(([(([[([(([[([((((([([(([[(([[[[(([[([([((([(((([(([(((([[[([([(([[(((([[((([(([[((([[[(([[((([[(([(([[[[(((([[([((([[([[(((((([([(([[((([[([[((([((((([[((((([[([[([([[[[([[[[[((([[(([[[(([[[[[(([[([([[[[(([[([[(((([(([[[([[([([[[(((([[(((([[(([[([[((([[[[[([([(([([[[[(([[((((([([[[[([([((((((((([[((([[[[(([(([[[[(((([[[([(((([[(([([(([((([(((([[(([(([[(((((((([(((((([([[[((([[([(([[([[(((([[((([([[((((([(([[([(([[([(([(([([([([([((([([(([(([[[[([[[[(([([([((([(([(([(([([((([[[[[(([([([(([([([([([([(((([(([((((([[[[([(([[(((([((([[[((([[[([(([([[((([([[(([[([[(([([[[((([[[([((([([[[(([([[(([[((([(([[[([([([([[([[[((([[[[([([[((([[(([[[[(([([([((([[([([([([[(((([[[([[([(((([([((([[[([([(([([[([[([([[(([([((([[([([[[([[([[[[[[[[[[[(((([[[[(((([([(([[[([([[(((([[(([[[([[[(([[[[[(([(([([(([[(((((([((((([([[[(((([[[[[[[(([[[[([[[((((([((([((((([([[[[([[([([([[[[[[([[[(((([[(((([[([[[(([[(([([(([[[[[(((((([[[(([([[((([[([[[((([([([(((((([([(([([[[([[[[([[[(([[[[([([(([([[((([[(([([[[[([[(([[[(([([([[([[([([([[(([[([[[((([[[[([(([[([(([[(([[([([((([(((((([[(([[(([[[[([[[[(((((([[[[(((([([([([(([[([[([((([[[(([[[[[[[[([(([[([([([[[((([[((((([(((([([[[(([([[[[(([(((([([([[([([[([[[([([((((((([(([([([[([((((([[(([([[[[(([[([([([(([(([[([([[(((((([[[[[([[((([[[([[([(([[[([(((([(([[([[([[(([(([([([[[(([([[([[(([[(([([[[[[[(((([([([(([[(([((([[[[[[(((([(([([[[[[(([[((([[([[[[[((([([[([([((([[[[[((([(([[[[([((([[[([[[(([([[[[([[((([((((([[([(([[([([[([[[([[([(([(([[[[([([[(((([[[[([([[(([([(([([(([[[(((([((([([[((([[([((([[[[([[((([[[[[([[[[[[([[[(([[[[[[([[[[(([[[[[((([([([(((((((([((([([[[[[([[(((([[[[[(([([[([([[[(([[[[[([(([((([[([((([[((([[[([((([[[[((((((([([[[(((([[(([[[([[(([(((([[((([([[(([[((([[[[[[(((([[([([([(([[[((((([[([[([[[[([([[([(((([[[(((((([[[[(([[(([[[((([[((([[[[[[[[([((((((([([((([[[([(((([[([[([(([([([([([([[([[((([[[(([((((([[(([[[[([(([[[[[[(([[[((([((((([[[((((([[([([([[[[([[[[[[[[[(((([([([[([[([(([([[([[[[(([[(((([[((([[[(([([[((([[[[[([[[[(([[([((([[[([(([[[[[(((([[[([([([[[[(([((((([(([[([[[[([([([[[([[[[([[[(([[([([([(([[[(([(([[[([[(([((([[[[(((((([[[[(([[[[(([[[(((([([[[([[[(([[[[([[[([([[[([(([[[([([[[([[[[((([([([[[((([[[([([[[[((([[[[[[((((([[[(([([((([[(([(([((([[(([([(([([[(((([[([[(([([[[[([((([[((([[[[[([([[(([[((([[((([(([[(((((((([([([[[([([((([[([[([[[([([[[[([[((([(([[[(([[[[([[(([([([([(([[([(([[[[([[(((([(((([([[([[[[[[(([[[[[[[(([(([(([[[[(((([[[(([[[(([(([[[[[([([([[([[[[[([[(([[[([([[((((((([((([([[(([(([[([[[([[[([([([(([([([[[((((((([((((([[[[[([(([([([((((([((([([([([[[[[(((([([[([[([[(([[([(([([((([([[([([((([[[([[([([((([[(([[(((([((([(([[[((((([[([[[[[[[[[((([[((((((([([(((([[[[[[(([[(([[(([([[(((([((((([[[[[[((([((([[[[(([[[((([[[(((((((([([[((([[[[(([[(([([(([[[([([(((([[[([[[[[[(([([[((((([(((([((([([([([([[([([[[(((([[((([([[((((((((((([[[[[[(([([[[[[([[[[((((((([[((([((([((([(((((([(([(((([[(([((([(((([([([[([[[[(((((([[(([([(([([[[[(([[(([[((((((([((([([[[((((([[([[([([[([([[[[[([[[((([[(([[(([([[(([((([[([[[[((([([[(([((([([[(([[((([[(([[(([[([[(([[([([[(((((([(([(((([[[[(((([[[[((([[([([[([((([[(([[([([[[((([[[[[(([[[([([[[[([[[[(([(([(([[[((([(((([((([(([[([(([(([(((([[([(([[([[[([[[[[[[[(((((([(([([([(([[(([(([([([[((((([[((([([([([(([[([(([(((((([((([(((([[([[[([[[(([([[[(((([(([[[(((([[[[[[[[[((((([([((((([[[([[[[([([(([(((([[([([(((([[([(((((([((([(([[([([[([[[([[[(((([((([(([[[([[([([[[[([[(((([[([((([(([[(([[[[([([([((((([(((([([[[([((([[(([[[(([[([[([[[[[[((([[([(([([[([([[[(([[([[([[[((((([[([((([((([(([([[(([[[([([[(((([([[[[[(([[([([(((([((((([(([[[[([[[([(([([([[[[(([[[((([[(((([([((([[[[([([[(([[[([[([(([[((([([[[(((([[[[[[(([([(((([([[[[[[([(([([[([(([[([[(([[([([([[[((([[[[([([[(((([[([(([[[[(([([(([[(([[([[([([[([([[((([[([([[[(((([[[((([(([((([(((([([([[([[(([[[([[((([(([[[[[([[([[[(([((([[[[[[[([(([[([[(((([([([[([[([(([[[[[[[[([(((([[[(((([([[(([[([[((([[[([[[(([[[((([(([[(([((([[([[[([([([[[([[[([[[([(([[([[[[[(([[([([[((([[((([[([((([(([((((([((((([((([((([(([([([([[[[[[[[([([([(([([[[([([[[[[((([[[[([[(([([(([[((((([[[([[[(([(([[[(([([[[[(((([[(([(((([[((((([([([([((([[[(([((((([([[[(([[[([([(([((((([[([[(([[(([[[[([([([[([(([(([[[([[((([([[(([(([([([(([(((([([([(([(([[((([[[[([[[[[([([((((([([[([[(([(([(([[[[[[([[[(((([[([[([(([(((([([[((((([(([[(((([([([[([([([[((([[((([(([[([[((((((((([[[[[[(([(([([[(([([((([(([(([(([[[[([[[(((([[(([[[[(((((([([(([((([([[([(([[[[[(([[[[((([((([(([([[(([[(([[([[((((((([[[(([[[(([(((([[[([[[[[((([[([[[([((([[[([[[(((((((([(([([[[[[[[[([[(([([[[(([(([(([(([[[[[[(((([(([[([((([[[([[[([((((([[([((((((([[[([[(([(([(([(([([([[([(([[(([(([(([[((((([[[(([[([([([[([([[([[([[[((((([[[([[[(((([[([([[([(([[[([[[([(((((([(((((((([[([(([[[[[(([[([[[[([[[((([([[([[([(([(([[[[[((([[([(([((([[[[[[[(([[((([([[[[[[([((([((([[[(([[(([([[(([[[[[[[((((([[(([([(([([([[[([[([([([[([[(([[[[[[(([[([[[[([[[[(([[([[([[([((((((((([[[[[[[[[[([([([([[([[[((([[[[([[[[((([[(([[(((([([([((([[(((((([[([((([([([[((([[((([((([[(((((((((([[([((([([[((([([[(([[[([[[[(([[(((([[[([[[([[[[[(([[[((([(([(([([([([(((([([((((([(([[[(((((((([(([([((([(((([[(([[(([[([((([[[(([[[([([[[[(([([[[([[[((((([((([[[(([(([[[((((([[[(([[([[([((([(([[[[[[((([((([[[(([[([[[([(((([([[[[[(([[[[(([[(([[[(([[[[(([[[([(((([[([[[(([([(([[([([(([[(([((((([[([[((([([[(([([(((((([(([[[[(((([(([[([[((([[[[([[([([([([([([(([((((((([(([[[[[([[([[[[([[[[(([([([(([[[[[[[([(([[([([([[(([[[[[((((([((([[[[[[[((([(([(([([(([([((([[(((([(((([[([(([[[(([(([([[[([[([((((([([([([[(([([[[((((([([([([([(([[[[[([(([(([(((([[[[[[([[[[([[([[([[[((((((([((([([([((([([(([(((([([([[[[[((([[([[[[[[[[[([[[(((([[(([[(([([((([[[[((([[[[[((((([(([([[(([([((([(([[[((([[[[[((([(([[([([[[[(([(([((((([([[([[((([[([[[(((([[([[([[((([((((((((((([(([([(((([([[((([[[((([([(([[[[[(([(([[[[([[[[([[[([((([(([[([(([[(((([[[[([([((([[([([[([[((([[((([(((([([(((([([([[[([((((([[[((((([[[(([([(((((([((([((([[([([([([(([([(([(([[([[[[[[([[[(([([[((([[([([(([((([([([([((([(((((((((([([([[[([(([[(([([(([[[([([[[((([([([[((([((([[[((([[([[([((([([[[[(([((([[(([([([(([[[[[(([((([([([[[([((([([(((([[[[[([([[([(([[(([((((([(((([(([(((((([[([[([((([(([[[(([([[((([[([[[([(([[([[([[([(([(([[[[([([[(([((([[[[(([[[(([([([[[[([[[[([([([[([([(([[[([[[([(([[[((([[(((([[[([[([(([([([((([(([[(([([[[[([([[([(((((([[([([[[(([(([[[[[[((([[[([([(([(([[[[([([[[((([[(([[(([([[[([[[[(([(([[[((([[([[((([[[([[[([(([(([([[([((((([(([[[(([[[[[[[((([[[[[(([[[((((([((([(([(([[[((((((((([[(([([[[[[((([(((([[(((([[[((((((([[[(([((([([[[([[[((([[(((([[[([[([([[[(([[(([(((([[[[[([[[((([((((([[((((([([([(([[[(([(((([((([[[((([([(([[[((((([([([(([[(([([(((([[[[([[([[[(((([[[[[[[[([[[([([([(([[[[([[(([[[([[[[[[[[([[[[[[[([(([(([[[((([[[[((([[(((([[[([[(((([[(([[[[([[([((([(([[([[(([([[[[[([[((([([([(((([([[([(([([[([[[[([[(([[[[([[[([[([([[([[[[(([[[([[[[[[([[(([[[[((((([([(((([([[(([(([([([[([[[[((([([([[[[[[([[([([((([((([[[[([(([((([[([[([(([([[((([[(([[([([([((([([([[[(([([(((([[(((((([[[([[[[[[(((([[(([(([[([[([([[[([[([([([[[((([(([[([([[([[([((([((((((([([[((([([[([[[[([(([[[[([((([((([([((((([([(([([[([[([([([([((([((([([[((([(((([[([([([[[[([[(([[([[[[[(([[[((([(([([[((([[((((([[([[([[([(([[[[((([(([(([[[([[[[[[[((([[[[([([(([[(([[(([([[[[[[[[(([(([[(([[(([(((((((((([(([[[(([([([([((([[[([[(((((([[(([(((([([([([(((((([[[([(([((((([[([([[(((([[[[[[(([[[([([(((((([([([[[[([((([([([(([[[[[[[[[[[[[([([[[((((([[([(([[([[(([([[[[[[[[([[((([(([(([[((((([[[([(([(((([([(([[[((((([([(([[(([([[[[([([[((((([(([[[[[[(([([[([(((([[(([[([[([([[([([((([(((([[[([([((([((([[[[[[[((([[[[[[[[(((([[[[([([[(([(([(((((([[([[([[([[([[[[[(([((([([([([(((([([(((([([[([[((([([[[(([([[([[([([([(([(([[[(([[[[[([([[[([([[[[[([(([[[([[([[[[[(((([[([[[[(([[(([[(([(([[([(([[[[[(((((([[[(([[((((([([([(([([[[[(([([[([([[((([([[[([([[([(((([([[[[([[[[((([[[([(([[([[(([[[(([([[(([([([([([[[([([[[((([[[[(([[[(([([(((([(([([(([([[((([(([[([[([[[[(([([(([([(((((([[([[([[([[[([([[([[([([(([[[[[[(([[(([(([(((([[((([[[((([(([[((([(((([(([(([((([(((([((([[(([[[[([((([([[([([((([[([[([([(([[[[[[[(([[[[[([([(((([((([[[[([(((([[[[[[[(([[([([([([[(([[[[[([((([((([[([([[([[[[[(([([(([([[(((([(((([(((([((([((([([[([(([[(((((([[[([[[[((((((([([[[(([([[[[[([(((([[([([(([[[((([[(([[[([[[(([([[[[[[[((([(([[(((([[([[[([(([[[([[[(([[[([([[[(([([([[[[[[([(((((([[([[([([[[([[((((([(([([[([[[[[((([[(([[((([[(([[[((([[[[[[(([[([(((([[([((([(((([[[([([([(([((([([[[[[[[[[[([[(([((([[[[[[([[(([[(([(((((([([[[[[(((([((((([[([(([[(([[([((([[([(([[((([[([[[(([[[((((((((([([[[((([[([[((((([[(([((([([[[((([[[[[(([[[((([([[[[[([([[([[[[([([[[[[([[([((([[[((([[(((([(((((([[([[(([[[[([[[[((([[[[[([([[([[[[[([([([[[(([(((([(([[([[[([([[[[[[[((((([((((([[(([[(([[([([(([(([(([((([[(([[([(([([[[([[([((([[[[[([[(([[[(((((((((((([(([[[[[((([[((([([(([[[([[([(([[[[(([(([(([[(([(([((((((((([([([([([[[([[([(([([((([[[([[[(([[[[[([[[[[(([[[([(([((([[(([([[[([([[([[(([(((([([((((((([[([[[[([[([([(([[[([(((([((([[[([[([[([([([[(([[([(([[[([((((((([[([([[(([[([([(([((((((([([[[[(([([[[[[[[[([[([[[([(([(((([([([[((([([((([[[([[([([[(((((((([([[(([[([([(([[([((((((([[[((([([([[((([([[([[[[[([([([[[[[[[[[[([[([([[(([([((([([[[[([[[(([(([[[(([[[[([((([([[[[([[[[((([([((([(((((([[([[(([((((([[([[(([[[[(((([(([[[[([([[(([[(([([[[[((([[(([[[[[((((([([[[([[[[[([(([([([([[(([(([([([([(([(((([([[[[(((((([(([([[[[[([([[[[[([(([([(([[[((([((((([[[([[(((([[([([([[([([([[[[[[[([((([(((([(([[[([([[[([[(([([[[(([[[[((([[[([[[[[([[[[([[[(([[([([[[(([[[(([[(((([([[((((([[[([(([(((([[(([([[[([([([(([[[([([[((([[[([([([((([(([[([[(([(([[[([([[(([[([[[([[[([(([[(((([[[([[[[[[([[[([(((((([[[[([[([(((([([[([(([[[([(((([[([[((((([([([[(([([([[(([((([((([[[[[[[[[(([(([[[[((([([([[(((([[[[(([[[([([(([(((([[([([[[((([[[([([[(((((([[[[(([([((([(([(([[[[(((([((([[[[((([(([([([[[([([[[[[[[([((([[((([[[[((([([[[[(([([[[[(([(([[[[[[[[([([[[([[[([[(([[([((([[([[[(((([(([[([([([(([[[(([[[(([[(([[(([([((([[([([[[[[([([([([(([([([((([[[[([(([([((([([[(([([[[(((([([[([([([([(([[([[[[[([[((([((([([(([[(([([[[[[[[([([(([(([((((([[(([[(([(((([[[(([([[[(([([[[[([[([[((([((([[([(([([[(([[[(((((([((([[[(([[([((([[[((([[([[[[(([[(((([[((((([[([[[([[([(([((((((([[(([([[[([[([[([[[[(([[((([[(([([[([(([([([[([[[([[[([[([[([[[(([[[[(([(([[[((([[((((([((((([[[[[[[((([[[((([((([([((([[[([([[((([[[[[[((([[[[[((([([[[(([(([[([([(([(([([([([[(([[([[[[([((([([([((([[((([[([[[((([[(([((((([([[([((((([([([((((([[((([[[[[([[[[((([([((([[([([(([([[([([[[([([[([[[((([(([(([[(([([(([([((([[[[(([([([([[[[[(([[[[[[([[[([[[[[[(((((([[(((([(([[[[[[((([[[([[[[[((([[(((([([([([[[([(((([((([[([(([[[[[(([[(([[([[[([[[[(([((((([[([[(([([([[[((((([([([[[[[[[[(([[((((([[(([(([[(([[((((([[[([[(([([([(((([([([[([([[([([[([[[(((((([[((([(([([[(([[([[[[[([([([([[(([([([([(([([([(([(([(([[[[([([((([(([([[(((([(((([([([((([((([[([[(([[((([([[[([(((([[[([[([([[[(([([([[([[[(([[[(([(([([(([[([[[[(([[[([(((([[[(([(([[(([[[(([((((((([[([([(((([([(((([(([[([[[([[[[(((([[(([[([(([([([[([[[[[([((([[[([[([[((([[[([[([([[([[(([([([([([([([([[((([(([((([[[([[([[([[([[([[[([(((([[([[((((([((([[[([[((([[[([[([(([([[[[([(([[[[[[((((([(([([[([[([[[([(((((((([([[[([[[([([[(([([((([((([(((([([((([([([[(((([[[([([([([([([[[(((([[(([((([[(([[(((([([([([[([[[(([[[([[[([[[[(([((((([[((([[[[([([[(([[([(([(((([[[[[((((([[[([[[([(([([[([[((((([[([[([[((([[(((((([([[([[([([[[[[(((([[([(([([((([([[(((([(([[(([(((([([[[[[[[(([([[[[[[((((([(([([[((([[((([(([[[[([[([(([[[[[([[([[([[([([[([(([[[[[[(([[([(((([([((((([([[[([((((([[((([[[[([[([[[[((((([([[([([([[[[([(([([[[[([(([[(([[(([[(([[[(((([([([([[([[(([([[[[[([[((((([[[[[((([(([([[(([[[(([[((([[(([([[[[([[[([(([([[((((([[[([[([[[([((([(((([(((([[[[[[[(([(((([([[([[((([[[[[[[(([([[(([((((([(([(([[[([((([(([(([([[[((((([([([(((([[[([[[[((([[(((((([[([[[[[(([([[((([(([(([[([(([[(([(([[[[(([[[[(([[[[[[(([[[[((([[([((([([[[([[((([([((([([(([([[[([(([((([([(([([[[([((([([[(([([[([(([[([([([([[(([[[((([(([([(((([[(((((([[(([((([((([[((([([[[[[([([([((([((([[[([[((((([([[(((([((([(([[([([(([((([([[[(([(((([([[((([[[[([([[([([(([([((([[[[([((([((([[[[[[[[[[([[[(([(([[[[(([[[[((([([[([[(([[(([[[([[[([([([(((([([[(((([[([[((([(((((([[((((([((([((([[[[([[[[((([([([[((([[(([(([[(([([[[(((([[[([[[(((([[[(([[([([([[[[[[(([([[([(([([(((([[[(([([([[(([([([([[(([[([(([((([(([([[(([(((([[[((([[[[[([(([[[[(((([([[([[(([(([((([[(([[([((([[(([([[([[[([[[([[[([([[(([(([[(((([([((((([[((([[([(([(([([[[[([[([([([[[[([[[(((([([([([((([[[[[[((([([((([[(([[[[[([([[(([[[[[[([([[([([[((([[([[([[([[([([(([(((([(([[[[[[[(([[[([(((([[([[((((((([[[([(([[[(([[([[[([[[((([[[([[[(((([[((((([[[([(([([(([([[[[([([(((([([([([([[((([((([[[[[[[((([((((([([([((([[[((((([[[[[[(((([[[(([[((([(([[[(([[([[([[[((([([[[([[[(([(([(([((((([[[[[[[(([[([((((([[(([(([[[([[(([(([[([([(([([[[([[((([((([[[([((([([[[((([([(([[[(((([[[(([[(([[[([[(([(([[((([[([([([[((((([[([([[[[(([[[[[[([[(([((([[(([[([[(([[[([((([[[([[([([[([([[[[[([[[(([(([(([([[([[(([[[(([[((((([[[(((([(([[[([((((([[([(([[[(([[[(([((([([[(([[[[((([(([([[[[[[([[(([[([[([(([([(((([[(([[[([(((([(([([[([[[(((([[[(([[[[[[([[(([((([((([((([[[[[([[[[(((([([[[(([((((((([[[[(([([(([[[((([[[(([([[((([[((([((((((([([[([[[[[[[[([([([[((((((([[[[([(([([(([[[[[(((([[([([[(([[[[((([[[([([([[(([[[[[(([(([([[([([[[([((([[[[(([[[(([(((([[[[(([([[([[([[((((((([[(([[([[([(((([([[([([[((([[(([([(([(([([[[([([([((((([[(([[([(([[[(([(([(([[[[[([(([(([[((((([(([([[[(([[[[[[[[[([(((([(([[([[([[([[[[[[[[[([(([((([[[[[(((([(([[(([((([([[[((([(((((([((([[[[(([[(((([[([[[[[[[[([(([[[[([[[[[[([([[([[[([[(([(([[[(([((((((([([([[[[([(((([[[[[(([([(((([((([([((([([[[(([[([((([[(([[(([[[([[((([[([[[[(([([[[[[(([((((([([[[((((((((([[([[(([[[([([([[([([[(((([(([[[[([([([[[[((([[(([([[(((([[[(([([(((([(([([(([[(((([[(((([[((([([([([((((([([[((([(((([([(([[([[([[(((([((([(([[[[[[([[([([[([[(([([[(((([[[[[(([[([([(([[(([[([[[[([[[[[([(([([([[[(([(([(([([[[(([[((([[[(([(([([([([([(((([[[((([([[[([([[[[((([(([[(([[[[[[[[[([([[([[[[[(([(([[([[([(([[([[[[(([([([(([([[[[((((((([[([[(((([(([[([[[([([[[[([[[[([([([(((([[([[[((([[([[[[(([([[(([([[((((([[[([([[([([((([(([(((((([[[[((([[(((([([[[[(([((([(([[[[([[[([[[(([[[[[[(([([([[[(([(([[(([[[[[[([((([((([[[((((([((([([[[[[[((([[[(([[[(((((([[([(([[([[((([[[([([[(([[[([[[([([[[([[[[[[[([([(([[([(((((([(([[[([([(((((([([([([[[[[[[([[(([([[([([[[[[([[([((((([(([((([[(([(((([(([[[[[(([[[([[([([[((((([[([[((([[[[[([[[([[[((([([[([([[[(([[([[[(((([[[([[([([([[([[[[[[[[(((((((([[([[([([[[(((([([(((([([[[(((([((([([[[([(([[[(((([(((([[([[[[[([[([[(([((((((((([([(([[[[[((([[[[((([(([[[[[([([(([((((([([[[[([([[([[(((([(([(([([([([[[((((([([[[[([(([(([[([[[[((([([([[([([([([[[(((((([([(((([([[[[[((([[([[(([([[([[[((([[[[(([((([[(((([(([([(([(((([[((([(([([[[([([(([[(([[([[([[([[[([([[[[(([[[[[[[[[(([(([([(([[([[(((([([[(([(((([([[[[([[[([[[[[(((([(([[((([[(([([([([([(([[([[[[(([[((((([[([[[(((([(([((([[[([[([[((((([(([[[((([[((((([[[[[[(([[[[([[([(([[[([([[[[([[[(((([[([[([([[(([([[([[([([[[[([[[(((((((((([(([[[([([[([((([[[[([[([[([([[[[([[[[[[([[((([((([[(([((([((([([[[(([([[(([[[[[[[([([([[[[[[[([([((([[([[(([(([[((((([([[[[[((([[((([(((([[([([([(([(([[[(([[[[[(((((([[[((([[[[[([([[[[([([[((((([([[([[([(([[(([(([(([[[([([((([((([([[([[(([([(([[[(([([[[([(((([[[([([[([([[(([[([[(([([((([((([[((([([([(((((([[((([(([([([([([[([([((([[([[[([[(([[(([[((([([[[[[([(((([([(([[[[[[([[[((([[(((([[(([((([(([([((((([(((((((([[[[[[[([[[[((([[([([([[[((([([[[[([[[[[([([[(([([([([[[[((([[(([[([([[(([([([[(([[[([[[([([[((((([([[[([[(([[([[[((([((([([[(([[([[([[([([[[(([(([[([(([([([[(([[([[([(([([[[[([[([([(((([[([(([[[([[[[[[[[[[(([([([[(((([([(([[([[[(([[[[[([[[[[[[[[[(([[([[(((((([[[(([([[(([[([[([(((([([([[([((([([([[(([([[[[([[(([[(([[(((([[(((([[([[[[([([[[(([[[[[(([([([([[((([([((([([([([([(([([(([([[[([[[[[[([[(((([[[[(([[[(((((([[([[([[((([(((([([(((((([([[[[[((([(([([[([(([[[(([((([(([([([(([((([[[((([([([[[[((([[(([[((((([[(((((((([[([[([(([[([(([[((([[[(([[([((([[([[([(([[[[([([(([[((([[([[[([[([([([[([[([[(((([[[[[([([[([([[((([((([([[(([[((([[[[[(([([((([[[([[([([[(([([[[([((([([[(([((((([[[(((([([[(((([([(([(((([[[[[([(((([[[(([[[[([((([([([[((((([([[[(((([[([([((([[([([[(([([((([[[[[([[[(([([([(([[([[(([((([([[([[[[([[(([[([([[[([[[[([(((([([[[[([[([[[[(([[([((([(((([[([(([([(([[[(([([(((((([([([[(([(((([[([[[[[[[[(((([[[[[[([(([[([[[(((((([[([(([([[[[[[((([(((([[(([[[([[[[(([(([(([((((([((([([([(([[[([([[[[[([(([([[[[((([([(([([[[([[[([([([(([(((((([((([(([[([((((([[((([[[[[([[[([([(([((((([[([(((([[([[([[([((([([([((([([(([[(([[((([[(([([((([[([[[[([([[[[([((([([[[([((([[([[[[[([([(([(([((([([[([(([[(([[(([[(([[[[[(([(([[[([(([([[[(([([[((((([[[([[[(([[[[[[[([([[(((([(([[([([[((([[[([[[[[([([[([[([[([([(([[(((([[[([[((((([[[[[(([[([(((([[([[[(([[[[[[([[(([((((([(([([[([((([[[[(([[[[([[[[(([[([(((([[([(([[(([([[(((([[[[([(([[[([[(([[[[([[((([([[(([[[([[[[[((([((([[[([[([[((([[[(((([(([([[(((([[[(([([[(((([([([[[[[[[([([([[((((([((([[(((([[[[(([[[[[[[([((([[[[([[[[([([[([((((([((((([(((([[([([[[([(([[((((([((([[[([[[(([([([[[(([[(([[[[[[(([((([([[([([([[[(((((([([[([[[[[[(((([[[(([(((([([(([(([[([((([([((((([[(((([([[[([([[((([(([[([[(([(((([(([([[[[([([[((([[[(([((([((([([[(([([[[[(([[[(([[[[[(((([[[[([((([([[(((([[([[[(([(([([[((([([[[[((([[([[[[[([[[([[((([[[([[([([([[(([[[([[[(((((([([[(([[([[(([[([[(([([[(((([[([[[([([[[([(([[[[[((([[[[[[([([[[([([[(([([[([[((([([(([[(([[((([([[[([(([(([(([([([[([(([[[[[(([(([[([[(([([[(([([(((([[(([((((((([((((([([[([[[((([[[(([[[(([[(([[(([([(([[((((([((([[([[([[([([(([(((([[((([([([[[([(([(([[((((((([[([([([[((([(([(([[(((([[([[[[([((((([([[[[((((([([((([[(([[(([([[((((((([(([(([[[([((([[[[[[[((((([[([([([[[[(([[[([[(((((([((((([[[[(((([[([([[(([(((([((((([[([([[[((([([[[[[([[[[[(([[([([[(([[[(([[[[((([[([[([[([([[([[([[[[([[([(([((([[([[(([[[([(([(([([[[[([[[[([([[([[[(([[[(((([(([([(([((([(([[[([(([[[[[[([[[(([[[(([([(([[([([[[((([([((([[[[[((([[[[([[([([[[((([[(([([[(((((([([[[([[[[[((([[([([[(([((([[([[[([([[[[[[[(([((([[[[([[[([([(([[(([((([([(([([(([([[(((((([[(([((((([((((((((((([([(([[[[[[(((([[([(((([([((((([[([([[((([(([(((([([[(([[(([([[[[([[[[[[[((([[[(([[((([[[((([([[[[[[[([(([((([([(([[[([(([[[[[[([[[[(((([[[(((([([[([[[([(([([([((([[([[([[[[[[[[[([([((([[([[(((((((([[([[[(((([(((([[([[([([[[[[((([((([[[[[(([[((([([([(([((((([((([[[[([(((([[(((([[(((([([((((([[((([[([[(([[([(([[([[[[([[((([([([[[((([[[([((([([([([([(((((([([[(([[([[(((([[[[[(([([[[[[[[[[([([([[(([[[[[[([(((((([(([[[[[[[[[(([[[([([([[[[[([([([[[([[(([((([([(([[[([((([(((((([[((([((([[[([[(([([((([[([[[[([[[([[[[((((([(([[(((([[((([[[[[([((([(([[[(([(([([[[(([[[([[[([[([[([[([((([([((([(([((((((([([([[(([([([([[([[([[([[(([[[([((([([(([([[[[([[([(((([((([([[[([[[([([[((((([[((((([([[[[(([(([[(([[([([(([[(([[[([([((([([[[([[([((([[([[(((([((((([[([[([(([((([[(((([([((([([[([[[[[(([[[[(([([[[((([([(((([([[([[[([(([[([[((((((((([[[[[([(([([((([([([[[([[([[[[([((([[(([([[([((([[([(([[([([[([([([[[[(([[([[([((((([[[[[([[((([((((([[[[[[([[([(([(([[[[(([((([([[(((([[[([[([([[[[([[[([([[[([([[((((([[(([[([(((([([(([[([[[((([[(([([[([(([[((((([(((([([([(([((([[[[[[[[(([((([[([[[([[((([([(((([[[([([[[((((([((([([[([(((([[[[[([[((([([[(([([([[((([[(([(([([([([((([[(([([([([(([[[((((((([((([([[(([((([([[((([[([([(([(([[[([[((([[[[[([[((([[[([[[[[[([([(([(([([([(((((([(([[(((([([[[[[(([((([[[([[[[[([([([(([[[[[([[([([[[[(([[[[[[((([[([(([[[[([([([[(([([(([([[[(((([[((([(([((((([[([[[((((((([[[[(((([[(([[[(([(([([([[([(([[[([[[[[[[([([[[([(([([(((([[(((([[[(((([[((((([([([[[(([[[[[[[[([[[[((([(([[(([(([[[(((([([[[((((([([[[[(((([[([([(((([[([[([([([([([[(([[[[[[[((([[(([[(((([([[[(([[[[([([[[((([[[([[[[([((([[[([[[(((((([([[[[([([[([[[[[(([[(([[([(([[[[[((([((((([([[(([(([[([(([[[([[(([[([[[[((([(((([([([[[[(([[([[((((((([(([[(((([(([([[[(([[([(([(((((([[(((([([([[[([[([[[[[(([[[[((((((([(([([([([[[(([((([([[(([([[[([([[(([[(([(((([([[[[(([[[[[(([[([[[([[[(([[([[[[[[(([([([((([[([([(([((([[([[[((([(([[[[([([[[[([[([([([([([(([[[[[[[[([(([(([(([([([[[([[((([[([([[(([[[[(([[((((([[[[(([[[(([(([[[(((([([[([([[[([[((([[[(((([((((((([[(((([((([[[(([[[((([[[([([(([(([((([[[((((([([[[((([([[([([((([[[[([(([[[[([([([[(((([([([([[([[([[[[[[([([([[[[(((((([[[([(([[([[([(([[[(([[[[(([(([(([((([((((([[[[([([[(([[[([((([([[[[[[[[[[[(([([(([((([[[([[([[[([[[[[([[([([((([[[(([[(([[(([([[[([([([[[(((([[([([[([[[[(([((([(([[[(([(([[([([(([[[[[[(([[((([(([[[[[[[([([([([(([([((([[[[[(([[(([[[[[[[[(((([[[[[((((([(([[[[(([((([([([[([([[[[[[([[(([(([((((((([[[[([[([[[(([([[(([[[([[(((((([[(([[[([[(([[[[[([([[[([([[([[[[(((([([([(([[(([([([[[([(([[[((([[([[(((([((([[(([[[((([([[(([([(([[(((([[(((([(([[(([[[(((([((((((([[[([[[[((([[([[(((([[[[[[[[[((([[([([((([[([[[((([[[[(([(([(([(((([[[([(([[([[([[[((([([(((([(([([([([((([(([[[[(([([((([[[(([[[[[([((([[[((([(([(([(([(([((((((([([[[[[[[(([([[[(((([([((([([(([([[[[(([((([([[[[((((([[[([([([[([((((([[[(((([[(((([[[(([((([([([(((((([([[([((([([[([((([[([(((([([(([([[[(([([([[[[[[((([(((([((([[((([[(([([[[([[[[[[([[(((([([(([[(((([[(([([(((([(([(([(([(([([([[[([[[[[(([((([(([((([[[[([([((([[((([[((([((([([[[[[([[(([[([[[((([[((((([[([(((([[([[[([[[(([([[(((([((([[(([([[([[[[[[([([[[([[(((([(([(([(((([((((([[[[[([[[([[[[[[[[[[((((([[[[((([([(([([((([((([([[[([[([([(([([[[(([[[[([(((([([(((((([[[[[[[([[([((([[([(((([([([([[[((((((([([[([[[[[(([[[(([([[[(((([[(([((([((((([(([([([[([[[([((([((([([[[(([[(([([[[[([[[(([([((([(([([[[[[(((([[[[[(([(([([([([([(([((([(([[[([([([([[[[[[([[(((([(([((((([[((([[(((([[[([[((([((([(([[[([[([[[(([[([[(([[((([[[((([((([[([[[[[([(((((([((([(([(([((([(([([([[[(((([[[[(([[(((([(([([((([[[(([[(([[(([(((([[[([([(((([([([([(([[[[[(((((([[[[[(([[([[[[([(((([[([([[([[[([[(([([(([[[[((([(([(([[[[[([([[([([[([[([((([[[((((([(((([[([((([(((([(([((((((([([([[([(([(([(([([[(([([([[[[([(([([[[[[[([([[[([[([(([[[[([([[[[[[([((([[([[[(([[((([([[[[[([([[[[((([((((([([[([([[((([(([[[([((([(([(([([[[[((((([(([([[([[(([([([[[(([[[[((([(([[[[([(([(([(([([([([[([([[(([(([((([((([([[((([[([((([[(((([([(([[[[(([((([[([([[([([(([([(([[([([[[([([[[([[(([([(([[[[[[(([([[[([[[[(([[[([([[((([[[[[[[[(([([[[[[[([[[([[(([[[[([([[[([((([[(([[[[([([([([[(([[[(([[([[(((((((([[([(([(([([[(([[[([([(((((([([(([(([([([((([(([[([([([([([([[((([(([([([((([([[[([((([((([[([[(((([[[[(((([(([[[[(([[[([[(((([([[[[([[(([([[((((([[([([([(([([[[([(([([[([[(([[(((([[([[[[([[[[(([((([((([[[([([((([[[((([[[([((([((((([[[(([[[[[[[([[[[[[(([((([[[([[[[(([[[[[[[[[(((([(([[[[[[([[(([[[((([([((([[[(([([(([([[((([([[([(([[((([[[(([[([[[(([[[([[[(([((((([([[(([(([((([[((((([[([[[([(([[[(([[[[[[[([([[[([[[[((([[[[[[[([([(([([(([(([((([(([[((((([([[[[([([[[([[[([((([[[([[[(([(([[([([[([(([[[[[[(([[[[(([[([([[(([[[((((((([([([((([(((([[([([([[[[([[[([[[[[[((((((([[([([([[((([([[[(([((([[[[([([(([((([((([[([([[[[[((((([[([([(((([[[[([[(([[([([[([((([[(((([((([([([([[([[[([[[[[[[([((((([[[([[[((([([[([[[(([[[[([[[[[[([([([([(((([([(([(([[[[([[([((((([((((([[[[([[([([([((([[[(([[(([[[(([(((([(([[[[[[[[((([((([[[([[[(([[[[[([[(((((([(([[((([((([[[(([([[([([[[([[[[([[[[[([[(((([[[[([[[([(([((([[([[([(([(((([[[([[([[[([[[(([([([[([([[[(([[[[[(((((([((([(([[[[[([(((([[((((([(([[[([([([(((([[[(((((((([(([([[[[([[[(([[[([[[[(([([[[[[(([[([(([([([[[[[([[[[([[([[[[[[([((([[[([(((([[[[([[(([[((([[([([((((([[[([([((([(((([((([[[[[(([(((([[(([([([([[[(((([(([(([[([[[[[([[([(((([[[((([[[([[(([[[[[[(([[[((([(([[[([(((([((([[[([[[([[([(([([[(([[([[((([(([[[(([([[[[([([(([(((((([(([[[[[(([[[((([[([([[[[(((([[(([(([([([(([([(([[[([([[(([[([(([(([[([[([([[(([(([[(([(([[[[([[[([(((((([[[[[([[([[[([[(((((([[((([([((([[[((((([[[[[([([[([((([([([[([(([[[(((([[[([[[([[([([[([(([([(((([([([(((([[[([(((([([[([([[[(([([[([((((((([[(([[[[[[([[([(([([((([(([[((([((([[(([[([[([[[(((([([[[[[[((([[[(([[([([([([[[([([[([[((((([[([[[[(([[(([[([([[[[[([([(((([[[[[[([[[(([[[([[([(((([([[((([[[(([(((([([(([[([[([[[(([[[[[[[(([((((([([([([[[[([(([([([((([((([[(([[([([((([(([[[[[[[[[[[[[[[([([((([[(((([[[[[(([[([[[(([([[[([[[[([[[(([([[([[([[(((((([([[[[(([[(((([([([([(([((([(([(([[((([([[(([[[([[[([[[(((([[[((([([[((([[[[([[((((([[([(((([([[(([[[([[[([[([((([[(([[[([[[((([([(([(([((([[[[([([([[[([((([[([[(([[[(([((([([[[[(([[[([[([[([(([((((((([((([[(((((((((((((((([([(([((([[([[([(([((((([[([[([[(([[(((((([(([[[(([(([[([[[[[[([([((([[(([(([([(((([[([([([[[[[[([[[[[([([([[[[[([[[(([([[[([(((([[([(([([(([[[([[[([[((([(([[([[[([[(([([[[[[([[[[[[((([[[[[[[[(([[([[([[[(([[([[[[([((([[[([[((([[[[(((([((([([[[([([[(([([([[[((([([([[([[[([[([(([([(([(([[[[(((([((([[([([(([(((((([[(((((([[(([[([[[[[[((([[[(((([[[(([((((([([[[([[([[([[[([(([[[((([[[[[([([([([[((([[[[(((((([(([([[((([([[((((([((([[[[[[((([[(([[[[[[(([[[[([(((([(([[([[([[(((([((([(([(([[(((((([[(([[[[[[[[[([[([(([((([(([[[(([([[([(((([([[[[([[([[([([([([([(((((([[((([[[[(([(((((([(([(((([[[[((([((([([([[([(((([[(([[[[((([([[([[([([([(([[[[([([((([([[[[((([[[([[([((((((([([((([([[((([((((([[[[[((((([([(([([((([([[[(([([(([[(((([(([[[[([([[[(([([[([((([([((([[[(([[[[[([[([[([([[(([[([([([[[([[((([((((((([([([[[([[[[([[[[[(([[([[([(((([(([[[[[[[((([([[([([(((([[[[([([([[([[(([(([([[(((((([[[[[([[[(((((([(([((((([([[[[[([([([[((([[[[[[[(([([[([[[(([[([(((([([([([([[[((([[[(((((([[[[[([[([[[[[[[([[[(([([([(((([(([(([[([(([[(((([((([[[[[[[(([([(([((((((([[((((([[[[[(([[[[([([[([[([(((([[[(((([([([[([([([([([[([[([[([[(([[[[[[(([(([[[((([((((([[((((((((([([([[([(((([[[((([[(([(([[([((([[([((([[([[(([[((([(([([[([(((([((([[((([([([[[((([([((([[[([[([[(([[[[([((([[[(([[[(((([[([[[((((([([[([([[[[([([[([[[(([([([[([([[[[[(([(([[((([(([([([[(((([([([((([[[(((([([(([([[[[[([[(([[(([[([([(((([(((((([[((([[[[[(())]]]]])))]]))))))]))))])])]]))]]))]])]]]]])]))])]))))]]])))])])]))))]])])]))])))]]))]))]]]]])])]])])]))]]])]])])]]]])])]])])))))]]])]]))))]]]))]]])))])]]]]))]])]])]]])))])])))]]])])])))]])))]))))])]])]))])))]]))]])]])))])]])))])]]))]))]])))]]]))))])]])])])))))))))]])))))])))]]]))]))]]]]]]))]])]])]])]])])])])])]])])]))))]]]))))])]])]])])]]]]))]]]]])))))]])))))))]))])]))]]]]]]])))]))))]]))])]]))]))]))))])])]))]]])]]]]]]])]])]]]]]))))))]]])))]]])])])])]))))])]]))]]])]])]))]]]]]]])))]])])])]]]]])])))))]))]))))))]]])]]]]]))))))]])]))]))]])]])])])]]]]))))])])]])])))]]]]]]]))]))))])]])]]))]]]]])]]]])]]])])])))))))])))]])]]])])])]]))]])])]])]])]]]]]))]]])))])])))])]])]))]]])])]]]]))]))))]]))])]))]]])])))])]))])])))))]]]]])))))])))]])])))])])))))))])]])]]])))]]]])])))])])]]]]))])])])]])]])])))]]]]))]]))))])]])])])))])))]]]]))))]))]))))))]))]]]])))]]))))))])])])])])]])]])]]]])]))))])]])]))]]]))])))]))])]])]]]]]]]]]))]]))))))]]))]))])))]))))]])]])]]))]))))])]]]]))]]]]]]))]])))]]]]]])))])))))]])])))]])]))]))))))]]]])))]])])])])]]]]])))]]]))])]]])]])]])]]])])))))]))]]]))))]]])))]]]]]])]]))]]))))))]]))))))]))])])]])))]))))]]]]))]))])]))])]])]]])]])])])))]]])])]))]])])]]])])))]))))]]]])))]])]]])))])]]]])]]))]]])]])]]))]]]]]]]])))]]]]]])]]]]])]))]])]]])]]))])))]])]]])]]]))])]))])]]))))])]]])]))]]])]]]]])])])]]]]])]]]]]])])])]]))))])]))]))]])))])])]]]]]])]]))]))]]]))]))))))]]))]])]])]])))))]))])]])]])))]))])]))))))))))))))))]])))])))))))]))])]])]])]]]))]]]])])))]))]]]))]])]])))])]]])])])]]]])))]))]))])])))]]])]]]))]])))])]])]]])]]]))]])]))))])]])))))]])]]]])))]])])))]]]))))]]])]]])]]]))]])])))]]))]))])))]))])])])]))))]]))]]]])]))))))]])]])]])]))]]])]]]])]]])]))]]])]]))]]]]]))))]])))])])]]]]]]]]]]]]]]]))])))])])]]))]])))])))])])]))])]]]])])])])))))]))]]]]]]]))]]])]])]]))])]))))]))]]])))]])]))))])]])]]]))]]])]]]]]]))))])])]]]]])])]]))]]))]]]])]])))))]])]])])]]])])])])]]))]]])))]]]]]])]))))]]])]])]]))]])))])))]]))])))])]))])]])]]]]]]))]])))))))])]])]))]]])])]])]))))])]]]))))])])]))))])]))])]])])]])]]])]]]))))]]]))])]])])])))])]])])]]]]])))))]]])))])])))]]))))))]])]]])]])]]]]]))))))])]]])]]]]))]))]]))]))]])])]])]]))]))])]]))]])])]]]))])]))])])]))]))]]))))]]]])])]])))]]]))]]]]]))]))))))]))])])]]]])]))]]]))])))]])]]))]])]))])]])]]])]]])))]))))])]]]))])))]]]))]]]]]]))]])]]])))]]]))))])]])]]]]])]]))]))]))))]]])])])]))]]))))]))]]]]])))]))))])))])])]]])))))])])]])))]]))]])]]]]))))])]]])))])]]]]]])]])]]]])]]]]])])]))])]]))]]]]])]))]]]])]]]))]]])]]]])]))]))))))))]]]))))])])])]]]))])))))]]))))])]]]]]))])))]))))))]]]]]))]]])])]])])]))]]])]]])]])]]]))))]))])]])]])))]))])]]])]]]]))))]])]]]]])]]]])]]])])]])]))]]])))])))]]))]))))))]])]]]]]))]]])]]])))])))]]]]]]]]))]))))]))]]]))]]))]]])))])])])]])]]]])))))])))))])]])]]]]))]))])]))))])])])])]]]]]])]]]]))]]])]])])))]]])]]])))))])]]]]]]])]]])]])])])])))]))))]])))])]])])]]))]])]]]]))))])])]])))))]]]]])])]])))])))]))])])]]]])))]))]]])])))]])])])]])))))))]]]]]])]]])]]]])])])]]))))])))])])])))))))]]]))]])])]]))]]]]))]]]]]]))])]])])]]))]))]]])]]])))])]]])]]])])]]]])])))))]]))])))]))]))])]))])])]]]]]]])))]]]])]]])])]]]]]]]))]]]))])]]])]])))))]])))]))]))]])])))))]))]]])]]]))]]])]]))]]])))]]))])]])])))]])]))])]))]]])))])])))]]]))]])]]]]]]))]))))]]]]]]]]]))]]]])]]])))]))]]]]]])]]]]]]]))]]])))))])))])]]])))]]])))])])]]])))])))]))]]]])]]]])]]))))]]))]])]])]))])]]])]))])])])]])))))]])]))]])]]]])]))))]])]]]))]]]]))]))))]]]]))))]])]])))])))])]]])])))])])]))])))]])])])])])])]]))])))])])]))]))])]))))))])])]]]))]])]))]))])]]))))))))]])]]))]]]))]])])])])]]]]))]])))])]]])])]]]]))]])]]])]]]]]])]))]]]]]]]])))]])])]]]))]]]])]]])]))]]]]]]))])]))]])]]])])]]])])]]))])]))])])]])])]])))]))]]]]))])]))))]])))])]])))]])])))])))]))]))]])])]])])])]))]))]))])]]]]))])))]]]]))]]])])]))]])]])]))])))))]]]])]))]))])))])]]]))])))]])])]])])))))])))]]]])])]]]]])])))]]))]]])]])))])]]]]]])])]]]]))])]])]]])])]]]]]])]))])]]]])])]))]])]))]))]))])]])])])))))))]))]))))])))])]]))))])))))]]])))])]])]])])]])])]]]]]))]))])))]]]]))])]))]])]]])]])])]]))))])]]]])]]))]]]]]))))))]]]]]))])])])]))))])])]]]))))]))]]))]]))]]])))])]))]))))]]))]]]]))))]]])])]))])))]))]))])))]))))))])]]]]])]])))])))]]])))]]))]])]]))]]])]])]]]))])))])))]])]]]))))]])))]])))))]))]))))]])]]]]]])])])])]]]))])))]))])])])])]))]))]]]]]))))]]]]])]))])))])]))]]])]]]])]))]]))]]])])))])))])]]])]])])]))])))))])))]))]]))))]]])]))]]]))]]]]])]])])))))))]]])])])]))))])]])))])]])]]]]]]]))))))])]))))])]]]]))]]])]))])])]])]]])])))])))])]))])])))]]]])))))]]]]]]]]]])]]])]]]]])))))]))))]))]))]))))]])]]])])]]]]]])]])]))]])))]))))]])]))]]])]]])]]))))])]])))))]])))]]])]]))]])]]]]])])))])))]])))]])))])])]]]])))]))])))]))]]]]])]]])])]))]))]))]))]))))])]))]]))))]]))])]))))]])]]]]]])]]])]))]])))]])))]))))])))]]]]]])])]))]]])]))])]))))])]])))])]])])))])]])]))))))])])])))]))]]]))))]]))))]]])))))])]])])])]]])))))]]]])])))]))]]]])]))])])))])]))))]]])]))]]]]]]])])))))))]))]))]))]))])))]]])))])]]]]]))]]])))])]))]]]]))])))])])])]))]))))])])))]]])]])]]))])]]]))))]))]))]))]]]])))]]])]])))])])]])))]]]]]]]]]))))]])]])))]]]])]]])))))))]))))]]]))]]))]))))]]))))]]))])]))]])])))]]]))]])))]))))]])]])))]]]))])]]])])]))]]))])])]))))]]]])]])])]]])])]]]]]))]])]]]))]]))))))]])]]]))]])]))]]])]])]]]])))))))]))]))]])]]]]]])])]])])])))]))]]]]))])))))]]]]]))))]]]]]]]]))]]))]]]]])))])]))])])])])]]]]]]]))])))]]))]]]]]]))])])]]))]))]]]))])))]))]]]])]])])]]))))]]])])])]]])]))]]))]]))]]])))])])]])]]]]])]]])]])]]])))]))])]))]]]]]]]]]]])])))])]]]))]])])]]]])))))])))]))]))]))]]]]))]]]))])]])]]))])]]]))))))]]]])])])]]]]]])]])]])])])]))))]])])])]]]]))])]]]])))])])]])])))]]])])))))]]])))]))]))])])]]])))]]]))]]])))]))))]])))))))]))))]]])))]])]]])])]])]))))]]]))]))]]]))]]]])))))]]))]]]]))]])])]])))]])]]])])]))]))]))])]]]]]]]]))])])])])])]])]]]])])]]]]))])))]]])]])))]))])])]])))])])]))]]]]]])]]))]]])]]])]]))]]]]]))]]]])]))))]))]]))]])])]]])]))]])])))]))]]])])])]))])))))))]]]]))]]]]])]])]]])])]))))]]))))))]))])]]))]]])]))]))))]]))])))))))]])]]))]]]])])]))))])))]]]])]]))]])]]]))])]]))]))]])])))))])))]]]]]))])]]))]]))]]]]])]])])]]]])]))))))]]])]]])))])]]]])]]])))]]])])]]]]))]]])]))))]]))]])))]]]]]]]))]])])])])])]])]]))))])])]]))))]]]])])))))]]])]))))]]]))]))]]))])))]]]])]]]]]]]]))]]])])])))))]]))))]]]))))]]))))])]))])]]])])]]]]]]])]]]))])]])])]))]))]]]))]]))))]]]])))))))]]])]])))))]))])))]]))))]]])]))])]))]])])])]]]]))])]])))]]]]]]))]]]])])]])]]]]]))])])])]]]]])]]])))]))]]]]])]))))]]))]))))))])])]))]))])])]]]]]])]]])))]])]]]]])))]])]]]))]))])])]])))]])])))]))]])])))])))))))]]]))])])])]))]])))])])])]))]))]])))]])])]))]])])))]])]]]]]))))])]])])))])))))]]])])]]]))))])])))]])]]])]])))]))]]]]]]]])))]))])])]))))])))))]]))])]])]))]])))]]])]]))])]))))])]]))]])))))]])])]]])])]]])]]]])])]])]]]))))]])])))]))]]]]))]))])]])]]]]]])))))])))]])]]]]])))))])]])]]))]]]])])])]])])]]))])]])))])]])]))]])))])]]]])]])]]])])])))])]))])]]]]])))))))))]])]]))])]]])]])]))))])])))]]])]))]]]]))]]]]])]])])))])]))))]])))]))])]])]])))))]))))]])]])))])]])]]])])))])])]]]))]]))])])]]))]]))]))]]]])])))))]])))))]])])]]])]]])])))]))))])]])]]]])]))])])))])]]]))]])]])]])]])])])]))]])])])))))))]))])))])])))])]])]])]])]]])]]]))]]])]))]))]]]))])))])]]]]])))]]))))]]))])))))]]]])]]])]]]])]])))])]))]])]]])))])))]]))))))])))])]]]))])])))]))]])]]])])])]]]]])])])]]]))]]]]]]]]]))]))))))])]]]]]]))]])])])]]]]]]]]])]))]]]]]))))]])]]))]])]))))))])])])])])))])]]])))]]])])])))]])]]]])]]))])]]))]])]])))]])))))])]))))]]))))]]))))])]]]])))])))))]))])])])))]]))]]]]])))])))]]]]])])]])]]))))]))))]]])]]))))))))]])]])))])])]]]]]]]]])]])]])))])])]))])]]])]])]))))]]]))))]]]])]]]]]]))])]]]))])])))]))])]]]]]]])])))]]])))]]))]]])))]]]]]]])]]]])]))]]))]])]))))]))])))]])])]])))))])]))))])]]))))]]]]]]))])])))))))))))])))))]))]]))))))]])]))])]))])])))]))]]))])])]]])]]]])))]))]]]]]]])])]]])]])))]))]])])]])))]]]]])]]])]))))))]])]))]])))]]])])]])]]]])))]]]]])))])])))]]])])]]))])]))]]]))]]])]]]]]]))])]]]))])))]))])]))]))))]]]))]]])]])])]]]])]]]])]))]))])]]]))]])]])))]))])]])]]]])]])]])])]])]])]])))]]]]))]]]))]])])]]))]]]]])]]]]])])))]]])])]])))))]))))]))]])])]]))))]]]])))))]))))))]])]]]))]]]])])])]])))))]]]]]]])))])]]]))]))])))))))]])]))]]))]])))])])))))]]]])])))))])]]]])]]))))]]))]))])))]])])])]])))))))]]))]))])]]])])])))]]))))]))])])]])]])]])))])))))]]))])]))]]))]]))]]]))]]])))]]])]])])))))])))))))]))]]))))])]))]])]))]])]]))]))]]]]]))])]])])]))]))]))])]]])])))]]))]]))])])))]])]])]))]])])]]])])]]]]]])))]]]]]))])]]])])]]])]]))))]])]))]])]]))]])]]))]])]))))))]]])]]]))]])])])]])]]])))]])]]])]]]]])]])))]]]])])))]])]))]))]]])]]))))]])])))])]]]]))))]]]]]))]]]))]]]])]))]])])))])))]))]]])))]])])]]]])]))]))))]))]])]]))])))]])])]]])]))))]])))))])])))])]]))]))])]))))]))]]]))))]]]]]])]])]))))))]]])])])]])])))]))]]]]]]))]]))]]])])]))]]])]]])))])))))]]))])]]])])]]))))])))))])))))])]])])]]]])]]]])))])]]]]]]]))]]]]))))]])))])))))]])])])]]]]]]])])]))))]])]))]]]))))]])]))]))))]]])))]])]])]]])))])))]]]]])]]]))]])])))]])]]]]))]])]]]))])]]]]))))]])]))]]))])]]))))])]]))]]]])]]]]))]]]])))])]])]))])))))]))]])]]]]]]))]]])]]))))])]]))]]]]])))))]])]]]))))]]))])])]])]])]])])]]]]])]]])))]])])]]))]))))]])])]]]]]]]))]]])]]])))))]])]))]]])]))])]]]))]))]]]]]))]]))]]))]]))])]])])))]))]))])])]]]]])]])))])]]])])))])]]]])])]]]])]])))])]))]])))]]))]]))])])))])])])))])]])]])]]))))])]])))))]))])])]]])]]]]])))]])))))])]]))])))]))))))]))])])])]]])]]])]))])])))]]]])]))])]]]]])])]]]))])])])))])))))]))]))]))]]]])]]]))]]))))])))]]]]]])]))])]]))))))]]])]]))])]]]]]]))))]]]]]]]])]]))))]))]])])]))))))])]))]]]))])]))])]]))))])))])]]))]]]])]])]]]])]))))])]]]])]]])])]]))]])]]]])]])])))]))]])]]))])])]))]]])]]]]])))])]))]])])]])))])])]]))))]]])])))))]])])])))])]]]]))]]]))))])]]]]]))))]))])]))))]])]))))]]])))))]))]])])))])]]])]))]])])]])]]])))])]))]]]]])))]]))]])])))])))]])])]])])]]]]]))))]])]])]])])])]])]]])]])))]]))])])]]]]))])]])]])))])]]))]]])))]]))])]]))])]])]]))))))))]])))))]]))]])))]]]])])])))]]])))]))])])]))])))]))]]]))])]])]))])))]]]]])]))))))])]))))])))]])]])]]))))))]]]))]]]]))))]])]]]]]])]]])]))])]))])])])])])))])])))]])])])]))]]]]]))]]])])]]]])]]))))]]))))]]))]]))]])]]]])]))]])])])))])]])])]))))])]])]]))]])]))]]]))))))]])]]))]]]]]]]]]])]]]]]))]]])]]))])]))))]])])]))]]]]]]]]]])]]]))])]]))))])])]])]]]])]))])]])]]))]])])]))])]]))]))]]])])]])]])]]))]])])))])))]]])]]))]])]]])])))))]])])]]])]]]))]])])]))]])])]]))]])))]]]])])])]))]])])]]]]])]]]])])))]]])])])]])))]]]])]]]]]]]))))))))])))))])]))])))]))]]))))]])))]]])]]]]]]))])]))))])]]]]])])))]]))]]))]])]]])]])))])])]])])])])]))])))]]))))))])])])))]])))])))])]))]])]]))]])])]])])]]]))))])]]])]))]]]))])]))]])]])])))])))])])]]]))]))]))]]))])]])]])])))))]])])]]]])])]]]]])))]]]))))))]]]]]))]]]))]))])])])]]))))])))]])))]]]]])])))))]]))]))]])]])))])])]]]]]]])])])]]]]]]]))]])]))]]])])))])))]))]])))])))]])]]]]]])]]]])])]])]])]]]])))])]])])]]]))]))))))))))]]])]]]])])]])]])]))]])])]])]]))))]]])]]]])])]]]))])]])]]]]))]]]]]])))))]])))]]]))])))))]])]])]]])))]))]))))]]])]])))))]]))]]]])]]))])])])])]))]])))]]))]))))]]]]])]]])]]]])]))))]))]])]))))]])]]))])]))]))]]]]]]]]]))]]]])])]]])]])]])]]))]]))])])]]])]))])))]]))))]))])]))]))))]])))]))]]]])))]]])]])]))]])]])))]]]]])]))))])]))))))]]])])])])]])])])))]]]])]]))]))])]]]])])))))]]])])])]))]))]))))]])]])])]]]])])))))]))])])]]]]]))])))]]]])))]]]]]))])])))))))))]))]])]])]]]]])]]))))]))))]]]))])]]])])))]))))]]])]))))])]))))]]])])]])]]))))))))]]]]]]]])]])])])]])]]]))))]]])]]))]]])])]])])))]]])]]])]]]]])))]])]])))))]])])]])]]]))]]]]]))]))))]))]])))]))])))))])]])]]]]])])]])]))]])]]]]]]])])])]))))))])])]]]))]))))))])]]))])])]]]]]]])]]])])]]])]]]))]])])]]])))]])]]))])]]))))))]]]))]]])))]]]]]])])))])))))]]])))])))])]]]]]]))]]))]))]]])])]))]]]]]]))]]])]]])]]]]))])))]))]]]])]))))]])))]]]]))))))]))])))])])]])])]]])))))]])]))]])]))]]]])]])))]]])]]))))])])])]]]])]]]])])]]])]]))]))))]])]])))))))]]]])]))])])]))]]]])]]))])]])]]))]))]]]]])]])])]]]]]]]]]))]]))])))]]]])])]]])])))]]]))))])])])])]))]))]]])))]]))]]])]))]))]))]]])])]))])]]]]])]]]])]]))]]))])])]]))]]]]]))))]])]))]])]])])]])]]]]]]))])))]))))]])]])]]))])]))))])))]])])))))])])])])))]]))))]]))))]]))])]))]))))])]))]]]))))]])]))]])))]]]])])])]]]]))]))))]])])]])])])]]]))]])]])))))))))]]])])))))]))]]]]])]))]]]])]])))]])]]]))]]))]])))])]]))]]])])))])])))]))))])]))]]]]]))))])]]]])])])))))))]))]]]))]))]])]]])]])])]]]]]])]]]]))])]]]]]]]])]]))))]]))]]]])))]))))))])))]]])])))]))]]))]))))]]]]])))]))])]]]]]]]]])]])]])]]))]))))])]]]]]]]]]))]]])]))])))))]]))]))])]]]]]))]))]))]]]))])]]))]])))))])])])]]])]))]))])]))]])))]])])]])]))))])]])]]))]])))))))]])]])]])]))]]]]))))]))]]]))]]]])))])]]])])]])]))]))]]]]]))]])])])]]])))]]]]))]])])]]))))]]]]]))])]))])]]]])))))))]])])])]]]]]]]])]])])))))))])))]])))]])]))]]])))]]]))])]))]]]])))))))]))]]])]))))]]]])]]]]])))])))])))]))]])]]]]]]))]]]))))]]])]])]))]))))])]]]))]]))))])]))])]])]]))]])]]]]]])]))])))]]]]))]])])))]))]]]))]]]))])]])))))])]]]))]))))]]])))))]]))]]]))]])]])]))]))]))]]])]]]]])])]])])]])]]])))])]]]))]])]]))]])))]))]])]]]]]]))]]]])])]])))))]])])])]])))]]))]))]])]]]))]]))]]]))))]]]))])])))]]])])))])]]])))])))]])]]])]))])])]]))]))]])]]]))]))]])))))])]]))]]]]]]])))))]))]))]))]]])]]])])))]]])]])]]))]]]))])))]]))]]]))))]]]]]])))))]]])))])])])))))])))]]]]]]])))])))]])])])])]))))])])]]]])]))])]))])]]])))))]]))))]]])]]])))]]])]]])]]))]]]))])]]])))))))]])]]))))])]]]))]]]]]]]))]))))]))])])]])]])]])]])))]])])]])])]]]]]]))]])])]]]]]))]])))])])))]]]]]])))])])])]))))]]])]]]])])])]])]]]])]))]))])]])))]])))))])]))))]]))]))]])])]]])]]])]]])]])]))]])))])]]))]])))]))]))]])]])]))))]]]]))])]]]]])))]]]))))]))]])]))])))]))])]]))]])])])]))]])])]))]]]))))])]))])]])]))]]]]]])])])]]))]]]))))]]])]]]))))]]])]))]]))]))]])))]])])])))]]]])]]]])))])))])))))]]))))))])))]])]]))))]])]))))])])])]]])]]]))]]))]])]])])))]]]]))]]]]))]))]]])]]]]]]]]]])))])))])]]]])))])]))])])]])])]]]])))]])]))))]))]]])])))]))])])]]))])))]))))]])])))))]])]]])))])))])])])]]]]])])))]])))])))]))]]))))))]]))))])]))])))]]]))]])])])])]]))])]])]))]])])))])]]])]))])])))]))])]]])]))])])))])])))]])]]])])))])]])))]]]]))]]]]]]))]]]]))]]]]))]))]]))])]]))]))])))]])]))]]]]])]]))))))]])))]]]])]]]))))])])])))))]]])]))]))])))])]]]))]))])))))]))]])]))]]]]]]])))]])]])]))))]))]]]]]]]))))]))))])))])]]])]])]]])))))]])]))])]]])]]]])]))]])))]]))]]]))]])]))])))]]]]])))))]])]]]]])]))]])]])])])]))))]]]))]]))]]))]]))])]]]])]))])]]]])])])]])])))))]]]])]])]]]])))]])))))])]]])])))))])]))))])]]))]]]]]]))])]])])]])]])]])]]]]]))])]])]]]]))])))]])))]])]))])))))]]]]]])]))]]]]]]])]))))]))]]))]))))]])])))])]))])]]))))]]]]])])]])]])]))))))]])))]])]])]])))))]])]])]))])]]])]]])))))]]]]]))))]))])]]))]])])]]]])))]])))))]))]]]])]]])]]]))]]])]])])])]))))]]))]])))]))]]))))]]])])])])])])]]]))))]])])])))])]))))])))])))])]))]])])]]])]]])]))))))))])]]])]])]])]))])))))]]]]]]))])]]]])]))])]])]]])))]])]]])))])))))]])]]))))])]]])]])]])]])]])]]])))]))])))]])])])])])])])]))]])]])])]])]]])))]])]])]]])))])]]]]])]])])]))])]]))]]))))]]]])]]])]]))]))))])]))))])])]])))))))]))]]]))]]))]))]]]))))])]]]))]]]])]]))])]))]))]]]))]]])]])])]))]]])])]])]]]))))])]]])])))]]))]])]])))])))])])]))))]))))]])]))])))])])]]]]))]))]))])])]))])])])]))]])])])])]]]]])]]))]])]))])))]]))))))]]])]])])]])])]])])]))))])])]))]])]]])))))]]))]]))]))]])))))]]))]]]]]]]])])])))))]]])])]))]])]])))))]))]]]])]]])]]))]]))]]]]]))])]])))]))))])]]])])])]))))]])))]]]]])]]])))]]]]]]))]))))]]))))))]]]]]])]]])]]]]]]))]]]]])])])]))]]]])))])]))])]))]]))]))])))]]])]])])]]])])]])]))])])]])))])])))]]]])]]]]])))]])))))])])])))))])]])])))))]))]])))]]])]])))]])))])])])))])]]]])]]))]])])])]))]))])])]]))]))]]])])))]]]]])))]]]]]])))]])])]]])))])])))])))]]])))]]]]]]])))))])))))]])))]]]))]))]]]]))]]])]])]])]]])]]])]])])]))])]])]))]])))]]))]]]])]])]])]]])]))]])))))))]))])]])]]])]])))))]]))))]]))]]]])]])))]]])))])]]))]]])))]))))))]]]))]])]))])]])))])))]])]])]]]])]))]]])]))]]]))))]))]]))]])))))]))]))])])]]]]]]])]))]]))])])))])))]])]]]]])]]))])])])])]])]))))]]])]))]])])))])]))])]]]])))])])]))])])])])]]]]])])]])))])]))]]))]]))]]]))]]]))])])])]]))]))))]]])]])))])]]))]])]]])]]])])]]]]]]]]))]))]]]])]))]]]])])))]]]])))]])))])]]]]]]])])]]])])]))])))]]]])))]))))]]]]))]))])))])]))]]]]))))))]])])]]])))]]])])]]))))]))])])]]]))]]]]))))]])])])))]]]]))]))]]]]]]]]])))])))]))]])])]))]])])])))))]])]]))))])]]]))])]])]))))])]])]]]]))))))])]]])]]]]]])]]]))))]]))])]]])]]])]]))]])])]]]))]))]])]]))])))])])])]]])))]])])]]]))])])])]]])]))]]))))]))])]]])))))]])]))))]]))]]]))]]])])]]))]]])]]]])]]]]])]]])))]]]]))]]])]))]])]]])])]]]))]))))])))])]]]]]]])])])]])])])]]))))]])]]])))))])))]]]))])]))])]]]]])])]]]]])]))]))))))]]]])]))))]))])])])]))]))]])])])]))])]]]]])]]])])))))]]]]]))]])))]]]])]))]]))]])])]]]]))]))))]]]]))]])]])))))]))]])]]))))))])))])])))]]]])]]]])])))])]]]]))]]]))]))]]])]]]])])))])]))]])])]])]]]]]]]]]])])])]]]]])]])])))]])])])))]]])))))))])]]))])])]]))]])]))))))))]])])]])]]])))])])))]])])]))))]))])]]])]])]]]]]]]])]))]]]])])))))))]))])])]]))]])])]])))))))])]]]))])]]))]])])])]])]])]]])))]))))])]]]))])])]])]]]])]])))))))])]))))]))]])]])])]]])]))]])))]))])]]]))]]]]])]]]]]))]]])]]])))])]))])]])]]])])])])])))))))))]))]))]]))]))]))]]]]))])]])]]]))])])))]])))]]]]]))]))))))))))))]]]))]])]]]]])))])]])]]])]))])]]))]])))]))]))]))])])]]))]]))]])))))])))))]]]]]]])])]]])]]))]))))]))]]])])])]]]]])]])])]]]]])))]]]])]]]]))]])]]))))))]))))]])))]]])))])]])]]]]])])]]]])]])])]]]]])])))]]]))]]]]])))]]])])))]))]])))))]])]])))]]])])))))))))]]]))]]])]])))]]))])]])))])]]))]]))])]])))))]))))]]]]])]))))))]))]]))]])]]]]]])))]))]])]]]]]]]]]])])))]))])])])]]]))))])))])]]))))])]]))]]]]]])))]]]))]])))]]))]])))]]]]])]])]))])))))]])]]])])]])]]))))))])]]]]]])])]))]]])])]]]))]]])]]]))])]]])]]))))]]))])))]]]]]]])]))]]])]]]))]])))]]]))])])]]))))])]]]]])]))]]])])))))))]]]])]]]))))))]]))])]])])))])))]))))]))))]))))]])]))])]))]]]]])]])])]])))])))])]]]]]))]])])])])]]))]]]]]]]))))])]]]])))]))))])])]]]]]))]]]]]]]))])])]])]])))])])]])])))])]]]]))]])))]))))])))]))]))]))))])))]]))])))]]])))]]))))]))]))]]))]]]]]]))])])]])]])])]]])]])]])]]))))))])]))])]))]]]])]])]]))])))]])]))])]))]))))])]))]]]))]]]])))]]])])]]])])])])]))]])]))]]]))]])]]))])]]])))]]]])]]]])]))))])]])])]]])])))]])])]])]))]]]])]))])])])))))]]))]]]))))))]]]]]))])]]))]))]]))]]))]]]])]]))))]]]]])]])]]]))])]]]]])])]]])])]]]]]))]]]))]))])])])]])]])]))]]])])))]])]])]))))])]))))])])])])))]))]]]]])]])]])]])]]))))))]))]))]])])]]]]))))]]]]]]]])))]]]]]]])))])))])])]]]))))])))])])]])])]])]]))]]))))])]])]))]]]]]]))])))))]])])]]]])]))]]))])])))))]]]))])]))))]))])]]])))))]]))]))])))]])]]]]]]]])]))]])]]))])]])))))]]])])]]]]]]]]]]]]]))])])])))])]]]])])]))))))])])]]]))]]]]]]))))]])])]])))))]))])]]]))))))])])])]))))]))]]))))))]])]]])))])])])]))]]]))]))))))))))]))]]))]]))]))]]]]]]]])]))]]))]]))])])]]]])))]]]]]]])]]]))]))])))]]]]))])]])]])]])))))]])))]])]))])))]]]))]]]]])]]))]])]]]])])])]]))))])))]])])))])))])])])])]])]])]))])])))))])])))])))])]]]]))])]]]])]])])))]])])))))))])))])]])]])])]]))])))]]])])])]])]]])])]])]]))]))]]))))]]]]]])]]]))))))]]))))])]))]]])])])))])])])]]))]])))]])]))])]])]])))]))])]]]])))])))])])]])]]]]]])])])))]]]])]])])]))]))]])]))))])])))))]]]]))]])]]]]]])]]]))]]]])]])])]])]]])]]]]))]])]]]])]])]))])]])]))))])])])))]])]]]]])]))]])]]))])))])]])]]]]))]]))))]])]]]))))]])))]]]])))]]]))]))])]]]]]]])]]]]]]]])]]]))]])]]]]))])])])]]])]]]]]]]]))))]]])]])]]]]))))])]))]]))])])])))))]]]))])])))]]])))]))))]))]]]))])])])))))]])))))])))]]])]]]]]))))]))]]))]]])])]])]]]))))]])))]]])]]])])))]))]]])))))))]]]))))]]))))])))]]]]])]))]])))))))))]]]))]))])))])))))]]]))]]]]])))]]]]]]]))]]]))])))))])]])]))]))])]]])]]])))]])]])))]]]))]))]]]])]]])]))]]))]])))]]])])]]]]))]))])])]]])))]]]]]]))]))]]])])]]))))))])]])])]]]])]))]]))])))])])]))])]])]]]))))]])))]]]))])]]])]]]))])])]])])])]]]])]]]])])]))]]]))]]]])))]))]])])]]]]))]))])]])]])]]))])]]])]])))]])]))]]]))])))])]])]]))))))]))]))))])))))]))]]))])]])])]]]]]))))])])))])]]])])])))]))]]]]]))])])]))]])))]))]]]])])))])]])]])))]]])))])))]])])])))]]])])]]]))])]))]]))])]]])])]))))))))))])))])])])])))]))])])]])))]])]))]]])]]]]]])]]))]))])]))])])])])]])))])))]))))))])]))]]])))))]]])))))])]]])])]))))])]))))])))]])))]])]])])]])))])])]]]]))))]]))])]]))])))])]]])]]]])]]]]))]))]]]]]))])])))]]])))]])]))))])]))])))))))))))])))]])]])]]))))]]])]])))]])]])])))))]))]))]]]])])]]))])))]]]]])))]]]))])))])]))]])]))])))))]]]]])))]]]])))])]))]]))]]))))]]])]]]]]]]]])]])))]]]]])])]))))]))])])))])])])))])))))))]]])]])]])]]]])]]]]]]))))]))]))])]]]]]))])])])])])))))]]])]))]])])])])))))])]])]]])]))]))]]]))])]]))))]))))]])))])]))])]))]))])))]]]]]]])))])))))]]]]]))]])])])]]))])]]]]]]]))])])]))]]]])]]]])]])]]]]]))])))))))]))])])])])])])]])]]]])))]])]]))]))))]]]]))]))))))])]))]])])))]])]])))))]))]]))])])]]))])]))]]])]]))))])]]]))]]]]))]]]))]]))]]]]))]]]]])]))))])]]])]]))]]])))])))]]]]]]))])))])]])]]))]]])))))]]]))]))]]])))])))))]]])]]])]))]]]])])]]]))]]])))])]]))]]))]]))))])))])]))]))))))))]]]))])))))])]))))])])])]))]))])))]]]))]]]]])]]])]]]))))]]))]]]])]]]))]])])))]])])))])]]))))))))))]])))])))]])))]])])])))])]]))))))]])))])])]))))]]))]])))]]]])]]]])))]]])]])])])])]]]]]]]]]])))))))))])]])]])]]))]]]])]]]])]]))]]]]]]))]])]])])])]])]]])])]))])]))]])))))]]]]]]]))]])]))]]))]]])))])))])]]]]]])])))]]))]]]]]]])))]))])]])))]]]]]))]))])]])]])])))]]])]]]])]]))]]]]]))])]]))))))))]))))))])]]])]]]))])]])])]]))))]]])]]])))))]]])]])]])])]])])])]]))]]])))))]]))]))]))]]))])]])])]))]))]))]))]])]]])))))))])]])))))])]]])]]])))])]]))]))))]]]]]]))]))]))]))]]])]))]])]]]]]]]])]))]))))))))]]])]]])))])]]])]])))]]]]])]]]))))]))]]]))]]])))))))]])]]))]]))]])]))])))])))]]]]))]]]]]))])]])])))]))])]))))))]]]]))]]))))]]])]]]]))]))]))])))])]))]])]))]))]]]]]])))))))))]])]]))])))]])))]])])])]])])]))))]]))])))))]])]))))]))])]])]]))))]]])]]]]]]))]))]))]])]])])))))])])]]]]])]]]])))]]))]))])])]))))]))])])]))]))]])])))]])]]]))]))])]])])])]]]]))]]))]])]])))))]))])])]]]))]]])])))))]))]]])))])])])])))))]]))))]))]]))))]]]])]))]]]))]))]]])]]])))))]]))])]))]])]]]])))]]]]])])]]])]))])])])]]]]]]]])])])]))])))])))])))))])))))]))])))])]])))]])))]])])]]))]]]]])]]))])]]])]]])]]])])])]]])]])))]))]]))])))]]]))]]])]]])))]])]]))]])]))))]]]))))])]]]]]]]]))])]])]])])]))))]])]]))])]]]]]]])))]))]]])]])]]]]]))])))]])]]]))]])]])])]))))])))]))])))]]]))))]]])])]])))]])])]])])]])]]))]]))])]))]]]]))])]]))))]])])]]]])))]]])])])]]))]])]]))])]])]))])]]]]]])]))))])]))]]]]]]))))]]])])))]]))])]])]]]))]])])]]]])))])]))))]])))]]]))]]]])])]))])]]])]]]]))])))))]))))])])]]))]]]]])]))))]])])]]]))]])]))])))])))])]])))))]]])]])]]))]]])])]])]))])]])))]]]]]])]])]]))]]]))]])))])]]])]))))])))))])])])]]]]))]]))])))])]]))))]])]]]])])]])]]]))])))]))))]]])]]])]])])]]))])))]))))))])]]))))])])]]))))]))])])]]]])]]])))))])])))))]]]]]]]]]))))]]]))]))))]]])]))]]])]]])]]))))])))]))))))]))])]]))])])])])))]])))))]])])]))]))]]))])])]))]))))))]]]]]]]])]]])]]))])]]))))]))]))])]]))])))]))))])))]]]))]))]))]]]])]]]])])]]]))]]]]])))]]])])]]))]])))])]])])]])))]]]]))))]]]]))))]))]))))))]])])]]))]])]]))]]))]])))]]))]])])))]))]])])))]]]])]])))]))]])]))]]))]])))]]])]]]]])])]])])]])]])))))]]])])))])))))))]]))]]))]]]])]))])]))]]))))))]]]])]])])]))))])))]))]]))))]))]))))))])))])))])))]])))))))]]]])]]]]])]))]]]]]])))))))))))]])])))]]))))]]])])]])])])])])))]))))])))))]])]))]]]]]])]]]))))])])]]]))])]))]]))]]]])))]])]))))))))]]])))]]]))]]]])))])))]]]]]])))))]))))]])]))]]))]]))]]]]]]))))])])))))))]])))]]]]]]]]])]])))))]]]))])))]))))]]))]])))])])]])]]])))])])]])])))])]))])]]))]])]])]])]))))]]]]])])])])))])))))])])]))])]]]]])))))])))))))]]])])]))])])])]]])]]])]]))]))]])])))])))))))]])])]]]))]])]]]]])]])])])]]]]]))]))]]]))]]]))))]]]]))]))]))]]]]]]]))]]]]]])]])]))))]))))]])]]]]))])]]))])])])]))]])]]]]))]]]))])))]])]]]])])]]])]])]])))])])]]])])]))))))))]]))])))]])))]]))]])])]]]]])))]])))])]]]])]))]])]]))))]])]))])]))]])))]))]))]])))])]))]]])))))]]]]]])))]]]])])]]])))]]])])])))]]]])]]])])]]]))])]]])])]]])]]]]))]]])]]])]))))]]]))]]]]))]]]]))))))]]]])))]))]])]]]))]))]]]))])])])]]))]]])]]]])]]])])])]]]])]]))])))))]))]]]])])])]]]))))]]]]]))])]]])))])]]))]]]])]]]]])))]])]))]]])))]]))))]]))]]]])]])]))])]])]])])]))))]]]]]]]]])]]]])])])]])))))]]])))))])))]]]))]]]]]]))])]]]]))]])))))]))]]])))]])]])])])])])]))])]])]]))))])]]])))])])))))))])]]]]]]]])))]])))]]]))]]))]]]]))))))]]]))))])]])])]]]])]])]])))))]]]))])])])]]))))]]]]]])))]]))]])])))]]))))]))]])]]]))]]))))]]])])))))))]]]])))])]]])))]])))])]])))]))])]]]]]))]]])])]])]))]]]]]))))]])]]]]])])))]))))))))])])])))]]]]]))]]]])]]]]]]))]]])]]]]]])]]]]])))]])]]]])))])]])))]])])))]))))]]]))])]))])]))]])])]]]]))))]])])]]]]))]))])]])]]])]])])]]))])]])))))])))]])]]]])]))]]])]]])))])]]]]))])))]]]]])))])])]])])))]]]]])]])))]]))]]]]])]))]))))]]]]]])))]))]]))])])]))))]]]]]])]))]]))]])]])]))]]])])]))]))]])]])]]))]))))])]]]))])]])]]])))]])]]]]]))))))]])])]]))]))])])])]]))]]]])]))]])))))])]])])]))])))))))])])]]])]])])]])])]))))]))]]]])]))]]])]))))])))))]])))]]])])])]]))])]]]]]]]]))]]])))])]])]]))])])])]))))]]]]))))))]]]])]]]]))]]))]]))))))])))])])]]))]]))])]]))])]]]])))]]])]]))]])])])]])]])])]))]]]))]])]]]])]))]])))]])]))])])]]]]))]]])]]]])]]])]))])]))))))])])])))]]])]])))]])]))]]]))))))]]]]]))])]))]]))]]])]]))))]]))))]]])]]]]]])])])]])]]]])])))))])))])))))]]])]]]]))]]]]]]]))))]]])])))))]))))))]]))])]))]))]]]]]))]]])]]]))]]))))]])])]]]))])]))))]]]]))))]]]]]]]]]]])]])]]])])]])))])]))]])])]])]])]))])])]]])))])]))))])]])]]]))))]])])])])]])))])])]))]]]]))]])))]])])]]]])))]]])]])])])])]]]))])))]]))]])]))]]])])))])]]])))]]])]))]])]]))]])])))]])]))])]]])))]]])))]))))]]))])]]]])))))]))]))))])])])])])]))])])]))]]]]])))])]))]))]))])))])])]))]]]])]]]]))]))])])))])])])])]))]))])]]))])]]))])))))]])])))]]))))]])]]))])]])))]]])]))))))]))))))))]]))]))]]))))])))]))])]))]]))))])]]]))))]]]]))]))]]]])))]])))))))))])])]]]])])))))]]))]]]])]))])])]]]]])))]])]]))]]))))]]))))]]])])]])]]]))]))))]])]]))]]]])])]]))]]]]]))]]]))]])))]]]]])]]]])])]])]])))))]])))))])))]])]])))]]))])]))))))]])]])))])]]))))]]]]))]))]])))]]))]]])))]]))])))]]))))]]))])])]]]))))]))]))))])))])])]]))]]]]))]]))])])))))])]]))])]]))]))]))))])])]))))))])))])])])))])))]]])])))]]]]))))]])]]))])]))]])]]]])))))))))])])]]]])]])))]))])))]))))])]]]])])])]])])]))])])]))))]))]])]])))))])])]))])]]]))))]))))))])]))))))]]]]))])]]])])))]])))])))))))])]))]])))))))))))))]))))]]])]]]])]))))])))))])]])]]]))]]]]))]]]))))]])])]]))])]])))))])])]]))]))])]]]]))])]))))]])]]))])))))])]]))))]]])))]])))))])])]]))]))))])]])))]))])])]))]]])])))))])]]]])))]])]]]]]]])]]]]])]])])]))]]])]]])))])]]]]))))]])]))))])]]]))])])]])])])))])))]))]]]]])))])]))]]])]))])]]]]]]]))]])))]))]]]))])])))]))]])]]]))]))]]]))]])))))])]]])])]]])]))))]])))]))]]]]])]))])]]]]]]]])]))))]])]]))]]])])]]])]]])])])))])])]]))]])])]])]]]]))))))]))])]]])]])]))]]))]]))]]))]])]])]]])])])])]]))])]])])])]]]])])]))]))]]]]])]]]]]))))]))))]]])]]]]])]]]]])))]]))])]))]]])))]]])])))]]]]))])]))))]])])]))])])])))]]]])]]]]]])]]))]]]])]]))])))]]])])])])])))])]]])]]]))]]]))]]]]))))]]]]])])))))]]])])]])]])))))]))]))))])]])]]]])])])]]))))])]])]])))))]))))))))]])]))))]))])))))))))))])]]]]]])])])))))]])]]])]]])]))])])]])))))]])])))))]])]]]]])]]])]]]]]])])])))]]]]])]]]]])))]]))))))))])]]]]))])])])])]]]])))]))])]))])]))])))))]]])]]))])]]]]]]])]))]]))]))]]]])]])))))]]])))]]]]))))])))])))]]]]]))])))])])]]])]])])])])]]]]]))]])])]]))))])))])])])]])]))))])]]]]]])))]))]])])]]])))]])))]]]]])]]]]]])])]))]]]))]]))))])]]))]))))])])]]])]])]])]])))]])]])]])]])]])]]]]]))])))]]]]))))])]])]])]))])])]]))))))]))))])]])]))]])])]]]))])]]]))]]]))]]]))])])))])))]])])])])]))]])]]])]]]]])))]]])]))])))))]))]])))))])))])])]]]]))])])]])]]]]]])])])])])))])]]]))])]]]]))))])]))])]]))])]]]]])])]]))])))]]])]])])]])))))]]]))]]]]]]]]]]]])]]])]])))])))))])]]]))]))])]))))])))))])]]])]))))))))])))]])]]])))]))]))))]))]]]))]))])]]])]))]])))])]])])))]))]))))])])]))]]]))])]]]]]))))))))]])]])]]]))))]))])]]]]]])])])]))))]]]))]])]]])])))]]]))]))])))]]]]]])]])]]])]]]))]]]]])]])])]))]))]])]])))])])]]]))]]))])))))]])]]])])]]]])]]]]]))))]))])]]]))])))])))]]]])]]))]])])))))]]))])]]]]])]))])))]]])]]))))))]]]])]))]))]]))]))]]]]]]]])))))]))]]])]]))]]])])]])]])])))]))])))]]]])])))]))])]))]])))]]])]]))]))))]])])]])))]])]])))))))])]])])])])]))))])])))))])])])))]]))]]))])]]]))]))]])]])]))))]]))))]]))))]))]]])]]))])]]]))]]]]]))]])))))])))])]]]]])))))))]))]]])]])]]]]]]]])]])])))]]])]]]]))]]))]]))]])]])))))]]]]]])]))]]])]]]])])]]])]]]])])]]])]])))]]]]])]])]]]))]]]])])])])]]]))))])]])]]])))]])))))]]]])]))])]]]])]]]]])]]))])]))]])]))])]]])])]]]]))))]]]])])]]]])])])])])]))])]]]))))])])])]]]])))])))]))])]]))])]))]))])])]))]]])]]))])]])]])))]))]]))]]))]))]))]]]]]]])])))])]))]])))]]])]])]))))))]]])]]]]))]))])]]))]]]]])])])]]])])]]))]))])]]))))]]])]]))])]]]]]]]]])]])]]])]]])]]])]])]]])))])]])))])]]]])]]]]]]))]]]]]])))])))]])]]]))]]]])]))])]])]])))))))]]))])))]))]]))]])])))]]]])]))]])])))]]]))]])])))]])]]]]]]]])))])))])]]]])]]])]]]]))])]])])]))]])]]]))])]]]))))])]]))))])]])]]])]))]))]])]))])])])]])]))))]]))]))])))])])]]))]]])]]]))]])]])])])))]]]]])]]]]]))]])))))]))])))]]])))]])))]))]]]]]]))])))]])])])))]])))]]]))))]))]]])])])])]]]])]))]])))]))])])])))]))])])))]]]])))))]]]]]]))))]))])]]])]]))])])))))])])))))])]]]))]]]))]))))])])))])])))])]])))])])]])]])])]]]]]])]]]])))])])]]])]))]])))]))])]]]))]]]])]))]]])])])]))])])])])))]])]]]]]))]]))))]))))])]))]]]])]]]))])]]))]]))])]))]]]])]]]))]]]]]]])))))]])])]])]]])]]]))]]))]]]])]]]])))]]])))])])))])]])])])]])]]]]]))]])))]])]])]))])))]])]]])]))))]))])]))])]]])])])])]])]]))]]])])]]))])]]]]]]]]]])))])]))])]))))]]]])))]))))))]]]]]])]]]])]])]))]]]))]]])]])]]]]))])])])])))))]]]]]))]])]])]]))))]))])]]))])])]])]]])]))])]]]))))))]))]])]]])]])]]))])))])))]])))])))])]))]]]]]))]])]]]]]]]])]]]))))]]]]]]]]]))))))))]]]))))))])))]]))))))))]]]))]))])))])])]]]])]])])]))))]])])]]])]))]]))))]])]]]]))])]]))]]))))]]]]]))]]])]))])])))))))])))])))]])]])])))])]))]]])]))]]]]))))]))]))])]))))]))]))])]]])]])]]))]]]])])]])))))]])]])))]])]])])]]))]))))))]]]]]])]])]]])))))]])))])]]))]]))])]])))])))]])))])))))]]))])]])])]]))))]]]]])])]]]])))))])])]]])])]]]]])))))])))]]]])])]]]]]]])]))))]))]]]])])])))]]])])]))]]))))])]))]))]]]]]]]]]))))]]]]))))])])])]))]]])])]))])])]]]]))))]))])]])))))])]]]]))])])]])))])]])]]))]))]]]]))])]]]])])]])]))]]]))]]))])]]]]]]]]]))]]]])))]))))])))))]])])])])]]]]]]])))))))]]]))]])))]])]])]])])))]])]]]])))]])))]))])]])]]))]))]))]])]]]]))]])]))))]))])))]]))]]]]])))])]]))])])]]])])))))]])))]]])]]))]]]]]))]))))))]))]))]]))]]]])]))))]]])]))])]]]]))))))]))]))]]])))]]))))])))))]])])]])]])]])))]])]])])))])]))])]])))))])]])]]]]])))]))]))])))])]]))]]]))])))]])]))])]]]]]))]]])]])])]]])]]))]]]]]))])))]])]]])])]]]]])]]]))))))])]]]]))]))])]])])]])])]]]))]))))]]]]]))]]]]))])])])))))))])])]]))])]))))))]]))]))]])))]]])))])))]))]))])])]]])]]]]])]]))]]]))))]]))]])]])))]]])]]]])])]]]]]))))]]))])])]])]))])]]])])]]])]]]))])))))])])]])])))]])]])))]]]]]])])))))])))))))]]])]])])]))))]])]]]])))))]))))])))]))])]]))]])])]))]]]]])]]]))])))]]]])])))]]]]]])])]]])]]]))]]])])]))])))]))]])]]]]))]])])]]))))))])])]])])]]])])]]))]]))))])])]]])]))])]]))))]]]]))))]]]])]))]]))]))))]]]))))])])))]]]]]]]]])]]])]]))))))]])))))]))]]))])])]])]]))))])]))]])])]]])])))]]]]))])])])))])))])))]])]]]])]))))])))]]]]]])))]))]]])])]]]]])))]]))])))]))))]])])])))))))])))))]]]])))])))])))))]))]))])]]]]]))]]])]])])))])))])]]))))))))))]))))]]))]])])])]])]]]])]]]]]]]))]])])])))))])]))))]))]))]])])]))]]]]])]))]]]])]])]]]]])]))])))))]]]))])]]))])))]))]]]))])))])])])]))]]])])))))])))])])]))])]))]])]))]]]))))]])]]]))]]))]]]]]])]]))]))]]))])))]))))]])])])]))]])]]])]]]]]])]]]]]]])))))])]]]]]])]])]])]]]])])]))))]]]))))))])))))])])]))]]])]))]))))]]]))]]))]]))))]])))]]])])]])))])))))]))]]]]])]]]]]]]])]))])]])])])]))])])]]))])]))]]]]])]))))))))])))])))])]]])]))]))]]]])]]])]]]]))]))]])]))]]]))]))))]])]]]]]]]))])]]]]))))]))])))])]])))))])])]]])])]]))))])])])]]))])]]]]]]))))))))))))])))]))))]]]))))])]]])]])])]]]])))))))])]]])]]])]])])]))]))]])))]))]))))]]))]))]])]]]]]]]]))))))]]])])])])]]]])]]]])]]]]]]))]])]))]))]]])))]))]])]]])))]])])))))]))]))])]]]]])]]]))]))])])]])]))])]])]])]])]]]]])))]]])]]]))]]])]]))]]))])]]))))]]]])])))])]])))]])))])])]))])))]])]]]))]]])))))))]]))))]]]))])]])]))]])))]]])])])])])])))))]])])]))]]]))]])]))))))]))])]]]]]]]]]])))]))])]])])])]]]))])))]]])))]]))])]]]]))))])))]))])]])]])]])]])))]])))))))]]))])])]]])]]])))))))]]]])]]))]]])]))))))]])])]])])]])])])]]))]))])))))])]])]])))])])))))]]]]]))))))]]]]]]])]]])]]]]]])])]]]])]]]]])])]]]]))))]))))])))]]))]])]]]]))))]]]])))]]))])])]]))]]))]))])))]])))]]))]]])))])])])]]]]])]))]]])]]]]]])])))]]]))]))]]]))))]]])]))])]]))]]))])]]])]))]))]]]]]]))])]]])])]]]]))])]]]]))]]]])))]]]))])]]]])))])]]]]]]]]])))))]))))]]))))])]))]]]))]]))))]]])))))))]])]))])]]))]])]))]])])]]]])]))))])]]])))])])]]))]]]])])]))])]])]]]))]]]])]]]]]))]])]]]]]]]])]]]))))]]))])]]])])]])))))])]]]]))))]))]))]))]]]])]]))]))]]])]])]]])]]))])]]]]))]]))]]])]]]])))])]))))])]]]))])))]]]])))])]]])]])))))]))))])))]])))))))]]])]])]])])))]))])]]]]))))]])))])]]]]]]]))]])))])))])]))]]])]))])))))]]))])]]]]))]]))]))])])])))]]))]])])))])))))])]]])]])]]])]]])])))]])]])))]])]]))])))])]])]))])]]])))]]]])])))]])))))]]]]]]]))]])))]])]])))))]]])])])])])]))))]])))])])))]]]]])]])])))])))]]]]))])]]])])]]])])))))))))]))))]])]]]]]]])))))]])])]]]]]))))]))]])]])])]]))])]))]))])]]])]])])])]))]]])]))])]]))])])))]])])])]])))))])]]])))]]))]]))))]]]])]))]]))])]]]]])])]))))]]])))]))]])]))])])]])]]])))))])]]])]]]]))])))]]])])]]]]))])))]))))))))]]]])])]]]]]]])]])])]))])])]])]]))))))]]])]]))])))]))])]]))]]]])])))]])))]]))])]])]))]])))]])]])))))]])])))])])))]])))]]]]])))]]])]]))])])]]]]]])])]]))])]))])])))]]]]]]]]])]))]))))]]]))]))))]]]))]]])]]]]]]]]))))))]]))])]]))]])])]]])]))]]]])]]))]]]))]]])]]])]]]]))])]]))]]]]))]]))]))]))]))]))]]]))])]])]]])]])))]]))])]))])])])]]]]))])])])))))])))]]))]]))))])))))))])))))])]]]]]]]))])]])))))]))))]))])])]])])]]])]]]]]]))]))])]]))))]])]]])]]])])))]])])])]]]]]]]))))])))]))]]])]]])]]]])]])]]])]]]]])]]])))]]])))))])))])]))))))))])]))))]))]))]))]]))))])])])]]))))]))])]))]))])]]))]))]))))))])]]))))))])]]]])])]])])]]))]])])))))))])])]))))))]))))]))))]))]))])]))]]]])))))]])))]))))]))]]])])]))]]))])))])))]])))]])))]]]))]]]]]))])]])]])]]))]])))]])])]])]]])]))]]]])]))]])]]]))])))]]]]]]]]]))))])]]]]))])]])]]]]])))]]]))]))))]]]]]])]))))]]))]))]]))))]]))]))]]])]]]]]]])]))]]]])]])]]]]]]))])]]]))]))))]]])]])]]]]])))]]))]])])]]))))])]]]))])])))])])]]])])]]]]])))))]]]])]))]))]))]))]]]]])])]]])]])])))))])])])))))]))))]]]))]]]]))])])]]])]]))]))]]]])))])])]]]]]]]))]]])))))])]])]))])]])]]]]]))]]])])]))]])))]])])]))]))]]]])]]]))]]))])]))))])]]])]))]))]]))))]]])))]])]))]]]]]))]))))]]))]]]])]])]])])])]]))))]])]]]]]])))]]]])])]))))]))]]]]]]])])]])])]]])]]))))]]))]))])]]])))]]])]]]))])]]]))))]]))]]]]])])]]]]])]))]])))]))])]))])]]])))]]))])))]]])])])]]))))))])])])])]])])))]])]]]))]))])]]])]])]))]])]]])])]]]))]])]]]])))])))))])))))]))))]]]]))]))]))]]])]]]])]])])]]]]])]]))))]))))]]]]]]])))]])])]]]]]]]]))))))]]))])]])]]]))))]]])))))]])])])))]])]])])])))]]]])))]]])]])])))]]]]))]])])))))]]]]])])]]]]]])))]))]]]))))]))]])))]]]]]]])))]]]))))])))]])]]))]]]))]])]))])))])])))))))])])]))))]]))]]]]])]])))])))])])])]]])]]])]]])])]]])]])]])]]]))]]))]])]]]]]]]])])]]))]])]]]]]]))])))))))))]])]]))]]]]]]]]]))]])])))]]))]])]]))))]))]))])]]))))]]])]))))]])))]))]]]]])))]]]])))]))))])]])])]]])])]]]]]]])]]]])]))]]]]]]))])]))])]])])]]])]]]]))))])))])]]]]])))])]])))])))])])]))]])]))))]]))])]))]]))]]])])))])])]]))))))]])])]])]]])]))]]])])])]]]]])])))))]])])])]])])]])))])]])))]])]]])]])]))]])]))])]])))]]))))])))))))])))]]])]]))))]])]]))))]))])]))])))])]])])))]))]]]]]]])))]]))))]]])]))])))))]]]])))))))))]]))]])))]]]])]))]))]])]])])])]]]))]))]])))])))]]]]])))]])])]]]))]]))]]))))]]]])])]))))]])]]])]]])))]])]])))]])]))])])])]]]))]))]]])])))))]])))]])])])]]]]]])]]]]))]]]]]]])]))]))])])]]])])]])]])))]))))])))])]]]])])]]])]]])]))]])])]))]))])))]]]]))]))))]]]]))))])]))]])])]]))])])])]]]]])]]]]))]]]]))))]]))))])])])])]]])))])]]]]])]]])]]))]])))])))))]]]])]])]])]))]))]]]]))]]])]])]]])]]]))]])))))))))]])]]]]))))))]]]]))])))]]]]]]]])))))]])]]]])]))))])])]]))))))]))])]])]]]]]])]]))]])))))]))]]))]))])))])])]]))))]]])])])]])]]]]))]])]])]]])]])]))])]]))]]]]))]])]])])]]))])]]]])])]))]]))])])]]]])]]))))]]])])))))]]]])]))]]))]]))])])])])))]]))))]])))])])))))])]]])]))]])]))])]]])]]]]]))]))]]]))])]]])))))]]))])]]]])])]]))]])]])])))]]]]))]])])]]]])]]))))))]]]]]))]]]])))]]))]]]]]))]]))])))])))])))]])])]])]]))))]))]]]]]])])))]]))]]]]]]])]]]]]))])])])))))]])])))])])])]])]]))])]]]))])))])))))]))]]]])))]]]])]]]])]]])]]])]))))]]])])]]]])]]))))]]]]]))]))))]])]]]]]))])])])]]]))]]])]]]]))]])))])]]))]]))))))]]))))))])]]]))]])))])])]]))))])))]]]))]))]])])]]]]))]]]])])]])])]]]]]])])]]]]])]]]))])])])))))]]]]))]])]]))]))]))]))]])]]]]))]]))]))])]]])])]])]]))])])))))))]]])))))]))])]])]])))]])]]))]]]]]]])]))))])]]])]]])))]))])))]]])]])]]))]))]))))]))]]]]))))]]])))))]]))]]]])])))]]]))])]))])])])]]]])]]]]])])))]))]]))])])])])]]))]]]]]]]))]])])))]]]))))]])])]]])]])))))))]]]])))]])])])]])])))])]])])]]]])]])))]]]]]]]])]))]))])]])]))]]])])]]]))]]])))))])])])])]]))))]]])]]))]]))))]])))])]])]]])])]))])]])))))])]])]]])]]))])]))))])])))])]))]]]]])))]))))))]])]]]))])]]])])))]])))]])])])))]]]))]]])])))))]))]))])])]])]))]]))]]]]))]]))])]))]))])])])))])]))]]])]]]]))))]))]]))]])])])]]))]]))]])]]]))]))]]))))])))))]]])])])))])))))]]]))]]]])]))]])]]])]]]])]]]]])]]))]])])]))]])]])))]]))])])]]]))]]]])]])])])))]))))))]])]))]))]))]])))]]])])))]])])])]])])])))]))))]))))]])))])))]]))]))))]))))]]]))]])])])]])]]]]))])]]]]])))])]]]))]])])]))]])]))]]])])]]])])])]])])])]]]])])]])])]]])]]])))))]]))])))]]))]])])]]))])))])]))]]]])]]])]))]))]])]]])))]]]]))])]]])))]))])]]))))]))]])]]))])]])]])])))))]]])]]]]])]))))])]))]])]))))))]]])]]))]])])])])])])])]]]])]]])])))]]])]]]]]])]]])]])]])))])))))))])))])))))]])]])]]]]))])])]]]))]))]]])))])])]]))]))])]])]))]]))])])))]]))]])])))])]))))))))]])))]])])]])))])])])])]]))]]])])))]))))))]))])]]]]])]]]]])]))]]))])))))]))]])]]))]]])))]])]]))])))]]]]]))]])]))]])]]]]])])))))))])))])]])]]]]))])]]])]]]]]))]]))]])]]])]]]]]]]))]))])))]]]))))])))])])])])]])]))))))]])))]]]]]]])]))])]))))])])]]])))]]))]]]]]))]]))))]]))]]))])])))))]))]]))))]))])])]]]]))])))])])))])]])]))))))]])])]))]]]]))])])]]]]))]]]))]))]]))]))]))))]])))])]]))]]))])]]))])]]])]]))])]])]])])])])])]]]])))]))])])))))))]]))]]))))])))))]))])]]]])]])]]]))))]))]]]])]])]]))))]])]]]))]]))))]))]])])]))))])))]]]])]]]]))]]]]])))]]))))))]]])]])]))]]])])))])))])]]]]])]))])))]))]]])]]]])))])))))]]]]]]]]]])]]]]]))]])))]]]]])])]]]])))))))]]]]]]]))]])))])))])))]]]))]])]]]]]))]])]])))))))))]]])]]])]))))])))]]]]]]]])))))))]]))]])])]))]]]]]]))))]]))))]]]])]]])])])]))]]))]]]]))]]]]))))))]])]))]])]])])]]]])]])))]]]])])]]))])]]]))]])))]))])))))])]))))]]))]))]))]]]]))))))]]]]])]]])])]]]]])]]]]])])))]))]]]])])]])])]))])))))])]))]))]]]])]]]])))]]))])])])]))])]]]]))]]]))]))))]])]))]]])]))))]))))])])])))))])]]])])]]]]]])))))])]]]]]])])])]))]])]])]])])]]]]))])])])]))])))]))]])]]))))))]]])]])]))]]])]]]]))]]])]]])]]))))))))])]])])])])]])))])]])]))])]])]]])])]])])])))))))]))]]))]]]])]])))]])])]))])))]))])]))))])))]]]]))])]])]]]]])])]]])])])]))))]])))))))]])]]])])))))))])]]])])))]))]])))))]])]]]])])])))))))])]]]])]))]]))])])]])])))))]]])]]]]])]]]]))))])]])]])]]))))])))])))))]]]]]])))]]))])])]))])]]]))])])])]]]]])])))]]]]])])]])]])]))]]]])]])))]]]))])]]]))))])))))]]]))]))]])])]]]]))]])))])))])]))))]]]]))))]])))]))])])]))))])]]])])]))])))]]]]])]])]]]]))])])))]])])]])))])])]])))])))]))]))))]])]))]]]))]]])])]])])))))]])]]))]])])])]])]))]]))])))]]]])))]]]]])))]]]]]])]))])]))]]]])]])))])]])]]])])))])]]]))))))))))))])])])]]])]))]]])]))]]])])]))))])]]))]))))]])])]]]))]))))))]]]])]]])))])))]]]]]])]])]))])]]])))]])])))]]]]))))]])])])))]])))])))])]])])]]]]))])]))]]]])])))))]]))])])]]])]])))]]))]]]]]]]])]]])))]))))]])))]]])])]]])]])]]])))]])]]])]]])])])]]]))]]))]]])]]]))]])))])]])]]])))])))]]])))])])))]))]]]])]]])]]]]]])]]])]]]]))]]]]])))))]]]])]]])]]]]))])]]]]])]])]])])))))])]]])))]]]]]]])]]])]]]]))]))]])])])]))]))]]]]]))))))))])])])]]))]])]))]))]))])]]]])]))]]))]]]))])))])])]])])]]])])]]])])))]]])])))]])))]))]])]))]))]])]]])])]))))]])])])))))))])))))]])])]])])]]]])))]]]))])]))]]])))]))]]])]]])))])]))))]])]]]])]))])]))]]])]]))])]))))]]])]]))]]])]]]]]]]])])]]]]))]]]])))))])]]])])])))]]]])])))])))])))]]]])]]])])))]]]])))])]]])]]]))]]]))]]])])])])])))]])])]))]))]]))])])])])])))))]]))]])))])])))])]]])]))]]]))]))]))]]])))))]]]])]))]]]))]]]))]]]))]))]])]]])])])])))))])])))]]]]))])]]]])]))]]]]]))))]]))])]))))]]]]]]])]]])])]])))])])))))]))]))])]))])])]]))]]]))))])]))]])))])))]]))])]])]]]]))]]))))))])]]))])])]])])))))]]]))))))]]])))])))]]])))]]])]))))])]])]]))])]])]))))))]]]]])])]]]]]))])]))))]))]])]]])])])))])])])]])]))))]]]]))])]]]]]]]])))]]]]))))]])))])]])))])]]]]])])]])]))]))]])))]]))))]]]])]]))]])]]))]))]]])]])]])]]]))]))))))]]])))]]))])))])]]])]])]))])]]]])]))]))])))))]))])))]]]]]))]]]]])))]]]]]))))]))]]])])])]])]))])]])]]]]])])])])]]))]])]))]]])]]]))]]]))]])]])]]]]]])]])])])]]]))))]]])])])]])])])]]]])]))]))])]))))]]]]))])])))))]]]])]]]))]]]]]))))))])])]])))])]]]]))])]))]]])]]]))]])]))]]])]])))])))]]])]]))]))])]))]]])]])])])))])))]]]]]]]))))])))])]]))])))))])))]]])]]])])))]]]]])])]]]]])]))]]])]]))])])]]]]]]])))))]))]))]]])]))]))]])))]])))))))]]]]])]]])))])))]))))]]]])))]]])]))]))]]]])]]))))]]])))))]]]]])]))])))))]]]]]]])]]))]])])]])])]]))]]]]])]]]]])]]])]]))])))]))])]])])]]))])])))])]]])))]))]]]]))]))])]])))))]])))))]))]])]))]])])])))))]])])]]])]))])))])))])))))))])]])))]]]]]]))]])]))]]]))])])))]]])]))]))])))))])]))]])])]])))])]]))))]])]))))]]]]]))))))])))))])]]])))]])]])))]]]]]))]))))))])])]]]))]]])]])]]]]])]]))]])))])])])])]))))]])]]]))]]))]])])))])))]]))])]]])]))]]])]])]]])))]])]))))))]))))]])]))]]]]])]]))))])]])))]])]]])))]]))])]]))))]])))]))))]]])]]]))]]])])]))))]]]]])])])))])])))]]]))]])]]]]])]]]]]]])))))))]])))]]])])]]]]])]])]]]))]])]))]]])])]]])])))]]]]))]))]]])]]]])])))]]]])])]))]))]]))))))])))]]])]]))))]))])]]]))])]))))]])]]]])]]])]]]])])]]))]])]])])))])]]))]])]]]]]]]))])])))]]]]]))]]))]])]]])))])]]]])]]]]])]]))]]])])]]])])]])])]))]]])]]))])]]))]))]))))))]]]])]]])]))))))])]]]])]))]]])]]]]))]]]]))])))])))]))])])]))])]])])]]]]))]])])])])))]]]]]))])))]]))]))]])])]])))])))]]])]])]))))])])])]))])]])])))]))])))))))]])])])]))]]]))])]))])]]])]]])])])))])]]]))]))))))])])])]]))))]]))))))])]))]))]])))]])))])])]])]))))]]]]])]])]])])]]]])))))]]]]]))])))])]]))])]]))))]))])]]]])]]]]])]))]]]])]]]]]])]])])))])]]))]))))]]])])]])]]]))]]]])]))))))]]]]])))))]]]))))]]]]])]]]]]))]])])]]]))])])]]])))))]))]])]]))]])))))])]]))]])])]))]))]]])])]]))))]))))]]))]])]))]]))]])))))))])]))]))]]]))))))]]]]))))])))))]))]))])))])])))])]])]))]])]))])])]])]]]])))]]))])]])]]])])))]]]])))]]))])]))])))]]]]]]]]))))))]])])])))]))]]]))]]])]]]]]))]])]]))])]]))])]]))))]))))))])]]))))]])]]])]]]))]))]))]]]]]))])))])))])])))))])])))))])]]]))))]]])]]]])]))]))))))])]]))))]]))]]]])]])))]]])))]])]]))])]]]]]])))]])])]])]]])])))]))))]))])]))]]]))))]])])])))))]]]])]))])))]]]])]]])]]]))])]]]))]])]]]]))]]]]])])]))]])])])))]]))])]))))))]]])))))])]])]]])]])])))])]))]]))]]])]])]]]]]]]))])]))))]))]]))]]]]]]]])])])]))))))]]]])))]]]])])])))]]]])]]])))))])))])))]))]]))))]])])]))))))))])]]]])]]]]))))]]))]])])))])]]]]]]]]]))))])]))))]])])]])]]]]])]])]))))]]))])]))])]]))]])))])])))))])])]))]])])]])]]])]))])]])])]))]]]]]]))]))]]]]]]]]))))))])])])]]])]])])]])]))]])]]])])]])])]))])])]]]]])]]])]]))))])])]]]])])])]]])]])])]]]]))])))))])]])]]])])])]))])]]]))]))]])])])]))))]])]]])])]])])))]])))]]])])])]))]])]))]))]])))]])]]]])])))]])]]]])))]]]]))))]]]]])))]]])))])))]]])]])))]]]))))])]]]))))))])))]]])])]))]])])])])]]]])]])))))])]]])]]]]])))]])])))))]])])])]]])))])]]]]]])])])))]))))])]]))))))])]]]))))))))])])]]))))))]]]]])])))]]))]]]]])))))]))))))))))])]]))])))]])]])]])))]]]))))]]]))])]]]]])))))]))))))]))))]]]]]])]]]]))]]]])])])]))])]])))]]]]]]]))])]]]))]])])]]]]])))]]]))]))))))])])])))))]]]]]])])]]])]]]]]]])])])))]])]))))))]]])]])]])))]]]]]]))]))]])]))))])])])))]])))]])))])))]]])]]]))]]]))]))]))]]))))])]])])])])))]))]]]))]))))]]))]])])))])]))))])))])]])]]])]]]])))])))))]))]))])]]]]))])]))]))]]]]]]]])]]])))])))))])))]]))]]))]]])]]])])]]])]]]]))]))])]])]))))]))]])))))])))])])])]])))))]))])])]])])))]))))]])])))))]]]]]))))]))]]]]])])))]))]])])]])))])])])])]))))))])))])]]))]]]]]]]])]]]])))))]]])])])])]])))])]])]]]))])])]])])])))]])))]]]))))])]))))))))]))]])]))]])])])]])]]))])))])]]])]]))]])])))]))])])]))))]]]]))))))]]]]))]])]]))])])]])]])]]])))))])))]]]]]]])]]))]]))])))]]]]]]]))))]]]]])]))])))]))]))]])))]]]))]]))])]]))))]]]])]]])]]]])]]]])))]]])]]]]]])))])])]))]]])))))])))]]]))))))]]])))])])]])])))])]])]]))]])]]]))])))])]])]))]])))]))]])]]]])))]])]]]]]]))))])]])))))])]])])]))]]])))]]))]]))]))))]]]])]])]]])]]))])]]))))])]))])]])])]]]]])])))]])])]]]]))]]))]])]]]])))]]))]))]])])])])))]))))]])]]])))])])]))]])])])])]]])))]])]))]]]]]]])]])])]]])]]))]])]]])))]]])))]]]]]]]))])])]]))))))])))])]])])))])))])]))]])))])])))]])]]]])]]]))])]])]))]]]]])])])]]]]))])]])])]))]))))))]]])])]))]))])]])]])]])]))]))]]))]])]])))]])])))]))]]))]]])])])])])]]])])])))))]]]]]))])]])]))))]]])]]])])]]))])]]))))])]])]]]])])])))))))))]]])])]))]))))]])))]])))))]]])]])))])]))))))])]]]]]]]])]]]]))])))))]]]))))])]))]))])]))))])]])]))]])])))]])]])))])]]))))]]))))]]]]]])])))]]))]]])])]]]])]))]])))]))))]])]])])]]))]])]]]))))))])))))])])]))]]])]))))]])]]))])]]])]]))])]]])]]]]]]]]]]))]]]]))]])))])]]]))]))]]]]]))]]]])))]]))))])]))]))]]]]))))]]])]]))))])]))]]))]))])]]])]]])]]]]])])]])))]))))])]))])))))]]]]]))]))])]])])])])]])]])))])]])]]]])])])]]])]]])]]]]])]])]]]]]])])]])]])]))])))]])))))]))]))]]]]]))))]])])]))]]))]]]]))]]]]]])))))]]))))]])]]]])]])])]]))]))))]]))])))]]))]]]))))])]]]]]))]))]))))))]))]])]]))]])]]))])]))]]))))]]]])]))]]])))]])]]])]]]]]]]])]]))]])))]]))]])])))]]])]])))]]]]])))])]]))]])])])]))]]])]])))]))))]])))])))]]]]]))])])))))])])])])]))])))]))])])]])])]])]]]])]])))]])))))))]]]])])])])]))]]))])])])]])))])]])]]))))))]]]))]))]]])))]]]))))))]]])]])))]]))))))])]]]))))))))]]))]]])]]])))))]]]))])])]])]]])])))]])]]]]]))))])])))])])]])))]])]])])])]]))])]]]]))]]])))]))]]]]))]])]])))))))]))]])]]]]]]))]])]])]]])]]]))))]]])]]])])])))]))))]))]]]])))]]]))]])]))))))))]]))))]))]]]]]]))))])]])]))]]])]])))])]]]))]]]]))])]]]])]]])]])])])])))]])]))])])]))))])]]]])))]))]]]])])]]]]))]]))]]]]])])]]])))))]]])))]]]))))])])]]))])])]])])]))])]]))]]]))))]))))]]]))))]])]])))]]]]]]]))]])]]]])]))))]])])])]))]]])]]))]]])])))))])]])]]])))]]])]]])]))]])))])]))])]]]]]))))]]]])])))]])]])))]]])))])]))]]]))))])))])]]]))])]])]])]]])))]]))]]])])))]]]])]])])]]]]))]])])))]]])]]])]]))]))]])])])]))]))]))])]))]]])]]])])]]]]))])]])))])))])))])))))))])))]]])))])))))]]])]]))))]])]]]]]]]]]])]])])]]])))])])])])]))])))]))]]))]])]]])))]])])]]))]])]])))]))])]]]])])))])]])]]]]]]]))]]))])]])])])]])])))]]]]])]]))))]]]))))]))])])]]]]]]))]])])))))))])])))]))))]]])])]]]])]]])]])]))])))])]])])])]))))])]])])))]]))))]))])]]]]])))]]])])])])]])))])]]]]]))]]]])]]]]))]]))]]]])]])]])])]])]]]))]]])))))))]))]]])])))]))]])))))])])]]))]])])))]]]])]])]]]]]]])]]))]]])]])))))]])))])]])]])]]))))))]))]]]))]]]]]]]))])]]])])])))]))]]]))))))))]]]])]))))]]])]]]]]])]]]]]))]]])]])))]]))]]]]]))]])))])]]))]])])))))])])]]])))])]]]]]])]]))]))]])]]])]]])]]]))))]))]]]]]]])))])])))])]]]]]))]))]))]])))]))]))]])]])]))))))]])])]])]]])))))]))]))]]]])]])]])])]))]])]]])))))]]]])]])])]]]]]]])))]))))])]])])])))))]]]]]))))]))))]]]])]))]))]]))]))))]]]))]]])))])))]])]))])])))])))]]])]])]]]))])]))]]))])))))]]])))]]))))])])]])]))))]]])]]])]]])]))])])]]]])])))]]])))]]]])]))]])]))))]])]]])]]))]]))])]]))]]))])])]]))]]]))))]]]])]]))))]]]))))])])]])]])))]]]))))]]))]])])]))])]]))]]]]]]]]]])])]]]]]))]]])]])))]]]))))]))])))]]])]]]))))]])]]]])]]])))))]]]]))]]]])]))])]])))]])))]]]]]))]]]]]])])]))]]]]]]]]])])]]]]))))))))]]))))]))])))))])))]))))])])]])])]]))]]]])])))])))])])))])])))]])])]))]))]))))])])]]]])]]]]]]]))))]]))]))))]]])]])]])]]]])]))))]))]))]])]))])])]]])])]]))]]))]]]])])]))])]]))]])))]]])]]]]]])))))))])])]))])]))]])]])]))))]))))]]]]]]])]]))]))]]))])))])))]]))]]])))]]]]]])))])])]])]]]]]]]]])]])]])])]]))))])]))]))]))])])])])]]]))))])]]]))]]])]))]])))]]]])]]))]))))]))]]])))]))]])))]]])))))]])]))]]])])))))]]))]]]]])])])])))])))]]))))])]]]]]]]))]])))))))])]]])])))])]])]]]]])))]]]))]]])))])]])]])]))))]))]]))])]]])))]]))]]])])))))])]))]])]]]])]]])))))]])))])])]]])]]])]]])]]))))])])]))]]))))]]]]]))]))]]])])]]])])])))]]]))]])]]))])])])]]])])]])]]])))]]])))])])))]])]]]))]]])]))]))]]]])]]]])]]]]]])])]]]]]]])]]))]])]])]]])]))])]))))]))))]]])]])]]]]]])]))]]))]))])]])))))]]]])))])]])]))]))])])])]))]]]))]))))]))]]]])))]]]])]])]))]]])])]])))])])]))))]]]))]))])])]])])]]]]))])]]]]]))))]))]])])]]]))])]])]]])]])))))]]]]]]])))]])]])))]]])]]))])])))]))]]))))))])))]))]]]))]])])]])])]))]))]]]]))])]]]]]))]))])))))))))]]))))))]])]])))])]))]])]])])))))])]]))]]]))]]]))]])])))]]]))]]]]]])]])]]]))]])])]])]))]]))])))]]]])]))]])]])]]])])))))]]))))))]])])])]]))]]])]])]]]))]]))))]))]]]]]]]))]]))]])])])]]]]))])))]))]])))))]))])]]]))])]]]]))))]]])))]]])])]))))))))])]]))]])]]))))])]]))])]]]]])]]))))))))])]])]])))]))])]])]])]])]]]]]])]]])]]]]]])))])]]]])]]))))]))])])])))))]])])])])]])])]]]]))))))]]]])))))))))])))]))]]])])]))]]))))])]])])]]]])))))]]))]))]])]]])))))]))]])]]]]]])])]])]))])]))]))]])]]))))])]])])]])]))]]))))]]]))]]]]])]]]])]))])))])])])]]]]]])))]]])]]]])])))])))])])])]]]]])]))]]]])]]]])]))))])])]]]]]]]]]]]]])])])))])])])]])]))])]))]))]))))]])))]])]]])])]]])])]]]])))]]))))]])]]])]]))])]]]))]]]))]))])]))))]]]])]])])))]]))]]]))]])]]]])])]))])])))]]])))))]]]])))]))])])])))]])]]))]])]]))])))]])])]]]]))))))])]]))]))))])]])]))]])))])]]]))))))])]])]))))]))]])))]]]))]))])])]])]]]]))))]])))])))]]])]]]]))))))))])))]]])]]))]])]]]))]])]))])])]])])))))))])])])]]]])))])]))]]))))])]]]))]]]]])))]]]])]]])]]))))]]))]]]])])]]])))])))])]]))]])]))))]))]]))]]))])])]))])]])]])))]]]])])))]))]]])]]]])])])]]]))])])]]])]]]]]]])]))]]])))]]]])]))))]])]])]])))))]))))]))))]]))]))))))))])]]]]])]]))]]]])]])]]]])]]]])))))])))]])))]))]))]])]]]]])))))]]]]]]]]]]]]]]]]])])]))))))]])])]])]))]]])])])])]]))]]]])))))))]])])]))]]])]])])]]]]]))]))))]])))]])])))])]))))))]))])])])])])))])])))))))]))))]])]]))]])))]]]])]]]))])]]]))]]]]))])])])))]])])))])]))]])])]]])]])])]]))))))]]])]]))))]))))])]]))]]]])])]))])]))])]]])))]]))]]]]])]]]]]])])]]]))]]]))]])]]]])]]))))])]]))])]]])]])])])))])))])]))])))]]]]))))))))] ])[)([))(][))(([))[)(])[[])()[))())()][()]))]([])[(]()])[([()[))]])(()((()]]]]([]][))[())[[](([[(([)[)(]])[()[[([[[]]((([[))(()))[()(])([[)[([[[)(](])](()]))))](()][[[][)[][]]()([]([())([]]([[))([)())[]])[))(([([)[(])[[)(]]))[)[[]))(([][([]](]))[[[)(]()])[)]()][[()][[][([)[((()(][[])[[]]([(]))](()[[[))[[)(]((])])]()[(]([(][([[])(])]()]([])[))]][))(](](]([)](]](]])([[([([])([(])))))((][()][[]])()()[()[)()][[)[(([(]][]((](])))][([)))))()([)()[])((((]]((((([[(()(])])])[]])]))])(([]]]([)[[](][]))])[[(])[))([(]][][])(]()]]][[[[())[[])[(][[[[[[[[([)(]))]]]()()]]][]]]()()]]([[)(]](()]))[(]()[[])(]]([][)()()(](])[[()(()(]())[]()]()([[[[(([)))][)]][))])]]([])[[[])((()((]][[))[)][[)]()][]())))()[[))(]])]])([([)[([[)][)(([[][()](]])[)[()]((][]]([](][))[]]][[][](]])]][][]))((]])(]]])]][()([(]()[)))[)][])(([]][[]]](])([[[][)[[]([[[(([[[)[(][]][[]][[((]]([])[[]](])[[]]()]([([]]())((((([)()[)][)])])[][][)(])]()[[[[)[]][]](]][()](]))])[(([((](]([)()])]][[)])]()])[]([[[)[()]]])](([)))()][]([)[((([[[[[(]]]]]))](][([)())(])]][[][))])[])((([)][[)[)))]]))[]])][)][]((([]))([))[[)](])([[((])(]))()(][][]])))([])(([)]([]]])(]([[[]((])(([)(([[([)])([[)[)()](()][)[)((][[)[[[](]))(([[][(]]][]]()(]()][[(](](((])](][](([()((]](]](]]]))((]()))())])[((])([)()[])())(](((()][[]))[(((]]][)(([[)]()[[))]]][]([)([][]])(])[]))()[][)))([(][][([[()(]]]]([(()[]()[))))][))[)()([((]()](]([))(])](()(()[))))]][]]][(][(]]([[([[([([][][(((((]])([[]([(])(])())[)][[[[](])(())()](])](]]]][])[][)[())[)])])()(][])))())[]](((])[([][]))(()(]))]]()(][))(]](][([))]]]][])])[[[([]]))([[()[]])])()[[[)[[[]([([([](][))])])))))(](((()]([[)])(((][[)[)]]])()]][)(])[[)][)])])])[][)[[)))[)]()([)(((]((][[)[]()([)[)()][)([([)(())][]([)]))[(((])[(])[(])()[[(([))()((())[[]][][]]][]]([[)))[)([[[()[))])[)]])])]()()]()(())[[)(())[(][((][[([]]]]](]][](()](])][[]]]][([)[)[[)[()()()]()])([[[]]][[((]((]])])([][])[])[(([]](][][[([])()])((()]][]]](((][[[))[]]]](](][()(((])][]((](([[])()][([)](([[[[[)(])[[[[)])[()][]])](())(()](])(])]())])(][][]))[[[]))])]]()(])]](][)[)[][((([([)[[)][]][[][)])[(][[[()])([[)](]][[]][[))[])]]((])([[(([])))][))(((][]])])[()])[)](](([][[([(([([(][](]]]](]]())][])]))[](([))(]]]]))])[()[))[][()[(])()[[([))[))])]]][](]([[[]))((]((]]()]((])((][[[[]]))(]([([(][(()((())])[[[[[])][[)[[)]())]]])][[]))(]())([)[[]]))(((][]]))][(](][([][[[[]][)([][][(([]))(])(])[(][([[()])]](])(](])))]))(]](()([(]))[(]])[((()[])[[[)][))])[[)(][[)))([))()))]]]))(]])](()))(][])][(])][][])])))([]]())[))[])]()((][[]([(((][[))[([(](](]()[]]])]([()[(]([()[][(]([[[[[][)]))][[(]))][)()][]]()[[()[]])[])[([[[[](]()))[[)([)][))[]][[[(]](](()[](]([([()))(]]([[([[[[]]()[]((][(](])]]()((]])[]((([][[))[)](]()))([(()(]]((([[][)[([(]][([[[)()[]][[]])([[()(((]((()(([))[)])[((]))([)]([)][])[[[)[]([((]))][[[[(([])])()]([)((([)))[[[[])(]][(][(][)]]()](](([)(][]][]][((])]((](]]]])])[[](])[)(](([)()(])[[(()][)(]])())[]()[]][([(][))[([((()[[)(])([)][]](]((((()[(())[[()()()]]([)[(]]][[)[((((][)[()])])([][()][[]))[()[([[[()[]][([])[]](((([[)[))(][[)](])[]()[[])[]]](())())]]]][((([]]))]([[((([[[()(]]][([[[())))]]()[)]][)))([]([([[[([))()[([)][[[([)())]((([))()[]([]))(][)(]][[][]))[][(()))[[()[([)()][[](]]()[()])[)()([())]][]()]()]()][([[[)[[[(]]][[][)[((([)))([][([)[))[(([])](([((()]([)[((]((])(([]]))[[()[()[()]][(]])[)[)(((]]])(]])][[)())][[][]([(]))(()[])()]][]()((]))])((][([()))[(()[]]][)]))[)()]]][))[[)[]][([[))]))(()]]))[)[]])]][))]]))[](](]])()(([)[][))]])())]])(][[(]])](([)((]]]]()([()[[[)]][](()([[]])[(]])]][[)](([([[]])[()][))]](]()]])]((((])[[)][))())()]([)][][]]())]((([)]])](](][)(])[]((][)]]](][[([)]))(()(()(][[][[[)))[[]]([)[)[][[)[[]([()[]([[][()]]]))(][(][)((]()[][)(])()]]]][[[[[[()[(])))])([]((]([])[([(][(()](][([[[[()(]]])][(())]((][))]][[]()([](]]([[])]]]()[)))]))]]()((()(]]][))][)]])[(][([()([]])[(()))[[(]](()[)[]](((]([[)((]]](([)[))][))[[([[(])[(((])((]([[[)))(([(]()))][](()]))[][][[)([([)()](][())]]())[)[[[((((][)))][][()])[([])[(][([[(((]])([([](((([[[(([[)()[((([[)((]](]][((()[]]]()]([]]][)[)[](]))[([([[(()[]))()]()(]](][(])[[]]()(](()](]])(])(](])]])[[(()])]()[[][])]]])((])]]())[[)[]([[[([[)(]([))(]]](((()[[]((()]))])[))([(]()[([()[[)][([[)])]]([([[)([([)])(()]())((]((][(([[(((])][[[][[)]])([(()()((])[[(][[(]][][(([[])((](](])[))([[)[[[(([][](]([][[([)][][])))[]]][))(())][(]([[(([)[))))[[))([)]])[])([])]))]]))(([((]]))())([))())][]][[)))[][[()[[])])))]]]((([)[]])(]))[](])([)])]([]([[]][)(]](][[(]][][[[([][])])[[[)))()(())]])[[([)()))]][)))](()][([)(([()[)((][](]]])]()(])]])((](][]]))))()[[)()]]]([(()[[]())[])[](][(](])[[)])(]](][((]])])([])((]](][])[[(([)())[[)]((([]((])()[(((([](])[((](][[[((])][[]]()[()][][]())]()()])([[[()[)))([(())(()(]][)([[)])([()])))[([)(][])[)()[)(])[](()()])][[]](]()])[))]]][](][[()((]]]])[[(]])(())([)[[()([[[)[([[[]([(]))][)](]]](]()))](]]]([[())[[[)([]]()][)([[(()])[][()])(]()[]][[[][()[][][](]][[[([[])][)])]]))[])()[[(][)[[][])))]]][)](()[)[)))[])[[([](((([[]][])]](]]])[(())[)([([[]([)[])][][()((]))[()(()[])(([((]()][([)])([(()([])][[([([]]][])(])()])[()[()[([)()])][[))][]))[)[)]](]]))([[[])(]][)()]]](]](][([[)])]()]][))][)[))))[(((]]([(][)](()][())(][[][))])((])]]]()[[[]()(])[](]]][)][]([][([([]([)(]]])(((()[)]][[](()]])[])][(]([[]([)()[])][][[()[)[]))[]][]([[](])]([[]()])[((([]])))[()])][](()]([]([))](())(((](([[]())][][)(([)[]][])[[((()]()[)(]([[]()()[)(]]([]))])([(])([][]]][([]](]()]((([]([((()()))]((([][)(((([][([)]]()][]))[][[])(][[[[[[)()(]([]])][]))[(](]))][)(([[())])[[(]]((]()])]][)))([[([)(](](])(])](](])[(]]))][[(]]())][[)())[()[]])]]])[[[)[([[]](])])([)]][(]][()()][[])[()[[[)((]][)[))]])][[))]()[))))]]][)))]]])]])]][][][()))[)((()()]((]][))([)))])[((]()]])[)[][)([[][(]])())]))[((]]][[[](][(](]])))[))[])(([)[)((()()])][])())]](][([[]))]](]((]]((])(][[[]))])])[)(]([][])[()[((][[[()])()][()[)(]]])[(([]]))]](](([][[]()]]]()[)))]([((]])[))(()))))[)(])[(])()(](]](]()[(]))())[[](()[[]]]((])()))()[)()]]()[()()(([([)]][][][(]]](]][(](([[([)([)])))([])]([][()[[[([(()[([[)))((](](([]])](][]([()]))[)])()[[(([][])[)]][([)([)([([][[(]])[([)[[]][[[)))[[[((])))[[][(][][([((][[(]([][]](([(]))[][))[[(()(])((]]]][[()[]][[)))]][([[][)[))([]]()]][(((((][())]](][(][[(]()([)(][][[([[(())[](])))](][)[])())([[[)))))])((()(])[([()])][))](([])))](]][]([[)[])(((()][]()]]](([)))[][((]]([]])(()]][)()))(]()(]][[)()][]([]((]([[][(])]]))([)[([))[(()[][]))][](][([[]])]))[[[))])[[)))]]]]()(])(])([[][[)))[](](([((]])]())()([)]])((()(]])(]][(]][]()[]()[)[(([)])]((])][(([])[)[)([([[[(])])][[)[]])[)()[)))]((][(()[](([()(][[)])]))]]]([)(])([][()[)](]][])]()[]](((]))])[](])]](](()(]]][[[)[])][(](](([(])]])]][(]]))([[()][[)[]])][]((][])]])(])))(]][)([))[[[[[)))(([(((](])]](([]]))()][(](([[]()[()[(]][]([([))[)]])][(((]])]()](([()[[](]][)([[(]()))([[(]][(])()([[()(()[])))[][()]([])()](())[](((]([)](]))([]([[)(()]]]]([[[[][]][][(][])][[[)[[[))[[)(]([[[)]((())[[[[[)])])([))[)][[)][)[(()]])([()]]](][])[[([][[)])][(][][([])([(()))][][)[)[)(](([]])]]]((([[()]([][()][[))(]][(]([(((][]](]]][[(])](]])[(([]]])]]])[[]())[]]([)[](((]()[[)][][[)(](][)][)])]][)[)([[)(]]))[)[](]()])[]()(])]]((]([[[[[]](]]](((])[([)[([)]])))))][)[()[[[(][[(])([[[])[))()]])(])([(]))(]((][)[)][]([[([[])])]][][[][(]]]]()))](())[])[([(])][][(])]][]))[))()()(()(])])))]][(())(][])[[]]([(]][((]]]](](((([[][])]((]([[])(]]()[)])[[(((][]))][[][[][]])]([]))())[)[([[)()]])()[])[[]([][)]()[)([[])]][([]][()]]])[[)(](](]][)]]([)][]])]()]][(][())][)([(]([[])]][[[))[](])[[)]])))())([)[])[)(](][[])()]([]])()[()]]]]]][)[]])[][](]()[)(([([]](()[])[[)]]([[)])())[[([)())][(]])[)])[(])([))](([[))([((][[)([)[([)((([)])[))])[[)(((())())[[])(]]]()[)][]([](((](([)[])[((]]([((((()[])([[)]])]]]([(][)((]([][)[([[)][(((]([)[](([[][)])([))[[)()([])[)(]))(([[[))])[]])[]()]([)()])([)][))()(](([)(]])[]])((((]()(([[[))(()[[)((([[[](]()[(()]]([[)][][[[[[])(]([[]([][())(])[)((((])][]()[[[(([)[[[)([[][(((())[)[))][)][[))())([)([()((])[(]]([]][(]()[([[((((])()([)[((()[[]()[][)]]][[())][[)))][()[][[](][[][)()((]]())]])(](([([[][]][()()(]]]]()[[[]([[[)](([(])[[))[)]])[]](]])]](([[(][][])(()][(()][([)[]][[((][)[[([)(]][[][[]()])(][][[([](][)[)[([)]]]()((][)()([)()[))[)()([))[[[]))(]][(()])[[))]])[))[))]([[])()]((]][]])))((([[]]))())(]()(()((([][)[]))()()()[])]((]][()]](][[()()[[(((((][)(]())][])((])]]((()]][]][)([()][[[[(([)(][)[()([)]]]]()[[[[[]]][[)]])((][[])(]((((][[)[[())(]([)()])](([[[](][)()][[](([[(][])[)[)()[((()()[][()(]()])][)()(](]([))[)]][)(](][[])[]])()[)]))[][[](]][][)([()[])()]]][((][(])[)(][(])])[(])][([)(([[(]]](([[)])][([)())[[)])[]][][()))[[())[[[)[][[([]))(])[)[]]()(()]][)([((][(()(]][([)])([])(])]](([((](])(]([])]))[))(](](()][[((()()]]([()()))[[([]]](([][[([(])(([])])(([()])))))((()[()([)])(]]([[]][(]][])(]])(()))](([][[]]((][)])[[[))][]]([(])][]([)))[[](])]]]((([])[)))[]()]]()([(()](([(]]))[)[[)]((]][([([(([[((](]([))()])[())()])()[[](][)]))()[[)[()[((([((([]()(())(([[)][]))[[[][[))][]])))[)(]](][)((]]))()(]][])[])(]([([])]])][)[][([[)()[[)(])]](][)([)[(]][()][[)[(]()[]]][][]](])([[([()])])[))]([((][()]](])((())()[]]([()][][(()](])]])]()]())(([][[[](([[]][([([](([((]])]]()([(()([))((](]([][)]][([]]())(])(][)()()[)[[[)])[]))()([(())([[[)[[)[[([])())]((])))][[][()(][)])])[(([)(([(]][[)(]]()]))][(])(()([)[](][()[())((([](((]])((()[)](]()]]]))]])](]]([([)(([[)[(((][([))])[(]]))(](](]((([](]])[))(]()[)((](]))][)[[]](][]]()])()]([([))[)][])[))))][)[](]][[]]())]()[)[([][]]))])[][([)(((()[(][]((]][[]))[([]()[[][()])))[)()[[[[][]])(])[[]((]]])()))]]]]([[([))[][][)[[]((())(])][(])([([)]([[[]()][(()][[[[])))])()]([))]])](][][[(]([])([)()[([(]])]]))[[[])([])][[[)](](()[[([))()[][[([]]]]))())][)[[][]]]][]()[))))](][[][[[](]))[([(((([)[)((([())))][([(()[]](([)])(()][(]](][][(([[)(((]][])()(])][)[[()[)[]][)(][((](]](][]][][]([[]))[[))]](([([[(]]))()][())[])[]))((][[]()]))((())(])]([[)[)()](][][)[)[[))])))(([(((](])])][][])])[))(([()[[]((])(][]]][]))]((])]]))]]]]][]))]](]](]))[](([[)]])[)(([([[][])(([]((((](])))()][()([)(][)(](]()()][][((])(][(]])[)[][)]()))(()[()[])(](])(]]))])([[])((((([((]))]]][[(())[)[[]])[))))[]]))[]][]())]][)((][])[[)]([)]]][)((])[)]]][)]([][[))][(([[]))[[[][)))[])()))[)]()])(()[][)((((()[([[])](]([(()))([((](]([]([)][)])()[)())]))[]][[))([()[](([)])[((])))([)[)([][)][[)[][))])())[](][])([))][(](()())(][)](](]((](([[([)])]]][)[])][())[))[)(]))](]])][)]]()]]()]]]])(]])([()[](]))(([)]])(()[[)()[((()])((]))][])((((][(]][[]))()[[[(]()[))[[]()[[)](](][)[)][]]]([[[(]]([]])(([([](])[[)[()))[([)]))[([)([]]([](]()[(]][])((]]))[[][[)]([[(])[)[(]]))(][][]][])][[]())[[)([[]()((])([)([(([))]()[)))]][((](][[[)]))()()()])[(([(])[]([)][))[]][)[)])())([(()]([([(]]))[]][][))))[[(())(]((]]()()))()[)((](]]])]))[][][[[[])[]]][])[[(([()[[]]])[)([(][][)]]()[[])(]([][])(][)([)())]]([)(((([(())(]()))](]]]))(]][[][[](])])])()](((()[[)[[)))[[][)[][(()][](((([]))(][)(]]()[])))())(((]())]][[[]]][(([]]([([[)])()(([)([])()[)[(])()(((][]))[(((][)[([))][][)]]([]]()]][)[)([][[[[]])]])(])])[[[[)]]]((((]((])[()[]())][((][])]]))][](((([](]][)(((][[([]][[([(())])[(]][])()(])[(][[[]]))([[([][[])[[))]][][][[[)[[)])[)][]][((])][[(])))][((])]]])]()(][][)(])]](]][[)[[(]]][())]]()]([()])]))]]()((]][())((](][)([[[)()()]([]](](())(][)[[)()])])()[]][[])]]()]]]]]((](()[)()]([((]])(])]]]]))[[][(()))[)][)[[]]])])([[]([](([))[[[)(])()[()([[[]))]](([()([)[([][]])]))[]][([(((([(([]]](])))())[])()(([(([][(())(])))(][[]()[)([([]][)]][][[[](][[]](()([[()]]([](((]]))([[[[([()]][[)))[(()[(])(([))[)][))](][[)]][)[[)][()))[)(]]])((]()[[(]()]][[([[[(]][))([())[[[[](]([]([)[[()(][]][()]))[][])])(()(]([()][)]])]]]]][[[][[](([]])][])()[)])[([(])]([(((())]))]]())(]]])[)][(()((((][[()([][()())[[](())))]()[[(]]]()][[[[)[[][()]())[)))(([[[[]])()]]][)[(][))(([[)][](()((])(](]()[]()[)()])][]((](([)())[])[[]((())[(]([]][)])))((])[]))][))(([[)[][())[()))[]]()[[[))[[]][[((([[[)[))]([]][[()([))[()))(][)](]]])((]]](]]])))(((])(((]()[[([[((])][)][]([(())()(][])[)([])[(]))][)()]))[[)(]]([([]((([[][([)]))[)[)[)[(](]][[)))]][[][[]])([)(][)(])[([((([)]()(((][]((](()))[()[([[)[(])[[)[]([))]()[])(][([([()))[)([[])]))(()))([][)(()[))][]((()][[)(]((((])(])[]()[((][[([())][([[](]([))[)]][)[[)[(()]][[[[()(]](([]([))((()])[(]]()[((]]](()]])[)[()[)]())(]([[[](()]())[](])[]((])()]])[[[][))((])[)]([)[]]([)[])(])([][(((]])[[](](][)])(]]())]](])))(]]]([)[]])[[]]][)](]][[[[])][[))])])]]]])]]([[[)[((]]](][[))[))([)()][)(((((]))(()()[[][])[)[([]]])))])](]([][([[([)[[[()[[(]()(((])])[[[]()[]])]([](([[[)]]][[[()())(]]))[]](]())(]]]()][[[[))))[(])])[(][]((]([[(])[([)([[()[[(((])[[(]([]]((])))])[)())]))][[((]][])])]]]((([(()([])(][](()[[()[[(()([(([([[([(][[[[])]()[(((]]]]]][))](][)[[]]([)](()[([[[())]]](]])[(([([])))][[]])))]][]([(([))]((](([(([[((])[(]([[)(][[([[[[)[[[(]])[][[[([)[[)(][([[[)[][[][]]]([]))))[][[]])[((])(])[][([)))([)]])([]([[(]]((][)](([)[]][[)()()]])]][()()])]]][]([[([][[)([](][)([))[([))[)([[[[[[)()][[([)([)((()(()()[)[])(([]]](]]()[[([))(])[)]()(((][[([[)]][[[[]))))[)]]])[))[]])][)([])[]((()))[()[(]]]))]]]]())[())]([(()])(]]((()((]]))]](][)[[[)(]]([)((][(([[][]))])]([[][[([][(()(([()[)((]])(([]]])((](()(([[([(((]([[)((([(()])(((]([[]][([)[])[[][())))()([][[(])[[)()[[[))])))()]])(][][[))(]))[[)())](]))))[()([))[]](()]([((](((([(([[([)]][[((](]]()[])]((])(])[[)][(())[)][])([[]()((()]]((](()))(]](([][)()][])](((())][(](](]()(((](](]([)[)()])[(([[(([))[[([[])[][][((([[)())[)]()])]))((([[[[[(]](][][]]([[)[(])][][]]])]))]]](([([[][]((][(()])[[[)])]()[[[](])(](]))(])(]([]](([)))))]))]([(]]]])[(][[)))[(])(]))]([))[)[][]()[(])())])[[)]][()[]]))][[([(]]]()]([)(((((([))]][](]]])([()[()])][(][)(][[)])())))[[])])([))]][)((())[[))(])()][))())[)]])])[[)(])[)()]))])[][[][](]([))[]]][()()[)])(([])[[]][)([][)[))))[((((()]]][)[)[((][]]][)()][()](([)[)([]]]((]([[[))(][][[]][[[]()][])[[[](()()]](()[])())][[)[]))][])))([([()(]])[)][))[([(([[([]]]](](]][((])]]]())(]]()])([]]()(]]])]])[[)][()](]][[)])[]]])[[[)))](]()[)(][])))])[(()[[(][))]))[)]][))](]][([)]])]][][)((((()[[)()[)((])]()]()][][([(]([()[([][([(](])])]()]([][((][(]()[[][([[()([(][[(((([[([)]]]][(]))[][((])(()]]([((]((](([][](]]))(([[]](([(()))()]]]]([])[[[(()])[]][[([]]][]])()))]]([)])[[[[[]])()[](]()(]()))[(]]](()]])(])[][](([]])[[)(([[)(][[(([[))]]]()])[(]]][)[]([))])(][))[][[(()))[][]][)[([()((])[]])]]))](])([])([(])])(]))[[()())[[(((](])]()[](]())))[[(])]]])[])]])(])()[)(]([([)])(]][[)[)(]))(]]))[())(]([]())](](][[)[]][]))[]]]([)[((]((]]))]((][]([][[))((()]])[([([])(][[))(][))))(]))][)[][[[([)(]((])([()((()()))[)[[[((]))[(])[())[)))](]]))()(((](((])()(()])()()[))[])]([])[(()([)]](())](])][(()()((((())[([)][]][[][))[(])])[)][[)][[)((([[])()[))]))))[]()](]](()[[][[[([)([([[[()(([][)][([][[(]()(][[[])]())))(]([)[(([[[([[)])([)([[)((()])]][][[])[[[])()[()()[))()))(([]())[[(())][])]([])[)())[[]]])]([)](][[]([)][)]])[][([([])(]](]()[)[))(()(([]][)]]]]((((([)([)(([)[([][]])(][((]][()(]))(]([[([(([(](])()(])]))(](]]()[)[([]][(()[]])(])(][(]((](([()])[]))][]]]((]]()[(()(((()[((]]](())])]))((]]]][)]))[))()[[[[]))([[](][)(]())[[])])()[[)]))([[[])]]())()(]]()]([[[])(]]])[[[][(]]([())]][)(]]([]())([(((][](]([[[]((([[]()(][((](([[]]][])]]])[][])([()]][[)])])()]()]]([([((([)][))[([[]])((]()[(([)(](][]](][)](([][([)())])]))))(([](]]]])[)[][[()[][]((]]](([[][[[))()(]]][))()))[([(](]](()]](][[)](((]]])))]()()]))([[[])([[))[[](()][((][])[([[[[[)([[()[[])(()(])[[()[[(]([)))()()][)[[[(]]])[(]]((])()[]][][(](([)]]([()((](([]((][(([)][))]][]])]]][[())[))((]((()][(][]((([([][(](][[][([)]((][][][](](]([)][[]([]))]][)]]()[)()(][]]]((](])[][(][([]([][[[]](])([[]][])][(](]()][)()()]])])()[[())])[])))[[([([((((](([(()()()](][][[](([)()())((]()]([([[)))))][[[]))()]())]([()(([[)(()]([))])[]]]])](]))[))))([()][)[)][)[(]))(([])(]))[)[))(])()])[]]([)]([()][]][))(][[)]())([[])()][[(((]([))]([[(]])())[])()))(])](][]((][()([)])]])()]((()[]][[(((([)][()(](](]))(((])[]]][(][[(]]])[([((])([[)))](][])]]]))][]])((])(()))(()[]])())]]][(]][[)((()[([]([](][(])()]([][]])[]((()()]]][)[()[))])]))(][]([]])][(()])]))[())](])[[[[[][[)(])(][](](])][[)]))[[])[()))))(([)[[][(][([[])[(])[([]]]]())(()((]([[))[)([(]]()((](((])[[))[[])])(]]]([[]]])])((][])](]([]])()([)(])))())][[([)((](][(([[]]]())[)[])][([))][(((][))])]]([(][)[))[[](]([)]]))(]])]()][))]])]](])[()(])(([]))[)]()([]]([))[[(([]))([]])(])]((()[][][])[]]([[((([[[[[](]([([](][](((([())[[(]()]])([(][[])()[[[(]])(][)](())[[[())]([)((][)]]][]()))()([))[[)()()][)(([]]][([)[])]]]]]]((([)([)))(](()]()]([]([()(])][]))((]()())][(](])[[)])[[])()[)][([()))])[()(()(][()]((()][)[[)]([](])])())][)(()])()[([([[]](()))][(([())]][[)]][([))[)(([(][)][(([((()()]][]](([)[([](]][))()]][(((()[])[((((((]](]][((([(]]][])(][()]())[])(][[)][((([][(([()(((][](((])(([[][)([([]()[)][()))))[)[())]])]]]]))[][([[[[(]((()[)[(([[(()))[])]])[(]))[)]))[())))[)]([[]([(]][[])((([()()((([[[(([()[])())])[])([([(([[([)[][)[)[)((([[[]([))]))(][[[)]][])(]([)(][([)][][][]))]][(()[[(([(]]((]([)]))(]]))))[)[))(][)))([)()()[)[[(][((])][][))()][][[()[(([([[[))(]()(())())[]()()(]][[[([[))](]))](]][)][((][](][][](]]][())(])])))(([)[))[(](]([[)[(()]]([[[(([(]((]][[])(][)]][()(]]([)]][([]([)))()))()[)(([(])[))[(]((]([][]([[](]]([)([((])[)))][[[][][[([[)()(((]]]([([()][[)[))]))()[[(()[]()]))]][][][[]]]))]))((](]](][)(([[))][]([)(([](]([)[)]][[[)]])]))]](()]))))](](([))[[[[)()])][[([()[)))])())(((([()][])[[[(])[(()[)())(]])[([][[][(]]([)([])[]([([][(((][)](])][(][(([())([)[[][]]]]([]([[)][]()][]]])[()(]]][]]])][))[)(](])[[(])]](][)][](((()(])(])(][[]]]]]][)]])]]][(][][)[[]()[((()](]][[[[)[)])(([[[[]())[][[((]][)[][[([[[)][[[](]]([[))[[)][]][(])[([)]())](]))[][[)][[[]])][))[(][]([](])[([[))])]())(([])][]())](][((([[))])))]]([])))(][[))()[[[][][)]()])[[))(([[[)()[])][)[([)()])()][](()](((]())]()][]]([][]()[[]][))])])]()]())()][[(()]))((](][[][[[(][([[)[(()[())[))(]))][)]([][(])())())[[)(][[[][()()(]))][(())](([([)(()(]((()())[]]][)][())[[)])[]([](](](])()((()](])())])])[[])](()))(())[][((((((((])]]](]([[)[[[[((()(][(]([]][([[(][(])(]()](((]]]()[)(])][](][][()(()][[(()[[[)])(])(]())]])]((][[]([)()[](()([[([()[](]](]([]]))(())(]((([](([[[(][[])][)()])[((][)][[[)))]()[]][())[)[))()))([[])[[][][)(]]((()]]))(])((((][)]((((([]))]][][[()((])([([])[])[)[[()](]][()])[]]))]](][)[(][])])([[[][]])[((([[[)[[)]([)](([()](]]([][()]]]][))[]()([)[)()[[[)(]][[]][()(][[)[[[]][))])))[)((])])(]])](]())[[[]()]])]))][[]]])[)(]][[][)))[]]])[()](]])[(])[))[]([)[)](]((]([[])[(()[(]][))][[))[(((])([[(]([))(])[](]]))([(])][[[)[()][][[()[(()]())](])]])[]]()()[([()()((]((([()]))(])[)[)(]([(](]))[(]([])])[))]])())[][[()[)][][[)])[([)[)(][)(])](]]]))[][[()([[[][([][[[(]]]])[(](]](][[[())])[])(])[][())](][()][)]])([[]]()([(]]())([[)[[](()]](([]](][(([(([[)[([([])[]([]]([])[[)))))(]())[[]((](]]]])([(]()[]))[]]]()[[(](]][)([)][[[[]]][][]]][[()[(][)((]][]([[))(]]])])]())])[)[[()])[[])](((([(]](([(][[)[][]]))([))]([]]())])(]))(([([]])[]]))](](]([)))[)(]][[][)])[[[[([[))))((([)()(][]](][[[(([)([)]([[())))(((]])[[([))[][(])(][)[][)]][([[))())[())((])])](()[()[]]]]])]()]((([])[())()]([[[)[())](([)((]][)]))()]()[[()(])[)](]][(([]([]][)[)[]](]([))[(()[]))[[)(())][]]()(])]((])(])[((]]))])])][][)[([]]][([]]((][[([)[[))[([]]]][)[)([)]][([[]](](]))])]([))[[)[)]]))(((](]((()[])))[)][][([])[((])[[(()(([[(](([(([(])(()(])][](([)((])(][)[]())]())]))](([([(()[]])])(((])]))(])[([[](]]([([[[[])((([]](()])))[(())((()]]][]([[([[)))[)](()[[([[][(]][)](])(([][][[()(]))()()([)[[)])()))([)][]]](])])()))][()]((([(((][))[[][]([])[)(()](])((([)(]))]]])(]((])(([)[()[(][]]]])(())][[[)])[)][[[[([(])(([([[)[[()(((]([])[][()()][([](()]]]][[()()((]])])(][))))))[])(([(][[[]()[)][][]]([]))[[[]][[][)[]][))]((][(((])[](()][([)[(()][]]([])][[)))][[()][[)[][]])))([[([([()()[))(()[[)]([[(())])(](()[]])][[[]([))(])(]]()[[([[[([]([(])())][(([)][[)(][)))][]])([])](]])[)]]]]]][(][[)(()[[]])])]]))([)()]))([[([)(([[)()[(]]()()])(][](([)))((][[(][)(][[)])[[()[])][)]]]([)])])(]()[(][]])([)([][)[](])[()[)((()(])([][]]([]((([[][](]])[]](()])()([[))][)[[)[)[()]](]](]][]))[()))])][())(()(()([))[[[[(]([([([[)[])])]]))()(])([](((]])(()[((][[]]))[(([[]]())(][[]([]][((])]([[[)[()()])([[]](][([]][[]))(())][()(](([])[]]]([[([[]()))](][(((((])[])]]))[[)([][]()()][))[[([([))([[]])(]([[[)(]((([)[)[[))]])]())))(())))])[[)]]([[[[)][)((()()([[[))[[(])))(([)]][]][([(]()](()](][)(]]]](()[[[()[]]][(][[(])][[))([])(())]])])()]])())][[][[]]]()([)(([)((]()]]][([())])[()(([)]][(]]])((([][]][]))(](])(]](]])[])[](((([([)([[[]((][[]))]]]([][[()([]])([][))(([[[[))]]])])[[)(([)[)([]][]([[])))[[))()[](](][)])))][](([([[)[[([)[[)]](])(]()[)[[[([[[(](])])[[(]()])[](])]]))([][(]([)[])]]]()[[[]()([][]]([[][()()]([((([]]((](()([((([][[()[([)][])(]]([)[()]())[((())[]]])[][][))[]](][](][)(](([))]()](])[(]][[())()[)])](])([))]()(](][][()])(([)[()]]([()((][()(((([(([]((([([[][][]()])(((([()[((])])[))]])[)][([]([((]())[)[(()()]]))[)[[[)[(()))((][]])(]([[[])(()](()]]])[](([](([[][)](()()((]))]][]))([]((]])[]])(])(][())]]])()([][)([)))[(([([)[(])]](]]][][)(])())]](]]](][)([[((]][](]][(()[[([[]](]()][)][([[)[))([)([)[])())(()(()()]))]([]))](()])(]])[[]])][[)[(()]((]))))()]()(])(()(](())()]([(])[[]([)[)[[([)]](])(]()()(([[[][()[[])[(]]]]([))](()]]((][()()(())([[()[])]]((](](]()][((]][([][()[[[[(](]([)()[))))[][)())()())]))]])((()[[[](]][])[)[]])[(())()([)(]))[[[[])[]]()[][(()])((][))([[()(]])[]](](([[)(()()]][[()][[)(()((]](]))))[])))(])](]](](][)[[[][][[(([))([([(([[[[[(])(()[])())()](([[()([[]])[[([(]))(]]()[)))(]]([))](])]((])[]])][]]]([([())[()]])[([]))[]()(]][[[[()([[(][()]])()[))([(][])]()[]()]((]()]]([))[][([])[()()])]))[)()()((](][(])[()[[[[(([[[()[[][())]])(]()[)[)[][)[)]())]]())())]])()[]]()(]])]]([([][][[][([()(]])[))])))(]]]]])([])[[()))([)[()()())((([((][][)[[))(]])])(((())[(]())[])[[(][()]][(][))((]][()[([[))][])(][)]]](])[]])[()][()]]))([])]]([[(]([[[)()))[])]])[[[][[[)[[))]]()[[)(])()][[)[]([)](])[][()[()[[]))](][()[[[)())(([]([([])])[]())))()[[[(][])))[)[[)[]]((()[()]]([([]([([[)[()[)([()][[])[([)[(([((][)[())(()[)])(()][([)[]][((]])())([[(][()))[)([)])[]())())[]((]]]])][[[([))[[[])(](]((]]](]))(((]]()(()])(())((())[[[[[([][[)([][]([(])[)])(()](]]([)([)()[][[[[[)(])])))(([)())()])])[(])[(](()]))])])[(()()[[]([)([[[[[]]]([(([(]()[)]((]()])()][)][][]))[])((][[)]]()][[[](((](]))][)]((()])]())[)))]](]))((((([((]([]]([))(()[([]]))(]))]][)[(([[)()[]([)()(([[[))[)[)[)[([[[])]](]])(((()[))]([())[((]])[]))][)](]])(]([()[[[)[[]]))([]]](][)[)]]][([(]())[[](([((])[[))))[])(((][[()([)([(((([[]([())](]]][)[)(([()[[()][[))((])]][])])))](][]][(](])])])()]())(]([[(]([]]))]][[)][[(]]]][)[(([][))(]()[[]))())([[[[]])))][())))[[(][][)(])[])[)][[)])]]]]](]]](]()[][([[[[])[))[[]])[[[)[)[[](]])]])][][])))[([)([)(]]][])[[))[]))])]][(]]()])]]][)]))[((((()]]()])(]]][)])]((]]))[])])[)[)])][]])([[][][][(]](([)[](([[))]])]([))[)(((()][([([])[]]([)]][]]][([]])]([[][[]](]][([[([(][[()])[(([](]())()[()][]])[][([])[[]])][)])][([]][(]([))([]()]()(()][()])[)([][[][])[]())[[]))((()[()])(([))[](][[])[])))[([))[](][](]()([[[])]([[[])])])[([)])))((())[)[[([[)[([()([[[())(([][])(]]][(((()]))][()]][)(([)((([(([[[([))[)])(][[)))()[][[[()(([][)][(()]()([])[[[][)]](])[][))][([)()]))[]]](])[]][[)))][))))[()]]](]))[)][)(])]]])(](])(]]]](](][])[))[()))[[]])]((()[[)))()[(([)))()((((([[)[[][)))[[([[)([])[]((])([[][()])[[(](([]))))))(]()([(()(((])([][[[(][()]]((][[[[()](]]])])[[)](((][((([][](()])))))()[))])])])])[[()[]))](][)[(][((((]([[][[][[]](()[][)]](]]][]([()[[))[)[)((][)]](])]))])()[((])(][)()([][[(([[)(](]([]]](]]]([)[(]))((([([())[[])[([))((]()(())]([][)))][([())([())((())(])]([[)()][(((]([[[[]]](]])([(]][)()[]([)(]))[[]]])](]])]](]))[][(((]()]]])[])][((](([))()]][)]([])]])(]])][[)()[)[[([)(([[))]]])[()())[()][]](()]]]]()))()[]]([((])[][[[(([)[[(]]](()])))[]]([)[([][[](][())[])([([([]])]()[([))(][](][(])))](([[()[)()[[)])()())](([()))[))([[[)[])[)()]])(()(((()][[[)((]]](((])([))]]](]()][(())[)))(([())(((]][[]]([][)]([)])([[]([[]()(([])[)))]][()((]())([([[(([)((()[[))(][[)([[])])(][[[[)))())][]()(])[([)(](]](][(])[]()][(()](([(]]]([[[)()]]([)(][[]]))][(][)((]))([]]][]][([())[)]()[((()(]][][)((][[(()[]]]([)((])([()[([((([[][])([((])[([])([[[[)[](][[)](])([)[))]([][]))(])[[()(]()(]))](][]]]]]([(]([([)(][]])(]((()[]())[](([(])((]]((]])([]](([[()]][)[]()]][)(([))))))(]([)[((]([[([])))])[(]()])[]]][][[]]])(][[])[][][([(])][()(][((][][]](()]](]()[]))]][(()((](][[[)[)[(()))[(][)[]]])[[][(([))([)[(]]](][))(((]]])()[]])])](([)())[([][]][[(([[)[[[]])()[](([(][(][)[[][)[)[(()]])(])](([(]]([[([][)[(]])(])[()][([[]))[][]()[[))))[[])()[))(([]]][)))))]])([][]))([))(])[[))[)[]))([((()]([[][[))[]]][]]())][]([]]])[[])(])))]])[]((()[][[[([[)[[]]][)]()][)[](((][]][[)[]([([(()]))())[])[()()(])[][])][)[]]]()]]])([)))])]])(([()])][))]]][[]))[](()(([)[][)([)((](([)]][[[(()[((][](((()])]]()[(][[(()(()[[[((([())([()[]]]()])))(]])[[][][](]))[()(()((])))(](]]()][(([([[[()([]])]([(]()))[(]]((][))((([))])]([([][(])))))]]])](]]])[(())[[)((]))(]))([[](([]]][)]][[)(]))()][)[[)[])[)([][(([]())[[[)[([)[)]]])(]])[(][]]]]])])()])[[[)])[]([[[[]]])))])][()([))]])[([)([[]))])[)[((])(]]((])((([())[([]])[)][][((([])[])[[[[]](]))()(])()]()([]](()([)[][[[)((][[))[][[)]([[)[])(](]()))]([)[)])([[(](])]))]((([]([[[())](]([)()][][[))])[([)[[)()])[())(]([[[]]))([))[][)[])](])[])]]])[[)[([)[(][()]))](])([(()[)])))(]()]][)[(([][)[([[[[][([](())](]([[[][(((](()]())())[(]][](][)))][(][[((][([[(())))]([)[[]())))][(([)(]]](()()()][[]][][([[)]((][]]([](])((]((])(([][[)][)(]](([]](((([[](((](]](]][[[)[(([][[][))])[[[)))[]))[)[])][])())())[]([][][(]]])]))([]]]]()(])]))[()))[[)[)(]]((]([([(((]]]](]]))[[)]](]]([[)(([([(])(][)](())))])([][())))))))())]][([)[[]([)]([)[)[]([()()()([(]]([])]((])[)()]][)([([(])[[[][)()])[[])]]))][)())])))[[([))]()(]))]()][)[())[([))))([(]]](]][)]]]]))(()[](]]]())[(]((])(())[)]()])(([][()]())]])()(](])([([])[]]([((](())))[[])][)(]][[])[[)[])([)(]][)]]())[]](][()]])(()]]()())))[[))([(([]](()[))]]](]((]]([)[)[[]]]])()[](([(])(((]]]))])[]()[](])([[)][)()(]))]]][][](([))][(((])((((([][)(][]((([)([([)([))[[])])][]((()][[[))((])]]))]]][[[[([()[(](]]])(](()[)](]())(]))(][)][(]([]((]()[])[(([))]([)()[])[])()])(]([([[[))](()()([]][]]([)]))[))](])[])])()([]()](](][((])([(][[)(([][[]]])[][)))()[[(([]([()]])[(])])()]()[[([[[([[][))[)]](([]](([()][)[][]]](])))[((](][)))[][[((])[[))(([()))]]]((][))]][][)](([)][)][]][]]([)[()[]([([(][])([)](][)([)()[][)]((]][]]]]()[(]((]]])][)([(](([[)](([()((((](([[([[[[]))([((]])(]))[)[()([()[)(][])]])[(](()))()))][)))[[[()])(]([()[)]((])())[)]][]([[((((([[()[[][]()][[[()([(]]][)[[]))[]([)])[])(]](]]))))[])]]]((]()[)(((][]]]([))][(()((][([]()]([])[[)])]()[[(]]([])[[)][[(]([](([[))[[]](]([][][[()[)])))()]((]([][([])[(())[]))]]][)(]]()([[)[[]()[][[])[](())(]())(])[([[((()[]([(][)(([[)[)[(])][)()(])([(([[([[))(]][]][([])]((()][(()]()[))[])(](()(([())][)()])(]][][[]][)])())[)((]]((])[]][]))((][())))]]]]())][(]])()()(])]][][[()(([)[[)]))])[)(((()(([(()]([[)]][)(]((][](])]])[)([[)[[[)(][[((([]()((][([)])[]([][]([()[[[[(](]())[[)])])))]))(]][(()([[]))))(]([[[()[](])([[)][)((()()[(()[])))]][[(]((][])[][()]([((]]([])]])]((]]]((][]](]])[)[[()([(())[)()](][]([(])(](]]]]]))))[)))(()[[[(]])]([]))]]([](][()])]()((]]][[([]]()[)])()))]]()[))[([)()]])])())))])][)]]]((][())([)(]))())((])[[])][[))))[][]()(]([[))[])(()[[())][])(([[[][)[(][][[([[[])]((]([)())[)[]])))[]][][)]])(]((]((((([[(]])]])[)]]]]))]]))[()])()][[([))]]))(][]())](()(])[)[]((][[)[[[](([(([)[(([)()[][)][(][]])[)][(]()([)[([[][)[]([[(()][()[]([(])[)]([[[))))))())[[[(]][)[()(((([[)())][((([()([]((((([][](]])[[)([)(]()(((()([[[)((]])][])[])]))][[][]([]()]]]][])]]))()]([[))([]))))[))]())((][](([[))[]]))(]))[[[[[()[]])]](]])])([[[]])](())[(][)(])(([)]))(])(])(([])(])((([]][[]]((]][(([))[))][[]([((][)))[]()([)(])]())](()[()[]]][](()](])[[)[((]))])](])))[)]))][()([]][([])[]))]()))][(((]([)][)(]]][[([[)[([)](])[)([[[]]([)[[([(][)))[[[)((][[]]][([[)(([[(())([[[(][[)](]))](()))[[[[([))(][()))[)](([](][])[[[][()(]))()[[[[[[][[[()]]((][[]))]]())[]())(][()])(])[)[[)())[[[)((])[())[)[[)(]([[)[](]][]())[[])[)))()[[([())][()([])[)[[)]]]))[[])[]]](])((])[])][]((([(][)])[)])()])([()]())))][[()]([][)][[([(](]])])]]]]]][)][)[(][[][[]](]()))[(]])]())[]]()[()(]]]())(]])[)]())(()])([][)[])(([(]([]]([[[()[)][(])(](((])]][[[(]][[][(([][))[([(][)[[])][]))]([][(([[](][([[][)[[[(())([]()[[])))()]([([)]()([(](]()[]))(]])([]))[))[([([()]]))[))[])())[)(]))])(()([)[()(]]([)))[[)]]]))([(]][([)(]([[((][((())][([)[[[][))))[[])[[])][)))][([())][]()[(()[)(()((()](]]][)[[[([)][]](]([)([]]()([)[][[()(]([[(()([][([()])]])]](]([])]])][)[]()[[[]())]([((((((]]](]))))()[)][]([([[())])[])(()[((([]))][)]]](([]][(]([]([())[[[([)[)([[()(][(]([[[[()))(]][[[]()[[]](]([]))])[[))](])(]))]]]([()[))](](]](]))(][[]([()][)(()](]])([)[][)[)()([((()[)[([[)]](])[]([[)[)[([)])][(][[[)[([(][](((([([[)]]]])]))()()[))()]]])[[)[[)))(](][[)()])(([]([[[](()[[[)[[]()])[[())(]]))[)()[][(([][(](]](]]][[(](([)](](])))[(])((]][[[](](((][])]()]]((](()(]][]])()][)(][([)]]])[)))(][)][]()[]))(()(](])]))][([]]])[()]][]])([[(][])(][])][])])]])((]][]](])(([)[([)((])[[)())([)]]]]][[])))])[]]]()()[(]]]]]))[][][]](][[([])[[)(([[]]]([(][[](][])][[])](]]]()[([(]])[(([][]))[[[])([])[[([[()[[(())]](]((][([[)[))[]]([[)[())(][][][(([)(()((]]()([)[)])]()[[[])[](([()())[)(())][(([([]])(]([((])[[[)([)]())[[]])]())]][(])[)]))((]][)((()))[)[(([])])([([[)(())[]])[[[(][([]])])]()))(([[])[]))())))[)(([)()])(])]()])[)))]()[))()]([([])(([[]())([)())(]])][]])[][[[)((([[)([[([)])]))]()(]][[]]]()]([[))[([(](]))][][()[)[[[[(([)][](())]))[][]([[))[)([]]([)[]])([))[[)([]([]][[[[]][[])(([]([[[)[))([()][][[(](([[[]]([][[[()[[)])](][)[[)][]]]((]()]))([)][[[))[[](]])))])][)]))][][(][([][[()]](([][[)[][)))(())]([])]]()([)])()[)]([)(][(])(([)()()[(]]]))[[()])]))][)[[)]))]]][()]())[]]])[]]()]([)][()))]][)))[)]](]]))[[[][([)])[[]()()()][)))[])[)[[)[)((]][(](][)[)(]([([[))))]](([)[[(]))(])(]()([()])([(])))][)((]]])))(())[())][)[])]))([()[))])([(((])](()]]()(]())()[()])[])(]](])][]))()][]))[)[([](])([]]])[)[)((]))][[[[[)])))])()[([])[(](([][[([)]]))[)]()[)))(][[])(](]()([][[[[)]]]][)]]()])[[([[()())]]]([[[)))[])]([[[)()]])[])[))((((][[)]]()([)](([()(]]()]][[)()([([[])([([(]])()]](]][)[((((][[])(([[[[()[)[]]((()[((()](][(]([)[((](]))([([()))(][][())((]([]))][[]()][][)]([)]]])[[())][[()]))(]][([)[([)]([(])((]())(([](](()]](]()(([)]))[(][[][())]]][()]]((][[)[[)[]]])(][[))[()[[)(][(]])]](]](])]())])(]((((][()([[((([[(][)(([)[])))[]([)(([(()[)())[)(]()[[[((])[()]])[[)[([)))]]([([[)[()(([([))))(([[](([(]]]])[()][((]()])()[)[(]]]((()[](][[([][][[[[[][()[[(([))(]](][[]((]()[[((([]([[[](([)))]]][]()())[([))([)((([[([][()]((([[[])))(]([[])))[))(([(][[]([]]][]([)(())]([])))()])][))[]((]]]((()(])[)()))][))))(([[([[(]((][[(][[))])[]](([]]((]]()()[]]]([)(]([][[(]][]]])([((]]][((()[)([])))((]])(]]((()(()])()(](])))[[[][[)[)()][()][(()]]][]]()()[](][)]])[][](()])]])]([[))([[])([[)]])[)[[())))([([]])][(](()][]])]]]()](()[)([)(]())(]]))[[([])())()[)([(()(][)))[([()[])[)](]([[)[[)([)(]][(([[)(](([])))]([)))))])([(()][)()][([[[][[[[]))[]([)](]([)[())[[)[[)()](][()((]([[]])((])][](][()([)[[[)])[)([][[[])])])()()]](][()(((])][[[]](](()((((((()([][)[()(]][)[]()[)(]()[()[([[[)([([[])]](]])[))))]]([)[(]([([)()])(])((](])[(](]])[[)[]][[])]][((]](]][[]][((])[])[](])[(](])[[()()(][([))(]])([]][()[(][)[)([[[)[))[)])))]])())]))[[(([[)(]][[([](((])[))][])][())))[])()[())[]()[]]([]][][(]](())()()[][))(([)))][[(((]((([()](]]]](]([[]][][]()(]())(([[]][[][)]][])))[([)))(()][([]]]([[))[[[)[))[])]([[([(([[]]][]((])][))](]]((][[[(()(([[((]])(())]())))([))]]](([)][)[)[)][([](])])][]]))(]))([(](]([)[[[]((]([]])]]][[[(([(][[([[(()))([[([(][[)[]]][)][(]])([()([)[][])][[[))][[][[(][()(()[)[[((]([[[)[])[]]])(([)(][][)(](](]()))[[[][()])[()))))[([(([])]])[)))[])(])])]](]])[([])])]([[()([])(([]))([()[)[[((]])[[]])[([()]))[][[][](][((])())()][](](]]][[[[]][([])))](([][[(])])](])(])][()((])([](])[[)]()[([]][)[))[)))[[]])]])][[))[)]()]]](([)(()([[([)]]))]]))]([[)[))()[[(](([)[)([)))()])([]((([[)][]()(]])))[](]())[(]]][[(]([[[([][]][)(())([[[)]))([)()]][))()([(]])(]([][[])[])([]]]][)])](][)[(](]))[][)])[[[]([[(])(])]])[]([()]])[]([]))]](](((([]]]][[()][))])[)])[()([()(]])[][]][][])]](]()])]][[]([[)[)[([[(]([]([[]([[)]]])[([))([[(()))[])])[)))[[[)(((])]())[)])][[[]])([]][)[])[((]]][([][[(]][)((()][))[][))(](]]]([[[)[)])((]((((([()([()[[)[([)]((])(([[[[((][][](()]))](]))]))()]])[](()]][[[]([])[((])[()([])[]]])]]]]([]]](])((][)()[[][())]][[)[]]]])][([[(]][)(]]()))][((()])()([(])][([]([[[(([)[(])[[[([()([()[])[)]]]]][[)(]]]]][]])([[[(([[])((((](]]](())](])))][[(]][)][(]))([[())([([()((]()()[][][[]]])]][)([[)[][([])]]((((]]]])[][((([()([[]][]]][[)())])]]([(])((][]()([(]])]](][)])][(]((([](]())[])[[]([([[([][[][([(](]]([]])[(]])]])][((][([)))(((][(])[((())]([]()(()[[])])[))))][]][)[])]([[])])[()]([))[[)[)])[[[()([()]]))[()((()]]]][](]((])()]]([]][(]()])()]]](()[](([[)(([][(]))))))[]([]]((([]][]([(](([(][[])]))))[]][([][[]]]][(]](][(([)[][()([][)]])([((()])[(]()([]((][[](])]]]])[)[(](][)][()()[)))]]]([())[]))][](][)])([]][[([][[]((][][(](())]([)]))[(][([](](()[(([[][])))[](((()((]]()](([([)](()])](([(())([]](([([)[]([[)]][)([[])([]][([[[[()]])[)][([)]][)[)]((((][(]][))(([][[[[())]([)][])[[)()](][][))[((]])))(()]]](([[)([(])[]]((()](]]([(]]))[()))()(][(([](]]][([][([)]])[(])(][)][)[[]][[(]((]]()][)([)](])[(][[(]()]])[[(()))][))))()[(()[))[(]][([(([([[]]][()(([)()[)[)[)])]]))))([[()[([]([))]]()([(([)])[[[)[[]])][)[)][()[(]](([)[[][[])[][([]()[(][[)(([[[([(][][(]][]]][[[)(]([](([([)[]([(]()][[[[])([()(][((()([))[])([(]))]]([]((](][[)))))]])]()]])[[)))])[))])[([[[]][)[])[)])(](]][][[)]))(()][](])](([[)](][))[)][[)))])])]([]]](]])(](]([)])(()([)((([][][)])][[))[])[][(]]]([)])[)][)(]((][]]([[(()])]]()[[]][[((]]((()]]))]([()(([)()[(][[]])](((][])]([][])[][)(]])([[]((])][)])][[()()[)()])]])([([(([)((]()[)]][])([]])(([)()]([())((((]]([[)][[[][([])[(()[[((]])[(]]]])]])[(())))[[](([(])][(()]]])]]][])[)][(()[(()[])][][(]([[()[])()())[)[(([(](]][[)])(([)[[][)()][][()]((])[(()([](](][)(]][)()[)()))[[))[[(([])][][)[])))))]()])[((]]][))[]]()(((]([[(]]([)]](][[]([])[[])(][([])]])[[(()([)(][(]]((](((])))()]))]])(]([((][]()([[[)[][([)))[))[)[][[[()([)[][())[))[]([])))][[)]]][([[]))[))]][])[)[[]))()[))(((][]))(((](]]((([][]][[[)([]][[)[[)(])]()[])([]))]))[[()[()]))()[([[[][([])()(](((()]))[])[([[)(]])([([)())([)[[](]((([(([][[)[))[()][]()[]][)()]]]()([[)())])[(]])[)[]]())[])(()[][(]][)([)))]])[([(][[])][[())]()([[)]])])])[](()[])([(](]]))][)[])[](])[)[[](])[([])()()][))]((())][]]))())[[))([[]((](][[([)[[][[)])(][)[])((]([(]][)(][(](]((])((])()]]])(](])([()[)()()([]]][()]())])[[])]))(][([[]))([)(]]([())(][]](][[(]))))](]()[(]]]([)()([][)]([))(((()[())(])[([[[]((]([[)]()[](([])]]()()][[[][]))[])[)])[)[)][][)[[)())))[)(]])[()]([[))())()(])[))](()])[((](([[([)]]])[]]([()])[)][]])(())][)]))[)](([][((]([)[])[[))]][))[)[[[([])])]((](()]))[)(][(](()]())))))(](]][))][))]][)[][(])]()[())[][[][)][)[))(][))][()([([)][[[[()]))(()))[((])[)[()[]]([]](]()[][][][])]]][()[((((]][[[]([]])(((()(()[)()]][]][)][[([[](]()()([[]][(][))[]([[])]([((])[]([([]]([[)(([(([)(([)[)[[)][[]))((())))[)()(][]]))))([)[]]]]]][)([(]))][[])]]))]((()])([(]()]([])))[([(([]]](])][[[(]]][((()[()[([)]])(([[][())]][])]](](]])[[[[)((([[)([(]()[(]])[(][(((][]((()]()][))[)[[]([][)()]]]]()()([([])[)[[[)[[))(([[](()][(([(][][[((][[[)())(])](())()[](([])]]]())[][[]([]][([)[])]])([()[(]()[]()()[](((]])[[[[([)]]][)[])[])[([]][])((()])[[])[]](]([](()[[)([[(()[))[((][[()[][])[)][[[[)([()(]]][[)])])(([(]([)()[)[][][([[((]]])(])))]((][))])[)[])())([]]()[]][(](]))]())(]())()[][((][()][))[[]]])[)]]]()])]])))(]]]((]())[][([](])]]]][[[[])(])]])(()))]))([]([[[[)]([((]))(]))][(])))][][])])]]]]((](]))(][[))[)(][][[)]][[(]((())[(][[())])[[]))[))]]][[]]]](]))[]()(([()])[])))()))(())]([((([()][])]))()[[(]()](][])))([[(()]][]])[]][()[(][[()[))])([])]([))]][]()(][))]([()([((])]()])[][]]((])[(([[()](]]])]]]([[]][)[[(][[()(][[]][))[)[][)[)()])[[][[)[)[]]](([)(())[]]][[([[[[[[(((]][)[((]])](())[(][[)))[]))[))(][)())[])()]()]]]][[)))]](([)]([])[()]()([)[)([])][[]))]](][])(()(]((]])[]((][(][]([([[)((][((())]()(([])]]]([[[)]])]()]]()]([(]]]((]])(()([(][[)])(([[][(](]([[]][(][])()()[(()[]][)([[)](((((]()]()(][)]]))]))[])][][([(()[)()[[([))[]())[[[()][)][[[[)[([([()())]([]()](((([))(][)[([()()(([((](])[()]]]][[(][()[](]](()[][((][))[()))][((]())](()))])]([(()[]))[(]([)[(][]][[](]][][[))((]]]((([(]))]])])[](][)([[(])]()])]([)([])(([]()[([)[))]][[)[[([[][[)((()[]]])]][]]](])())[([([[)]]]])[)()([([)][([()[]][[[[)[)](([]()]))(())(()([([[[]()((])([[())[((](([)))))])][])([)]]](((])[][(()([[][)](((]]](([(]][((([])(((][[]([[()]](([(]())]))(][][(]()[[([])(([]))[])()()]]]([()((](((](]]]))[)[(][)(]]])((])](([(]])[](]))(]])))]](][((][()()]])))()[)))]())]))()][))([)(]]][(]]]()())(]]](([)]())][[])[[)](])[)[[([[[[)(][]]((]]](()([()))[)][)()[(([][])())()[]]]](((]()])]][]))[)[[)[((][())]])((()()((])](])))[()(][)[[)()[])]((]])[)()[[([([][)[[()[[)[[[[)][)([[[][[([(]][[()[)[)))])[[[([(][))()[()([]()]([(]([)[]][]([][[][((]])))][)[)(](]]]])](][[)])[][)((])[()[()](]](]))]))])[((((([[[)([(]][()[]()][])[()][]()((]][(]][[()())([((][(()]([([]]][](()([[[])(]((]()])]((()([()[))[]([[[][])[[([)[)[]([)[]]]]])[)[))))])(([([]))][)(]((][)[]([)((]([[)[[)((]]))[[)])(]())(]][][()]())([)]]]]))][][[[]())]][]()((()]()))([]](]][[])))]]]]((][)))]]))[[[(][](([[([]))]]([)[()((((((((([()[)]))]([[[]]])[)()))][)))(([]()][])[(][[[]])](][(()(])((()[[[[[]))]]))[)]()[(][())[)()[][)[)([[))]])))]((][[)[([][[]]])])[()][](](][([(((][)[[[][([])()([((]()()[[((])[()])]]([[)[]))[[)(]()[(](([))[])[[(()[[]))][[(([)[)(]][()[][[()]]([])())])([[)][])([]))((((][[([)[]())[]()())(]]][[()]())]][[([([])]))[[)]([[()]][]([])[([)][()(](([)(]()][(]]][([]()[](()))(])[)]((][)]](])]()(())([[]])[]])]()(]][]](()])([(]](]))(())([(][]))]))]([(()(([([((((][[)]()([([]))(]))[[((]][)[)))]][[][[[)((]((([)[][)([][([)[)[))])()][][[[([](()(][[)[([][[][](()))]))[([[(()](]][)(](]]]])()[[[[(()][[]([[)]()(([)]]][])][()[)(([[[]])](()[[][])[[([[[(]]][)))(()[[[())])))[))[(]]])]]))[()(((][[(()([(]]][)[)][(()]][])()[)()][)()[)[[]])])))))[[(()[]])[)(]()](])(]])(([([(]))(]()[[([)]([])([[)([(]])))()])[)[]])))[(][(([))[([)[(((])[)][)])]))))][)[[([]))(][)]](][)[)]()])(]]][([][])([)]))][()]](()]]))(()])(())][]]))))]])][[[]]()]([)(][)))([([[[[][[)()((()[)](([)]([)]()[))(([)])[((([)]](][[(])((])[])]]))((](](]]]])]])[[[]][](([])][([]](])][[[]([[()[([))](]))([((()()]]]]])]()[))[[)([)][())))][(]()])])]][]((]))))[])()(((](]][)][)[][][][(]]]())]]])][]]((()]((([[[)[])(])([]))))](][]([(()(]]())([[][]([][])[](](]][][)]()]()][[[)]([()[][][)](])]]([[)()][(][)[[[)])(())([]))))])][[()[()[[)([)(][[][(()]]()[)][][][[][)])()][)[)[()([[][)((([][[([((]][)([])))[]((])((()[(])(()[)][()(((][)[(]]))])((]()[)[[]][]][([((][[)(([)([]))))]])((]([[[][])((([(][](()((]]([(())](]]([]()]()[(]()](()])))[))[[([[(([]([]])[]))][)[)[()](](]((([[())()[[]])][)[([[[))])))[[[(])[)[]][()[(()))))[[(][])[))]][))[[([][)[(](](]([]()][]][((]]])(][[()[[)((((]][)[[([)][()][]][([([][(()([]][][()]]]](][[][]]][(([([[)][])([]])([)])(]][[[))]])))))([)][(][[[[][]())(]])([[)[[[[()]]](]])[)](]([([)()))[[][[(([)[[[[[[(()[][(])[)(]](([())()[(]](]]][]())(()[(()))(](]]])([()(][]]]()(()][()[])))()](]]])[[(]]))])[([]((](][)[[)(])[)((])((()()][[]))))[](()()])]])][)([[()([((])([))[]()(][[[)]][))]([)]]([)[([)[(]([((])(([([))])[[([[)[]()[[])[[)()([][[(][](())(](]][])]]]](]([(()[([](]))))(()[](([)[](()[]([)))[](][]))]()[]))[])())([][[([))[[))][)))[()([])([]]]))[)([]][)([)[)(([)])([[]]()](](((]]))][)][[))[[((])((])[)(])(()][(()])][)))][[()[([([[](])()[([[]))((])])[])][][[[[)(])))[)(()]](()[]()[]([(]))))([[[])[()[([(([[[(][[[[]][]][)([[(])[))()])[))((][[[()()]((]))(][][[((()()]([(())[[[)[]])][)(]]](][(])[]([])])])])[])[)))))((()](]][()]])])])])(]]))())(]]]])(([()[)]][([)])](()])))[]([)[[)]((]]))[])]][[)[[[)[[][][(((]((]][)[[]))()]](()([]])[])][]))]()))))([[(][][)])[[)[)(]))([)[[]))[([[([[))(([)((]))])]]([]][[))]([[()))([]])[(]](]][)[]]][)[]])[[]))]()]))())(]][[][[(][(([()[((])[)(]][](()]])(]][]([)[([]([)((](]))[))([])([))[()()[]][()]((()[(])[(]]]][[[)][]]])][[([[[[]]([[))]][[))[)[)((]](]()[(]]][[)]([]((([()][(](])])((][][(]][])[[[()[[[[(((([]])])[[[)(((])]([]))[)[(])[()]))[[[[([(([([((]([[])(()[[)])))()[()]](]][([]][(])]][[[))([[[)]))[]([)][)(())[[]])[(]()([)[])(](][(][])((]([(((()())[]([](([(]([)(][[](()[)()((])]()])])])]]][()(]()()([)))(]]))])][((]][(]])](([))[(]])]([[)[[])](([])[(([[)][[](])(()]))[)([([[]]]][[](((()[[)())((]]((])[[][([](][])]]][[[][()])([)[(])][](]](])[())]()))))][]())[])))[]][]((](][[[(]([([)[(][][)[(()]]](]((([[([))))[)]])))(])[(]())([([(([]()[[(][([]])]))([]]()[(()[(][]])])([[[)[]])([[(])][)[[][())]][)()]]((([]]()()())](]](())]]]]](])([(()(([)]][[])([([))[[)[])]])][(]()(]]][((([(])])](][)][[]](]([([(([])[[]()()(()([][()([]([[]]]]]]](]()])])[][(]])[))([([)](])[(])[([)][))))[))])(]())]((()]])]([([)]()[]][]][(])])(([))])]]))())[])())])(]]([[[([)]]))]]))[][][[[])[(()))[([](]]])([(([(()(][])[))(](][]()[)([)(]()(]((([(]((()][)[)(([])[[)[[)()))[[[)[)(()()()](][)])]()((])([[)([])]()([(])(()])()]]))))()([[[)]]))[)(((]][)])[()[])])())[[()(](]][[((((()][)][())[[)])[)))([()([)])[()]])[]))]([]])[]][)[([][([())][([[)[)([]]][)))])[)[][[(])]][])))(]))[)]((][)(][[(]]](]][(((][((([[])[[[]][(()]]([[[]()()][(]))[(](]]](]())()[][[()]](]][[])([)]])((([)[))[[]([[([()]]()(]([[[)[()][[))[])[]()]])]]]][([((]]([(]][[()])))])(]([[]((][(([])])[[)]](([(]][))()[[[])(([]]](][([[([)][[)()][([)](((]]())(]))[[([])][(]([)[)][(]]))]()])])(](][[)[)[)))][(([[(]]))]])])]]])]((]][(()(][[([][(([))(())[]))](][[[((((]()([()[[][)()[][)(([[(]])([]()[([[[)[])][)](])))(]][]]])]([[)[[())[[][)(]])[)))]]([)])[())](]])])(()()([(]()]](][[[[]([()[]((()())((][()]][[(])()[)[)))]])[))[[(][][])])[][)[]()[([[)[[[][[(]]])[)][(][)([]([)](])(])(()([))[[[])[[](()((]([])][]][)[()](]])[[()[)[][[)((]()[][())[)[[]))]][][))[]]([[())[([)[(([()[]()]])([[](((][[((]]]][([(([(][[[](]((])(][])()([)[([[]]))[[(](([][[()][][[[)]()[])()[[]()[])(([()][[()([)[)(](])]]]())([[(]]]()((]]])))[[](](])()(][](](]]([]][]](([(]](]())([)]])(][][[[)([([[]([)]]](]])]])([]]()([)[]()())(][](]])[)()[))]][))[]]]]])[()([)()]((])[][[]([(](])([))([([()[[)())][](([][(])((][[[(])][()()()(()]][()]][[][[[[]][][](][()()]])(()())][][]]]))([])([([[)[(][)([((()(()]()[)())([()([())[(]())]((][]((][[((([([)[(((()))(([)([[(]]((()[[]()(]((]]()))(([[)([(([))[])([)[[[][][[)(()][))[]][][(][)[](](])(]][()([))[)[]][[][([[])))[[][([[][[((])]()[()[[))[[][]][)[[)][))])[][[()][])])]][([)()]](][[[[))(([][(())[]((()](()([(((][(]][[(][(())[[[][][[([[)(]))]()][][])))]))]][[]]())[])]]))([]([]]]()(])][)](][([](](()[([)])))))()][[)[]]()](()()]([[]]][]][))]))()](]](((]]])((]][()(][)]](])]([])[[]))))(])(]([]]())][)([)[[]](])())[)()[](][([))])][]]()())[][))(([[))])])](][())(()[[(()[][][)[((]]]]](])[](()[[]])])]))(([()][[]])])(]](((][()]]])[)][[[[(()(()[)]]([(]]())))[](((](([]))]])]([()]])[()[(([[)[(([)[([[][)])[[[[)])][)]]][])[)]]]](]][)))[[()][]]][[([(]))(]][]]()]))))]([(((])][()(()(]([[]]([[[(])])]]]])())((])(((](()([[([(][[))(])[)[[[[[()][(][(])][)[))])[))]][)][)[)[())(][]()][([)][(]](])[)](())))[(()]])[]])))]()])))[[[]()([[[([(([)[([]])([])(()[)](]))(][(]]([)][((](]][)([[(()(([])](][[([)(((((])([())()]][)[()]]([[[)[]([)[][])]()([())])[])([][]([[(]]]([)]])))]())))(]]()])()](([(])((()[)(]([))]]]))[((()[)((()([]([]()[[[()[][)]][(([(([[[()[)]([]]])[](][()()](()([[))[)([()))([]((]))[[][]][[))[])()[[(]]]))))](]]])[]((()[((][[(]])))[[))(([)[((][([[[((([[]]]]](((]])]][)]])([][)[[))][][)[])()]())[]])][])])]]))[[]([))[]([))((())(])[[([]])])[][]((]](]))[)]())[(][))(((])]]]][)])]]])))])]]]][]()[())[()])][[]]()([])(()])[))]([)[(])((]][)([[]((()])])[)])((])])))()()(([))()([)]))(((]()[)(](]])[)]([((][]]()[(([[[[[[])(]((((((][[([((([(()(([[[])[)](([]][[)[[()[[)(([([](](][(])(())(])()[[[[)][[][[]]([()(]([)[(]]]])[][[))])[[])[)[]]](][[)[[[[[)([[(](][(])[)[)[][(()())())])(])][([[]]][[)((][()[][][)[(())]()(]]])()))([](][((])([)([)(((])))([][[][[)[)]((][[](])[)[[)[(([]]]]]((()[(]]()]([[)(((()()[)(()))])][)))[)([)[[)]])([)())[]]([][))[[)))[][[[)]]([((])[[]))][]]])[]])([[]))][)])]]))([[]))))))[)[[))(]))]][)()])][))([]]][[[[)[((]]])][([])(]([)]]](([))[)]]]([][(]]](]()())[])]]]]](]]))))]][[[]]]([])[]))))(]((((][((]])[)]([[([](]((]](][())[((])()[(][))]()()[((()]([]([])]](([(]))())[)[][[)(]][[([]])][[][(]]][])))[[(((())))])))()())[()]]])[))[[()((()([[[]]([[([]((]]](])])))])[])[(]()]))[(()([))((]))(]][(()[)((()])][([)]]])([)[))][([))))][]](]](([)](][[[[)()(]))(][]([)[][((]]]])](()][([]()(])]])(][)][([]))([])[([)]()[]))())()[[]([]()[]])()]()])])])))[][(]))))[)))]([]([)]]]([([]()[[])][()()([[)]()]][)(())[[])]([((()())](][]([[))(])[(([()[])[])[[))(](](())(]((([)[))])))(([()([[))][)](][()()(])[[()](([()))[(])[[)]][))][))])][[[(]]]([]))][)(])][)[)[[])[[)([((())(((()(]((((]](()(]])[)([()()([(](]]])[([))[)]))())[)([)])[)](])[])[()(]()])((()[]()[[])][]]()([[()(()(((])([(][[(]]])[)(]]][[]((])((])][)[)[(](()][][]))]()[[))[(([])(([)([[]][][)[]([]]()()])[][]([)()]))[[))[([()))]([[))]]]]))[[)()([)][]][)])(]([])])([](((]((()]]]])()[)([[[][][)]](([][])[[[[(()[]((([)(([))]()[)[)][)())[([]()([)[][))))([[](](][((])(([))]]]]()[)[)()(()([[([[][(((((]]]()()[([[)](()([))[[])(][[[[(])[)[]])][][((]()([([[()[)[()[))])(((([(][[])[]][)]()[)[))(([)][]])]]([]([)][)[][(((([(](])[[])[()[[][[)(()])][([][)((((()([])[(][([]()]))[]]]](((()[[[]][]][]][()[]]][][(][(][(()[)([)[])([](])[(]])[)[(()(((([[[)([[(]])])[]([)]](][[()))]])([[((][])[())[)(()()]](][)]]()]((()])][))))([()([]])[[)((((]]([)[((([[[[)[)(()[()])])[([[)[(]))))[))))))([[[)]])([][)]()][)))())]]([[[]()[)[])[(](([(](][]((()[))[([]][[)((([)((]([((([))][()[(()[())))))]))[(][])]))))[)[)[][[](])][)(]]][]])[[[)]][((]])((]])))][)]])))][(][)[][]()][[)[((]([)]()([[([(()([((()([]]]]]((([[[]())][(][[][(](])[()(([)([)[])][[([)(]])]))[))][[)])[[([[(]))]))[[)(((]()[]([)[)])])]()[)[[[)[)[[[)][(]([])[()[]])(]([()(]))[][(])((((])([()]())(]([](])([))][(]]()[[][]][]]([)()]))([[]])))())(][[)[([][[)([([[([([]))][]()[()(][](]][][([][)](()](]()[[([(([(((((]][)]](((]]])()[[[((())))](]]]](]([[[())])()))[(])(())())[[)](()[)]))))[]][)]))([]([([)[][)()]]([[([()([(()][(]]([][)](([))[]()])()]((][)))(](()]()])([(][[()](()[[[([]([]])())[]([([]()[)])][)[()(()](()[]))[[[[(][)[[(((([)]([]([](]]())[])][)]][([])[(([])[][(])]](]]]]([]](]]][())()(]]()[[)[[)(([[[[][(][[[)]]])][[]]))[[))[(]]][()(][)[[](([][)()]([)[](][[)([))[)])(([(])[()(]))[(]()()[[))][[(](](]([[)[])(]))]]([)[(](()[([[)(()[)]()][[[][)[)))[([(()[)()(([)])][]())([[)[])[]]((((][](](([][]][)[(][][(([](][))[)((()])]))()(][([][[]])(()[)[((((][)[)[]]()))[[]))]()))](((]][))(](()(]()[()]]]((][)([][]])])][((]]()))((]([[()([[[](((()[))])(()]))([]]))](([)(]()))]])()()])](][](](]][[(]](][[[)()])(]])[(())[]][[[[)]](][[))])(])[()[(])(]))[][[](([[[)[)[[][][[[)[())((])[[))()])()])])]]](())([[())][)[([])](]]((])())[](](][]]]))](()[[]([[([)((()[]))((]([[]][))][[[]]))][)[[[][)[]([][]())[(([[)[][[([)[[(][))((])()[[]((]])[[][[[(([)(()))]))]])])((])])][))])[()(])([](([)([]])([]()))[])[])](([(((]]](]))[([(])))]())[)]][[[)][(]([([[)](([[]([(]))[]()[]())[[[(])]([(()([[]]][)(()([])]](((())[[[])][((](()(((]([((]]]][))[[])[])]))]([](()[][][)[[)((]()([]]][)[]()[(([]]]]])[])()][()][([((())([(]](()())())[[)]][]())(]((][][()](](])[([])))][))))[]([)][([[][])](][)())][[[()(()]([[[((]]](])]()][()()()([([]([])[[)[)])((])[[[))[(][]][(][)((]](()[](])))((]()]]))[]([))[])))[([[(]]))()([)()])][][)((]])]][))][]](]]()[[()]))))])[[[))(())[][)[]([)[[()][))([][)]][[](][)([(]([)](][]([[][[)])]([[)](](])[)]](])[)[([)(])]]](]](()])]])]([()()][][()()]()])[[([[(()((])(()([([([][([))[[)))])[]([(([[())][)[)(]](((]((][(([][[([])(]]]((([]])))][)))(([)()(((([]())[()[()(]([[([)[[(()])(])][])]([[(([][)))]()(][][((())])()()])(()]]([]([)]()[([[[))][)))[][(()(][(][[(]))[([](]][)]])()]]))[[[]([[](]](][((((][[[)]](](]))([[]][)()]))([]()])[[(]](]))[])()(()[]](][)[[)]](([((([((([[[]](([)[)]]][]]([(([[)])[]])[[[[))]((([](]([))(]][]())[)()]([[[]][((([[[](]([])]])((()[))[(([)[[)][])]))]]([(]])((((]()[()[)([(](((][([[[([(](]])][]))[[))[]][[)[()[][(([)()))[)]])[]]](]))])(([([)[)(]()[))[)()))[))]]]([[)))[)([(])]]])])](]))(((((()[])((]))][]([)][[[[(([))[(((()])()])[])(]))(](]))])[[)())()(]([][())[)]())]]))((]())[])[([]])]))]])([](](](()[](][[][]]][))])[)((]]([))(]))(([()))][][[)(]))][(][]((])][]][(]([)][)([][[([[(())[)(][(])][]][)(([[]]()]]()][(())))(][][[)())))))]()]]]([[([([)[((()(((](](([(][](]([[[[](]([[)])))))([]([]][]]][)]))]][[)[]][[))]()(][[](()]])(][([[[[][[[()[]))][]))]])[[)))])[()([)[[([[[))(][[][([])()(][)))]][]]()][][[[))[(])]([][)[[])])([])[[()](]][]))([)))[[)][[]](][()([[]])]])]()(])]))][)[)]]][[(]][(((((([)])][]][))(([()[]())[(]((][[[]][()()()(])((]))))(]][](([[[(](])([[([]]([[))[[[[[((][][[(])()(][(]((][(]][)][[(([(((([[[([]))((([]](][[]))[])((]]])](]][(]]]]((][)[[([])))[)[[[]](]()])[[(((]))]][][[([]()][)()))(([[[)][))(][]()[)))[))[[[](])([)[[[)[[)[))))]]][([[([[(](((]])])[)][(()][])[](()[])(]()])][)[)](([()[)(())][]])]((]((]((]()))))([[)][)()]]][[])([][]]][([[[)][(]]](())()((())[(][]])(]][]](]])][(]]])(]((][])()(((][]((]])(][]]()]((((([[)]]]()(])[)))()][])])((()(((]((][]([[(]][])[))[)[)))])())()][([[])()()[[][)[))]))]([]](]([)](((]]([[[])]()])[])][)[])[()[](][[][]]([[)())[(([(([][]())))]))][())()]([]([)[)([)]]](](][([(]()[]]](])(]()(]][[][[])[[][)]([(()))])[[[][((](]([)(]()[)[](][]])[))))(]))])][(]][)[[]()((]])][(])[]))([](([](]([(())])[))((((]((([])])[[[)))(([)[]][)[]([((([])]]][(](])[(][))[([]))((][([)())))]]]))]()[(([[][[((]][]]([))[)]]])][]][(]((([[(]))](]([(([][)[[([[[)]()(]))([[]][((]][((()]]]]())]])(]))[)][]])]])]]])()[())(](]](()[)](]])(([[])([][)[[][))[][][]]])])][)]))()]])(](([]])]))][[]]]]](][][(()][()(](][))[])[)))](]([[(]((([])()[())))[))(](]](())(]]])[)(](](()(([[))))))[(]])[]][][[([()]()(()[])[[([])])[][())]))))][[()[][)[[[[[)(((()(]]](])))[)])((]()(])(]]())))]])](])()[()[[)()((]))))]])[))]]]([])]([]][())](((]][[(((()](]([()()[(()([])[)](][[[)(()])[[](]][)[]()[]]()([([(][)([[][)]])))(([][]()()[))(]]]((([([[[](((]))]][)([]))(])[(])))[)([)))[([]]]])](())[(](])])([())])])])][[[(][[]]]))[)))())[][()[]][[[))[(]])))[)[([[][][))]((][)([]]]((])[(]][[][)(])((]][]][)))()[)(((][]((][((((())][[)])][(]]]]()][)][([]](]([)(]()][[)[([]))[(())([][](([]]([]([()(()[]]][](()][))(([])(((((()[())[))](((((]()((]]([[](](]][))])((](((][()[))[])]())[[)[)([()[([[]()))[])[([[[]](((]((]]]()]][))])((()]))()]))[)]]))))([)](]]]][)[()[([[[()[[]()[]()[)](]]])[)[)())(()[)[)][[](((][[)([)[[)([(([)])[[)[][())))(])[))][([()())((]])[)))[(][(((])])())](]))]]])[[]]](]][[[][([[]]]]([)](])[([(]]([[]([)[]())([)))()[([[[[])())])[()([]])[][(][)[]]])[][[]]([[)([)][[)[])[(((][(()])]))()])()[[]()]()[]]])))([][))](]][)))[)(](([)()[]]][(](())]([][[[(])(([))()][([(](((]]][()]](()[]([))))])[])(][[[))][][[[)(]())[[[[[[]()))])]]()]))([()[)[[()[][[[])]]]()([([)])[][((]]([)]][[)])]([([)((][][[()](][)())][[])](([)([)]((((([)]))]))([]]](]][]((([[][](]((()](][([)]](([][[([][((])[))))[](]]([()()](([)(][)[]])][]([]([]](([((((()(]([))])]])))](][)[])[][)(]]]))(]))[](([]])])]((](])[[[())[)))[[[[(]])])[[((((((([[)[])([[[([([]((](][[])(](]]][[(([))][))[([(]]())[(]]]][][(]))[](())()([]]][)))[[[[)[][)])[[)[[])((]]][])[)]]))([(((([[()[])])[))(][[(]))(((()[())]([)[[)]))]([[([([]][](](]])]))))[()(])]]))((][())([]][()][)[())](()](])(](](][)[([(]))([(]]]][([(()([]([()(]()))))]][])[)[]()](](([(()([)(]](()[][)())(]([)[][]])][[([]()()(]]))]](()((][)]()](](][)([]()][]))[)]()][]))])(][][([()[(][))[]([((())])]))][(][][)[(]((]]]](([[]))))(]()[([([]]([][)(]()[])(](((([(](]][(]((([][((((((][[(]][)(])()]]]](]))(()[]]])()]][[]]]([([([([((][(])(][[((]([))([(])])(((][())[]))(](])[[]))](([[[)(()(]]])(][[)([(](]((()))()(]]([)])[))[((]][[])([())()[[)[((](()[))]))[))[[[()]([)[[][([)][))]][[[][([[)]]][)[)]))(()[()[)()[)][())[]([(][)(])[([([(]][[(([]]))[(])[([(()))])])])])))[]])]([)]((]]()([]((((([[[([((][)[)(](([](([)(]))]](([))([][]([[][]]))((]))([(][)(](]]]()]])[][(()])[]][](]([[(([(([[]]][))][]))[][)[[[[]]])]()()[[[[(][()))(][)[)](]])])](([[[]((][[][((())](][(][)]][())](()]))])([)])[)([[()[][))((]])][](])]]][]))))]([[(]()[(][())])]])([()](]](([([[[((]](]())))[]]]]])[[]([(])(]]]])([))))[)]])[[])))())]))]))[))]))[]))[((([([)]])(][])[]([[]][[[(]()])][([)]](](([)([)))][[)(]()[[]()[()([][[())][[([([([]](](([](()([(][(][[[([])][[]])))[[)[[]]]]](])()()])]]][(]))][[)(]()[(][[[[])(][]())(]))[][][[][(]]]()[()]([([)(())](])())))[][[)[]][][([][)])))[[[())(((]((])]][[(][)[])[)][](][])[))[])((])([[)]))[][]))([[)(][[))[]]()](][()(()]((][][]]([)])(](([[]]])]](][])(((]()()][((((]](]](()))(][)([[[))]])])))]])[[([())[([([((]([)(]))[()])]]]])]])[[()[)[(()[)[)[[][(]([)((]](])][))())())])([[[()()]]]]][])([()[((])(][[[))](([)[)([)(](][)[]][((()([[][])))])()[())()([[()()][()]])[)(([(])([][)[)[)())(][[)[[((([)))]](])[][)[))(())[]]])[]][)((([([]))[([[]))()[)]])()[[((()[]([()([((]))[)[[))[)[)[)[((([])[]))([[]][]((([)]][]][)((()())[([](]]([(])])](])])))][)][([)(][()([))[[](((]]([))[][)))][([)(][)])])]))((([[[]())])[]([(](())]](](])])]([)[([[()[)[[)][((([][))[])())((())))[[[][[]]]])()[)))[[]()[([[]])([[[()(]((]]())[))()](](]([[[]()((])(])([([(][(][([](])[)[][)][[)[[[[))[)(]((][[[[][]])]])(]()][(][]][)))[([)()][[])(()]][][(())([][]][])][(]([)[[[]())[)))](([))))[(((([])[]][[()[][[[((](](]()])[())[(]])][[())][(()]]()[]()[[][(]][])[(]))]]((()[[))))]([[[[(](]([]])()[]]][)][)[()([)[[()][][[)))[])][)[([[)))[)]])]][[)[)(()(])(([][)[)[][)((]([][[(([]]))])()](]))]][[]([](([]])[)]][[([[[)(]([[)]()))(])][](][)[[([]([()(]))])]](]])[]]([])[(]([([(])]])()[)[)([]][](]()(](])([)]][(](][[]]]([)]])]]([[)([((()(()([]())[())[[(])][((][)()[((())[[(][([]]()][])(]][()][()][[[])[](][))(]((])([)))(])()]([][(][[[)[[([)(][[)([([))]([()][[]])))(([)[)([(()[[[]](()[[())()))(]][][)][[][]([[)[][[]()[]]])[]]([])([((](]([))([[[)((())(][]][[[)([[][])[][)(([)][([(])(][]((][](]][[))([))()]])[[())([)[(][][(][([((][]][[])][])[](])(]))((())()](])[]))[)[])[)]([[[[()](([)(([(()()]](][([(](())][]((]](]])[]])]([()))(()[][)))[][()[)]]](]]())[]))(])[]()))((]][)][)[)]((])[]()([([)[)[]()[))(][[]][)[((]()[])()(()(]([))[((])([[[]](())(]]((()]]([]()[)][()](])(]])]()]][]]))]]))()))))()[)([((())()[]([]]]][([)[([)([[)((([)]]][)))])])]])]](])][((([(((]]()][]])[())((([[([[[)])([]()(((()(]]))[)))](]])[)][[]](())][]]()])([]]([]]]()[([(([([[)[](](](](]([())[])[)[(])()()[[[)))[]((()[]]((([]())(((]]([())[](()]])[[()[(][[)())])[([[[)([])))[(][)((])][[])]([][]))(](]((]])[)]]((((([[))([((())))]]][[([[()[))(][)([[(([)[[[([[]][[)([][(][[)[()[[)[[[](]]]()][([]])[))])])(((][]])]]][[[[]()()]])[]]][[]()(][[]()][]()(((])[](][)]])]([)))[)[][])([[)))[))[])[[](])))[([))(]([[([([(([()([[)])))[[[]](([([)[)][)[])()[]]([)([)()([]([[)(((()[())[(])[][[[([()[)()])([()][]([[)(](]]][)[[)[][()(]](]](([[[[(](]])((])]]]][[())()]))][((][)]())[)[][(])(]))[)]]])])[[][))(()([(((((()[[]([[]()[[))[())]))([]](()))()])())()[)[][[)[]))[[[))][)](](]]][(]]][))][]([)])]]()))]]((][[[[(][])((([])]])]]([([]](((()(((](]()])(([][)[[([([[)](]]][(][]]](([(]))](])()[[][[[]((])]][]][]))(]]()]()((]](][])(()(([[()[(([(]()(]]][[([])()[[())[)[[[(](])))](]]](()(][([(]([[]([][))]](]((](]])])][]]][][[[([[[][(([]([[][))())))))()](([(((]])][)])[())))][[[(][))(]])))(]][(([[))[(](([))([[[([([))))[[))))(]()[[)[))[][]()[[[)()))([))(][(][][())([]()))[[)([)[))())](()][)[)()))(((])[[[[((]))[(][([]])[])[)([[[[)[[)]((())[[]([)(([])])]][[[()((]][()][[][]))](][()[[][[[[)[(()((])])[])((()))[]]](([[(]([][)[)[(][()(]())[[[)(]())][))(()]([]]))))((]][((])()])[(]](()[[[[(((([([[()][))([[]]()])[(([][]))]])])[([(()][)(][([]]])((([)(()())([([[]()([()())[)[(()[((]]()]][[)(([(((])][[]][[[([)(([]][))(][]][([([)((](]]()()]([)(())[[[[)([]]](])[]]()][(()(()))])(][][[))])[]](]]]])]()]]][(][))))]]([)])]])[]()((][[][)]][(([)[])][[))])[]([[)[)(([][(([])]()])]](([[(][())[)[][)([[])])]([[()][)[([]([)[]))[]]]][)))))(()()(]()[][)]]][[(()([)[[)[[(](])[[]))(]]))((])()[[([([)])]()[(][))(([])][[](][()(]](()[()([]][]][])))[()(([)[[([][((])))](]))([[[[)]))[])[[()()[()))][[((]([(([])[[])(()(()[[(][]][[[([(((()[[])[([]()]]())])(((]]])]]][]))[([[])]])[()]][(]])])(((]][]])()[])]][[[()([])[)((]((])[([)[)([(()]([((]]])[(][[([[]()[])])[]))((()])[[)))])))[[)[(])))((()(([)))]][)[])(([()[][]))][[][(((])][[[([)]])]])[([[]](]]](][)))((])])])[][])[([))][[)((()[(]))])((]]))()())][[[)]])])]](][([(()[[[)[((])(([))])])([)()[[]((]([(()[[[])([)][]]))([)([(][([][(][(][]()([[]][]()[][)(()]()])[()]])))[[[]]()([[)][]]][][][[[](])[[)[]]([)])))[)]][[])])[)[(][[)[(][())))(])())](((])[])()]))((]()[]([))(())(()]](([[([[(](([[)](][](([]])[)](]][)[])[([]))])](([()[)](([([[[[()(](((((]][]][([](])]([[[(()[))]]([[][(]())(((](])[((](]]]]([[[[]))))]]][](()[]]))(])][]]]]))([([[(]()]()]()[)))()[][][()]])])[([)[)]][]][][(])))))](((])]))()]((]([()(][])()(][[[()[[[()(])[()])[]][[([))[((]][([)()(][[[][[(]][[)[[[[()[(((]]((([[][(](][((())])](]])([)()](([][)[()(])[))]))[)())()[)[][)[[)[])()](])](])][]([))(((][]([][])[))][[())()]([[[[][()[]][((])(](]([])(][()(([)]))(([(]((([[()][()[[([(()[[)))))[(]()])))()][][]][(])]]((((([)[)([][)[))[][(])[(([(]]])([[(()()][((][[[)]]()[())((]([[()([([)[([)]]]](([[[)[][[)][)))](([)()]()()[][))([[[)[)(]])[([])]())(][[](][[][]()()])[)()()(([(()[(]][[[))))]()]((((])[[[[][(]))(])()([]([)[]][(]))]]][[]](]](][[]([[(([)])][)][[[[)())[][(]][)][[()][([[[])]][)]][)([[]()[)([([[((([][)()()(])[[](]((][)[])((]()()))])[[)(([(]([)[))]))))[([(([[()([)(]]((()((][[(((()]][([][)]()]())([[[])][[)))]]][(][((][[)[])()[]]](]))))]][](](][(((())((])[)]](()]([)])]((](][[))[))([]((]]]])]]()])(([[([])()[(])]]()()]((([)[)])([]]][[))]](((([](()))[(((]](([))])[[))](])]](]]((]]]])])))[[[])]))((]([]))[[()[))[[])]](()([()]((()()))]))[))]]][[][]][(])[)([()(])]((]))[[)][()([[([][][(([([)(())])(]((((](][[))(()([()(([)(()[][[])[[)([))[()((]()))))()()([([))[(])][]()[((()](][)])]]())]]([]]]()]][[)[[))()[[(])]()(]))]()[[(())))]])((][[((]))])()[]][])[[]((][))][[(((([))]][)([[[])()](])([(])]]()[][()([)]]([[([([((][[[((]([]]()])(([([()](]))()]]])]]]][(]((])](])[(((]()][(][])](][()]([]]]([[[)))(])]()([[([[((](][[[())]])](()](]]((]][)[)](][]][(([(]()(]]()(]([)]([]][[])[(((()[(]((])[[)[)[)))()(][([([(]][][]([[[[[[[)[(]()[()]]((](([)]][]([[[))[)[()])([(([))]))(])[([])[[))(())[((](]]())][])])(]((][((((([)[))))[)())(])()))(((][[][)]()(([)]]((]()([([]])(])[])((][(()]][[)]([[][))())][)()[)][]((][][]()(]()](()[(]]](([]]]([(([][[[)]][)]))(])])([(([(][)))[[]][]])[)]([([[[][[()([]((()]()[)([(([]]]][[[]])]]](()]()[][[(]]([([[[))]]]))][)[))])(()[][())]]](([[[))))]([)(]]]())([(])](]][]]]][]))())])))))]]()([((][)(([]([([][(()]((()[[)[][)]([[((([]()]]([))]))[)((([[][(]))))][[]))(((([](]]]]](([([)()()][])))()](][])([(]([()[)[][]])(([[[)][([([](([][)[)[[[(][](()]((])[[)]]((][)()(])))[)[)]])](([]])))]([(]))[)[]]((]))(([[][][]()(]])[(()]][)(]([[(]((()]][)))[]][[)(]))(]()((][]][[[(([)(([[(]]]))()[))()[()())[[)[([[((])))]](]([)])[[]]]]))])][[)((]))()(][)])[))](])[))((][)[)[([]))](])]][)(][]][(][([]([))([)[(][])][(][][[[[()](()]([)[]([][)((]]]])][[()()([])]]](()[(((((((][(([([[())[[)]])][))([]](()(([)(([]][)((]))[[)(]))])])[(([((([))[)()[)][[([[[]]])]]])))]]]])([[)(]((]]])]]][][])(](]())[))(()([[[(((]((][((((][([))[)][)()((()(([()(()))]]][)[(([()())]]([)((()[(()[)(]]][()[]])([[]](][(]][][])[]))[(]((()[])[([[((](](][][][[((]())([(](])([][[(([[()())])[)[())([(([)[[((()]([))])[[()())]])([]([([])][)]])[][[]]))()])][()(])[()(((([]([[)]))[([()[][((([[([)][])(])([))[[[]]](((]]]([[()([()([)(()([[[)(([)[([)()(([[])]]([[((]([][)(])](([][)](([(]]]])[([((][)[)())([[()[][)][]()(]][((](([[(]))([([(()][]()[[[][[)))((([])]([(][]([([([[)[)])]))])]([[[()(]][[](())](([][[]])][)[[[[[(]))[)[)[])](([)[)[[))()](]))[])[]][([))())](([[[[]]])])([[()([(]][([[]()()]]())[[]]))])]]]]]([((])][[[)][)(]][((][[(((())[(]]]]]((([[[))[([)[((((][]]]]))[[]())([[]][([[(]([][)]([(]((((([]))]][]([[(()))[(][[]])[[(()))][])]]](]((](([[[]]))([])[[[())][][[()(()()][))(([))(](()[([])(()[][(()][)(]]])(()([(]])[([])([][]]([)](][(([][(](]](()[](]()(][[([(](([[)(]][()])])]](()][))[][](]()[(())())())[([])][[)[])([([])()[([]]])[[]((](][(]([])][)[(]))]]([[[[][]((])(]])[][[[([[]([][[)[()((]()][[)))][)(][)[)][))[))][[((][())[)[())[(())()())(]]](]]()))])[)]]))][(()[)[(([(][([[([])]]][[][)(])))[][)((([)()(])())([]((][((]][[[[(][][](][)[)(()]))]][]](()()](]]))[[))](((()[()((()(]]]][][])[[[()][))([()()[([[]()])[)]([))][([[([][](()][(())][][[[()([)([)(([)(]()[)([]]))]](([)])))))]]()])]]([)[([[[)]][))[(]][(]()(]))(]))]][)][])(()][))[](]([)][())[()))]]]][[([()]]])[])([]][(]()][()]][[)[)](]]([[)([([[()])([([)((())[))]]([()[[((]([]]([]]](](]([][])](][(])()(()[][((]]))][]][[)[]]]))))])[])][])(([)((][(()()[](])]([[[])]]))[][)]]]](][)(()([)[)]][[)[]()([)][][[[]))[)][))[[[]])]](])))([[](][[[]])([)]][](][[)[(]]](([([(](()][[(](][[))]](]((]([[[](]][)(]))()](]]]]()()()(]([(()[[(])(][)]()([[([))[)](](][]]](])[([()()([[(((([(]]))((]]]])]]](][)(]([[][([)()[))(]))][[(][()(]](]((((](])[[])])((])][[(]][([())]))()[[((])[](]()](])])())([([))[[[[[]])()]((](()(])][]))[]))[[][[)[()]]]((()(]))))(]][[])])([]][)[[]([(])]()[)][](](]]([)]([((((([((]([)]]]]](())(([()])[(()[])([)[)[)(](([))[)(([)[((()])([])]())[]]([])()((][)[())][][)](()]([]][)([]][)])((](()][](]([][))))([)[[(([)([]]](([)(][([(](])]]]]([([]]()](]([([[[(((])[()](]]]]]](]))(]]((()()][[((]))]]][([)[[](((([][)[)(]([][[()()][)[[[(](]()[[)[]()(])([[[]]((([([[[(]](]]))][)[]][)]](](])))(])][[)((]]](())](([][([])[[)[[(])]])][[((])[]([]])])]](](((()]]](][[([)[([[][[(([)[[]))[[][))[]]])]](][[[][()][[[(][[[(((()[)]])])]]]))([]])[)]])(([))()])(]])[)[)])(]]((][)](][)](]][[]])]))][[]))][)()][)]])))(](()()][([[)](([](](]][[[]](](((])[)[(])]()[(([((([([(])[[))(([]]]]]][([()](]))[(([[((]][]]))])][([[)[(][[])])]])([([[[](([)))([[])]]))((((((()([]))((]()))()]([([]])]()])[[]([[)[][())()][[]((]]](]])[))())[][(](](][[(])(])])][[])](]]])([((]][)((]))[[([)[))()][)(()[()((())[[])]][()(]]]]([[[)[(](][(](((((]])(([[[][][[](()]]](()(((][[)([)[))([[[(()]))][]())][][)][([][[(()]][)([])[)]())))[]))[()])[[][[[()][[[[()]](([(([[)]([)))[)[]([([]([])]([))[][])()](()()][))([[[([()([])[[]][()][)][](((]([)[([))(]])(]][)([])]([()]])))]([))][[[])[)(]((()))])[[[[[]([]()][)((()[[])(])]])()[[(([(])((])[([([)()[]]]()[(][[[]())[)]((](][)]]()[([[)()]])[[)[((()(][)[([])[[))][)[(([[)[[()()((]][][[]([([[()][]()[[([()))(([))()()[)]]([]([)(]][[(][)]]])[(([(]()(([]()[(([))[()[][)[][)[()[[]]))]()[])()[([))[[[[])]]])]][][]([(]([(]][)[](]))[][)))[)]()(](]))([[)]()))))((]()(][(]]]([)]))](][)]][[(([)[])(([[[(]])]()[[])((()[)[]))(()([])([)]][))))])(])[[][]()][)[([(())()][))[[]]][]([)(]]]))[[[[[[)[([]])][[)])][]]((][[)[[))(]))[(]][)()([][]][(]()()(])[)[](][][()][[]])))))([((]()))(]((][)[]([))((][[[])([(()[]([([]])))([[)[)]([)])())[)))[(](([)](][[[)([](]])(]))(]((][]))(][])(]]]]([)()]][))]([(()[)())))]]]]]([[[])((][)])[)]]))])))]][[](()())[][((()())][]][]((((]]([](((]])][(]][()([](])[(([(])[((([]]([[([[][]([(([()[))())[][)]))])([[()(][([()()[()(])]]((([[))(][([[)])(((())[]](](][(][([[](]](]()[)[(([]([)([[([)([(][[)]][)))[([[([[)((](([[)()][)(()[)(])[[(]]([((]))])(((])([][]([[[[]])(()[](][])[[)((]([]][[]([])(][]())[([[()][()])[)[[][[[(()][(][[][(]][))]([[[([](](([]((])))]][[)])))[[][[)[[([])))(]([([)))[])]()))(]((]]]][)[[[([](((()()[[[)(])])(][[[[(]][]]))])[[)(])]]][[)[)[(]([)))(]([])])]][)(][)]][])([]))[[[][[[([](]][)[])((([[]((([[[]])])(([][())))[([[([)([][])[()])))[)[]([([())([(((([[(]](([[)(([))(]((([((](])))([)[((]]([)()([])(][[([()])(][[[(()[](]))(([](((][[(]][]](]))[[])))))(][[[(]())[((]()[((](]])][(()(()](][[[(([[([]()(](((][))()][[])]])[))(())])(]())()(][(][)([[[[([))([(]]]([[)(()(])[[[[))[[[])()](]]((([](((])]])[(([()])][)]))(][])([([]][[[([])])]))([))][[))][]]][)][[[)[))[)][][][[)[((][)[]))(]][[][(]])]())]])()()[]][)([)(])[))])[(]([))])](][])(((([)([))]][)]]()]((]())]])((((]]([)][[(]]]())))])][)[()[(([(([))))))))[[([)[(]([][)][]]([)]])([[([([())]))])]]((()]][]([)[]])[[][[)))))]((][](])))([[()(][)([))]()()]][[)[[)(][)))((])]([()[]))[[](]((]][)[([](([)][]])[[]]])()(]]]([(([[][(((]]]()[])[][)[[))]((]([])[]([)[()]))]))[](]]([[([[])[)]])([)(]]])[()[[])](()[)]()))[[(([])[[])]()[][()[)]((]))())](])]]))(](([]]]][])[(()]))][]((]([[[()[)(([]](])()])([))[()[]]](()])[)[][((]][((]()[](([([))][[(]][))()]])])[(]((((((]))((]([(]]((()([[()[()(])))]][)]([](([([)[[))]([)][([)[(])[[[](])][])))[)[)[[([)]][(]])[()]()]]][][[[])()(][[)]())))(]([)(]])[)[([((]][]())[)(([[)][](]))[(())(][[[[[]][]])([([[(]][))][)[)[][]]([)([]()[()[]][([)[([[(]()())(][)][[]](([[)([)]((])(([))]][[[[[[[)[][[][)()()[]])))[])][(][][[([)]](][[]([)))([)([([[][][)]([[((([[[]])]][)([([()[[)])](]]()))[([[([[]()[[[[[()][[]([](()[[[]([]))][[])][)[[([)[)]])[][[))]]))(())([)[[)][([]()](((](]](][)[([()[[]]][]])])[)(([)])[]]([]]])]]()[(]))[((])[[]](](())][)))(]((])[)))[)))][][)]([[]]][[])[[[()((((]][]()))([[[]))[))]([((([))]][]]())[(][)])]]()[]][(][)))])[]))[])(]](][())[[[)])][))])]])(]][[[)]([()((]][[(()))]()))]]((][([)])([]])]((]][(]((])[]))][)((]())([)][][[[]()]][[()))](()[(()[()]))[([[]][([)[]]]([])[))[)[])))[))()()([]([(](]]([)](([]](](]][](([[]][]]][)[()[)(([[(]])][)[]]([()((]([([(]])[[])()]((]]()(()][()]))](((]]]]](]()][)[[]()][][(([[(][]](([((([))([[))](])()()](((]][]())[(([])][[[)[[)](][((])))]]([[][)))(]][()[)([)[]]()][([))]()[[][(])[(]()])][][[]])])[][]([([[())(]][]())()]][]](())])])(()]([[([[[()((]())(][[())[()[(]][((())]]())(]](])([)]((([([([]][)]()(()))[[])]]([])()(()[[][]][[[][([](([[()]))))]]])[)[[[)((([[))[)])([]((([)[])))[[]))([(]][[[])[[))()((][[))[(]][)[[)(]([)(][([)])])()[((])[[[[)(])]](])]][)[[[[)))[[)([[)()[()))]](](([))))([]([][)]([([])][))((])]()][(()))))[()][]]()()])][((([()]()(]]][[[()()[[)[(]([()][(((][()(](]]])()))[][[)))][(]))()[]]))](][()][()())([]([][][[))[)))[](])(]]((]((][()]]))[])[]](((]([(]]][([)[][()[)([)]))[]][([])([)[[[([[)][)[))[[)]([(])()[[][][()[(](]][[]]()]](][[([([])((([(()())(]])(]([[[([[([)[][](])[][(]](]()]([)(]]([(]](([)]))]()([[(])))]])](][(((])((([((([)))(]()])[[)[([(([)][[[(][][[]()[([[([])([)])[()()(][)])(][[()])[([))[[([([]([[]][])[)()(()([]]()])()[[([]]][))([[])][((]([][([))(][(())[])[]])()([)(()[()((((]]][)[[((()((((]([))(](][(]]))[][(([]([)]([[(][[[())()])](])[([()))()([[]][(][]))[[)[))())][]]()((][[][([]][[)([)[))]][[[[[[([])(([)((]([[[[[[)[((())[](][))[(()[[)]][][)[()(([])][]([][(]]](][)]]]])()))([[[)))[]])][[[([)]])[])]][)][[(]])[))[()[))[]]()]][[)]](()[]))])([))][))](])[[)]()))([[)[[(([)]]([())[(]()([([)([()()][)[]([(][[))]]()]())[][(])(](]])()[)[)](])]()(]()[)(())](][)(])[[)]))])([[][[]))((]([([()))[(]([(([))[]][][(]]][()([])]](])))[[[](]][)[))([[)])[[[[][)([(]]])])[][]([)[(((([])[)]))]])][])()()))]](]][(](][)()(]()]][]]]][)[][()][]((([((][))([[[)()([(([[]](]][)[())()))][([))(]]((]([[))][[)())(([[]([))()[[[][][)]))[(][(]()([[[(])()][)())])([]]]))]]([()()()(])()([([[))((())[(([])(][[)([[)]])[[())())())][][]()[][)]))([[)[)))[(]])[((]))]([[[[[]])))[((((())])]]])][[)()()(()]([)[]((]])]()[]()](()][[(())[)(][()][])(][]]([[]]]())[][[)[)([(][)][)[([]()))]]([][[)()[]))(([]([((]]()([[))[]][]()())[[[[)([)][[])([[[([[)]](])(]][((])[])[[([))])]()[(]([(())[([[)))[[))][))(()))(()]])(([)])])[][))[[([([[)]](])[)((])]([]((])[()])()[(])[])][(([)[][(((((]]][([)[(([)[(][()()([))[())))()(((()]]))]))()[()]((])([[)[][)][[[())([]([[([]([(((][((()([]))[()())[](]]](()[((]]](([])((]][(]([)(])(][)[[(())])[(())(([)[[])](([([]]()]])[(([[]))]()([](])]()[][])])(]([)()[])()(()][([[[())(())]][)]][([)[[[)[[]()[))]][([(]()](([]([][[([]([]][)([][((()[]](][)]))]([])[()())[[(([][]())([)](]]([[()[[[)]]][)][[[[))])(]([[](][[[[[]((]]([[(([[[)()(]])[])((())([]))])]([[)(]))(()[))[]))()][]()(([(])](]([))()](((]])(][([((([[]])[]](()][([)[)[([(((([[))[)[[][[)[[[)(])[]((])]))[[))]()](]()[)])()[()][]]])[))](]))(()[[)]])])[[)[]([])[()[]])((((())(()()[)][[(]][[(]]([])]([[))(][])])[]))])]][))[))([](())([[)[())[[)))[]])()])[][)[]])([((]((][])]]])([[]]([)[)[[(]([[))[))(][))]([(]][[(]))])(]]([][][[[](]]]](]])]])[[)(](()(()(]](]]])]))[]([[[)])()[[[[([][[([[[)][)(]([)([[[([[)])())]])[([)[[[[)[[))))[(]()))((][[)))[[][)([)))[]]]))[))[()(])[]][][([)[((()][[][([][]([))])][)(])(]([][[)()()(((])))[)[))[)[[])]]((([)))(](]())])[()]][))[]))[[()](])([([((](]](())[[]])((())[)])])][[]]))]][][[))(()]]]][([))()]))))])](]]])((][[())[]))]]]]()]]])]]]])[]((()(][[(][]]]()()[])[)[][(([]()([(]]()]]()]]]]](((())[([((()[[(]]]))((]]))][]))[((]](()))))]([([])[]]][[)[[)][(([(()][[(][())))[]]]([(]]([(](]])[[(]((([[(]][]())]][))(())([[(([()(([]])(([]]([))()()())[[[(]()[(])([[(])][(]]([[[[[][]]([)(]([][[])])))[)()[((([[]]][)(][[]]])[()()[]]]])])(][()])((]((]][([[[((])[)[]](([)((][[)[((](])((()([)]]]]][)[])](]([[[][)([])[))[[[(]))[)])]))[(((]][]][[])][]())((][(]())[])(]][)))])](]])())][(()]))[[()][)())([)][)])[](]](])(](]))]](][][[[()(((][[])))(])](][])[[(]))])])][))]))[)]([)[()[)[[]((([)[[)(][])[)(]]]()())]()[())([][[[)][[((]]((][(]][])])())[(()()](])[)[])[][]])(([[[)]((])[)]()]](((](][)](]([[())[])(][[)(([)[[([(]][)(([((([(((([)([))]))[]()[)([[[]])(]]](([[()[[[][]][]]]))))[[[[[]]()])[)][))()(])][]([]])[[[)]))[)])]()[]])()[)[](]()[[]])()(([)]]]))[([)(]](]([)))])[)[])]([)()(()))]]])()))[](])((([())(((](([))])(]][]([[]]][))](])]([[(]]]()[]((][[[[)(][)(]))[)[]))[][[[][]](])((])([)[]([)])])((([](]][()()[))[)][)[()])]])()](]()[[((((]]][[[)([([])[[)]()(([((]))]))]))[)][([[)[]([)[])]](]))))]]])(]()[][])()))]()(()))((])(](()))[([(]([()([[)()[)[)[([([][])(][(]([]](()[[[)(](][[)])][])[[[)[[(])()]]()[]([([[)])]][[([]][])[[))[]())(()[)[][((]([((()[[[])])[](]))]))()][((())][)[[]((]][][[([]([(((](]()[[][)][([(]([)])))[]()])(])[()][[][[[([][])][])([]]))][)])]()]]([)((()[([])[[([))[[))(][)][([](](([[][])(((()()[]]((])()]][(()())(]([([([]]()(]([([[)[)[())[))()]]]]]]][])]]](]))[([()[]]))([][(]][)]((([](])([[[[()[)[[]()(([[])[(([[)([([)][(](][(][[)))[()(()[)[[])[([(][](([)])[)([(]][)(([)[(]))([[(()(((]][)))())]()((()()]([](]))](())))])][[)([)()][])(([]))][[[)]))([[()()))[[[]((([)])[())[[[](][[(())))][[)]][([])))[[(]]])][]]][[)[)[[([[][)()[((]])))][])]([([)[][([[([[][[))()([))[(]])](([)[)](]][[)[([)(()()][)()())[)))[([)[]]](()[([]((([)]((]([[]])()(]])]([()])((]()())]))))()[([)])]]([[[]]])]](]()[[[[()[[[([[((]])([][]])])[()]]][[(]]]](((][)][)](((])][(](])]]((]]([[[[([(((]]()]])(](]()([(][]]((][[)[])]][[)(]]([(]))())[([((]][()[)[[[))(](]))([))[()]()]])]))[))[]()]])[])[][[])(([([))))((]](])[[)(]][[)]()]()][)()])]][([[()([)[[[[][)))[[[))[[))([)](([()[[)))()(()])[(((][]])))[[(]]]))())()(()())()])([[([)([])[][(][[])((([(])[])(])]]())])[([[))]][][](([[)])))[][[[(](([)]([]]()((]]][])((((((([]])[[][)[([(](([)([([))])[([[]]][(])))))[][[]([)])(([(][(((()])[][)()([))]]([])()[[(()]][))]((([(][)(][()[[]]]][[)))])[((())))([)[)[([[[))]]))))]]][[)[((]([)[][()))[(])((([[)[][(]])[(][][[]])(]])]]])][[)[([))([[[[[()[])[][][)))((]](][[((](]([(]([(((]()[](][])(()())[)())][)()[][))[()](][()]][)[(]]()([)][]]]]]()]]([))[])[([](]]]([[[)))([([[)(()([(]()([][][])[]](()()()([[)))]]([[[)[)[)[])]][((])[]](]])([[]]])]]](])]]][()])]()]))(([]])((([[[](((([[)[(][))(]))[(]((())[()[()([([)[)]])(][])[[)[][[()]())][(([[(]]]])((])])][)])[)](([[([(()](((]([)[]]]([))]))[[[[](](]]([[[[[(()][)[()]))[(]][)[]())()()[[[)(((]([()([])(][([)[([)[[)())[[([([[]()()][)))][((([]]([[([[[[(([)(][(([))))[(]((]((]](([]]([()][(](([[)([)))(]([[([([)](((][()[[)(]])[][][[]([)]()]([](](]))(]((])))([]][)[[[[)()[][()[[)]((])(])]][([](](]([][)[]](]()[(])(()([]]([)][)]])[][[[)](([[[))((]](]])[])(][[])()[)[[())[[)]([]([][[((()[)([[)([[[)]][])(]))][)[()]][]()))[(())())]()][(([(]](([[])[[(])()[))()[]))[])[])][])()[)[)(([()[)])[())([)[((([()(]]]])[[)((]([])))[())[][]])[([][[)]()(((]])())]((([(][[([)][([([)[(]))[])([()()]((([])()[[[)[)(](()][)([()]([)][])[])])()]]([)][]][([])[](([[])[[])))][[)((()([()]])[(][)])([)[]])()[(]]]))[[[])[[](]()()(])]])][([[]()])[(([][](((((([)(]([(]][(([[[[][(([]][)[((]))][]]()()()[(][][(]][][][([](]](][)][[))]))[(]]))]([][]]([[]]]]][][])))][]]))[]()[((()])([[[()[)())]()[[)()()()()[[))))[])()][))[[()[))[)[(([(()]]]([](]()]]]][[([[([][)(]]]())[][]()[)])]])(]))(]([))]](]([]([(]((]]))[[([()))(][([][]))]]])[)[([])(])[]]]))))([[](])[]]]([))[))[[]][[(()((][)])[)]]))[((]()[(][[[)[[[())]()[(][)](]][[)))][[[(])[]]()]]][)))][([)])(((([)))[)[)](]]([[]])[(]([[]][[]()][)][[)[(])])]))[[([((][[)])]()([([)])[)]])]]])[[([(])[((]])((())()]](()[)][(])]][[[(]))[(())([])][[]]([)[()][[()))[]])[()]][][)))((])(()[)([][]())[]])][([)(()(()))[)[((((())([)(][[)[]])()(][)()(())(])[]]][[)[[))]](]]([[]((((()[[]]])]]][[)()([()])((])](())])[[[)])[)[][))(])]([[()[(()[)([))])[(]][[(]][))[)[))[][[[[[(()()][][[])(]][(])(]())]]][((([]())][]](])))[][[(([)]]]())[(][[]])([))][][[][]][(]]((][)[())])]][])[)]](([]([[][((()()())]]]][)[])(]]](][((((])[((][)[[(][](([](]][((][][])](]]])(][[]([](])))]]]][)(([[[(([(]]][[)(]][((]()())[)))[)[(][)([[())]]([[[([](((()][]))[]([]]])((()())[)[]][))([)([)[)]][[][()[][(][[[](([)))[[)[[())[((([([()((][(]]()()(([)[)()([][)[](([[[)([]())]](())]]))])()[))])[]))([))](](([))[]](](]][[[([()()[[[][(])][[]]([[[((])[])([])[]([))()[(][(())(][(((()][[)(]()(([]]()[([))])]))(()]([)]((()[](()(]]())(])][[(]][[([(([[)(][)])()[][(](())((])][][](][(())))()[]))())]][[[))[](((((]([((()((][[)]()([)())[[(])())(]))()))(]])))](](])(][[()[)())[])()((]))]][[[)])(])[))]][()([][[](]](([(())]))]()[][[(][])]]]]()]])((([][(]])])(([]]][][]]][[[)))[][)(][)(]()][)))()])][[[)][(](])))][(])[](][]()[(()))[[[)))]])[]]][](][)[(][[())([()]()]))))()((])))](]]]]]]][[)(])(])())([(((]]][]](())(]](])(]][[()((])[[()))()](]([[([()][([]))]([[))([)][][())(]()((](]])][[([[)(])])))([))(([([])]])][[[((]]([)[))])]])]]]))](()())]]([]([)))[[[((](]][)]))](][(]]([[(([)]])))((]])))[][[][()[[)[(([]]([[]([)]]](([[][]))()((((]()[[()))(()])([)[])(]([]])()[))))(](])([([]]][[)([])(([([))(])])[[[][(()([]([]([[)[()(()[[][((]]](([(([(][)]](()[)()])))[((([])]([])())[[]](](()]())][)[[(][[))[(]([[)()((((](])[]))[))((]))([[[][[]][)][])()()][([)[][]](]][)()[[][([)([[())))[)[[])[))[(([(([()])[[[)](([]])][]])([][([]))]]()[)][()]]((([][([))]])])[()()[]]]]([))[(][]](([[)](](([]())[][)([(])(](([(])(([((](]][))][[([(]))[)[((())))[][[)[[)))]][)]([()))[[][]]]()()[[][([[[)])])[(([)](]])))[)[[][([[))][())][)][)[(([[][)](((([[)(([]]])((()][))[[])([]]][(([(][))[][(]([]))[)]][()])])([(][[([[))([[(]([)][[][][[]][))([]][(]([[)((]]))][)](][]((][)()[]]])[][()((((((([[]))]])]][)[[[)(((()[(())])[[(])][[][][])[](([)[(][[[]]))(([([[[]])(([)))])])[((([((([][[[[])[]])[[[)][(([))])]][((][))))()[())])[]][((][([([[]]))][()]([])([][)[[([](()([)(]]))]))]][(([()(()(([)([([[)]])]]][)[))()[]])][][[[[)]][[[][][)[)](])(](()([][)(([[](])(())[[[[[([))[()][])))[]]([([))[)]))[((([[)(()[)][([]][)[[[(][[]]()[))]([()[([[]([))[)[])()[)(((][[[]](]([])]][(]())]([(])[])[())[[[()[[](([[[[)[]])[[][]]))([[[)())([[][[))]((((([[)([)[](]()([)]][()][[[)[)]]([((()](])(]][)))[[)([[)[[()[[)[[(]][[))([](()]](()([(]])))(([]([]))([]((()][[)[[[[[())[([))[[]][[))[[(])[[)[)(()]]][][[[()])()(]]]])(([((])[][[()](]][])[)](([])))([][))[)(()])(][)])[]]]((][[[)]])])][[)]][)])[()][])[](][[])()(])([([][)((]][(([)[[))]][((](([()([(([][([(][]))[]][[())[])((])((()[]][][]](()[]))[([))[[[)][)[(())])[((([(](]]][())()]]))(]]][][][(]]))][(([)()[)[[[(][()(([(([[])[(](](]([))][(])(]])](((]([[([((][[([)[[(([([]([()))([)[)(((]))(([()[[[]]][))[]]]]])][[()])()(()]())([]][)[(])][][]([(((](]]))][[][([(](]][]]]()(((()([][[)[[[))]])([[))]]]))[((]))[[][)(]([[(][)[[)(]([][(](([[))]([][[(]][])][((([])[])](][)((([([]]][(][(])()([(()][()([]]]]([]][]][[((])()()][]())])(([]][])][())([])([])]]]][)()[([)[]())(([]([))]](]()([[[)()[(((]))[)])()(()()][()]](([))[][)([)))(]]((][]([[[[[[][))]](])[)([[)[(]]))([))]([())([)()[[[()]([[())[)[[(](([())[)[(()]()((][[)])()](]((]([)()[(][([[[](()[[[)[[[[][([((([((][)((([[[(][[[([)]))((][[[[)[]([)]))([[[(((][))[[)[[[([](([]([[[[])()))[(]]([)[(]][([)]()[)[][))[(]((][]][[]))[([)[((]])]]([)[([[[(]([)[]]([))(]())()[(()[[([))[(]][[(((([)()]]](])]()[)))]][()])()()[]]))[()([]])]))[)([]])(][])[[[)(([[)))[)(]))))]([()]]]]([)(())([[[)[([][(([())[([()[)]])])](][[(][(])][[]([)[(][[]])[][]]]())([[)(]]())(](((((([)([)]]](]))[))())][[((][))])(])[[][[(][[[])(()[[[](][(][)[[[)][([((])))])]))[]]()()]))(])[))[((((()[[()((()(()[)[(]]]][]])[](()()[))())[[](]][][([([)[[[[(])])]((][]())[([[][)(]][](])](([)([][[]]]]()](([[[][(()((((][[(][)[[][[(](]([](([([)]([]])])[[((]][()]]())]]][](])[))]]((([()]()(((])(()(][()(]))(]][]()([)(][)](])()][))(])()])]])[[(])(())[(()[]((](][[)([]([)(][(][][(((])[]]]]([((])]]()[]])[[][()[)]))[][[(()()((]([](((]]]]])[(([](][)]))[])(])(][(]][([[([]])])](][)[((]((([][))]](())(((][]])]][]))[)](]([])([)][])[)]]][)[[)][[)(]()(])(]()[()[[][]][))())[()([])[()))]]]](]][)))(]((])[[]]]]])()(([()())(()[])]([)]([[[[()(](()[(()[([[[[]])[[[]]())])(()]][)(][[)((](([(]]](])][)([]])(()](((]([)((]]())(])])]](]))()(]]())([])((]]([((])))([([[()))[)[[(()]][()][[[)()(]]])()[))[)]]))[]][()()))[[)(()()]]][[[[]))((]))][)][(]())][([([()[))))(()])))()[)[[[[]]((]])[))[)[[((((]]][[))[([][()(([][])(](][[]][)))(]][[))][))[]]())[)]](])))([[)](]][(]((]()])])])[)[([((]][()][[(]()[][]][()]](([))((]([][])()]][])((([)((])[]))([][][[(]]()[(](][][)][))]()[()]]()([[][((]]]][]])[)[][[])))[]]](()])(]))]))(()))]][(()[([]][])])]][))[(([[()(])()(][]]][[])[([]][])(()(])(]]])[])()(]][]))][))](]))[[()[[)(([[](][]][()]]()[](([])[][[)(]([)[))]]())[[(((()[()[]))[[][][](][][(])])(])())(()(](([[))[(]([[][((()])(()](((((]())(()](([([)])]((]([([)[]([(][))([()]]))])(()))]][])](([(])][][]()))())]]][))))([(][[]()])())]([([)(]])])]]([])())(][(()(]](]()]([))[(][]())]]()][](]]]()([)(]])))]](([[[])))[(])]))))[())]]]][][](([]])((])[()[[]][]()))[[))[)]))[)))([[[][))]][[))]]()()]((][()(]][[]([][)[[([][(()]()([]))]))[(()[[][[[)(](]([)[)()[[[[)])[((([([[[())(](])[[[[[)[]][(]())]](([)])](((][)([([)][(()())]][[)][[[)](])]][(]](][)]([]([[[[)][[[][[][[((]]])])]())][([[)][([]](][)(]][[)[])([]([(][][[(]]))])))[][()][](](())][(]][([]]]((([())(([)]))[(]))[[]]]([(([))]()(([]())[[)](]])([))[][[[)]]()]()(][))]]([()[](](][))))[))(([]][()(])][)](]])](([[][])][[(])())]([()(])((((()[(])([]((]([(][))(([[[])]([[(()[))](((()[[((]]()(]((]]))[]([))(])(][]])])[[(][[((](]([())(([([[)()()(([(](]]([[)(([[[))(]]()]]()([)[]([)())])[[[])))][)(([[])([([(](])]([((((])])[(()]])]][](](()(()])])[](([][([[][][[]])(([((][)([])])[[][[))[)(([[[](]([())())][[]](([(())()[[((]](]()(()])[[[))]]))([(])[(([]]]))(]))[][((]]([[(]](([))([([(]))]]]))([])[]([(]))[()(((())]]([[))](([)([[()(]](])](]])]([[]])([[]]]]]]](][)[[]([]()[]()[())][[))]()))))]](]))(([])((]][)((()](][])[[]](([](]))[]]](((])[([)])[])(()[[(]([])]][][()()[())([]])[[][()]](])([)[((]](]))]]]]](]([)(((]][[[([(]]]][)]))]]([[)][])[])]][)([)[)([([((()][)])][([)(([[][[)]])(]]([([))[()])()()]]))])[])[[](]][()([]))([))[[](]))])]][[([]][[()[)([][)()[([()([(((]](()][()(]()(([[])(([[])([))][[][(]])[))(]][])[]][)[(])]()([][))(][]]]]))][]))])))))([])[))](()(([[[]([]]][)()[]([)]()))()(()[[[([[][()(])))([)())([])])(([([)()[)]([])))][)())])](([][[[)()[)](([([][(()[)]([([)[)]][([]][[)][][][(()()[]()[)[(())(([([])[(()[](([][]][)[](][][([([][](()(][(])(([]())]](][))([][)](())[[)[))(]()][[[)]))(()][][[)()(]((()[)][]))[[]))[([[()](](((([)](])(()]((]))(][(]((([]([())[])())])][))])]([]([][(([])]])]([)((]))][)[([[])[[)(([])(][)((]][[[((]])]](]([(]()]])]([)(([)((()][][((([])(]()])](())])[))][[](])[[)[][][)([((][[()][)](([])()(]([(])[)])]]])[[])](][[[)[))])][[])(()[[]])][)())([[]()]]((](]([((]]((]]]]])[](])[))[][)][()[][)([))][())[))(](]))))[())((])])()])[)]((]](]]([)))([([[())]]][[))()[[][]))[][][][([[)][))(()]])[()]][[](([))])][()()()(([]]](([]((([[))((][]())[[)](])([[(((]]))])))]]]()(())[()[[[[([][[[][)]](]()()((][[[])[]([(()[][(]](][))[(()[(()])([][([][)[])[(([[]])]()][)]]])[()[(((]]])][])()])](]][[][])[]([([))[][)(]]](((]))))]][())])])[][[)][(([[]()])[]][[)[]([(([[)]]([]())][(((([][][[([([[][])[([](][([])))[()([][([[(])[))]])])([))][)][)[(][()))))][[(])])]]][])]])[])([]]]]][][[([][[(([[())))((][]([][]]([[([])[]]([)](][)(]]([()[)[[(())[]))[)([[[)(][]((](]([]()((]][[]])][]]][][)[(]([)(([))[([[[)]((())[)]([[()[((])](]((][][])])(([[[((((])][[(]()())]]())()](](]()[([]]])[(]()()))]))](()(([)[]()[)][]]]))(][(()())[[[((][[[]))])]]([())((())))[])]()[]][])[][]][)([[(][))(]([([))([(]([(([))(]()()([)]([())[)))[)])[]((][[])]()()][)]]][)[([)]](((][)]][)]([])(([]))[([)))((([[)[)(())])([)[]((([(]))((]])((])))))]()())[)[](]])(]]]([)][[[((][](])([]][[(([[([[()[]([][([(][)][(()[[[])[([(][](()]()[()([([)[[])))(])](](((([))(())[[][()[]))[(]()]][]([[[[)])))[()([)()())])([))]))][]))[))((]([()[][(]()([])((]])](]()([)]]]()(([([([(])((])[[)())]]()(]][([)(()[)))])[)((]([()]])(]][[][[][])()[[)(]((](][([(())[)][(]()]]]([)[][)[][)][)]][)][)[][)[](]([)][(])(]]][))(])[[[[())])]]]])[]((()[)([)(]])(((()))[]]((])(([[(([)[])]]()((()(]]])])(()([(()[([)(]([(]]]])([]](]])[[(])(()(])((([][[[)[)((()(([])()[[][(()[)]()])[)))()(())]]()]()]][[)[[)[]]]()])()[()]([[)][)([(])(((])[((([[[[](])(]([()])(]([[)](()()([(]])[[]][[[()[](])()[[)]()))[)(]([[]])[](([])())[[][()()[([[((())])()(()])]([()[[(((][)[(]()][()][]([(()[[)[[))(((]))])])[)((]]()[(([[)[]][][[(][][)])[]([]](]([])][[[])()]](]])())([(])((([[[([][[[])]]))[)]((([])[([)[[)(]]()()])][[[[(([])(())](([]()[(([)((()()[))[)][[))](([][]((()]])][[(]][([)(()[[()[[)[)]])]])()()([])[(]))[[])(][][)(]]([][])([[(((][][((([[]])(])])[](]([((]([]()[())[)[[)))((]][])()(()[([])[[])()]()](([()(][[)[])[]])()[(]([)((]))(()(([[(](()][(((])][(])[()[(](])[[((()([[()()((([([[))(][[[([(()[])([((]]])[)]][]()[([()]((]])(](((]][)[](])][][)]]([(]()[)(([](])][](]))()[)))([[([[)]()[][[[[(]((])()[]][(()()][[]]][]()]]((]()())])(](()])()[](]()(]][(]((()(]][([][(])))(((][])([))]])]](][([[[]]()]([])(][(]][([])([]))]])[)))](()(((()()))]][]((][())[)[]([((]())[[[]))([]([][(([]])][)[)(](]])][(]((])))()([]]])])(([()[[))[[]](]]))[((]([[](([())])(](])))()[]][]())[[([]((]]](([[[)]]]]]())([(])))])[)]()](](](](][)[]([]][[)]())[(]]()[[(())[]])](([)][)]))[)([))][[(([[(]((())[)))((]][[)[(])))[((([(])])[)[]([]([(][)))()]]([][)[]]([[[(]([(])[])[(([)[)]((])[]([)]]])([]])(())[[(]]]))([)](]]]])([(])[(([])()))])][[[)[(()([)()[[[[])))][))]][([]]))[)](([()[[)[)][(([(()[[[))(]))[)])[[([)][][])[]([((])()])])[]([[()[(])()][])]((([][]()((])))[]]))[()][)))]](]])))][]])[()()())[)[[()[[()[[)[])]()[[])[(][[]))]])((()([)][[]]([[([()][[])]](]])[][[[[()][]][[])((]]()([[[)][)))](][[)])[]]][([])(])((]])[[[)(())()()])([([[]])]))])]())]([)(()](()((][((())([)][[[]]((()((])])](([)))])[][]]]](]([()]])]())[))))(])][]((()]](()]))[])]]]]()([)[)[)([])([))()[(]]])(]([([))(])))[[)]))[[)[][)((])(([)[([([([[[]]([()[[[))])))((]](])(()[[)]]](]]])])[]]((([)]))])(](][[[]][)])((][][)([)]])](([)([][[()((]((])][]]])))])][[))[]])[[[[][)([)[(])])[[[)]])]][][[((]([)())()](]))([()[((]](])]]][)([)))))[(([))([]())]](](](((()([()([])[((([(]()([]()[)(]))()]()((][()[[(]()[()[[((])[)]([)]()][[)(())][)[()()[[(]([[])(((][[(])[)[[)()[)()[[[]))[]](([([]][[](]([]]][([])(]])([[]([)]]])[([(](()][][)]())()])[[)[)())[)([)[[((](([[[[)[)()[]])[[([])][])[[(]]]](](])]([)[[]()[((]((()]())([[]()())((([[]())[[[[[[[)[[)(([)](]])(())[[(]](][)())[]](])()])((]([[))[[])((][[])(][[[][((][)[[)]]](([)[))][))]]([)(((]([][([())))[)([)[[[()]])))]])(])]())()[()()][])))(](()][)])[[[]]()())[][[([[([(([[()([)[[]]]](]])(([)])](]])([)(())(]((][[((()](]](()))[])()((]]))([([[([[[([)((([[]([()]][)[((()[)()[([[([(][]][]()]([(]())[]]]))][]][]])(]]](]]][]])][)])([[(])([)])(]](([)[[)[)[[]()][]]([])](][])([]()())][)[((([[[]))]]([[[)[))[])[]()[()[[)([[])))]]](]](][)()()(][((][[(((]([][)][([)[[]])]])()(]))][))[]][]()]([][()))(())[[[)[))]([)][[([[())]([))]]]))[[(()[)[][(]([((())))]([([]([)]))[((([(([))][))[][[))[((([]))(][][])]()]])()]][][][][)()))][)]([]])())))](])[))](()[([(][()[)][)](([[()]])(][])[)])(][)([])[(()[)][[()([(((])][()))](][[(]))[(]())))(([[[)([)([[]]([((()(()((]()([[)(())])[))][[(]][(()[]))((]]))[][()[)[]((([[[])])])([()]([][[(]()[()[)[[()[[(]((([)[)))[[[(]][[][()[[)((][][]]][[][))(]][)([()[()()][][)[([]))()[][()()[]([(())[)(((]])])[(([][]]][))]]()][([[(([((]())[[)([)]]([)])[)))]][[])])]]))([]][[(([][[[))](]][[[[(])[)(]])))][[()((])((](][()(]][)[)][()[[])]]()()))[)(](][(([)]]([()))()))])][[)[)[)())([])([))]]))(](](()]])(()))))()][])])([])](]((([[]]))(][[[[))(]))()[(([]))](])))(([(]])([((((]((())])(]]()([)[((]()](])())[][))][]]])][]]]((][)()))(][[][]][[)(]())[([]]])](]](][()]]([[((()])[[))()([[[()[()](()([[(][([](((][](][)[[[)))[[()(]]()((][((][[[()][]))[[][][][)(])()((([]())())]([[)[[([([[[((][()()[(][))][([((()((]([))())[(()])())[([]]))[[)[][](([(([[][(][[[)))()((()]])[[)((()))[([)))]])[[[((](](])[[()))(](][])))(])()[]][([([[[))[][[)[()(([[[)((([][]([[(][]]]))])[)[[(([(([][][()]([((()]))[([([)([)(][)]])[((([)))])[(][[]([]]([(](([()[([)[([((())()[]][[][((]((][[]][[)]][])())])]()()[))](([[((])[([)[[(()[]]][[)]]([]][)()[[[[])()[[(((()))((([)))())(](()()][[[(])[[)][(([(]][[))[))]))[]()())[)))()(][]][))(]])[))))[)([)()]]([(]])]((()][[(()[]([](()]]([)[()]))])[[[[(]][[](()](][[()[[)[[]((()((]([))[[(][]]][])[[]]([)(]][]][()](((]]([[(([])((())[][[([]([)]]])())(]]()][)()[([))[[[]]][])())[)([([)))])][[[()((])[))]])]]((]])[)](])]([)[])])]]([[]))))]]]][)()[([]))][)(()][(][(([]][))[)()((][[)][)](()(())))(((]])]][]()[(]][)()()))(]((][([]][)[]()[)])[[([(][))([[][(]]]]())))())]])]][[[](]))]]]))(([(([)(]]([][)[[(((][](][([[([(](]]])([(])[))])[)[([)]](][)])]]])[(](()[()[(()(()][)[]][[)(](]](([][)))[(][)()(()([[[[(]][]])()((([][)))(]))([[)])]][][()]())(](])]])([[)(](])((([()))[()[])[(([(([([[])([)))[[(()]][)[)]][)[(]))[]]])[[])((((((][)(()[]((]()(([(](]])))(]())([[[[()]([[(()(()])()])[[][(]]]])()[][))[][[)[())[[)[](([)))(]((]()[)][)[[[)[(]((]][](]][(](([[[)](])()]([[]()([][([)](([])][)(][]([[[([[)[[[](])])[])))]()(()[()[[(]])[]][[]([)[([)([]]]()(([())))((]()(][)(())((]()[((]()[[[[])(][](]([]][(()(][[]()](][[(][))()])((([([[))(]([)()((][[[(()((][([))](([)])(][()([((])]()()(](]]]][)][)[]((])[[)]]()[[][)])()[(](([]]))([)](][][()[[(][)[)))]])[))][[())()[)([[)][][()))()(]((())(()[[[([()]()[[(()[)([)])(([])])([[[((](([([))([)()[][][((()])(]]))[)][])[][))]][[[]]][[()([([(][(((])[))([[]][[)[]]))(]([[([))][()())([]]]][([)[[[[)[([[[][(][)[([][])((([[])[(([)[[)(]](([)))(][(]())]]](](](()[[[)][]([((([[()](]()))[]))[[()]][((]]]([([)[(([][([([])[[][)[]])][(([]([][(()[)(]]()(])[(([[)([]][)[]](())))((]()][(([(][[[([[))](([)[][]([([[([())]((([([[)][[)))]]])()][[[(([[))[][[()[](][[[[[))][([))))]))([)]])])(](([))[]])))[((]([()()](])[(])]([()[)]([(]]])))[]]])][[())([[)](][(]]](())][([]]))))][]((([)[])](][(()]([())([))((][)[)(][](())(]])([[())[])]()]((()[[()]][)]([))(([[(])[)[)(([([([][)[[[]]([))[][][])][[()([()[[[])])]]()([)))([[))[[([](])[(]](][]])[))[((([()))[()[([)[[])])]]][][][)])][((]](]][)]))[[]][[(])])(](])]((()]([(]][]((([)[[(]])(([(][(](([)])))[)[[[[(([())])][(][[)(][([])[])[(()))()](()))([[)][])[])([[)]]]][]()[]]]][[]((()[[)(()()])]()([[)[))]]((])]]][[)[)[)[[)]())[)])))][)(](]))[][])[]]](])])][[(]]((])[)[][]]]]]]]][))](()][])[)[]))]))[([)[[[])][]([[[[)]((()[]])[)(]][[]]))]]])][)])([)]]]]([)[(]))](])[()]([])[][)[(][()[)(()[[)(]((([)(()[]][[))(([)[[[](()([[]([[)(]])[([([([([]][](])])[)])[))[](][])[]][[([)])(])[)[)][[)(()))[[)[[[(([]([(((()])[(((((([[([)[))))(]((]][][[]()][(())(([]])])(](]()[(][((()(](((((]]]([()])[(()((([((([[]([](]((([[[([]]](]][][[[())([](][][[]([([)]]]](])()](]))])]](]][[)[]]][[())][[(][]][())(][][)[(]()[[(][))][]]][([])()(]]([]())[(((][(()(]([))]])]])[]()[])())([[(][][])][[)[((]]][))[(([(][([[]]](([(([)]([])[][)([)))[))][([)]]]([)[[)][))()((((([])]][()[)(()[())))(]][((][()(])(([[]])][[)])[[)[[)[[]])[[)))])]](][]]]][]((])[(][))[))((([(]])[)[[))][])())(]([][]]](])]([))[]()])]))((]((([(][)[])()][])))([([)][[]])]]([)(]]())][][(]](])]([(]])[]][[[])([()[]])(]]())[(]](](][]])((()())(([][]([)]]]([(]]]](])([()]]()(((]][[(]]]([)[((](]][([]](](][]((((]][)(][[[)(][([])]((])][][(([[[][[([[))([()(])[)()[)([)[][)(()))][(]]]])[[)(])()(])([[()[][[([)()[][]][[[((((])]]][()[[)]])]](]])])[](())[][][)())]]())][[([[[([)[[]([](()()]())[)]]][()])))[))([[(])))[)[()]]([]]])[]([[][[)()(([])]([][)([))[[]([(][](([]((([[)[(][[[(])][][))[[[)([]())])([))(())][[[()][()[)])[]])[)])][(())]([]()]][)()((]][[[[[)()([)[[[(]][[)]][]([((])](][)((((([(()((()]]]][()(((())[))[]()]([(([](()[])[]](()[(][[[[]][[]]]([)(]()[[]]([[]](()([))[(](((](])]([][)(([(]])]][])[(][(]]([[())]]][(](][])[]](]]]([[][])))[[])([[]()(([)](][]())(][[(([[])[]])((][]]])]][))()]()[(][]((([]]([(][[])])((])]([()[()]][[[]][)]][[]()](][(]])][]((()[)][[[)]](]())[)([)[)(]([)(]([)[]]]](]])[((][[)[[[[))[(][](()(](]]((](((](])()(][[))])[[()(])[]()]])[)][)[)]])()[)(()])([(](((]([(](][[[)))])()]]]([)([)([](]))[](]())](]]()(]))][([)))]]([)))]))][[]][))()[)[][([(([[)(][[]]()(([])[[)[]][)((][])[(]((](]((())[([)][)[[([[[))(]())]][))]((([)]]]]][][[[]][()[([([(]()[](([)])(()[)])[[(()[()[])]][[[(()(((](([)[])))[(][)]([[)][](((][()([[(][()))([[[)([()))())](())]]((()][)(([[)))[]([)(])[)])([)(])))[(]][[)]])]][(][]][)[)((])([))([(((]])]([[]))][[)()])[]))(][)[[(][][])(())[]][))[)][[][)[)]([)])]))[(([())()[[)[)(][(])(()]]]]]][][](](][()][]])])]([[)(])(]))(([]))[)))[(()[])([][([[[)([)[)]()(])[)()]])[[((]]((())])([[))(([][[(](])]()]]][([)]])[[[]][()[))](()[([])]]()()([(](][)[)(()](([][][((]))(())[](]()(])]])]])[]))[([(]][[()]()[[)])][[([([(]([[]((([[)[([[]([[()](]][[[()][][](][)[[[]]()[)[[[([[[]([[))(][[)))[[[][]]]([))[[][]])]][]((([](([)[)[)()[)([[((])]()][(][([[[()()])[(])[]))()[[[]][)[))[][][)])(]])([)(])[[][)])][]()()()[)[(((()(([)]([)[[[]()]([)))))[][()[)([))([((])([(])([()))(]][))(](([()[)([[)]()]([[))](])[)]])]][(([))])[])[[)[[[](()[]((]][][)]]]())])[])(((](([](][(([((()([[))(([]]]]([((((()][[](((([[(((](])])]]](([]([[([(][]((]](])]]()[(])]]]][[)))([]))(]][]]([(]()(]]())[][(]])][([)(]](])()())(][)([)([[]]][)(][])()(](](((([[](])(][(])]])(()((]))([]]][])([[][[[]))]())[]))][(]](([)([)][)[])[()([)[[[])))[[][)()])()([[())][][][((])]))]()]][[[)]])([][()(()())]()())]][]()((](][](([()[(][[))()([](](]]])(]())(((]]))]])))())]))[]][][[]))[][)[()[[(][)]([[]))]]]()(([([)[(]]))))][[])[)[[)[)([)][[()[[][(([[()[[([]()))][)[()))[))]]]([(][[][[)[])[[)])]))](([)]]][])))][][([()][[()[(([((]()(()[])][[[())](()[()[(][((()])(][)])[([)[[))[[)]([)[)]]])([()[][])[)[)[))[[(([))(])(()(][(()][[[)[)[[([[)[(][)[))]])[[)]))[()(]]((()][(()[])][)([)()](]()([([[(][]]))()]((]][(()[]][(]([)([]((]())()][(]](([([)()[(])]](])])(]))[)]]()([])][]]]))()]([)][](]][)[(())(]]]]([([))[)[[()](][][[(]]][]])])[)()))][)())](]][[[())[]]](((()(]))(](]]])[[]])(((]](([[][((])]()[[]()[]](()[(][(]])([[][[)]])[]])([[[[[()]]]]](]([)][)][([())))([])]][](](([[]([[([)][(][[[[[[(((([[])[][)()[][]()(][)]](()])][]))[]()[[())())][]())]]([[))()((]](()]])[([)[([(]()([[])[[])))))([(())[]))[)([((]([]])]])([()[[[))[([[[[(][[)(][]])[([([]](())])[][)]]]([(])(]][)([(((()[]])[[[]([)])]([[)([[][]()))](([]([][]])([)([[[(][()[[](((]))[()])(([)[)(][[[[(()[(])[((]]([[[(]([[()[]]()(]][])](][]][[](][]((()()[()([][](](([([[)[]](]((((()])))()(([](()[]]]](()([))))(([))])[[[()(]((]])([])((](]))[]([]])][[[])(])]][()()()[[[(]([])])[(][[[]([[)))))]]]()]()()]](][])[)()]][()([])([([())))[(([)][[[[][][[)[)[])]])(][)(])])(([]](]](])(]][])[][(((]((([]]](()([[)([)())][[(])[)))()[()()[(])[]]](()[][]])()[[))][()(()))[][((])[)[][(])][(]([](((]]](())])([][][]])))[[)[](]][)))](][]]()(]]([((]]][[[[()(((][][][)[](([]][](]][[()[)[[[[[[)]]])())[]([((])()]()](]][(]()]([)[(([((])()]([)[)[)[)][][[]][[))[((]])])]()))(([)][((([[]])()])]()[])]]()([]()[)]((([][[()])(][]))]]](]]]][[(()(())[))[)]((()]((]))]()(]))[[(]][[[[(([](]])[))()))]([])](([)[)(([)[]](]]]((])])])([[[[[()(]([[))]()][[[)[()(])[[[(]][[)((])])[)][]((()))(][]([[(([]([][][]))((])))[[))]])(([)]()])())()()]([[(())(()[((]])[])[)[][[([([(]]((]]()]]])((]](([)[(])]][[[[()(]])[[))[[)(()()))])(()[]())[[[][[[[(()([[)[])])[([([([[)][(([][[[[)](])(([[])](((]](]]([)([[(((](((([)](](][()[](][]))([)[[])[[])))[[)[][[]))[])[[(]]][[]])([[[(][(()[)(()((((])[]][(()]()[]([]]]))([))][))[]](())()(](]((][()([([([)](([[(](())((])(()][]()])[([)(])](])()[)([[][[(())]))(](]][]])[[)[[][[[[]][()(((]([([(()]))[]([[))]))(())((((](([(]])[([(([](][]())((]][([[]]([[[](]((]]])[)[]([(]]((]]()])][)))[)))]([[[]]))][))[])))(]()([]()[)[)))([[(][[(]][()(](([)([()([[))]][]))(]([((([)]((]]((((]))[(])])([[[[[(([[](]))[)](([]][(((][]]((])(((([)[]))]()]]([([]][[[()]([](()[])((]]()[[[))[]]()[([()[)())())])[][(([)[(()][)]]]()[)]((()[()][())(]()))])(][)]((([][)[]][)][((((][([[))[(])(][)[[[()(]())]([])((]]([](]]][[))]])][(]][]])])[[([())](]]]))[(([))[)))[))(([])))[(])()]]([)[))))[)])))([)[(([[][()])(((()[)[))())([[])][())[)[(]])((]()[[[]([(])([(())[([)[[]()([)[(())])[()[]])((()][[[)]]([))(([((()][[[]]]([]]]([[([](()](])((]][)[((]][][(][)(][])())]()]])]](][]()))[][]][)[])(])]](([()][[)[(([)[[](((]((([]()(][](](])]](][](()[][(][(())))(]]([]()][)]][)[))(][[[))]()([)(]))[][()(]((((](]][[(([)))][[[()[]])))()])[]]]][([(([)]((]][[)[)[(])[)[(]([]([]([((([((]][))[[)[]]]((])(])(([))(][))[])]((]]()())]]][]))([))])]))([)[])]]]]][([][([([()][][(()()))))])[[]()[][])(]))))[))[))(][[[[[](]]])[(([[])[)))[([))([))(]]())(](()])((][()[([(])]][]][(])])()([())(([)[([[)]])[](])(()][[[)[[][[())]]([)]]][[)[])()[])))([]])[[))[)((]]((])[)]]((][()[]]([[])))((]]][]]([]([)[(()[[[)())()[[])]][)]([(()))[][)()[)][]]][[[])[])[([((][[]]))][]()[][(])([(()([[[)[]]([))]())[)](][]]][[])]])])[(()[]]]][)[(((][(][]))()])])[[)]()(])](())((])[]))[[([)))(([])))(]][[[)[[][[(]])(](](])[)[)[())[[][]][[]([())][(]][)[[[)]((]))((([)[]][)][][]][[))][]]))(][([()[[[][((][()[()(()[)[]()))]([]([)()([[[[)[[]])[(])))[[[(]]])()[]((]])[][[(][][][([[)])([](([)][]])(]]([])])))])([[[([](]]])[]]([][(])))((([]([]](((]([[()()[][[[))(])))](])[(()[][][])(())]])]]])(])]][)]))(]]][][([)][()[(])[()([]])]()])(((][([[[[[[)][(][](]))]]][()]]]]()]([[]][[[))[]())])[(]]]]][(](]][])])()[[)[][]]([)(][]][(()(][()]([(])](](][[))[[))[([[]][([()[(()[)]])[()()))])](])(]))[)[)(]])[]][[()][]([)][(][]])[([()][[]][[([[[)[]((]()](])])])]](]]))(]]]]](])(])([][)[[])())()]([])(]])][([()[]([([()(](](]]([]()([(]])[)]])[])[(]([[[])[[)[()(][]([]()]))(]](]))(([()()[))([]))[([[)(][]]((](][(])]]]()])]))]])])[])[)]()((((()])([(][])()]])]](]][[()[][)[])[))(([[]()(][)(]())[([()))((([)](][[)[()[]))([)[])[((]([(([)))]])(())]))([)()[[]](]([][][)])[]]])[)](([)[([][())]([][[](([(])[[(())])[[][])[())[()][[)(][])[[]]([[)])[[]])[[][[[]([))[[(((])(()()[)[[]))((][](]]])([)][](](]])]()]()[)(](])[)]((()](()](]](]]()]]]()((])[()][[)[)])(](()[[]()((([[))][(])[[)]()][)])[][(])(]][)[[([)[([)((([(][()))(([])(][[]]()([)[((]][])](]](][](((][((([](]]](][(][]))[][]]][(([()(])[[][[[[[](()()]]()))[))[(][]([[]][)))]()][())(((]([(][)[](])](()(])][()())[()])(])][))[)([]()([]]()([)))[(())))]))(]))[([[()[)]()((]))][([)))(([]([()([[])]([((()([)))]([[]([[[)](]([())([[(([[[[)]([[)[]]]([]]((]][)([[([)][[[)(](][)))[[]))(]])([([)(]([([([[((]]()[()]()]])()))]))[(])[(]()][[][([[][)[[((())]](((])]])(][)[[[[][)][)[)(])[[))]])[([])][(][]]([))[)[(](]]((()[()([[[(([[[])][)[[])]][](][[]([([[)])(])((]])(]]](([[[([)())([)(](([)(])((]((([])[)](]])(]([(]()))[])[))))]((]]((([((]][)]]]]][])))(([()]))[(()][[))([][((]](]([(]]]((])))(()]))())[[))))[)]][])((()](][([)()))]]))((([][)]])[[(]]]([)()()[(([))]]]()[()))][]]]])([]([((]])[[]()[())())[([[])[]]])[)[])(](]])()(][(][]))()])([[(])(])]([][[[)(([[((([))]]]((][)))()((]][](]])([)()][]]))[[]][))[)]([]]]([()][)()][([(]((([])]()((([[))[([(]][])((]])(()]))([[()][]((]()(][]]][]]]]]((])[([[()[][]][([](]])][)((][](][([(()]()[])]]]((]))]]()]]()))]()))(]]])]()))()[[[[(([]]][]][(](])([)([([)[)[](][][([()]]][)()([]](())]][[][[[()[())][[]][)]])(](([(]]((]][))()[([)[)]][()[)()[((()()[([][))))][(]]]](())](])[)()])((()([[[]][])[)())()))((]([()])]]])][[()]))[][]([()([(([[]))()])][)()]])[)]]])]])()[[])))([)(]])]((])(])[]])](([[[]())())]]]]()))])[()([][([]])([[)]][[]))[())[)(]([(][[()(([((([]][)[)))][)[[((]))[[][()(]]][)()[)()][([))[]]])))[)[)((((()(]][[[][)(])))]([([()[([[)](])[)[[]))]])[)[()[])]])()][)](]])([)]))])[])(([][))))[))][]][)()])][]]()](([([[(]]))([[)[([))])([[[]([[)()])[(](][()])((][([])[))[[))[[)]([]()))[))[(]]]]][])](()][([)[])]))])[(((])])([[()(][((][[][])]([))][((]][([[[[(])[])])[))([][[])[]))[][([])][)]](](]))](()[[)]]][][[])][(())]]][[)()(([[]())[)[(])[]()([[(([()))]()[[]]](])][]]()[])]][[([([(]()(([()(([[]]])[([()[()()[()]([([((([])]([(])[[)([[[[([))][)[()[((][][)[[([[)[](((()(][[][[)[]))[()[([()(]([(][((([])]()()))()][)))())[)][)())[][[)[]([)])))[)(])]([[))[][][]((][][)(((]]([]))()((](])(])()))()](((([](])([(]]][]([)[(]([()][(((()()]][)][[))[]][]]()]))(][[(()[](]([[([(([[())))([[[([[)](][(]]([[))(([])(())(]([([](]]]][][))[(]][]()()((][[)((([[)[[[[((([)][))())[[]]](()])[(([[)])[((]))[](]]]](](()[()[[]([[[)[(]()()[[)]]()[[]))[])][[]][)()])))([]([(]])()])))(()])(][](([)])[)))(]))[)(((([))])[)][](]([]][))(])([)[][](])(][)[([(()))))[[([]))(][[(][])[)])[))]([))()])[))()(()[]([]]((()[((])[)()][]([)]])[][]][(](])((]([)[[[])(([[(()][]][][(([])[((([()][]([()[)]]()()[(([[[]]]]][)([][)[))][](])](]))(])]())[]][([[[[][[[(]))[))]()]([)]][()))[[(()(()))[]][[[)(([(]][([(])][]([[[[[[)[[]))])[]()]][)))[(])[()])[[)[[(](])]))]()(([]])[[(([])[)(]())[)(()[[]])([[][([[[())()]])))[))[[)[([()[]][)[][[)[([[)])]](]([])([))(]))[)(()]])[][([[(())))][(]([()))[[)]))[[)[]])]]())(([[[(]()[[)(]())[[[))]([)([[][][])))()([[([[[[[(]]])()[[[[])]])]][)][]]([][[])[(])[[[[]))][]([))([((][]]][)(()()()[[)))])[]][[([(())](][]])(]()))))[(][][][(]])([())]()([][[[)[))([(])]][](]]]()([[([[[[]()[])][(((][)][(([[[(])][[((]))[[()[[()([[[)((]]]))([[]][[()[)[)[()][(()])[[[)(](])[]))])([([)[)[[)(][[)()[[[][[[[)[])[()(()))]([[)]](([][)[])][)[(([[[[[]])()])[[)[([([((((([)]()(]][[)[[)]][(][[[)][[)(]]]]))(])(](](])()[][[[[((][])[)[[()][[]]][((]()][]])][)]])[[)[[)][][)[)([[]]]](][[][[(([)]](()(([[)[][]]])[)])(](](])])])][)[((()[)([(()(([][((]])]((]]]][[]]()(())(][]]][[]()[[)[[(]])()(]]]])[)[()])][](((][((]))()(]()[)(]]]][]](()])]])(]]]((([()[[](((]())]](()])))[])][([]((]][()(][[[[([)][)(])[]([]()(])(]]]]][[((](](((]]]))]]([[](]()(][)](([][)]()])[[(]]([[[]]()])[[(([[[)]))]][)[()][)(][])](][[(()()[])]]][](((])[](][](()[)[[((](][])()[[)([](())[]][[][()[)))[(()([[[)((((((][[)(]])()[()[)(((](())[)]))(]])([([([])))))[[)])()([()[]][()]([][[)][[][([([[][[)([[)((([((])))(][[()[(])([[(][([)(()(([([]())]]](()()((][)()(])])(]])[))[][(())]())[((((]][()[(([)()[[))[)[((())(]](((]))))][)](]))](]()))((](()(]((](]))]]][[][([(](([)()][]](](][[)([(([])]([[]])])([)))))[(())((([([)(([()]())[)])][(])(()]]][)([()()[[([][(]]]](()])()(]])[)(][[[))()[]()([[(]())[]()()[[[)])(](])]]]])[()[()])(((([]])]((]][](][[(])])[)])]((((([]())(](()[[)[[[][)[]()[][[[]()((([)]](]])][])(()([]))()]))()])][]([()[(](([])[)[(][(()][()))[()[))[][)]]][)()](])[[]])[)[])([([[[[[([(([()]][(])))[([]([(())]([[[((])([(((((](])]()()[())()([)]()()[([(][[[)[(()))]]))([]()]]([]((][]]]](]][[[([[))()[[()[][(]](((((()]]][()[[)))]]]]()[]]]])](]]))]([[])][]))[]([(()))[)[])([[([([[[]]()([((]([[]]])([(]()]]([][[(([][(((][]([]()[]][)[][[)[)[][)][(])])[]]]]))))()))[[]])[()]([(([[(][]([[[]([][[)))])((])(([(()()](])[]][[[[]])])[)]))(())][)[(]]](()([)][][]]][])(([)(]]]]]()[[])]](([[(]]))[]](((([][])[](])]]](][[)](][[)(]()(])]])]([)[()[)[[])]]][()([))(][][)[[]()](])()[]()[]([[[[([])])]](][[][)])([])([(]]()])))]((](]])]))[][)()[])((][)[[[)[[)()))()(]()[(])))))][]]))()(]))]])[]()[)]]])))[][)[([(][(([)[)][(]])]))())((](]]([])([[])[]]([[]))(()])([]])])](](][)([(][(]()([)[[[])[][])[)][])[](]](](([])]])[]]([(()[]]][](])[[][(]]]()[([])()[()[[][([]]]][)[][)]][[)(((])])[]((([)])([[[(([](][(])[(])])[)[([[(()(](])(()([[))]]())[)])))]])[((([()))[[)[]][()(](()[]]())[[](]((]]()())([[]))[()[())[)[))]]]([[)])()[[])]]]))))())]()])((]((()](((](())[)[]][(])])]](([)](][][])()[[[)((]])]]]]([[)[)([))[[[[)[))[)(]]][)))[)(()[[)]))))[][([]])()][(]][)((()]]][))](([[((](()])[((()(]]([][([])]][()))][][[)((][)))(][]]((])[)[)(]][[]([)([](()(()[[[[]))]([(())(()([(])])]))]([()(([]()][](()]]])[[])]]()([[])(()([[[(]]]][[][)())))](())(]](](([()((]([][][((](([[)))]()[[]([][[)()[([]))][]]([[[[][[)()[(]]])([([])]])(]][[[(])((][]())]][)[(]))(()[(([))([()][])]))[[)[((]()[(]([(][(([[]([))(]))])(]((([()()[)]([[)][[)]][[[[[[[([)]])([]][][[]([])(([()()][])(][[(]]](])(]))([[))(((]]((](]))))[(]]][]](())((])([][[()()[(((()([))])](][()][)[])))))](([(]]([(()[](]][]([))][)[(][[)]](][[[)))(]]]([()[[[](]])][][(([[[(](]]()[[))[(]]](])([))[[))]]()])[(])]](](]())())(]]))][(([)[)]([)(][)))[[[(]])((]][[(((([[[]])](]]()]])]()(](())))]]]]])[)([]([[]])[)[))()])[))][[][([)[[[]]()][)](([((()((]()[[[)][[[(([([]])]]()]](][(]](([([]]([(])))[)]()[([[([][([()]()(])))][())[)[)][([((()(][]][]()([)(][[(([[])]]][)[[[(([)[]))]]]((])[[](]([()]((]](][)[[)))([[([)][[])))([)[)())](([)([[([])[[))(([)()[][]][[](([)([])[()(][(])(()([(())([([((())[(]()[[[())([][[((([(()()[[()[[[)[)[](([]((]]][)][]([(())()[)[))]))][())[(]]][[(([)))][][[[)[]])(]][[[)[[[[(]([(((]([][))])[(())[))])((())[[([)]](][[)[[[[[]([](][]]](][]]])]]]]]])]])[)[)([])(([)([[()[)[][[[)((]((])])][(](([]][[([([][([([)((]))()[[]]])[]([[)((]()[(([([]((()[)[)]]]](]((([[[[))()()][(]]()([(]])(])[))([)(()()])([[()[)([)[][[)][[[[((][()]](((](](])]))((([)[((]]]]][[))][]))(]([[()[)((())([))()]])(][)]])((][[[)))][])(((()])()])[][[)[((([[][(][(])][ (((((((([(((([[(((([(([([([[([[((([([(([([([[((([[(([([[[[[([[[([(((((([([([(([[[([((([[([[[((([[[[([([(([[((([[(((([[[[[[(([[([((([[((((([(([(([[([(([[[[([([[[[[([[(([([[[((((([[([(([[[(((((([(((([[[([((([([((([((([(((([[[([[([((((((([([(([([[([[((([[[[([([[([[[((([(([[[[(([([([[([[([((([[[[([[[([([([((((([[((((([([[(((((([[(([(((([([([(([[((([(((([[[([[[([[([[[[((([((((([((([([[[[[[(([[([[([[[([[([(([[[([[([([([[[[([([[([[([((([(([[([([([[(([[([[([(([([(((((([(([[[[[[[([((([((([[[([[[(([([[[[(([[[[([(([((([[([(([(([([([(([([(([[([[([[[[([(([((([[([[((([(((([(([[([([([[([(([[[[[[[[([[((([(([(([[((((((([([((([[[(([([[([(((((([[(([[([[[(([(((([[[(([[([[([[[((([[(([(([[((([([[[(([[((((([[([([[[([(([[[(([[[[([(([[([([[[[(([[[(([((([[(([((([[[([((([([[[[[(([[[[((([(([[([[((([[[([[([[[([[(((((((([([([([[[([([[[([([(([([((([[(([([[[(([(([((([([([[[((([([[[((([((([[[[([[([[[([(((((((([[([((((([[[([([(((([(((((((([[[(((((([([[([([(([[([(((([((([[([([([((([(((([[([([[([[([([([([([([((([[([[[([([(([([([[[[[([((([[([([((((((([[([([([[([[[(((([[[([[((([[(((([[[[[([(([([[([((((((([[[[([([([(([(((([[((([(([[((([([[([[[(([[(([[[([([[([([[(([[(([[[[[(([[(([([[[[[(((((([[[[([[([([((((([([((([(([([[[(([([[([([(((([(([([(((([[([[[[[[((([([[([[([([([([[(((([(((([([[([([[((((([[((([[[[[[([[[[([[[[[[[[[[[(((((([(([[([([(([[((([[([(([[([[((((((((([[[((([((([[[([[([(([(([[([(((([[[((((([([((((([[[(((([(([((([(((([([([(([[[[[[([([([[([[([[[([([([[([[[(((([[([([[[[(([([[[[([[(([[[((([([([[((([[[([[(([[[[([[[[(([(([[[([([[[[([((([[[((((((([[(([(((((([[[([([[(([([[(([(([(([([(((([([(([[[[([([(((([(([[[[[(([(([([([((([[((((([(((([[[[(([([[(([[([([(([[(([(([((((([([[[([(([((([[([[[(([(([(((((([([([[([[([(([((([[((([[[(([([([[[[(([[[[([[([[([[[[[[[[[[[[[(((([(([((((((((((([[(([(([([[((([[[([([[[(([((([[([[(([([[[[(([[[(((([(([[([([([[[[(([([[([[(([(([([[([([(((((([[[[[([((([[([[[[[([[(([[(([[[([(([([(([[([[[[[([([[((([([[([([[[[[[[([([[((([[[((([[([[[((((((([[(([[(((((((([[[[[[[[([(((([[(([(([[[([([(([([([([[[[[([[([[[[[[[[[[(([(((([[([((([[[([(([[([[([(([[[(([([([([[[[[([(([[(([[[([[([((([([(((([[(([([([(([[([([((([([(((((([[([([([([[((([[([[[[[[[[(((([[([[(([[(([([(([([[([(([(([([([([[[(([([[(((((([([[([([([(((([([[([[[[[(([(((([[(([(((([[[[([(([[[[((((([([(([[((((([[[([[[(([[[[([[((([(([[[((([[[(([[[[[(([[(((([[[[[(([([(([[([([[[(([[([((([[[[[(((([[(([[(([[([((([([([[[(([[[[[([[([[([[[[[[[(([([(([[((((((([[([(([[([[((([([([(([[[((([[[(([[(([[([[([[[(((((([((((([[[[[[[(([([[[[[[[([([([((([(([[(([[[[[[([(([[([[(([[(([(((([((((((([[(([[[[[([([((((([(([(((([((((([[(((([(([((([[[[([([[([([[[[[[(([(([[[([([[[((([[([(([[((([[[((([[[(([[([(((([([(((([([([(([((([[[((([(([([([(([[([([[(([[([((([(([[(([[[((([[[([[[(([[[([[[([(([[[([[([([[[[((([((([([(([((([([((([(((([((([(([([([([[[[(([[(((([[((((([(([(([([([([(((([[[[([[(([(([(([((([([[(((([[[([([(([((((([([((([(([(([(([[[[(([[[[[(([([[([([[[[([([[[[([(([[([(((([((([(([[[[[[[([(([([[[[((([[[[[[[[[[[[[[[([([(([([([[[[([((((([[((([[[((([[(((([([(((([((((([[[[((((([[([[(((([(([[([((([[[[[((([[((([([((([[(([[(([([[((([((([((([([(((([(([([(([[[(((((([[((([(([((([[((([[[(([([[[[((((([(([[(((((([[((([[(((([([[([((([(([((([[[[[[([[[[[[((([[[[[(([(([[(([(((([(([[[(([((([([[[([([((((([([[((([((([[[[(((((([[[[[[[([([[((([([(((([(([[[[[[([[[((([[((([[([[((((([([([(([(([([((([([(([[[[(([(([[(([[(([[([([[(([[[(([[[[[([[[[(([[([([([([([([[[[[((([([[([[([([[([[([[[[((([((([((([([[((([[[([([(([((([(((((([[[[[((([[[([([(([[[((([([[([[([(([[([([[[(((([[((([([[([[([[((([[[[([[((([([[[[([[[((((([[[([[((([(([[[[[[((([[[((([([[[(([[[((([((([[[(([[(([[[[[(([[[([(([[[(((([([[([[(([([((((([[(((([([([([([((([[[([(([[(([((((([[[(([[[[([[([[[[[[(([[(([(([([[([(((((([[[([[(((([[((([[[[[[([(([([[((((([[(([[((([[([(((((((([[[([[(([[[([(([[([[([((((([[([[([[[[([([([[(([[((([([[[[((([((([[[([([(((((((([[[[((((((([[[[(([([([[(((((((([[[[([((((([[[[[[[[([[([[([(((((([[[[[([[([[(([(([[[([[[(([((([([[[([[[[([[((([((([[([([[(([(((([(([[[([([([((((([([[[[(([[[[([([((([[([[[[((([[[[[(([(([[([[[[((((([[([[[(([([[[(([([([((([[[([((([(([[(([([(((([([[[[([(([[(([([([[(((((([([([([[[(((([[[[([[([[(((([[([[([[(((([[[([[[[[([([(([[(([[([[[[([([([[(((([((((((([[[[[[([[[(([(([[((([(((([(([[[(((([[[[(([[([([[(((([[(([[[([((((([([(([([([([(((([[(([([[[[(([([[([[([[([[[[([[[[[([([[((([[[(([(([[[[[([([([[[(([[([[([[([[(([[[[([[[[[[(([([([[[((([([[[[[(((([([[[([[[(([(([[([([[[[[([[[[[(([(([((((([(((((([[([[((([[[[([([[[[(([(([[[[[[[(((([((((((([([([[[(([[([[(((([[([[(([([([[(([([[[((([[[(([([[((([[([([[([((([(((((([(([([[([(([[[[((([([(([[((([[[[[[(([(((([[[[[[[([[[((([[((([[[([([((([([([((((((([([[([[([[([[(([[[(([[[[([([[((([[((([((((([((([(([([[([[[((([(((((([[([[[(((((((([[(([(((([([[[[(([[([[[[[([[([(((([[[[[([([[[(((([[[([([[(([[([(([([[[[(((((([[((([((([([[[(((((([[[[((([([[((([(((([[[[[[((([([[((((([[([([(([[[[[[((((([[(([([([([(((([(([([[([[[([(((([([([[([([(([[[([(((([([[([([([[([[([((([((((([([(([[(([[[(((([[(([[([([[[((([(([(([[([[([[([[([((([[[((([([[[[([[[((([[[[[[([([[([[[(((([[[[(((([[[[[([[([([[[([([((([([[((([([(([[[([[[[([((([(([(((([[((([(([[[[[(([[[[[[[[((([[[(([[[[(([[[[(([[[[([[([([([(([[[[[((((([([(([[(((([([([([(([([(([([([((([[[(([(((([(([[[[[(([[[[(([[([((([((([(([[[[[([[([[((([[[[[[(([([[[[((([([([([[[([[[((([([([((((([(([[[[(([[[([(([[(([[[([[(([[([([(([(((([[((([[[[[([([([[([(([(([([[[([[[[([[[((([[([(([(([[[[([((([(([[[[(([([[[(([((([[[(([[[[(((([(([[([[(([([([[(([[((([([([([[[([(((([[(([[[[[[[((((([[([[((((([[[([[[((([[[([(([(([([(((((([[[[[((([[((([[((([[(((([[[(([(((([[[[([[(((((([([(([([[[(((([((((((([[(([[([(([[[[[[(([([[([([[[[[([[((((([[([([([[[[(([[(((([(([([[((((([(((([[([([[([(([((([[(([((([([[[[((((([[(([[[((([(([[[[[(([[([([[((((((([((((((([[(([((((([[([([[[((((([[[((((([[((((([[[(([[[([[[(([[((([((([([[[(([[([(((([([[[(([[[([([([(((((((([([[((((((([(([[(((([[([[(([((([(([(([[(((([[[[([([[(((([(([[[[[[(([((([([[[[([((((([([[([[[[(([[[(((([[[[[[((([[[(([([(((([(([[((((([([[[((([[[[(([[[([[[[((([[[[([[[([(([([[[[[[(([[[[[((([[([(((((([[[([([(([((([[[[(([([([[[((([([[[[[[(([[([(([([[[[[[[[([(((((([(([[([[[[[[[(((([([([([([([[[[(([([[([([([[[[[[((([(([([([(([[[[(([((((([[[([[[[((([([[[[[[([([([[(([(([((([[[[([[([(((([([([([[[[([[((((([[[([[[[[((([[((([((([[[[(([(([[((([[[[([(([(([([(((((([[[[([(([[[([((((([[[[([[[[([([((([[[[[[[[(([([((([[[([[([((([[[((([[((([(([[(((([([([[[(([([[[[[(([((((([[[[[([[[([[[[[[((([((((([[(([[((([([[([[[[[[[([[([(([[[((((((((([[[(([([[([([[((([(((([[[[([[[(([([([[([(([(((([(([[(([(([[([[[[[[[[(([[[([[[[[[[[[[[([[[([[([(([[([(([[[((([[[[([[(([([(([[(((([[(([([[(((([[(((([([([[(((((([[(([[([((([([[[[(([[([([([[(((([[[([[([(((((((([([((((((((([([(([([[[(([[(([[((([([[([(((((((([([[((([([(((([(([[[([(([[([([([[[[([([(([((([([([[(([(([[[[([(([[([(([[(([(((([[(((([(([([(((((([([[[((([[((([((((([[(([([([((([[([[[[([([([([(((((([(([([[([[([(([(([[[((((([((([([[[(([([[([(([(([(((([(([((([([[([[[[((([[[[[[[[([[([[(([[[((([(((([([[[[([(([(([(([[[[((([[[(([(([([(((([[[[([(((([(([[[[[([([(([[[((([([(((((([[([([([[[[([[([(([[([[([[([([[[([[[[[(([[([([[(([[[((([[(([([[[[(((([[([[([([[([[(([([[[[[(((((([[([[([(([[[[(([[[[(([([([([[((([[([[[[[[[([[([[((([([([((([[[([([(([([[[([[[([(([([([[([(([([[[((([[([([((([[[((([[[([[[[[[(([([[[[[(([([(((([(([(([[([[([(((((([[[((([(([(([([([[[([[([[(([[([((([((((([[[[([((((([([[[([((([([([(((([((([[([[(([[[[[((([[[[([[[([(([[([((([([[[[([(([(([([([(([(([[([[([((([[[[((([([([[[[[[(([(([([(([[(([[[[[([(([(((([([(((((([[[((((([([((([[([(([([(([([([[[[(([((([(([[([(([[[([[([[[[[([[[[[[(([([(((((([[([(((([[[[[[([[(([[[[(([[[[[[([(([([([[[([[[[[[[[(((([[(([[[(((((([(([[[[(([([([[((([[(((((([[[(([[[([[([([[(([([([(([[[[[(([([[(([((([[([([(([((((([[(([[(((([[(([(([[(([(((([[[[[(([([[(([((((([[[[((([((([([([([([[(([(([[([((([(([((([([(([[[((([([[[[[[[([(([((([[[[([[(([([([((([(([[(([((((([[([([[[[[(([([([([([([((([([(([[(((([((((([([([([((([[([((([(([([([[[((([[(([[[[[[[([([[([(([([[[[[[([[(([[([([[[([([[([[[[[[[[(([((([(((([([([[[(((([([((([[[([([([[[([(([((((((([(([([[[[[[[[([[(([[(([[[[[(([[[[([[[[((((([(([[[((([[[([((([[[(([[([((([[[[([[(([[[[[[[(([[(([([[[([[([[(([[(([([[(((([([([[([[[([[([([([[[[([[([[([([((([(((([[((([[[(((([[[(([([[[([[([((((((([([[(([([[([[([[([([[([[[[[(((([[(([(((([([[[([(([[([[((((([([[((([([([([([(([[[[[[(([(((((([(([(([([[([([[([(([[[([[((([(((([(([(([(([((([[[(([[[[([((((([[(([((([([[((([(((([[([[([([([([((([[[[((([[[(([([[[[[((([[[[[[[(([[[([([([[[[[(([[(([[(((([(([[[([[((([[[[([(([[([((([[[([([((([([((((((([([([([[[[(([((([([[[([([((([([([[[(([[[(([([[[[(([[([[(([[[(([([[[((([[([[[([([(([([[(([[((((([(([[((([[[[([([(((([[[[((((([[[([([([[((([(([([(((([[([[([[(((((([((([[(([[[[([([([[(([[([([((((([[(([(([[[[(([([(((([[[((((((([[(([[([[(([([[[[(([([[[(([[[[[((([([(([[[[[([[[(([[([[[(((([(([([(([[([[[[[[((([[((([[([[(([([(([([[[([([[([[([[[[[(([([[((([(((((([(([[[[[[[([(([(([[[[[[([(([[[[[(([[[(([(([([([(([((([(((([[([[(([[((([((([(([([([[[[(([[[[[([[(([[[(([[((([[[[((([[[(((([[((([(((([[[[(([[(([(((([[(([[[[((([(([([[[[([[[[(([([(([[(([([([[((([[[(([(([[[[((([[([([[(((([[[([[[(((((([([((((([[[([[(([[(([[[([[[[([[[[([[[([(([[[([[[[([[((([([([([([((([[([([((([[(([(([([[[[([([[[([([[[[[(((((([((([((([((([([([[([([[[[((([([((((((([[(([([[([[([((([[([[([[([(([[[[((([[[[(([(((([[([[[(((([([[[[([([[[[[[[[[[[(((([[([([((([([(([([((([([([((([([((([[[(([[[(([([[(([([((([[([(([[((((([(([([[[([((([[[[[(([((([([(([([(((([[[[[([[[[[((([[[[[([([((([[([[(([[([[[[[([(([[[[[([[[((([([[[[((([([[[[[(((([(([(([([[((([[[[[([[(((([(([([[([[(([(([([[((([([[([(([(([[[[[((([[[([([(([[[((((([[[[([[[[(([[[(((([([(([[(([[([[((([[([[(([(((([[[([[[(([(([((((([[[[[[[([([[([([([[(([(((([([([(([([([(((((((([[([[([(((((((([[(([(([[[[([([([[([([([(([[([[[[([[([((([((([((([([(([[[([([[[[[(((([[((([([(([([[([[[(((((([[([([[(((([[([(([((((((([[([[([[[([([[([[[[(([(([[((((((([(((([(([([(([[[[(([(([(([[((([[([[(([[[[[[[[(((((([([[([((([[(([[[[[[(((((([[([([[([[([[([[[([[(((([[[(([([([([[(([([((([[[([([([(([(([(((([([([[(([[[((((((([[([[(([[([[[[[([(([((([([([(([([[([[[[[(([[([([[((([((((([[(([[(([[([([[([((((([([[([[[((([(([[[(([([[(([[(([([([(([[([[((((([([(([(((([(((([[[[(([[[[[[(([[(([([[[[[([([[[[([[[[((([[[([([([[[[([([[[[[[((([((([[(((((([([[[([[(([[[[[[[[[[([([([(([([[[[[[(([[[(([[([[(((((([((([([[[([([([([[[([(((([(([([(([[[([([(((((([[[[[[([[[([([[((([([((([(([[([[[[[([([[((([((([(([[[(([([[[([([((((((((([[(((((((([[[[(([(([[[((([[([([([[[[[([[([[[[(((([[[[[[([([(([[([((([[[((([[(([([[([([[[(([(([((((([([(([[[([(([[[[[([[[[[[[([((([[(((([[[[(([((([([[[[((([((([[(([([[[[(((([(([((([[[(([[((([[(([(([[([([[([(([(([((((([[[([[([[([[((([([([[([[[((([(([([[[[[[([[([((([[[[[[[((([[[((([[([[([[(((([(([[[([[([[[([([[[(([[[[[[[[(((([[([[(([([(([[([([[[[([([[[[(([[[[[[[[[([[[[[[(([[([(((([[[[[([[((([([((([((([[([(([([[[[([([([([([(([[([[([(((([[[(([([((([((([([[([[((([[((([[([([((([[[[(((([[[([([[([((([([[([(((([[[[[([[[([((([((([[[[[([[([[[[([([[[((((((((((((([[([([[([([(([[([(((([[[([([(([(([([[(([([[([((([[[([(([([[[[([[[(([(([[[([(([[(([(([[[[([([([[([([([[[[[(([([((([[((([[([[[[([(((([[(([((([[([(([((([([(([[[(((((([([(([(([(([[(((([((([[([(([([((((([[[([[[(([(((([([[([((([([(([([[([([[[[([[(([([[([((([(([(([((([(([([[[[([([[[[([((([[([([[(([([[[[([([([[[[[[[[[[(((([([([(((([[(([[[([[[([([[[([[([[[[([[((((([[([[(([(([([[[(([[(([(([[[(([(([(([([([[(([(((([[([[[[[[[[(([((([[([([[(((((([[[((((([(([([[([[[([[[[((([[[([(([[[[[([[[([((([(([[[(((([(([[[(((([(((([[([[([[[([(([[[(([[((([[[(([[(([(((([([[(([[([(((((((([[((([[[[[[[[((([[[(([[(((((([([[[([[(([(((([[(([(([([[[[[[[[[([[[([[(([[[(([[[(([[([[([[[[[((((([[([[([[[([[([[(([[[[(([([[[[[[[([(([(([([[[(((([[((([[([[([([[([((((((((((([[(([(([[[([([((((((((((([[[(((((((([[[([[[[([((([[([([([([(([[[([((([[((([([[[[((((([[([[[((([[(([([[([([[[([([(([[((([[[([[([(([(([([[[[[((([[([[((([[((([[([([[([([([[[(((([[([(((([([[[(([[[(([(([([[([[((([([([[([([([(([[[[(([([[([(([[[[(([(([[[[((([([([([((([([[([([[[([([[(((((([[[[(([[[[(((([([([[[[[[[[[[[([[[[(([(([[(([([(([[([[[[([([[([[[[[[((((([[[[(((([([[([[((([(([[[[(([[[([[[[[[([[([[[(((([((([([[([[[[[((([(((((((([[[([(((([[[[[[[(([([([[([(([([[([[[[([[[[(([([((([[[[[((([[[[[(((([([([[([(((([[[((((([(([([[[[([[((([(([([[([(([((([([[[([[(([[[([[(([(([[([(([[[([([[[[[([[[(([[([([[(([([[(((([((([[[[[(([((([[[[[([[([(([(([[[[[([([[([(([([(([[[(((([([[([[([([([[[([[[(([(([([[([[([[((([(([([([[[(([((([[[((([[([([[[[([(((((([(([([[[[[[[[[[(([[([([[(((([[([([[([(((((([([(([((([([((([[([[[((((((([[[([([([((([[[([[((([[((((([(([[(([((([([(((([[[[[[[[[(([([(((([([[[[[([([[([(([[(((((([[(((([([(([[(([([(([((([[([[[[((([([[[([(([([([([[[[[[[(((([((((([[([(([[((((([([[[(([[((([[([([(([[([([[[[([([((([[([(([([([[[[[([[[([((((([[[([[[([((([[([(([(((([[([([([([[((([[[[[[(([([(([[((([((([([([((((([[[[(([((([[[([[([[[[[([[(((((([[[([([([([(([[((([(([[([[[([[((([[[(([[[[(([([[[[([((((([[(([[([([[([[[(([[[[([[[[[[[(((([([[([([[(((([[[([(((([[([[([[[([(([[[[([[([[[(([(([([[[([(([[([[(([([([[([[(([[[([[[[((([(([[[((([[[([([[[[((([[[[([((([[([([(((([[[(([[[(((((([[(([([[[[[([[[((((([[[[[[([([[((((([[[([[[[[(([[[([((([[[((([([([[([(((([([[[([[[[([[((([([(((([(([(([([([[((((([[[[([([([([((([(([((([[([([[[(([(([([[[([((([([(([[[([[[([([[(((([[[(([((([((([[[[([(([[([([([(([([(([([[([((([([[[([([[([(([((((([([[((([([[[(([([([([([([([[((([([[[([((((((([[[([((([[[[[([([[[(((([(([([([((((([[([([[[([([(([[[([[[[[[([[([[[([[[[[([[([[(([((([([[([[[[([(((([[[[(([([(((((((((([[((([(([[(([[[(([([([[[[([([([(([[(([[([([([(([([[((((((((([[[[[([[([([(([[((([(((([([([[(([(((([[[[[[([[([(((([(((([[([[([(([[(((([(([(([([[([[((((((([(((((([[[[[[[(((([[(([[[[[((([([((([[[[([[([([[(([((([((((((((((([[[(([[([([([[[[[[([[[[[[([[[(([([[(((((([([[((((([[((([([[([[([[(([(([([[[(([[[([[[(([([(((([[((((([[((([[(([([[[((((([([(([[([([([([[((([([[([[[(((([[([([[(((([(((((([[([[([([([((([[[(([[([[[[[[[([([([([([[(((([([(([[[([[[[[[([[([[([[((([[(((([((([(([[[[([([[([[[([[[[(([(([[[(([(([(((([([([([[([[([[[([[(((([([([([(([(([((([[(([[(([[((([([([[[(([[([[([(((([(([([([([([(([[[([([([[([((((([[[((((([[([[((((([[([[[([([[([([[(([[[[[([[[[[(([(([([[([(([[(([[((([[((([[((([([[[[([[(((([[[([((((([([[([[[[([[([((([[[[[(([([((([[[[((([[([(([[(([[[([[([([[([([([([(([((((([(([[[[[([[[[[[([[(([[(([([((((((([([[(([[[[[((([[((([[([(([[[(([[[[([[(([([([[[[[[(([(([((((([((((([[[[(([([[[(((([[([[(([(([((([(((([[([([[[([(([[[([[([([[([[[[([[[([([[[(([(([([((([([(((((([[[[(((([[[[[([[(([[(((([[([(([[([(([[(([([[[((([([[[(((([[([([[(((((([[[[([([(([([[[[[[[(([[(([(([(([[[[([[[(([[(([[[([([(([[((([((([([((([([[[[[([([[[([[[[([[(((([([(((([[[((([(((([[[[([[[(([[(((((((((([[([([([[[([[([(([([(([[(((((((([[([[[[([[([[[([[([(([([(([[((([[([[[[([[((([([[[[[[[[([[([[(([([[(([[(([[(([([([(([([[((([[[[((([([(((([[(([[(((([([[([[[[(([[((([([[((([(([([[[[([([([[[(((([(([((([[[[([[((((((([[(([(([([(([([[([[((((((((([[((((([((([([(([([[((([((((([([([([[[((([(([(([([[[[(([[[[(([[[((([[(([([[(([[([[([[([[(([(([([[[[[([(([((([(((([([(([([([(([[((([(([[[(([[[([([[[[[[[(([([[[([[((([(([[(([(([(([((([[[([(((((([[[([[[[[((((([[[(([([[([[(([[[(([([(([(([([[[[((([((((([[[[(((([([(([((([([[(([((((([([[[[([([[([[([[((((([[[[[([([([[([((([((([[([(([[(([[((([([(((([[(((([([([[(([([(([[[[[([([[(([[(([[((([[[([[[([[[[[([((([((([[([[(([[(((((((([([[((([(([[[(((([(([[[[([[(((([(([[[[[[(([([[(([[(([[[[([[([[([((([[(([[[[([[[((([[[[[([[[([[[(([([[(([([([[[[([[[[(((((([([([[[((([(([[[[((((([[([[((((((((([[[[[[[[(([([([([(([[[[((([[([([((([((([([[[[((((([[[([[[(((([[[[[((([((([[((([[([([[[[[[([([[([[[[[[[(([([(([[[(([([[[[[(([([([[[((((([(((([((([(((([[([([[[([([([([([[(([([[([(([([[((([[[[[[[[([[[([[[([[[((([[[[([(([([[[[[[(([[((((([(((((((([[[[([([((([[([([(([(([(([(((([(((([[(((((([(((([[((((((([[((((([[[(([[[([[([[[((([[([(([([([((((([([([([[((([[(([[[[[([(((((([[[((([([[(([[([[[([([([(([([([[(([[([(([(((([((([[([((((([([[([[(([[[[([([[([[([(([[([([([[[[[[[((([([([([[[([([([[((((([[([[(([[(([([[(([[[(([[([(([[(([[[(([(([([[(([((([[(([[[[[[[[[(([([([(([[([[[((([[[((((([[[((((((((([[[(([[([((([((([[[[[([([(((((((([([(([[(([[[[([[((([[(([[(([([[[(([[[[[([(((([([[([[((([(([[(((([([([(([[(([(([[[([[([[[((([((([([[[(([[(([([((((([[([(((([([(([[([(((([([[[[[((([(((([((([[([([[(([(((([([[([[((([[(((([[[[[(((([[[[[[[[(([([(((([[[(([[([([[([([[(([[([[[([([[[([[[((((([(([(([(((([[(([[[((([([[(([[[(([([[[([(([[[(([[([([(((((([(([[((([((([[([(([[[([[(([([[([[[(([((((([(([[((((([[([(((([[((([[((([[([((([([[[([([(([((([([([(([([[[[([[([[[[[([(([([[[[[[[[([(((([[((((([(((([(([(([[((([[((((([[[(((([([[([[[(((([[(([[[(((([((([[(([[[[[([(([([[([([[[[((([[[[(([((([(([[((([[(((([([[([((([((([([([[([([[[[[([[[(((((([([(([[[([[([[[[[[[(([([[[([(([([[[[(([[[[([[((([[[((([([([(((([[[[([(((([[[(([[([([[[([[(([([[[((([([[(((([([([[([(([[[[[(([[(([[[(([([[([[[(([([(((((([([[([([([[([[[[((([([([(([[([([(([[[([[[([((((([(([[[([[([([(((([[((([[[(((((((([(([[[[[[(([[([([[[(([[([(([((([[[[[([([([([(([[([[[([[([([(((([[(([([[[([[([[(((([[(((([([([[[([[[((([[[[(((((((([[(([(([[([[[[(([[[[(((((([(((([([[[[((((([[((([((((([([(((([[[[[[([[[([[[[((([(((((([([([[[(([([(([[[(([[[[[[[[((([((((((([([(((([(([(([[[[[([([([((([[(([(([[[[[[([(([[((([[[[[([[[(([((([([(([([([[[([([[[[(([[[[(([[[[([[[[[((([([(([(([(((([[[[[[([(((([([[([[[([([[[([[((((([(([([[(([((((([(((([([(([[[[[[[[[[(([(((((([([([([[[([(([[[[([[[[((([(([((([[([[[[[([[([(([[([[([[[[((((([(((([[([((([((([[(([[((((([[[[[([[[(([[([[(([[((([[(((((((([[([[(([[(((([[[([(([(([([([([[[[[([[[[([[[[([(((([(((([([[[(([(([(([[[[[[[(([[[[(((([[(([[[((((((([[(([[([[[[[[[([[(([[([[([([[[[((((([([[[[[((([([[[((((([([([[[[[([(([(([[[((((([(([[[([[[[[((((([[[(([[([(([[([(([(([([([([((([((([[[[((([[((([(([[((([[[(([[[(([[([((([[[[[[[(([[((([(([[([([[(([[(([([(([[[[[[([[(([(([([([[([[[[(([(((((([[[[[(([[[(([(([[[(((((([([[(((([((((([[[([[[[[[(([(([[[(((([[[[[([([[([[[[([[[[[[[[[((([[[(([[([(([((([((((([(([[[(([[([((((([[([[(([([[((([(([[(([((([(([([[[((((((([[[[((([[((([[[(([[([((([(((([[(([([[[([[[[[[([([(([((([([[[([[[(([[[[((([([([[([[[[(((([[((([[[((([[([[([[([[[([[[[((((((([(([[[[([([([[[([([[[((((([(([[([[([[[(([[[[([((([[[[[([(([(((([(([[[([([([[[((([([([([[[[[[([[(([[([([[[([[[[([(([([[[(([(([[[[[[([[[([[([[[((((([([([[([((((([[(([[[[([([([((([[[([[[[[[(([[(((([((([([(([[[(([([(([[([((([(([((([(([([(([((([(([([(([[[[[((((([[([([[[[[[[[([(([((([[[[((((([([([([[(([[((((((([[(([[[([[[[[[[[([(([([([[([([[[[([[[[((([[((((([[[(([[[[([(([[[((([[[[[[[([[[([((([[[(([(([(([((([((((((([([((([[[[[(([[[[[((([[[(([[(((([[((([((((([(([(([((([[((((([[[[[[[[[[((((([[(([[([[[((([[([[[(((([[[(([[(([((([(([[[[([[[[[[[((((([[([[([([(([[[[[[[([([([([([[(([([[(([[[[[[[[[([[(((([[([[[([([[[[[((([((([[(((([[[((([([[[[(((([([([([([[(([[((((([[[[[([([[([([((([([([((([[([([((([([[([([[[[[(([((((([((([[((([[(([((([([[([((([([([[[([[([[([([(([((([[([((((((([[[(([([([([[[([[[[[[(([[([([([([[[[([[([[[[[[([[[((([[((([[((([(((([(((([[([[(([[([(([((([([([[[[([[[[[[[[[[[[[((((((([[(([((([[[[(((([([[[([[(([(([((([[[[([(([(([[[([((([[[[[(([(([[[[(([[[([(([[[[[([(([[[[([([([([[((([([([[(([(([[[[(([[(([[[([[[[[[[([[[(([[[([[[[((([[(([[(([([([([([(((([([[[[(([[[(([(((([((((([[([([[([(((((((((((([([[([[[[([[[([[([([([[[[([[((([(([[(([([([[((([[[[[([(([([[[(([[([([[[[[[([([[[(([[((([([[(([[[[(((([[[[[([[[([[([([[([[([[[[[[((([[([[(([[[([([((((([([([[((([((([((((([(((([([[([(([([[[(([([[(([(((([[([((([[[([[[[[[[(([[[(([([((((([((([([[[[[[([[[([[((([[[[([[((([([[[[[[[(([(([(([(([((([([[([([([[([([[[((([([[((((([[([[[([(([([[[[[[(((([[([(((([([[[([[([([[[([((([((([(([[([[[(([[[[[[([[([[(([[[[[(([[([[(([(([(([[[([([[([[((((([(([[([([(((((([[([(((((([([[([([([(([[[[([[(([([[[[(([[(([[[[((([(([([[[[([[((([[(((((([([(((((((([[([(([(((([[((((([[[[([[[([([([((([(((([((([((([[[[[[([[[[([[(([([([((((([(([[([[(((([[([[(((([[(((([[([([(((((((((((([((([(([[[[[((([[[[[([(([([([(((([[([[[(([[[[((([[([([[([[([((([(([[([(([(([(([([[[(([[[([(([[[((([([([[[[[[((([[[[[([(((((([[[[([((([([(([(([[([[[[[[([[[[[([[((([[([([([[[([([([(([([[[([[(([([[([([(((((((([[[(([[[([([([[([([([(([[([([[[[([[([[([[([[([([[([[((([[[[(([[(((([[[([[[((((([(([([[[[(([([([([[[[(((([([[([(((([[[[(([([[[[([[[[([[(([((([(((([(((([([[[[[[[[[[[[((((((((([(([[[(([[[(((([[([([([(((((([([(([((([[([[[[([[[[[(((([([[(([[[[[[([(([([(((([([[(([[[[([([(((([(((([[((([[([(([[[(((([(([([([[[([[(((([[([((((([([[[[[(([((((([[[[(([[(([[[[([[[([[[[[[([[([[([(([[[(([([(((((([[(([(((((([[[[[[[[[([[[[([[[([[[[([[[([((([(([([([[[([[((([([[([([[([[([[[([[[([([([[((([[[(([[[((([[(([[[([(([[((([([([([(([(([[(([([([[[[[[[[(([[((([[([[[[[[([([(([[[[[[[[[([[[(([([[(([((([[(([[([[[((((([((((([[([[([[[[([[[[((([[((([([[[([([(((([(([([[([([[[([[[[[[[[[([([[([((([[(([([([[[[([[[(([([[[[[[(([([([([[([(([[[[[([((((([[([[[[(((((([[([[[([([[[[[(([[[([[([([(([[[[(((((([[[(((([[[[(((([([([[((([[([[[(([[([[(([[[[[([([(((([([(([[[([([[[[[((([((([([(((([([([[[([((([[[[(((([[([[([[[((((([[[([(([([([[(([([[[([[[[[[[[[((([([[[[[[([([([[[(([([(([[(((([[((([[[[([([[[((([(([(([[[[([([([[[(([[([[(((([[(([[((((([[([[(((([([((([([([[([[[[([(([([([([[([(((((([(([([(([[[[([[(([([([[[[[[[[[[[[([(([((([([[[([[(([[[[([[[[([([(((([(((([(([[(((([[[((([[[[((((([[[[(([[([(((((([([[[([[[([(((([([[(([(([[(([[(([(([([(([[([[([([([[([[[[(([(([([(([((([([([(([[(([(([([(([[((((([[[[([([([([[((([[([[[(([(((([((([([([((([[(([[[((([([([(([(((((([[[([[([([([[((([([((((([([([([([([[([(([(([([[[[(((([([[[([((([[[([([[[[[[[[[[((([([([[[([([[[([(((((([([[([([[[([(([(([(([[[([[(([[[[((([[[([[[([((((([[[([([[([[[[[[[([[([[[[(((([[(([[[([[[[[[[[[([([[((((((([([[[[([([(([[(([([[(((((((([[(([([([[[([([(([[[[([([([[([[([(([(([[(((([[[((([([[([([[([((([[([[[[(((([(([(([[[[[[[([[(([[[[([(([[((((([([((([(([([((([([([((((([[[(([[([(([[([((((((((((([([([[(([((([((([[[(((([[[[[([([([[[([([([[((([([[[[[[[[([(([[[[[([[[([[(([([([[(([[(([([([[[[([[[[[(([[[([[[[[([([(([(((([([[[([[[[[[([[(([[(([[(([([[(([([[([[([(([([([[([(([[([(((([[[((((((([(([[([(((([[[(((((([[([[((([(([[[([((((([[[[((([([[([([[([(((([[[((([([([[[[[(([[(([((((([[[([[(([(([(([[[((([[[([([([(([([[(([(([[(([([[[(([(([[((((([[(((([[(((([((([([[[[[[[(([[[[[[[(([[[[((([[[([[([[[((([(([((((([((([[[[(([(([[[(((([((([([((([(([[[([((([([[([[([[([[[([[[[([[((([[([[([([[[[[[[(([[[[((([[[((([[([[([[([([[[(([[([[[[([(([(([[(([[[[([([[([[[([([[([[[[((([([([[[[[((([[[[[([((([([([([((([([[[[[([([([[((([(([(([([([((([([([([[([(((([[[([[[([([([[[[[(((([[([([[([((([[(([(((([([[([[[[[([([[[[([([[(([([([(([(([[[[([(((([[([[[([[[([(([(([[[(([[[[[([([(((([([[(((([(([((([[[([(([[(((([[([[[((([(([[[[[[[[[[([([[[[[(([(([(([(([[(([([[[((([[(([[(([[((([(([((([(([(([(((([[[([((([(([[[(([(((([([[([([(([[([[[[[[([[([([[((([[[[[[([[[([(([(([([((([[(([((([[((([([[([[[(([([[[[[[[[[([[((([[(([[([(([[((([[[[([(([(((([((([([(([([((([(((([[([[((((((((([(([(([(([([[([(([(([[[[[([[[(([(([[[([[([(([[(([(([([([[[(([[([[([[[[([[(([[([[(([[([[([[([[([(([([(((([([([[(([(([[([(((([([[[([[[((([[(((([([(([([[(([[[((([([[((([[([((([([([([[[[[((([([[[[(([[((([([(((((([[([([[([[[[((([(([(([([[[([((([[(([([((([[[[[([((([[([(([[[[[([[[(([[(([(([((([[[((((([[((([(((((([[[[[([[[[[((([[[([[((([[[(((([[([[(([[((((((([([([(((((([([[[([((((((([(([[([((([[([[([[[[([[[([[(((([[([[([([([[[[((((([[[[([[([([([[[(([(([[([((([[([[([([[(([[[([[([[((([[(((((([[[(((((([[[[(((((([((((([((((([[([[[(((([[([[([((([([[([[[[([(([[[[[[[[[[[(([([(([([([[(([[[(((([([(((([[[[([[((([([[[[([(((([(((([[([(([(([[(([([([[[([[([[[[((([([(([([[([(([(([(([[((([(([[[[[([[[([([(([[(([[[[([[(((([[([[[[(([([([([[[([[([[([[[[(([[[[[([((([([[[([(([[[[[[((([([[[[[[[[([([((([(([[[([([[[((((([(((([[((([([([((([(([[[([[(([[[([(([(((((([[[[[[[[([[([[[[[([[([[[([[([[(([[[(((((([[[[([[[([([([[[[[(([[((([[[(([(([[([([((((((([((([((([((([([[[[([([[[[([[([([[[((((([[([[([((([([((([[[(([[[[[[[[[(([[[((([[[((([([[([([([[(((([([([([[((([[[([(([(((([[[[[(([[[((([([([[[([[((([[((((([[[(([((([[([[(((([([((([((((([(([[[[(([([([([([[[[[((([([([([[(([[(((((([[[[(((([[[([([((([[((([[[((([[[[([[((([(([(([[(([[([(([(([(([(([[[([((([(([(([([(((([(([([[([[(([(([[[([[[[([[[[[([(([([[((((([([(([[[([[[[([((([[(([(((([[([[([[[(([([([(([[[(([([[(([([((([([[[[((([((([[((((([((((([[[[([[[([[(([(([((([[([(([([([(([([[([[[[[[(((([([[(((((([([([(([[((([[[([(([((([([[[((([(((([[((([[(((([([((([([(((([[([[[(((([[([[[(([(([[([[([(([[(([((([([((((([(([[[(([(([[[[([[[[(([([((([([([(([([(([([[[(((([((((([[([[[([([[[[((([([[[[((((([((((([[(((([[[([([([[[[((([((([[(((([([[[[[([[[(([[[((([(((([(([[([[([[[[[[[[(((([(([((((([[[(([[[(([([[[[([(([((([[[([([([[([[(((((([[([(((([[([[[([[(([([([[(([[[([(((((([[[([([(([[(([[(((([[([[([((([(([[[[[([([((([[[[(([(([[(((([([(([(([([[([[(([[(((((([[[([([(([([[([[([[([[[[[[([[([([((([([[[([[[[[[(([(((([[([((([(([[([[([[[(([([(([([([[([[[(([(([[([([([[[(([[[[[[[([([[[((((([[[[(((([([[([[[([(((([(([[([[([([([(([((((([[(([[(([[([[[([[(([(((([(([[([([[(([[[[[[[(([(([(([(([([((([[[(([([([((([(([([[(([([([[[(([[([(([((([([([((([(((([[[[[([[[[[[([[[(([[[((([[(([[([[[[[[[[[[((([[((([([[[([(([[([([[((([((([[(([([[[[[(([[(((([([[([(([[(([(([([([[[(([[[[([(([[([[([([([(([(([[([([[([(([(((([((([(((([[((([[([(([[[([([([[[(([[[[[(([([([[(([[[([([[(((((((([(([[(([((([[[[(((([[[[[([([([[([([(([([[([[[(([[((([([(([((([[[([[((([[[[[(([[[[((([(([([[(([[[(([((([[([([([((([((([([([(([[[[[([[[[([[([[[[[[(([[([([[((([([[([([([[[(([[[[((([[((((([[[((([[[[[((((([[[[[([[[[([[(([((([[([[([([((([[(([([(((([(([[([[[([([(((([([((((([[((([[[((((([(([(([[([((((([(([[((((([(([[[(([([([([([(((([([([[([[([([(([((([[((((([([((([(([[[(([(([[[([(([[([([([(([(([[[([([[[([([([(([((([[[(([[[[[(([([[[[[[[[(([[[(((([[[[((([[[([[([[[[[[[([[[[((((((([([[([[[[[[[[[[[[[[[[[[(([[([[(((((([(((([[([[([(([(([([[[([[[([[[[[((([([[[[(([[[[[[([[((([[([((([[[([(([[[((([([[[[(((([[[((([[[[[([[[[[[([[([([[[([[([([[([[[[[([[[[[[(([[([[(([([([[([[[[([[([[[([[((([[[([(([(([([[[[[((([([[[[(([([[[([((((([[([([[([[([([[(((([([[[((([[[[(([[[[[[([([(([[[[[[[[[(([(([([([([((((([[[(([[([([[([([(((([([([(([[(([([[[[[[[[[[[(([([[[(([([[[((([[((((([[[([[[[([([[([[([[([([[((([[[[([[(([[[[(([[((([[[[([(((([([[[[[[([([(([([[(([[([(([(([([[[([([([([[(([([[[((([[([((((([[([([([[((((([[([([([(([([[([([[[([((([[[[[[[[[[([[[([([[[[[([[((((([[[([[((([(([(([([[((([([(([([([([([[((([[[([[(([[((([(([[([[[[[(([(((([[([[[([((([[(([(([([([(((([(([([(([[([[([([([(([([[([[([([[([[([[[([[[[((((((([[[[[[[[([([[[[[((([[([[([[(([[[[[[[(([[([(([(([([(([(((((([(([(([((([((([([[[[([[[[(([[((([[(([[[([[[(([[(([[([([(([([[[[((([([[((((([[([(([([((([([([(([[(((([(((([[[(((([(([[[[(([(([[([(((([([[[[[([[[[(([((([[[[[((([[[[([(([[(([([[[[([([([[(((((([([[[[[[[[((([([[[[[([([((([([[(((([[(((([[((((([([[([((((([(([[(((([[[[([([(([[([([[[[([[[[(([[((((([(((([[[[([((([[((([[[(([((([[[(([([(([[((([[[([[((([([([([[(([[([([([(([[[([(([([[((([([([((([((([([(([((([([([([[([(([(((((([[[[([(([[[([(((((([[[((([([((([[[([([[[([([([[([[[[[([[((([([[[[[(([([[((((([((([[((([[(((([([[((([(([[([([([([[[([[[[[([[([((([(([[((([(([([(([((([(([(([[(([[([([((([[([(([([([([([[[[[[(((([[(([([(([((((([(([[[(([([([[[(((([[([(((([[(((([[[[[([(([[([(((([[[((([([[[[[([(([[([(((([([[([([[([[(((([([[([[(([(([[([[[[[[(([[(((([[([(((((([[[[[(([([[((((([[[[(([([([[([[[[(((([[[[[[[[([[[([((((((([[([[[[(([([[(([[[[[[[((([((([[(([[[((([([[[[[[([(((([[[[[([[(([[[[[(([[(([(([(([[([(([([([[[(((([[([((([([[((([(([[[([([[([[(([[(([[([[([[([[[[[(([[([[((([[[(([([[([[[[([[(((([([([([(([(((([(([([([([([[((([[([([([([((([[[(((([[[((([[(([[([(([[([[[([[(([[([([(([[[[[[[((([([[((((([[[([[([([(((([[((([[((([(([(([(([(([([[((([[[[(((((([[[((((([(([[[([[(([[(([[[(((([[[[[[(([[(((((([[(([[(([[([[(([((((([[[[[[((([[(([([[(([[[([(((([([(([([(([(((([[(([([(((((([[[[[([([(((([([[[((([(([[([([[([([[[[([([[[([([([(((([[[((([(([([[[[([([([[[[[[([[([[((((([[([[[(([([[[([[(([([[[[[((((([([((([([(([([(([([([((([[[([[([[(([([[([((([[(([[[[[[[([([(([([[[(([[([[[(([[[[[([[([(([[(((([([[[[[[(([[[[[([(((((([(((((((([([[[[(([([([[(([[[[[[[([[(([([((([[[([[[([[[((([[([([[[[[[[([[[([[([(([(((([[([((([[([[[[((([(((([[((([[([(([((((([[(([([(([[(([([[[[([([[(([([([[[(([[[[([([([(((([[[[([[([[[[[([([[[([[([[[[(([[([(([[([([(([((([([(((([((((([[([[([[[([[([([[(((([([[[[([[(((([(((([[(((([[((([([[[[([((((((([[([[[((([[(([([([[([([([[[(([[[(((((([[([[[[[([[(([[[([(([[[([((([(([([[[[[[([[([[[[((([[((([[([[[(((((([[((([([(([[[((((((([[(([[[[(([((([[[[[[([((([([([[(([([(([(([(([([([[([([([[([[[[(([(([[[[[(([((([[[[([[[([([[([[((([[[(([((((((((([(((([[[[[(((([([[[[([(([((((((([([([(([[(([[([(([[[([[([[[[[[((([((([[(((([([[[([(((([((([[[[((([[[[[[[(([[([[[(((((([([([([[([[[([([[([((([(((([([([([[([[[((([([([([[[[([[[[[[[[(([[[[(((([[[([((([[[([([([[([([[((([[[([[((([[([[[([[[([[([([([[([([[([(([[[((((([(([[[(([[((((([[(([(([(([([[([([((([((([[([[[[([[[[([[([[[[(([[((([(([((((([([(([[[[(((([([(([[(((((([([[[[((([[([[([[[[([[((([[((([([[[[[(([((([[(((([[[(([(([[([([(([[(([([[([([([[[((([[(([[[[[([[([([([([([[([(([(((([[([([([([([[[(([([([(([[(([[[[([([[((([[[(([((((([((([(([[(([[[[[(([[([(((([((([(([[((([(([([[([[[[([[[((([(([[(([((([([[(((([(([[[([(([[(((([([[([((((([((([[([([[([((([([[[(((([[((([[[([([[((((((([((((([(([[[[((([([[([(([[(((([[[((([[(([[[[([(((([([(((([([[([(([((([[[[(([((([[([[([[(([(([[([(([((([[(((((([([[(([(([((([[(((([[(([[[(((((((([([([(([[[[((([(([([((([([[([[(((((([[([[[([([([[([[[([(([((((((([[[[[([[([[[[[[[[((([[(([[([(([((((([[([[[([(([((([(([([(([[([[[((([([[[[[(([[[(((((([[((([((([(([[[[[([([[(((([[[[[([([([[((([[[[[[[((((((([[[[[([[([[[([([[([[(([(([[[[[(([(([([[(([(((([(((([[([[[([([([[([(([([[[[(([((((([(([[[([(([[[([(([[(((([([((((([(([([([(([((((([[[[[([((([[[((([[[([[([([[[[((((((([[[([([[([[[(((([[([([[(([[[([[[[[[([([((([[(([([(((([([[(([[[(([((([[[[(([(((((([[((([[(([[[([(([[[[(((([[([(([([([[((((([(([((([(([([[([[[([([([(((([[([[[([(((([((([[[[(([([([([(([[(([(([[([[(([([[[[(([[[((([((((((([[[(((([([[[(([([(((([(([([((([[(((([[[([([((((([[((((([(([[(([([([([[((([(([[([[([([((([([[[(((([[(([([([(([[((([[[[([(([[([[([[([[[([[((((((([[([((((((((([([[(([([((((((([((([([[([[[([[((([[[[[[[([[[[[([([[[[[[[[(([([([[[(((([(((([[(((((([[((([([(((((([([((([([[[[[[((([(([([((([[([[[[[[[[((([([([([([([(([[[(([([(([[((([(([[([[((([[([([((([((([[[(([(([([(([[[[[([[(((((((([([((([[((([(([[([[([([[([[([[[([[[[[([[[[([[([(((([(([[([[[[[([(((([([[[([([((([[[[(([[((([(([(([[([[[[[[[((([[[[[([((([[[[[[([[(([[([((([([([[[[((([((([[[[[([(([[([([[((([([([[[([[[(([((([([[[((([([([[(([[[[[[([[[([(([(([[([(([([[[(([(((([[[(((((([([([[[[(((([(([([[(((((([((([[[((([([[[((([((([(((((((([([(([([([([((([(([[[[[[([[([[([((([[[[[((([[(([(([[[[[([([[(([([([[[[[[([[[[[[[[([[((([[[(([(([([([[[[[[[[[[[([([(([[([[([[[((([([(([[[[([[(([[[[[(([[((([[[[[((([([(([([([[[([[([([(([[[([[((([[(((((([(([(([((((([[(([[([([[((([[([([[[[[[[[[([([(([[([([([([(([[((([[[([[[([[(([([[(([([(([[((([([[(([([([([((((([[[([((([([([(((([[[[[[[[(([((((([(([((((((([[[([([([[([([(([(([([([[([[[[[((([[[[((([((([([[[(([[((([[[[[[(([(((([(([[[[[([[(([((([([((((([(((([[[[([[[[[(([[(([[((([((([([([([[([([[[([[((([(([(([[[(([[[((([([[((([((([(((([((([[[[[[([[[[(([[(([[([((([((([(([[[([([[[((((([[((([([([([[([[([([[[[((((([[([[[[[[[[[([([((([([[((((((([([(([([[[((([[([(([([[[([(([(((((([[[[[[((([[([(([(([[([[[[(([((((([([(([[([(([[[[(([[[[[[([[[([[[((([[(([([(([(([((([[[[[[[(([([(((([(([[([((([(([(([([[[([((([([(([[[([([([[[((([([[[[[([((([([[[[((((([[[[((((([(([(([([([([([([(([[((([[[(((([([([([[[[((([[[((([[[((([(([(([(([([[([([[[[[[[([[[[(([[(([[((((([([([(((((([([([([[[(((((((([[[[(([[[[[([[[([[([(([([([(([[([([[[[[[([((([([([(([[((([[[([([(([[((([((((([(([[[([[[(([([[(([[[[[((([[(([(((([[(([[[[(([([([[([[[([[(([([[([[([[([[(([[([(([([[[[([([[[[((([[[([([[[((([[(([[[[[([([[(((([[([[[[(([([[([((([([(([[(([[[(([[[([([[([[((([([([(([((([([[[[(([([[(((([(([([[[[[[[[([([[[((([(([(([([[([[(([(([(((((([([[(([([[((([[(([[(([[((((([[[(([(([[[([(([(([[(([[[((([[[([([((((([([(([[[[[((([[([[[[([((([([([[([(((([[[[[[([(([[[(((((([[[((([[(((([(([[[([([[[[[([[([([[(((((((([[((([[[[((((([(([([[([((([(([([[[([[[[(([([[[((([([([[[[([(([[([([([([([[((([(([([[[[(([([[([[[([[(([[[((([[([(((([((([(([((((([[([(([((((((([[(((([[(([[((((([([[((((((((([((((((([([(([([((([[[[[[([((([[[[(([([[[[([[[[[[[([[[([[[(([[[((([[(([([([[[([([[([[[[([(((([(([[[[((([(([[[[[[[(((([([[(([[[[[([([[[(([[((((([[((([([[[([[(([(([[[[[([(([[[[[((([([(([([((((([(([(([[[[(([([(([[[[([[[(([[(([[((((([([([[([[[([[[([([([[[[([([([(((([[[(([[([[[[([[[([[([([([[[(([[([[[([([[(([[(((([([[[[[[[([[[(([[([[([(([[(([((([[((([[[[([(((([((([[([[[([((([(([[[[[([[([[[(([[[((([((([[([([([[([([([[([[[(([[([[(((((((([[[[[([[([[(([(((([([([[[(([(((([[[(((([[(((([([([((([[(((([[([[[([[[([[[[[[[[(([[[(([([[((([[[(((([[[((([(((([[(([((([((([(([[([(([[(([[[[(((((((([(([([[([([[(((([[([[(([([[[([(([([[[((([(((((([[[[([([[(((([[(([[[[((((([([([[([((([(((([[[[[[([((([((([([[[([(([(((([[(([[(((([((([[[([(((((((([(((((([([[[([(((((([([(([[[[[([[([(((([[[([((((((([(([[[[[(([([([(([[([(((((([([(([((([([([[((([([[(([([[([[[[[[([[[((([[[[(([(([[([[(([(([([([[([(([([([[(([((([[[([[([([[[([([((([[((([((([[[((([[[[([[[[[([[[([((([((((((([[[[([([([([(((((([(([[[([[([[[[[([(([([[[(([[([([[[[([[[([[[(([([[[[([(([[(([([[[[([([((([(([(([(([[[([(([((((((([(((([([[((([((([([[[((([[[((((([[(([[[[[(([[[([[[((([[[(((([[[(([([(([[[[((([[[([[[[([([([[([([(([[([[[(([[([(([[(([[([(([[[[[([[([(([[[[[([[[[[[(((([([[[[([(([(([[(([[(([[[(([((((([[(([([[([[[([[([([[[([((([[[[[(([((([[([([([(((([([[[([([([([([[[((([[[((([[((([([[[(([([(([[[[[[(([((([([[[(([[[[([[(([[[[([[(([(([[[([[[(([([[[[[[[[([((([([([[[(([[([([[[[([([[(([([[([[([[((((([([[[([[(((([[[(([[[([(((([(((((([([[(((((([(([(([[[((([([(([([(([([[[((((([((([[[([([(([[([(([((((([[[(((([[[([((((((((((([[([([[[[[(((([[((((([(([[([[((([(((([([[((((([([[([([(([[[(([([([([[[[(([[[([[((([[[[[(([((((([([(([[(((([(([[([([([[(([[[[([(([([[([(([[([(([[([[([([[[[(([[[[([([([[([[[([[[(([[([([[([([[([[([([(((([[[[[([((([[([[([[[[[[[[([[[((([([[(([[[[[(([([([([(([([((([[[([[((((([(([[([[[[([[([(([[[([[([[([[[[((([((([([([([(([[(([(([[[[[[([((([([[([[[([(((([[[([[([(([((([((([[[(((([([[([[([[[([[(((([[(([((([[([([([[[[((([[(([[(([(([([[([[([[([(([[[[[([(([([[[[[[([((([[([([([(((([[((([[[[[[([([[(([[[(([([([[((([[((((([([[([[(((((([[([([[([([(([((((((([(([[[([[([((([[(([[[[([((([([[(([(([[[(((([(([[([[[([[[[[(([[([[([(([[[([[([[[([[[[(((([(([[[(([((((((([(([[(((([[([([([([([[[(((([[[[([([[((([([((([[(((([[(([[([[[([[([[[(([([[(([[[[[([[(([[([((([([[(([([[[(([(([[(((([((([[(([[(([([[[([([[[[[([[[([(((([(([(([(((([(([([([(([(([([([[([[([(([[([(([(([((([[[(((([[[[[[[[[[[[((([[(([[(([((([[((([([[([([((([[([[[[([([[[[((([(([([((([[[[([(((([[((([(([([[[([[([[[[(([[(([((((([([[(([[[([([([[[[[((([(((([[((([[([(([[[(((([([([([[(([(([(((([[[([[[((([([([[(([([([([[[[[((([[[[((([([(((((([(([([[([[[([[(((([[[[(((([[[(((([[[[(([((((((([[[(([[[[[[[((([[([((((([[([[([[[[[[([(((([[(([((([([[([[([[((((([[([([(((((([[[([([(([[[([[([[([[([(([[[(((([((([[[(([([(((([([([((([[([((([([(((([[((((([([(([((((([([([([[[[[((([([([[[(([[[(([([[(([([([[[[(((([((([[[[([([([([([[([[([[[[[[([[[((((((([[(([([(((([(([[([([[([(([([[([[([([(([([([(([[([[(([([(([([[[[([([[([[[[((((([([([(((([[[[[[[[[([[[([(([[((([([[[[([([[[[[(((([([[((((([((([[([((((((((((([(([[([(([([([[([[((([[[([([([([((([([(([[([[(((((([([[[[[([[[([[[[([((([(([([(((((([[([(((([[(([((([(([((([[([((([([([(([[[[([[(([[(([([[([([(([(([[((((([[[[[[[((([(([([([[[[[([([(([(([[([[([[[([[((((([[[[[([((([([[[(([[(([[[([[(([[(([[([([([([((((([[((((((([([[[(([[[[((([[(([([[((([([[((([([((([[((([([([[[((([(([[[(([[([(([(([[(([(([(([([([(([(((((([((([([[[[(((([(([[([(([[[(([([([([(([(([([[[((((([[[[[([(([([[[[[([(((([[([[([(([[[(([[((([([((((([[(((((([(((([([([(([([((([[([[(([[(([[[[[([[(([[([[[[[[([[[[[([([[[[([[[[[([[[[[((([([([((([(((([[(([[[[([[(((([([([[((([[([([[[(([[([[[((([([([[([([(((([[[[[(([([[([[((([[(([[[([[((([[([[([([[((([[(([([((([[(([[((([[[((([([[[([([((((([[[[[(([[[([[(([[((([[(([[(([([([([(((((([[[([([[([[[((([[([((([(([((([[[([[[(([([[[(([[((((([([([[([(([[(([[([[[([[[([[[((([(([(([[([([[([[(([([([((([(([(([[[([([[[[[([([[[([(([([([[[(([((((([[[[([[(([([((([([([[((([[[[([[([(([[[((((((([((((([(([[((([[[([[([([[[([[[[([[[((([(((([(([(([[(([((([([(([[([[[[[(([([[([(((([[[([(((([(((([([[[([([[([[[[(([[[([(([[(((([[(([[[([[([[[[((([[[[[([[((((([(([(([[([[[[[[[(([[(([(([[([(([([[([(([(((((([[([([[(([[[(((([[([[(([[[[((([([[([((((([((([(([[([((([([[[[([[[[([[([[([[(([[([(([([[((([([[([(([[[[([((([[(([[[[[([[([[([[[[[([([(([(((([[(([[[[(([(([[([([[[[[[[[[(([((((([([(([[([[([([[(([[(([(([[[[[(([[([[((([[[(([([([[[[[([([((((([[([[[[[(([[[(((([([[([(([[[(([[(([[[(([([[[(([(([([([([([[[[(([((([[((((((([([([((([((((([([([[[([[[[(([[(([(((([((([[([((([[([([[([([[([(([((((([([(([[[[([([(([(((([([(([([[((([[(((([((([([[(((([[([[([(([[[([[[((([(([[(([(((([[[([([((((([(((([((([([[(([([([[([(([[([([([([[(([([([[([([[[[[(([[([([[[[(([(([[([([((([[([[(((([(([([((([((([(((([[((([[(([([([[[(([[[[[[[(((((([([(([([(((([[(([[((([[([[[([[(([[[([[[(((([(([(((([[[([[[[[([[[[([([([[[[([([([[[(([[[[[[((([[[(((([(((([[([[((([([[[[([[(([([([(([[[[[([([[([[(((([([[[(([[(([([(([([[(([[([([[((([(([[([[([[((([((([[([([[([([[[([[[[[([[([(([(((([[(([[(((([(([((([[((([(([[(([(([[[([([[[[([(([(([[((([(([(([(([((((([[([([(([([[([(([[[[((((([[[((([[(([[[[([([([([[(([([[([[(([[(([(([([[[(([((([[[([([[([[[[([[[[([(((([[[[[([([[[[([[(([[[[([[((([[[[([[([([[[([[[(([[(([[[((([[((((((([([[[([(([([[(((([[([(([([[((((((([([[[([([[(([([[[([([([[[([[[[((((([([([((([([[([[([([([((([([(((([([([([[([[((([[([[([((([(([(([[((([[[[([(([([[[([[[([[[[[[(([[[((([[(([([[([(((([(([(([[[([[[[([[([([[([[[(((([[([[([[((((([(([([(([([[[([[(([[((([([[((([[(((([[([[[([((([(([[[([[[[[[[[(([[[[[[[[([([([([(([[[[([[([([[[[[((([[([[([[[((([[([[((([[[[(([[[([(((([[([((([[([(([[([([((([(([(((([(((([([(((((([[[[(((((([([[(((([((((([([([[[(([[(([[([[[[((((((([([((((([([([([[[(([[([(([[([([[[(([[[([(([[[(((([[([[([([(([[[(([[[[(((([((([([(((([[[([[([[((([(([[[((((([[(([[(([[[([[([[[((((([((((((([[[([[[[[([[[[([[[[[((((([[[([((([[[[(([((([((([[[([[[(([((((((([[[[[[([[[[(((([[((([(((((([([(((([[([[([((([([(([[[[((((((([([[(([[[[[[[[([(([((([(([((([([[[[[([(([([[[((([((([[([[[[[[[(([([[([[(([(([(([([[[(([(((([[(([[((((([(([[[([[[[(((([([(([([([(([((((((([[((([[([[([((([([([[[[((((([((([[(((([((((([([([[((([[([[([((([[[([[[(([([[([[[[[[[([[[((([[[([[[[[[[([[[(((([(([([[((([(([([([[([([[[[([[[[[([[([[([([([([([[[([([[[((((((((([[([([((((([([[[([[([[((((([(((([([[([([(([(([[[([[((([([[((([([([[[[(([(((((((([[([((([[([(([((([([((([([([[[[[([([[[((([[([(((([[[[[([([[([([((([([[[[[([[([[[[(([[[[[[(([([[[([(([(([[[[[[[(((([(([[[([([([[([[[[[[[[([[((((([((([([[(([[[[[[(((([([([[[[(([((([[(((((([((([([[(([([([([[((([[(((([[(([([[([([([([[(([([([(((([[([(([[([[[[[[[[([((((((([(([([[[(([([[([[([[[[[([([(([([([(((((([((([[(([(([((([[[[(([(([([[[[(([(([([([[([((([[[([(([[((([[[([[[(([[(([[((([[([[[[((([(([([([[[([[([([[[(([(([[([([(([(((([[[((((((((([[(([[[[[[((([[[[[[(([([([[[(([([[[[((([[([[[[(((([([[[((([(((((((([([([((([[([[([(([((((([[([[(([(((((((([[(((([[([([([(([[([([[([([[([([[([[[[(([(([(((((([[[((((([[([[[((([[[[((([[([([([[(((((((([[[[(([[([(([(([([((([[[[(([[[[[([[(([(([((([(([(([([[(((([((([((((([([([[[(([[(([[(([[(((([[([([[([[((([((([[[[([[[(([(([((([(([(([[(([[([(([((([[([[[[([([([[[((([(((([[[([[((((([([[(([[([[[([[(([[(([[[[[[(([([[[[[(((([[([[([((([[([([[([(([[((((((((([[([([(([[[(([([[([[(([([([((([[(([[(((((([(((([([([(([([((([(([[([[[((((([[([[[[([[[[([[([([((([((([[([[([[([[((((((([([((((([[((([((([([([(([(([[[(((([[([[[[[(([([([[[([[[([[([(([[[[(([[([(((((([[(([[(((([([([[(([([[([([([([((([[([(((([[(([([(([[(([[((([[[((((((((([[(([[[[[(((([[[[([([([(([[([[[([([(([(((([[[(([[([(([[((([[[([[[[[[([[(([([(([[((([[([[[([[((((([[[([[([(([[[([([[([[[([((((([[(([([([[[[([([([[(([[[[[([(([(([[([[(([[((([[[[[[([((((([([([([([((([(([[([(((([[([[([[[[(((([((([[((([[[[[(([[(([[[[([(([([([([[([([(([[[[[(([((([([(([[((([([[(([((([([(([(([((([[[[[[([[[(([[[(([((([[(([[[(([([([(([[[((([[([((([[([[([[[([((([[([[([(([(([[(([([((([[[([([(([([[([[([[[[([[[((((([([([([([[((([[(([(([([([(([((([[([[[(([[[([[((([([[(([[(([[(((([([([[[[[[([((((([[([[((([[([[[(([[([[[(([([(([[[[([[[[[((([[([([[(([(([([([[[[([[[[[[(([[([[([[[[(((((([(([([[[[(((((((([[[([[([[[([[(([[[[([[[[(([([([((([([[([(((([([[[((([[[[([((([[([[(([(([[(([(([([[[[[(((([(([[(([([[([((([[([((((((((((([[(([[[((([[[[(([[((([[[(([[[[(([[[(([[[(([(((((([(([[[[[[[((([(([(([[[([[[(([[[[[(([([([[([((((([([[[[[([([((([[([(([[[[[[((([[(([([[(((((([(([([[[(([([[[(([[([(((([[[[[[[[[[[([[[((([([(([(([[[[([((((([[(([[[[[[(([[[[[[[[[[(((([[[[((((([([([[([([([[[[(([[[[([[[[((((((((([[[(((((([[[([[(([[([[[(([((([[(([([[[[([[([([([([(([([[[([[((((([((((((((((([[[(((([[[(([[[[[((((([(((((((([[((([([[([((((([(([([[([([(([[[[[[[(([(([(([(([[(([(((([[(((((([[[(([((([(([([([[([[((([[([(([[((([[[((([([[[[[([([[[(((((((([[((([[[[[([[[[[[([[[[([[[(((((((([(([(([((((([([(([[[([(((((([[[[([[(([[[[[[[([(([([(([([[((([[[([[([[([([[[[([(([[[([([[([[[([([[[([[([([[((([[[[(([[[([[[(((([((((([(((([[[((([([((([(((([(([[[([[[[((([[[[(([([[[([([[(([[([(((([[(((([([[([([[([((([[((((([[(([[[((([(((([((([[[((([[[(([[[[[[[((([[[[[([(([((([([[([([([[((([[(((((((([[[[(([[([((((([((([([([[((([(([([[[((([([[[[[((([((((((((([([[[([[(([[([[[[[([[([[(([((([(((([([[[[[(([((([[([((((([[[((([(([(((([((([([([([([[(([(([[[((((([(([(((([[(([[[[([(([[[[[[[(([[((([([([([([[[[(([([[((([[([(([(([[[[([([((([[((((([([([[[[[((((([([([([(((([[[[([(([[([[((([[[[(([[[(([((([[([([([(((([(([[([([[([[(([[[[[[[[((([[[(([((((([[([([[[[[[[((([[[[(([((([([([((([[((((((([([([([[[(([[([(([[[[[([(([[[(((([([((([((([[[([[[[[((([[[[((([([(([[([(([[[(((([(([([((([[([[(([[(([[[[[[([(((([[[([[[([[(([[(([[([[[[(([[(((((([((((([((([([[[(([[[(([(([[([([[([(([([([(([([[(((([(([(((([[(([[(([[([([[([([(((([((((([([[(([((([[[[[([([([([([([([[[([[((((([((([([[[[[[[(([([[([[[([[([[([[(([[[[[((([(((([((([[(([([(([[[[[((([[(((([([(((([[[[[[[((((((([[([([[([(((([[[[[[((([[[([[[[((((([(([[(([(((([(([[(((((([[[([[((([([([([([(([((([[[(([[[[[([[[([((([([[([[[(((([[(([[([[[[([((([(((((([[[[[([([[[([([[[([([([((([([((([(((([([[(([(([(([[([(([[[([[[[[([[([(([(([[([[((([[(([(([([[[[[[[[(((([[([(([[(([[([((([(([[[(([[(([[((([[((([[[([[[([[[(([([[(([[[[([(((([((([[(((((([[(([(([[(((([[[[[((([[(([[[[(([((((((([[([(([[[([[([[[(([[[[(([[[[[[([((([([([[[([[[([([([((([[([[(([[[[[[(((([([([[[[([([([[([[[(([([[[(([([([[[[[((((((((((([[([([[([([[((([[[([(([([[([[([([(([([(([([[[((([(([[([[[(([(([[([[([([[[[(([([([[([[[[[[[([([[((((([[([([[[[(([([[([[([((([(((([[[([[((([[[(([([[[[((((([(([([([(((([((([(([([([[((([(([[([[[([((([([[([[([(([(([[[[(((([[([([[((((([([[[[(((([([(([[[([((([[[[[([(([((((([([[([((([[[[[[[[([[[((([([(((([[(((((([[([([([[([(([([[(((([([[([[(([([[[[([([[([(([(([([((([[([([([[([(((([[[[[[((([(([[(([([[(((((([[[[[(([([[([[([[[(((([[[[[[((([[[([[([[[[(([(([[[((([([[[([(([[([[([[([[(([(([[([(([[([([((((([([[[[(((([(([[([(([((([(([[[([([[(((([((((([([[([((([[[([(([(((((((([[[[[((([([([[[(((([[(((((((((([(([[([([((([[(([([[[[[([[[([[(((([[[[((([[[(([[([[[(([([([([[([([[[[[([([[[[[[((([((([[([[((([(([[[[[((([[([[[[[([([(((([[([([([[[(([[[[([([([(([([[([(((([[((((([([([((((([[((([((([[(([((([([(([(((((([(([(([[(([([(([[([[([[([[((([((((([[[(([[[(([([[([(((((([([([([(([(([((((([(([([((([((([[(([([(([(((([([([[(([((([(((([[[([[([([[([[([[[([[([[([[[([[((((([[(([[([[(([[((([((((([(((([([([([[[([[((([((([[[[[[([(([([([(([[[[[[[[[[([([((([[[[([[(([([[((([(([((((([(((([[([(([([(([[([[((([[[([[[(([([([(((((((((((([([[[[[([[[(([(([[([(([([[([[(([[[[[([(([[((([[[([(((([([([[[[[[[[((((([[[[[(((([(([([[[[[((([([[[(((([([[([((([[[[(([[(([([([([[[((([[[[([([[[(([[[[((((((([[((([[[[[[([([[([([[[[(([[([(([(([([(([[[[[(([[[([([(([(([(([[[([[([([([((([((([([([[[[(([(([[((((([([([([([([(((([([(([([[([(([([(([(([([(([(([([(((([[[[([[[([([(([[[(((([((([[[[[(((((((((([((([[[(([([(([[[[((([[[[(([[[[([([[([[[(([[[([[[[([([([([[((((((([[[((([[([(([(([[[((([([([([((([(([[[(([[[[(([[([[([[(([(([[[([((([[(([[([((([[(([[[([(([([(([(((([(([(([((((([([((([([(((((((([(((((([(([[[([([[[[([[(([([[[(([([[((([(([[[[[([((([[([((([[[(([([(([[[[([([[([[[(((([[[([([[([([[[[[(([[(([[(([([[(([([((([(([([[([[([([(([[([([[[(((([[[(([(([[([((([[(([[(([((([([[[[[((((((([[[[[([([([[[[((((([[([[([([[[([((((([[(([[([((((([[(([((([([([[[[(((([[([(([([[[(([([[([[[([((((([[(([([[([(([[((([[((([((([(([(([(((([([[[([[([([[[[([(([(([[[[[(([([[(((([[([([(([([[[(((((([[[[[[[([(((([([[[[([([[[([(([([[([([[[([[[((((([[((((([[([[[([[[(([[((([[([([[([([([[([((([([(([[[[[(([(([[([(([([([[(((([[(([[([[([[[((([[(([[[[[((([[[([(([[(([([((((([(([[([(([([([([[(((((((([[((([[[([((((([[(([((((([[(([[(([[(([([(([(((((([(([(([[(([[((([(([((((([[(([(([[((((((([((((([([[[[[[([[[([[((((([(([([(([[(([[(((([((((([([([[(([[[[([(((([([([(([(([[([([(((((((([([(((([((([[[([([([(((([[([([(([([(((([([[(([[(((([(([[[([([[((([[[([[[[[((([[((((((([([[[[[[[(([(([[[((([[(([[(([([[[[([[[[([[[((([((([([[((([(([([[([[[([[[([(([([[[(([[[(([((([[[(([([[[([[[[[[[([[[[[[([([[(([[([([((([([[((([[[(([(([([[[([([((([[[([([[([[[[([([([[[([(([([([[[[[((([[[[([[[([[((([[[[((([(((([[[[[[[[[(((([([([((([([(((([[((([([(([(([[[(([[([[[[((([((([([((((([((([([[(([[[(([[(([[[[(([[((([[([([((([[(([([[[([(([((([(([([(((([((([[[[[([([[[[[([([[([([[[[[[([[[([(([[[[[(((([([(([[(([[[[((((([[([[[[[(([[[((((([[[[[((((([[[([([[([[[[[[[(([[[(([[[[[([([[[((([((([((([[([((([(([[[[([((([([[[[[([[[[[[[((([[[([[([([(([[[[[[[([[[(([[([(([(([((([([([((([([([([(([[([(([[[[[([[([[[[(([([[[((([(([([[[[(([[([[([[([[(([([([[((([[[(([(([([(([([[[[([[([[[[([([([[[([[[[((([[[[([[[((((([([(((([[[(([(((((([[[(((([[(([[([[([[[([[[(([[((([((([[(([(([(([((([[[[[[([[[([(([[[([([[[(([(([([[[[[((([((((([[([([([[[[(([[([[[([[[((([([([(([[(([[([[(([[([[((([(([[[[[[((([(([[([([([[((([[(([[[[[([(([[[[(([[([[([([([[[[[(([([[([[[([[([[[[([([[[(([((([[([[[(([([[[[[([[[[[[[(((([[[[[([([[[[(([(([(([[[[[([((([[([[(((([[[([([([[([[((([([([[([[([(([((([[([([[([([[([(((([([([([[((((([(([[[[([(([([[[[([[([[[[[(([([[([([[([[(([((([(([((((([[[[[[[((([[[(([[[(([((([([[[((([[(([([(([([[[(([[[([[[([[([[((([[[[[(([(([(([([([[(([(((([[[([[[[(([((([[(([[[([[(((([[[([(([([([[(((((([[[((((([(([[([[[[([[([((((((((((((([([[[[[(([([[[[([([[[((([([([(([[(((([((([[([([(([[[[([[([[[([[[[[[((((([(([[([[([[[[([[(((([[[[([([(([([([([[[([(((([(([(([[(([[[[([([[(([([([([[((([[([[[[(([([(([((([((([([[(([([([[(((([(([(([([([(((((([[(([([([(([(([(([((([([([((([([[([[[[[(([(([[(([(([(([((((((([[[([((([[[([[[((([(([[((([([([[[(([[([[[(((([[((((([[(([([[(([((([(((([([[(((((([[((([(([[[([([[[([[((([[[(((([(((([([[(([(([([[[(((((([[([[[(([[[[[([[[[([[(([([([[((([([[((([([([[(((((([([(((((((([[(((([[[[[[([(([(((((([([([[(((((([[((((([[[([[((([[[[[([([([(([[[[[([([([(((([(([[[(([(([[(([[[[([([[[((((((([[[(([([[[((((([(([[([((([([(((((([([([[[(((([([[((((([([[[(([(([[[([[(([(([((([([(((([([[([[((([[[[[([([[[([([(((([[[([[[([[(([[[([(([((((([((((([((([([([[(([[([([[[(((([(([[[(([[((([[([([([[([([([[[[[([([(([(([[[[[([([((([([[[[(([(((([((([[([[(([([([[[([((([[[(((((((([[(([[[(([(([[[[([[((((([([[(((((([[([[([((([[[[([[[[[([[[[([(([((((([[[[[[([(([([[(([[[((([[([[([[((([([[[([[((([[[[[([[(([(((([[[[[((([(((([[([[[([(([[(((((([[[((([[([[[[[([([[[[((((([[(([[([([[([([([(([([((([[(([([[[[(([(([([([[[[(([(([[[([[[[([[[[([(((([([(((((((([[[([[(([[[(([(([[[[([[[[[[(([((([[[([[[[[[(([([([(([(([[(([[(([(((([[[([[(([[([[[([(([[(([(([([([(([[([[([[[[(((([[(((([([[[([(((([[[(((([[([[[[[[[[[[([[([[([([((([[([[(([([[([((([(((([([((([((((([[(([[(([([[([((([(((([([([[(([[[([[((([([[[(([(([[[([[(((([[[([[(((((([[[([([((([([([((([([[([[[((([[((([([(((([[([[[([[[[(([([[([[([[[[([(([([[[([([[[(((([[([[[[([([((([[[[[[[[([([[[([[(([[[[[((([[([[([[(((((([[[[[[(([([[([(([(([[([[[[[(([[[[([([[[[[([((((((([[[[[(([([[[([[[[[(([(([((((([[[((((([(([[[[([(([[([[[[([[([[[((([[([[((([((([((([[[[([[[[(([[([([((([(([[([[[([[([[((([(([[[[[[([[([[(([[[((((((((((([([([[[([(([[(((([[([[(([[[([[([[([[[([([[(((([(((([(([(([((((([[([[[(([[([(([[([[([([[[(([([[([(([[[((([[(([[[[(((((([([([([(([(([(((([[[[[((([([(((([([[[([(((([([((([([([[[[[[[[([([([((([([[[[(([((((([[[((([([((([[((([([[[(([((([(((((((([((([[([([[([(([[[[[(([((([(([(([[[[(([[[[[[[[(([[(((([((([([([(([([([([([[[[([[[[[(([[[([[([[[[(([((((([[[(([([(([[(([([([([[[([[([([([[([([([[[([[[([[[(([[[[[([([([[[(((((((([([[[[([(([([([((([[(([(((([[[([(([[((([[([[[[(((((([([([[[(([([([[(([[[([[[((([([((([((([[[[[([((([[[([([[[(([[[([[((([([[[[([[(((((([[[[[([[([(([[([[([[(([[[([((((([[[(([[[[[([([([[([[([([([[[(([[(([([([[([((([[[[((([[(([(((((([([[[([(([(([[(([[((((([[[[(([[[(((([[([[[[([([[([((([(((([((([[((([([(([[[(([(([(([([(((([([[[([(([[(([[([[[([[[([([((([(([[(([[[(([((([([[[(((([((([[(((([([([(([[[[([([([([[([[[([[((([[([[[((([([[([((([[([(([[(([(((([[[([[(([[[(([[[[[(([([((((([[(([[([[[[[([[([([(((((([[([([[(([(([[(([(([([([(([[[((([(([((([([(((([[(([([([([[[(([([([(([[[([([[(([((([[((([[([[[([([[[[[[([[([([(([(([([[[[([((([[([[([[[([([[([([([[[((([([[((([[[([[[[[[(([[[[([[[[(([[((([[([([(((([(([([[[[[([[[[[[([([[(([([(((([([((((([[([((((((([([[([(((([[([[[[[([[([([([[[((((((([[[[(([[(([[([[([[[[[[((((([([([[[([[[((([[[[[([([[([[[[[[[((((((([[[([[[(([([(([([[[([[[([[([([[(([([([[[([[((((([[[[([((([((((([[([[(([(([[[[([[(([[[[((([(([[([[[[[([[[([(((([(([[[([([[[[([([[((([([[(([([[[[(([([[[([[([(((([[([([[[[[((([([[([([(((([[[([(([[[[[[[[(([[[[[[[(((([([[[((([[([(([[[(([[([[([([[[([[([[[(([[[((([[[[[(([([([([((([(((([((([([[[[[[([[[[[[[[(([(([((((([([[([([[[[((([[[[((([(([(((((((([[([([[[[([(([(([([(([[(([(((((((((([[([[[[[[(([[[[[([(([[([[[[([((([([(([[((((((([(([(([[[((([([[((([([[(([[[[[(((([(([[[[([([[(([[[[((((([(([([[[[[([[[((([[[[([([[[(([([([[[([([(([[[(([[(([[[(([[(((([((([[([(([((([[[(((((([[[([((((((([[[(([[[([[([[((([(((([([((([([[([(((((([[[[([([(([(([([[(((((([((((([[[(([[[([([([[[[[([([[[([((([[([[([[([[[([([[[((((([([[(((((([(((([[(((([[[[(([((([[[[([[[[((([[[([(([([[[([[([([[[([[[(([(([(([[[[(([[(([[((([([[(([[(([([[[([(((([([(([(((([[((((([[[([[([[([(([([(([[[([[((([[(([[([[[(([[(([[([[[([[([[([[(((((([([([([([[[[[(([[(([[[[[[[([((([(([((([(([([[[[(((([(((((([([[(([(((((([((([((((((([[(([([[[[[[([(([[[(([[(((([((([(([([([[[((((((((([([(((((((((([([([(([([[[([([((([([(((([[[([[[(([([((([(((((([[[([([([[([[([(([[(([[([(((([([[[[[[[([((([[([[[(([((((([(([[[([[[[[[[((((([([([[[[[[([([[[[(((([[([(([([[((([[[[[[((((([[([(([([[(([(([([(((([[([[([(((([(([[(((((((([[((((([[([([([[([[([[[([(([[[(([([((([((([[[([([[[[[([(([(([([((((([[[[(((([[([(((([[[([([(([(([[[[[[[([[((((([((([[([(((([([([[[[((((([(((([[(([[([([[[([[([(([([(((([[([((([(([[[[(([([(([[([([[[([((([[([((([((([[[(([([[(((([([([[(([(([[((([[[([(((([([[((([[[[((([((([[([[([[[([[(([([[[([(([[[[[[([[[(([[((([(([([([([[[[(([[[(([[[[[(((([[(([[[[[[[[([[([(([[([((([([[(((([[[[[((((([(([([[[[[[[(([[([[[[[((([[([[[[[[(([(([((([[[((((([([([([[[(([([([[((([(([[(([[[[[((([[[[[[((([[([([(([(((([(([[([(([([((([([((([(([((((([[[(([([([([[([(((((((((([[[(([([[[([([((([(([((([[((((([(([[(([[(([[(([([([[[[([[[[[[(((([[(((([[(([[([[[[[((([[((([(([[[([[[((([[(([[(((((([(([([([[((([[[[[([[[[(([(([([([([[([[(([[([(([([[[[([[[[[([((([(([[[((([[([([[(([(([(([[([[([[([([([[([([([(([(([([((([([((([(([((([([[((((([[[([([(([[(([([([[(([([[[[[[[[(([[([((([([[(([(([(([(([([[[([[((([((([[(([([([[[[[[([[(([[[[([([(((([[(([([[([[[(((((([((([([[(([([(([([[[([([[[[(([[([([[(([[[([(([[[[[(([([[([(([[([[([[[([([[([[([[[[[[([[[([([((((((([[[(([((((([((((((((((([([((([((([[[[(([([([[[[[[[([((([(([((((((((([[([[(((([[(([[(((([[[[([(([[([([(([((([([([(((([([[(([[[([[[((([[[([[([[[[([(([((([(([[(([((([(([([[[([[([(([[[[[[[([[[([(([[[[[[([([[[([([((([[[([([[(((([[[[[[((((([(([([[[[[((([[(((([([[(([(([[[([(([[([([[[[([([([[([(((([[[(([[([[((([([[([((([((([[([[[[[[([[[(([[(([([(([((([([[([(([[([([[[([[[(([[(([[[([[((([((([[((((((([[([([([([[(((((((([([((([(((([[(((([((([[[(([([((([(([(([([((([(([([((((([[[((([[(([[(((([[[[(([[(([[[([[[[[([[[(([([(([[[(([[[([(([([([[[[(((((([(([[[([[([[[([[(((([(((([[([(((([[((((((([[[([[[([[(((([[[[([(([[(([[[((([(([([[(([[([[((([([([((((([[[[([((([[(([([((([[[([((([([(((((([([(([([[[[(([(((([[([([[[[(((([[(([[[[([((([([(([[[[([([(([([(([([[(((([[[[((((([([([[([[(([(((([[((([[((((([((([[(([([((([([([((([(([([(([[(([((([[(((([([[[[((((([([[([[([((((([[((([[((([([[((([(([[[[((([(((([[[([([[([([[[[(([([(([(([[[([[(([[(((([([([[[[[[(([(((([[[([([[((([(((([[[[((([((([[[([([((([([([([([(((([[[((([[(([([[(([(([(([([([[[[([[((([[[(([[[[[([[(((([([[[[[([([[[([[[(((([[((([([([([([[[[(([[(([([[[[[((((((((([[((([([([[(([[(((([[[(([[(([([([([([[[(([(([((([[([(((([[([([[([[([[((([(((((([(([[(((((([(([(([[[([[((([(([((([[[([[(([[[[[([[[[[((([[([[(([([([[(([([((([[([(([([[[[[[[[((([[(([[[[[([([((((([((((([[([([(((([((([(([(((([[([[(((([(((([[[[((([(([((([([((([([[(([([(([[([(([[[((([(([([([(([[([([[[([[[[[[(((([([[[([[[[([[(([[[[[([([[[[[[[[([((([((([([([(([[([[[([[[[([([(([[[[([((([((([[(([[[(([((((((([([[(([([[[[([((([([[[[[([([(([[(([((((([[([([([([([(([(([([((([(([[[[((([[(([[[(((((([((((([[([[[[[[[((((([[(((((([(([[([((([([[([(([[[[[[[[([[(([([([[[([[[([[((([[(([[(([([[([[[([(([[[[([(([(([((([[([[([[(([([([[[([(([([((([[(([(((([(((([(((((((([((((([(([((((([(([[[([[([[[[[([[[[[[(((((([(([([((((([(((([([[[[([([((([[[([[([[((([[(([([[[[([[([[[([([[[[(([[([(([[[([[[((([([[[([([[[([[(([[([[[([(([([([[((([[([([([[[((([[([[[[[[[[(((([[([[([(([([[([[[[[[[(([([(((([[[([((([[(([[(([[[((((([[([[[([(([([[[(([[[[([([[[[[[((([[(([[[[(([[(([[(((([[[(((([(([((((([((([[[[([[([((([[[((([[([[[[([[[[([[[[((((([[([([((([[((([((([[(((([([([[[(([(([[[[[([[[[((([(([[[(([([[((([[((([([(([(([(((((([[(([(((([[([[[([[((([[[[[([[[[[(([[[[[[([[([([([[[[([[((([[[(((([[(([([[([([[([[[[([[[[([(([[[[[[[[([[([([[[((([([(([(([([[[[[[(([[[[[[(((([[[(([([((([(([[[(([[[[([(((([(((([((([([[((((([[([[([[[((((([[[[([[(((([([([[[(([[(([[[([(([(([[[[(((((([[([[[([([([(([([[[[((((((([(([([([[[(([[[[([((((([([(([([((([[([[[(([((([([[[[[[[(((((([((((((([(([[(([[[[[[[[((([[[([(((([([([(([(([[[([[[[(((([(((([(([([((((((([[([((([[[[[([[[([[([[([([((([[[([([[([[[[([([(([[[([[[[[([[[[(((([[((([(([(([[[[[((([[(([([[(((((((([[([[(([[([(((([[[[([[[([[[[[([([([[[[(([[[[[(((([[([([[(([([(([((((([[[(([(([[[[((([([[[[[[(((([[[[([[[(((([[(([([[[([(((((([([([[[((([[(([(((([[([([(([[([(([[[([[[([((([[[(((([[[[(((([([(([(([([[([([([((([[[((([[((([([[[(([[(([[((((([([[([[[[([[(((([[(([([[[(([(([(((([([([[(((((((([[[[[([[[[((([(([((([[(([[[[[((([[[[((([[(([[(((([([[([(([([([[(((([[[[[([[([([(([[(([([(((([([[[[[[([[((([([([(([[([[[[([[([([[(([[[([(([[[((([[(((([[[([[[[[[(([[[[[[[((([([[([([([[([[[[[[([(([([[([((([[([([[((([(([[((([[[([((([((((((([([([([(([[[[([([((([[([[([([[[[[(([[([[([[[[([[[[((([[((([[(([(([([[[[[(([[[[[[([([([(((((([(([([[[[(((((([((([[([[[([((([(([([(((([((([[[[[[((([[([([([(([(([[[[((((([[[[[((([([[(([((([(((([(([([[([([[([([([((([([([[[[[[([([([[([[[[((([(([(([[([([[[([(([(((([((([([[[((([[(((([(((([[[(([(([[(([(([([[(([(([[([(((([(([[[((([[[[[[[[[[([((([([([((([([((([([([(((([((([([([[([[[[[([[[[([[[[([([[[[((([([(((([(([([([[[[[([(([([[(([[([(([[([[[((([(((([[[[([((([[[([[([((((((([[[[[[[[((([(((([((([(([[[(((((((((((((((([[[[(((([(([(((([[([[[((((([([[([[[[((([[([([[[[[([(([(([([([[(([([[([[[([[[[[(([[[[([[((([(([[([[[[(((([([[([[[((([(([[[(((([(([[[(((([[(([(((([[[([[[[[(([[[[[((([(([([([[([((([([((([(([([[(((([[[[([([(([(([[([(([([[(([[[(([[[[([[([((([([([([[(([[[((([([(([[[(([[[((((([[[([([[((([[[(([[((([([([[([[[(((([[[(([(([([[((([[([(([((((([[([[[[[([(((((((((([([([(([([([(((((([(([[[[([(([[((([([[([[(([[[([([([((([[(([(([(([[[[[([([([([[[((([[([[(((([((([[[(([[([((((([[([(((((([[[((((((([[(([((([([[[[((((([[([([[[[[[([(((([[((((([[(([(((([(([(((([[[[[([[([([[([[[(((([((([[[([[((((((([(((([[[[[(((([((([(([([[([[([(([[[([[[(((([((([((([([((([[(([(((([[[[([([(([(([(([((([[([(([(([([([([[[[[([[[(([[[[[[[[[[[[((([[[[[[[((([[(((([((([([[(([[[([[[[([[[[[[(([((([[[(([[((([[[[((([(([([[([[([([[([[[[[((([([[(([(((([(([([(([[[[((((((([(((((((([([[[[((([[[([[(((([([[(([[(([[(([([[(((([[(([[(([([([[(([[([([[[([([[((([[((([[[[[[[[[[[([([[(([[([([(([([([[([(([(([([((([[[[((([[[(([[(([[([[[([[[([([(([((((([([(((((([(([([([(((([[[[[([([(([([([(((([(((([[[[[([(([[[([[(([[((((([[(((([[[[(((([[([[(([[[([[(([(([[([[[(([[[[((([([[[[([((([([[([[[[([([[(((((([[[[((([((((([[[[[[([[([[[([[[[[([[((((([[[(([(([([[(([[[([[([[[([[[(([((([[[([([(((((([[(([[(([[[[(([([(([[(([[(([([[[([[[[((([(([(([(([[(((([[([([((((([[[[([([[[(([[[(((([[(((([([[[((([[(([((((([((((((([[([(([((([([([([(((([[([(((((((([[[([((((((([([[[[[(([((([[[([[([([([(((((([([[[[(([((([[(((([[([([[(((((([((([([[([[(((([(([(([[[((((([([([(([([(([([[[[([(((([([[[((([([[[[[((([([[[[[[([[(([((([([([[[[([[((([[[(([[([([([[[[((([[[((([([[[((([((([[(([([[[((((([(((((([[[([[[[[[((((([([[[(([[((([[(([([[[[((([(([[[(((([([[(([(([([[(([([[([[[[(([[((([[([([(([([(([[((([(([[((([(([((([[([([[([[[([[[[(([[([[(([(((((([[[[[(((([([[[((((([[[([(([([((([(([[(([([([([((((([[[([[[[[[[[(([(([(([(([([[([((([((([[([[[[((([([(([[(([((((((([((((([[([[([[([([([((([([[[(([([(((([[([([[[([[(((((((([[[[[([[[((([(([[[[((((([[[[(([[[[[([([(((([[([(([[[((([[[[([([([[(([[([(((([[([([[(([((([([[(((((([[([(([(([([([[[[[([(((((([([([[[((([([[([[[(([[([(([([[[[[([[([[[[([(([[[[([[[([[((([[[(((([(((((([(([[([([((((([[([([[[[[[([([((([[(([([[[((([([([(([(([([[([[[(((([([[(((([[([(((((([([[((((([[(([((((([([[[([([([[[(([[([[([([([([[[[(([[(((([(((([([[[[([[[(([(([[[([([[[([((([([([([([[(([((([([[[((((((((((([([[[[[[([[((([(([([([(((((([(([([([([(([(((((([[([[([([[([(([([([((([[([([(([[[[[((([(([((([(([[[[(([([[(([[[([[[(([[[([[([([[[[([([([[[[([((([(((((([[[([((([((((([(([((((([[[[(([[(([[(([([(([[[(([[(([((([([[(((((([[([([(((([([[[[[(([(([[(((([[((([((([[((((([[([[[[[((((((([([[[([[([([((((([[([[[([(([([((((([([[((((([[([((([[([[([[(([[[[([((([((([([[[[(([[((((((([([(([[([([[([((([[[(([([(([[((([(([([(((([([([[((([((((([[[([(([[([((([[((([[([(([[((([(([([((([[[(((([[[(([[([((([[([((([(((((([[([[([[[(([([([((((([([[((((([[[[(([(([[([(([[([([[[[([([[[((([(([((([(([(([[[[(((([((([[([(([[[(((([((([[[([[(((((((([([([([(([((([([(([([[(([([(((((([([((((((([[[[[[([[([[[[(([[([(([[[[(((((((([[[[(([((([[[[(((([[[(([([[[([[[[(((((([((([[[((([[([[(([([(([([([([[[(([[[[(((([[([[([([[[([([[([[([([[([(([([[[(([[[([[[(([[[[[([[(([((([[[[([([([(((([((([[(((([[([[(([((([[[[((((([(([[([[(([([[[([[([([[[[(([[([[((((([[(([[(([[[(([([[([(((((([[(([(([[[([[[(((([[(([([((([((([([[([([[[[[[([[([(([([(((([([([([[[[[[[((((([[(((([([[(([([[([[[[[((([([[([[([[[([[[[[[([[([[([([([([([[(([[(([[(([([(([([[([(((([[((([[([[[[[[([(([[[[(([[(([[(((([([[(([[[([(((([(([([([[(([([([(([[([(([([[([([((((([[(([([([(((((([(((((([(([(([[[([([(((([[(([[[[[[[(((([(([[[([[([[[[[(((((([([([[[([(([([(([[([[(([[[[[[(([[[((([([[[[(([([[([[[([([([[([[[[(([([(((([[[[[(([[([[[([[[([[(([[([([[[([[(([[[[[[[(([[[([([[((([[[([[(([[((([[([((([[([([[[[[[[[([[([([([[[[[([[([[[[(([[(([[([[[((((([[([([([(([[[(([[[(([(([([((((([[[([([[([([[((([[((([(([(([([[([(([[[([(([[([([([([[[[([([([[[(([((([(((((((([((([[[[[[([[([[[[[(([(((([[([[([([[((([([[((([[(([([[((([((((((([[([[(((((([[[(((([[([[(((([(((([([([[[([([(([[((([([[(([[([[[([([[[[[((((((([[((((([[([([[[[[[[[((([([(((([([[[[(([[(([([[[([([[([(([[[([[([[[((([[((([[[([(((([((([([([([((([((((([[([[([[[[[[((([([([[[([[([([((([(([(((([((([[([[[[[[[[[[((([[[[([[[[(([((([(([(((([([((((((([(([[[([([([([((((([(([((([(([[[((((([(([[([[([([[(([([[(([[([((([[[((([[[([([[([([([([[[[(([[[[((([[[[((((([[((([[([((((((([[[([([((([[((([[[[[([[([(([([([((([(([[([[([[([(((([[([[[((((([[[[((([([([[[[([(([[[[(([[(((([[[[[[(([[[([([[([([[[(([([([([([[[([(([([(([((((([[([[((((([((([((([[([[((((([([[((([[[(([[[[[[(([[((([(([[[(([([([[((([((([(((((((((((((([([[([[[[[[(([([[[([[([(([[(([[[(([([([([([([[((((((((((([[([((([([[[[(([[([[[[(([[[((((([((([[([[([[((([[[((([(((([([[[[(([((((([(((([[((([([[((([(([[[[((([((([[[([([([(([([[((([[[[[[(([[([(([[([[([(([(([[(((([[[([[[[(([([((([[[(([[(((([[[[([[([(([(([[(([([[([(([((([([[([([([[(((([([[[(([[[[([([[[([(([[[((([([([(((([[[[([[((([[(([[(([(((((((((([([[[[([[(([([(([[([[([[[[((([([((([(((([([[[[[(([([[[((([((([([[(([[[([[((([([[([[([([[(([([[([(([[[(([([([[[[([(([((([([(([[([[(([[[[(([([(([[[(([[([[[(([[[([[[[([[[[[[(((([[(([[[[[[([[([((([([((([[([[[([([[(((([(([[([[[[(((([([[([[[[((([[[[(([([[[[([[[[(([([[[([([[([([([[([[(([([[([([(((([[[([[[(([[[[[([[(([[((([([[(([(([([([(([[([[([([([((([[([[[([(([[([([[([([[[[([[[([(([([((((([[([([((([(((([[[((((([([[[(([((([[[([([[([((((((([[([[(([[[(([([((([[[(([[([[([[[(([((([[([((([[([[[((([[(([[((([[(([([(([[[[([(([([((([[[(([[[[(([[((([(([(([([([[[([([[[[[[(([([[([((((([[[[[(([([[[([([(((([([[[[[[([[[((((([((([[[([[[(([(([(([([([[([(([(([(([[[([[[[[[([[([(([[((((([[[[[[[[[[([[[[[[([[([[[[[((((([([([[[[[[[((((([[[[[[[(((([([[[[(([[[[[[[[[(([[[([(([[([(([((([(((((((((([[[[[([[[([(((([(([[([[([[[[(([[([([[[[(([((([[[[[((([([(([[([[([([[([[[[([(([((([(((([[([[(([[((([[[(((([[[(([[[[([[((((([[([(([[[[(((([[(((([(((([[([(([(((((([((([[([[[[([(([[[((((((([[[[([[[[((([(([[([[[[(([(([[(([[([[[[((([[[[([[(([[[[[(([([[[[([[[(([[[[[[([([[([[[[([[[[[[[[(([((([(([[([[[((([[(([([[[[[(([[([(([[[[[(([(([[[(([(((([((([[(([(([[([[(([([[[[[[[([([((([[((((([[[[(((([([[([[([[((([[([[[([([(([[(([([(([(([[(([((([([[[[([(([[(([((([([((([[(([(([[(([[[[[([(([((([(((([(([(([[[[([[([(([(([[((([(([[([[(([[[([[(([((([(([([[([[[(([[[(((((([[([([([(([((((([([[[([(((([((([[([[[([((([[(([(([[(([([[[[[(((((([[[[(((([(((((([[[[((([[(([([((([[([([[([[(([[(([((([[[((([[[[[[(([((((([(((([([([([((([[((((((([([[([[(([((([([([[[[(([(([([[[(([[(([([[[[([[[[[[[[[[([(([((([[([((([[[([([[[[[[[[[[(([((((([[[((([([(([[([[(([([[[((([[([([([(([([([[[([[(((((([[[[([[[((((([[[[[[[[[[[([([[[[(([([[([[([[([[[((((((((((([(([[[(((([[((([[((([[[([[[[[([[([((([[[[(([[[[[[[((((([[[[(([[(((([([(([[[([([[(([(([(([[[[[[[[[([[(([((([(([[([[([[(([[([([(((([[(([[[(([(([[[[([([(([[([(((([(([([[[[[([[[([(([((([[(([[(((([[[([[[([[[((([[([[([(((([((((([[(([[[[[(([[[[[[[(([[[[([[[[[([[[[[([[([[([[[(([([[[([([(([((((([(((([((((([[[(([[[[[(([(([([[[[([([([[[[(([[[((([([(([(((([[([[[[([[([[([[[(([(([((([[(((([([[([((((((((([[(([[(([[[([[([[[([([([([[([[([[([[[([[([([[[[[([((([(([(([[[[[([[([[([(([[(((([[[[([[[[((([[[[[[([[[([((([[[(([[[[[[(((([[[(([(([[(((([([([(([([([[([([[[[([[([[[[[[[([[([([[[[(([[((([(((((((((([([[[(([[[([[[(([([([([(([[((([[(([[[((([(([([([([[([[([([[[[[((([(([[[([[([[[[[[(((([((([((([(([([[([([[[[([(([([([([[[[[([([(([[(([([(([[[(([[((([[([(([([([([(((([(([([[([[(([(((((([[[[[([(([((([[([[(([[(([([[[(([[([[[(((([(([[[(((([[([(([[[[[([[((([[((([[[([([[((([[([[[(([(([[[[([[[[[(([([[[([([[([[[[[((([((([([[[[((([[(([([([([(([([([[([[[[([[((([[([[((([[([[[((((((([[[[[[(([[([[([(([[[(([(((((([(([[[[([([(([([([[[(([[([(([((([(([[(([([(([[[(((([[((([([[[([([(((((((([([(([[[[(([([[([[[[([[([[[([[([[([[(((([[[((([[[([[(([[[((([(([(([[[[([(([(([([[((([(([((([(([[[[([([(((([([([([([[[[([[[([[[(([([([([[[[[[[[([([[([[[[([[[[[[[([[[([([(([[[(([([[(([[((([(((([([[(([(([([[([[[([(((([(((((((((((((((((([([[[([([((([[[([[(((([(([((([[([[[(([[[[([(([([(((([((([[[([[[[(([[[[[[[[[([[((([[[[[[[([[[([(([[[[[([([[(([[[([([((((([[[(((([(([[((([[(((([[([([(([(((((([[[([(((([[([[[[((((([([([[([[([([([([([([([[[[[[((((([(([(([[([[[(([[((([([([([[(([[[([(([((([[[[[[([[(((([[[[(((([([[[([[((([[[(((([([(([[[(([[([((((([[[([[([([[([[([(((([[((([[(([[[([[([([[[[((([[[([((([(([[[[[([(([[(([(([[(((([[[((((((([[(((([[([[[(([[[[((([[([([([([[[((([[(((((([[[(((([([[([(([[[([((([[((([([([((([([((((([[[([[([[(([(([[(([[(([[[[[([([((([[(([([[[[[[((([[[(((([(([[([[[[([[[((((([([[[([([(([([(([[[(([([((([[[((((([([[([((([((([[[[([([[(([(([([[(([((((([[[([([([[([[[[([[(([[(([[((([(([[([[(([[(((([[(([([([[(([([[[([[[(([(([([[[[(([(([[(([([(([[([([[([([((((([[[[((([(([(([([([[([([[([[[[[((([[(((([[[((([((([(((([[([[[[[([[[[(([(([([[[[(([([[[([([[(((([((((([(((((((([[([(((([[[([([(([[[[[[[[[[(((([[(((((([[((([[([[[[[([[([[[[[(([[([[[([[([[(((((([[[[[(([[[((([([(([([[[([[[[(([(([(((((((([((([[([[(([[((((([[([[(([([([[[([[([[[([([(([([(([([[[[[[([[([[((((([[[([([([([[[[[(([[[([[([((([[[(([([[[(([([(([[[([[[[[[[[([([[[[(((([((([[((([[([([[[([[[([[[([((((([((((([([[((((((([[([[[[((((([(([[((([([(([[[[((((((([([[[[[[(((([[[[[(([((([[[[[(([[[([([(([((((([([((([([[[[[[[([((((([[([[([[((((([[((((((([([[([([([[(((((([[[[(([([([((((([[(((([[(([[([[([[[[((([[([((((([([(((([([([[([([([([((([(([([[([[[([(([([[((((([(([((([([([[[([[[(([[([[[[[(([([[((([((((((((([[[[(([(((([[[[[([([((([(((([([(((([((([[([[([[(((([(([[((([[[[(([([[(((([((([[([[[([[([[[[([(([([[[([[(([([(([([[[([[[(([[([[(((([[[([[[[(([(([([(([[[[[(((([[([[[[[([(([[[(([[[([[([[[[([[[([[[([([([[([[[([([([([([([[([(([[[(((([[([[[[([[((([((((((([([([([[[(([(((([([[[((((([([[([[[([([((((((([[[([[([[((([(((([(([[([[[[[[(([[[((([[((([[([[[(([[[[[[[([(((([[([((((((([([(([[(([([[([[[(([[((([[([[((((([((((([((([(([([(((((([([[[([[[[([[([((([(([(((((((([(([([[(((([((([(([[(([([(([[[([([[[(([[[((([((([(([([(((([([(((((((([(([([(([((([(([((([[[([[(((([([[[(([(([(([([([([[([(([([(([[((((([[([[[((([([[[[(([([([((([([([([[([[[[[([[([[[[[[[([[[[([(((([([[[[([(((([([[[((([([([([([([[(([([[[[(([[[(([[(((([((([(([[[([([([[[[[((((([[(((((([[((([(([(([(([[[[[[([[((((((([([(([((((([((([[[([[(([([([(((((([[([[(((([([(([([(((([([[[[((([(([(((((([[(([[([([[[(((([([([((((([([(([[[([((([[((([[[[((([([([([(([[[[(([[(([(([[[[(([[(([[[((([[([[[([[([[[(((([[([([[[(([[(((((([([(([[[[[(([([([(((([([([[(([([((([((([[[[[[([([[([[(([([([[[([([(([[(([[[[([([[[[[[((([([[([((([[[[[[([(([[[((([[[[([[[[[([([[[((([(((([(([((([((([(([[((((([[[([(([([(((([(([[[([([[(([([((([[([[[[(([([(([[[([(([[[(([(((([[((((([([[([(([[([[(([[(([(([([(([[[([(([[(([(([([([[[[(([[([(([[(([([([[((([[(((([(((([((([[[[[[[[([([[([[(([((([[[([(([[[[[[[[([[([[[[[[[([(([[[([[[[[[([[[[([([((([[[(([([[([([(([(([([[[([(((((([([([(([([([([([([([[[((([([(((((([[[[([(([([[[(([([[(((((([([[([[([[[([(([[[((([[[[[(((([[(((((((([[(([([[(([((([((([[[(((([((((([[[(([[[[[((([[(([((([([[[([([[[([[([(([((((([([[([([([[((((([[(([[[([[(([((([(([([[[(([([(((([[[[([[[[[(((([[(((([[(([[(([[([([[((((([([([([((((([[([[[([((([(([[[[[([([[[((((([[([(([[[([[[([[([[[([[(((([(([[[(([[(([[(((([[[[[[([[[((([[(([[([((([[[([[((([[[[[[[[(([[[([(((([(([[((([[[([[[([((([[[(([[[[((((([[([([[([[(([([([(([[[[(([([[[(((([[([([(([([[(([(([((([[[([[[([(((([([([[(([([[[((([([(([[[[((([([[(((([[([([[(([([(([([[[([[[((([[(([[[[([[([[[(([[[(([[[[([[([[(([[[[[([(([(((((([[([[([([(((([(([[(((([([[[((((([[(([[(([(([((([[[([([(((([((([[[[((([([(([[[[([([[[[([[[(([([[((([(((([(((([[[([[([[[[[[(([([[[[((([(([([[([(([(([(([[((([[([[([(([(([[((((([[([[[((([[([([[[[([((([[([([([([[([[([([(([[[([([([([[[(([[(([[([([([([[[[(([(([[[(([((([([((([(([(([([(((([(((([([([([[[([[[[[[[[[[([[[(([[[[(([(([[[(([[[[(([([[(([(([([([(((((([[[((((([[((([[([[([[[(((((([[[[((([[(([([([[(((([[[(([[([[((([((((([([[[[[([(((([(([([(((([[[[([((([(([([([[((([[(([([(([((((((([[[([[([[([([([([[[([[(((((([((([[[([[(([[([[[((([(([[[([([(([[(([(((([((([((((((([[[(([[([[((([((([(([[[([[(([(([[[[[[(([[[[[[([[[[[([([[[[[[([([[[[([[((([(([([(([((([[([((([(((([([(([([[[[(([[[[([(([(((((([[[([[((([[([((([[[([[[[([([([((([(([([[[([([([[([([([([[(([[((([([[[[[([[(([[[([[([[[[(([(((([[[([[([[(((([[[[([[[((([[[([([([[([[[([((((([([(([[(([([([[[([[([([[[[([[(([(([(([[(([((([([[[[[[[[[[([[([((([([([[[([([[(([[[[[[([([[[[([(([[([([((((((((([[[(([(([(([([[([(([[[[([(((([([([((([([[(((((([([[(((([[([[([([([((([([[[[[[[[(((([[([[[[([[[[([((((([[([(([(([([([[[([[[((((((([[([((([([[[[[(([([(([(([([([((((([[([[[([[[[[[[(([[([[[[[(((([(([[[([([([(([([([[([((([[((([((([(((([([[[([((([([[(([([((([[(([[([((([[((((([((([[([[[[[[([([[[[(([([(([(([[[(([(([([[(([[[([((((([([[[([[[(([[[[((((([([([[[[[[[(([[((([[[((((([[[([(([([[[([((([[[([(([[[(([(([(((([[[[[(([(((([((([((([[[(([([[[([([[[[([[(((((([((([(([[[([((([([(([[([[[([((([[[(([([[[([[[((((([((([[([((([[([([(([((([([[([[([(([[([[(([[[[[[([([([[([(([[[([[([[[[[[[((([[([(([[[(([(([[(([([[(([[((([((([([((([([((((([([([[[([[([((([[([[[([([[([(((((([([((([(((([[(([[(([[[((([([[[[[[[[[[(((([(((([([[[[([[([[([[(([((([[(([[([[[[([([((([[(((([([(((([[(([[[((([(([([[[([([[[(((([([(([([[[[[[[[[[[(([(([([([[(([((([[([([(([[[[[([([(([([[[[(([([[([(([([([(((([[([((([[[[[[[[[([[(([([((([[((((([(([[[[[(([([[([[((([[[[((((([([(([([([[[(([([[[(([[([([[([[[[[[([[[[((((([[[((([[[[(([[([(((([([[((([[([([[[([[[([((((([[([([[[([[(((([([[[([(([(([(((([[(([[(((((([(([[[([[(([[[[[(([[[[((([((((([[(([(((([([([[(([(([(([([([[(([[[[[[([([([(((([[(([[[([[([[[((([(([([[((([([([[([[([([([((([(([([[[[[(((([(([([([[(((([([([[[(([[(([([[([((([([([[[(([((([(([[(([(([[[[[(([(([[[([[(([([(([[[[[[(([([[([([((((([[[(([([[[(([((([[([[[((([([(([[((((([([[[[[([[[([[([([([([[(([([(((((((([([[(((([[[(((((((([[[[((([[([([[[([(([(([((([(([[([((([(([(((([[[[([(((([((([[[([((((([([([[(([([[([([[[[([[([[[[((([[(([[([(([[[([([[[[[(([[([[(((([[[([[[[[[(((((([(([([(([[([[(([[[[[[([[[((((([([[[[(((([[([(([((([[[([([([[[[[[([[((([([[(([[(([[[[[[([[[[[(([(([[[([[[[[[(([(([([[[[[[(([([((([([([(([(([[(([[[[[[((([((([[[([[(([[[[(([(([[(([[[[[([(([(([([[[[[(([[([[([[[[([[[([[([((([([((([[(([[[(([((([((([([[([((([(([([([([[[([(((([((([(([([[[([[[[((((([(((([([([[(([([(([[(([[[[(((([[[(((([[[((([([[[(([[[[[([([(([([[((([[((([([([[([([(([([([[[[[[[(([([[[(((((([[[[[[[([((([((((([[([[(((([([((([([[[[([([[[([[[[[[[[[([([([[[[[([[(([[[[([(([([[[[[([[[[[([[[[[[((((([[[([[([[[([[[([[([(([[[([[((([[[((((([[[[([([[([[[([([([([((((([[[([[((([([[[[(((([[([(([[(([[(([((((((((([[[((([[[[([(([([[([((((([(([[[[(((((([((([(([[[[(((([[[[[([([[[[[[[(((((([(([[[([(([[((((([[(((((([[[([[[[((([((([([(((([[([[[((([[[(((([(([[(([[((([[[(((((([[(([(([[([(([[[[([[([[[[((([[[[([[([(([(((([[[[((([[[(([[[[([([[[[([[([([((([[[(([[([([((((([(([[[[[[([[([((([(([(((((([(([([[((([[[[(([([[[([(([((((((((([[(([([[[((([[[([[[[(([[[([([((([((((((((([[[[([(((([((([([[[([([[([(([[[(((([[([[(((([((((([[[[(((([(([([(([[([[[(([[(([[[[((((([(([([[[[([(([[[[[[[([(([(([[[([[[(((([[([((([([(([((((([(([(([(((([[(((([[[[(([((([([[([[[([([(([(([((((([([[([(([(([([[(([[[([([[[[[(([[([[((([[((([((([([([[(((([([[[([([[(([((([(([[[([((((([([((((([[[[((([([[(([[([([([[(([(([(((([([((([[([[((([[((([[[(([[[[((((([(([(((([(([[[(((([((([([([(([(([([([[([[[[([(((([([[((([[[([[([[[[([[([[((((([([[(((([[[[[([[[[([[[(([((([[[[[([[(([([(((([(([[(([(([[[[(([[([(((((((([[([[([[[[[[[([(([[(((([([([[[((([([[[([[[((((([[[[[([[[[[([[[(([([(([[[[(((([[(([[[[[(([[[([([(([([(((((([([([(([[([((([[(([((([[((([[[[[[[([([([[[[(([[[[(([(((((([[((([[[([[([[([((([((([[(((([([(([(([[[(([((([[([([([([[((((([([[[[(((((([[[[([[[[(([[((([(((((([[[[(([[((((([((([[([([((((((([((([[((([[[(((([[[([[[([[[[[[([((((((([[(([((([[((((([(([(([([[(([([[[([(([[([([[([[([(([(([((([([[(([[[((([[(([([[([(((([[[[(([(([([(([([((([[((((([([[[(([(((([([([[([([((([([[(([[[([[[(([(([([[[([([([(((((([[((([([[([[[((([[[[[[([(([[[[([([[([[([[(([[(([([[[[(([[((([([(([(([[[(([[[(([[([[(((((((([([([(((([(([[([[([((([((((([([([[([(((([[([[((([[[((([([[(([[[[[([[[([((([[[[[((([([(([([[[[[([([(((([[[([(([((((([[[[[(([[[(((([[(([([[[(([[[[[(([[([[[(([[[[[[[((([([[[[((([([([[((((([[((((([([[[[(([((((([([((([[([(([([([([[[([([(([[[[[(([[[[(([([[([[([[[[([[[([((([[[(([([([[([([[[([[([[([[[[[([[([(([(((([([((((((([([(((([([[[[([(([([[([[([([([([([(([[[(([(([(((((([[(([[[((([[[(([[[[([[[[[([[([(([[([([[([([(([([(([[((([(([[(([[[([[[[([[(([[(((([([([[(((([[[((((([[([(([[([[([([[[[([([(((([(([[[[[((([(([([([[([([([[[[(([[((((((([((([([[([(([[([[[((([[((([[([([((([(((([([([(([[([(((([[((([[([(([([((((([[([[[(([([([[(((([[[[([[[(([([[[[[(([[[(([([((([[[[[[([(((([[(([(([[(((((([(([[[(((([[([(([([([[[[([[[[[((([[([(((([[((([(((([([[(([[([((([[[((([[[[([[([[[([[[[([[[([([[[([(([([[[[[[([([(([([([((((([(([[([((((((([([[(([((([((([[[([[([(([([(([((([((([([(([[([[([[(((([[([[((((([([[((([([[[(((((((([([[(([[[[([((([([(([(([((([([([(([[[([([[([([[[[([(([[[(([([([(([[([([[([([[(((([[([([((((([[((((((((([[([[([[[[([[([[[[[[[[[[[[[[[[[([([[[([(([[[((((([[[[[[((([[[[[[[[(([(((([((([(((((([[[([(([[((((([([[[[([[[[(([[([([[[[(((([(((([[([([[[([[[([[[([[[([((((([[[[[(([[(([((([[[[([[([[[[[[[[((([[[[[[[[((([[[(((((([[[[([[[([[[(([(([([([[[[(([[([[[[(([((([[([(([([(([[([([([([[([[[(([([[[([[([([([(((([([([[[[[[((([((([[(((([[([(((((([(((((((([[[((([[[[[((([([[([([[([(([([([[[([([([([[([([(([[[[([[[[([([([[[[[[((([((([([(((([([([(([[([[(([((([([([((([([[[(((([[([[[([[[[[([[(([(([[[([([[[[(([[(([[[([([[(([[[(([(([[([([[(([[[((((([([[(((((([([[(([([[(([[[([[[((([(([([(([[[([[[((([[(([([[(((([[[[[([[((([([([[[[([[([[([[(([([[[([[([[([(([[[[((([(([[(([((([([([[([[[[(([(([[[([[[(((([((([((([[([([(([([([[[((((([[[([((((([[([(([([[[[([[[[[[[([[((([(((((((([(((([[[[(((([[([[[([[([[[([[[(([[([[((([([[([[[(((((([[(([([[[(((([([((([[(([([[([[(([[[((([([[[[[[([[([[([[[([([((([((([(([((([([[[(([[[[([[[[[[[[[((((((([([([([([[[[[[[[([[([[[[[([[[[[[((((([([((((([((([[([(([([[[[([([((([(([([([((((([[([(([[[([([([[[[((([((((((([[([((((([[([(([([[[[([([([(([[([[[[[([([(((((((((((((((((([[[((([[([[[((((([(((((([[([([((([((((([[[((((((([[([((((([([[[([(([[[[([[[([([[[((([((([[[[(([[[([([[[((([[[[[[[[[[([[[([[([[([([([[[([([([([[((([[[(((([[[([([[[[[([([[(([[([(([[[(((([[[([((((([([[[[([[[(([([[(((([([([[([[[[[[([[[[([((([[[([[([[[[[[[(((((((([([[[[(([[[((([(([([[(((((([[((([([[[([[[[(((((([[([([[[(([[[((([(((((([((([(([(([[((([[[[(([([((([(([((((((([[(([[(((([([((([[[([[[(([[([((([([[(([([[[((((([([([(([[[[[[[(([[((([(([([([([(([([[[([[(([(([[[[[[(([([[([[(((([[([([[[[[([([[[([[[[[[[([([((((([([[(([[([[[([([[([[[([[[[((([([[([[([[(([[[([[[[[([(([[(([[(((([[[[[[[(([((([[[(([((((([([[[(([[[[[(([[[(([((([(([[((([([([[([[[[([(([(([[[[([[(([[[[([[[([(((((((((([[([[[[[((([[([[[[(([[(([[[(([[(((([[([[((((([([([[[[[[([[[((([[[[[[([[[[[[[(([([([(([(((([((((([([[(([[([[[(([[(([[([((([[([[((([[[[([[([((([([([(([[[[(([([([((([[([([(((([((((([([(((((([([(([[[([((((([([[((([([([[([(((((([[[([(((([[(([[([[[(([((([(([((([[([[[[([([(([([[(([[(([(([(([(([([(((([[([([((([([([[[[([(([[[[(([(([([[[[[(((([[[[([([((((([[(([[(([((([([(([([([((([[(([[(([([(([[([[[(((((((([([([(([[[[(([([([([(([[[[([[[([([((([(((([[([[[[[[[([([([([([[[(([[([([[[[[[([[[[([[[(((((([((([([([[[[([[([[[(([[[[[[((([([[([[(([([((((([((((([([[([(([([[(([((([[[[([((((([[([[(([([[[([(([[[(((([((([[[[((([[[[[([(([([[([[[[((([[([[([(([[(([([([((([([[(([[[([([([[[[(((([([(([([[[([([[[[[(([[(([(((([((([([(([([(([[[[((((([([[([[(([[[[([([(([([[[([[[(([((((([((([([([([(((([(((([([[[[([(([[[(((([[[[[[([((([(([(((([[([[((([([[[(([[(((((([((((((([[((([(([((([[[[[((([[[(((([[[(([[[(((([([[(([((((((([([[[(([[[[[([(((([[(([[(([((([[([([(([[[[([[[[([[[[[([[[[(([[([((((([([[[[[([((([([[[([[[[[[(([((([([[[([[[[([((([(([[[[[[([[[((([[[([([(([[[[(([[[[[(([[([((([[[([[[[(([[[([[([([(([[[[[[(([[([[[(([([[[[(([[[([[[[[(([((([[((([((((([([(([([[[([[[[([([((([[([[[[[[(([[([[[[([[([[[([[[[(([[[([[(([[([(((((([(([([((([([([(([([([([[[([([([[[(([([[([[((((([[[((([[[([([[((((((([((([[(([[[[[[[([(((([([[((([[[[(([(((([([(([[(([[[[[[((((([([([[([(([(([[[(([[(((((([[((([[([[([([[((([[([[(([(([((([[(([[((([[[[(([(([[([[[[[((((((([[[(([[(([((([([[([([[[([[[(((([(([([(([[[([(((([[[(([[([([([([(([([((([([[([([([(([(((((([[[([(([((([[(([((((([(([[([((((([[(([([[[((([(((([([([([([([(([([((([[((([[([([(([[[([[([([[(([[[[[([(([[[[([[((([((([[([[[[[(([(([((((([([[[[[([[(([[([[[([([([([(([(([[([[((([[(((([([[[[[[([([([([(([(([[(((([((((([((([((([[([([((([([(([[((((([[([([[([((((((([[(([([([([([[([([(((([([[((([[([([(((([[[([[((((((([[((([[[([([([(([[((([[[(((([([[[[[[[[([[[([([[(([(([(([([[((((([[[[(([([([[[([([[([[([(([[[[([([[[([([[([(([[[[[(((([[(([(((((([(([((([[((([[[[([(([([[(([[[[(((([(([[[[[((([([([([((([[[[[((([([([[(((([((([[[([[[[(([((([[[(([[([[([[(([([[(((([[[[[([(([[(([((((([(([([([[[[[(([((([[(([([(([([((([[((([(((((([([[(([[(((([[[([([[[(([[(([[(((([([(([([([(((([[[([(([[(([(((([[([[[[([[([([([[([[[(([([[([(([(([([[[[([[[(([([(([((([([[([((((((([[([[[((([[([((([[[[[[((([((([[((([[((([[[([(((([([[[[([(([([((([([[((([[([(([[([([([(([([[([([((((((([[([[(([[(([([[([[((([[(([[(([[(([(([((((([[[[([[([((([(([((([[(([[[[((([[[(([([([((([(([[([[(([[[[([([[((([([[(([[([(([(([([([[[[(([[(([([[((([(([[(([([([([([[[[((((([([([[(([([([[[([((([[[((([(([[[[([[[[((([[([((([[[((([[[[[[[[[[[((([(([(([[([[((([[[[[(((([(([[[(([[(([[(([[(([[([[([([([([([[[([((((([([[([(((((([(([[(([(([(([([([[([[[[([(([(((([[([[([[[(((((([([[(((([([([[[[[[(([([[[[((((((((((([[([([[[[[(([[[([[[[([[(([[([([[[([([[([[[[([([([([[([[([([([(([(([[[([([[((([[(([([[([(((([[[([[([([[[((([[(([([([[[[(([(([[([((([[(([[[([[[(((([[((([((((((([([[(([[[([([([[[[(([[[([[[[[[(([([((((([(([[([[((((([([([[((([[([([[[(([[[[([[([[[(([((([([(([[[[[([([((([((((([[[[([((([[[(([[[[(([(((([([[[(([[([([([([([((([[([([[[[[([[[[[[[[([[([[[[[([[([[[(((([[[[([[[(([((([([(([([([[[[((([([[(([[(([[([((([(([(([(((([[((([[([([[[[[(([[(([([(([[((([[((([(([([[((((((((((([(((((([[(((([(((([(((([[[[([[(([([([[[([([(((([[[([[[[[(([([[([[[([([([([[((([(([([[([[(([([[[([[[([([([(([(([[[[[(([[[[[[([(([(((([((([[[[[([([[[([[(([(([(((([[((([(([([([[(([[[([[[(([[[[[[([([(([[[[((([[[([[(((([((((((([[([[(((([[(((([[(([([[[[[[((([[[([[[(([[([[(((((([([((([((([[[([([(((([[[([((([[[[[([[([([[([[(([[[(([(([[[([((((([[([[(([[([(([(([(([[[[(([[[([([[[[(((((((([(([([([(((([([[([[[[([([([[([(([(([[(([[[(((((([[([([([[((([(([((((([[([([(([[[(([[[(([(([[((((([([[([([([[[([((([(((([(([(([([[([[([[(((([([((([(([(([(([[(([[([[[((([([(([([[[[[[[(((([(([[[((([[[((((([([(([([([[[[[([[([(([(([(((([[[[[[[(([[([([((((([([([([([((([([([[[[[[[[(([[[[([([([([((((([[[(([[((([[[([((([[[((((([(([(([([([[[[[((([[((([[[(([[[[([([[[([(([([[[(([[([([([[[[[[([[([(([[[[[([[([[([[((((([(([[([(([([([[((((([(([([[[([[[[([(([(([[[([([[[([([(([((((([[([[(([([[([([(([[(((([([([([([(([(((((([([[[([[[(([((([[([[([[[[([[[(((([([(([([(([((([[(([([((([(((([[(([[[[[[[[(([([[([([([(((([((((([[(([[(((([([[[((([[[([([[[(([(((([(([([[([[[[[([[(([([[(([[[[[[[[([[([([([(((((([[[([(([([([([(((([([(([([(([([[[[[(([[[(([[(([((((((((([(([([[([[[(([[[[[((([[[[[((([(([([([((([((((([[([([[(((([[[[(([(([[[(([[[[[(([[([[(([(((([[[[[([[[(([(([(([((([([(((([[([(([[(([[(([([[[[((((([([[((([[[([(([[(([(([([([[[[((([[[(([((([[[([(([((([[[(([[(((((([[([(([([[[[(([[((([([([(([((([[(([(([([([([[([[[[([(([[([[[((([[((([[[[(((([([((([((((([[[([([(((([[[[[([(([(([[[([[([([[(((([((((([([([(([(([[((([[([([(([[(([[[((([[[[(([[((([[(((([[[[(([([(((([(([[([[(([[[[([([([((([[([([[(([[[[([[(((([[([[((([[[(([[[((([[([([(([(([([[[((([([[[[([[[[(((([([(([(([[[([(([[[((((((((([[[[[[([[((([((([[[[([[[[(([[([(((([([((((([[[[(([[[([((([(([([([[[[[[[(([[(((([([([[([[[([([(([[[[(([[((((([([[[[[([[[[[(([[[[[[((((([[((((([[([([[[[(([[(([(([[[((([([((([[[(([[((([([[[([[([([([[(([[[[(((([[([[([(([[[([[([(([[([(((([(([(([([[[((([[[([[[[[[[[[[[([[[([([[[([((([[[[(([[[([[[[[[[([([(([[([(((([[([(([(([[([[(([[[((([[[((([([((((([(([(([([((([(((([[[(([[[[([(([(([(([(((([([[([((([[([[[(([[([([((([([[[[[(([(([(([(([[(([((([[([[((([[[[[[[[(([[(([[[(((([((([[(([[([((((((([[(([[([[(([(([[[[(((((([[[([(([[(([[(((([[[([[(((([[[[[(((([((([([([[(([((([[[([[(((([[(((((([[[[((([([(([[[([[[[[([(((([([[([[(((([[(([(((([[[([[[((([[([[[[(([([(([([([(([[[[[([([[([[([[[[[[[[[[([([([([[[(([[[([([[([([([[([[[[[([((([([([[(([([[[[([[((([[(([[[(([(([([([([[(([[(([[(([(([[(([((([[[([(([([[([[[[[[([((([[((([([(([(((([[[[([(((([[[([[([[[[(((([[[[(([[(((([([[[[[[([(([[([(([[([[([((([[[(([([([((([([([([[((([[[[[(([([([([[([([[(([(((([([(([(([[(((([([([[[[[[([[[([(((([[[([[[((([[[((([([[[[(([([([(((([[[[[([[[((([[(([([[([[(((((([[[[([[(((([[([([[[[[[(((([[(([[(((([[[[((([([[[([[([((([([(((([[((((([[[[[[[(([([([[[[([[([((([[[[[[[[((([((([(([[([[([([([([[[([[(([([([[[[[([([(([[([([[[(([[([([((([([(([(([([[(([(([[[(([[(([([(([([[([((((([([(((([[(([[([([[[[([([(([[((([([(([([([(([([[((([[[(([([([[((([([(([[[([(([([[[((([[[[[[(([([[([[(([(([[([(([(((([[((([[[(((([(([([(([[[([[((((((((([[(([[([[(([(([[(([(([(([((((([[([[[[((([((((((([([([[[(([[[[[(([[([[[[([([([[[([[[(([(([([(([[[[((([([[[[[[((([([[([([[[([((([([[[[(([([[([[(([(((([([[[[[([[([[[[[[((([[((((([((([([[[[([(([[((([[([(([(([[([[(((([[([(([(([([[([([([[(([([(([[[([(([([([(([([[[(((((((([([[(([([[((([[(((([[[([(([([(([(([((((((((([([[[(([[(([(([[[[((([(([[(((([(([[[[[[([[([(([([[((([[(((([[(([[([[[[([[(((((([([[[[(((([([[[[(((([((([((([[[[[([([(((([([[([([[([[[[(([[[[((([[[([[[[[((([([[((([((([[[[[([([((([([[([((([(([([((((([[[([(([([(((([(([[(([[([(((([[[([(([([([([[([[[[[[(([((([([(([[(([((([(([((([[[[[[([(([[[[((([[[[(((((([((((([[([[((([[([[[([([(([[([([[(((([[[[[[[(([([([[[[([([([(([([[([(([[[[([([[(([[[[[[([([([[[([[(([[[[[(((([(((((([([([(([([[[[(([[(([(([([((([([(((([((([[((((([(([([[([([((((((([([[([[[(([[([((([[[([(([[[(([([((([(((([[([[[[([([[[([([((([[(((([[[((((((((([([[(([[([[((((([(([[[([[([[[([[([([[[(([[[([[([[[((([[([[((([(([[([([[((([(([(([([[([[([[(([[[[([[[(([[([[(((((([(([(((([[([([([[(([((([[[([[[[([(([((([[([((([([[([[(([[[([[[[((((((([([[([([[(([[[[(([[[[[(([[[[([[([[([([[[[((([([([[([[([[[[(([(([([([(([((([((([[([([[[[[[[[[([(([[[(([((((([([([[[[(([[(((([([([[(((((((((([[[[([[[([([[[[([([([([[[[([[[[([[(((([[(((([[[([[[(([([[([[([([[[(([([((((([([[([([[([[[[[([[[[[[[(((((([([(([(([([[([((([[[([[([([([[([(([([(([[[([[([((([([[(([([(([((([[([(([((([([([[([[(([[(((([([([((((([(((([[([[[[((([[((([[[([[([[(([([([[[[((([[([[([(([(([([[([[[([((([([(([[[((([[[((([[[(([[((([[[[([[(((([((((([(([[(([([([((((([(([[((([([[([[([([[([[[(([((([([[[([[(((([([(([[[([[[[[([([(([[([(((([([[(([[((([(([(((([[([([(((((((([([[[([([([[[[[[([(([[([[(([(([[[([[[(([[[(((([[([(([[[[(((([[[[(([[[[[[([([([((([[([([[[(([([([([([([[([([[(([([([[[([([[([[([[[[[[([[[([([[[(((([([((([[((([[[[([([([([[[[[[[[(([[[[[((((([[[([[[([(([[[[[[(([[[([[((([[[[[[[[([([[[[[(([[[[[(([[(([[(([((([[(((([([[((((([[([[([[[(([([((([([([[([[[([(([(([([[(([[[([([(((([[([([((([((([([[[([([(((([[[([(((((([(([(([[[[[([[([((((([[((([[[[[[[[([[[((([[[[([([([([([(([([([[[((([[((([[([[[[([([(((([(([((((([[[(((((([[[(((([[[(((([((((([([[(((([([[((([(([([(([([([[(([[[[[((([(([[[([[([[[([(([[([((((((([[(([[[[[(([((([[[([(((((([[([([((([[(((([((([[((([([[([[[((([[[[[([[((([(([[[(([[[((([([([[((([(([(([[((([[[[[[(([[((((((((([[(([[((([[((([[([((([[([[([[[(([((((((([[[([[[[([([[[[[((([[[([(([([([[[[[[((([[(([((((([((([(([([([[[([(([[((([([([(((([([[([(([[[[[[[[[(([([[(([[(((((((((([(([[((((([(([[[[[[([[([((([((([[[[(((([(((((([[([[((([([[((([[[[[(([[(([(((([[([[([((([(([(([((((([([([([(([(((([(([[[([[[[[[([[([(([[([([[([[([[([[[[([((([[([([[[([[(([[[[((([((((((([[(((([([([([[((([[[([[[[([[(([[([(([([([[[(((([(([[[([([[(([[(([[[[[([[((([((([[([[([[[[((([[([[[[[[[(([([([([[[[[([(([[[(([([(([[[[((((([[([(((([([(([[[[[[[[[(([[[[(([([(((((((([([[([((([[([(([((((((([([[([[[(([([[(([((([[[[[([[[(([(([[(([((([[([[(([(([[([[[[([(([(([(([[([[([(([(([[(([[[([([([[((([[(([([[([[(([(([([((([([[[((((([[[([[[([[(([(([([((([[([([([[[([[((([[[[((([[(([[[[([([([(([((([(([[[([[([[([[([[((([[[(((((([((([([([([[[[[(([([[(((([[([(([(([[[([[([[([[[(([[(((([[[([(([([[([([(([([((([[([(([(([[(((([[[([([[[([(([(([[([(([[([(([[[[(([[(([[([([[[[([[([[[[[(((((([[(((((((((([[[(([[(((((((([[[(([[((((((([[((((((([([((([([[[((([[[[([((([[([[(([[([(([[((([((([((([[(([((((([[[((((([[[((([([[[[(([([((([(([[[([(([([(([((([[[[[(((((((((((([((((([((([(([([(([([((((([(((([(([[([[[[[[[([([([[([[[[[[([[(((((([[((([[([([(([[(([[(([[((([[([(((([(([[[[((([[([[[([[(([[([(((((([(([((((([[(((([(([[[(([(([([([(([([([[((((((((([(([([[[[(([([[[[(((([[(((([[([([([[[[[([[[[([([[([([(((([(([(([[([[[[([(((([([[[([([(([([[[(([[((((([[[(((([[((([(((([[[[[[[[(((([([[[([[([([([([[([([[([[([[([[[[([((((([[(([((([[[((([(([[[[([(((([[[[([[[[(([[[(((([[[([[([([(([[[[[([[((([[((([[([[([(([(([[[(([[[[[[((((([[[([[[([[(([[([[[([[[((([((([[[[[[(([[[[(([[[(([((([[([[[[((((([[[[([([([(((([[[[([(([([((([([[(([[[(((((([[(((([[[([[[([([([((([[(([([(([([[(([([((([(((([([[(((([[([[(([[(([((((([((([(((([[([((((((((((([[[[[[(([[([([[([[[(((([((([([([[(([([[[[[([[([[([((([[[(([(((([(((([([((((([[(([[([[([[([([[((([((([[(([[([(([[[[[[[[(([([[[([[(((((([[([([[([((([[(((((([([[(([([[([([[[((([[[[((([((([[[(([[([[[[[(((((((([[[[[[[[[((([[[((([[[[(((([(([[[([([[(([[(([[[((((([([[[(([[(((([([[(([[(([(([([([[(([(([(([[([[[(([[[[[([(((([(([(((((([[([([((((([([([(([([[((([((((([([[((([((((((([[(([[[([(([[([[[(([[(([[[[(((([[([[[[(([((([[(((([[[([[[([(([[(([([[[[(([[[[(([((([[([([[[[[[[([([([([((([[([([((([([[[[[[([[[(([[([[([([([[([([[[[[[[((([((([(((([[[(([[([[([[[(([([[((([([[(([(((([[([((([([[[([[([(([[[[[([(((((([[(([[[(([[((([[([((([(([(([(([((((((([[[[[[((([[(([((([(([(([(([[[[[[([((([[([(((((([[[[[([(((((([[([[[(([([[([[[(([(([[([[(([(([(([[([[[([([(([([([(([(((((((([[[[((([[[[(([[[(([[([((([(([(([(([((([[[[[((([([(([(([(([((((([[[(([[[((([[(([([([[(([(([[[(([[[(((((([[[((([[[(([[[(([(([[[[[[([([[[[[[([[[([[([([([(([[[[[(([[[[([([[(((([[([([(([[((([([(([[[[((([[(([([[(([[([((([(([([[[([[([[(([[[[([[([[[(((([([([((((([(((([[([[[[((([[((([(([([[[[(([([(([[(((((([[[[(([[[[([[([([[[[[[[[([([[([[[((([([([(([[[([([([[([((([([([[[[(([[[[([(([([([[([[([[((((([((((((((([[([[[[[([[([[([[(((([[(([[[([[(([[[[([(((([[([[[((([[[[[[[([[[(([[[[[([[([[[[([[(([[(([(([(((((([[[[[([([[(([[[([[[(([([([[([[[[([[(([[[([[((((([[[[([([[[([(((([([([((([[[([[[((([[([((((([([(((([[[(([((([((([[([[[[(([[[[[((((((([(([[([(((([[[([[[([[([([(([[[((([[(([[([((([[[[([[[[[(([([[([([[[[([((([([([((([([((([([[([((([[(([([([[[([[[[([[([(([([([[(([[([(([[(([(((([(((([[([(([[[[[([[(((([[([[([((([([(([([[((([(((([[[[[(([[([[(([[([([([((((([(([([([[(([(((([([[([([[([(((([[[[[[(([([([[[[([([[[([[(([[([([([([[[[([(([[(([[([([((([([(([([(([([(([[[([[(([[([[[(((([[[((((([[[(([[[(([(((([[([((([[([[((([[[(([[[(((((([[(([([[([([([[((([([[((([[([([[[(([(([(([[([([[(([([[([[([([[[[[[[([[(([[[[(([(([[[[((([[([([[[[[([((([((((((([[(([[[[(((([[[([((((((((([[[[[[[[([((([((([[(((([(([[[[[[([([(((([[(([((([((([((([(([([[[([[[[(([[[(([[(([([[[([((((((([[((([(([[((([[((([[([((((((([([(([[[[([(([[[([((([([[[[([[[([[[([[((([(((([(((((([(([((([[[(([(((([([([(([(((([[(([(([([[[[[[([[([[[[[[[([([([(([(([[[([([[(([(([[[[[[[((([((([((([[[((([[[([(([([([[((([(([([[[([[[([(([[[([([([(([[([[[([([[([[((((([([([[([[([([[(([[[[(([[(([(([[([([((([[([[[[[[((([((((([((([[(([[((([[[([[([((((((((([(([([((([([[[[([[[([((((([([[[([(((([[[([([([[((([[([(((([[[([([(([((((([([[(((([([(((([[([([((([[((([(([([([[[([[([[(([((([[[([(((([(([((([[([[[(((([[[([[[[((([[[((([[[[(([((([(([[(((([[(([(((((((((((((((((((([(([([([[((([[((([[[[[([(((((([([[[((([([(([[(([[(((([[[[[[[([([[([([[[(([([[([[([(((([([((([(([([[(([(([[[(([([[[[([[(([[[(([(([(([(([[(((((([(([(([[((((([(((([([([[(([[[([([[((([[[([[[[[([[[([([([([([[([([([[([[([[[(([((([[((([([[[([((([[[[[([([[[(([([([([[[([[[([([[[[[((([([[[[([([[([[(((([[((([[[[[[([(([(([[([([([[[(([[(([[[(((([(([(([[(([([[[([[([[(((((((([([[(([((([[((([[[[[(([[(([(([[[(((([[[[[[([[[[[[[([([[[[[(([[[([((([[[(([[((([[[[((([((([(((((([([(([([([[([[([[(([[(([([((([([[([((([([[[[([(((((([([((([[[[((([[([[[(((([[((([[[((((([([((((([((([[(([([[([([((([([([([([[[[(([[[(([[[((([[([(([(([[(((((((((([(([([(([[(([([(((((([[[(([([[[((((([(((([([([[([[([[(([([(([[[[[([([[[[[[([[(([([([[([[[((([([[((([([[[([[([([([[([[[[[(((([[[[[[[[((([[(((([[[[([(([[[(((([([[([((([[([[[[(([[[[([[[([(([[[[([([[[((([[[((([([[[([[([((((([[[([[[[([[[(([([[[[((([([[[[[[([(([[((((((([(([((([[[[[([((([[[[[(([[[[((([[(((([[[[((([((([[[([(((((([[[[(([[[([(([(([[[[[(([(([(([([(([([[(([([(([([([([((((([[[[[[([[[(([[([(([(([[(([[([[((([([[([(([([(((([[([[[[[((([([((([(([(([[([[([[([((([([([[(([((([[[[([[[[[[([(([(([[[(((([[([([([([([[[[[[([((([[[[[((([((([(([[([([[([((([[((((([((([[((([([[[([(([([((((([([([((([[[([([(([(([[(((([[(([([(([([[([([[([(([[(([[(([((([([[([[([[[(([([(([((([([(([[[[[([[([(((([[[((([([[[([([[[[(([[(([[[([[[((([(((((([[[[(([[[[[[[[([[[([[[(([[([(((((([[[[[([([[(([[[[[[([(((((((([((([(([([[([[[[(([((([[(([([(([([([([(((([[([([[(([([[[[(([[[([(([([[([[[[(([([(([(([([([[[(([(([([[([[((((([[[[([[([([[[[[(([(([([[[[[([[[[[[(([(((([([[[[[[(((([(([[(([[[((([(([[(([([(([[([(((((([[[([[(([(((([([[[([((([(([[(([[[(([([([[([(([((([(([[[([([[(([([(([(((([[([[(((([(([[((([([[[([[[([[[(([[[[[[[([((([((([(([[[[((([[(([[((([[[((((((([[[((([[([((((([[[([[[[(([[[([((([[((([([(([[[(([([[[[[[[([[[[[[([[[[([[[[[([(([[[[[([[([[[[(([((((([[([[[([([(([[[[((([[(((([[[((([((([((((([[[[((([[[([((([([([((((([([[([[[(([[(((([[[[[[[((([([(([[([(([([[(([(((([[(((([[[([([([(((([[(([(([([(([((((([[[[[(([[([[(((((([(([[([(([[[(([[((([[[([[[(([[[[(((([([[([((([((([[[[(((((([[((([(((((([(([[[[((((([[[([(([(([(([([((([[[[(([((((([[([[(([(([([(([([[[[(([(((((([([[[([((([[((((([[(([[([(([[[[(([[[([([(([[[[[[([([[[[([(([([(([([[[(((([[([([(((([([([[[[[[([([([(([[([(([[[((((([([(([[[([((([[[((([[([[(([[[[[((([[[[([[(([((((((([[[([[[((([(((([[([([[([([[([([([([[([([[([[[[[([[([[[(((((([(([((([((((((([(([((([[[((([[((([(([[([[([[(([(([(((([([([[[[[([[[(((((([[[[[[[([[[[([[[[((((([(([[([([[([[(((((([[(((((([([[[[([(([([[([([([(([[[[[[[[[[([([[([[[([((((((([(([([[(([([[(([([[[[((([[[((([[([([((([([((((([([([((([[[[(([[[[((((([(([[([(([(((([([([((([[[[[[((((((([([[[([[[([([[(((([([[(((((([([[([[([[((((([[[(((([(((([(([(([[([(([(([[((((((([[[(([([[(([([[(([[[[[((([[[([(([[[(([[(([[[[((([(([[[([((([([([(([(((([(((([[([(([[(([(([[[((([[[(([([([((([[((([[[((([([([[(([([[[((([[[[[[[[([[(((([(([[[[[[[[([(([[[((([[(((([[((((([[[[((((([([([((((((([[(([(([[((((([(([[(([(([[(([([(([[([[([([([[[[[[([[(([[([([((([[([([(([[([([([[[[([[[[([((([((([[([([(([(((([((([([([[((((((((([([[[([[([([(([[((((([([[([((((((([[(([([([([((((((([(([[([(((((([[(([((([([([([[[[(([([[[(((([(([[([[((((([[[((([[[[((([[([([[([([([(([[[[[[([[[[(([([[((([(([[([([[(([[[[[[([[[((([[(([[[((([[[(([[([[(((([([((([([([([(([((([[([([([((([[((((([(([([[[[[[([(([((((([[([[([[[[[([(([((([([[[([[(((((([[[([([[([[([([[[([[([(([([[[[(([([([(((([[[([[([[(([[([[((([[[(([(([([(([([([[[[([([((((([[(([[([([([[([(((([([[([([(([([(([([[[([[([((([[(([[[[([[[[((((([([([(([([([[[([(([([(([([[[[([[(((([([([[[[[([[(((((([((((([(((([[((([[[[((([[([((([[[(([[(([[([(((([([((([((([[[(([([[[(([([[[[(([(([(([[([(([[[(((((((([[[[([([([[(([[[(([[(([([[[[[((([([[([([[[[[([[(([[[([((([([[[(([[(([[([(([[((([(([((((([[[[[((([((([[(([((([(([(([([(([([(([([([(((([[(([[(([[[(([[(([(([((((((([(([(([[(([[[[((((([([([(((([(([[([[([[[[(([((((([((((([[([[([((([[([[((((([[[([[(([[[(([[([(((([[[[[[([([[[([([[(([[([((([[[[[[[([([(([[[(((([([[[[(([[[[(([(([[([[[[[[[[(([(([[(([([([(([[([[([[([((((([[([([([[[[[(([[[([[[([(([([[([[[[[((((([[[([([([([(([(([[[[([[([[[[[[(([[((([[[[[[([(([[[([([(([((((([[(([(((([[[(([([((([[((([[([([(((([[([((((([(([[[[[[[[([[([[(([([(([[([([[([(([[([[(([([(([[[(([([[(([[[[(([(([([(([([([([([(([[[[[[[([[((([[[((([(((((([[[[[(([([[[[((([([(([[([([(([([[[[(((([([[([[[(([(([[([[[(([(((([([[((([([[([[(([[(([([(((((([([[[(([([([(([[([(([([[(([[[(((([([[[[([([[([[[[[([(([[[([[[([[[(([[[(([[[[[(((([([(([((((((([([(([(([[([[[[([([[[([((([[((([((((([[([[[(((((([[[[(((([[(([[[([((([[([[[([[((([[([([[[([(([[(((([[(((((([([([([[([([[((([[([([[([((([[([[[[([([(((((((((([(([[[([([([(([[([([(([[((([([[[[([([[([[[(([(((([[(([[((([[[[[([[([[(((((((([[([[[[([[([([[(([[(([([[[[([[([(((([[[([[[[[[([((([([[[[[[([[[[([([[([((([(([([[([[[[[[[(([[(([[((([(([(([[([[[([[[[[[([[[[[((((([[[(([([([[[([((([([[(([((([((((([(((([[([[[[[(([[(([([(((([([[((((([(([[([((([([[[[(([(([([[[([([[[([(([([[((((([[[([(([([(([[([([(([((((([(([(([[([[[([((((([((([([(([[([(([((((([[[[(([[(([([[[([[[[[[[[([([[[[([[[(([(([[[[[[(([[((([([((([([[(((((((([[([([[[[[[([[((([(([([[[(([([(([[[(([([([[(([[[[((([((([([([[[([[(([[([(([([[([[((([([[([((((((([[[[(([[[[[((([(([((([((([[[([([[[([(([[[([(([[([[((([([([([[[(([([[[([([([([([[[[(([[(([(([[(([([(((([[[(((([([[[[((([[([[(([([((([[([([[([[[[[([([((([[(([[[([[([(([[[(([[[[[[[((((([[[(((((([[[(([[([[([([[[([[([[[[[[[([[[[[[[((([([((((([((([[[[(([((([[((([(([(((((((([[(([[([[[([[[[[((([[[[[[([((([([[(([[[((([[[([(([([((([((([([(([(([[[([[[([[(((((([[[([((([([([[[((([[(([(([(([([([[([[[([[([[[[(([[((((((((([[(([[([[([[(((([[[[((([(([([[[[(([[([[([[(([([([[[[[[[((([([[([([((([[([(([[[[[[([[[([[[[[([(([([(([[(([([([[(([([((((((((([[[([[((([[[(([[[[[[(([[((([((((([[[([[[[[[([[([([[(([[[([[(([([(((((((([(([[([([[[(([([[[([([[(((([([[([([[[[(((([[([[([(((([[[[[(([(([[[((([([(((((([[([(((((([((((([[(([((([(((([[[[[[([[([([([(((((([[(((((([[[[(([[([(([([[(([((([([([[(((([[([(([([([([([[[[[(([[([[[(([(([((([((([[([[[([[[((([((([[([(((([(([[[(((((((([(((((([[[[[([[[([([[[[[([[[((((([(([(([[(([(([((((([([[(([[[[(((([[(((((([[(((((((([(([[(([[[[([([[[[[(((([[[[((([[((((([[(([[((((((([[([[[[([[[(([[[[[[((([([[((([([[([([([[[[(([(([(([[(([[[[(((((([[[[((([([([([[([(([[([[[([([[[([([(([([[((([[[([(([(([[(([([[(((([([(([[[([[((([[[[(([[(([[([[((((([[[([[[(([(([(([(([[(([[[[[([[[[([[([((([([[(([[([([([[(((([[[[[[([(([(([([(([([([([((([[[([(((([(([([([[(([(((([[[(([[[[(([[[[([[([([[([[(([[[[([[[([([[([([((([[[[[(((((([[(([[([[(([(([[(([((([[(([[[([[[[(([[[(([[([([((((([[[[[[((((((((([(([(([(([[[[[[[[(((([([([(([([(([([(((([[[[[((([([[[[[([(([(((([(([([[[((([[(([[(([([[[[[[([[[[[(([([[((([[[(([[[[([[[((([(((([((([([[[[[([[[[[[[[([([(((([[[[([([([(([[((([(([[([[[[(((([(([(([(([[(([[(([(([(([[[[(([[([[((([(([([[((((([[[[[[([([([([(([([[((((((([([(([[[(([[([([([([([([(((([((([([(((([([(([[([[[(([([[(([([[[[[[[[([(((([[([((([[([[(([[[[(([[[([(((((((((([((([[[([([(([([([(([[(([[[[([[(([[[[[(([[([[[[[[([[(((([[[[(([[(([[[(([[([[(([([([([[((([([(([[[(([(([[([([[[([((([([[(([(((([[[[([((([[[(([((((((([[((([(([(([[[([[[[(([([(((([[[((([([((([((([[[[[[(((((([((([[[[[([(([(([([(([[[([([((([([[[[[[([([([[((([[[[((([[(([([[([([([((([[([[([(((((([((([[(((([([[[[([(([[[[([(((([(((([[[([[[[[[[[(([[([[(((([([((([[[([[([[[((([([([([((([[([[([[((([[((([((([([(([([[[[(((([([((((([[[[[[(([(((([[[((((([[[([[[[[(([[(([[([[[[[([(([([([[[([[(([((((([[([[[[[[[[(([[[[[(([([[[[([(([[[[[(((([(((((([(([([((([((([[[([[(([(((([[[[[(([([(([(((([([(([(([(([([[[([[[([(([[([([(((([((([[([((([(([([(([([([[[([([[[(([(((([[([[([[[((([[[([[[(([([((((((((([[[[([(((((([((([[(([[[(([[(([[(([[[(((((([[[(([[[([([[[((((([[[[([(((((([([[(([[[[[[[([([[[([[[[[(((((((([(([([[[(([[((((([[[([[([[[([([[[([(([([[(((([[(([([[[([[(([[(((([[[(([((([[[((((((([([[([[[[((([[[[(((([[(([(((((([[((([((([[[([[([(((((([[[[(([([(([[[[((([([([[[((([((([([[[[((([[[[[([(((([([([(([[[((([([(((([((([(((([[([[[(((([([((([([[((((([[[((([(((((([[[([[[(([[((([([[((([(([[[([[[([(([[[([(([[[[[[[[([[[[[[[((([[([([((([[[[[(((([[[[([([([(([[(((((([[(([((([([[[[([(((([[((((([([((([[[([(((((([[(((((([([[([[[(([[[[((([(([([([(((([[(([(([[[(((([([([[[[(([[([[[[([(((([[(([[(([[[(([[(([([[([([[[[[[([[(([(([([([[[[(([([[([([[[([[([[([(((([([([(([[([([([[([([[([[[((([(((([((((([[(([[((([[(([[[[[[[(([[([[[[([[[([([[[[([[[[([[([(([[([(((((([(([(([[[[(([([([(([([(([((([([[([[(([((([([([[[([((((([[[[(((([[[[(([([((([((((((((([[(((([[[((([((([[[[[([([([[[([[[([([[((([([(([([[([(((((((([([[([[[(((([[([[(([[([([[[(([([([[[([([[((([([([[[([[[([[([([([([(([((((([[([[(([([[[[([([(([[((([[[(([((([((([[[([[([[(([[[((([(([([(([(([(([[([[([([([(((((((([[[[[[[([[([[[[[[[([[(([([(((((([([(([((([[[[[[[[(((([(([(([[[[([((([((([[([[[[[[([(([[((([([[[[(([([([[([((([[(([(([((([[([[([[[(([(([((([([[(([([((((((([[[[[([([[[[((([[[(((([[(([([[[([[[[[[[[([[[[(([([([[([[((([([((([[([([([([[[([(((([[((([[([[[(([[[(([[([(([[[(([([[[[[[([[((([[[([[(([[([(([[((([[[[[((((([((((((([[[[[([(([([[[[[[((((([(([((([(([[([[[[[([[[(([[(((([([([([([(([[((([[[([([([[([(((((((([[([([[[[(((([[((([([[([[[[[((((((([[(([(([(((([([[[([[[(([[[([((((([[(((([(([[((((((([[(([[([[([((([[[([[[[([[[[([([([[(([(([[[[([[(([(((([[[(((([(([([[([[[([((([([[([[[([[[[[([[(([((([([([[[[(([[(([[[(((([(([[[(([((((([[[[([[[[[(([(([([([[[[([[([[[((((((([[[(([[[[[([([[([[[[[((([[(([[(((([([([([[[[[([(((([[([[[([[([([(([((([[((([([((([[[[[[((([[([[[[((([((([((([[([[((([[[[(([[([([([[([[(([((([[[[([[((([((([(((((([(([(([((([[([[([([([[[[[[(([[[[[([([((([[([[((([[[((([(([(((([([[([(([([[[[(([[((([(((([(([((([[[[[[([([[[([([((([([[[[([[([[(([(([[([([[[[[[((([((([[[([([[[([(((([([[[[((((([[(([[(((([[(((([(([[[[((([(((([(([((([([(([[(([[[[[[([[([([[([[[([[[[([[(([(((([((((([([[[[(([[([([([[([[((([((([([(([((((([(([[(([[(([([((([(((([[[[((([[([([([[([([[[([((((([[[(([[(([[[[([([(([((([([[(([((([[(([[(([([([[[[[[[([[([([(([([[(((((([[[((([[([[((([((((((([(((([(((([[((([((((([([([[[(((([(([[([[([(([((([[[([[([[([([[([([[(([([([[([([[[[(((([(([([((([([[([([((((([[([((([[(([((((((([[[[[[(([([[[[[[(([([(([([[([[(((((([[[(([([([[([(([[([(([(([([([[[(([((([(([[([[[[[[[([[[[([[[[[(([[[[[[((([([(((((([[((([[[((([[[((([[[[[[([[(((([[[([([[[((((([[([[((([((([[([((([[((([[[[([[((([[([([([([([([[([([(([(([[([([([[[[([[(([[([[(([(((((((([[[[[[(((([[([([([([([[([[[([[[[([[[[((([(((((([[((((([[[([([[[[[((((([([(([(([([((((([[[[[([([(([[([((([([([[(([[[([[([([[[((([((([(((([[[[([(([[[[[(([[(([[(([([(([[[((([([[([[[[((([[(([[[((([([[[([([[[((((([(([((([([((([[([[([([([[[[[[(([((([([([(([[[[((([[[(([((([[(((([[((((([(((([(([([((([[[[[([[((([[([(([(([([[([(([(([[(([([[[((((([(((([[[([(([[[((((((((([[[([((([(([[((([[[[([(([((([([[(([([((([(([[[[([[([([((((((([[[[([((([((((([[(([[(([[([(([([(((([[[([([[[[[[[([(([(([[[[[[([([[(([[(([([(((((([([(([([((((((([(((([([[[([([[[[[([[[(([[[((((([[[[([([([([([([[([[[[([[[([[(([((([((([[([[[([((([[[(([[[([((((([(([([[[([[[([([([([(([(([((((([((([[[[([[[(([[[((((([((([((((([([[(([([(([([(([((((([([(([[([((([[[(([[([([([(((([[[(([(([[([[([([[[[([((([(([([([[[[[([[([[[([[(([([([[[[[([[((([[[[(([([[([[([((((([[(([[(([[(([[([([[([[([[([([(([([([[(([(((([(([[([([(([[([[(([[[[[[([([[(([([(([[(([[([[([([((([[[(([([[[([[[(((([[[[([((([[[([[([([([[[(([([[[([(([[[[[([[[(([(([[[([([[(((((([([(((([[[[[(([[([[[(([([(([[[([[([[[[(([[(((((([[((([[([((((([[((([[[[(([[[[([([([(((([(([([[(([([(([[[(([[([([[[[[[[(([([[([[[(([([(([[([[([[(([[([(([[(((([[(([((([[([((([[(([(((((([[[((([([[((([([[[([[((([(([[([([([[((([[([[(([(((([(([([[([(([[[([(([[[((([(([[[([([[[[[[(([(([(([[[[([(([[[[([(((([(((([[[([[[[[(((([((([[[[[(([(((([[[[[[[[(([[([[((([([[([(([[([([[([[[((([([([[([((([[[[([([(([([((([[([([[(([(([[[[([([[[[([(((((([[([[([[([([(([[([[([(([[[(([(([((([[[[[([[([[[[[([[[(((([([[[[(([([((((([[[((((([[(((([([([([((([[[((([[[[([((((([[(([[([([[[[(([((([(([(([[[[[[([(((([([([(([[[[[[[(([(([(([[[[(((([[((((([[[[[(((((((([[[([((([([([[([([[[([((([[(((([(([[[[([([(((((([[(((([[[[((([[[([([[([((([[[[[[(([(([[[[[[([[[[(((([(((([(((((([([(((([(([([((([[((((((([[([[([([(((([[[(([([(([[([((((([([[(([[[[[[((([[[[((([(([([[([[[[[[([[[[[[[([[((((([(((([([([[([(([((((([[(([[((((([[([[[[[([[([[((((([(((([((([[([(((([[(([[[[[[(([[([[[(([([(([[([[[[[(([[[[([[[[[([(([[(([[[[((([[(([(((([[[((([[([(([[[((((([((([((([([((([([([((([([((([(((([[([((([([[[(([[[([[([[([([(((((([[((([[[[([[[([[[[[((([(([[[[((([([[[([[((([([((([((([[[[[([[[[([((([([((([[((((([[[[[([(([[[([[[([((([(((((([[[[([([((([(([([([([(([[(([[([[([[([[(([([[[([([[((((([(((([[([(([([[(([[([[[[(([[([[[([[[(((([[(([[[[([(([(((([[((([[([([([[([[[((([([([(([[((((((([[[[[[[(([[[([[[[[((((([([([([[([[(([[((([(([[[[(([([[([([[([([[[[[([[(([[([[[[[[[[[((([([([((([[((([(([(([[([[(([[[[[((([(([[[[([[([[[([((([(([([[(((((([[[(([[[([([[([[(([(([([[([[[[[[(((([(((([[(([[[((([([[([[(([(([[(([([([([(([([[[([[(([[((([([([([[([[[([[([([[([[(((([([([(([[(([[(([([[([((([([[[(([[(([[(([[[([(([[([[(((([[([[(([([[([[[[((([[(((([[(())]]))))]])))]]]])]])]))]])]]))))]])]]))])]]]))]]))]]))]]])])))])]])]))]]))]]))])])]))))]])]])])]])]]])]])])])])))]]))]])]]])]))])])])]))]]))]))]])]])])))]]]))]]))))]))))]]]]]])]])]))]))]])]])])]]]))]]]))))))]])]))])))])]]])]])]]]]))])))]]]]]))]])]]))]))])))]])))])])])))]]]]]]]]])]]))]])]]]]])])]])])]])]))]]]]))])))]]))]])]])])])])))))]]]]])]]]))]]]]]]])))))))]]))])])])))]]])]])])])]])))]]))))]))])]]]]))]]))))]]])]]])]]))]]]])]]))]])]))])]]))))])))))]])])]]])]))]])]])]])]]))]]))])])])]))])))])])]]]]))))))])))])]]])]]]))])]]]]])))))]])))])])))])]]]])]]]]])))])))])])))]])]]])])))]]]]))])))]]]]])]]])]]]])))]]))))))])])]])]])]]]))]]])])))])]]))))])))])])))])])])))])])))])))])))))]]]))])]])))]]]))))]))]])))]]]]))]]))])]]]]])]]]]))]]]]])]]))])]))]]])]]))]]]]]]))]]))))])]])))]))))])))))]])]])]]]]])]])))))]]))]])))))]))])]])])]))))])))))]])]]]]]]])]]]]]])]])]))])))]]]])))]]]]]]))]])])))))])]]))])]))]]]))))])])]])]])))))))]])))])]))]))))])]))))))]))))]))))]]]])]]]]]]))]))]]]]]])))])]])])]]])))]]]]))))]]))))))])])]]]]))]))))]])))])]]])])]])])])))])]]]))))))))]]]]])))))]]))))]]]]))]))]))]]]]]]]))])])]))))])]]]]]]))]))])))]))]]]])])]]))]])))))])]]]])))]]])))])])])]))))]])))))]]])))))])]))]]]])]))))]]])]]]]])]])]]]]])))]))]))]]]))])]])]]))])])]])]])]]))))))])]]]])])]]]]))]))]])])]])))])]))])])]]]])))])]])])])))]]])]])])]]))])]])])))]])]]))]]]]]]]]))))]))]]]]])))]))))]]]]])]]]))))]))))])]]]]))])]]]]))]))]))]]]]]])])]]]))])))]]]))])]]]))])]])]))]))))]))]])]])))]])])])]]))])))]])]]])])))]])])))]]]))))))]))]])))])]])))]))]]))))]]))])]]))]])]])]]))])]))]]])]])]))]]]]]]])])]]))]]]))])]))]])]))]))))])])])]]]]))]]]])))]])))))])]])))]]))))))]]))]]]])]])]]]))])]))]]])]]))]]]]]))))])]))))))]])])]]]))]))]]])]]]]]))])]]])]))]]])])])]])]]])))])]]]]))))]]])]]])]))]]])))])])]])]]))]]))])]))]])])]]]]]]))]])]]))])])]]))]))))]))]])])]))])])]])]])]])])]]))]]))]]))]])))))])]])]])]))]]]])))]])]]]]])])]))]])]]])]])]]]]])])]))])))])]]]])])]])]]))]))]]]))))])])])]]))]]])))])]]))])])))))]))])]))])]))]])])))))])))])))))]]]))]]])]]]])))])))))]))]))])])])])]]])]]])]))])))))])]]]))]]])))])]]])]])))])))]))]])]]])]]]])]])])])])])])]]]])))))]]]))]]])]]]]])])]]])]))))])))))))])]))])]))))))])]))]]))]])])]]]]]]))]))])]]]]]]])])]]]))))])]))])]]))]]))]])))))])))])]]]])))))))])])]])]]]]))])))])]))]])])))]))])]]]])))]]))])))])]]])))))))))]]]))])]]]))))])))))]]])]))]]))]))])]])]))]))])]])))]])]]]]])))])]))]))))])))))]]))))]])))]))]]])))]]]]))])])])))]))]]]]]])])])]])]])))])])))]))])))))]]])])]]])])))]]]))]])))]]]])]])])))]]]))])]))]]))]]))]]]]]))])]]]]))))])))])))]]])])]])]]]))]])])])))])]]))])])]]]]])))))])]))]))])])))))]]]]])])]]])))))]]))))))])))]]]])]]]])]]])]])])])])])]]))))]]]]]]))))))))]))]])]]))]])]]]])])])]]))]))])])]])])])])])])]])))]])]]]])))]])))])]])))])))]])]])))))]]])])]]]))))]])]]]]]])))]]])))]]])))]]))))))])])))]]]]]]))]]]]])]]]])]]]]]]])]]))])))]))]]])])]))]))])]]))])]])])]))]]]))))))]])]])]))])]))]]]]]])]))]]]]]])))))))]))]])))])]])))))])])]])])))])]))]))))]]]])])]])])]))]])])]])])]])]])]]])))]))])]])]]))]))))]]])])])))))])))]]))))]))))])))))))])))]])]])))]]]))))))]])]))])])]])]]]]]]])])]))]]))]])))]))]])])))]))])])]]]]))]]))]]])))))])]]])])]])])])]])))]]]]))))])))])]))]]))]]))])))))]))])])))])))]])]])])])]]))]]]])])))))]))))]))]])]]]])]]])]])])]])]]]]]]))]]))])])))]))]))))])))]]]]))]))))]]))))]]))]])))))]]]])]))))])]]])])]]])))])))]]]]]])])]]))]))]])]])]]]])])))])])]]])])]]]]]])))]))]))))])))]]))]]]])]))])]])]))))]))])))]]])))]])]])))])])]]]]]))]]]]]])])])]])]])))]))]))]))))))])))])))]])]]]])))]))]])]])])])]]))]]]])))]])]])))])))])))]]]])]])))]]]]]])))])])))]])))]))])])]])]]])]]))))])]]]]])])])]))))]]))]])))]]]]])]])])]]]]]))]]])))))))]]])]])]]]])])]))]))]]]]])]]]])))))]))]]]))]))))]]]))]]))]]]])])])))]))]])]]]]])]]])]])])))])]]])]])]))]))))]]]))))]))]])]]]]))]))]])])])]]]])]]]])]]])))])]])]]))]])))))))]]))]))))]])))))])]]]))]]])]]])]))))]))]))]])))))))]]]]])]])])))]]))))]]]])])]]))))))))])]])])])]]])))]]))])])])])]))))]]))]]])]]]]])]]))])))]))])))))]]]]]])]))])]]]]])))))))])))))]]]]])))]]))])]]))]])]]])))]])]]]]]])]))]]]))])]]))]]]))]]])]])))]]))))])]]])])])])]])))])])))]])]])])]))]]]])]]]]]]]])]]])]))]]))))]]])))]]]])])]]]]])))))))])]))]])])))]))]))]]])]])]])))]))]))]])))])]])])]))]]]])])))]]))])]]]]]])]])))])))])]]]]))]))]))))]]]]]]]])))]))])]))))))])]))]])]]]]]]])]])]]]]]]]))))))))])])])]])]]))]))]))])]))])))]]]))]])]])]]])))])))]))]]])))]]))])])]]]])]))]])]])))))]))])])])])]])]]])]]])])])))]])])]]])])]))]]])])]]))]])]]))))]]])]])]))))))))])]])]))])])))]])])]]])]]])])])]]]]])))])))]]]))))]])))))))))])))])]))]]]]))))]]]])))))])]]])])])))]))]])]])])))]))])]))])])]))]]]]))]))]))))))])]]))])]])]]]])]]]])])]]])]]]])]]))]]]]]]]))]])))]]))]])))))]))))])))]]])]])])]])])])]]))])])]))))])]])]])]]])])]])]))]]]])])]))]))]])]]]]]])])]])]))]]))]]]))]]))]]))))])]]]])]]))]]]])])]))))]]]))]))]]))))])])]))])))]]]]))]]])]])]))))))]]))))))])]]])))])])))))]]))))])]]]])])))]))]]))))))]]))])])])]]]]))))]]]]])))])])]])))]]]]]]])]]]]]]]]))])]]]))])]]])]]]))])))]])])))]]))]]])]]]))))))])))]]])))))]])])))])]))))]]])]]))))])))]))))])])))]]]))])])]))))])]]]]])))]]]])])))])))]]])])])))]]]]))])]))]]]]))))))])]])]]])))])))]]))))))]))]]))))]]]])))]]]])]])])))))))]]])))]))]]]))))]]))]])]]])]))]]))))]])]))])]]])])]]])]])]]])))))]]))]]])]))]))))))))]]]]])]]])])]]]]]]]))]])]))))))])]]]])))))]]])])]]]))]]]))))))]]]))]]))]]))]]]))]])))]))))))])]]]])))))))))])]))]]])]]])))]]])]])]]))))]))]]])])]]])])]))])]))])))])]])))]))))])])]]))])]]])]]])]))]))]))])]))))]))])]))]]]]]))))]))]])]]])))])))])]))]))))))]))))]]]]]))])]]]])]))]]]]]))]]]]]]]])]])))))]))]])]]])])]))])]]]]])]]))]]))]]]]])]]])))))]]]))))]))]]]]]])))))])]))))]]]])]))])])))])))]])))]])]])]])))])])])])))]]])]])]]])))])]))))]])]]))]]]]]]]])]]]))))]))))])]]]]))])]]]])]))))]])))]))))))])]])]])))])])])]])]))]])))]]]])))]])])])]]]]]])])))])])]]]))])]))]))])]]]]])))]))))))]]]]]])))])))])])))]]]))))])]))]]]])]]]))]))])))]])))))))]))]]])))])]]]]))))]))]])])))])]]])])]]))]))]]]))])])))]])])])]))]])]]))]]]))]]))]]]]))))]])]]]]]])]]))]]]]]))]])]]]]))]]))])])]))])])]]])))]))))))))))])]]]))]]]]))]])]])))])]]))))])]]]]]]]])]))]])]))]]])]]))])]))))])])))]))))])])])])])])]]))]]]))])])))))))]])]))])])])])]]]]]])))))]])]))])))]])]]))]]]]))]))]))]]))]]))]))]))]))))]]]])]]))])))]]))])])])]]]]))))])])]]]]]]]])]]]]])])))]))))])))]]])]]]]))]]])))]])]))]]]]])]]]]]])]))]]))]])))]]])]))]))))]))])]]]]])])))]]]]]))))])]))])]))])])]))))]]]]]]]]))]))]))])))))))))]]]]]])))))])])]]))]]]))]]]])]]]))]])))]))]]))]))]])]]))]]))))))]]]]])))])])]])])]]])]]]]))]])]])])]])]]]]))]]]]))]]]))))]))]])])]))]))))])]]])))])])])]))])]))]))])]]]]]]))))]])])])]]))]])])))])]])]]]])]]]]]))]]))]))]))]))]]])]]])))))]])]]))]]))]]]])))]])]]]))])]))))]])]))]]))]))])]]])))]])]))])])]]])])]]])]]))])]])])])])))]]]]))))))]]]]))]]))]))]))]]]])])])]])])))]])])))]]]]]]))]]])]]]])]])))))))]]))]])))))]])))]]]]))))]]]]])])]]]]))]]))]))))))))]]))))))]]))))]]]]))]])])))))]))]))]]))]))])))))]]])]]]]])])]]])]]]]]))))))]))))))))]]]))]))))])]])))])))]]])]]])]])))])))]))]))]]])]]))]]]]])])])])]))])]]))))]])])])))]))]])]))])]]))]]]]))))))]]))))))])])])]])]]]]]]))))])))]))]])))))]))))))])]]))))))])])))]]]))]))]]]]]))))])]])]]))))]]]])])]])]))))]])])]]])]))]]])])]]))]))))))))])]))]])]]]))]])])]])]]]]]])]]])))))])))]]))]]]]]]))]]])))]])]]])))))))))])]))]])])]))]]))])]))])]]]]])]]])]]]]]]))])]])))])])]])])))]]]]]]])])]))]])]])]]))]]]])]))])))]]]]))))]])]])]]))]])))))))))]]))]]]])]])]]])]])])]))]))]))]])))]]])])])))])]]]))))))]])]]])]]]))]))])])))])))])]))])]]])))]]]))]])])))])]]]]]])))]]]]])]]])]]))]]))))))))]))])))]])))]))]]]])))])))))])])))]]]]]]])]]]]]]])]])]]])])]])]]))]]]))))))]]])))))]]]]]]]))]]]))])]])]]]))]])))])])]]]]])]])])]])))])]))]])]])))]]]])]))))]]]))))])]))]]))]))]]))]]]])])])])])]]])]))]]])])])])))]])]]))])]]]))])]]])])]]])))])))]))])))]]]]]))]]]])))))))])]])])))]])]])]))])]]))]])]]])])])))])))]]]]))]])])]))]]]))])]))]]])]))])))]])]]]]]])])]]))))))))]])])))])])))]]))]]]]]]))]))]]])]]]])])]]]]]]]])]]])]))]]))]]]])))))]))])]]))])])))])))))])]]])]]))]))])))))]))])])]]))])]))])]]])))))]])]))])]]])])]]])]))]))]]]])])))])]]))])))))]])]))))])]))]]))]]]]])]]))))])))))])))]))]])])))])]]])])]))]]])))))]]]]])]]]]]])]]])]]))]))])))]]))]]))]]]]]]])]])]))])))])]])])]]]])]]]]]])])))])]]]]]])]]]))))])]])]]]])]))]]))]])])]])]]]])]]))))))))]])]])]]]]])))]]))]]))))]))]]])]])])]]]])])))]]))])])]]))])])])]]]))]))))))))))])])]]]])]])))])]])])]])))]])])]])])])]))))))]]))))]]))])]]])])]])))]])]]])]])))])]]]))]]))))]]]]))))))]]])]])))))])))]])))])]]])])]]]])]]))]))])])))))))]))])]))))]]]]]))]]]))]]])]]])]]]))])]]]]])]])])]]]])]))))]]]))]])]))])]]))])])]))]]])]))))))])]))]]))]])]])])))]])]))))]))]]])]]))]))]]])]])]))))]]]])]))])])]]))])])))]]]])]))]]]]]))))))])))]]])))]])]]]]]]]))])])])])]))])]))]))]]]]))]])]))]]]))])]))]])]]))])]])])]]))])]))]])]])]]]]]]]]))])))))])]]))))])])]])))]])))])]))]]]))))]))]])))))]))])])]]]))])]]]]]])))]]))]]]]]])]])]]]]))]))])])])])]]])))))]]]]])]])]))])]]])]]]))]]]]])])])]])))))])]])]])]]))])])]))]]))]))]]]]]]]])]]))]))]]]]))]]]])]))))]]]))])])]]]]]]])))])]]))]])])]]])])]]]]]]))))])]]))]]]))]])]]])))))]])]])))])]])]])))))])))))]))]]]])]])]]))]))))])])])))))]]]]))]]))]))])))))))]))]))]]))]]]))]]))]]))))])])]))])]))])]))]))])))]))]])))])))]]]]])))))]))])))]]))])]]))]]))]]])])))])]]]))]])]]]]])])]])])))]]]]])]))]]))]]]))]])])])]]]]))))))))]]]))])]]))]))]))]]]])]))]]])]))]]])))])))])]))))])]]))]]))]]])))])]])))]]]])))]]))))])))))]))))))]])]]]]])])]))))]])]]]])]))])]))])]]])])]))])])])))))]]]])]]]]))]])))])]])]]])]))])]))])])]])]))))])]])])])]]))]])))))])])]]]])])]))])]))]))]]])))]])]]))]])]])]]]))))])])]))]]]])]))])]])]]])])]])]])])]]]))))))]])]]])])))]))])]]]]])]])]])))))]))])]]]]]])]))])))))]])))])])])]])))]))])])])])))])]))))]])]]))]]])))]]]))]])))]]])]]]]]]))]])])]]))])))]])]))]]]])]]]]]]))])])])]])])]])))]]]])))]]])))))]])]]))]))))]]])]))]]]])])])])))]))]]))))))])]]))])))))))])])])]))]])))))))])]])])))))]]))])])]])]]])])))))))))]])])])))]))))]))])])]])))])))])]]]])]]]])])])]]))])])]])))])])]]))]])]]]]]])])])]])]]))])]))]]))]))]]))])))))]]))]))]])))))))])])])))))]]]])))))]]))))]])))]]]))])]]]]]]]]))]))))]])]]]]]]]])))]]])]))]])])])))]]])))]])))])])]))]]])))]]]))]))]]))])]]))))]))))]))])])])))])]]]))])))]]]]))]]))]]]))])]]])))]]]]]))]])]))]])]))]]])))))))]]))]))])]]))]))]))))]))))]]])))))]])]])]])]))))))]])]))))]])])]]])]]])])))))))]]]]]])))])])]))))]))])]]))])))))]]]]))]]]])))])])])))))])])))])])]])))]]])))]]]])]))]])]))]])]))])))))))])]]])]])])]]]]]]]]]]))])])])]])]))])]]]])]))))))]]))))))]])]])])]]))])))))]]]])]]]])]]]]]]]))))))]]])]]]]])])]))))]))]))]])]])]]))])))]])))]]])))]))])))))))])))]))]))))))]]])]])]]]]])]])])]])])])])]])])]])])]]))))])))]]])]]])))))))]))]])]]]])))]]]]]))]])]])))]]])))])]]]))])])))))]]]))])]]))])])])]]]]]])])]))))])])]]))))]]])]))])]))])]]]])])]]]]]]))])])]]]))]]]]))])]]))]])))))]])))])]]])]))))))]))]]]])]))])]))]))]])]])))))]))]]]])))])]))]))]))])]]])))))]]]]))]))))))])))]]))))))]]]])))])))])]])]))))]]]]))]]])]]])))]]))]]]))])]]))]))))))]])]]))]]]]])))))]))])]))]))]]))))])])])]]]))))]]))))]))]])]))])]]))])])))]]]]]]]))))]]))]]])]])])))))])])])))])]]])))]]]])))))])))])))]]]))))]])))]]]]))])])]]])]])))))]))]]]])]])]]]]]))])]]]]])]]]])]]]]]])]]]]]]])]))]]]))])])))]])))])]]]))]]]])]]])))))])]])))]]])))))))]]])))]]))]])))]]]]))])))])))])]]]]]]]))]]])]]])]]])])))]]))]))))]])]]))))]))])]))]])])]]]))])))]))])]])])]))]]]))]]))])))])]]])]))))]))]])]]]))))))])]]))])]))]]))])))]]]))]]))]))))]]]]]])]))))]))]]]]]])]]]]])]))]))]]]]])])]])]]]])))))]])]])]))]))]]])])]))]))])]))]]]])]])]))])]]]))]]]])]))]])])]]))))])])])]))])]))]])))]))]]]])]])]))])))]))))))))])]]]]]]))]])])]]]]]))))))])]]))]]])]]])]]]]]]]]))]]]]))))))])))]]])]]]))]]))]]]])])]]])])))]]]))))])]])]]]]]))])])))]))])]))]]])]])]])])))]))]]))]]))])]])])]])]))])]))]]))))]]))]))])])]]])))])])])))))])]))])]]])])))]])))])))))]])))])]])])]]))])))])))]]]]])))])]]]]]])])])])])]]))))]]]))]))])]]]]]])]]]])))]))]])])])))])]])]])]]))]))])))])])))]]]]])]]))))])]))])]])])))]])]]))]]))]))])]]))]]])]]]]]])))))])])])]))])]))]])]))])]))]))]))]]]]]))]))])]]]))]]]]))))))])]]])))])))]]]]))))]])))]]]]))]]]]])))])]]]]])))]))])))))))]]))])]]]]]])])))]]]])]))]]])]]]])]]])))))])]])]]])])))]]])))]]])])]]]]))])]]])]]]]))]]]])]])))])]])]))))]]]))])]]]]))))]])))]]]]]]]]))))]]]]])]])])])]])]]])])))]])])))]]])]])])]))]])]]]]]])])]]]]]))])]))]])]])]])])]))))])))))]]])]))]]]))))))])]))]]))])]))]))))))))))]]))]))])]])))]]]))]]]))]]]])])])])])))])])]])]))]])))])))))])])))))]]])))]]))))]]])]])))]]]])))])]))))))])]]]])])))])]])])))])]))]]))]])]])]])])]))])]))))))])))])))]]]])))]]))]]])))])]]]))]]]]])])]]]]]]])]]]]]]))))]]]))]))]]))]]]]])))]])))]))]])]))))))))]])]])]]])]))]]))]))]))))]]]))]]))]]])])])]]))]))])]]]]]])))]]))))]])]])])]]]])])))]]]]])])]]])]]])])])]))]]])])]]]]])))])]]])])))]])))]))]]])]])]])])])]])])])])])]]])]]]]])]]])))]])])]]]))]])])]))))])))))]]))]))]))))))]]))]))]))]))]]]))]])]]]])]))]]]))]))]])]))])))])]))))])]])]])]))]]])])]])])]]]]]]]))))]]))]]))])])))]]])]))))))])]]]]])))]])))]])])]))]))))))))))))))))))))]))]]))))]]))])))]))]]]])))]]])))]]]])]]]))))]]])]])))]))]))))])]]])))]))]])]])]]])])]))])))]])))])])]]))))])]))))]])])))))]))])])]]]))))])]])))]])])])]]]))))])]]])])))))])]]])]]]])])))])]))])))))))))])]])]]])))]]))]])))])))))])))]]]]]])]])))])])]]))]))]]))]]]]))]])])]])]])])])))))]])]])])]]])]]))])])])]]]))])]]])]]])]))])))]])])]))])]]])))]]])))])))])))]]]]]]]))]))]])])]]]))]))])])])]]]]]]])]])]]]]]])]))]))]]))))]))])])]))))]))]]])))]))]))))))]))))])))]])]]])]]])]]]])])))])]]]))])]]]]))])])))))))])]])))]])))]]))])))]])))))))])]]])]))]]))]]]))]]]])]]])]))])))])))])))]))]]))))])])]]]]]]))]))))]])))])))])]]]]]]]])))))))))])]]]))))]]]]))]])))))))])))])]]]]])])]])))]]]]))]))]]]]))]])]]]]]]])])]])]])]))]])])]]))]))]))]]])])]])))]])])))]])])])]])]))]]))))))]]]))]]])))]])]])))])]]))))]))]]]))]]])))))]]]))))]]])]]))]])]]]))])]))])]))])])))])])]]))]]))])]]]])])])])]]))]])]]])])]]]])])]))]]]]]]))))])]])])]])]))))]))]])])]))])))))])])])]]))]])]]))]]]]]))))])))]])]))])])))])]])]]))))]])]]]]]))])]]))))]))))]))]]))])]]))]])])]))])]])]]]])]]])])]))]])))])]])])))])])))])])])))])]]]])])]])]))]]]]])]]]])))])]]))]])))]]]))])])]])]]])]]]))))])]]))])))))))]]]]]))]]]])]])))])))]))]]]))))])])))))])]])))]]])]]])))])])]))))])]]])])]]]])))))]])]]]))]])]]]])]])])]))]]])]]]))]])])]]]]]))))))]))]))]]))]])]]]])]])]]]]]))]]])]]]]]]])))]]])]]))))])]]]]))]])]]]))]]))))]])]])]])]]]]])]])))))))))])))))]])]])]])])]))])]]]]))]]]])])])))])]])])])]]]))])])])))]]])]])])]]]]]]]])])]])]]]]))]]]]))))))]]))])]))]]]])]))])))]])))]]]])]]))))])))))])])]))))]]])]])]]]]))]])]])]]])]))])))])]]))]])]))]])))]]]]))])])))]]))])])]]))))]])])]]]]))]]]]]))])])])]])]]])]]]]]])])]]]]]]))]))]]]))]]])))]]]))))))]]]))]]]))]))]])])]))]])))]]]))]]])))))]))]))]))])])))]]]]])))]))]))]))])))])]]))]]]))]]]])))]]]]))))))))]))])])]))])])]]])]]))]))]))]])]]))]))]]])]])]))]]])]]))))))])]]]]]))))))])]])))])]]]]]]))]))]))])))]))]])))]]]]]])))))))]))]))]))])))])]])))]]))]]]))]]))))))])]]]]]))])]])]]])])))])]]))))]))]])])))]])]))]]])]])]]))]]]))))])))])))]]]]]]])])]])])])]])]]))]]])]]]]]])])))])])]])))])])])])]]]]]]])])]])))]))]]]]))]]]])]))]]))])]]])]]]))))]])))]))]]]])]]))))]]]]))]]))]]])]]))])]]]))]])))))))])))]])])))))])))]])]))])])])))))])])]]))))))]))]))))])]]]]]))]]])]]))]))]))]])])]))]))]]))]])]))))]]))]]])])))))]]]))]]))]])])]]]))]))))]]]])))]]])))]]]]]]]]]))))))))]]]]])]]))]]])))])))]]]])))]]])])]])]))]])]))))))]])))])]])])]]))))))]])]]])]))]]]]]]]]))])]]))]])))])))]])])]])]])]]))]])))))])]))))]))))]))]]])))])]])]])]]]]])]))]])])])))]))))]]])]])])]]))]]]]]])))))))))))])]]))))])))])))))]))]]))]])]]))))]])]))))])))])]))]])]))])]))]])))])])])]]])]]]))))]]))))))]]]))]])])))])]))])]]]]))))])])])]]]])))))]]]])]])))]))]]]))]]]]))]]]]]])))])))]]])]]])]]))]])]]])]]])))))]]]]]]))]]]))]))])]])]])))]])))]])]]]]]))])])]])]]]))))]]]))]]]])]]]]))))])]]]]))])))]]])))]))]])))))])]]]])]])]])]])])]])])])])]])]]])]))))]]]]]]]]))))])))]]))))]]])))))]]))]]])]))])])]]])]))))])]]]])]]))]))]))))])])]])])]]]])]]]]])])])]]))))]]))))]]]])]))]]]])]))])))))))))]])])]))])])]))]))]]]))]))))]])))))]))]))))))])]]))]])]]])]])))]]]]))]))))])]])))]]))]]))]]))])])]])))]]))))))]])]]]]]])]])])])]]]]]]])]]))]))))])))))])]))])]))])))])))))]))))))))))))]]]]])))]))])]))])]]]))])))])]))]]]])])))]]])))))]]])))))]))]])))])))])))]]))])]]))]])]])))])]]]])))]]])])))])])))))))]])))))))]]))]]]))))))))]]))]]]))))))))))]]))))))]]]]])]])]]]])])]]))]]))]]]]))])]]))])]]))]))])]]])])]]]))))]]))]))])]])))])]))])])]])]))])]]]))))]]))]]])]])]])]]]))]))])]]))))]])]))]]]]])])])])))]))))))]]])))]])]])]])]])]]]))])))]))])])])]]]]))]])))]]]])))]])]]])])])]])))])]))]))]])]]])]]])))))]]])])))])]))]))]])]])]))]])))]])])])]]]))]]))]))])]])]]))]))]))])]]]])]]))]))]])]])))]))]]))]))]]])]]]]])))]))]])]))]]])]])])))))))]))])]])))])]])]))))))))])]))]]]]))]]]]]]]]]))])]))))])]])))))]]]]))])]))]]]))])]]]]])])])]))]]]]]]])]])))]]]])]])]])))])))]])]]]]]))]]))]])])]]]))]))))]]])])]))])]]))]])]]]])]]])))]])])])]))))]])))))))])))]]]]))]])]]])])]])))])]]]])]])]])]])])]]))])]])]]]]]])]]]))]))))]))])])])])))))]))]))])))])]])]]))))]))]]))]]]]])))]])])))]])]]))))))]))))]]]])))])))])]])]]]]]]))])))))]]))]))))))))))]]))]])]))]]]]]]]]]))])]])]))))])])])))]]))])]]])])]))])))])))))]))]])))]]]]]])])]))])]]])))]]]]])])]]]])]]])))))))]))]]])]])]])))])]])))]])))]]))]])))))))))]]))]]]]]])))]]))]))])))]])])])))]]]))]]]))])))]])]]]]])))]]])]])])))]])))]))))]])))])])]]))))))])]]])))]))]]]]]))]])))))))])]]))])]]])]])]]]))])))]]]]]))]])])]))])]))])))]])]))))]])])))))]))))]]]))))]]]))))))]]])))))]))]))))])])]]]])]])))]])))]]])])]))])])])])])]]]])))]]])]]]]]]]])))]])))))])]])]]]]]))]))]))))))])]]]))))])])]]])])))])))])])]]))))])])]]]))]])]))]))])]]])]])])])))])]))]]])]])]])))))]])]))))]])))]))]]))]]))]]]]]))]]]]])])]]]]]]]])))]])]]]))]]]]]]))])]]])]]])))))]]]]]))]]]]]]]])])])])]]]])))]])))])]))))]]])])]]])]]]]]])]])]])])]]])])]))]])])]])])])])])]))]]])])]])))])])])]]]]]]))]]]]))))]]]]))])]]))))]]]))]]])]]]))]))]])]]))])]]]]]])])])]]])]))))))))])])]]))))]))])))]]))]])]))))])]]))])])]]]]])]]]))])]))))]])]]])])))]))]]])]])])]])]])])))]]))])))))])])]))]]))])))))]))))]])]]]])))]]))]]])))]]])))]]]))])])))])]]])]])]))]))])]])]])))]]]])])]))]])]])]]])))]])))]]]])]]))))])))))])])]))))]]))]])]])])])))]))])]])))]))])]))]])])))])]])]]]))])]))])]])])])]])]]])))])]])]))]))])]))))))]]]]]]])]]]]])]])])]])])))))])]))]]])])]])]])]))]]])]]]))))]]))))]])]]]])]]]])])])])]]]])])]]])]]]]))))))))))]])])]))))]]))]]]])])])))))]))]]]))])]]]]]]]]])])]])))])))]))])])]))]))]]]])]])]])])])))]]]])])]])]])]]]]))]]]]]))]]]]))]])])]])])))))))]]]])]]]))]])]])])))])]])))]))])]]]])]]])))]))]])])])]]))))]))]))))))]])]]))]]])]]]]))]])]])]])]))]))])))]])])]]))])))]])]])))]]])]])]]]))]]])])]])]]])]])]]]))])))))]])]]))]])])))))))))]]]))))]])))])])]]])])]]]])]]))))])))])]))]]]))])]]])))])]]))]]])]])])))))))])])]])]))])))))]])))]))))])])))])]))]))]]))]]]])]))])])]))))))]))))]]]]]))]])]]])])])]]]]]]))]])])]]]]))])]])]))])])])]]]])])]))]]]]]]]))))]])])]]))])])]]])]])))]])]])))))]))))))]]]])))]]]]))])]]]]]])))]))])))]))]]))])])))]))]]]]]])]])])])]))])]]]))))])]]))]]))]))))])]))])]]])))))])]))])))])]])])))])])]]]]])))])))]])])))]]]]])]]])))]]]]))]]]])]])])]])]))))])])]]]]])))])))]))))]]]])]))))]]]])]))))))]])]]]])]]))]]))))]])))]])]))])]])]]]]]]))]))))]]))])))]]]]))]))]]))]]])])))))))))]))]))])]))])]]]))))]])))]])]))]])]))))))))]]])]))])])]))])]]]))])]))]])])])]])]))]))])]]))))]])]]))]))])]])))]]))])]]]])])))])))))]])))]]]]]])]])]]]]])]))))]))]])]])]))]]]])])))])]]])])]])])))]]]]]])])))]]]]))])]))]))]]])]]])])])]]]])]]))]]]]]))]]])])])))))))])))]]]])]])))))]))]))]))]]))]))]])]]))]])))))))))]])]]]))])]))]))))]]])))]]))))]))])]]))]))]])]])]))]]]]]])))]]])]))])]]]))])])))]])])]))]]])))]])]))])])]))])])))]]))])])]]]])])]]))]]))))])])))))])]])]))])]))]]))]]]))]))]])]))]))])])))])])]]))]]])])]]))])])]]]]])])]))]])]]])])])])]])]]))])))])))]]]]]]]])))])]])]]]])])]))]]]]]]])))))]]))))])])))])]])]]])])))]]]]))))]]))]]))))]]]]]])])]]))))]])]]]]))))))]])]])]))]])))]]])]]]]]))))])])]))]]]])])))]]])))]]])]]]))))])]]])]]]]]])])]))))]]))]))])]))))]))]])])]])])])]))]]]]])))]])])])])))])])]))]]])))])]])]]))])]]))])]]]]]])]))))]]))]]]]))))]]]])]])]]]))))])]]]]))))]))])])))]])))])]]]]]])]])]))])]]])))]))]]))]))]]))]]))]])])])]))]))]]]))]])))]])]]]])]))]])])])))])]]]]])]])])])]])])]]]))]]])])])])]]]]]]]]]])]])]])])]]]]]))])])]))])]))]]]])]])))]]])]]]))))]))]]))))]])]])]))))])]]]]])]]]))])])))]]]]))))))]]))))]])]]])))]))]])])])))]))))]]]]]))))]])]]]))))]]))]]))])]]]))))))]]]]))]))]])]]))]])))))))])]]))]])))]))))]]]))]]))]]]]]]]])))]])]])))]))]]))]))]))]))]]]]])])))])])]]))]]])]])))])]])]))))]))]))]))])]]]]))]]]))))])))])]))]))])))))])])))]]])))]]]))]])]]))]))])]]))))])]]))])])]]]]]]])]]]))]]]])))])]]])])]]])]]]]]]]]]]])]]])))]]])]))]))]))))])]]))])]])]]]))])]])]]))))]]]]))]])])])]])]]])])))]]))]]])))])])))]]]))]))]]))]]]])])]])))))]])))))]]]]]]))]]]]])]]]]])])))))]]))]]]]))])])]]])]])])]))))]]))]]]]]]])])]))])))])]]]))]]]])))))])]))))])]]))]]]])]]]])))])))]])]]]]]])))))))))]]]))])]]]))]))])]))))]]]])]]]])])))]]])]))]))])])]])))]]]))]]])))]])]]))))]])]]]]))]])])]])))])])])]]]]))]])]]))]))))])]))]]]]))))]])))]]))]]]])))]]]))]]))])])]])))]]))]))])])])))))]))))]])])]])]]]))]))])]]]]]))))])])]]])))))])))])]))))]]]])))]])))]]])]]))])]]]])]])])])]))]))]])))]))])])])))]]))]]]])]))])]]))))))]]))]]])))]))])]]])))]))]]])))]]]])])]))]))]]))])]]])))]])])))))]]]])]))]]))]]))])]]))))])])))]))]))]))]]])]]]]]))))]))]])]]))]]]]]))]]]))]))]]]]))))]])])]])))))])))])])]))])))]]]]])))]]]]]))]]])]])]))])))))))))]))]]))]]]))]]]]])]))])]))])]))))])])])]))])]]]))))))])])])]])]]]]]]]]))]])]))]])]]]]])]])]))]))))]))]]])])]]])))]]])]))))]]))]])))))]))))])])])]])]))]]]]]]]]))]]))))])))])]))]])))]))])]))])]))))]]])]]]])]])]])))]))]]])]]])]))))))]))])])])])]))))]]))])])]])]))]])]])))))]))])])]]])])]]]))]))])]]]])]]])]))])))))]])])]))])]]))])))))]])]])]])]]]]]))])]])]]]]]])])])]]))]]])]))])]]])])]]]]))]]])))]])))]]]]])])]))]))])))))]]])))])]]])))]]))]]])))))])])])])]]]]))]]]]]]]])])])))])])])])])))))])])]]))]]]]]]]))))]))]))])]])]]]]])])]))])])))))]]])))]]]))]))))]]]]]]])]))])])))]]])]]))]]))]))]))])))])]))))]])]])]])]))]))]))))])))])]]])])])]])])))))]]))]))]]]))]]]))])])]])))))]))])))]])])])]]))))))]]]))]]))]))])]])])])]]]])]])]))))])])]))]))))))))]]]])])]]]))]]]]))]))]))])]]))]])]])))))])]]]))]))]]]))]])]])])]])]]]]])))])]]]))))])])]]])))])))])]))))))]])]]))]]])]]])))]]]]]])]))]]))))]]))))]])]])))))))]))))]])]]])))]]]]))])])]]]]]]))]]])]]]))]])])]))])))]]))))]))]))]])]]])])]]]]])))]))))]))])]]]]]]))]]]]]))]))])])])]]])]]])]))]])]])]))])))]])])])])]]])]])]))]]]]])]]]))))])])]]])])]))]])]]]]))))]))))]))))]]))))))])))))))))))]])]))])))]])))]]))])]))]]))]]]]])])]])))]]))))]))]))])))])]]))]]))]])])))]]]])])]))])])))]))]]])]]]]))))]]])]])]]]]])]])]]]]]]]])]]]]])])]])))])])])])])]]))]]])]))))]))]]]]))]]])))])]]]])))))])))])])]]]]]))])])))]))]]])]])]]]]))]]])])]])))]])])])))))]])]]))])))))])]))]]]]]])]]]))]]]])])])]]]))]])])))))))])))]]))))]]])]]]))]])))])]]))]))]]]])])]))]])))]]])])]])]]]))))])]])]))]])))]])])]]]))]))])])])]])]])])])])]]]])]])])]]])])]]))]])]]]])]]]))]]]]])])]])))))))))))]]]])]))]]]]]])])]))))]])]))))))]]])]])]]))))]))])]]]])]])])]))]))]))]]))]))))))])]])])))))])]]])])])])])]])]]))]]))]]))]]))]]]))]))))]]]]])))]])]]))]))])))]]]]]]]]]]])))]]])))])]])))]]]])]]]]))])))]]])))])]]])])]))]])])])))))]]]])])])])]))]]))])))]])]))]]))]]]])])]))]))])]]))]])])))]])])]]]]))]])]]))])))])])]))]]])))]]]]))]])))]))])))])]])]]]])))))]))]))]]))]]))]])))]])]])]))]]))]])]])))))))])])]])]))])])])]]))])]])))]])])))])]))])]]]])]))))])]]])))]])))]])))])))]]]]]])))])]])))]]])]])))))))])]])])))]))])]))]]])]]]])]))]))])]])]))]]])]])])])]])]]]])]]))))]))]]))])]]]))))])])]))])]))))]]))]]))]]])])]]]))))]]))]])]))))))])))]])))])]))])]))]])))]))]]]]])])]))])))))]))]]))])]]]]]))))]])]))]])]])]]))]]])))]))]]]])]]])))]))))]])])])))]]]]])))])])])])))]]]]]))]))))]]]]))]])]))])]]]])))]])))]))]))))))]))]]))))]]]]]))])]])])]]])])]]]]))])]])]])])]]])])]))]]]])))))]])]))]))]))]])])]]])]]]]]]]])]))))]]])))]]))])])])]]])))]])))))))]])]]]))))])])]])))]])]))))])])]])])])])]))]])))))))])]])])]])))))]]))])])))])])]])))])))])))))]))))]]))]))])])])])]]]]]])]))))]])))]])]]))]))])])])])]]])]]))]])]]]]])])))))]))]))]]]]])]])))])))]])]]]]))])]]]]]))]])])]])]]]))])])]])))]])))])]))])])])])])]))))])))]]])]))]])))))])]]))])))))]))]])))]))])]]]))))))]))])])])]])])))])]))])])])])]]))]]]))))])]]]))])]))]))))]]])]]])])]])])))]))]]))]]])))))))]]]]])]]))]))]]]])))]]))]])))]))]))]])]])))]])])]])]])))]]))))))]]))]]]))]))])]])])])))))]]]]]]))]]))])]))))]))]]]])))]])]))))])]]]]]]]))]])))])))))))]])])]]])))]]])))))]])]])]))]]])])])]]])])])]))])])])))])]))]))))))])]]))]])]]]))]]]])]]])]])]]]])]]))]]]]]])]])))])])]]]])]]])]))])])))))])))]])))]))]]]]])]]]))]]]])]))]]])]]))]]]]]]))])])]])]]]))]]]])]]])))])]]))]]]]]))]]]]))])])]]])))]]])]]]]]]))])))])]]]])]]])])))]))]]]]]])]]])])))])]]]]])])))))])]]))]]]])]]]]])]]]])]]]]))])])]])))]))]]))]]))))])]]]]]))]]])])))))))]))]])]))))]]]))]]]))))]]])))]]]]])))]))])))]])))))))]))))))]]))]]])])))]])]]))))]))])))])]]]]]]))))]]]))])]]]])]))))]))))])])])])))])))))]))]]])]]])]))])])]]]]))]])]])])))))]]]]))])]))])])))]))))]))]]))]]]]])])]]])]))])]))))]]]])])])]]]))]])])))])])]))]]))])]])]])))]]]])]])]))])]]]]])))]]]])))]))))]]]))])]]])]))]])]])))))])]]]])))]))]])]))])]])])))))])))))])]))]])]])])))]]]]]]))]]])]])]]]])])])))]))))))]]])]]]])]]]]]])])]]))]]])])])])])]]]]]]])]]))))])))])])]]])]]]]))])])])]))]]]]))])])]))))))))]]])]]))])]))]]))]])))])])]))])])))]))]]))]])))))])])]]]]))))]]]]])]))]))]]]]))])]]]])])])))])])]]))))])]))]))]))]))]]))]])]))])])]]]])]])))]))])))]))]]])]]))]]))))])]]]))))))])]])])])))]])])))))])]]]))])]))))))])])))))]))))])])]])))])])]))]]]]))])])])))])]])]]]])))]])]])))])]]))]]))]]])]]))]])])))))]))))]))])])]))]]]]]]])]]]]]])))]]])]]]]]])])])))))]])]]))))]]))]]]))]]))]]]])]])))]]]]])]]))))))))))])]]])]]]]))]])]]]]))]))])]]]])]])])])))]]))])))]))]]]))]]]]]))]]])])))))]))]]])))]))]]]]]]]))))]]))]]))])]]]]])]]]))]])]])]])])))]]]])]]])]])])]]])]]))]])])))))])])]]]]]]])]]])])]]]]])])]]))))]])]])]))]]]]]]))]))]])]]])]))])])])]))])))]]))]]]]]]]))])])])))))]]])]))]])])))])]]))]]])]]])))])]))))]]))]])))))))]))])))])]))]]]])))]]))]))])))]))))))])))]]]))]]])])]]))))))]]]])]]])])))]]))))))]])]))])))]]]))]]]])]))))))))]]]]]]])]])]]])))])]]]])]]]]]])]])])]))))]])]))]]])]]]])])))))])]]]))))]]]))])]]))]])])]]]]])])]]]))))]]])))]])])])])]]])])])]])]])]]])]]]]]]]]]])))]]])])]]]))]]]])))])))]]])])]]])]]]]))])]]])])))))])]])))))))]]])))))])))])])]]))))))])))))]]])]])))]]]))))))))))))))))))])])]]]]])]]))])])])]]]])]))])]])))))])]])))))))])))]]]])])])]]]))])]])))))])])]))])))])])]]]])]))])]])))])))))])])))))]]]]]])]]]]])]])]]]]]]]])])])])])))))))]]]]]]]]])]]]]))]]])])))]))])))])))])])]]])]])]])]]]]]])])))]]]))]])]])]))]])))])]))))]]])]))]]))))))]]])]])])))]])]]))]]])]]])]])]]])]]))))]]]]))))]))))))))])))]])]]]]]]])]]]])]))])]])))))])]]])))))]]])])]))])])]])))])))]))))]]])]]]))]))]]]])]])])])))]))]]))])))]]]]))])]])]])]]])]))]])]])]])]]]])])])))]])]]]]]))))]])]))]])))]]])]]]))])]))])))]]])]]]))]])]))]])]))))))]])])))))]]]))]])])]]))]))]]]))]])])]]]))]]))]]]])])]]]))]))]])]]]]])]]])]]))))]]])])))])])])))]))]])]]))])])]))))])])))])))]]]]]])])])]]]])]]]]))])])]])])])])]]])])]))])]])])]])])))]]]]])))]]]))))))))]))))))])]]))))]])))])))]]]]]])])]))))])])])]])]]])]))]]])]])])])])]]))])]))])]])))]))]]]])]]))]]]])])]))]))]]])]]])]]]]))))))]]])))]]]]]]]])))]]]]]]]])]])]]]])))]))]]))]]]]])))))])]]])]]])]]])]]])])]]))))]))))]]]])])]]))]]]])]]]])])))))]]))])]]]))))))])))]))))]))]]]]]]]])))]]]]]])))))]]]))])]]])])]]]]]]]]]]]]]]]]])]])]]]])]])]])))))))))]])))))])])]]))))]])])]])])]]))])])]))]]]))])]]]])])]])])]]]))])])])))]))]))])])))])]]]]))]])]))))))))]]])])))]])])))))]])]]))))]])]])]]))])])))])))]))])]))])]])]]])))])))]))]])])))))))])]]))])))))])])]))])])]]]]]])]))])]]])])]]])]]]])]]])]])]]]])))]]])))])]]))]])]))))])))]]))))])]])))]]]]])]]]])])]))])]]))))]]]))]))))))]]))]))]]))))])]]]]]])))])]))]]]))]]]]])]))]]])]]]]))))]])])]))]]])]])))))])]))])]])))]]))))])]]))])])]))))])))])])]])))]])))]]])]]))])]])])))])))))))]]))]]]])])])]])])]))])))]]]]]))]))))])])]]]])])]])]]))])]])))))]]]))))]])])]))))]]))]])]]]])]]]))]]))])))]]))])]))])])]])])]]))])]])]]]]])]]]]))]]])))]]]))]]))))))]))]))]]]))])])])])])]])]])]))])]]]])]))))])])))))))])]))))]))])]])]]]]])]])]])]]])])]])])]))]]])))])]]])]]]])]])]])]))]]]]))]]]]]))])])]]])])])]))])]])))])])))))]))]]]])])))))]])))))]])])])))]]]])])))]]]]]]]))]]])]]))]]]]]))]]])]))]]))))]]]))]]]]])))))]))])]]]))))])])]]]]])]))])])))]]]]])))])]]])]]]]]))]])])))]]])))]])]]))))])]])])])))))])))])]])]]))]))))])])]))))))))]])]]))]]]))]]]))]))])])))]]))]]]])]))]]))]])]])]])])]]]]))])]]]]]])))]]])]])])))]]))))))])])])]]])]))]))]]])]]]))]])])))])])]])])]))))]))]]])])))))]])))])]))])]))]))]]]]))))])]])]))]])))]]]))]])])))]))]))])]])]])])]]))])]]])]))]])]))]))])))))]])))]))]])))))))])]]]]]])]]])]]]))))]]])))]])))])))))))])])]])))])))))]]))]]]]))))))])))]]))]]]])]]]]))))))]]]])])))))]])])])])]])))]))]]]))]))])]))))]])))])))])]])]])]]])))]]))))))]))]]]]))]]]])])])]]]]]]])))]])))]))]])))])]]))])])]))))))])]))])])]]]))]]]]]))]]))))]]]]))])]))]]])]]]]])]]]]])))))]]])]]])])))]]])])]))))]]))])]]]]]]])]])]]))))))))])]]))]]]]))]))]]))]))))])]))]])]]]]])))]))]]])]]]])]]]]]))))]])])))))]])]])]]]])]])]]])))]])]))))])]]]])]])])]))]))])])])))]))))]]]))]))))]))])))))]]]]))]]])))]])))]])]])))])]))))]))]))]])])])]]))]])])))]]]])))))])])))))])]]]))])))]))]])])]]])]))))]])])])))])))]])))]])]]))]]]]])])]]]))]])]))]))])]])])))))]))]))])])]]])]])])))]))]]]]))))]]))))]))]))])))))]))])])))])]]))))]]])]]]))]))])]]]]]]]))])]]]])]))])))))]]]]))]]))]]])]]))])]))]))))]]]])))))]))))]])]]))))]]]))])]])])]]])])))]))))])]]]])))))))))])))])])]]]))]]]])]]])))]]])]))]])))))))))]))])]]])]))]]]])))]])]))]))))))]))])))])]])]]]]]]))])))))])])]]))]]])))])])]])]]]])])]]]]))]]])))]]]]))))]))])]])]]]])))]]]])]])]]]]))])]]))]))]]))))))]]])))]]))]]))]))))]]])))]]])]]))))])])))])))]]]])]]]))))))]])))))]]))])]]]))]))))))]]]]]]])])]]]]]))))]]]]))])))]))))))]]]]))])))))])]])]))])]]]])))]]])))))))))]))]]))]]))])]]))))]]]])])))]])]]])))))])])])])]]])]])])]]]])))))]]])))]])]]]))])]])]]])]]])]])]]])))))]]]]]])]]]]])]]]]])]))])]]]]))]])]]]]])])])]]]]]]]]])]]])])]]]])])))])]))))]])]])))))])))])]]]]]]]))))))]]])]))]]]]]]])])]))])])]])])])))]])))]])]))])])]]]]]))]]])])))]]]))))]]]))))]]]]))]]))])]))]])])]))))])))))]]]])]]])]))])))]))))])]]])])])]))])))])]])])))])))]))]]]))]])))])])))])]])]]])]]]])]])]]))]]]]])]))]))])]]]]]))]]))]))]]]]))]])]]])))])))]]]]]]))]]))]))])])])))])]))]]]]]])]))]))]]]]]])]]]))]))]]]]])]]]]]]))]]))]])])))]])]]]]]])])])]]])))]))])]]))))]]]])])))))]]])]]]]]]))]])]]))])]))]))))))]]]]]])]]]))))]])]]))]]]]])])]]]))])]]))]])))]]]])]])]]]])])]])]))]])])])))))])]]])))]))))])]]]]))))]))])))])]]))])))]))]))])]]])])]])))]]]]))))))))]]]))))]])]))))))))])]))]])])])])]])]]])]]]]])])))))]]))])])))]]])]])))]))]]])]))]]])))))])])]])]))]]]]]]))])]))]])]]]))]))]]]]]))]))]]))])))]))]]])])])))])]])]))]]))]]])])]))))]])])]))]))))]]]]])]))])))])])])]])]])])])))]])]))])))]]])]])]]]))]]))))])])])]]]]]]))]])])]))]))]))]])])]))))]))]])))))])))]]]]))]]]]]))]])]]]))]))))))]]))]]))))]))]))])]]])]))))]])]]])])]])))))])]]])]]])])]])))]])]))))])]]))]]]])))]]])))))]]]])]]]]]])]])])]]))]]])]))]]])])]))])])))))]]]])))]])]])]))]]]]]))])))))]])))])]))]])]]]]]]]]])))])]]))))])])]))])]])]))]]]])]))])])]]]]]))])])]])))]))]])])]))]))]]]]]]]]]]])]))])]))))]]])])]]])]))])))]]]))]]))))])]))))]])))])])]]]])]]))]])))]))]])]])]])]]]])]))))]))))]]]]]]]]]])])))]]]))]]))]]))))])))])]))))))])]])])]]])]])))])]])]]])])])))))])])))])])))])))]]))]])]))]]))]))]]]))])]])))]]]]]]])]])]]]))])]])])])]]]]]]))]])]]))])]])]])])))]))])])]])))])]])))])))))]]])]]])]))]]])))])]]])]]))])])))])]]]))])))]))))))]])]]]])])]]])]))]]])))])))]))))]))]]]]]))))]))]))]]]))])]]])))])]]])]))])]]])))))]]])))]]))]]]]]]])])])))))]]]]))]]])]]])])))))])]]]))]])]))]))]]]))]))])]))]]]])])]]]]]])]])))])))))]])))])]]))]])))])]))]])])))])]]])]))))])))])))]])))])]])])]))])])])]]]))]))))]]]]])]]))]]]]]]])]]])]])))))])])]))]))])]))]]]]])])))])]])))))))]]])]]])])]))]))])]])))))])]]]])]]]])]]))))]]]]]]]])])))])])])]])]]))))]])]))))))]])])))])])]))))])]]]]))])]])]))]))]))]]])))))))))])])]]))])]]]])])]]]]]]))]])])]]])])])))])]])]]]]]]]]]])])))]))]]))]))]))]])]]]])])]])]]])])]))]]))])])))))])]]])]])])])]]])))]]])]]]]))))]])]])]]]))))]))]]]])]])]]]))]])]]]]])])))]]))]])])])])]])])])]]])]))])))])])])]]]])]]])))])]])))]])]]]))))))]))])]]]]))]]]])]))])]))))])))])]])))]))])]))])))]])]]]])])]]]]]])])]]]]])]]]]]]))]]]]]]))]))]])]]]))])))])))]])]]))]]])))))))])))]))))]))]]))])])]]]))])))]]])]]))]])]]])))]))))))]])]]])])])])]])]])]]])))))))]))])]))]])))]])])]))])))])]]]]))))])]))]))))])]]]]])])))))])))]])]]))]]]))))]])])]))]])))]]]]))))))]]])]])]])))]])))))]]]))))))])])]))]))]])]))]]]]))]]]))]))]]]]))]]])]]]]]]]]]])]]])])])]))))]))))])]))]))])))])])))]))]]]))]))]]]])])])])]]))]]))]]])])])])]]]))])])]])]])])])])]])))])]]]])])]])))]]])]])))))]]))]))])]])]])))]]))]))]))])]])]))])))]]]])]))]]]]]])]])]]]))))]))))])))]])]))]]])]]]])])]]]]))])])))]]]])))]))))])])]]])))]))]))]]))]])))))]]])]))))]]))]))))])])]])]]))))))]))])]]]]]))]])]])]]]]))]]]))]]])]])]]]]))]])))]]])]]])]))])]))]])])]]))))]])])))]]]]))])])))]]])]))]])])]))))])]]])]]])))]))]))]])]))])])]]))))]]])]))]]]]))])])]))]])]])])]])))))]]]]))]]])))])]]])]]])))]]))]))))])]]]))]]]]]]]])))]])]]])))])]]))]])))]]])]]]]]]))))]]))]]))]]]))]))))]])]]])]])]]])]]]))])]])))))]]])])]]]]]))])))])]]])]])))))])])])])))))]])])]]))]]))]]))))]]))))]]]]])]]]]))))])]))]]])]))])))]))]])]]]))]])))))]])])])]])])))))]))])]])]]])])]]])])))]))]])))]]]]]))]]])))))]))))]]])))])))]))]])]))]]))))))))]]))))]]]]])))]]]))])]]])]])]])]))))))]])]))]]])]))])]]]]))))))])])))]]])])])])])])]))])])]))))))])]]])]))]))])])]])]))]]])))])])]]]])]]]]]])]]]))])]]]]]]])]])]]]]]]]]))])]]])))]))]])]])])]]]]]]]])))]))))]))))]])))]])])]))]]))])]]))]]]])])]))]))]]))])]]]))])]))]))]]))]])]]))])]])])))))]]))))]))]]]))])]]]))])]))]]]])]])))])]))]])])]]]))]))))])]))])]]])))))]]))])))])))]))]))))])))]]])])]]]]])]]]])))]]]))])]]]]]])))])]])])))]]]]]])])]]]]))]]))])])]]])])]))]])]])])]]]]]])))])))])]))]])])]))))])])]))]]]]]))])]))))))]]))]]])])]]))))]]])]])]]])]])))]]]))]]))]]]]))]))]]))]]]]))])])])])))]]]])))]])))])]]]))])])))))])])]))))]]])])]]))]]))))))]))])))]]]])]))))])]))])]))))]])]]))))))])])]))]])]]])))])))))]))])])))))))]])]]]]]]))]))]))])))]]))))))]])))))]]]]])])])]]]))])))]))))]]))]]]))]]]])]))]])])])])])])))]]])]))))])]]]])]))))])]]]])]]]]]]])]])]]]]])]])])])])))])])]))]]]])])))]]])]])))))]]))])]))])]])])])]))]))]))]]])]))))]])]]])))]))])))]))])]))]))))))))])]))))])]))])))])))]]]))]]])])]]]))])]))]]))])))]))))]])]))]))))))))]))])))])]])]]]])]]])]))))))])]))])))])))))])))))]])]])))]]))]]])]])]))]]))])])))))))])]]))))])]]]]]]]))]]])]])))]])))]]]))]]]]]])]]))]))))])))]])]])]]])))))))])])]]])]])])))))]]])]))))]))]]])])])])))))))])))]])]]]])]]))))]]]))])]])])])])])])]]])]])])])]]])]]])]]]])]])]]]))]]]))])]]]]])]]))))]]]]]))])]))]))]]]])]]]))))]])]]))]]])]]])]))])]))]])]]])]))])]]]])]])]]])]])))]))))]])]))]]]])))]]))]))))]])]])]])))]))))])]))))])))])])]]]]]))))]))]]]])))))))))])))]])]))]]]]])]]))]]])]]])])])))]))])))))]])]))])]]])]])]))])))])])])])]])])]))))])])))))])]])))]]]])]])]]))]]))))]])))))])])]))]]]]))))))]])])])]])])))))))]])))))]])]])]])))))])]]]]]]])])))])])))))]))])])]]]))]]]]])))]))]]]]]))))]]]]]])])))))))]]]]))])])))]]))])))))]]]])]])))))))]])])))))])))))])]]])]]])]]])])]])))]])))]))))]]]])])]]]]]]]])]]]))])]))]]])]))]]])))])]])]]]))]]]]])])])])]]])))))]])]])]]]]]])]))])]))])])]]])]])]]])])]))]])]])))))]]))]])]])))]))))))))]))]))]]]])]]])]))])])))]]]))]]]]]))))))]])]])]]])]]))]]]]])]])]]]]])]])))]]))))))]]))))]]]]]]]]]]))])])]]]))))])]]))))))))])))))]))))]])])]]])]))]]]])]))]))]]]])]]]]])]]))))])))])))]]]))))]])))]]]]])]])])]])])]))]))])))]]]])))))])])]])])]]))])]))]]))]))]]]])]))]))]]])]]])]))]])])]))]]))))]]))]])]]))])))]]))]]))]])]]]])]])])])]]])))))]))]])]))]))]])])]]]])))])))])]])])))))]]])))])]))]]]))])]))])])]]])])))))]]])]]]])]]))]))))]]])))]]]]]])]))]])))])])]]]]]))]]))]]))]))]])]])]]])))))])])))])])])))]])))])]]]))])]])]))))]]]))))))]])))]]])])])])]])))]]]]))]]])]]))))]])))))))]]]))))]]))]))]]))])]]]]]))])))])]]])))]]]])])]])]]]))]])))]]))))])]])]])])]])]]])))))])]]))]]]))])]))))]]])))]])]]])]))))]]]]))))]])]]]]]])))]))])]]]))]])])])])))]]))]]])]]))]))])))))]]]]]])])])])])])])]])]])])])))))]]]])]]))))])]]]))))))]))])])]]))))]])))]]))]))))]]])))))])])]]]))]])])]]]]]))])]]])]]]]]]])))]])]]]]]]]]]))]]]])]]])))]))))])]))])]]]]))]]])]])))]))]))))]])]]])))])])]]])]))))))))))))))))))]))))])]]])]])]))]))]])]))))])))]]))]])]))]]]))])])]]])]]]]]]])]]]])]])])]]]]]]]])])])]))]]])]]])]]]])])])])]))))])])]]]]))])))]))])))]])]))]))])]]]]))]))])))]]]))]])]]])))]]]))))]])]])]])]]])]])]]]])]])]))]]]]))])]))))))))])])]]])])))]]))))]]]))])]))]]))])))]))])]]))]]])])]))])])]]]]))]))))))]))]]]))])]])]]))]]]]]])))))))]]])]])))]])]])))]])]]]])]])])]))])])])]))]])))]]]])])))])))]]]]])]])])]]])]))]]]]])]]]]))]))]]])]])))]])])]]])))]])))]])]]]]]))])]]))))]]]))]))))]]])]]))]]])]))]]))]])]])))]))])]]]]]))))))]))]])]])]))]))))])])])]))])]])))]]))]]]))])]))]]))])])]]]]])])])]))])]]]])])]])]))])))])))]))))]]]]]])]])]]]))])))]]]]])])]])]])])])]))])))]]]))]])))]]))])])])]))]]])]]]))]]])]))))))))))])))]]))]]]])])]])]]]]]]])]])]]]])])]])])]))])])]))))]]))]))]]]))))]]]]]]))]]])))])]]])]]]]]])))]]]])]]]]))))]]))])]])]])]]]]]))]))])))])]]]]])])]])]]])]])]])]])])])])]]])]])]]]))]]))]])))))))))])]])]))))]])))]))]))]]])]])]])]]]])]]))))]))])])))]]]))]]]])])])]]]])]))]))]]]]]))]]])))))]))))])))))]))])])]]])]))]]])]])]])]]]]])]]]]])]]]]))]]]]]]]))]]]]]))]])))))]))))])]])]])))]]])]]])]]]))))]]))]])))]))])]]])]]]]])]))]))))])]]))])])]]]]))]))]]]))]]))))])])]]))]])]])]]))])))]))]])]]]]]]]]]))]))]))]])])]]]))])]))))]]))]]]])))))]]]]]]]))]]]])))])]])]]]]])]]])))]])))]]))))]]]))])))))))))))]]])]])]])]])]))]]]])])]]]]]]]]]]])))))]]])]]]]))))))]])]]])])]))])])])]])))]]])]))]])]]))])])))]]])))))]))]]]]]]]]]])])]]])))])]])))]))])]]]]]]]]]])]]]])]))]]))]]])]))]))]]]])])])))]))]])]])])))))))]])))])])])]))))])))))]))]]]]]])))]]])))]))]]))]])]])])]])))])]))]])))]]]]))))))]))))]]]]))))))]]]]])]))]]))]))]])))])]]])]])))]))))])]]])])))))]))])])])]]))))))]]]))]]])]])]))])))]))]])]]]))]])]]))])))]]))]))])]])]]]]))]))]))))])))]))])]]]]]))]]))]))]])))])])))]))]]))])]]]])])))]))]]))]))])]))]]))])])]]])]])))]])]])]])]))))]]]])))))]])))])])]]]]]]])]))]])]]))]))]])))]))))]))]]]))]))]]]]]))])]]))]]]]])]))]])))]]])]]))])))]))]]]]]]]])]]]])]])])]]]]]]))]]])]]]])]))]]]]]))]])]]]])))]]]])]]))]]))]))]]]])]]))])))]]]])]]]])))))))]]]))])]]]])]])))]))))))]))])]]))))]))))]]))))]]]]))])]])))))]])]]]]))]]]))))]]])))]]))]])]]))))])))]))])]]]])]])])]])]]))])])))]]]]])))]))]]]])])]]))]]]])]])]]))]))))])]]])]]]]]))))))))))])))]))])]]))])]]]))]]]]]]]]]))]]]])]))))]]]]]]])))))]]]]]]])])])))))]]]]])]])]]]]]])]]]]]]]]]])))))]]))])]])]]]]]])]]]))]))]))])]])])]))]))]))]]])]]])))])))))]]])]]]]]])]))))])])]]])]))]]]]])))))])]])]))]]]]]])])]]])])]))]))])))]]))]]]]))]]])))])]))])]]]]))])]))]])))]]))]])))]]])]])))])]])))]))]]])]])]]))]]])))])]))]]]))]])]])))))))])]])])]]])))]))]]])])))))]]]))))])))])])]])))))])]))])]]])]]]])])]])])]]))])]]])]])))])])])]])]]))])])]))]))]])])))]]))]])]]]]]))]]])]]]))))])])]])]))]])]])])])]])])]]])]))]]]])]]]])]))]]]])))]]]])]])]))))]]]])]]))]))))]])])]]])]])))])])))])]])]]]]]]))]]))))]]]]]])]]]])]]]))]]])]]))]]]))])]))]]]]))]])]]))])])))]))])]]]])])]))]]]))])]])]))]])])]])]])])))]])]]]))]])])))])))]]])]))]]]]])]))))])))])])))]]]])]])]]))])]))]])]]]])]))))))))))]))]]))]])))]])]]]]))))])])])))]]]))])]]])])]]]]))]]])]))))]])])])]])])))]))])]])]))]]))]))])]])]]]]))))]]))]]])))])]))]]]])]]]))))]]))]))])]])]]))])]]))]]]]]])))]])]))])])])]]])))])))]]]]))])))]])])))]]))))])))))]))]]]])]))))])))]]])))]])]])]])))])))))]]]))]]]])]]))]]]])])))])]])))))))))))]])])])])])]))]]]))]]))])]])]]])]))]]]]]])]])]))))))))))))))])))])))]])])]))]]]))])))]]))]]]]]]))]]])))]])])))))]])]])))])))])))))]])]])))))]))])]))])]]])])])])]))]]])])]])])]]]))]]]]]]))))]]))]]]]))])]]]])])])))]]]])))))]]])]]))))])]])]])]]))])))])])]))])]])]]]]])))]])))])])]]])))))))])]])))]])))))]]]])))]]]]))]]]])])])])]])])]]])))]]])))])]]))]])]))]])])]])]]))])))))]]]))])))]))])))))])])])])]]]))])))))))])]))))]))])))]))]]]])]]]])))]]]]]]]]]])]])))]))))]))])))])])]])]]])])])))]]]]]])]])]])))))])))])])])])))]))))])]]])))]])))]]])]])]]]))])]])])]]])]))]]))]]]])]))))])])))]]]]]]]])])]])))))]])))))))]]]]])])]]])]]))]])])))]]))])])]]])])]))))]))))]])]]))))]]]))))))]])]])))))))])))]])]))]])))]])])))]])])]])]]))))]))]]]]])]])]]]]]])))]))))))))])))]))]]])])])]]]])])])])]]))])]]]))])]])]))]))])))]])))]])])]])])]]])))))])]))]))]]]))]]]))])])])]])))))]]])]]))]]))]]]])]])]]]]])])])]])]]]]]]]])])]])))])]])))]]))]])]]])))]])])]]]))]]]]]]]))]])]]])])]]))]])]]])]]])]]))]]]]]))))])]))]]]])]])])])]]])]])]))]]]])])))]]]))]]]]]]))]])]]))])]))])]]])])]))))))]]]]])]])]]]))]))))]]]]]]]))]]))))])])]]]))]))]))))))]))))))])])]))]])))))])])]])]))])]]))])])]))]])])]))]))))])]]]))]])]))))]]))]]))]]]]))])]]]]]])]])))]]))))])]])]))])]))]]))]]))]])])])])])]])]])]]]]]])]]])]])]])])))]]]]])]])]))]])]))))]])))))]]]]]]])])])]))))])]))])]])]]]]]])])]])])))])))])]))]]))))]]])]]]))]))]]))))))])]])]))]]]))]]))]])))))]])]]))]]]])])]])]]])]))]])]]))])))))]]]])))]))]])]]))))]])))]))))])])])]]]])))]))]])]]]]]))]]])]]]))]]])]))])]])])]])]])])]]])])]])]]))))]]]]))]]])])])]))])]))]])]])))]]])))]))))))]]]])]]])]))]]]))))]]]])))]))]]]]))))))))]]]]))])]]))]]]])]])]]]]]])))))))])]))))))])]))]])]))])])))]))])])])]))))))))]])]]])))]))))]]]))])]])))]))))]]]]))]))])))]))])))]]])])]]]])])]]))])]]))]))]]]])))))]])])))))])])]))]]])]])]]))))))])))])]])))])]]))]]]))))]]])))])]))])))]]))])]])))]])))])]]))])]]])))))])))]])])]))))])]))])))]]))])]))]]])))])]])])]]))])])))))))]]))]]]])])))])))])]]]]))]])]])]])))])]])))))]])])))))])]))])]]])]])))))])])]])]]])])))))))]]]]])]])))))]])))])))]]))))]]))]))]]]]])]))))])])]]))))))]])])))]))]]))]]]))])]))]]))]]))]]]])))))]))])))))])))])]]]))))))])))])]]]])])])]]]])])]])]]]))]]])]]]))]])]))]]]]))])))]))])))]]]]]))])])]])))])])]))])]])])]])]]))))))]))])])])]))]))))))])])]))])))]])]]]]]])])))))))))))]]])])))]))]])])])])])))])]]])])]]]))]))]]])]]]])]))))]))))]]))]]]])])])])]])]]))]]])])])]]])])))))]))]])))))]])]))))))])]]))))]])]))))]]])]])]))]))])])])))]]])]))]])))])])]]]]]])])]])))))])])]]))]))))))]))))]]])))]])]]])]]]]))])]]]])]])]]]]])]))])]]))]]])]])])))]]])])]))))))])]]]]])])]))]))])]]))))))]])])))]))]])])]]))))])]]))]])])])]]]])))]]]))])]]))))])])]]]]]))]]]])))))]]]]))])))]]])]]]]]))))))))]])]]])])]]))))])]))]]])])))])])])]])]])]])))))])))))))]))]]))])])))]]]])]])))])))])]])]))]))]))]))]]]]]]]])]]])))))])])])]))]]))])))])]))])]]])))))]]])]))))]]]]]))))))]))]])]]))]]]])]]])]])])]])))]))])))]]))])))]]))])]))])])]])))]]))]]]])]])]))]])]))]))]])]))))]]]))])))]]]])]))]])))]]))]]])])))))]]]]]])]]]))))))])))))]]])]))]])))])))]]])])))]]])))]]]])])])]]))]]])))]])]]]])])])))]))]])]]]]]])])))]]]]])])))]]])]))))])]]]])]))])]))])])])))))]]]))]))]))))]])]])])))]))))))]])])]]))))]])))]))]]]])]))))))])])])]])]]])))]))]]]]])])))))))])]]]))))))))])]]))))])])])])))]))])]])))))))])))))]))]])))]]])]))))]]))))]]]))]]])])]]]])))))])])]]))))]]))]))]))])))]]]])]]])]))]]))]]))])]))]]]]))]]))]]))))))])])]]])))]))]]])]]])]])]]]))]])]))]))]]])))))]])]]]]])]]])]])]]]]]])))))])))]]]]))))))]])])]]]])]])])))])]]]])])))]]]]))]]])]]))]))]])]]]))]])]]))))]]]]))))]])))))]]))]])]]]))])]]]]]))))]))))])])]))])])]]]]]))))])])]))]))))))])])))))]))])])]]])]]])]]))]]))]]])))]]]])))])]))]))])]])])]))])])]]))]])])]]]]]]]]]]])))]])))]])])]]])])]]))]])])]))]]))]]))))]])]))]]))]]))]])]))))]])]]])))]]]])]))))))))])))))))]]]]))])]))]))))]))]])])))]]]]])]])])]])]])]))])))]]]])))]]))]]])))]))]]]]]])]]]])]]]))]])])))]))))]])))]]]]]]])))]]]]]]]]]]]]))]]])]]]]])])])]))]))])]])))]))]))]))])])]]]]))))]))]])))])])))])))]))))]]])]]]))])]])]])]))])))]))))]]]]]))))])))))))]])]]])))]))))]]])]])])]])]]]]]))))]))]))))]))]])))))]]))))])]]]]]])])]])))))]]]])])))]))]])))))))]]]))))))])]])))))])]]))]]])))]))))]])]])))]]])])])])]]]]]))]))]))]])))])])])]]]))]])]])])))]]))])]]]]))]))))))])])]))])])]))))))))))])]]]]])]])))))]))])]])))]])]))]))]]]))))]]])]])])])))]]))]]])))]])])]]])))))]]]))]]]))])])))]]]))]])])])])))])]])]]]]))]]]))]])]))])]]))]))])])]]]]))))]])]))])))])])))])]])])]))])))]]]]]))]]]]])]]]))))]))]]))))]]]))]))))]]]))])))]]])]])]))))]]]])]]))])))]])]]]]))]]]]])]]])]])]))]])])]))]))])]]]]])])]])))]]]])]])])))))]]])]]))))]))]))))]]]]))))))))))))))))]]]))])))]))))])))]]]]]]]])))))))])]])]]])))])]]]]))))])))]]])]]))])]]))]])]))])]]]]])])]))]))))])])))]]]])])]]]])]]]])]]]]])]])])])))]))))])])])))])])))])])])))])]]]]]]]]]])))]]]))]))))])]]))]))]])]))]))]]))]))]]]))))]))))]])))]]])])))]))))]))])]]])])]]))]))])))]]]])]])])])]]]]]])])])))])])])]])])]])]))]))))])))]))]])])))]]]]])))))]]]]))]))])])])]])))]]]]]])))]))))])]))])))])]]])]])))]))))))]]]])]))]))))))])])])]]]]]]))]]]]])]))]))]])))]])))]]]])]]]])]])]]))]]]]])])]])]])))])])]]]]))])])])])))))))])))])]]])))]]))])))]])])]])))])]])]))])]]]]]])]])])])]])])))]]]]]]]))]]]]]])]]]))))]])))]]]))])]]]))]])])]])]]]])]]))])])])))]])]]]]]])]))))])]))]]))])])]])]]]]]))))]])])]))])]])]))))]]))]])))]]]])))]]]]]))]])))]))])))]]]])]]]]]))))))))]])])]))))]))]))]]])]))]]))))]])]]]])]])])))))]]))]]))]]])])))]])))]]])))])])])]])]))]))])]))))]]]]))))]]])))])]]])]]]))])]]))])])]]))))]))]])))]]])])]))))))])]]])]))]]))))]]])]]]]))))]]]]]])])))]]]]))]))]]])))))]))])]))]])])]]))))]]]]]))]]]])])])]]]]])]]])]]]]))))])]]))]])]]))))))))]])]))]])))]]]]]))]))])))]]))))]]]])]]]]])]]]))])])]]]])]])])]]])))])])]])]])]]])]]]]])))])]])))))))])]))]))))]))))]]]])]]]))]))])])]))))])]]])))]]]]]]]]))]]))])))))))]))))))]]]]]]])])))]))]]])]])))])]))])])))))])]]]]))]]])])]))])))))))]]]])]))])])])]]])]]))))))]]]]))]))])]]]))]]))]]])])]))))]])]]]])))))]]])]])]])))))]])])))]))))]))))])]]]]))]]]))])))])]))]]]))))]]]]]]))]]]]]])]))]))])])))]]])])]])]]]]]]]]))])]]]])]]]])]])])]])]))]]))))]]])))]])]]]])])])]])]]]]]]))]]]]])]]]]])))]])]]])]]))))]))]]))))))]))]))])])))]])))]])]))]]]))])))]]]])]]]]]))]))]]])])]))))]])))])))]])))])])]])))))]]]])]]]])]]]])]])))]]])))])]])]]]])))])))))]))]))))]]]))))]]))]]))]]]]))]])))]]]]]])])]]]]))]]])]))])]]])]])))))]]]))]]))]])))])]]]))))])]))]]]]]]])]])]))])]])]]))))]]]]]]]])]])))]]])])])]])))]])])]))])]]])]]))]])]]])])]]])])))]]])]]]))])]]))]]]])])]]])]])]]]])]))]])))]])]])]]])))])])]]]])]))))])))))])]))]))))))]]]]]])]]]]])]])]]]))])))))]))])))))]))))))))]))))]))))]))]])))])]))])]]])])]))]])]])]])))]))]))])]]]]))])]]])]])]))]]))]])))]])]]])]]])])]))]])]]]]]]]]))])]])])))])]]))]))))))]])))))]]]]]]])]])))))]))))))]]]))]])))]]]]))])))])]))]))])])])])])]])))))]))]]))])])]]]]])])))])]]]])]))]])])))))))]))]]]))]])))])))])]]]]))])])]]]])]]])]]))])])])))])))])]]]]]]]])])]]]]]))]])]]]])]]])]))))]]]]]])]]])])]]))])])]))])))]]]))])]]))])]))]])])))])])))]))])))]]]]))))]))))]])]]))))]))])))]))))])])]])))))])))))])])]]]]]))]])))]]]]]]]])]))])]])))])]))]])])]))]])]])))]]]]])]]]]]))]])]]])))]))])))]])]]]))]))]))))))]]))]))))))])))]])]])]])])]]))))])]])))]))]))]]])])])])]))]]))]]]))))]]))]])])])))]])))))))))]]]]])]))]]))]]]])])])])])))]]))))]]])]]])])]]]]])]))))]])]]]]]))]]])))]])]]]])])]))]))]))]])]))]])))]]]))))])])])])])))])])]]])))])))]]]]))))])))]])])]]]))))]))]]]]]])])]))))]]))]])]]]))]))])]))]]]])])]])])]]]))))])))]]]]))])))]])])))]])))]])))))])]])]])])))))]]]])]))))]])))]))]]))])]))])))])])])))])]))]])))])))))]])))]]))))]))]])]])])])))))]]]]))))]])]))])]))])])]]]]))])])))])]]]]))]]))))]]]])])]]))))]))]]]])]))])]))))))])])))])]]])))])]))]])))])]]]])))))])])])))]])]]))]])]))])))]]]))]]))])]]]]))))]])]]])]]])))))))]]))))])]]))))]))))]])]]])]])]]]))]))))))]]]])])]))])]]]))]]]))])]))]]])]]]]])]]]))]]))]]]]))))]]))]])))]]])))))])]))])))])]))]))])))])]))]]])))]))))]]))))])))])]))))))))]])])])])]])))))))]])))])))]])]]]))]]))]]])]]])])]]))])]])])))]))])]))]]))]]])]]]]]])]])))])))])]])])))]])]]))]]]))))])]])])])]]]])])]]))])]]]))]))]])]))))]])))]]]]])]))])))))]]]]]]))))]])])]]])))])])]]])])]]]]]]))])]]])]]]]]]]))])]])]]])]))])))]))]]))])))]))])]]]])]])]]])))]]])]]]))]])]))))])])])))]))])])]]))])]]]]))))]]))]]))))]])]])))))))))]))])))])]]]]]]])])]))]]]])))])))])])))))))))))])))))]))]]])))))))])])]]])]]]]]])]])]])])]]])]])]]))])]])]))]]]]]))])]]]))]])])]]))]]]])])]]])]))])]))]])])))]))))))]]])]])]))]]))))])])]]]]))]])]]]]]])])]))]])))])))]])]]])]))]))]))]))]])])))])]]))]]]]]]]])]))]])])]))]]))])])]]])))))]])])))]))])))])])))])]))]))])])])]])])])]])]])]]))]))]))]])])]])))]]]))])))])]]]]])]]]])]))])]]))]])]])])])]))]))]]]])]]]]])))]])])]))]))))))]]))]])))]]])]]]))])))]])))]]]]])]]))]]))))]]))))]]]]]])]]]])])]))]]))]]))]]))])))))]])))]))])))])])]]])]))]]]))))))))))])]])])])]))]]])))))]))])))])])))])]))])]]))]))))]))])])]])))]]]]]])))]]]]]))]]))])))]])])]))]]])])])])))))]]])))]))]))]]]]]])]])))]]]]])]]))]]]]]]])]))])))))]]]]]))))]])])))])]]))])]])]]]]]]]]))]]))))]]]]]))]]]))]]]])])])]))])))]]))]]])]]]]]]))])]]])]))]])]]])]])]])))])))]]]])))]])]))))])]]])))]]))]))]])])]))))]])]))]]])))])))])]])))])]]])])]]))])]))]]]]))])))])]]))))])]))])]])]]])])]]))]]))))])))))]]]])])]))))])]])))])))))]])]]]]]]]))]))])])]]]))))])]]))))]]]])))))])]))]))])]]]]])])]]])))])))])]))]]]))])]]])]])]])])])]])))))]]))))))))]]))]))))])]])]]))))])]))]))]])]))])]])))))]]]]]])))]])]))])]]))))]]]])])]]]]]])])])))))]]]]]]])]]]))])))))]))]]])]])))])]]]]]]])]))))])]]))]]))])]])]])])])]]]))))))])))])]))]]])]]]))))])])))])])]]])]))])])]))))))))))])])))))))))]]])])]))])))]))))]]))]]]))])]]]]]])]))]])))))))])))]))))))]))]])]))))))]))))]]]])]))])))]))])))])]]]]]]]))]]))]]]]])])])])]))))))]])]])]])]]])]]))]]))]]])]]))]])))]])]]]))])]))])]])]])]]])))))]]))))]))])]))))])]]])]))]]))]])])))]]))]]))]]]]))]))]))]]])]]])])]])]]])]))])]]])))]]]])]]]])))]))]]]]))))]]))))]))))))]])])))))]]])])]]])]])]])]])))])]]])])]]]]])])])]]]))]]])))))]))))))]])]))]))])])]]]]))))))])]])])))])]))))])))]])]])]]]))]]])))))))])]]]))))))]]])))]))])]])))]))))]]))]]]))]]))]]]))])])]]])])]))]]])])]]]])))]]])]]]]])]))])))))]]]]))]])])]]]]))]))))]]]]]))]])])))]])])))]]]))]))])))))))]]))])])))])]]]])]]))])]]]]]))]]]]]])]]))))))))))]))]]))])]))]))])]]]])])]]))))))))]))])))]]]])))]]]])])]])])))))]))]))]]]]]]]])]]]]]])])))]))))])))])])])]))]]]]])))]]]))]]])]])]]])])]])]]))]]]))])]])))]]])]))))]]]]]]]))]]]]]]]]))])]]]))))])])]])])))]]]]])])]]))))])]])]]])]))]]]])]))]])])))]])])]]]])])]]]))]))))])]]])]]]]])]]))])))]]]]))]])]]]]))]))]])]])))))])))])]]]])))))]])]]])])]))]])])]])]]])]]])]))])]))]]])]]])))))))]]]]]]])]])])]]]]])))]]])]]])])])))))]]]]]])]])]]))]]))]]]])))))))]]])])])]])]]]]])]]))))])]])])))))))])]])))))])]))))])]))]])])]]]]]])]]]]])]))]))))])])]])))]]))]]]])]]]]))]]]]]])]]])))]])])))]]])])])]])])]]])]])]])))])]]]])]))]))])])]])]]]]]])])]]])]])))]])))]))]])])]]]))])])]))]]])])])]))]]))))])])))]))])))]]]))])])]))]))]]))]))]])])]]))))))])])]])]]]]])]]))]])))))])]))]]]]]))]]]))]])]]]))))]))]]))])]])))])]])])))]]])]])))]])]]])]])])])])]]]]))])])]))))]])))]))))]]])])))]))]]]))]]))])))])])]]])]]])]]))]]))])]]])]))))])]))]))]))]]]))])])))]])))]))))])))])]])])]]]])]]))))]]]))]]]])))))]]))]]))]))])]]])]))))))]))]])))]]]])))])]])])]))]]))]]])])])]])]])])])]]]]]))]]])))))])]]]))]])]])]]))])]])]]]]]))))))]])]]]])])))]])]]]))]]])])]]])))])]]]]])))])))])])))]]])]]]))]])])]))]]])])]))))))]]]])]])))]]))])]]]))))]))]])))])])]))])]]]])]))))))))]]])])])]]]]]))]]])]]])]]])])])]])])])]])]]])])])]))]]))])]))]]])))))]))]]]])]])]]]))]]]]])]]]])])])])]))])])])))]))))]]))]]]]]]]]))]]]]))]))])))]))]]]]]))])]])])]])))]))))))))])))]))]]])])))]])))])])))]]])))))]))]]]])])))])])])]]]]]]]])])])))])]))))])]]])]))))])])))]]]]]))))]))]))])])])]))))))]]]]))]])))]]]))])]])]))]]])])]])]]))])]]))]]])]])))))]))]))]))))]))))]])])]]])]])]])]]]))]])]]))))]]))])]]])])])))))))))))]]]))]])]])]]]]]]))])))]])]])]]])]]))])))])])]]))]]]])]]]])))])))])))]])]])))]]])]])]]]])]]))])]]]]))])))))]]])))))]))]))]]]]])]]])]))]]]]])))))))])]]]]])])]]]]))]]]]])]]))]))])]])]))]]]]]]))))))]])]])]])))]]]]]))]])]]])])]]]]]]]])))])])]]]])]]))))]]])])]]])]))])]]]])]])]])]))]]]])]]])]]))))])])))]])))]]])]])])))])])])))])])]]]))))))]])]]]))))]])]]]))]))]]])])))]])]]]))]])])]))))])))])]])]))]]))]])))))])))])]))))])))])]])]))]])]])))])])]])]])]]]]]]]]]])]]))))]]]))))])]]])]))))]]))))]]]])]])]]))])])]))]))]]))])]]])]]))]])]]]))))]))]]))]]))]))])])]))]]]]]])]]])))]))]]]]]])]]]]))]))]]]))]])]]]))))))))])]))))])]]]])]]]])]]]))]))]]]])])]))]))]]]])]))]])))])]))])])])]])])]]))]])))))]]]])])]]]]])]])))]]]))))))]]))])]]])]]))))])))]]]]]))))]))]])]]]]])))]])]]])])))]])]])]])))]]]))]])]))])]]]]]])))))]))])]]]])]]]]])]]]])))])]])]]))))))]])])))))]])]]]]))]))]]]))]]))))))))]]])))])]]])])]))]])]])))]))))]))]]]])])))])])]]]]]))]))])])]]]]])])])]])])])]])))]]))]]]))]))))]]])])]]))]])])])))])))))])))))]))])]]]))]])]]])]]]))))])])]]])])]]]]])))]])]])]))))])])))]))]))]])]]]))]))]]])])))))]])]))))]]])])]))))))])])))])]]))])))))]]])]))]]])))))))]]])])]]]]))]]))]))]]]))]))))])])])]]]]]))])])])]]]]])))]])]]])))))]]))))))]])])]))))))]))])]]]]]]))))]]))))))))])]))))))]])])])))]])])))]])])]))]])]]]])]]]]]))]]])]]))))))]]])]))]))]])]))))]))))]]])))]])]]])])]]]))])))]]))))))]])]))))])))]))]])]))]])))))]]))))]]])]]))]]])])])))]]))])))]]])]]])))])]]])))))))]))]))]))]]))]))]]]]])]])])))])])])))]))]))]))])])]))]]))))))])])]))]))]))))]])])]))]])])))])))]))])]))]]]])]])))]])])])]))]])])]]]]))]]))]))]))))])]]])])])]))])])]]]]))))]])]]]])]])]]))])))))]]]]]])]]])]])]]]]))])])]])))]))))]]))])])])))]]])])]]]])]))]]]]])])))))))))))))])]])]]]])]]))])))))]]]))))))]])])]))])]]]))))]])]]]))]])))]))]]]])]]]))))]))]])])]))]))]))]]]]])))]])]])]]])]]]))]]])]))])]))]])))]]])])))]))]]]))]]])))]]]]]]])))))]))])))]))]])]])])]])]))]]]]])]])]]]])]))])]]]]))])))))]])])])]))))])]])])]])])]])))]))])]])]])])])))]])]])])])]]]))))]])]])))])]]]]]))]))]))]]]])])]]]]]))))]]]]]]])]]]]])]))]]])]])))]))]]])])]]]])]])]]])]])]))]]]]])])])]])]]))]]]]))])]]]]]))]])))]])])])]]))])))]]]]]]))])))]])]]))]])]]))]]))])])])))]]])]]])]]))]]]])])])]])))))])))]]]]])]))]))]]])])]]]))])]]])]]]]]])))]))]))]))]])))])))]]))]]])]]])]])]]))]]))))]]]))))))]))]]]))))])])))))]]])]]]])))]]]])]]])])])]]]])]])]]]])]))])]))]))]]])))]])])]))]])]])]])]]))]]]])]))])))]]])]))]]]])]])]]]]]))])]]))])])])])))])])])))]))]))])]]))]]])]]]]]]]))])])]])]]])))]]]]]]])]]]]])])))])]]]]))])))])]])))])))])))]]])])]]]]]))]]]))]]]]]]])]])])]]])))))]]]]])))))]]]))]]]]])]])))))]]]]))]]))])]))))]]]]]))])]]])]]]]]])])]])])]]]]])])]]]]])))]))))])]))])))]))])]]])]))]])))])])]])))]]))]]]]))]]))]]]))]])])))])))))])])))])))]]]])]]))]]]))]))])])))]]))))])])))])])]))))]]]]]]]]]))))])))]]]])))]])]]])]]]])))]]]]])])]))])]]])])])]]]])]])])]]])))])])]]])]))]))]]])))]])])))])])]]))]])])]]]]]])]]]]]]])]]])]))]]])))]))]]]))]]])]))])]]])]]])]])]))])))]])])))])))]]])]]]])]]]])]))]]))]])))]]]))]))]]]]]]])])))))))]])))]]]]])]]])))]])])]]]))]))))]]))]])]))))])]))])])]]))))])])])]]])))]))))])]))))))))])])]]))]))])])]))))])]]]]))]])])])))))]))))]]))]]))])]))])))))]])]]])]]]]]])])))))])))))))]]))]))]])))))]))])))]]))]]))]))]))))))]))])]))]]))]]))]])))))]))]])))))])]]])))]]))))))))]])])])]))])]]))])))))])]))]]))])]]])))]]]]]))]])))]]])]])]]))]]))))]])])]))])]]))]))]]]]]))])])))])]])])])]])])]])))]]))]]])]]])]])))))]])))))]]])]]])])]])]))])]]])])]]]])]))))])]]]]]]]))))))]]])]))])])]]))))]])]))]]]]]))]))])]]]])])]])]]])]))))]))]))])))])))]])))]]))])]])]))]])))))])]]])]])]))]]])]))])]]))))]]]])])])))]))]])))))])]]))]])))))])]]])])]])]])))))]]]])])])]]]]])))))))]]]]])])))]))]]))]])))])]]))]))]]]))))]]])])]]))])])]])]])]))])))])]))]])]))]]))]]))]]]]])])]])])]]]))))]]])]])])]]]]))])]))]]])))])]])))])]]]]]))])))]])]))]]])]))]])]]]])])]]]))]))))))]))))))))])])))])])))))]))]))]))))]))])]))])]]]))]])))])]]))]])))])]]]))]))]])]])]]))]]]]))]]]))])))])])])])))]]]))]))])]])))]]])))))))]])])])])]]]])]]]))]]])]])])]]]]))]]]])))]]]]))])]))]]])))]))))))))))]]]]])))]))))]]]))])])]]])]]]]))))])]))]))])]))]))])]))])]])]))])]))))])])])])])])))))]]))]))]]]])])])))])))])])])]])]]]))]))]))])])]]]))]]]]]))])]))]))])]]))]]]])])]])])]]]]]])))]])))))))]]]]))]]])])]]]])))]]])])])]))]]))]]]])))])]])]))))]]])])))]]]]])]))]))))]]]]])))))]]]]]]]])])]))))])]]])))]]))])]]]]]))]])]])]))])]]))]))]]])]]]]])]))))))))))))])])]))]]])]]])))]])]]))])]))])]]))))])))))]))])))]])]))]])]]]])))])])]]]]]]]]]]))])])]))])]]]]]])))])))]])]]])])])]))))])))))])))]]))]])]]))]])))))]])]]])]])]])]]])]])]])])]])]]]))))])))]))]])])]))))]))])]))]])))])))])]))])))))]))]))])])])]))))))])]])]))]]]))]]])))))])))]])]])]])]]))])]))]]))]))]))))))]))])])))]))]])))])))]])))))])])])))))]]))))])]])]))])])])]]]]))]]])])])]]))))])])]]]]])]])))]]]]]))])))]])]])))])))]]]]]])])]]]]])])]])])])]))]]])]]))]]])))]]]]))))]])]]])]]]]])]))]])))])])]]))]))))))))))]]))))]]])])])))]]]]]))))))))]))])]]])))])]])])))))]))))]])])]]]))])))]))])]]))]))))]]]])])))))])])]]))])]]))]))]])]])]])]]))])]]])])))]]]))]))]]]])]])]]])))]]]]]]))))]]])]])]])]))]]]]]))))))]])]))]]))])))]]]]]]))))])]])])])]])))])]))]))])]])])]]]])]))]])]])]))))]])]))])]])])])]]))))))]]))))])])))]]])]]]]]]]])))])]])])))))]))])]]]]])))])]]]))])]))))]]]])])))))]])])]]))))]]]]))]))])]])]])])))])]]])]]))])))]])])]))])))]))))])])]))])))))]]]])]))]]])))]])]]]))))])))])]])]])]))]]]])])]])))))]])])]]]]]]])]])])]))]]]])])]])]]))]))]]])]]))])))]]])]))])]))])])]])]])]))])]]])))]])])]])])]])))))))))))]]]]])])]))]]])]))]]])]])])])]]]])])]))))]]]]]]))]])]])))])])])]]])]]])])])))])]]]]]]))]]]]))]]])]])]]]))])]])))))))]))]]]]))]])))]]]]]))))]]))]))]]))))))]])))]))))])]]]]))]])]))]]])]]])]]])))]])))]]))]]))]]]))])))])]]))]]))])]]))))]]]]]]]])]))]))]])))]])]]))]))])]])]]]]])]]]))])]]))]))]))]])]))))])))])])))])])])]]])])]]])])]]]]]))))))])))])]]]])]]))]]))))]]])]])])))])]]])]]]]]))]]])))]))])])])])])))]])]]]))))))]]))]))))]))]]))])))))]]]])]]])))]]]]]]))))])]])])]])))))))]]]]]]]))))])]))))]])))]]]]]))])]))]])))]))))])))]]]]]))]])]])]])]]])]])]))]]]]]]])])))])))))]])]]])])])])])])])]]]]])))]))]])])))))]))))])])]])])]]))]]))]]))))]))]))))]])]))])])]))])]])])]]))]))]]]))]]])])))])))))]))))))]]))]]]])]]))]]))]])]]])]]]))))])]]]]]]))]]))]])]])))])]))]))))]]]))])]]))])])))]]]])))]]]]])]]])))])))])]))))]]]))])]]]]]))])]]))]]])])])])))))))]])))])])])))]))]]]])))]]]]]]])])]])))))]))]]])))]]]]]]]]))]])]])])]]))]))))])])])]])))]))]]]))]]]])))]])]]))])]]]]))))])])])])))))]]]]])])])))))]])))])])]]]]))]))])]])))]])]))]]]])])])])])))]]))]]]]]]]))])]]]]))]]))))]))])))))]]]))]))]])])])])])))]))))]))])))]]])))))])]])))]))]]]]])]))))])))]))]])]])]]]]])]]))]])]]])])))))))))])))]]]]])])))]]])]))])))]])])])))])))))])]]))]]]]))))))))]])))]])])])]])])))]))])]]]]])))]]]]]]]))]]])))]]])))]))))])))]]]))]])))))]])))])]])])]])]))))]]))))])]]))]])])]]])]))]]]])))]]]])]]]))]))))])))])])))]]]))))])))))]))))]]])]]]))]]]])))]])])]])]]])])]]])]])])]]]))])]]]])])]])]])]]])))]])]))])]))])]]]]]]]))]])]]]]))))))])]]]))])])))))]))]))]))))))))]]])]]]])]]]]]])]]]]])))]]))))))))]]])])]]]]])])))]]])))]]))])]])))]])]])])]))])))]))]]]))))))]]))))]))]]))]))]))]))]]]]]]]))])])]])]))])))))])]])])))]]))))))))])))))]]]]]))]]]))))]]])))))))))))])))))]])]]])]))])])])])]])]]]])]))]])))]))]]])]]))]])]]]))))))]]])))))))))]]]])]]]]))]]]])])])]])])])))))]]]]))))]]]]]]]]]]))]]]]]]))]])))))])]]]]))]))])])))]]])]]]]]]]]]]]))))])]]))]]])]))]]])]))]))))))]])]))]])))]]]]]]))])]])))])])]]]]])])))))])]])])]))]]]]]))]]])]]]))]))])))]]]]]]]))]))))))]))]]]))]]]))]]]]))]]])))]]))]]]])))]]]))]])))))))))))])]])))])]])]))]]))]))))]]]]])]))]))]]))]))]])]])))])]]]])))]]])]))))])]])])))])])]))]]]])]]]]))]])]]])]])]]]))))))))]]]])]))]))))))]]]])]])]]))]]]]]])]]]])])]))]))]])])]])))]]]]])]]]]))])]))]]])]]))]]])]])))]])]])))))])]]]]]])])]))))]]))]]))]])])))]])]]]))]]])]])))]))])])]))]))]])))]])])])])])))))]]])]]]])]])]])]))])])]]])))])]))]]))]))])]])]])))])]]])]])]])))])]])))]]]))])])]))]]]))]])))]))]]]))]]])]]]]]])))]))]))])])))]))]])])))]]))])])))]))]]]]]))])])]])])])]))])]]]]))]]))]]]]])))]])))]))))]]]])]])]]))))])]]))])))])])])])])))))])]]]]]])))]]))]])]]))]))])]]]]]))]])])])]]]])])]))]])))))])]]])]])])]]]))])]])]]])))))]])]]])]])))]]))])]))]])]]]]]])]]])))]]))])]]))]]]))))]))])])]]])]]))])])])]]]]))))]]]]]))]])))))))))]]])))]]))]]))])]))]]))))])]])))])])])])]])]))]])])]))))]]))]]))))))])]]))]]]]))])]])]]])]]])])]))]]]]])]]))))]]]))]))])])])))])))]])))))])])))))))]])]])]])]])))])))])])]])]]]])]]]])]])))))]]])]]))])))])]))])])]))))]))))))]]))]])))])])]))]])]])]))]]]))])])]])))))))))]]))])]])])]])))])]])]]))))]]]]])]))]]]]]]))]]))]])]]])]]))]])])))))]])]]]))))])))]]])])])]]]])]])))]))])]]))]]))]))])))]))]))]]])]]]])))])))]])]])])]]))))]]))]]))]]))]]])])])))))])))]))))]])]))]))])))]))]))]])]]]]]))]]]])))])]))]))])]]))]]]]))))))))]])])])]])))]]]])))]]])]])))))]]]))))))]))]))]]]])]])])]])])]])])]]))])])])]]))))]]))))))))]))]])]])))))]))])]])]])))])])]))))))))])))]]])]))))]]]])]])))]]]])]))]]])])]))]]]]]])))]]]]]]))]])))))))))]]]))))]))])])]]))]))]]])])]])]]])])]))])))]]]])]])))]]))]]))]]])]]])))]]))])]]])))])]])])]))]))]]]])]))]))]]]])))]))]))]])))]))))))])])]))])])]]]]])]])]])]))]]])]))])))))))])]]]]]]]])]]))])]]))))])])]))]])])])])]])]))]]))))]])))]])])])]))]])])))]))))))]])))]))]]]])])]))))]]]]]]))]])])))])))))]])]]]]]]]])]])])])]]]))]))))]]]]]]]))]))])]]])]))]]]]]]))]]]])]])]]]]])])))])])]])])]]]]]))))])]])))]]])])]]]]])])])))])])))]))])]])))])]]))))))))]))]]]])])])))]])])))]])]]]))]))])])]])]))))])))))]])]])]]])])))))])])]])))))))))]]])])]]])])])])])]])]])]]]]])]]]])])]])])]))])))]])]))]))))]]])]]]]]]])]]])))]]])]]]]]]])]])]))]]])]]])))])]])]])))]])])])))))]))))]])))])))))]]]])])])))])]])]])))]])))))))]))])])]))])]))))]]]])]]]))])))))]]))]]))))]))]]])]))]))]))]])]])]))]]]]]]])]])))])))]]])]))])]]]]])])))]))])))]))])]]]]]]]]))]])])))))))]]]]))])])))])]])]]))))])]))))))])))]]))))]]]])]]]]]])))))))]))]]])]]])))])))]))]]]])))])]]])))))]]]]])]]]])]]]]])]]])))))))])))))]]])]])]]]))]]))]])))))]]]))])))]])]])]]]))))])])))]))))]]]]))]]]))])])]])]]))))]]]))])]]]))]]])])]]))])]]))]]])])])])))))])])))))))]]]])]]))]]))]]])])])))))]))))]])]))))))]]]]))))))])]))))]))))]))])))])])]]))])]])))])]]))))])]]]))]]]])))]])]])))]]])]])]])))]]]]])])]])]]]]))])])])])]]]]]]]]))]]]]]]]])]]]))])))])]]])]]))))]])))]])])))]]))]])]]])]))])]))])))))]])]])]]))))]]])]])])]])]]]])]]]))]))]))))])]])]))]])))]]]))]]]]]])]]])]]])]))])]]]])))]]))]))])))])]])]])))]])]])])])]))))])])))])])])]])]])])))])])])))))]]]])]]])])])]]])]))]])])]]])])))))))]])]))])]]))))]])]))])]]])])))))))]])))]]]))]]))]]])]]])])]])]]]])))]])]]]]))]])]]]])])]]]]]))))])]]]])]]]])]])])]]])))]))]]])]))]))]]))]])]])]))]])])])])]]]]))]])))]]])))))]]]]))])]])]))])])]])))))]))]))]))])))]]))]))])]]]])])]]]))]))]]))])))]])))]))]))))]]))]]))))]))])]])]]]]])]]])])]])])]])))])))]])]])]]))])))]])])]]))]])]))])]))]]))]]])]))))]])]])])]]]]]))])])]))]])]]]])])))]])]]))))]))))]]])))]]]]]]))]]])])])]]]])])])]]]])]]]]])]]]))))]))]))))]]])]]]))]])]]])]])))]]))]]))))])]))])]))))))]]]]]]]))]]])])]))]])))]]))))])))])))])]))]))))]])]])))])])]]))]))]]]])])]]))]]]]])])]])])]))]])])])])]]))])]])])]))]])])))]))))])))))])])]]]))))]))]]))])))]]])]]]))])]])]]))))]])])))]))))]])))]])]))])]))))]))])])]]]]))])])))))]))])]])])]])])]])))])]])))]))))]))]]))]]]])]]])])])))))])))])])])))))))]])))]))]]]])])])])]))]))]]])]))]]]))]]))]]]))])]])]))))]]]))]]]]])]])))))])])]]]]])])]))]]])))]])]]))]]]]]))]))]]))]])])]])]]))])])))))]))]]]]]]]]])])]]))]))]]]]))]]))))]))])])]]]]])]])]])]]]]]))]])))])]]]]))])]])])))]])]))])]]))]])]])]])]]]])]]]])])))])]]))])))])))))])]])])))]]]]))]])]]))))]]]))]])])]]))))))]))])]])]))])]]))]))]]))]]]]]]])]]))]))])))))]])]]]]])))]]]])]])]]]))]]))))]]))])]]]))]]]])]])])]]])]))))]))))])]]]))))])]])]))]]]]])]]))])])))]))]]))]))]))))])))]]])]]]])]]])])]])]]])))]]))])))))])))))))]]]))])]])]]]])))]])])])))])]))]])]]]])))))]))]]])])]))])]]])])]]]]])])]]]))]))])))])])]))]])]])])]]))]))])))]]])]]])]]])]]))]]))])]])])])))))]]))]]])]))]]])]]])))]))])))])]])))]]])]])])]]]))))))])])])]))]]))]])))]]))]])]]]))]]]]])))))])])]]])])))]]])))]]))]])))])]))]])))]])])]])]])))]])]]]))]])))]])]])]))]]]]]))))])])]])])])))]]])]]))]]])])]])))]])])]))))]])]]]]))]]))))])))])])])))]]]]])]]]]])]]]])])]]]]])]]]]]])]]))]])]]]]]))]]))]])]])))])]))])])]))))]))))))]])))))])])))]]))]]]))])]])]]))))])]]]]])]))])]]]]])))))]]])]))]))])])])]))]]]))])]]))]))))]]]])])))]))))))]))])])]))]))]))]]))]))])]]))]]]))])))]]])])])))]])))])])))]])])))]])]))]])))]]]]))]]])])))))))]])))))])])])])]]))]]))]])]]]))]]))]]])])))])]]]]])))))]])]]])]])]]))]))])])]]]]])])]))])))]]]]]]])))))]]))]))])])]])]))]]))]])]]]]))])])])))])]])))]))])))]))]]))))])]]))))))])]))])))])]]]])]]])]]]]])]))))))]])]]))])])))])])])])]]])))]])]])])]))])]]))])))))))))))])]])))])))))]])]))))]]]]])])]]]])])))]]))])]]])]]]]]]]]]))))])])])))))]]]])]])])]]]])]))])]))]])]]))])])]))])])]])]])]))])]])])]]))]))))])]))]])))))))]]])]]]]]])]])]])])])])])]]]])))]))))]]]])])]))]])]))]]]))]]])])])))]]]]])])])])))))]))])])))))]]))))])])))])]])))])])]))))])]))]]])))]))))]]]))])]])]])]])]]]))])])]]]))))))])])]])))))]])]])]])])))]))]]))))])]]]]]])]])]])))))])]])))]]]]]]]))]]])))))))]))]]]]))))]]]))))]]]]))))]])]]])]])]))]))))))])])))]]]])))]]]]])])])]))]])])])))]]])]]]))))]))]))]])])])]))))]]]))])]])))]]))))])))]]]]])])])]]]))]])])))))]))]]))]]]])]])]]])]))])))]]))))])]]]])))])]))])))]]]])])]]]])]])))])])]])])))]])))]))]]))]])))]]]]]]]]]]]]))))]]])))]))]))])]]))])]])]])])]))]))])])]))]))))]))]))]))))])]]])]]]]])])]]])]))]]))]])))]))))]]))]))]]])]))]])])))])]]))]])]]]]]))]])]))]]])]])]]])]]))]]))))]])))])])))]])])]]]]))))]]])])])])])]]))))]]))])))))))]))]]]))]))))]]]])]]])]])]]]))])]])]]))]]]]])]]])]]))]))))]]]))]))]])])))])]]]]))]])))])]])]]]))])))))))]))])])]])])]]))))))]])]])])))))]])))]])])]))]]]))]])])]]]]]])))]]))))])])])]])))])]]]]]])]))])]]]]]))])]])]])]])]))]))]]))]])))]]]])])])]])))]))]]))))]])]]])]])]])]))))]]])))])))]))])]])]]]))))])]]])]])])))])]]]]]]))]))]]))])])])])))])))]]]])]])]])]]]))])]])]]]])]]))])))))]])]]])))])]))])])])]))]]]]]))]])])))]]])]]]]]]]])]])]])))])]]]]]))))])])]])]])])]])])]]))]]])]]])]])])])]]]]))]]]])])]])]]))])]]))])]])]))])]]]]))]])])])]]))]))))]]))])])))))]))]]]]])))]])]]]))]]]])])])]))]]]))])])]])])))))]])]))))])))]])]]))])))))]]))))]]]]])])]])))))))))))])]]]))))]]])))))]))])]]))])])]]])))])))))]]])]))])]))])])))]]]))]))]))))))]])]))))))]))))])]]]))]]]))))]])]]])])))))]])]])]])]))]])])]]]])])]]))]]])])])))])]]]]]]]])]))]]])]]]))]))]])]]]]))]])]]]]))]]])])))]))]]]]]]))])]))]]])])))]])))]]])))]]])])])])])]]])]))))])])])]])))]))]]]]])))])]]])])]])]]])]])]))]])))))]))]]]))]]))]]))]))])]]]])]))))]]]]]])]]]]]))])]])]]]]]))])]]))]]))])]]))]]])]]))])])]])])])]]]])]]])))]]]]))])]))]]]))))]]])))]]])]]]))]]]]]))]])))))]]])))]]])])))])))]])]))))])))))))]))])]]]))]))]))])))])])]]]])]))]]))])]]]])]))]]])]]])]]]])])]]))]]])]))])]]]]])]])]]]))]))))))])])])])]]]])))))))])))])]]])]]]]])]]]])))]]])))])))]])))])])]]])])]])]]])))]))]])])]))])]])])]))]))]])]]))]))]]]])))]]])]]]]]])]])]))]])])))]])])])))]))])]))))))])]]))])])]))]]]]]))])))))))])]]]))))])]])]]]]]))])]))))))])]]])]))))))]))))))))])]]])))]))))]]))]]))))]))])]]])])))])))])]]]]]]))))])))])]])])])))))]]]]))]]))))]])])]]]]))))))])))]]])]))])]]])]))]])]]))))]])])]])]))]))))))))]]]]))]]))])]]))])))])))]))]]))))])))]]]))))]]])))]])]))]]]))]]]]]]]])]]])]]])]]))))]])))])])]))))]]))))]]]))))]))]]])])]))))]))]])]])]]]]]))))))))]])]]))]]])]])])])]])])])]])))])))]]]))]]])]])]]]]]))])))])]]])]])))]))))])]]]])))]])))]))]]))])]])]]))]]])]]]]]]])]))))]]))]])])]]])]]))]]])])])]])]]])]]]])]]))]]]))))])])])]]]])])])]]])]]])]])])])))))]]))]]))]]])]]]]))])]))]]]]))]))])))))])]))])])))]]]]]))])]]]]]))]))]])]]])])))]])))))]]))]]])])]]]]]))]])]))))]]]]]]]))])))]]]]))]))))])]]]])]])])]]])])]))]])))]]]))]]])]]])]]]]]]])]]]])]))]]]])))])]]]]]])))])]))])])))))))])))))))))]])])))))]]))]]))))]])))))))]))])]])))))]))])))]))))])]])))]]]))]])]]])]])]))]]]])]))])))]])])])])])]]))])]]]])])])))]]])]))]]]])]]])]))])))])]])]))])))))]]]])))]]))))))))]])])]])]]]]])])]]]))]))))]])))]]]))))))]]]))])]]]]]]))))])]])])])))])]]]])]])))]]]]]))])])))))])])]]])))]]]))]]))]))])]]]))]))]]])))))]]))]]))]])))]])]))]])]))))))]))]))]])]])]))]))])))]]])])]]]]]]]])]))]))))]])]))]]]])])))]))])])])))]])]])])]]]))]]]))]]))])])))])]])]))]]]])]]))))]])])]]]]]))]])))]]])])]]])))]]]])])]]]])]))])]]))]])]])]])]])]))]])]]])]])])]))]]]]))]]))))]))]])))]]]]]))]])]))]]])]]]))])))))])))]]))])])]]])))]]))])])])))])]]]]]])])]]))])])]))])]])]]])]]]]]))]]]]))))))))]]])])])]))))))])])])))))]]))]]))]]]])]]]]]]])])]])]))]))]))])))]]])))]]])))]]]])])])]))))]]])))]]))])])])])])]))]))])))))]]]])))))]]]])])))])]]]]])])))]]])])])]]]))])])))])]]])]))]))])))])]]))]))))])]))]]]]]]])))]))]))])]))]])))]]])]]])]]]]]]))]]]]))])]]))])])))))]))]]]])]]))]))])]])))]]]]]]))))))]))])]]])]))])]])))]]])]))])])))))))]])])))])])]]]]]]]]])]])))))]]]])])]])]])])])])))]])))))]]])])]]]))])))])))])]]))]]))]]]])]]]]]])))]))))])))])))]])])))]]]))]]]))]))])))]])]]])])]])])])])))])))]]))]]))]]]]])]]]]))))])))))])])))]))]])]]]]]))]))))]))]]]]]])))]]))]]])])))])))]]]])))]]]]])]])])]))]))])])]])])])]]])))))))]))])))))]))]]]]]]]]))))])])])))])]]])))))])])])]))]])])))]]))])]))]])]))]])]]])]]])))]]))])])])])]]))])])]]]]]]]]])])]])))]])])]]))]])))))]))]))]))))))]])))]])]]]))])])]])]]])])]))])])))]]]]])))]]))]]]]]))]])]]]]))])])))]]])]])]]))])])]]]]]]]]]]])])]))]))]]])))]])]]]]]]]])]]]]]])])]))]])])]]]]]))]))]])))]]]]])))])]])]])]]]]]]))])))])])])]))])]))))))))])))])))]]])])))]]])))]))))))]])]))]))))]]]])])]))))))]]]))))]))]]])]))])]]))]))])]]])]]]]]]))]])])])))]]])])))]))]]])]]])])])))]])])]]))])]]]]])))])))]]]])])])))])]]))]])]]]]]])))])]]]]])))]]]]]]])]]))]))])))]]))]]]])))])])]]])]))))])]]]]])]]))]))))])]])]]]])]]]]])]]])]])]])])]])]]))])))]])))])]))))))))]])]]]]]))])]))]))]]])))])))])])]])))]])]]))])))]]))])]))]]]))])])])])])])))]]]]]]]])]])))])]))])))]]]]]])])))])]))))))])])))]]))))))]]))))]))))]]])])]))]]]]]]]])])]]]]])]]]]]]])))]])]]])]])])))])))))))])]))]])])))))))))])]])))))))]])]]])]])]])]]))])]]]])))]]))])])]))]]))))]]])])))])])]])]]))])))]])])])]))]]))])))))]])))))])])]]]))))]])))])]))]))))])]))]]])]))))]]])))))))])))]]]))]]]])]))]])]]))]))]]))])])])]))]]]])))]))))])]]])]]))))])])])]]])]])]))])))]))])))))]])])]))])]]))))]]]]))])]]]))]])))]]))))))]))]]]])))]))]]]))]])]))))])]))]])))])])]]]]]])]]]))]])])]]))))]]])]])])]]])))))))]]]])])]])]]])))]]])))])]]]]])))))]))])])]))])))))])]))))]]))])]]]))])]]]))])))))]))]]]])]))])]])])])]]])]]))))]))))]))]])]))]))]]]]]))]))]])]])])]]])]])]]]]])))))))]]]]]]])))]])])])]]]]]))))]])])]]]]]))])))])))]]))))))]]]))]]]]])])))]]])]]))])]))])))]))])]]])]])))))]))])]]))]])))]]]]]]]])]])]]]]])))))))]))])]]])]])])])]]])]]))))))]])]])])))])]))])))]]]]))])])]))))))))]]]))]]))))]])))]))]))]])]))))))]])))]))])]]))]))]])]])]])))]))]]]])))]))])]])]))))])]))))])]]]]))]])))]]]))))]]))])]])])))]]]]))])))))])))))))]])])]]])))]]))))]]])])))])]])])]])))])))))])]])]))))]]))])]]]))]))))]])])))]))]]))])))]]])]]]])]])]))])))]]))])))]))))])]]))]]]]]))]]))])))])))))]))]]])))]])])]]]]))]]))])])]))]]])])])])])]]))))]))])]])])])])])]])]]]]]))]])))]]])])])]])]))]]))])])]]))]))]]]))))]])))]))]]]]])])))]])))]])]]]])]])]])))]]]])]))))))]]))])]))))]]]]))])])))))]))])))]]))]]]])]])]]]])]]]])]])))])))])])]])]))]))]))]])))))]]))]]]))])))))]]]))])]])])]])])])]])]]])]]])]])))]])]]])))]])])]])])])]]])))])]]]))))]]]]))]]]]]]]])]]]])])])])))]]])]])])])]))))])))])]])])]]])]])])])]))))))]]])]]))]]]]]]])))]]]])))]))))])]]])]))))]])))])))]]]]]])]])]]]))])]]))]]))])])])))))))]))])]]]])]))))]]]]]))))])))))))))]))]]])))]])]])])]]])]]]])))]))]]]]]))]))]]]])]])])])]])])]))]))]))])]))]])])])))])]]]]]])))]))]]]]))]])))))))]]]))])])))]]))))))]]])]])))]])))]]]])]])]]]]]])]))])))])]]]))])]]]))]])]]]]])]]))))))]]]))]]])])])]])])]))]])))]]])]])))))))])]]]])])))]]))))]]))))]))))]])]]]])]))))]])])]])]]])]])]])))))]))))])])))]))])])]]))])]]))]]]])]])]]])])]]]]])]])]]]]))))])])])]]]]))]]])])]))]])])]]]])]))]]))])]))]])))))]))])]])))]]))))])))]]]])]])))])]]))))]))])]])]]])]]]]]]])])]])))]]])]]])]]])))])]))]])]]]]]]]))]])])]))]]]])]))))))))]))))))])]]]]]))]]]]]])]))))]]))])]])]]]]]))]]])]]))]]])]))])])]]]]]]]))]])))])]])]))]])]])]]])))])])]))])]))])])))])])))))]]]]])]))]])]]])]))]]])]])))))]])]])]]]]]])])])]]]])]))])))]]]))))])])])]]])])]]]])])]])])]]))])))]]])]))))])])]]]]]))))))])]))]]))))]))])]))])]))))])]]]))]])]))]])))]]]]]])))))]))]])]]))]]))]]))))))]]))]]]]]]))))]]]))]]))]])]]]))])))))]]]))))))]]]])))]])]))]))]))]))])))]])))]]))))])])]])]]])))))]])])))]]]]]]]))])])]]))]])]]])]]))])]]))]])))]]]))))]]])))])])])])]])))]])])])])]))]))))]))])])])]))))]])]]]])]])]))]]])))]])]]))]]]]])]])]])]]))]]))]])]])])]]]))])))]])])))])]]))))]]])])]))])]]))]))]))]]))]]]]]))]])]]]]]))))])]]]]]])])))]]]))]])))])))]]]]]]]))]])]))]]]])]])))))))])]]])]]]]]]]]))))]]]])]])])]))]]]])))))]])]))]]]]]))))))])]]))))]]))]]]]]])]]))]))]])]])]))))]])]])])]])]))))])]]))])]]]]])])))]]]))))])]]))])]]]]]))))]]))))])]]))))]]])])]))]]]))])))))]))])]))]]))))]]]]]])])])])]))])]])))])])]]))]]))]))])))]))])]))])))]]))])))])]])]]]]])]]])])])])]]))])))]])]))))]])))]])))])))))]])]))]]]]])])))]])]]]]])]])])])]]])])]]])))])])))]]]))))))])]]]))])]]]]))))))]))])]])])])])))]))])])))])))])])])))]])]))])]]]))])])])]]))]])])])])))]])]]])))]]))])]))]]])))]))]]])))]])))])]]]]))))])))))]]))]]]])]]]])])]]))])])]]]]))))]]))])))))])]])])))))]]))))]]))))]])])))])])]]]]])])))]]]]]]]])]))))))]])])])]]]])]))]]))])]]]])))]]]]])))]))]]]])]]]]])]))))])]]))]))]]]]))]))))]]]))))]))))]]))])])])))])]))])]])))))]])])))]]]])]))])])]]))]]))]]])]]]))]])))]]))]]]])]]]])])))])))]))]))]))))))]))])]))]))])]]))]]]]]]]))]])]])]])))]]]]])])]]]]]]]])))))))]]]])]]])]])]])])]])]])]))])])])]])]]))])]))]))))])])]))]))]])))])]]])]]))))]))]]]]])]]))])))]]))]])]]])))]])])])])]))])])))]])]))]))])))]])]]])))))]])]]]]])])]]])]]]]]]]]]])))])]]])])]])]))])])])]])))))]])])])]])))))])]])))]]])]))]])])])])]]])]))]))])]]))]])]))])])]]]]]])]))))])]]]])))]]))]]]]))]])]]]])))]])])]])]])]])])]]]])]]])))))]])))]]])]))]]])]))]]]]]]]]]]])]))]]))])])]))))])])]])])]]))]]])))))])])])]))]))]]]]]]]]]))])])]]]]]]))]]]])))]]])]))))]])])]])]])])]])))))])]]])]))]]]])])))]]]]])]))]))])]]])))]])]]])]])]]]])]])])]))]])]]))]]]]]])]]]]])]])])]])]]])])]])]]]]]])]]]]])))]]]))))]]]])])))]]]))])]]])))])]])))]])]]]]]]))]]]])])))]]]]])]]])]]])]))]))])]])]]))))]))))))]])]]))]]]]]]]]]]]]]]]]]])]])])))))))]]]])]]]]]]])]])]]])))]]]]))))]]]))]]]]]]]])]))]]]]]))]]])))]))])])])]]])])]]]))]))])])])]]))])]]]))]))]]]))])))])])))))]])))]))])])]])]])])]))))])])])])]))]]]))])))))]]))])))))])]]))]))])))))]]])))]])))))])]))))])])]]])]]))]))))])]))]])))])])]])]])))]))]])]]]])]]]]])))))]]]]])))]]])))))]])))]]]]))]]])])])]])])))]])])]]))]]]]]])]])]]]])]]]]]))])])])))])))])])])]])))]))]]]))]])]))])))]]]]))]]]]])))]])]]])))]))])])))]]))]]])]])]))])])]])])])]]]]]))))]]]])))]))]]))]))))))))]])])]]]))]])])]))]]]]]))]]])])])]]]))])]])))]]))))])))]))))]))])]])])]]))]))])])])]])]]))])]]]]))]]])])]))]))]]))])]])]))))]]))]]]]])]))]])))])))]])])]]))])]]])])))]])))]]]]]]]]]])]]))]])))]]]))]]])]]]]]])]]]]]))))])))])])])))]))])]]))]]])])]))]])]))])))])])]))]]])))])]))]))]))]))]]]]]]]))]])])]]))]))))]))]])]]])]]))]]))]])))))]))])])])]])]]))]))))])]]])]])]))))]]]])))))]]])])]]]]]]]))]]])])])]]))]))]]])]])])]))])]))]]])]])]]))])))])]]))))]))]]]]]])]]])])))])])]])]]]]]])]])]])]])]))])])]]]))))))]]))]])]])]))]))])]))))]]))]))]]]])))])])]]]]]))])))])]])]]))))]]))]]))])])]]]))))))])]]]))]])])]))]])]]])]]))))])]]))))))]])]])])])]]])))]))])]]]])]))]]]))]]])))))]))]))))]]]]]]]])]])]]))]))))])))]]]))]]])]]]]])]))))]])))])))]]]])])])]]]))))]])))))])))))]]]])])))]]]])])]]])]])))))]))))]]])]))])]))])])])))])]))]]]])]]]]))]))]]]))])))))])])))]))]]))])]])]]))]))]]])]]))))]]])]]))))])])))])]))))]])))]]))))])))]]])])))]))])]]])))]]))])])]))))))]])]))))]]]]]])]])]))])])]))])]])))]))]))]])]]])]]]])))))])))))]])))])))]]]])])))])]))]])]))]]]))])])]))]]])]])]]))))]))]])))])]]]])]]]))])])))))]])]))])]]]]])]]]])]]]))]))]])]])]))]))))])]))]))])))])]]]))]))]))]))])]]))]]))]))])))]])]]]])))]]])))]])))])])]]]))))]]]]))))))]]))]])])])])))]]]]])])])])]))]]]]))])))))])))])]))))]])]])))]))]]])))))]])))]])]]])])])))]]]))]]]]]))))]))])]]])))]])])])]))))]])])])]])])))]]])))]]]))]]]]]]]]]))]]])))])])))])]])]])))))]]])])]])]]]])])]]]])])))])))])))])))))))])])]]))]))]]])))]]))]]]]])])])]]])]]]]))))))]]]))]])]])]]])]])]]]]])]])]]]]]]]]))))))]))])]]]))]])]]]))])))])])])))]]))))])))))]]])])]]]))])))])])]]]]]]]])])))]]]]]]))])]]])])))])]]]]]))]]]])]])]])]]])])])]))]]]])]]))))]])]]]]))]]))])])]]])]]]]]))])))]]))]))]))])]])]))])])))]]]])]])]]])])]))]]))]))])]]))))]))))])]]]])])))]])]]]]))))])]))))]]]))]])])]))])]))]]]]]]]]]]]))])]]]])]])])))])]])]]))))]]])]])))))])))))]))))))]]]]))))))]]]))))))]])))]])]])]]]))]])])]])]])))])]]))]))]]])])])]])]]]])))))]]]])])])]])]]))))]])]]])]]]])]])]])))])]]))])))))))])]]])]))))))])])])))))))]]))]])]]))))]]])))]])]]])))]]]]])]]]]]))))))])))]])))))]]])))]))]))]]))]]])]]]]]))])]])))])]]]]])))])]))]])))])]]])]))]))])))]]]])]])])]]))))))])])))]]))]]]])])))]]]]])])])])))])]])))]])])))]]]))]])]))])]))))]])))]]])]]])]))))])]]))]))]])])]))))])]))])]])]])]])]]))]])]]))]])]]]])]])]]))]]])])]))]))]]))])]])]]]))]))]]])]]]]]))]))])]])]))]))]))])))))))))]])]]))))])))])]))])])))]))))]))])]]]])))]]))])]]))]])))]])]]]]]]]]])]))]]])]])])))]])))]))]])))])]))]))])]]])]]]]]])))]])])]])]]]]]])]]))])])]])]))))]))]]]))])))])]]]))))]))]))])))]))])))]]))]]))]])))]]])]))]]))]))]))]))]]]]])])]]]]]]]]]]))])))]]])]]))))]]))])]]])))]))]))))]])]))))])])]]]]]))]]]))]))])]]])]]])]]))))])]]]]))]))])])]))]])])]]]])])]]]]])]])]))))]))]])))])]])])]]))))]]]]])])])]]])]]]))))])]])])])])))])])]))]))])))]])])])]]]]])])))])])])])))])]]]]])))]]]]])])])))]]]])]])])]]])]])])]]]]))]]))]))])]]]])]]))]]])])]])]])]])))]]])))]]]]))]]]]]]])])]])]])))]])]]]])]]])]])]])]])])))])]]]))])))])])))]))))]]]))]))]]]])))])))))]))])))]]])]])]]])))]]]]))]]]]]]]))]]]]]]])])))]))))]]))))]])))))]]))]))]]])]))]]))]))]])]))])])])]]])))]]]))]))]))]])]]])))))]))]]))]]]]])])])))]]]))))])]])])]])])))]]]])))))])]]]))])))]])]]))))))]]]))))])]]))])))))))]]]))))])]]))])]])])]))])]])]])]))]])]))]]))]]))]])]]]]]])]]])]))))]))])])]]]]])]]]))]]]]])]]]])])]))]]))]])])]))]])]]])]]]]]))])]]]]]]]])])))]])])])]]])])])]]]]]))))]]])))])))]))]])])])))))))))))])]]))])]]))]]])))))])])])))])]))])))])])))))]]))])]]]]))]])]]]]]]]))]))]))))]]]])]])))])]])])]])])))]]]))))]]))]))])]])]])])])]]]]))])])]]])])]))]]))))))))]])]))]]))])])]]]])])))))))]])])]]]]]]]]])]]]))]]))))]]]])]])]]]]]]])]])])]]])))))])]]])]]])))]]]]))]])]]]))]))]))])]]])])]])]))))))])]]])])]]])])])))]]]]]]]]]])])]]])))])]]])]))))]]]])]))]))])]])])])])])])))))])])))]])])])]])]]]))))))]))])])])))]]]))]])))])])])))]))))]))]]])]])))]])])])])]]]])))))]]))])]))]))]]))])])])))]))])]))]))]]]])]])])])]])]]))])]))]))]]))]]))]))]])]))))])]]])]]])]))))))])]]))]]]])))))]]]])))]]]))))]]))]))))]))))])])]]]])]]]]))]])]]])])))]))])]]]]]]]]]]]])])]))]])]]]]))])]))]))))))])]])])])]))])]]]])]])])])))])]))))]])]])))))]]))]]))))]])]]))]]])])])]]]]))]))])))]]])])]]]])))]]))))]]))])]))]]])])])]]]]]])])))]]]]]]]]])]]])]))]])])]))])]]])))))]]])]])]]))))]]]])))])]]])])]))))])])))])))]]]]])])]]]))])]))))])])]]]]]))]])]]))]]])]])))]])])]))))]]]]))))]]]))))))]]]]))])])]])]]]))]]]]])])]]])]]))))))]]]])]])))))])]]]]]))])]])])])]))]]]]]])]))]]])]]]])])]))]])))])]])])]]]]]]]]])]]])])]])]))]))))])])]]])])))]])))]]]])]]]])]])]])))))])))))]]])]]))]])))]))]])]))]]])]]]]]]]]]))])])]]]]]])]])))]]))]]]]]]]])])]))]]))]))])])])])))]]))])]]]))]])))]]]))]]])))]])])])]]])]]])]])]])])]])])))]])]]])])]))])))])]]])]]]])]]])]]]])]]]]]]]]]))))))]))]]))))))])]))]]]))])]])]])]]]]]])]]])]]]]))]]))]]]])))))]))]]]]])])))))])]]))))]])]]])])]))]))))]]]))])]])))]]))))]))))])])]]]]))]])]))))])]))])]]]]]]))]])]))))]]]]])]]]])]])))]))])]))))))])])])]]))))]]]))]]]))])))))))))]]]]]]]]]]]])]))))]))))])))]))]])]]]])]]]])]))]]]]))))])]])]))))]]]])])])]))]]]])]))])))))]]])]]]))))]]))]]]])))]])]])])]])]])]])]])]]]])])]]))])])])]])])])]]]))]]]))))))))])])]])]))]])]]])]))])])])]]])])])]])))]])]]]]])]]]]]])]]))]))])])))])]]]]))))))])]]]]])))]]]]]])])])))]]]))])]]]))]]])]))]))]))])]]))])))])]])]])])]])))]]]]))]]])]]))))])])]))])]]]]])))]]]]]))])))]))))))))))))])])]]))))]]))))]])]]))))]])]]))])))))])])]))]])]]]])]]]]]])))])))]))))])))])])])]]])]]]])))))]]))))]))])]]))))))))])]))))))]])))]])]]]])]))])))]]]]))]]))]]]])]))]])]]]]))])])])]])]))))))])]]))))))])])]]))])))))]])]])])]]]))]))]))]])]]))]]]]]))]])]])]]]]]]))]]])]]))])))])))])]]])])]])]]])]))))])]]))))]]]]]])]))])]]])]])))))]])])))]]])])]])])])]])])))]))]))]))]))]]]]]]])])))]])]]]])))]])]]])]]]]]])])))])))))])]))]]]))]]]]]]])]]])))])]]))))]))]])]))]]])]))])]])]))))])))))])))])))]])])])))))])])]]]))]])]])))]]]]]])]])]])])]])]]])]]]]]))))]]]]))]])])))]]))]]])])]]]]]])])]]))]]])]))])]]]]])))]])])]))]]))])))]])]]]])])])]])]]])]]]])]])]))))))))))))])]])])]])))))]))))]))]]]))]]]])]))))])])])])]))]]))]])))]]]])]]]))]]])]]]]]]])]]]))]]))]]]]))]))]])])])))]])])])])]]]]))])]]]]]))])]]]))]]]]))]))]]]]])))])]]]))]))])]]]])))]))]))]])]]])]))))]]]])))]))]])))))))]]]]]]]]]]]]])]]]])])])))]))])]]))]])]]))))]))))])))]])))]])))]]])]]]]]])]])]]]])])])])]]))]]]]]])]]])])])]))]]])))))))])]])))]))])])]])]])]]])])])))])]])])))]))]])))]])))])))))]))]]]]])])]])])))])])]])))])])])))])])]])])]]]]])))))]]))]])])])])]))))]]]])])))]]]))))]])))])))]]]]])])]]])]]))))]])]]]]]]]]]))]])]))]])])])])])]]]]]]]))])])]])]])))))]]]]]]])]]]]))])))]))]]))]]]))))]]])]])))]]])]]))]])))))]]]]]]]]]])))))]])))]))]))])))))])))]]))))]]))]]])))]]]]]))]]]]])))])])))))))])))]))]))]))]]])))])]]])]]]]]]])))]]]))])]]]]))]]])))))]])))]]]])]]]])])]])])]))])]]]]]]]])]]]))]])))))))]]))]])])])])))))]]]])))]))])]]]]]]]])])]])))))]]]]]))])]))])))]))])]))])))]))])))])]]))])]))]]]))])])))]))))]]))]]]]]])]]])))])])])]]]]))]])))))])]])])])))))]]])]])]]])]]]]]]))]))]]])]))])]]]])]]])])]]))]])]]]]]])])])])))]]])])])]]]))]))))]))])]]]]])))])]]]]))]]])]])]]))])))))]]])])]]])])])]]]]))])))))))]]]])]]])]])]])]])))]]])))]]))))]]]])]])])])))]]]]))]]])]]])])))]))])])]]]]]])]]])]))]]))))])))])]]))]]])))]])))]]]])))))))]]])]))])))]))]]))])))]])]))]])]])))))])]]))]]]))])))))])))]))])]]))]]])))]]]]]]]]])]]]])]])])]]]]]))))]]]))]))]]]]]])]]])))))]))))]])]))))))]]]))]))]]]))]]]]]))))))]))]]]])]])])]))]))]])]]]]]]))])]))]]))]])])]]))])))]]))]]]]]]])))])]]))]]]))]]])))]]))])))]])))]]]])))])))])])])]))]))])]]))])]]))]]])))))]]]]])]]]))])))))]]]))]))])]]]]])])])))))]]])])))]]]]])])))))]]]])])]])]]))]])]]]]]]])]]))]])))))))]]]))]]))))]]]]))]]]]]]]))]))]))]]])]))))]))))])]]]])]]]])]]]]])])])]))]))])]]]))))]]))]])]]))))))))]])))]]))]])]]))]]])]]]]])))))]]))]])))])))])]]))))])))))]]]])]])]]))])]])]]]]])]])))]))])))]]]])]]]]))])]]])])])]))))))]))]]]]]]]]]]))])]))))])))))]))]])]))])))))]])]]])])]]])]])]))))])]]]]]]))))]))]))])])))]]]]])]]]]))]]]]))]]]])])]]])])]))])])))]))]]])]]]]])))]]))])]]]]]]))]))]])))])])])]]]]]))]))]))))])])))))))])))]]]]]]]]))]]]))])]))]]])])]))))))])))]]]])]]])]]]]]]))))])])))))])))]])))))]]]])]))))]))))))]]]]))]]]])]]))]))]]))))))))]]]])))]]])]]])])]))))]]))))]])]])]]])]))]]))))])])]])]]])]]))])])])])]]]]])))]))])]]))]]])])]]))]]]]]]))]))))))))]]])))]]))))])])]])]]]))])))))])]]])]]]))])])]]))])])])))]]]])]])])])]])]))))))])]))]]])]])]))]]]))]]))]]]]]))])]])])]))))]])])))]]])]))]])]]])])]]))]]]))))])]]]]))))])])])))]]])))]])]]]]))]]]])]))])]]])]))]]]]]]])]])]]]))])]))))))]]])]]]]])])]])])])))])))])]])]))))]])))]]))])))]))]]]])))]]]])])]])]))])]]]]]))]])))]))))]]]))]]))))]]])]])]))))]]])))))]])))]]))]))]))))])))))]]))))])]]]]]]]])]))])]]]]])]])]]]])]))])])])))]))])])]]])])))])]])))]])))]]))))])]])))))]]))])))))]))]]])]])]))]])]]]))])]])))])))]]))]))))))])])]]))]]]))])]]])]))]]]))]])])))]]]))]]))))]))]))])))))]]])]]])])]]])]]))]])])]])])]]))]]]))))])]))]]]]]]]]))))]]]]]))))]])))]])]])]))))]))]])])]])))]))))])))]]]]])]))))])]]))])]))))])]])))))])]))]]))]]])])))])))]]])]])]]]))]))]]))])])]))))]]))])))]])]])]))))])]]]]]))]]])]))]]))]])))]])]]]]))]]))])]))))))))])])]]]]])))])))])]]))]]])))))))))]]])))))]]])))]]])]]))])])]))]]]]]]]]]))]])))]))]])]))]))]]]))]]))])]]))]]]))]])]))]]))]])]])))))]])])])]]])])])])))]]]]]]])])])]]))])]])]])])]]]]))]])]])])))))])]])))]))))]))])]]))]])])]))])])])]]])]]))]])])))]]]))))))])]]]]]))]])))]])])])])))))])])]))])]])))]]])]])]]]))]]])))))]])))))))]]))))]))))))]]))))]))))]))]))]))])])]])))])])]]]]))))))))])))))]]))]]]]]])]))])]]]])))]]])]]])]]])]]]]]]]])))]])]))])]])]))]])])])])])]]])])]]))))])))]))))])))))]]])])]))]]]]])]))]]]))])]))]]]]]]])]])])]]]]]])])]])))]])))])))]]]]]))))]]])]]])))))]]]])])))])))])])]])))]]]]))])])])]))]]]]]]]])))))))))]])]])))))]]]]))])))]]])])]))))))]]]])]]]])])]))]])]))]]])]]])]]]]])))]]])]]]]))]])))])]])]])]]]]))]]))]])]))]]]]]]))]))))]])]]]]))]))))]]]))])))]])]))))))))]]))]])]])))])))])]]]]])]]])]]])))]]))]]))]])])]]]]]))])]))]])])]))))]]))))])])))]]))]]))])]])))])))])]])])])]]]]])))))]])]])]])])]]]])])))))]))]])])))]))])]))))]]]])))))])))]]]])]))]))])]))]]]))]])]])]))]]])))))]]]]])]]]))))))])]]])))]))]))]))]]))])))]])]]])]))]]]]]]])])]]]))]]]))])))]]))])])]))])]))))])))]))])]]]]])]))]))]])]])]])]]))]])]))]])))]]]))]]]]))]]]])]))]))])))]]])])])])))))])))]])]))])])))])))))]])))))))))]])]])]))])]))]))]])))))))]])]]]])))]))]))))]]])])])]]]])]))])))]])])))]]))]]]])]])]))))]]))]]))))])])))]]]])))]])]))])])]))]]))]]))]])]))]])]])]]]]]]]])])))]])]]]])]])))]]))])]))])]])]]])]])]]]])]]))))))))]]))])]))])]])]]])])])]]))))))))))]]))]]])]]]]))))])))]]]))))])]))))]])]]]])]]])])]]]]])])))])])))])))]]))])])]]]))]]))]]])]]]]))]))]))]]))]]]]]]])]))])])]]]]))))))]])])]]))))]]])])))]]])]))]]))])]]))])]]))))]]))]])]]]]]))))]]]]))))))])])))])]))]))]]])])]]])]]]])]])])]])]]]))])]]])])]]))))])))]))]))]])]]))))]]])]))]]]])))))])))))]))]))]]]]]])])]))]])]]]]))]]]))])]])))]])))]]]]]))]])])))))))])]))]]))]])]]]]]])]]]]]))])))))]))])])])])]])])]])]]]))]]))])]])))]]]])))])]))]]]]])))])]])]]]])]])])))))])]]]))))]])]]]])])))]])))]])))]]))]]))])]])]))]))]]]]])]]]]]))]])])]])])]]])]])))))]])]])))))]]])))))])]])])])]]]))])])])])]))]))))])]])]]))]]])])])))]]))]]))]])))]))]))])])])]))))]])]]])]])]])])])]))))]))]))]]]))]))]]]])]]])]])])]]]]))])))]))))]])))]])]])]])]]]]]])]]]))])]))))]])])])])])]]]]]]])]]))]]])))])])])]])]]))))))]))))]])])]]))))]]])]])])))]])])])])]]))])])))))]]])]))]])))]])))))]]))))])]))]]])]]]))]]])]))]))]])]])]])])))]])))))]])]))))))]])]))]]])]]]]]])]]]]]])])])]]))]]])))))))))))])))]))]])])]])]]]])))])])))]]]]]))]]))))]]]]]]]))))))])))))))]])]])]))]))]))))]]))])]])]]))))]))))])]])]]]]]]))))]))]])])]))))])))]]))])])]])]]]]])))))))))]])]))])])])]]))]]))])])])]]]])])]))]]]))]]))])))]]))))))))))])]))]]]]))))])]]]])]])])))]))]])]])]]]]])]]])]])]]]]]])]]]))])])]]])])]])))))])])]))]))))]]])])]]]]])))])]]])))))))])]]])])))]])])])])])])]))]]])])))]])])))))]))])]])])]]])])))])]])]))])]))])])])]]))])]]]])))])))]))]]]))))]])])]]])]]]))])])))])]]])]))]))]]])])]])))]))])))])])])])]]]])))))]])])]))]))]))))])])))]])]]]])]]])]))))])]])])])))]]])))])]]]))]]]]])]]])))))]])])]]]]]])))))]]])]]]]])]))]]))))))]]]))]]]))))])])]])))])]]]])))]]]])])]]])))]]]))])))]]]])]]]))]])]])])]))]])]]))])]]])]))]))]]])]])]]]]))])]]])]])]]))))])]]]))))]])])]])]))))]]]]]]])]]]]))]]])]])])]]))]])))))])]]]])]))]]]]))]]])))]])]]])]]))])))]]))])])])])]]]))))))]])]]]]])]])]]])))]))]]]])))))])])])))])))]]))])]))]]]]]])))]])])])])]]))))]))])]])))])]]])]]])))))])]]])]]]]])])]))])]])))])])]]]])])]]))])])]])))]]))]]])])))))]]))])]])))))]))))]]]]]]])])])]))])]]])])))]]]])]])))]))])]))]]))])]))))]]))))))]]))])]])])]]]]])]))))])]))]]]]]]]]]))))])])))]))]]))])))))]])))]])]]])))])])])]]])))))))]]])]])))])])))]))])]))))))])]])])]]))))]])])]]))]]]]]]]]]])]))]))))))])]]]])])]])))]]])))]))]]])])]))])))]])]])]])]))]))]]])]]])])])]])]])]))))]]]))])]))])]])])]]]]]))]))])]])]]]]])))]))]]]]])))]))))]])]))]])])]]))]]])]]]]])])]]]))])]]))]))]])]]]))]])]]])])))]))])]])]))])))]])]]]])]))])))))]]]))))])]])])]))))]]]]])))]]]]])))])]))]]]])]]]])]])]))])]])])]))]]]]]]]))))])]]]))))))))])))]]]]])]])])))]))))]]])]])]]]]]])]]]))]]]]))])))]])]])]))))]]]])))))]]]]]])]])])]]]])]]))])]))]]))]))]]]])]]]]]]]]]]])])]))))]]]]))]]]]))))))]])])]]])])]])])))])])])])))]]]]))]))]]]]))])]])]))]]]]))])])])]])])])))]])]])]))]))]]]))]]])]))))])]]))))]]])])])]])])]])))]])))]])]])))]]]]])]))]))])]])]]])))]]))])])]]])])]])]))]])))]]])]])))))]]]])])))]])))])]]]))])])])])]])))])]]]])]]]))))))))]]])))))))))))])])]]]))]))]])))))))))))])]])])]])]])))]]))))]]])]))]))])]]]]]]])]))]]]]))]])]])]]])]])]])))))]]]]])]])]]))]]]))]]]))]])]]])]]]]]]]]])]))]))]]))))]))]])]]])]))))))]]))]]])))]]]]]]]])))]]))))))))])]]))]])]))))]))]]))]]])))]]))]]]))])]]])]])]]))))]))))]]]))]))))]]]))])))])]]])]]]]]))])]]])))]]]])]]])]])]))])))))]]]))))))]])])]])))]))]]]]]]]])]]))))]))]])])]))]))]))]]]))]))]]))]]])]))]))]])]])))))]])]]]])]])]]])])]]])]]]))]]))))])])]))))]]]]]]]]]])])])]]]])]))]])])]])))])]]]])])]]]])]))])))]))]))])))])]])]))]])]]]])])]])]))])])))])]])]))))]))]]])]]])))))])]))])]])))]))))]]))]))]))])]))))))]]]))])])))]))])]])))]))]]))))])]]]])]])))]])))])]))]]]]])])])]])])])]]]]))]))]]))])]]]))]))]]])]]]])]))])]]])))])]])]))]])]))]))])])]]]))))])]]))])])]])])]])))))))))))))]]])])]]]])]])]]]]])))])))])]]])]]]]]))))])]])])))])]])])]]]))))]]]])))])])]])))]])))]])]])])))])))])]))]]]))))])]])]]))])])])])])]]]])]))])]])))])))])])))]])]]]]]))))])]]))]]]]]])]]]]]]]]]))]]]])])]]]])])]]))])]))]])]]))))]]]]]]]]))]]])])]]])]])]]]))]))))]])]])]])))]]])))]]]]]]])))])]])]]]]]])]))])))]]])]])])])))]])]])]])]]])))))]))]))])]])])]]))]))]])))]]))]]])))]))]))))]]]])]))]])))])))]]]])])))]))]]]]))))]])))])]]]]]]])]]]]]))])]]]))])])))))]))]))]]])])]])]))]])))]]])))])]]))])])]]]]]]))))]]]])]])]]]]])])])]])))]]]))]))]]]]))))))))]])))))))))])])]]])]))]]]))])))])))]])])]]]]])]]))])))])])))]])])]]])]]]]]]))))))])])]]]))])]))]))))])]]])])])])]]])])))]))))))]])]]))]]]))]]]]]])]))])])])]]]]]]]]]]))]])]]])]))))))]])))])))]]]]]])])]]]])])])]]])))]]]])]]]])])]]]]])]))]]))]]]]]]))]]]]))))]))))]))])])))))]])]]))])])]))]]))]])]))]]]))])))]]])]])])))))])]])])]]))]]))]])))))])))]])])]]))]]]]])]])]))])])])))]))])]]]]])]]))]])]])))))))]]]))]])])]))))]))]))])])])]]])))])]))]])])])]))]]]))))]])]]])]])]])]])])]]))))))]]]]]]))]])))])]])]))))))]]]]]]]]))]])]])))]]))]))]))]]]]))])]))]))))])))))))]]))]))]]]])]])])]]])]])]])))))))]))])]]))))]])])]]))))))]]])]])]))])])))]]))))]]]]])])]]]))])])))])))])))])]])]]]])]]))])])])]])])])]]]]))]))]]))))))))])]])]]))))))))])])]))])])]))))]))]])])])]])])]]]]]]])))))]))]))]]])]]]))))]))]])]])))]])]]))]]))])]))))]]]))]]]])]]]])))))]]]))])])]]])))]]]]]))]))])]])])))]])]))]))]])]])]))]))))]])]]]]])))]])]))]))]))))]]]]])])))]]]])])))]]])]]]]]))])]]]]])]]))]])]])))])])]]]]])))]]]]])]]]]]))))])]))])])))]))]]]]])))])]]])]))])))))]]))])]])))])]))]])]))]]]))]]])))])])))])])])))])]))])])))])])]]))))]]]]]]]]]]])])]]]])]))))]]])]]))))]))]]]])))]]]]))])]])]])]])))])]])]])]))]])))))))])])))]]]])])]])])])))])))])))]))))))]]]]])])]]])])]]]])]))]))]])))])])]])))])])])])])))]])]]]])]]]))])]]])]]]])]]]])]]]))]]))]])]]])))))])]))))))]]])]]]))))]])])]])))]]]]))]))]]])))]])])]))]]))])]))]]]])]]]])]))])))]]]]))]]))))]))]]))]]]]))))])))]]))))]]])))]]]])))]]))]]]))]])]]]]]))]]]])])]))])))])))]]))]])]]))))])))]))])])]))]))]]]))]]]]]))])]]]]]]))]))])]]]]]]]))]))))))])))]])]))]]]]])]])]])])]]])]))])]))]])]])))]])))]]]]]])]]))])]))]))))]]])]]))]]])]]]]]))])])))]]]]]))]]])]))]]]])]))]])]]))]])))))))]]]))))])]))]]]]))]))]])))))])])]]))]])])])]]]]))]])))]))))))]])]])]]))))])]))])))]])])])]]])))))]]]]))))])])]]]])))]]))])))))]]))]])]))])])]]])]])))]]])]))]]]))]])]]))]]]])]))]]]))]]])])])))])])]]])])))]))]]]])])])])))))))])])))])])]]])))])]]))])]]]])))]])]]]))]))))]]))]]))]]]]])])])]]]))]]]]]]])))]]]]])]))]]])))]]]])))])])])])]])]]))))])))]])])))]))]])))))])]]]]))]]])))]))]))]))]))))])))]])]]]))])]])])]])]))]))]))))))]))]]]]]]))])])])])])))]])])))))]])]]))])]]])]))))]))]]))))]]]]])]])])]])]])]])]))]])])))))))])]])]]])]))]]]))))]]])))]]))))])))])])]])]])]]]])])])]])]]])]])])]))))]])]))]]))]])]])]]])]))]]))]]]]]]]))]])]]]])))])]]))]]])))])]]])))]]]))])))))]]]])]]]]))]]]]]))]]))]])]]]]]]]])]))])))))))]))])]]])])])]]])))])]))))]]])])]))))])))]))]]]]]]]])]])])]]])])]]))]])]]]]]])]))])]])])]]]]]]]))]])))]]])])]))])))])]])))])])])])))))]))))]]))])])))])])])])])]))]]]]])])]])))))]))]]))])))])])]))]])]]]])))]))])]]]]]]])])))]]]))])])))]))])))])]]))]))]])])])])])))])))]]]])))))]))]])]))]]]]]))))]))]]))]))]]))))]]))]])))))]))])])]])))]))]])]))]]]]]))])])]))]])])]])]]]))]]]))))))]])))]])])]))]]]]))]))))))]]]))]]))))]]]]]]]])]]])])]))])]]]]]]))]]]]))]])]]]]]]))))])]]))))))])]))]]]]]])]]]]])]])]]]))])]]))])))]))]]]])])]))])]))])]])))])])))))]]]))))))])]))))]))])]]]]]))]]))])]))]))]]]]]])])])))]]]])))])]])]]))]))])])]))]))])]]]])])))])]]))])]]])]]]])))]]]]]))]])]])))]))))])])])))])]]])])))))])]]]])))))])))])]]))]])]])]]])])]))]))])))]]]))))))])]])]]))]))]))))])]))]]]]])]))]]]]]])]]])))]]])))])])]])))]]])]))])]])])]))])]]])]]])]))])])]]])))])])])))]])]])]]]]]]])]])))]])])])]))]]]]))]]]]))])]])]]))))))]]]]])]))]])]])])]])]]))))]]]])]))]])))]]]))]])])]]))]]]]])]]])])]])]])]]))])]])]]]])])])]]))))))])])))]]]))])])]]]]]))]))))])]]]]))))])]))]))]]])))]]]]))]))]))])]]]])]))))])))]]]))]])]])]]]]]]]])))]]]])]])])))]))]))))]))]))])]])]))]]])])))])))))]]]))]))])]])]])]))]))))))])])])])]]]])]])))])])]))]])))))])))]])))]]])]))))))])]))]))))]]))))]))]]))])]]))])]]]]))]))]])])])))]))])])]]]])])])]]))])]]]))]))))])])))]])]))))))))])]])])))]]))]]))]]])]))])])))))))))])]))))))))])]])]]]))))]])])])]]))]]]])])))])]]))]]))))))]])])]))))]]))))]])]))]]))))]]))])]))]])]]]])))]]]))])]]))])]])]]])]]]]]]]]]]])]]]))]]]]]]]])]]))]))]]))]))))]))])]])])]))]]])]]]]))))])))]])])]])]))]]])))))))))]]]))])]])]]]]]]])]])])))]]))]])))))])))]]]]]])]]])]]]]])))))]))]]]]])]))]]])])]))))]]))])))]])))]]])))])]])]]])))])]))]]]]]]]])))])])]]]])]]]])))))])]]]))])]]]]))))))])]))]))])]]]])))]]))]))]]]])))])))]])))]]]]])]]])))))]])]]]])])])]))))])]])]]]])))]))]))]])])])]]]]]])])))]]]])]]])))))]))]]]]))])])]))])))]]]]]])])])]])]))]]]])])])])])]))))]]]]]]])]]))]))))))])]]]]]]]])]))])]]))]]]]]])])))]]])])]))]]]])))]))])])]]]))))))])]])))]]]]]))]]]]]])]))])]]])]]]])))]]]])]]]))]]]])))]]])])))))]]))]))))])]))]]])))]]]]]]))))]]]))]]]])]])])))))])]]]])])))]))]]]]]]))]))))]])])]]]]))))]]))]))])))]))]])]]))))]]))])))))))]])]))))))))])])])]]]))]]])]))))])]]))]]])])))])))]]))]]])]]]))]]])))))]])))))]]])))))]]])])]])))))]))]])))))))])))))))]])])]]))]]]]]))])))]]]))]])))))]]]])])))]))]])))]))])]])])]]))))])))))]])]))]))))]]))]]]])])])]])))))]])]]]]])])]])]))]]]]]]))])]]))]])))))))]))))]]])]))])]))))))]])]]]]))))]))]]]))))]])))]])))]])))]]]]]))))))])]))]))])]]])))]]])]]])))))]])]])))))]]]]]]]))]]))))])]]])])])])))]]))]])])]))]])]]))]))))]]]]))]]])))]))]]])]))]]]]))])))])]]]]))]))])]])))]]])]]]])]]])]))]))])]])])])]]]]])))]]))))]))])])]]))]])]]]))]]))])]]]))]]]]))])))))])])])))]]])]]])])])])))]]]])]))]]]]]])))]])]])]]]]]))])))])))])]]))]]]]))]]]]]))]))))]))]]])))])])]))])]))])])])]))))]]))])])))))]]]]]))])])])]])]]]]))]]]]))]]]]))]]])))]]]]]]]]))]]]]]))])))]]))))]))])))])]]]])]]]))])])))]])])))])])]]])])]])]]]]]))))]]]]))))]]])]])])]]]]]])))]]])]]]])])))]]])))])]])]])]])]]))]))])))]]])])]]))]]))))]]]))]]))])])))))])))])]])]])])])]])]))))])]]]))])])]])])]))))])]]])]])]))]))))])])])]))]])))))]]]]]]))])])]])))))]])])))]]]]]]))))])))]])])))]]]]))))))]]])])))])))]]))))))]]]])]))])]]))]])])]]]))))]]])])]]]]]))))])]])]]]]])]]))]]]])]))))]))]]))))))))]]])]]))))))])))]]])]])]))])))])))))])))]])))]])])]]]]))]]]))]])]])]])]])])))))))])])])))])])]]])))]])))]]])]]]]]]]))))]))]]]]]])))]]))])])))]]]]))])]])]))]))))))])))])]])])]])))]])]))]]])))]]])]))]])])]))]])]]))))]])]]))]]])])])))))))]))))]]]]]]]))]))]]]])])]]]])))]])]]))))))])))))]))]))]]]]])]]]]])])]]))]))]]])]]])]))))]]]]])])))]]])])]))]]]]]])]]]]))]])]])]])]]))]]])])])]]]]]))]))]]])))]])])]]]]])]]]])]])]])]])]))]]]])]))]]))))])])])]))])])))))])]]]))]]))))]])])]]))]]]]))))]]]))]))))])))]]))]))]]])]]]]]])))))))]))))]])])])]]]])]]))]]))])])]]]]])]]]))))]])]])]]))))]])]])]]]]))))]]])])])]))))))]])])]))]]))])]]]])]))))])]))]]))])))])]]])))])])]))]]])]))]]])]])))))]]]])]]))]))]]]]])))]]]])]])))])])]]]]))]]]])])))))])])])]]]))]))))]))]])])]])))])))]])]]]])]]])])))]))]]])]]]))]))]])]])]]]]]))))))])]])]])]]]]]]]])))))])]]]]))))))))]])])]))]]]])))))))]]]]))))))))])])]]])))])))]]]])])))]]))]])])])]]]])]])]])))))])]])]]))])]]]))]])]]]))))))))])]])))]]))]])))))]])]))])]]]]]])))]]))))]])]]]))))))])]])]))]))]]))]]]]]])]])]]]]))]]])))))]))]]))])]]])))])])])])]))))]])))))])]))]])]])]))))]]]))])]]]))]]]]]))]]))]]])))])))]]]))]]])])))]]])))]]]]]]))])))]])]]])))))]]])]]]])])))]])]]]])))]])]])]])])))]]))))]]])])]]))])]])]])])))]]]))])])]]])))]]]]]))))))])))]))])])]]])))]])])))])))])))]]]])]])]])])]])]])])))]]]]])])])])])])]]))]]]])]]]]]))]]]))]])])]]))]]))]]))]))]]]]))])])))])]))]))])])])))))]])]])))]])))]]])]]]]]]))]))))])])))]])])]]]]]]]))))))]]]])))])))]])])))))])])]]])])))]))]]]))]))))]))]]))]))]]]]])))]]]]]])]]]]]])))]))])))])]])]))))]])))]]))))))]]))])))))]]]])]))]]])))]])))]))])))]]))))))]]]))])]))]))))])])))])))])))]])]))]]))]])))])])))]])))]]]]])))])]]))]))))]])]])))))]]]])))))]))))])]))))]])))]]])))]])))))])]]]])])]))])])]]]]]]]]]]]]]]])))]]]])]))])]]]]]]]))])))]))))])]]))])]]]])])]]]])])]])]))]]]]]))]]]]))]))]))])))])])))))]))])])]]]))))]])])))]))]))]))]])]]]]))))])])])]))]))])))))]]))))]]))]]]])])])]))])))]))))])))])])))]))])])))])))]]]])])]])]]]))])]]])]]]))]]])]]])))]]]))]]))])))])]]))]])])]]))])])]))])))]]])))]))])])]))))])]))))])]]))]]])))]]])))]]))])]])))]]])])]]]))]))]]]]]])])]])])]]]])))]))]))))]])))))]))))]))])))))])])]]]]]))]])))))))]))))]))]]))]])]]))])]]]]]]))]]))])))])])])]]]]]]])]))]]]]]]])))))]))))))]]])]])]]))]]))]]])))]]]))])])])))]])]]))])]])))))))]]))])]))]]]]]]])]])]])]]]]]))]]])])])))])]]))]]))]]))))]]]]])))])]]))]]])])]]))])]))]]]]]))))]]))]]]]]))]]])))]]]))])))]])]]]]))]]])]]])))))]]))])])))))]]]]))])]]]]))))]))]]))))]))]]]]])]])]))))])])])]])]))))))]])]))]]])])])]))]))])]])]))])]))]]))]])]]))))]]]]]]]])]])))]])])])])]]))))))])])))])])]]))])])]))]]))))])])))])]])]]]))]]))])]]]]])])])]))]]]))])]])]]))])]]])))])]]))))]))]]]]]]]]]])]])]]]]])])])]))])])]]]))]))]]))))])]]]]]]]]))))))))]]))]])))))))]]])]])))]]])))]])])]]]]]]])])]])])))]])])]]]]])]]))])]))])]]]))]]))]])]]]]])]])))])]]]]]))))))])])]])]))]))]])]])]))]]]])])])]]))]))))]]]))]]]])]))]])]])))]))]]])])]]])))]])]))]))]])))))))))))]))]))))]]]]]]]]]]]]])]])]])]]]]))]]]])])]))]]])))]])))]))])]])]])])]))))))]))]))]]])]])))]))])]]])])))))]))]))]]))])])]]))]])]))]]]]))))])))))]])))])])]))]))]]]]]))]))))])])]]]]))])]))))])]))]))]))]])]))]])])]]]))))))]))]])))))))]]])))])]]]])])]]]))]))]]]])]]]]))]])]]])))]])])])))]]]))]])]]]])]))]]]])])]]))))]]])]])])])]]])]])]])])])]]]]]]))])])]))))])))]))]))))]]])))))])])))))]]]))))])]]))]))])]])]]])))])))]]])))))))))]])]]))])]])))]]))])])]]))]))))))]]]]]]]]]]])]]]])]]]]]])))]])))))]])])]])]))))]))))]])])])])]])]])])))]]]]]])]]))))])]))]))))])])]])]))]]])]))])))])])))))])])]])]]]]))))))]]]]])]))]]))]]]]]))]]))]])])]])])]]]))]]))]]])]])])))]]))])))]]))))]))])])])]]]])))))))])]])]))])]]]]]))))]])))]])]]]))))]]])]])])])]])))))))])])]])))])]]]]])])]))])])]]])]])))])])])])])])]])]])])]]))))])))])])])]])))]))))])]]))])])]])]))))))]]]))))))))]))))])])]]])))))])]]))))))))])]]])]])]]]])))])))]]])])))]]])])])))]))]))]]])]))]])))])]))])])]]])])]]])])])]))))))))]])]]])]])]]])))]])]]))])))]]]]))]]]]])])))])]]])))]))]])))]))]]]))]]]])])]]))])]]]]))]]]))])]]])])]])))))]]))]]])])))]]))]))]])))]]])]])]]))]]]))))]))]]])]]))]]))))))])]])]))]]])))])])))))))]]))]))])))]])]]]]]]]]))])]])])])]]))]))))])))]])]])))]))])]]]])]])]]))])]))])])]))]))])]])))]))])]]]]))]]]])]))]]])]]])))])))])]]]]]]]))]))))))])]))])]])]]))]])])])]]))])))])]])]])])]]]])])])]])]]]))])]])]]])]])]]))]]]]]])])))])))))])))]]]])]])]]])]]]))))])))]]))])])]))))]))]]))))))]])])))))]])))))])])])]]])]]]])))])]])]])])]))]]]]))])))]]])]])])]]]])))]])]])]))])])))))))])]])]]]))))])))])))])])))])]]]))))]))))))]]]))])]])))))]]])]))]])]]]]])])]]]]))])]]))]))])))))]])))])]]))]]]]]]))))]])))]]))])])]]]])))]]])]])))])]]]))])])]))))))])]]])]]]]])]))]])))]])])]))])])))]])]])])]))]))))]]))))])))))))) [][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][] [[[[[([[[([([(([(((([[[[[[[(([[(([([((((((([(([((([[[[([(([([[([[([[[([([((([[[(([([[[([([((([[(([((([[([([[((([[(([[(([[[(([[[[([([([((((([[([([(([[[[[([[([[([[((([(([[[[[[[[[[[[[([[[([([[[[[[[([([[(([([([[[((([([(([(([[((([((([([[[(([(([[(([[[(((([([[(([[[(([[[[[[([([[([([(((([((([([[[[([[[(((((((((([([[[[[[[([([[[(([[[[[([[([[(([([([[([[[([(([[[[[[([(([((((([[[([([[[((((([[[((((((([[(([([[[(([([[([[[((((([(((([[[[[[(((([[[(((([([[([([[[[[([((([([[[[[([([[(([([[((((([[[[[([(((((((([([([[([([([(([([(([([[([([[((([[[([([((((([[[[(([(([[([[([[([([[[[[[[((([(([[([(((((([([[([[[(((([((([([([[[[([(([(([[([[[[[[[([[([([[[[[[([[[([[([(([((([[([[[[[([((([((([[[[[[([[[([[(((([[([([(([(((((([[[((((([([[[([[(((((([(([(([((([[([[[([([[[[((([([[[[((([[[(([[[[[([([[[([[[([[[([(([[([(([(([[[((([[[([[([[[[(([[([[([[((([([[((([([[[((([([(((([[(([([[[(([[((([[((([(([([([(([(([[[[[[([([[[[[[[((([((([[[[[([([[[[[[[([(([([[([(([([[((((([([[(([([[([[[[[(([(((([[[[((((([[(((([[[[([[((((([[([[([(([([[(([(([([((([([([(((([[([([(([[(((([((([[[(([[(([([[([[([((([(([((((((([[([([([([[[([(([[([[([([[[[(([[(([(([[[([[(((([([([(((((([[([[[((([(([((((([((([[(([([[([[(((([[[([[[([[([([[[[[(([[(([[[[([([[[[[(([[[[[(([([(([[(((([[[[[([[[[[(((([[(((([(([((((([(([[([((([[(([[[[((((([(([[([([[[[(([([[[[[[[[[((([(((([([[([([[[[([([[([([[[(((([((([[(([([[[([([([[[(([(((([([([[[[([([(([[([(([[([[(([(([([[([([(([([[[[([[(([([[([[([[([[([([[([[[(((([([((([([[[[[[[[[[(((([[((([[[[[([(([[([[[([(([([[([[[([[(([([(((([[[(([(([[[((((([[[[([([[([[([[((((((([[[[((([([[([(([[(([([[[((([[([[[([([[([(([([(((([[([([((([([(((([([[([[([([((([[[[([[((([([[[[([[(([[[(([([[([([[(([([[([(((((((((((([((((([(([(([([[[[([[([[[((([[[[[[(([([[((([([(([[[[(([(([([[(([(([[[([([(((([[[([[[[([([([([[([[([([([([(((([(([(((([[[[[[(([(((([[[(([(((([[((([[([[(([[([(([(([[(((([(([((([[(([[([(((([[[[(([([[(([[([[[[[[[((([(([[([(([[[([[([[[[([[[((([[[([(([([[[[[((([([[[([[[([[(([(((([[[(([(([[[((([[[[[[[([(((([[[[[([([((([(([[[[[[([([[[([[[[[(((([([((([[((([((([[[[[[((([([([(([[[(([[[[(([(([[(([(([((([[([[[([[[[[([(((([[([[([([[[[[[[[((([[([[([(([[((([[([((([([[([[([[[([((([[[(([[([[[([([[(([(([(([[(((([[([[[[[[[[((((([(([([(([[([[(((((([[([[([[([[[[[[[([([[[[[([(([[[(([([[([[[([[(((([[([([[([[[[([([((((([[([([([((((((([[([[[[(([(((([(((([([[[[(([([[[[[[([((([(([[[((((([([([[[[[[(([[[[([[([[[([(([(([(([[[[((([((([[([[[[(([[((([(((([[[[([((([[(([[((([(((([[[(((([(((([[([([(([[([([[([((([(([([((((([([[[([(((([([(([[(([[((([([([[(([[([[([[((((((((([[[[[(([([[[([(([(((([([([(((((((((([[[[[(([([[[[[([([[[(([[([[([[[[[([[(([((((((([[[([(([((((([(([[(([((([(((([[[((([((([(([((([[[[([[(([[[[[([[[[(([[[[((([[([((([[((([[[[[(([[(((([[(((([([[[[[((((((((([[([(([(([[(((((([((((((([(([[[[([[((([[([([((([([[[[([([(((((([(((([([[([[[[[(((([(([[[[[((([((([[[[[[([[[[([([(([(([([[[[([[([([[([([[(([((([(([[(([[(([[([[([[[(((([([([[(([([([((([([[[(([(([([([([(([([[[[([[((((([([[((([([((([[[([[[[([[[(((((((([[((([[[[([[((((([(([([[[((([[([([([(([[[[([(([(((([(([[(([[[[([([[(([(((([[([(((([[[((((([([[[[(((([((([(([(((([[[[[[[[(([[[[([([[[(([(([([[[[[([([[(([([([[[(([[[([[[([([[(((((([(([[[([[[[[([(([(([(((((([([([[((([[([[([(([([[(([[([[(([(([([[([[([[(([([([(((((([((([[(([((([[[[[[([((([[([[[([([(([[(([[[[[((([(((((((([[[[(([([([((([([[[([[(([([[((((([(([[(((([[[([[[[[([((([[[[(([([([[([([[(((([[[((([[([([(([[[[[([((([(([(([([[[[[[[[[([(((([((((((([[[([([(([[[[([([([((([[([((((([(([((([([[[(((([((([(((([([[(((([([[(([[([((([[[([(([([((([[(([([[(([[[([([(([(((((([([[([(([([((([([[([[[[((((((([((([([((((((([[[((([[[((([[([([([[[[[(([([([(((([[(([(([((([[[[([[([([[[((([([[[[(((([[(([[[(([[([([([[((((((([[[([([(([(([([(([([([(([[(([([[[(([[[[(((([[((((([((((([[(([[[[[(([(([[([(([((([(([[([((([([([(([(([([[((((((([([[([(([([(([([((([([[[([(([[[([([[[[([(([[(((((([[[([(([[([[((([[([[([[[[[((([([[([([(([[[([([([[([([(([((((([(((([[([(((([((((([[([([[((((([(([[(([[[[[[[[((([([(([[([((([[([[([[([[((([([((((((([[((((([([([[([[((([[((([(([([(((([(([[(([([[[[[[([((([[[(([[[(((((([([([[[([[(([[(((([[[[([([[([(([((([((((((([[[([[[((([[([[[(([[[((([[([[([((([([(((([([[((((([[((([[[[[[[[(([(([[((([[[([([[[([[[[([[[((([([[[[[[[[[[[([[[([((((([(([[[[(([([[[[[[(([(((((((([((([[([[[[[((([[(((([[((([(([[[([([(([(([(((([[(([[[([[([([[[((([[(([[[[[[[([[[([([(([[(([([[([(([([([([((([[(([(((((([[[(([[[(([([(([((((([([[([[(([[(([[[([(([([[([[[[([([((([((([[(([([(([(((([(([([([(((([[([([([[[([[[([[[(([[(([[([[([[[[[[[(([[(([[[((([[[([[(([(((([[[([[((([[[[[[((((([[((([([([[[[([[[[(((((([[[([(([([[[([[[([[([[((([(((((([([[([(((([([([[([[[((((([([(([[[[(((([[[[[([([[([(((([[[[[([(((([[(([([((([[(([[[[([([([[(([([[[(([[[([[[([[[(([([[(([[[[([[([(([[(([[[[((([((((([([([((([((([[[([[[[[[[([[[[((((([[[[((([((((([[[((([([[[[[[[([([(([[((([[(((((((([([[[([[[([(([[([[([[([([[[[[(([([([[[([[([[([(([[(([((([[[((((((((([[(([([((([([((((((([[[[[[(([[[[[([((([(([([[[([[([([([([([((([[[([((([([[[(([[[[[[[([(([[(([(([[[[[[[[(((([(((([[(([([([(([[[[([[[([([[[[[([((((((([[(([((([([((([[[(([[([[((([[[(((([[[[([[[[[([[(([([[[([((([((([(([[(([[([[(([[([[[[([[[(([(([(([[[[([(((((([([([([((((([(([[[([[[[([[[[[[(((([[[([([(([([((([[[[([([([[[([[(([([(([((([[([([[[(([[[[([[((([[([[([[[([(([[[[(([(([[((([([[[[(([(([[((((([(([[[([([(([((([([([([((([(([([[((([[([([([(([[[[((([[(([[([[[[([[[[[((([((([(((([(([(((([(([[([[[[[((([[(([[[(([((([(([(([[(([[[(([[[([([(((((((([[[[[[[[[[([[[(([((([[[[[([[[(([([[[[(([[([(([[[[([((([[[[[([(([(([(((([[[[[(([[((((([[(([(((([[[[([[([[[[[[[[(([([([([[([[[((([([(((([[[([((([([([(([((([([[[[[[((([[((([([((([([[[[[[[([(([(([[([([([[[([([[[[[[[([[[([((([([([[((((([([(([(([((((((([([([[[[[(([((([([([[[[([(([[[[[((((([([[[([([[[[([([(((([([([[[(([[((((([(((([(([([[([([[([[[([((((([[[[(([([[((([(([[([(((([([(((([[[[[[([([(([(((((((([(([(([(([([(([[[[[[[((([[(([[[[([[[(([([([[([[[([([[[((([[(([([[(([[(([[[[[[(((([[[([[[[([[[([[(([[[[[[([(([([([([(([([([[[((((([((([([(([(([[[[(([[[[(([((((((([(((((([[[([[[([[(([([((((([[[[([(((([(([[[[[([([([[([[[([[[([[([([[(([(([([[((([([[[(([[[((((([((((((([([[(((([([[[[(([[[[[[([[[[((([[((((([[([(([[[(([[[((([([([[(([((((([[[([[[[([([([((([[(([((([([[(([[([[([[[[([[[(([[[(([[(([[[[[((([[[([[([[[[(([((([[[[[((([([([(([[[[([(([[([([[[(([([(([[[([[[[((([[[((([(([(([(((([([((([((([([[[([[([(([([[[([([[([(((((([[((((((([[[[[(((([(([[[([[(([([(([(([[[[(([((([[[[([(([(([[[[[[((([[(([([([([([[[[((([((([(([[[(([[[([([[([(((([[[[(((([(([([[[[[[((([(([([[[[[([([[[([[[[(([([[[[[(([[[(((((((([[[(([([((([[(([[[((([[([([((([([[([[(([[[((((([[([[((([[((([([[[[[[[[(([(([(([([[([[[[(((((((([[[([([(([[([(((([[(((((([([((([([(([((([[([((([([[[([[([((([(((([([[[((([[([(([[[([((((((([(([(([([(((([[(([(([[[[((([[[[[([[[[(([[(([((((([([[[((([[[[[[[[[[([([[((((((([[([(([[[(([(([[[((((((((([[([[[([(((([([[[[[(([[[(([[[(([([[[((((([[([[([[[([([[[[((([[([[[[(([(([([[([(([[[[([((([(([[([([([([[([[((([[(([((([([((((([([[[[[((([[([[(([[([[[[([(([(((((([([[((((([[[((([(([(([((([[((((([[(((([[([([((((([[[((([((([([(([[[[([[[([[([[[[([(([(((([((([(([[[([((([(([([[([([[((([(((((([(([([[[((([(([(([(((([[[[[([[(([([(([[[[[[[[(([(((([(([[[([[((([((([[[([[[([[((((([[[[(([([(([(([[(([[[([([[(([[[[[([([([([[[(([[[((([[([[([([[([(([((([[([[[[[(((([([[([[([((((([([([[([((((([[[(((([([[[([((([[[[(([[([((([[[[[(([([[[([[([[[[(([[[[(((([([([[[[[[([([[[[[[(([([[[[[([(([[[([[[([([([[[[[(((((([([([((([[((([([((([[([[([[((([[[[[[[[[[([[[([[[(([([(([[([[(([[([(([(([[((([[[[([((((((([[([(([[[([(([([([(([([([[([([[[(((([([(([([[[[[((([([([([(([((([[([((((([[(((([[[([[([[[[[([([([([[((([[[(([([([((([((([((((([[[[[([[((([[([[([([((([[((([([[([[[[[([[([([([[[([(([([(([[((([([[([[[[[([[([[(((([[[[(([(([((([[([[[([[[(([([[[[[((([([[[(((([[([(([[(([(([[[[[(([([[([[[[(([([[(([[[(([[[[[((([[([([[[([[((([[[[([[[[([(((([[[[[(([(([[[[[([[(((((([[[(([(((((([[[([[[(([([[[([([[(((([(([[[((((((((([[[(([[(([((((([[[[[(([([[[([(([[[([[[[([([((([[[[[[[[((([((([[[[[[[[[[[([([[([[[([[[[[[[[(([([[(([([([[[[(([[[([[([((((([([[[[(((([(([((((([[[(([[[([[[[([([((([(([([[(([[(([(([[(([(((([([((([([[([([([[([[([[([(((([(([[[(([(([(([[[([[[[((([([(([((((([[[(([(([([[([([([([([(([([[[[(((([[(([(([[[(((([[([[[[[[([[[[[([[([([[[[([[([((([(((((([[((([([[[([[[[[([[[[([[([((([(([([[(([((([([[(([[[(([((((([[([[[(([(([(([(([[[([[[((([(([[[(((([([(([[[[([((([[([(([(([(([((((([[[(([([[(((([[(([([([(((((((((((([[[([((((([((((([[[([([(((([([[((((((([(([([([[([[(([(([(([[[(([([([(([(([(((([[[[[[[(((([[([(([(([[(([(([([(((([[([[(([(([[[(([[((([([([(([[([((([[(((([[[(([[(((([(([(([[[[[([[([[[[([(([[[[([[((((([[[[((([[([(((([([[((([[((([[((([([([[[([[([((([(([[(((([(([(((([((((([(([(((([[((([(((((([([([([[[(((([[(([[[[[[[[([([[[[([(([([[(([[([(([[[[[[[[[[[([[([([[[([[(([[([(((((((([([([(([[[([([(([[([[([([[[((([([[(([[([[[[[[((([[(([[(([[[((([[([[[(([[[((([([[((([(([([[[[[(([[[([[((([[([(([[[[[[[[[[(([[[[[[[(([((((([((([(([[(([([(([[[[(([([([((([([[[(([([([(([([([[(((([((([[([[([([([(((((((([[[[(([[[((([[[([((((((([((([(([([[[((((([(([[[[[([[[([[(([[([[(((([[[((([[([[([[([[((((([[[([((([((([[(([[[([(((((([[[([[([[[(((((([(((([([[[(([([(([([(([[[(([(([(([(((((([[(([[(((([[([[[[([([((([[([([([([[([[([([[((([[[[[([(([([([[(((([[[[[[[[([([([[([[[(((([[((([([(([[[([([((([[((((([[(([([([[[[[[[(([(([(([(((((([[([[[(((([([(([[[((([([[([[[(([((([([([(([[(([(([(([([[[[[[[[[(([[[[(([(((([(([[([(([([([[([[(([(([((([(([[[[[(([[[([[[[([([([[((((([([(([[([([[[[(([[(([(((((([[([((([[[(([([[[((((([([([[(([[(([[((((([[([([[[[([[([[[[[([[[(((((([[[([([[([[[((([([(([(([(([([([[[(([(([([([[[([[[(([[([((([(([(([([([([[(([[(((([[[[[[[[(([(([[[((([((([[[([[[[[[[[[[[[(([((([[[[([[[([([[[([(([[([[([([((([([[[[[[[[[(([((((([([([[([[([(((([([((((([[([[([((((([(([[((([[[([[([([[[[([[([[[(([([([[[[[[(([([(([(([[[(([((([(((([[[([[([((([([[(([[[([(([[(([[([(([[([[[((([[[[((([([[(([[(([((((([[([([[([[[[((([[((((([((([[(([[[(([[([[[([[[[[([[[[([((([([((((([[(([([[[([([[[[[[[[[([(((([[[(([[[([([[([[[(([((([[([[(((([([([[[[(([[[[[[(([(([[(([((((([([[[[[[([([(((([(([[(([([[[[(([[[(([((([[[(((([[[(([([[[([[([(([([[[(((((([[(([([((([[(((((([((([([([[(([[[([[[[[(([[([[([[([[([[[[[([(([([[[(([((([((([[[[([[([[[[[[[[[([([[[(([[[[[([[[[((((([([((([([[[[[([[((([[([[([([[([[((([([([([[([(([[(([([[(([[((([(([([[[([([[[[[[[[[[((((((([(([[([([([[[[[((([[[([[[[(([(([([[([[[(([([[[[([(([(((((([((([([((((([[([[[([[[(([([((((((([[[[[(((([([[[[((([([([(([([[[(([[((([([([([([[[[[[[([[[[([([[[(([[([[((([[([([((((([[[((((([[[[[[([[[[[[([(([([[[[[[[[(([[[([[[[[[[([([[[[([((([[([[[([([((([(([(((((((([(([([[(([[(([([([[[[[[[[[[[[[((([[(([(((([[(([(([([((([([([(([[(([[([((((([([([([(([[[((((((((([[[([([(([[((([(([[(([(([[(([[([[(((([(([[[[((([[(([((((([([(([[[[[[(((([([((([[[[([([[([(((([[([([[([[([(([((((((([([([[([[([([(((([([[[[((([[[[(([[([([(((([((([[[[[(([[([(([[([([[(([[[[[([[[[[[[([[((((([([[[([([[(([[[[([[[([[(([((((([(([[[[([([(([(([[[[(([(([[([[[[([(([(([([([[[[[[[[[[[((([[[[(((([[(((([(([([[(((([([([([([[[[(([[[(([[[[[(((((([((([[(([[(([([(([([([[(([([((((([[[([([([[((([(([[[(([(([([[[[([[[(((([[(((([([(((([((((([[[((([[((([(([[[([[[[[[[([[(((([[[[(((([(((([[((((((([([[[[((((([([(([([([(([[[[([[([[((([([[(([[([(([([[(([[((((((([[([(([[[[[[(([([((([((([[[([[(([[[[[([[[(((([[([[[[[([[[[([([([((([[(([[[(([([[[(([[(((([(((((((([[(([([([([[[([([(([([[((((([(([[[[[[[[([[[([[[[([(((([[[((([[(([((((([[[([(([[[[[([((((([[(([[[[[([([[([[(([((([[[(((([[(((((([([[((([([[[([[([([[((([[[([(([[([([[([([[[([([(([([(([[((([[[[((([(([([[[[[[[([[[(((((([([(([(((([([((([[((([(([[[(((((([[[((([(([[[(([([[([(([([[((([([[[(([(([[[[([[([(((((((((((((([[((([[([(([[[([(([([[[[[[([(([([([(([([[((([[(((([[([(([(([((([[[([(([[[(([((([((([((([[([[[([[([[[(((((([((([[[[(([[[[([[[[[[([(((([[[([(([[[(([[([[([[([[[(([([(([[[(((((([[[[[[[[[[([[[([([([(((((([([(([[(([(([[([[[[[[[[[[(((([(([(([(([([[(([([[[([(((((([[((([[([[(([[([[((([((([(([([(([[[([[[([[((((([([[([([[[[[([[[[[(([(([[[(([[[[([[([[([(((([[[[[[(((((((([[[(([(([[[[((((([[[((([(([(((([[[[[((([(([[([(((([([([([[((([([[(([([[([[(((((([(([[(((([[[(([([([[([([(([(((((([[((([((([([([[(((([(([[[[((([([[[[([[(([(([([((([([[[[(((([([([[[[(((((([([[(([[[[[([([[[((([[[[[[[(([(((([[[([[[[(([(([(([[[[[([[([[[([((([(([[(([[([[([[(([[([([([((([([((([(([[((([((([[[(([([([[((([(([([([(([[([[[[[([[([[([((([((([[[((((([(((([([[[([([(((([[[((((([[[[[[(((([(([([(([((([[(([[([([[([(([(((([[[[[(((((([(((([[([(([(([((([[[((([[[(([[[[([([[([(([((((((([[([[[([[[(([[[[[((([[[[(((([[([[([(([[((((([[(([(([(([([[[[([((((([(([[[[[([[[[[[(([[((([(([[(([(((([(([[[[[([([[(([([([[([(([[[[((([[[[(((([[[[[([(([[[[[[[[((([(([[[[(([[[(([[([([(([([([([([([(([[[([[([((([[(([[((((((([[[[(((([[[[[([[((([[(([((([(([[[[[(([[([([[([[[[[[([([(([([[(([((([((([((([(([[((((([([[((([[(([[([([[(([[[(([[[(([([([([([(([[[[[[((([((((([([[([([([([((((([(((((((((([[[(([[([([[((([[(([[[[[[[([([[([[([(([(((([[[([(([[(([([[[[[(([[(([[([[[(([([[[[[[([[([[([[(([[([([[[[[[(([(([([[[(([(([[[[((([((([(([((([[[([(([([[([[([[((([[((((([[[[((((((((([([(((((([[([([[([[(([(([[(((([((([[([[[[[([[[(([([[([((([(((([((([[([([[([([(((([([[[(([([[([((([[[[(([([[([[([([[((((([[([((((([[[[([([([(([[(([[[[[[[[(((([[[[(((([[[([[((([[[[[([[[([[(([[[((([([([[([([[[(([[([[([(((([(([[[[[[[[([([([[([(([[(([[[([[[[([((([[((([([[(([[[[((((([[(((([[([[([(([[((([[(((([((([([[[[([[[([([[[[((([[([[[[[[[[[[[(((([[([[[([([([([((([((([([[[[[((([(([[[[[[[[[([([(((([(([[([[([[[(([[[((([(([[((([((([([[([((([((((([[[([(([[([[([[((((((([[[[([[[(((([[(([([([([[[([[(([((((([(([([([([([[[([[[[[([((([[[(([([([[[(([([((([[[[([([[[[([[[[[(((([[((([([([[[([([[(([([[[([([[[[(((([[[([([([(([([[(([[[[[([([[[[([([[([[([([[[[((((([[[([((((([(((((([[[(([[([((([[(([([((((([([[(([[(([[[(([[(([[([[([([[([[([(([(((([(([[[([[([[(([([[[([(([([[[((([[(([([([[[(((([[((([[((([(([[[[[([(([((([[((([(([(([([([([[([(([([(([([([[[([([[[([[[[(([((([([[[[[[(([([[(([(([(([([([[([[[([[(([(([([([[(([(((([([[[[[(([[[(([(((([[(((((([(([[[[([([([[(([[([[[[[([[[(([[([([[[[[([[([((([(([[[[[((((([(((([([[[[[(([(([([[([[[[[[[([[([[([((([(([[[[[(([[([([([[((((([([([[[[([([(([(([[(([[[(([[([((((([[[(([[([([([[([[([[[[[(((([[([[([[(((((((([([[[([([[(((([(((((((((([([([([[([(([([[([[[[([([[[((([[([([[(([((([(((((((((((((([[[[(([[(((([([((([[[(([[([[[([[[([([([[[([[[[[(([[[(([[((([([([([[((([[[(([[(([(([([[[([((([[([([(([[([(([[((((((((([[[[[([[([[([([[[[[[([([[[(((([[[[[[[[(([[[[[(((([[[[[((((([(([[[([[[(([[[((((((([([(([((([(([[([[([[[[[[([[[[([[[((([((([([[((([([[([[[[[[([((([[(([[((((((([(((([([(([((((([[([([[(([[(([([[[([((([[[[[[[([((([[[[[(((((([([[[[[(([(([([[[[([([(([(([[(((((((([[[([[([([(((([[[[[[((([[[([([([(([(([[(([(([(([[[([[[(([[[[((((((((([[((([[[([([[([[([[([(([([[([([[(((([[[([[([([[([([(((((([[[((([[([([([(([((((((([[[[([[([[[[[([[[[[[([([([([[((([([([([(((((([[[((([([[(([[((((([([[[[(([[((([([([[((([[((([((([(([[(((([([[[(([(((([([[[[((((((([[([(([[[([((((([([[([[([(((((([([(([[(((([[[([[([[([[((((([([([[([((((([[[(((([(([[[([([[(((([[([(([[[[[[[(([(([[([[[([[[(((([[([([([([(([((([((([[([[[([[(([[[([[([(([([(([(([([((([(([(([[[([[((([([((([((([[[([[[[[((([[([(([[[[[(([([(([[([([(([([[(([[([[((([([(([(([(((((((([(([[[[(([[[([[[[(([([(([(([(([([((([[[[((([([([([[[([[(((([[((([([[[[([[[[[[(([[[((([([([(((([[([(((([[[([[[[([[[[((((([(([(([([[([[(([(((((((([[[[([([[([[([([([[([([[[([(([[[[(((([((([([(([(((([[[[[[[[([[([[[([([[([[[[[((([[[(([([([(((((([[([((([([([([((([[[(((([(([[([[([(([([([((([[([(([(([[[[([[(([[[[(([[([[([([[[([([(((([[[[[(([((([(([[[([(([([([[([(([(([[[[[[([[[[[[[[([[((([(([([(([([([[((([[([[(([([([[[[(([[[[([[(([[([(((([[[[[([(([(((([[[([(([([(((([[[([(([(([[[((([[[[([[[([[[[([([([[[([([([((([[(([[([[([[[([[[([[([([[([[[[([(([(((([([[([([([((([([([(((([((([[[[[([[[[[(([[(([[[([[[[(([([[((([([((((([([(((([([[[[((([(([[(((((([[((((([([(([([[([([[[([([((([[[((([(((((([[[([[([[([[[[((([[[([[(((((([(([([((([((([(((((((((([[[(([[[([[[([([[(([[([[[[[([[[(([(((((([[[[([(([([[[(([[[[(([[[([[((([[([[(((([([[([((([(([[((([[([[([[[([[[([[([[[[([((([[([[(((([[[((([[([[(([[[(((([[[([[[[([[(([[[[[((([[([[([(([([[([[[[(([(([([[([[[([([[[[([[([[(([[[[[([(([[([[[([([([[([([((([([[(([[([[[[[[[[([[([[(([([[[((([[[[([((([(([((([[((([[[[[[[([[[([[[((([([[[[[([(([[(([[([(((([[[((([[([[([[(((((([([([(([([((([([[(((([(([([([((((([[[[([[[[[([(((((([[([[([([(([[(([[[[[[((([([[[[[([(([([([[[[(([([[(([((([[[((([[([[[(([(([[([([(((([([((([[([(([[[[([[([[(((([[[([[(((([([[[[(([(([(((([(([[([[([[[[[[([((((([([([[((((([([[([(([[([((([(([(([[([([[([[[([[([(([([(((([[[[(((([(([([[[([[[[(((([([(((([[[(([[(([[[[([((([[[[(([[(((([([[[(([[[[((([((((((([[[[([([([[([([[[(([(([[[[(([([[([([[[(([([[(([((((([[(([[([(((((([[(([([[([([([([[((([[((((([[[[[(([[[(((([[[([([[([[([((((([[(((([((([(((([[(([[(([[[[[(([((([([([([((((((([[[[(([[(((([([([[([[[([([[[([[[[[([(((([(([[([[(((([[[([((([[([([([[([((([(((((([[[[((([(([((([([([([[[[(([((([[[([(([([[[((([([(([([([([[[[[(([(((((([[((([([([[([[([([[([([((([([(([[(([[[([(((((([([((([([[[[([(((((([([[(([[[[[[([(((([([([[(([([((([[([([[([[[[[[(([[[((((([[(([(([[[[([([[(([([[([(([[(([([[([(((((([[[[(([[[([([[(([[[([[((((((((([(((([[[[[([[(((([[[(((([(([(((([([(((([(([[([[((([[([(([[([([([[([([[([([([((((([([[([[([([[[([[([[((([[[((([[([([[[((((([(([[(([([[(([(([([([[[([[([[[[([([(([((([([[([[(([(([[((([([[(((([([[([[[[(((([([[[(((((([(((([([[[((((((([([[([([[[(([[([[([[[([[([(([[[([(([[([([(([[[[([[[[[([[[(([([([(([[[[[[([(([[[([((([([(([((([([[((([[[([(([(([[(([[([[[([[[[(([[((((([[((((([[([[(([[[[([(([[[([([[[[[([[([([(([(([[((((([(((([(([([([[([[(([[([[([[((([(([(([((([([[[((([[[[[(([[([(([[[([(((([([[([(([([[[(([[([[([([[[((([((((((((([[(([[[(([(([[[([([(([[[[([[[([[(([[(((([[([(([([(([[([[[(([[(([[[[[([([([[[([[[[[((([[(([[[([[[([([[((((((([([([([[([[[((([(((([(((([[([(([([[(([[([[[([[[[(([[([[([[([(((([([[([(([[([([[[[[(((([[[([([[[[((([[[[(((((((([([[(([((((([(([[[[([[([[[[[((([[(([([([([([[([[[[[[([[[((([[([[(([(([(([[([([[[[([([[[[[[[[[([((([([(((([[(([[([(([[[[([([[([[(([[([([[[(([([([([[[([[(((([[(([[[(([[([(([[[[[([[[([(([(([[((([[(([(([[(((([((([([((([[([[[([([[[(([(((([([([(([([([((([(([([([[([([([(((((([[([(((([([[([([[((((([([(((([([(([[[[[([[(([[(([([[([[[(([[([(((((([[[[((([[[(([[[([([(([[[([[[[((((([[[(([[[[[(([[[([((([[[[([[((((([(((((([[([[[[([[[([(((([([([[([[([[((([[[((((((([[[([[[[(((([[([[[((([(([((([[((([(((((([[[[[[((([[([[([(((([(([([([(((([[[((([([[(([(([((((([((([([[([([([[(([([(((([[[([([[[((([([([(((([((((((([((([(([([[[[[(([[[[[[[([(([(((([(([((((([(([[[[(((((((([[([[[[[[(([[([[[[(((([[[(((([([[[[[[[[(((((((([[(((([[[[[[[[([(((([[[[([[((([[[[([[[((((([([(([([((((([[[[(([[([([[([(([([[(([(([[[(((([[[[([[((((([(([[(((([(((([[((((((([[[[((([[[([((((([[(([[([([([(([[([[[[(((([[[(([(([([([[(((([(([([[[[[[[[[((((([[[((([[[[([[((([(([[([([[[([(([([[[(([([[[(([(((([[[[([(((((((((([[[[((([[[[([([([([(([[[[([([[[((([[([([[([(([[((([[(([([[[[(([([([[[[((([[(([[(([([([([(((([([(([[([((([(([([(([[(([(([[[[[[([([(([[([[[((((([[((((([[([[(([[((([[(([([(([([(([((([[[([(((([[([[[[((([[[([[[(([[([[[([((([[[[[[[[[([((((([[((([(((((([[([(((((([([[[[((([[([([[[[[([[([[[[(([((([(((([[([((((([[[[(([[[([[([([([[(([[[([([(((((((([[[[([(([[[([[([((((((([[[([([([[([([(([([(([(([([((([(([((([[(([([(([([[(([[(([((((((([(([[(((([([(([((([([([[[(([(([[(([([((([[[[(((([[[[[[[[[[[((([([((([([(([[[[[[(([[([(((([([([[([[[[[[([(((([([([[(([[(([[[[((([[[[[[([[(((([(([[(((([([([[([([[([([[(([([[[[[([([[[((([[[([[[(([([[([([([([[([[[[([[[[([[[([(([[([[[[[([(([([[[([(([[((([([([[([[[((((([[[([([([[(([[[([[([[(([(([([[[[(([((([(([[[(([(([[(([[[([[([([([[([([(([[(([[((([[[([[[[[[(([([(([[((([[[[[([((([[([([[[[[[([([(([(([[([((([(((((((((((([[([([([[([([[((([(([[[[([[([([[(([([[[(([(((([(([[[(([[(([[((([([([[[[[[[[([[((([[[(([([[([((([((([(([[[([[[(([[([(([([[(([([([[([(([[[(([[([[[[((([[[[[([([((([([([[[([[([([[[([[([([[[((([(([([[[[[([([[[[[[([[([[(([([[([([([((([(([(([[([((([[([[(([(([[(([[([[[(((([(([([[(([([([([([(([(([[[[[(([[[[((([[[[([(([([[(((((([[[[(([[(([[([([(([(([((((([([([[(([(([[([(((((([([([[([[[[[[([[(([[[[[([[(([[[[[([[([(([[([([([[[[(([(((([[[(([[[[([(([([[(([([(([[[[((([[([([(((((([(([(([((([[[[([[[[[([(([([[((([[([([[(((([((([[((([([[[((((((((([([(((((([[[[[[((((([[(((([[[[((([[[[[[[[[(([[([[((([[([(([[([([[[(((([(([(([[(((((([(([([((([(([(([[(([(((([[[([[([[[[(([([[(((([[[(([[[(([[(((([[[([[[([([[([([([([[[[((((([([(((((([([(((([([(([(([[(([([([[[(((([([(([[(((([((([(((([[[[((([(([[((([[[([([((([[(([[[[(([[[([[[[[(((((([(((((([((([((([(([[([(([([[[([([[[([(([([[(([((((([[([(([([(([(([[[[[(([[(([((([[[([(((([[(([[[[[[([[(((([((([[[(((([([(([(((([((((([(([([[([[(([([((([[[[[[[(((([[(([((([[[(([([(([([[(([([((([([((([[[(([[(((([[[([[[[([[([[(((((([[[[[(([([[[([[[(((([[[((([[(([(((((([([[(([[([([[((([(([((([[([[[([([[((([[([((([[[[([([[[([[(((([[[([[((([(([([[([[[([(([((([[(((([[([([[(([[[[[([[[([([(([([([[[[((([[[[([([([[((((((([[([([([(([[[[[([(([([((([(((([[[([[[([[[[[(([[[([((([([((((([(([(((([((([[([([([(((([([(((((([[[[[[((((((([[((([[[[[[[[[[(([[(((([[[[[[[(((([([[([[([[(([[((((([([(((([[([[(([[(([([(((((((((([((([([((([[([(((((((([[[[[(([([(([[([[[([((([[[[[[[[[[(([([(([([[[([([[((((([[[[(([(([((([(([[[((((([[[[[(([[[[(([((((((([((((([([[[(([[([([(([[[[(([[([[[([[[((((([([[[[([[[(((([[([(((([((([[[([(([([(((([[(([[((([[((([[(([([(([([[(((((([[[[((([([([[(([([(([[[([([([[[[[[[[[([[[([[(([([[(([[(([[(([((([(((((([((([[[[((([(([([((((([([([((([[[([[[((((([[(([[(([(([([(([[((([[[[([(([(([(([[((([[([[(([([(((([([[([((([((((([((([([[[([[[[[((([[[[([((([[([((([((([((((((([[[[((([([(([(([(([[[((([[([[(([((([(([([(((([(([((([[(([[(((([(([[[[(([[((([((([(([(([[[([([[[[[[((([[((([(([[((([[[[[[([([[([[([((([(([[([(([[([[(([[[[[[([((([([([[[[[([[((([([(([[((([([((([((([[[[[[((([(([([[[[([(([([(([[([([[[[[[([[(([(([[([((([[[(([(([[[([[[[(((((([([([(([([(([(([([[[((([(([([(((((([[[((([(((([(([(([[(([[([([[[(((([[[[([[[[([[([(([[[[(((([[[[[([[[((([([[[(((([[[[[[([([([(([((([([[([(((([([[([([[([(([(([[[([[(([[([[(([([[[[[([[[[[[[[(([[((((([([(([[[([[(((([(((([([(((([([[([[[[[[([([[([((([[[[(([[[[[([([([(((((([[(([[((([([[[([(([[(([((((([([((([((([[[([(([[[[[[[([(([[[[([(([[[[([(([([([((([[([(([((([(((([(([[[([[[([((((([[[[(([(([[[[[(([[(([([(([([[([[([([([[[(([([([[[([[[[[([[([[(([[(([((([(([[([[[[[[[(([[((([[[[[[(([[[(([((([[[((([([([[[[[[[([[[([[[[[(([([[(([[(([(((([[[([[[[[[([[(((([([([((((([([[([(((([[[[([([[[([[[[([([([(((((([[(([(([[[([(([(([([[((((((([([[([((([(([([((([[(((([([[(([[([([[([([[(([[[[([(([([[[[[([([(([[[(([[[(([[[[([(((([[([((([(([([([[[[(([([[[([([[[((([[([[([(([[(([[([((([(([((([[[([[[([[[[([([[[[(([([[[((([([(((([([([[([[[[(((([[(((([(([([(([([(((([[([[[(([(((([[([([(([[([[[(([((([[(((([([[([[[([((([[(([([([[[((((((([(((([(([[[([(([([[([[[[(([[[([[[[[([[[[[(([[[[[(([([([((([((((([([((([[((([([[(((([[[[[[[[[[[([[[[([([(([([([((((((([([[([[(([[[([([(((([([(((([(([[([[(((([([[[([([[[[[[[[[[[(([([[([([[(([[(((((([[[[[([([[[([[[[([[[[[[([((([[[([(((([([([[[([([(([([[((((([[[[[([(([(([((([((([((([([([[[([([[[([[((([[[([([(([([([([[[([[((([((((([(([[([([(([[([((([([[(([([([[([(([[(([[[[[[[[[[([([(([[[(([(((([((([(([([([[([([([[((((([[([[[[([[[([(((([[(((([([([(([(((([[([[([[[([([([((((([[[[[([[([([[((([[[([(([[([((([([(([([(([([[[[([[(((((([[(((((([([[[([([(([[[[[[[[[(([((([([[[([[([[[[[[[[((([([[[[([[[[(((([(([[([(([([(((([([[[[(([(((([[[([((([[[(([[([([[[(([(((([[([[([([[[([[(([(((([[[([([[([[([[[(([[([[[([([[[[(([([[[[[(((([[(([([(([[((((([(([([([(([([([(([([([(([([(([[[((([[([[((([((([([((([([[(([(([[([([[[[[([(([[[([(([((((([([[[[[[[([[[(([(([[([[((([[[[[([[[[([[([([([[[(([((([[[(([[[[[((([((((([[[[([[[[(([[[[([[[([(([[[[[([[[[(([[[((((([([[([([[([[[[([([(((([(([(([((([([(([(((([[[(([[[[[[[[[(([[[([[[[((([([[(([[[[([[(([[(([((([[((([[[((([(((([((([[(([([([[[[[((((([[([([([[[[[([[[(([[[[(((([([[(([[[(([([[[[([[[([[[(([(([[(([[(([(((((([[[([([[[[([((([[([[[[[[[[([(([[[[[[[[[[[[[[((((([([([([[((((([((([(([(([[([([([[[[([[[[([[([[([[[(([[[[((([[[[((([[([[(([([[[(((([([[[[[((([[([[[[([(([([([[[[(([[(([([[[[[((([[(([[[((([([((([([[([([(([[[([(([[[((([(([([([(((([(([([[([[([[[[[[[[((([([[[[([([[[[[(((([[([[([([[((([[[([([([(((([[([(([[[[[[[[([([([([[([(((([([(((([([[[[[([[[([(([[((([[[[([[[[[((([(([(((([(([([([[[([((([((([(([((([[[(([[([[[[[[[[((([([([[[[[((([[[[([[((([[(([[([[[[[[((([[[([[((([(([[[[(([(([(([([[([([[(([([[([[[[[(([([[([([[[(([[[(((((([[(((((([(((([([([[[[(([(([[[(([(([((([([([[([(([((((([([(([((([((((((([[[[([[([[((([([([[[((((([((([[[[([((([[(([(((((((([([([((([([[([[[([([([[(([(([[[[([[[([(([(([([(([[(((((([((([([([([[[[([([[([[[[[[[[(([([([[([(([(([[(([([([[[([((([(([([(([[[(([[[([(((((([((([(([([((((([[([(([([[(([(([(([[(([[((([[[([([[[[[[(((([[([((([[[([([[((((([(([[[[[(([([[[((((((((([[[[[[[((([(((([[(([[(([([([[[[(([[((([[([[[(((([(([([[((((([[[[((([[(([([([(((((([(([([([([[((((([(([([(([[[[(([(([((([(([[[[([((([(([[[[(([((([([[(([[((((([(([[[[[[[(([[[([(((((([(([((([[[(([([([((([((((([(([((([([[(((([[(([[((([[[(([([([((([([[[[[([([([[([[[[(([(([(([(([[(([(((([([(((([[[[[([([[([[[[[([[([[[([[[(([[[[(([((([[[(([([[[([([[([[[((((((([[[([((((((([([[[[[(([[([(([[([[[([[(([([[([([([([[[([([([[[((([[[((((([[([[[((((([[[(([(([[([([[[(([(([(([([(([([((((([[[[[(([([[(([(((([((([([([([((([[([([(((([[([[([([[([[([((([([[([[[((([((([([[[[[(([((([[([([[[[[[[([[[([[([(([([[(([([[([(((([[[([([([[[[(((([([([[([[(([[[[[[((([[([[[([([([((([[([[([[(([[[((((((((([([[([(((([([(([([([([[([(([([[(([([((([((([(([[[((([[[[[[[[[[([(((((([[(([([([((((((((([[([([([[(([[[([[[(((([[(([([([[[[[((([[[[[[([(((([[[([[[(([[[([([[[[(([(([((([((((([(([[([[[[[[([([([[([[[(([([[[(((([((([[[[[(([(([(((([([[[([[[((([[([(((([[[([[[[[[(([[[[[[[((([(([((([(((([[[[[[([[([(((([((([[([[(((([[([[([((([[((([(([[(([[([([([((([[(([([[([([[[[([(((((([((([(((([[[[[(([(([(((([[((([([((([([[[[[((([[[[(([[[[(([[(([([([((([[[[[([((([(((([[[([(([[[[([[(([[(([[((((([[((([[(([([([[[[[[([[[[[([([[([[[[[[([([[([(((([[[[[([[[[([[(([((((([[[(([[(([[([([([((([([([[(([[([[[[[([([([[((((([[[[(([[[[(([[(([[([([[[[[[([[[[([(((([[[(([[([[[([[(([[[([((((([[([([[([(((((((([([([(((((([([[([[((([[[(([[[([([([([((([(([(([[(([[[[([[[[(([[[([((([[([[([([[[([[([((([[(((((((([([((([((([[([[(([(([[[[(([[(((([(([([(([[([[[[(([([((([([[([[([[(([[(([[[(([([[[([([(((([([[((([[[(([(((([([[[([([([[[[(([[[[((([(([([([([[([[[[[([([[([(([[[([([([[(([[[([[(([(([(([([[[((((([[[[[[[[((([([[[([[(((((([(([(([((([[[[[[[((([[([[[([(((([[[(([[([(((([((([(((([[[(([[([[([(([([[([[(([[([((([([[[([[[[(([(([([(([([((([[([[[[(([[[((((([(([[[[[((([(([[[[([[[[(([[(([([(([[[([((([[(([([[[[[[(([(([[([([[(([[([(([[[[[[[([[([[[(([[[[([[([[[[[([((([[((([[([[([([([([[((([[([((([([[([[([((((([([[([([[([[((([((([[((([(((((((((([([([([([(([((([[[([([[[([[[[[([[([([([([([([[[[[(([((([([[((([[([[(([([(([([([[[[([(((([[(([[[((([[((([[[[[([[(([([(([((([[((([[(([([([[(([([[[([([([(([[(([[[([[([(([(([[[[[[[([([([[([((([[[[[[[[[[[[[(([(([[((([[([[[[[[[[[([([(([([[([(((((([([((([[[([[[[[[(([(([[([(([[(([[[(([([[[([[([(((([([[([[[[((([([[[[[((([(([([[[(([[([[([[([[([([([[[(((((([[[[[[(((([[(([(([([[(([(((([[[[[(([[[([((((([[([[[(([([[[[([([[[(([[([([([(((([[([(([([[([(((([([[[([((([(([[[([[([[[[([(([[[[([[([[[[[(([[[[(([([[[[([[[([[[[[((([((([([[([([(([(([([[(([(([[([[[[[[((([[[([[[(([[((([[([[[([[([[([((([[(([(([(([[(([[[[([[((((((((([[[(([([[[([[([([([[([([[[([([([(((([([[[[[(((([[([(([([([[[(((((([([[([([([([(([[[[([[[[(((((((([[[[([([([([[[([[[([[[[[(([([[[[([[[[[[([([[[(((([(((((([[[(((([[[[(([(([[((([[[[[([[([[((([(([([([[(([(([[(([([([(([[[[[[[[[[[(((([[[[[(([([[([[[[([[[[([([([((([[[[[([[(([(([((([[([[((([(([[(([[[((((((((([([[[[[([[((((((([[([[([[[([[([([((([[([(([([[[([([(([([[([([[(([([[[([((([(([[[(([(((((([([((([[([[[((([((([([[([[((([([([[[[[[[[([(([[([((([[([((([([[([[[[(([[(([(([[[[([(((((([[[(((([[[([[([((([([([([[[([(((((([(((([[([([((((([(([([([([((([((((([([[([[([([(([[([[[(([([((((([(([(([[([(((([[[[[(([[(([[([[(([(([[[[([[([([[([([(((([[([([([([[((((([([(([([(((((([[[([([[([(([(((([(([(([([[(([(([[[[((((((([[([[[[[[((([((([[[[(([([[[(([(((([(([[[(([([(([(([([[[[([(([([([((([(([([([[[[[([[[([(((([([[([(([((([[[[(([(((([((([([(([[([(([[[[((([([[[(([([(([(([(([([([[(([((([([(((([[([((((([[[(((([[([([[[(([[([(((([[[[(([([[([[([([[[(([[([(((([((((([([([([[(([[([[((([[[[[[[[[[[[[[((([[([[[(([[[[(([([[([[(([[(([[(((([[[[[([[[[([([[([([(([[(([[[([([(([[[([[[[[([[[((([[([[((([((([((([([[[((([[(([[[([[([([[(([([[[[((([[[[(([[[[(([[[[[[[[(([[[([[(([([(((((([[([[[([([[[([([([[[(([([(((([(([[((([[[[(([([((([([[([[[(([((((([[([([([[[[([[[([(([((((([[([([[[([((((([([[(((([[[[[(([((((((((([(([([[[([[[(((([([[([[([([[[((((((((((([([[[[[(([([[[([[([([([([[[[([([[[[[[[[[([(([[[(((((([((([[([[(([((([(([([(([[[[((((((([[((([([(((((((([([(((([(([((([[([[[(([[(([([[[[[([([[([[[[([[[[([([([(([[([([((([[(([[([[([[[([[([([(([[[(([(((([[(([[(([(((([([[[([([[(([[[[((((([(((([[[(([([((((([([(([((([[[[(([((([[[[([(([([([[([([(([[[[([[[([[[([[([[([([((([((([((([([((((((([[(([[[([[[[((([[[(([[([[[[[[((([[(([[(([((((([([([[([[(([[([[[[[[[(([([([([([([[([((([[(((((([[[([[[[[([[(((([([[[[[[[[[[[[[[[[[((([[(((((([[(([((([[[([[([([([[((([(((((((((([[([(([((((([[[([[[[[(([([[((([(([(((((([[[[[([([([([[([((([[([[([[[([[[((([[(([((([([((([[[[([[(([((((((([(((((([(([([([[([[(([([[((((([([[[([[([(((((((([[([(([[[((([[([(([[[[[([([(([[[([[[(([((([([(([[([(([[[([[(((([[[(((([([([([[([([[([(([([([[([[([([[[[(((([([([(((((((([[[((([[((([([(([[[[((([[(([[[(([[[([[[((([([[([(((([[[[([[([[[[[([[[([[[((([[[([((((((((([([([([[[[[[((([([((([[[[[(([([[([(([[[[[(([[(([((([[[[([([[[[([[([[([(((([[([[([[[[([([(([[(([(([([[(([([((([([((([[[(((([[[([([([[[[[((([[(((((((([([[([[[[([[[[[([(((([[([([[[((([((([[(((([([[([([((((([(((([([([(([([([((([[[[[([(([[[([[(([[[[[[([[[([([[[((((([[[[[[(([([([([[(([[((((((([([(([(([[[(([[([[[((([([(((((([[([(([[[[([[[[[([[(([[([[([((([[(([(([[([((([[[([[[((([(([[(([[[((([([[(((([(([(([[[[([[([([((([[[[[([[([(([((([([[((([([[[(([[[([[(((((((([[((([([[((((([([([([[((((((([[[([(((([[[(([(((([([([(([[[([[[[[[((((([[([[(([(([[[[[(([[[([[([[[([([[[[[[([([(((([(([[(([[[([((([[[[(((([(([((((([([(([[((((([[[[(([([(([[[(((([[[([[([[([(([[([[((([([([([[[[[([([((([[([[([([([[([[[[(([[(([((([((([[[([[(([[[([[[[([[(([[(([([[[(([[((([[[[[[((([((([[[[([[(([(([([[[[[[([(([[([((([[(((((([[[[[((([([(([[(((([[([(([[([[([[([((((([[[(([[[[(((([([[[[[[[(([[(([[([(([(([[[(([[(((([[[[((((([((([([((([[[([(([([[((([[[[((([[[(([[[[[[[(([([[[[[(([[[[[(([([[(((([[([[[([[[((([[[([([([[[([[[([([([[(((([([((([[[([([[([(((([[([(([([[(([[[([[([([([[(([([[[[([([[[([[([[[([([[[[[[[([([[[[[[([[([(([[([(([[[[([([[[(([[[([((([([([(((([((((([((([[([([[[([[([[[((((([([([(([(([(((((([[[[[[[[([[([([([[([[[(((([(((([[[(([([(((([[[[[([[([[[([[[([[([((([[(([([[(([[[(([[([(([[([(([[[(([([([([([[(([([[[((((((([([[([[([[([[[((([[((([[[[[[([[[[[[[[[([[(([[[([[[[([([((([[((([[[[[([[([([[(((([(((([[([(([[[([[(([[[[(([(((([[[[(([[([([([[[([[[[([((((([[([([([[[[([([(([[([([[[[[[[([((([[[([([[[[[(([(((([[[(([[[[[[[([[[(((([[[[([(((([([[[((([([([(([([[([[(((([([[[((([[[[(([[([([[(((([(((([([[[[((([([([(((([([[[((([([([((([[([[[[([[(((([[(([(([[[[[(([[[(((((([[([([(((([(([[[((([[(([[[[[([[((([((([([[(((([[(([[(([[[[[[[(([((([([([([([[([[[[[((([[(((([[(([(([((([([([[[((([([[[[([(([([(([[([(([[(([([([(([([[([[([[[(([((((((([([([[([[([([[[([[[[([([((([[([([[[[[[(([((([([[([[([[[[[([(([([([([([([(([([[(([[[[([[[[[([[[([([[(([[([((([[[[([([[[([(([[([[((([([[[[[[[([[[[((([[[[[(([(([((([([[[[([[([([[[(((([([[[[(([([[[[[[([(((([(([((([(([[[[[([([(([([([(([([[([([[([[[(([[[[[[(([[([[[[[([([[[((([[([[(([[[([[(([([[([([[(([[[([([((([([([([(([([[(([[[([([[([(([([[[([[([(([(([[[((([[(((([(([((([[([[([[[(((((((((([[((((((((([[[(([(([((((([[[([(([(([([[[([([[[((([([[([(([[[(([[([[([[[([[[[[[(([([(([(((([[[[[[[[[[([[[[[((([((([((([[[[(((([[([(([([(((((([([([[(([[[([[[([([[[(([([(([([[(([((([[[([[(([[([([[[[((((((([[[(([[([[((([((([(((([[[[([[([(([[[(([[(([[[((((([[[[((((([(([[((([([[([([[[[([([[((([[[[([[[(([[[[[((([[(((((([[[[[[((([[([[([([[(([([[([([[([[((([([(([([([([((([([([(([(((([[[((((([([([[[[([[[([[[(([((((([[[[[([(((([(([[[[[([[((((([[([([[[((([[([[[[(((([[([[([([((([((([[(([(((((((([([[(([[[[([[((([[[[[(([[(([[[[[[([([(([[((([[([[[([((([[[((((([((([[([(([([(([[[[([[([(([[([[[[([((([([[[[((([([([(([(([([((([([[[[((((([([(([([[[([[(([[([[[([[([([(([[((([[(([[([[([[([(((((((([([[[(((([(((([([(([([[([[([([([[[[[(([(([[[[[[[((((((([[((((([[((((([(([([([([(((((((((([([(([((([([((([([((((((([(([[[[[[(([(([[((([(([(([[((([([[[(([([[(((([[[[[[[((([[((((([[[[(([(((((([[(((((([(((([(((([([(([(([[[([[[([([[(([[(([[[((([[(((((([[[([(((([((([[[[((([(((([[([([(([[[(([([[[([([(([[[[([((([[(([((((([[[[((([[[[([(([([([[([([[[[[[([[([[((([[((([([([((([[([([[[[[((([([([(((((([([(([[([(([(([[[(([[([([[[([(((([[([([[(([((((([([((([([((([[[[(((((((((([([((([([([[([[(([[([(([[(((((((([[([([[[(((((((([([[([[[((([([[[[([([[[[([(([(([[[[(((((([[[(((([(((([(([([[([([([[[([[[(([[[([[(([[[([[[((([([[([[(([([((((([([(((([[([[((([([[([[[([[[([(((([[([[[((([[([[([(([([[[([[(((([([(([(((([([(([([([[[[[[([([([[[([([[([[[(([[[([(([[[(([([[([([([[[([[(([[(([[[[((([(([[(((([[[([[([[[[([((((([[(([([([([(([([[(([(([[[[[(([[[[([([(([([[[(([([[(((((([([[[((((([((([([(([[([(((([[[([([(((([[([[[([[(([[[[[((([[([(([(([[([([([([(([([[[(([[([[[[[[([(([(([([[[[([([[(([[[[[[([(([([[((([[[(([[([(([[[[((((([(([[(((([(([[([((((([[((([([(([(([([[[[(((((([[([((([((((([([(([([(((([[((([(([[((([[[[[((([(([[(([[([([((([(([[(((([[(([([(((((([([[((([(([[[[[[[(([(([[[[([([[(([[[[((([((([[[[(([([[[[([[((([[[[((([([[([[((([[[([(((([[((([[[(([([([[([[([([[([([(([(([[([[[((([[[(((([((([[[(([[[(([([(([([[[[(([[[([((([[[([[([(([[((([[([[[([([[[[[(([([[[[[([[[([((([([(([([[[[(([((([([[([[((([((([([([((([[[[[([[([[(([(([[[([([[((([([[[([(([[([[[(((([[([([[[(((((([([[([[[[[[(([([([([(([(([[(([([([((([([[([((([(((([[([([([(([([([[(([(((([[([[[(([[((([((([([[[([([([(([(([[([[[(((((([[[[(([[[(([[[(([(((([([[[([(([[[([(([[([([(([[([[[[((((([([(([(((([[(([[[(([[([[[([([((([([([[((((([(([[[[[((((([([[((([[[([[[(([([((([(([((([[([([([[([(((([([((((([[([[([(((((([(([[[[[[[[[[[([(((([(([([(((((((([[[(([((([[((([[[[(((([(([([(([[(((([([[([[[([[([[([(([([(([[[[([[[([[([([[[(([(((([((([[((([([([[(((([([([([([([(((([(([([[[(([([[(([[(((((((([[([([[[[[[[[[[([[(([[(([[(([(([[[[[[[[[[([[([[([[[([([[(([([([[[[[[([([[[[[(([[(([[[[[([([(([([([[([[([((([[(([[(((([[[((([[([[(([[([[(([((([([(([([([[[([[([[((((([([([((([[([((([[[((((([[[[((([[[(([(([([((([[[[(([[[([((([[[(([(((((([[([([[([((((([[([([([[([[(((([[[[([[[[((([([(((((([([[[(((([([[[[[[(([[[[((([([[[([[[[[[[([[([(([[[[[(([([(([[((([[[[[(([([((([(([(((([(([[[([(([[[(((((([[[[(([([[([(([([([[[((((([[[[(((((([([[[[[(([(([([([[(((([([[[[((((([[((([([[[[[(([([[[[[[([([((((([[[[([[([[[([(((([[([[((([[(([[[[(([(((((([((([[[[[([((([([((([[[([[((([[([[([([(((([([[[[(((((([[(([[[[[([((([([([((([([[[(([([(([[(([((([[([[(((([[([(((([[[(([[(((([(([(([[[[[(([[[(([[([(([[[[(([([((([[[([[[[([(([(([[(((([(((([[[(((([([([[[(([[([((([[([[([([[([[[[[[([((([[[(([[[([[([[([[[[([((([([[([([(([[(((([[[(([[(([([[(([(([(([(([[[[([((([((((((([[[[[(((([(([(([[[([[(((((((([[([[[[(((([[(((([((([[(([([([[([([[([[[([[[(([[[(([[[([[[[[(([[[((([(([([([(([[([[((((((([([(((([[[[(((([[[([[[[((([[((([([[[(([([[[([[[((([(([([(([[((([[((([([((([([[(((((([[([[[[(((([([((([[[([(([([[([[[[([[[[((([[[[([[([((([[[([([[((((((([[[[([[[[[([(([[[[(((([[([((((([([([(([[[(([[[[[([[(((([[[(([(([([([[([([[(([(((([[(([([(((([([([([[([[([[[([[([([[[([[[(([([[[(([[((((((([[(([([[[(([[[[[[[([((([(([([(((((([[([([[[(([[[((([[[([(([[[[([[[(([(([(((([[([([[([[(([(([([[([[([[[(((([[([([([[[[((([[(([[([(([[((((([([[(([[(([([((([[[[[[[[[([[[[(([[(([[[[([(((([(((([([[([[([[([[((([((([([[(([[([(((([([[[(([([[(((((([[[[([[((((([[[[([(([(([([[[[[(([((([[[[([[(([[((([([([[[(([([([(((([(([[([[([[([[[(([([[[[[[(([[[([[[([((([((([([((([[((([[(([[[(([[[((((([([[[[[((((([(((((([[(((((([(((([([[[(([[(([[[([[[((((([[[(((([[[(([((([[[([([((([(([((([[([(([([([[[([((((([[(([[(([(([[((([(([[([[((((([[([((([[[[([([([([[([[[[[[[(([[(([((([(([[[[([([[(([((([(([[[[[[(((((((((([[[[([[[[([((((((([[([[(([([[[(([([((([(([(([[[[([[([([([([[([[(([((([[([(([(([((([[(([[([(([[((((([[[([([(([(([(([(([[[[([(((([([[[([[([([([(([[(([[([[(([([[[[[[(([([(([(((((((([[([[([[[[[([([([[[[((([([[(([((([[[[([[[([((([([((([[([((([[[([((((((([[[[([[([[[(((((([([[((((([((([(((((([[([(([([(([([[[[(((([[[[((([([[[[[([((([([[(([[([[([([([((((((([([[[([[(([[[(((([(([[(((([([[[((([[(((([[([([([[[[([([(((([(([([[(([[[([[(([(([((([(([[[([[([([([[[([(([[([(([((([((([([(([((([(((([[[[[[([(((([[[([([(([(((([(([(([[[((((([((([([[[([(([[([((((([[[([[([[[([([([[[([(([(([((([([[[[[[[[(([((([([([[([[([(([[([([(([(([[[([[(([([([([[[([[[(((((([([[[(([[([([[[(([[[([[([[((([[(((([[([[([[[[[(([[([[[[([([[(([([[[(([([([[([[([([(((((([(([[[[[([(([([(([(([((([([[(((((((([([([[([(([((([((([([[[([([[[[[((([([([[((([([([[[((((([[[[[[(((([([([([[[[[[(([([([[[([([[([[[([[[[(([[[[(([[([(([([([([[[([([[[([[[(([[([((((((([(([[([((([([[((([(([([[([[([([[[[[([(((([[[([[[[[[[([[((([[((([[((([[([[[[((([[(([[(((([([[[[[[[(([([[([[([((((([[[[(([([([([([[([[([([[(((((((([([[[(([[((([[[([[[(([[[((((((([([[([([[([([(((([([((([([[((([([[((((([[[((([([[[[(((((([[[((([[([[(([[[[((((([[(((([((([[((([([((([([([([[[[((([([[[([[[[[([(((([((([([[[[([([[([[[([[[(([([((([([(([([([(([((([((([[[[([[(([[[(([[([[[([[[([([([(([(([(([([((((([(([[([(([[((([[((((([[(([[[((([((([[(([[((([[[([(([([[(([([([[((([[([([(([([[[((([[[[[[(([[([(([([[((([[[(([[((((([([[([[[((([(((((([([(([([([((((([((([((([((([[((([((([[[[[(([([[(([(([[(([([((([([((([[[(([(((((([[[([((([[[(([[[[[(((([((((((([([((([((([([[(([(([([[[[[([((((([([(([((([([([([[[((([([[(([[(([[[([[(([[([[([(((([[(([[([([([[[((([[(([((([([([[([[[([[[[[([[[[(((((([(([((([([((((((((((([((([([([(((((([((((((([[[([(((([[[([[[[[[(([(((((((([[[[[([([[([[((((([[([(((([([(((([(([[(([[(([[[[[([(((([[((((((([(([([[(([[[([[(([((([[[((([[(([([[(((([((([([[[[([((([[[(([[[([((([[[[[[([(([[[((([[[((([([[[[[[[[(((((([[([[(([[(((([[([(([[[[([[[[[([[[[[(([(([([(([([[(([[[(([((([[[[[[[([((([(((([[(((((([[((([([[[[[[([[(([([[((([[(([([((([([[((([[([[(([[([([([[(([[[(([([[([(((([([[((([[[[[[(([(([([[(([(([([[[[([[[([[[(([[[[([[([[[((((((([([([([[((([[[[[((([[[[([(([(([[([[([[[([((([((([([[[[[([[([([[([((([[([([([[[[[(([[([([([(((([[[([[[([([([(([([([([[[([[([[[((([[(((([((([[(((([[(([[(((((((([([[[[[[([((((([[[[[([([([(([[[[[(([[(([[(((((([(((([[[[[[(([[[([([[([[((((((([([[[((([[[[[[[([([([[[[[([([[(([([[[[([(([[[(([[[[[[([([([[[([[[[([[([((([([[(((([([[[([[[([([([[[[(([(([(([[[([[([(((([[([[[([[[(([[[[(((([([([[[[([[([(([([(([((((([[((([([[((([((([([([[((([[(([[[[((([[[[[([[([[(([[[([([[((([((([[[[[([([[[[(([([[[(([[(([[[([[[(([[[([[[[([[[[((([[((((([([[([([((([([[[([[[((([(((([[[[[(([(((([(([[[([((([[(([[(([[([[([[[[[[(([[[([[[[[[[[[[[[[([[[[[(([((([(((([(((([[[[[[([(([[[((([[[([(([(([[[(((([(([[([([[[[([([[([[[[[([[(([[[([([(([[[[[[([[[([[([((((((([[(([(([([[[[(([([([(([[[[[[([[[(((([((([[([[[([(([([((((([[[[([([[((([[[[[[[([[[[(([[([([[(([[([(([((([([([[[([(([[([[(([[[[[([((([[[(([[[([([([[[([[((((((([([[([([(([[[[(([[([(((([[[(([[([[[[[[((([[((([([([[[((([((([[(([[[[((((((([[[([([((((((([[([((([[[([[[[[[[[[((([[([[[(([([[[[[(([((([[[(((([[([([(([((([(([(([[[[([(([[([(([[([[(((([[[(([([[[[[(([[([[([((([[[(([(((([[[(([([[[([([[[([[[((([(((([[(([[(((([(([((((([[[[[((([(([[[([[[[((([([(([[(([[(([([(([[[[(([[[([[((([[[([[[[(([([[(([[[(((([([[([[[[((((([([[([([[[([[(([([[[([([[(([([([[([([[((([[([(([(([[[(((([(([[([[[[[[([([[(([[[(([[((((([[(([[[([(([[([[[[[(([[([([[(([([[[([(([((([[(([[(([(([[(([[((((([([[[([([[((([([([(([[[(([([[[((([(((([(((([[[([[(((([[[[[[[[([[(([[((([[[[[(([((([([[[[[((([[([(([(([[[[(([((((([[([[[([[((([([[[[[[[[[[[[([(([[[[([[([[([(([((([[([[[[[([([[(((([((([[(((([(([(([[[([((((([(([(([[((([[[([([([(([[[[([[[[[[[[[[[[[([([[[[((((([((((([([([[(([(([([((([[([(((([(([[(((([[(((([([[[[([(([([[(((((((([((([([((([[[[[[[[[([[[([(((([[(([[(([([[[[[([[([[([(([(((([([[(([[[([(((([[[[([([[[((([([[[[([([[([([([[[([(([[([([[[((([([([[([[(([([[[([([([[[([[[([((([([([[[[(((([((([(((((([[([([[([([([[(((([[(([([[[(([[((((([([([((((([[[([([([[([((([[((([[((([[(((([[[[([[[((([[[([((([((([[([[([[([[[(([([([(([((([([[[([[(([[([([[[[[[[[([(((([[([[[[[(((([(([[[([[([[[([([([(([(([([[[[[((([((([(([[[([(([([(([[[[([[[[([([([([[[([[((([([[[((((([(((((([([(((([[(([((([[[((([[[[[((([([([[([[[((((((([[([[[[([([((((([[[((((((([[[[[[[([(([([((([[[(([[(([[([[[([[[([([[((([([(((([[[[([[[[([[[[[(([([[[[(([([((((([[([([[([[([[(((([((([[([(([(([[[([[(([(([[([([[[[(((([((([[[(([(([([[((([(((([((([(([((([(([[[(([[([([[(([([[[[([[(([[[(([[[[[(([[(([[[[([([[([[[[[[((([[[[([([([[[([([[[[((([[[[(((([([(((([[[(((((([[[[[(([[[(([([[[(((((([[([([(([((([(((([[([([(((([[[[(([(([((([(([[[(([[([[[[([([([[[((([[([[(([[[[([[[[[([[(([([[[([[(([[(([([[[(((((((([([(([[((([[([[(((((([[[[[[(([[[[[[((([([[((((([(([[((((((([([[([[[[(([[[[([[(([([(([([((([[((((((([([[[[(([[([([[(([[[[[([(([(([(((([((([[[((([[([([(([[([(([(([([[[(([([[([([[[[[[([([[[([[([([[[[[[(([[(([(([[[[([([([(([(([([[[(([[[[[[([[((((([([([([[(([[(([([[[[((((((([(([(((([[[[([([[[([[[([(((([(([((((([([[(([[(([((((([([[(([[(((([[([(([((([[([(([([[[[[([([((((([[[[[([(([[[[[((([[[[(([((([[[[[[[((([[[[[[([[[[[[((((([([(([[[[([(([[((([(((([(((([[[(((([([[[(([((([[[[(((([(([[[[[[[((([(([([([[[(((([([([((((([[[([((((([([[([([(([[(([([((([[[[[([[[(((([[([[[[[([([((((((([[[[[[((((([([[[([(([[[[[([[([(([([[[[([[((([((((((([[(((([([([[([[([(([[([(([[((([(((([((((((([[([[([([[(([(([(([[[[[((([([[[[[[((([((([[([([[[((((((((((([([((([[[([(([(([[([([[[[[([[((([[[[([[(([((([[(([[([[[[[[((([[[[([(((([[(([[(([[[[[[[[[[([[((([[(((([(([[([([((([((([([([([([((([[(([[[[(([([[[[[[[[[[((([([(([[[([([([([[([[[([(((([([[[((([((([(((([[[[([[([(((([[([([[[[([[(([[[[(([[[([([([([((((([(((([(([[[[([(([(([[((([[[[(([(([[((([[(((([[[((([(((([([[([((([[([([[([[([[(([[([([[[((([[[([[([(([[(([([[([([((([([((([(((([(([[((([[(([[[(([(([[(((([[[[(((((((([(([[[([([(((((([(([([[(([[[((((([[([[([[[(([((([(([([(([[((([[[([[[([(([[[[([([(([[([([[[(([([[[[[[([([[(([[((([[[([(([[(([([((([(([([[(([(([((((([(([[[([(([([[([[(((([(([[((([([([[(((([([[[[[[[([([[[([[([((([((((([(([[(([[((([([[[[([[[([((([([([(([[[[((((((([[[[[[[([[[([([([[[((((((([[([[[[[[[([[(([(([[((([([[(([[(([(([[([[[([(([((([((([([[[[[[[[[([[[([([([([([([([[[([(((([[[[(([[[[([[[([((([(([[[([[[[[([[(([[[((([[[(((([(([[[[(([([([[([[((((([[[[((((([(([(([([(((([[((([[([((((([[(([(([[([((([[([([[[(((([[((([([[[[[[[[(([[([(((([[(([[[[([[([[[(([([(([([(([[[[[[[[((([((((([[[[[[(([[((((([[([([[(((([[(([[(([[([[((([([[(([((([[([[([([[[[[([(([(([((([(([[[[[[([[(([[(([(([[[[(([[[[[(([((([[[(([(([[[((([[[[[[[[[(([[[([([((((((([[[([[[[[[(([[([[(([([[((([((([[[(([[(([([([[[[[[[([[[[[[((((([[([[(([((([[[([([[[[(((([[[[(([[[(([([[[[((([([[(([([[([[([[[[[([[([[[(([([([[[(((([[[([[(([[[[[[(([(([((([(([((([[([[([(((((((((([[[(((([[[[[([[[[[[[(([[[[([[[[[(([(([([((([[([[[(((((([[(([[(([(([([[([[(([[[[(([([([([(([([[[[[[[([((([[([[([[((([(((([[([(([([[[([(([[(([((([[((([(([([[[[[[[[[[([[([([[[[(((([[(((((((([(([[[(([((((([[[(([[((((([[([([[(([[([[([(([[[[(([[[[([[[[([([[[[([[(([[[[([[([([([[[[[([[[([([(([(([[(([([([([[[[[([((((([[[[([(([(([[(([[(([((([([[[[(((([((([[[((([([(([((([((([([[[[([(([((([((([(((([([((([[([[[[(([([[[[(([[([(([([([[(([[[(([[([([[[((([[([[[[(((([([(([([([[[[([([([(([([([[([[([[[([[[[((([[([[[([([(([([[(([[((([[((((([(([((([(((([[([[[(((([[([([([[([[(([[[[[([[([[([([([([([(((((([[((([[([[(((((([(([[[[[(((([[([([[[([[(((((([(([[([((([(([[([[[((([([[[([([(([((([[[[(([[[[[((([([((([([([(([([((([[(([[[((((([(((((([[(((([([((([(([[[(([[([([([[(([((([[(((([(((([[((((([([[([([[(([[[((([[[[(([([(([[(((([[[((([[([((([[([([(([(([(((([[[[[([(([([[[[[[(([((((((((((((([(([[((([[[[([[(([[((([[[((([[[((((([[[[([[(([([(([[([((([([[[([([([[[([([([([((((([((([[((([(([[[([((([[([([([([[([([[[[([[([[[[([[(([(([[((([[(((((([([[[([([[[[([(([([[([[((([[([(([[[(([((([[[[[[[[[[[[(((((([[([[[(([[[([[[[[[[(((([[([[([[[[([[([[[[[(([[(([[[((([[[((((([([[[[([[([(((([(([[([[((([([([([[(([([([[([[[[([((([[([[[[((([[[[[(((((((([[[[[((([([((([[[([[(([[(([[([([[(([[[[[([[((([([(([(([(([(([[([([([[([((([(([[[[(([[[[[([[((([[[((([(((((([[[[[(([(([([[[([([(([[(((([[[(([([(([(([([[(((([([[(([[(([(([[((((([[[((([[[[[[[((([[[[[([(((([(([((([[((([[([[((([[([[[([((([((([((((((([[[([[([((([[[[[([([([[([([[((([[((([[[(((([[[[([[[((([[((([[([[[(([((([([([(([(((((((([([(([[(((([[[(((([[[([([[((([[[(([[((([[[([(([((([[(([(([([[([([[[(([[([[((([[[([([[[[[[[(([[[([(([[[([[[[[[[(((([[([[[([[[([((([([([([((((((((([([[([([([([((([[([[[([([([([[[((([[[[(([[[((([[[[[([([[([[[[([[(([[((([([([([[[([([[[[[[[[(([[([(([([([(([([[([[[(([[[(([[([([[(([[([([[[([[([[([([[(([([([[([[([(([(([([((([[[([(([([[[(([((([[(([[((((((([[[[[([((((((([([[([(((([[[[[[([((([([[[[[[((((([([([(([((([((([([[[[(([(((([[(([[(([[((([[([(([((([([[[([([([([(([[(([[[[([([[[(([([[[([((((([(([([(((([([(([[([([[((([([((((([([[[((([[[[([[(([(([[[[[[([[(([([([((([[((((([[[[[(((([([(([[([[[[[[([(((([((([[([([[[[[[(([(([(([[((([[([([(([[[[[[[[([([([(([(([((([[([(([([([[([(([([([((([(([[[[[[[[((([(([[[(([[[[(([([([[(([[(([[[(([((([[[([(((((([[(([(((([[[[([[([([(([[[[(([[[[([(([[[(([([([[[[((([[(([(((([(((([([((([(([([[[[([(([[([[[((([[([([[(((((([([(([(([(((([([((([[[((([[(([[([[([[([[[([([[[[(((((([[([[([(([([[(([[(([[[[([([[([(([[[([([[[[([[(([[([([(([([([([([(((((([[[[(((([[([[[(([[[((([[[[[([[[[[((([[[(([[[(([[[(([([([((([(((((([[[(([[[(([[[([[((((((((((((((([[([[((((((((((([(((((([[((([[[((([[[[(([[(((([(((([(([[([((([[[(([[((((([[[([[(([([[[[((([[[[[(([[[[[(([[[([((([([[[[[(([(([((((([((([[[[[([[(([([[((([[[[[((([([[[([[[([[[([[([[[(([[[[[[[([((([([[[[([([[((([([((((([[[(([[((([(([[[[(([([[[[[[[[[[[([((([[((((([([(((((([(([([[[(([[[[[(([([[[([([((([((([[[([[([[(([[[((((([(([[((([([[[([[([((((([[[[([([[((([(([([[[[(([[([((([[[[[[([((([[[(([([((((([((([[([[[([[(([[((([[((([((([(([[([[[(((([([[([[([([[[([[[[[((([([([([((([(((([(([[[[(([[([([[([[[((([([[([[([[([(([([[[([([(([[[[[[([[[([([((([[(([([([(([(([(([(([([(([([[((([((((([[([[[[([[[[(([([[[([([[[(([[[[([[[(([([[((((((([(([(([([([([([([[[([(((([[[[(((((([(((((([[(([[[[[[[[(([([[([([((([(((([([[[([[[((([[[[[[([[[[(([[((([[(([[[[[(((([[((((([([([([[((([([[[[((([([[[[([[[(([([([[[([(((([([[[[[(([[[(([[((((([([(([[[[([([[[[(([([[([([[((([[[[((((((((([[[((([[[[[(([[[(([[[[[[([[[[([[[((([[(([[(([[(([([[(([[[[([(([[([[[[(((((((([([[[([[([(([[(([([([[[[[(([[[[[([([[([[(([([[([[([[((((([[[(([((((([(([[[[((([[[([(((((((([[[[([([[(([[(([[(([([(((([[[[([[((([[(([([((((([(([[[(([([[[(((([(([[[[([(([[((([[(((([(((((([[((([([([[([[[([[[[[[[[[[(([[((([[[[(([([(([[([[((([([([([[(([[([[[([([([[((((([([[[((((([[[[([[[([([[([[([([[[[(([([[[[([[(([[([[([[(((((([(((([((([[((((([(((([([[(([[[(([[([((([([[([[[([[[[([[[([([[[[(([(([([[[[((((([[([([([([([[[[[[((((([(([(([[[[[[([[[([(([([[[((([[(([[[[[[([([[[[((((([[((([((((((((([(((([[[([[(([[[(((([[[[[[((([[[((((([([[([[(((([(([([[[[[[[[[(([[[[[([([[([(((((((([[[[[([([([[([(([[[[(([([(([([((([(((([[[([[((((([((([[[[([(([(((((((([(((([[[(((([[(([((([([(([(([[[([[([([([([((([([[([([([(([([[([[[([[((([([[[[[[[[((([((((((([(((([([(([[([[[[([[[[(((([[(([[[(([([[[((([(([[[[[[[([[[[[[[([([[(([[([(((([(((([[[([(([[(([[[(((([(([(([[([[([[[[((([(([[[(([[[[(([([[[[[([[((([[(([[([(([(((([(([([[[([[[([([[((([[[([([[[[([([([([[[[([[[((((((((([((([([((([([[[[[([[[[[[[[[[([((([(([[(([([[[(([([((([[([[(((((([([((([([[[[[[[[([([(([[([((((((([[[(([[((([[((((([([([(([[(((([[[([((((([[([[[(((([[(([(([[(([([((([[([([[(([([[((([(([([([(([[(([(((([[([(([[[[[[[[[(((((([[[([[[(([(([[([[([(((((([([(([(((([(((([([(([([[[([((([[([(([[(([[(([((([[([[[[([([[[[(((([[([[((([[[(((((([[[[[([(([([(([[[([([([([[((([[([[((((((([[[[[[[((([[[([[[([[[[[([[([[[[[[(([[(([([(([(([([[[[([([[[[([[[[([[((([[([[[(([([[[((([[[((([[[([(([[[(([[([([(([[(([[(([[((([[([(([((([([([[[[(([[[([([[[[([[[((([[[[([([([(([[(([(([(([[[([(([([([(([[[[(((([[[([([[[[(([((([((([[[[[((([[(([(((([(((([[[(((([[[(([([([[[([((([[[([[([([[[[(([[[([[[([[(((([[[([(([([[(([((([[[((((((((((((([((([([[[([[[([[[((([([(((((([[[([([([[([([((([([[[[(([[[([(((([[[[((([([(([[[[([[((((([((([[[([[([([([(([([[[[([(([(((((([[[[[([[[([[([[(([[([[[[[[([([([([((((([([[((((([[[[(([([([((([[(([[(((([[((([[[[[[(([[([([(([([([[[([((([([[([(([[(([(([(([([(([((((([[(([[([[(((((([((([([(([[([((([[[(((([([([([([(([([[[(([[[[[([[([[((([[[[[([[(([((([([([(([[([[(((((([[[[(([([[[(([[([([[[[[[[[([(([[([((([[[[(([((([([[[([([[[[([[[(([[[(([(([[[[[[([[[((([((([[[(((((([[[((([[((([(((((((([((([[[([(([[[[[[[[[[[(([[(([([[(([[([([(([(((([([[[(([[(((([([(((([(([[([[[(([[[((([((((([[(([[[(([((([(([(((([[[([((((([[(([([[[[((([([[([[[(([([[([[([([((((([([[[[[((([((([[(([([(([((((((([[[[(([[([(([[((([[([([([(([([(([[[[([([[((([([[[((([(([[(([([[[((((([[([[(([[[[[[[[[[([([(([([[[(([((([(([[([(([[([[((([([([([[[[([([([[[[([(([([[([[[((([((([([[([[((((((((((([([[(([((([([((([[[((([([[[[[([[([[[[[((([([[([((((([[(([[[[([([[[[(([([[((([[(([(((([((((([[([[[([[([[((((([([[(([[[((((([[[(((([([[([([(((([[([[[[[[([[([[[[(((([[([([[((((((([[(([([[[[((([([([((((((([([((([[[[([((([([[[([([([[[([([((([([[[((((((([([[[(([[(([[[([[((([((([([(([([[(([([[[[([[[([((((((([(((([([((([[[[[(([[[[[[([[[([[(([[([[[(((((((([[(([([((([([[((([([((([[([([[(([[([[([(((([[([([((([([(([(([[[(([(([[(([([[([[[[[((([(((((([[[[[[[[[([(([(((([[([[(([[([[[[[(([([[([[([[((((([([([[((([((([[[([[((([(((((((([(((((([(([([[[[[(([([([[[[[(([[([(([[([[([[[[([[([([([[((((([[[([([([[([((((((([[[[[[(([(([[(([([[([[((([([([[[([[[([[([[[[([(([[(([([[[[[[([[[[[(([[[(([[[[[[(([(([(((((([([((([([[(((([([(([[([[(([(([([(([[(((([(((([(([(([([[([[[[(([[(([(((([[[[(([[([[[((([([[(([[(([[[((([([[((([([[[[(([([((([((([([[(([[[([(([[([([[(((([[((([[([([(((([[(([[([[([[[([[[[((([((([[[((([[[((([[(([[[([[(([[[[([((((((([[([[([[(([([([[((([(([[[[(((((((((((((([[([[([(([([([[([([[[(([[[([[(((([[[(([([(((((([([[[[[[((([([[([([([([[((([[([[(([[[[([([[[[([(([[([[((((([[(([[([([(([([[(([[[[[[[((([[((([[([[[(([[(([([[[(([[(([[[([([[[((([([[[(([([[[([[[[[[[([([(([([[(([[[((([((([[[(([[(([[[((([(([([(([([([[(((([[[[((([[[[[[(([[(([([[(([[((((([([[[([(((([(([[([([([[[(([((((([([(((([(([[([(([([[([([([[[(([([([[([([([[(([([[[[[[([[[([[[(([((([((((([[[(([[[[[((([[(([(([(([[[([[((([([(((([[(([[(((((((((([[([[(([[(([([(([((([[([[([([[[(([([(([(([[((([([([[(([[[(([(((([([((([(((((([[[((([(([[[[(([[[(([(((([(([[(([([([(((([([[[[[[((([[[(([[[([[[[[(((((((([([[[(([([[[([[[[([[[([[(([(([((([(([(((([[[([(([[[((([[([[(([(([((((((([((([[[[((([(((([((([([[([[[[[[([([[(([[[[([(((((((([[[(([(([((((([([([[[[([([([(([[[[(([[([[(([[[[[([((([[([(((((([([[[[[([[[[((([[(([([([((((([([[[[[([[[[([([[[(([[([([(((([[[((((([[[((([[[[[([(((([[([([([([([([[[([[(([((([[[[(((([[((([[[(([([[[[([(([[(([[[[([([(((((([([(([(((([[[[([[(([[[[(([((([(([[[((((([(((((([[[(([[([([([([[(([[((((([([[[[([([[((([[[([[[[([(([[[[((([[((([[(([[([[[[[[([[([(([(([[[(((([(([((([[[(((([((([[([(([([[[[((([[[(([[[([[[[([[[[[[(([[([[([[((([[((([[[[[[([([([([[(([[[[([([[([((([([[[[(([([[([[[[([[([([[[[[[((([(([[[[([(((([((([(((([[[([[(([[([(([[[([[[((((([[[[([(([[([(((([[[[([[[[[(([[[([((([[[([[[[[([[(((((([(([([[([[[([[[([[((((([(([[[((([(([[(([(((([[(((((([[[([([[[(([((([[[[[([(((([((([(([(([[[[[([([[([([[[[[([((([(([([([(([(([(([[[[((([(((([([[(([[((([[[[[([([[[([[[[([[(([([[[[[((([([([[[[([[[[[([[[((((([[(((([[[(([([(([([[(([[[([(([[([([[([(([((([([[([([[(((([([[([([[[(([[([[(([(([((([([([([[(((((([[[((((([[([[[[[(([([([[([[([[[([([[([((((([((([[(([(([[(((([(((([[([((((([[((((([((([([([([((((([[((([([([[([([[(([(([[([((([([[[[(([[[([(([[([((([[[[[([[([([[[([([((([[([[([[((([([([[[([([([[[([(((([([[[([([([((([[[(((((([[((([[[((((([(((([[([([(([([(([[(([([([([[((([[((((([[(([[([(([[[[((([[[([[[[([(([[(([((([[[[[([[([[([[([(([([[[(([[([[(([([[[[((([[[([[(([[((([(((([((((([[(((((((([[((([([[[(([[([(([[((([[([[[([([[[(((([([([([([(([([([(([[(((((([([[[[([[((((([[(([([[([[(((([[[[[(((([[[(([[([[([(([(([[([[(([[((([([[((((([((([([([((((([[[[(([(((([([((([(([(([[[[[([[[[[[([[((([[[([([[([([((([(([([(((((((([[([([([[[((([([[(((([[(([((([((([([[[[[[[(([([[((([([(([([[(((([([[([[(((([([(((([[[[[([([[([((([(([[(([[[([[[([(([[([(([((([([((((((([[[[([(([((((([([[[[(((((([[([([(([([[[(([[[[([(([((([([[[([([[[[(([[[[([[(([(([([([([[([(((([[((([([[[(((([([[[[[(([[[([(([([([[[(([([[(([[[[(([(([(([([[(([((((([[[([[([[(([[[([[((([[([[[([[((((([[(([((((([([[(([[([[[[(([[[[[(([[((([[([[[((((([[[(((([(([([[[(([((([((((((([((([[([[(([[((([([(((([[([[[[[[([((([([[([[(([[[((((([[(([(([[[[((([[[([([([[([[[(((((([[((([([[[[(((((([([([(([[(([(([((([([[[([((([(((((([[[[(((((([[[[[([[[[[[([(([([[[[(((((([(([((((([([[[[([((((([(([[[[(([[[[((([[[[[(((((((((([(((((([((([(([(([([[[[[[(([(([[[((([([[[[[[[[((((([[((([[[[([[(((([(([[[[([([[([[[([[[[[[[[[([[[[[((((([[(([((([[([[[((([[([([(((([([([([[([[([([(([([[((([[([[[([[([[[(((([((([([(([([([([(([[([[([[([([(([[[(([[[([(([([[[[[([[[[((([((([([[[[[(([[([[(([([([[[(([[[[[(((((([(([([(([([((((([(([[(([[([([[([[[(((([[[[([([([([[([([[[([[([[(([[([([[(([[(([([([[(([[(([([([[[[(([[([([[[([[[[[[(([((([[([[[([[[[[([[[[([(([[[([([([([[[[([(([(([(([[[[[[[([([((((((([[(([[[([[([[[[(([[(([((([([[[([[[([([((([[[([(([((((([[([((([([([[[[(([([[[([[([[((([[((([(([((((([[[([[[(((([([[[[[[[([(((([([([(([[([([[[([((([[([[[([([((([[([[[([(((((([([[((([([[((([[([(((((([[(([[[[[([[(([(([(([[((([[[[([[[(([([[[((([[([[(((([[((([[(([[(([[([((([([([[([([(([([(([(((([(([([(([((((([[(([[[(((([(([[([([[[(([[[(((([[([(([(([[[([([([[[[([([([(((((([((([[(([[([(([(([[[(((([([[[[(([(((([([[((([[[((([[((([[([[[[([((([(([[([((((([([[([(((([[[[[[[(((([[[(((([[([[[[((([[[([[[[[([[([[[([[[([[[((((((([[([([[([(([[[[(([(((([((((([[[[[[[([([[((([[[[[([(([(([[[[([[(([[[[[([[[[(([[[[[[[([(((([((([[[[[[([([[[([([((((([[(([[[[((((([(([[[(([([[[([[((([(([[([(([([([([([((([[(([[(([[[[([([(([[([[[[([([([([(((((([([(((([([((([([[[([[((((([((([[[[[[[[(([[(([([(([[[(([(([([[((((([((([[[[[[([([[(([(((([(([(((((([([([[([(([(((((([(([[[[[(([([[[([[[[[[[[[([[([(((([[[(([((((((([(([[[[[[([((([[[[[[([([(([(([(([[(((((([(((((((([[([((([[([((([(([[(([[[([([(([[[([[[([[(([[[[((([[((([(([[((([(((((([(([[[[(([([([([[([[([[[[[((((([[([([([[[([(([(([[(((([[([[((([[[([[[(([[[(((((([[[([([[[[([[([[((((([([[[((([[([([(((([[[[([[([(([[[[(([[[([(([[(([([[(([[([[[((([[(([[([(([[([([(([([((([[[([[((([((([(([[[[[([[[[([(([([(((([[(([[[[((([[([(([([([([(((([([[([([([(([([[[([([[[(([((([((([(([((([[[([([[[(([(([[[([[((([(([(([(([[([(([[(([[[([([(([(([[[(([[(([[[([(([([[[((([[([[([[[[[(([(([[(((([[([([(((([[([(((([[[((((([[[([((((((([[([([[[(([[(([(((([([[((([((((([([[([[[([([([[([[(([[[((([[(((([(([([(([[(([[[[((([[((([(([[[[((([[([[[[[[([[[([[([(([(([[(((((((((([(([([([[[(([[[[[[(([[([[(([(([([[[(([(((((([(([([[[([(((((((([(([(((([[[[([(([([[[[[[[((([[(((([((([[(((([(([(((([(([(((([(((([([([(((([([([([([([(([[(([[[[([[[[[((([([[[([[[(([[[[[[[[[[([[[((([(([[[((((((([([[[(([[([(((([[[([((([[[[[([[([((([[(((([(([[((([[([(([[[([([[(([((([([(((([[[(([([([(([[((([[((([(([[([([[[[([([([[[(([[[([([(((([[[[([([[[[[[(((((([([[[(([((([([(((([[[((([[[[([[[[[(([[(([([[[(([[[[[((((([[[[([([[[([(((([[[(([[[[[((([([([(((((((([((([[[([[((([[([[[(([([[[[(([[[(((([([([[[((([((([[[(([[(([([[([(((([[([[[[(((([[(([[([([([(((([[[([[((([(([[([[((([[((((([[[([((([(([[[((((([(([((((([[[(((((((((([((([[[([[[([([([[((([[([(((([(([(((([[[[([[([[([[[[([(([([([[([([[(([(([([[[((([[([[(([([[([(([(([[[([[[([[(([(([[([([((([[[(([([[(([([[(([([[([([[[((([[([[[[[[(([(([[([([([([[([[((([((((((([[[([(([[([[([[([(((([[([([[(([(([([[[(([((((([[((((([[[[[[((([([(((((((([[(([[[(([[[[[[[(([[((((([[((((([[[([[(([[[[[[[[([([([(([[([[[[((([(([[([(([[([[[[((((([(([(((([([[((([[[((([(([[[[[[([[[(([[(((((([[((([([([[[[(((([[[[[((((([(([[[[[[([([(((([[[[[[([(([([([[[[[([[[[(([[[([([((([((([((([([([[[([[((([[[[([(([([[((([[([[([([[[[([[[(([(([(([([[[((([[[((((((([[[([([[[((((([[((([([([(([((([([((([[[[(((([([[[[[[[[[([((([((([(([[[([([([([[([[[[(([[[[([[([((([[([[((([([([[[([([[[(([[([[((([[([[((([([((((([([([[[[(([[[[([((([([((((([[([([[(((([[[[[[(([[[[(((([[[[([((((([([[([([[[([([(([[[[([[((([((([((([[([[((([([(((([[[((((([[[([([[((([[(([[[(([((((([(([([([[[[([[[[((((([[([(([[[((((([[[[(([[[[[[[[[([([[[[([[[[[[[[([(([((([([((([([[[([[([((((([[[[[[([([[([[[([[((([[[[[([([[[[[[(((([[([[[[(([[([(([[[[[[(([[[[[([([((([[[((([([([(((((([[[(((([[[(([[([[[(([[([[([([[(([[([(((([(([[[((((([[[(((([[([([[[[[([[((([(([[((((([[([[[[([[[(([([[([([[([[([[[[[[[(([([[[[((([([([[[((([(([[((([[[[([([((([[[(((((((([[[([([[[[[([([([([[[[(([[(((((([[([[((([[([(([([([[[[[[([[[[[[[[([[[[([[[[[([[([[([(([[[([((((((([[[[(((([[(([(((([[[[([([([([([[[([[[[[[((([[(([(((((([[([([[[[[[[([(([[((([([[(((([([[[[[[[(([[[[([[([[([(([[((([(([([((([[[[([[[([(((((([[[(((([((((([[(([([([[[((([(([((((([[([[[[[((([(([(([(((([((([[[[[([[([([(([([[([[[(([[([([[([([(([(((([[([[[[([[[[[[[(([(((([([(([([[[(([(([[(([[[[[[[[((((((([[(([[[([([[[[(([(([[((((([([[((((([[([([(([([[([[[(([[[[((((([([[[[[([([[([([[[([[(([[[((([([[[(([(([[[[[((([(((([((([[(([(((([(((([[[[[[(([[([[[[[([([((([(([([[((([(([[([([[([([[(([([[([((([[([[[(([[(([([[(([((([(([[[[([(((([[([[[[([(([(([([(([([[[(([[(([([((([((([(((((([[[[([([([([((([([[([([([([((([([([([[[[[(([[[[([[[([(([([(((([((([((([[[[[((([([((([(([[((([[(([([[[[[[([([(([[[((((((([(((((([([[[[([[([[[[[[[[[[([(([[([[(((([[(((((([[([[([([[[[[[([[[[(((([([[([((([(([((([(([[(([[(([(([((([((([[[([[([[[[[[([[((([(((((([(([([([([[[([[(([[([[[[[[[([((([[([[[[[(([([([([[([[(((([[([([[[(([([(((([[([(([([([[(((((((([(([((([([([[[([[(([([(([([([[([[[([((([([[(([[[([[([([(([([((([[[([([[[[[[(((([[(((([[[[[(([(([[((([[(([[((([[([(([[[[[[(([([[(([[(((([(([[[[[[[((([[[[(([[([([[([[[(([[([[([[(([((([(([[[(([([[[[[(([[((([[(([([[([[([(([([([[(([((((([[[[(([[[[[([[[((([([(([[[[([(([((([([[((([[[(([[(([[([(([([[(([((([[([[([[[[((((([[(([[[[[[[(([([((((([((((([[[[([((((((([((([(((([[([[[([([[(([[[[[(([(([[[((([((([[((([[[([([[[([([[((([[([[[(([[[(([((([([(((([([[([[(([(((((((([([([[[([[[[[((((([((((((((([(((([[([[(([[[[((([([(([([((([[([[[[([[[(([[(((([(([[(([[[[[[(((([([[[([([(([[([[[([(([[((((([((([(([([[[[([([[(([([[([(((([([[((([[[([(((([[[([(([[[(([(([([([(([[([([([([(((([[[([[([[[[[([(([((([[[(((((([(([[[[(([([(((((([(([[(([([[[([[(([[[[(((([([[(((([[(([[((([[([(([(([[(([[(((([[([([((([(([[[[[(([[([([([((([(([[([[(((([[[[([((([[(([(((([(((([([[[[[([[((((((([[[([[([([((((((([(([((([(([[([[(([((([[((([[[([((([[([([[[[((([[([[[([[[[((((((([([[([([[(([([([[(([(([([[([[(([([([((((([[[((([((([[((([[([((([[([(((([[[[[(([[(((([[[([(([(((([(([([([([[(((([[[[[[([[[[[([[[([([(((((([([(([([[((([(([[[[[((([((([(([[[[([[[([([[[[([[[[(([[((((([((([[([([[([([[[[[[((((([(((([([[[([(([([([[[([[(([[(((([(([(([[([[[([([[([[(([[(([[[([(([(([[(([[([[[[([([([[[[[(([([[[([(([[((([(([[[([[(([([((([[[[([[([([([[[([([[[([([((([[([[[(([[([[(((((((((([([(([[[[[[([(([[(([([([(([[([[(([[(((((((([[[[[(([([[([[[([[[[(([(([((((((([([((([(([(((([(([([[([[[(([[(((([[((([([(([[((((([[[(([([([([([((([([((([[[(((([[[([[[([[(((((([[(([[[([([[[[[((((([([[[[([(([([([(([(([([(([[[[[([[[(([[[([[[[([[([(([[[([[[(((([(((([((([[[(([(([((([[(((([([[([[[[[[[((((([(([(([(((([[([[[[([[[[((([(([((([([(([([(([[(([(([[[((([[[[[[((((((([((([([([[[[(([[[[((([[[([([([([((((((([[([[(([[[((([(([[([[[[(([((((((([([(([[[([[(((([(([[[([[([[([[[[((([[(([(([(([[[(([(((([((([[[([[([(((((((([[[[[[(([[[((([[[[([[[([(([([[[([[((([(([[((([([((([[[([(([([[(([([(([(([(([((((([[[((([[([[[(([(((((([(([([[([(([([(([(([[[(([([(([(([([[([((([([([[((((([[([([([[(([[((([[(([(((([(([((((([[[([(([(([[(([([[[([[(([[([([[[[([[[[[[((([(([[[([[[([(([[((([[[(((([([[[[[([([((((((((([([[(([([((([((([(([([([(([(([(([([[([[[(((([[[([[((([([[((((([(([(((([[(([[([(([(([((([([(((((([((([((((((([([(([(([(((((([([[(([[([[([(([[([[[[[[([(((([[(((([[(([([[([[([([([[(([[[(([([([[[([[[[(([[[(([([(((([([(((([[([((([[[[([[(([[[[[[([([[[([(([[(([([[[[((([[[(([[[(([((((([[[([(([[[(([[([(([((((([([[(([(([((([[([[[(([([((([[([[((([[([([[(((([[[[[(([[[([(([[([(([(([(((([((([(([[[(((([([([([((([[([([[([((([([(([(([[[(([[[[([([[[([([(([([(([([([[([[[([[(([[[((([((([((((([[[(([[[[((([([[([[(([([[[[(([([([[([(([(((([(([[(([([((([[(([[(((([[[(([[[([[(((([([([[([[[[[((([(([[([[[[[([((([[[[(([([[([((((([([[([((((([[[([[(([[[[[([(([[[(([[[[([[[[([[[[[((([[(((([[(((((([([[([[([[([[(([(([(((([[([([[[[([[([([([[[[[[[((([[[[(([(([([(([(([[([(((([[(((((((([[[(([[[([(([((([([([((([[(([[[[([(((([[([((([([([[([(((([[(([(([[([[([[([[((([(([(([(([[[((((((([[[[(([[[(([[[(([([[[(([[([[([(([(([((([(([[((([([(([[([[([[[[[[[(([[([[[([(([[([[(((([([([([([[[(([([([[([([[[([([[([(((([[([([[([[([[(([([((([[(([(([(((([((([[[([([[[([[(([[[[([[([[(([(([[[[[[[[((([[[([[([([[[[(((((((([[(([((([([[(((((([((([[((([([([([([([[[((([((([([(([[([[[(((([[[[[(([[[([(((([(((((((([[[([[(([([(([[[[((([((([((([[[[(([[([[([[([(([[((([[([(([(([[[([[([((([[[[(([[((([[((((([(([([([((([(([(([[([(([(((([[[((([[(((([[([([(([(((((((([(([(([[([[[[([[([((([[([[([[[[(([([((([(([(([([(([[[([[([[([[([([([[([[((([[[[(((((((((([[[([(([([(((((((([[[[[[([(([([[[[([[[(([[([[[([(([[[([([[[[[([(([[[([[[((([(([[([([[((([[([([[((([[[([[[([[([[[(([([[[(([(([(([[[[[([([(((([[(([[(([[([[[(([[(([[([[([(([[[[[([[(([[[[[(((([(([[[[([[[(((([((((([[([([([[[[[[[(([([[[([([(((([([[([((([[[[[([((([[[(([([(([[([([[[[[[[((((([([([([([[[((([([([[[(([[(([[[(([([[(([(([[([[(([[((([[[([(([[(((([((([(([[(((([((((((([([((((([([[[([([(([[[[[[([([[[([(([[([[[([(([(([(([[([([[[[(([([([[([[[([[[[[[[[[[[((([[[(([[(([[(((([([(([[[([([[[[([[[(([([(([[(([[((([([((([([[[[((((((([[[([((([[([(([[[[(([[[[([[((([([([[((([[([([([[([[[((([[([(([(([([[[[[(((((((([[[([([[[([[[[((([([[([(((([[[(([(((([[(([[([[((((([[[([(([[((((([[[(([[([([(([[[([[[[[[((((((([((([([((([[[([([(([([(([([[[([(((((([[([([(([((([(([((([[[([((([(((([([([[(([[((([(([[([([[[([(([[(([[([([[((([(((([[[([(((([[([[[((([[[[((([([([[[[[[((([([[([((((((([([[[(((([(((([([([([[([[([(([(((((([[[(([((((((([((((([(([(([[([([(([[[[[[[([[(([[[[[(((([[[[(((([([([[[(([([([[[(([[[([[((((((([([[[[([([([[([([[([((([([(([[[([[((((((((([(((([[[((([[([([([[[((((([(([((((([[[([[([[([[([((((((([(([[([[[([[((((([[[([[[[[[[[(((((([[((([([[[[[([([((([([([[([(([([([(([[(([([[([[[[[[[([[(([[[([[[[[([[[(([[[([[([(((((([[[(((([([(([(([(([(((([[([((([([[[[([[((([[[((([[((([[([[(((([([([(([(([[[[[[[(([((([[[(([([[([((([(([[(([((((([(((([(([([(([(((((([((([[[((([(([[(((([([[(([([([[[[(([[(([([(([([[(([([[[[[(([[[([([([[((([((([([[([[((([(([[([[[[((([[[([([([[([[[([[[([((([((([[[(([([([[(([[([[(([([[([(((([([[(([([([[[((([[([[[[[([[[([([([([(((([(([[([([((([([[(([[[(((([(([[(([[[[[[[([([[([[[(((([(([[((((([[([([([[(([[([([([[(([[[[([(([(([(([[[([([(([[[[[([[[[([[[[((([[([([[(([(([[([[((([((([([[[[([([([[([[([[[((((((((([(([[([(((([[[([(([[([[((((((((([[([(([[[([[[[[[[((([[([(([[([[[[(([[([[[[[[([([([([[[[([(([([([[[[([[(([((([([[([(([(([[(([([[[([([([[([[(((([[(([[[[([((([([[[(([(([([[[([[[[(([([([[(((((([(([((([[(((([((([(([[[(((([([([[([[[([[(([[((([[[[[[[[[(([(([[([[[([[[(([(((([[([[([[((([[[((([((((([(([[(([[[([[([[[[([[([(((([([([[([(((([[[[((([([[[[([[(([[([((([[(([[(([([[((([[[(([((([([[(([([[(([([[[([([[([[[[[[[[([(((([([(((([(((([(([([(([[[[([([((((([(([(([[([[(([([([[[[[((([[((((([[[[[(([[(([[(([[[(((((([([([([[[([([([((([([[[(([[([(([[([(((((([[[[([[((([([([([([[[([([[([([[((([[(([[[((((([[(((((([([(((([[[([[[(([[[([[[([([([[(((([[(([[[[([(([([([[([[([[[[[((((([[[(([[[([[((([[([([((((([([[((([((([((((([([([(([(((([([[([(([(([((([[[[([[[([([((((([[(([([([(([[(([[((([([[[([[[([[([[((([([[(([([[([[(((([([[[[([[[((((((([[(([(([([(([([[([[[((((((([[([((([(([(([[([[([[[[[([([([((((([[[((([(([(([([[([(([([([(([[((((([([[[([[[(([[(((([[((((([([(([[(([[([[(([(([([([[(([(((([([[[[[([[((((([(([[[[[(([[[([((([((([([[([(([([[[(([([(((([[([[([[[[([[([[([(([([([[[([((([[(([([(((([[[[(((([[[[([[([([((([((([([(([[[[(([[[[(([[[[[[[[([([[[(([[([([[(([[(([[(([(([([([((((((([([((([[([([((([((([[[[[[[(([(([([[(([((([(([[([([[([(([[([[([([[[((([[(([[[(([([([((([(((([(([[[((([(((([[[(([((((([(([[[[[(([[([[(([(([[[(([(([[((([[([(([([((([[[([((([[([[[([[[(([([([([(([[((((([((([(([[((([([(((([([(([((([[[(([(([([(([([[(([[[[([((((([([([[[([[(([([[((((([[[[([((([[[[([[[([[([[([[([((([([[[[[([[[([([([(([([[[(([[[[([((([[((([(([([([([[[([[([([[[[[([[[((([([(((((([[([[[((([[[[((([(([[(([[(([[[[[[((([(([([[(([(([[[((([[[([([([([[(([[([[((([([[((((([[[(([((([(([[(([[[([[(([[([[((([[[([([[([([[([[([([([[([(([((((((([[[[(((([[([([([[((([((((([[([[[((([[((([[(([[((([[([[([([[[[([[[([[[[[[[[[[[[[[[(([(([[(([[(([[[[[[[[[[([(([[([([([([((([([((([[([((([((([(((([[[[([([(((([[(([((([([((([([[[[(([[[[([([(([((((([([([(((([[([[[(([[[[(([[([([[[[[[[([([[(([[([[((([[([[((((([((([([([[[([(([[(([(([(((([[[([([[(((([[([((((([[[[[[(([[[((([[[[([((([(((((([[[([([[([((((([([(([([([([([[([(([[[(([(((([[([[(([[[[([(((([[[[(([(([(([[[([[([[[((([[([[((([(([([([[[[([([[(([(([([([([([[((([[[[(([[([([[([[([[[(([([((([[[((([[[([([([([([(((([[([(([((((([[[[([[((([[(((([[([[([[([[(([[((([[([([([([[[[([[[((([([[((((((([[[[([[((([([[[([([[(([(((((([([[((((([([([([(([[[(([[([[[([(([(((([([[[[[[(([[[(((([(([(([[[[(([(((([[([(((([[([([[[([([([[(((([(([[(((((([[[(([(([(((([(([[[[([[(([(([(([[[[[[([([[[([(([[(((([[[[(([[[([((([[[[(((((([(([([((([[([([([([([([([(((([(([(([(([(((([(([[(([(([[[[[[[([([[[[[[[(((([([[[((((([(([[([[[[[(([[([[[(((([(([[[[[[([([(([(((([[([[(([[[[([[[(((([([[[[[([[(([([[[[([[([([[[[(([[[([([[[([(([[[[[[(([([([[[[[((((([[(([((([(([([(([([([([[[[([[[[([[[(((([(([[([[([(([[([(([([([([[(([[[[([[[[[[([([([[(((([(((((([[[[[([(((([([([[[([[((([[[[[(((([[[([[([[[(([([([([[[(([[([(([[(([([([[[[[([([([(((((([[[((((((((([([[((([((([([([[[([[[[([[([[[[([(((([[[[(((([[[[([([[[[([([[[((((([([([[([[[[((([((([[[[(([([[((([[[([([[(([([[[([[([(((([(([[[[(([([([[((([(((((([([[[[(((([[[[[([([[([[(([([[((([[[([(([[[((([[[[([(((([[[([[[(([([[[[[[([[[[([([[([[[[(([[(([((([[([(([[([([([[[(([[([([[(([([((([[[([[(([(([([[([([[[(([([[[([[([[(([([[(([(((([((((([([([((([[(([([[[[(([(([(([(((([[[[(([[([[([[[[[[(([(([[[[((((([[([[(([([[([[([[[([[((((((([([[[([((((((((([[[[([([([(([[([[([([[[(((([([[[([[[([[(((([(((([[[[[[([([(([(([[[[[[[([[(([([[(((([[[([(([([[([([(([(([([[[[[[([[((((([[[(([[[([[((((((([[[(([(([(([[(((([[[[([((([(([(([([[(([([([[((((([[([([([([(([[([(((([[[[(([[[[[[(([[(((([[(([((([[((([[[((((([[(([([[[([[[(((([[([([[((((([(([(([((([((([[([[[[([[(([[[[(([((([[([[([(([[([([[([(((([([([[([(([[(((([[[([(([[(([[[[([([((((((([[[(([(([([[([[([[([((([([([([((([([([[[((([[[([[[([((([((([[[((((((([((([((([(((([[[([[[[([(([[[[[([([[(([[[[([([[[((((([[[(([[[[((([(((([([[[[(([[([[([([[(((([(([([(([[[([([[[([[[([([([[[[[(([([[([[(([[((((((([[(([[[(([(([[[([[[[([[([[([[[[(([[[[([([([[(([([[([[([([[([(([[((([([((([([[[([[[[[[([[[(([[[[([([((((([(([([[[(([(([(([([[(([[((([[[[[(([[([(([[[[([([([([[(([((([(([([[[[[[[([([([[((([(([[(([[([[[[(([[(([([[([([((([[[([[[[[[([([[[([[[[([[(([((([(((([[[[([([[([(([(([[(([((([((([(((([(([(([(([([[[[[(((([([[([[(([((([(([[(([[[[(([([([(([[((((([[[[[[(([([[([(((([([[[[((([([(((([([(((([[([[[[([(([[[[[([[[[[[[([[([[[([([[[[[([([([(([(([([([([[(([[[[[(((([[(((((([([([[(([[([[([[[[(((([([((([(([((([(([[([[[((([(([[(((([[(([[([[(((([[[[[(([[((([([(([[(([[(([[([(((([([[(([([((((([([[([(((([((([([(([[([(([(([([[[[(([[([[[[(([[[[[[[[[(([[([[((((((([[[[[([([[((([([[([[[([[[[((([([([(((((([(([[[[[((([[[[([([[[[[((([((([([[[([[[([([[(([(((([([((((((((([[[[[[([(([[([[(((([[[[([([([((([[((([[[[([(([(([([(([([[([([([[((([((((((((([[[[[[[[([([(([([((((([([([[([[[[[((((([(([(([[([[([([[((((([([[[[(([(((((((([[([([[(([([([[[[[[(([[[[[(([[[[[([((([(([(([([[[[(([([[([((([([[[[(([((([(((([[[(((([[(([((((((([([[[(([[[((([[[[([[([[[(([(([(([[([[((([[([(([[[[[([[(([[(([([(((([[([[[((([[[[((([((([[[([((([[[[[[([[[([[[[[[[(([(([((((([(((([[[([[((((((((([(([[([[([[[[[[[[(((([([([(([[(([([[[[((([([(((([([([(([([[(((([([[[(([[[([[[[([[(([([[([([[[(([([(([[[([(([[[[([[((([[[[(((([[[([[([[[([[[(((((([((([((((([[[[[([[((((([[[((([([(((([(([[[((((([[[((([([[[[[(([[[[[[([[[[([[[[((([[[([[[[([[[(([(((([[([(([[((([[[[[[[([[([[([(((([[[([[([[[[([([([[[[[([[[((([[[[[[(((([[((([[([((([[((([[((([([((([((([[([[([([[[[[(([[(((([[(([((((([([([[([[[[(([[([((((([[[([[[(([(([[[[[[([([[[[([([[((([[([(([[([([([([[[[[[[([([([[[[((([[(((((((((([[([[([([[([([[[([([(([([[[([[[[([[([(((([([([[([(((((([(((((([[[[[[[(([([[[[[([[([[[(([[([([[((([[([(([[[[[[[[[[([[([(([[([[[([[[[(((([[([[[[(([[([[[([[(((([[(([([((([[[[([((([[[((([([[(([[[[[[[[[[[[[[[[([[(([[(([[([([([((([((([[[(([[[(((([[([[[[(([(([([((([[(([([[([(((([[[[[(([[[[(((([([[([[([([[([(([[[[[[((([([[[[[([[[(([[[[[([([([[[([[(([([(([((([(((([[((([[[([[[((([[(([(([([[[[([[([([[(([[[(([[[(([((((([[([[[[([(([((([([[[[([[([[([(([[([([[([([(([[([[[[(([[(([([(([[([[[[[[([([[([[([(([[([([[[[[(([((((([[([((([[([(([(((((([[([[[[[[([([([(([([((([([([((([(((((([[(((([([(([[[(([(((([(([([[[((((((([([((([([[[((([[([[([[([([[((([([[([([[([[([([(([((((([(((((((((([(([[[[[[[[([[(([((((([((([([(([[([[[(([[([(((([[((([[[[([(((([[([[([(([(((([([[([(([[([[[[[([(((([([(([[[([[(([((([(((((((([[((([[(([[((([(((((([(([[([(([[(((((((([((([[[[[[[[[[([[([([([[[[[[[([([[((((((([([[([([([[((([[[[[[[(((([[[[([[[([([[[((((([[[(([[[((([([[[((((([[((([[[([[((((((([((([[[([([([([([[(((((([([([([([[((((((([[[[[(([[([(([[[(([([[([[[((([([[[[(([[[([[[[[[([(([((([[[(([[[[(([([([([([((((([([[([(([((([((([[[(([[((([[(([([([((([[(([[[([[(((([[((([((([[((([(([[[[[([[[(([[([[(([[[(((([[([(([[((((([[(([[[([([(((([([[([([((([(([[[([([[([[([(([[(([([([[[(((([([(([[[((([([(([(((((((((((([[(([[([[([[[([[[[[[[(([[([([[[([[([[(([([[((([[[((([[[([(([[([([(((([(((([[(([(([([(((([[([[[[[(([([[[[([[([(([[[[[([[([[[[((([((([([[[[(([[[[[[([[[[[[[([([([((((([(([[[[[[([(([[[[[([[(((([((([(((([((([([[([[[(([(([([[([([[[([([[[[[[((([[[([([[([(((((([[([[[(([[([((((([([([(([([([[[((([[[(([[(([((([[((((((([(([[([[[[[[[([[[[([((([([[[[[([(((((([([((([[[(([[([[[(((([[([[[(([[[([[([[[([[[([[[[[[([[(([[(((([[[[[([[(((([([(((([([([[[[([[[[[[([([([([[([(([[([([[[(((([[[(([([[[([([([([([[((([[[[(([[([([(([([([[[((([([[[([([((([[([([([[(([((([(([[[((([[[[[[([[(([(((((([[[(([([([((((([([(([(([[([([([((((((([([([([(((([([[([((((((((([([[[(([[([(((([[([(([(([[([([((([([([[([([[([[(([[[[([[[([([([[[(([([[[(((([(((([[[[((([[[([([([(([[[[[((([(([(([(([(([[([([[[[[[[([([([[(([[(((([[[((([[(([(((((([[([(([[((([[(((([[[[([[[[[[[([([(((([[(((((((([[[(((([[([([[[[[[([[([((([[[[[[((((([([[([[([[[[[([[[((([((([[(([[([[(([[(([([(([([(((([((([[((((([(([[([[[([([[[((([(([[[([(([[(([[[(([(((([[((((([[(([([[(([[[[([[[([[[([([[[(([[([[([([([[(((((([[([(([((([(([[([((([(([([(([[([([[[([([(([[(([[([((([[([[[[[[[((((([[[[([[(([[([[[[[([([[[(([[[([([[[([[([([[([([([(([[[([[(([(([[[[[(([((((([([(([[([((((([([((([[(([([([[[[[([[(([[((((([[([[(([([[[[[(((([(((([((([([[[[[[([[([([(([[[(((([[[[(([[([(([((([([[[[([([[[(([([[[[[[[[((([([([[[((([(([([([(([([([[[([[((([((([([((([([(((((((([([([[[[([[([([([[(([([[([(([[([([([([[[[(([[(((((((([[([[([[[([([(([[[[[(([[([((([[(((([([([[[[([([((((([([[([[[((([[((([([[[(([(((([((([[[(([((([([[(([([[((([((([(([(([[[(([[([(([((([(([([[[((([[[[(([[(([[[[[[([((((([([[([[[[[(([[[[(((((([[(([([([[[(((((([[[[[([[((([[(([([[((([[(([[[[([([([[[([((([([[(([[[[([[[[(((([([([([[[(([((([([([((([([([(([[([((([[((([(((((([(([(([([[[[([[([[(((([[([([((((([((((((([[[(((([(([([([[[(([((([([(([([([[[[[[((([[[[([([[([[[([[([((([[[[([[([[([[(([[[([[(((([[(([[[[([[((([[((([[[([[(([[[([[([(([[((([[[[[([[(([(([[([[((([[([([[([[[[[[[[(([((([((((([((([[([[(([[([([(([[[[([[[(([[[(((((([([[(([[[[[[[([[([[[(((([([[[[[[[([(([[[[(((([(([[[[[[[[[[([((([([[[([(([(([([([[([(([(([[([([(([[([[[[(([(([[([((((([[[[(([(([[[([[([(([[([([[(([[[[([(((([[[(([[(([[([[[[[[[[[([([[[([(([(([[(([([[[[([[[[((([((((([([[(((([(([[[[[[((([([[((([((([([([([[[(([[[((([[(((([(([[[[[(((([([(([(([(([[([[[([(([[((([(([[([[[[(((([[((([[[[([[([(((([(([[(((([([[([[[([((([((([([((([[(((([[[[((((([[([[(((([[((([[(([[[[[[[[([[(((([([([[([(((([([((([(((([([[((([(([[[[[((([([[[(([[[(((([(([[(([[[[[([[(([([[[[[((([[[[((([(([[(([[(((([[((((([(([[[([(([[(([(([([(([([[[[[[[[([[(([[[[([((((((([((([((([((([([([(([[([([[[[([[([[([(([(([[[([[[((([([([[([[([((([[(([[([[(((((((([[([(([[[[[([[([([[[[[[([([[[([(((([([([(([[([[[([[[([[([[((([([((((([([([([(([[(((([(([((([((([[([((([[[(([[([([([((([[[[([[[([(([(([[(((([[(((((([[((([[[[([[(((((((([([([([(([[[([([([[[[[([[((([[[([([(((([(([([(((([([[([[(([([[([(([([[[([[([(((([((([[[[[([[[(([(([([([[([[[(((([[(([((([([(([([[[[([([([([([(((((([[([[(([[((([[[[(([[([[[([[[[[[[[[[((([((((([[[[[([([[([([(([[([((((((([[([([(([([((([[(([((([[([[[([((([[([[([[([(([[[[(([[[[[[[([([[(([((([(((([[([[[(([([[([([[[((([[[[([(([[[[[(([[[[[[(([[([((([[[[[[([((([[([[[[([((([[(((([[([([[((((((((([(((([[[([(([[(((([([([[(([([([[((([[(((([(([[([[[(((([[[[([[[((([([[([([[([([[(([([([(([[(((((((([([([((((((([[([[([[[([[(((([[([(([((([[[((([(((((([[[(((([[([[[([[([[[[([[[[(((([([(([([(([[([([[[([([(([[[([(([([([([([([[(((([((([[([((((([(([[(((((([(([[([[[(([(([((([((([[(([((((([[([((([[([[[([[[([[[([([([(([(([[(([([[((([([[[[([[((([(((([(((((([[([((([(([([[(([([(((((([[[[[(([[([[([[([[[[[[[[[[([([[(([((([[[([([(([([[([([([([(([(([([(([([([[[[(((([(([[[[([(([[[[(((([([([[([[[[[[[[(((([[[((((([(([[[([((([[(([([([[[[((([[([((([[[[([[([(([[[[([[(([([([[[([([([([[[([([((([[(([(([[(([[(([(([[[[[(([[[(((((([[[[[[[([([([[((([((((((((((((([[((((([([[(((((([[([([([[[(((((([([(((((([[((([[([[[(([[[([[((([[[((([([((([([(([((([(((([[([(([(((([([(((((((([[((((([[([[[[[[[((([[([([(([[(((((((([((([(([[[[[[[([([[((([[([([[([[[(((([[([[[[[([[([[[(([([([(([[[[([(([[(([([[(([[[[((((([[(([((((((([[(([(([[[(([(([[[[[[[([[[([[(([([(([[[([(([[([[([[[(((((([(([([([[([(([[([(([[[[(([(((([[[(([[([((([([(([(([((([[(([(([[[[(([([[[[[([[((([([[(([([[[([([(([([[(([[[[(([[[([((([([([([([(((([[[[(([[[([([[((([[[(([([([[([[[[[[[([[[([([[[([((([(((((((([([[[((([((([[[([([[[[[[([([[((([([[[(([([(([([[[[([[[(([((([((([[[([(([[([([((([(([((([([([([[([[(([[[(([(([[([[[[([([[[([[[([[[[((([[(([((([[((((([[[[[[[[[[[(([[(((([(([([[[[[([[[([[(((([([[[([[(((([[(([(([(([[([([(([(([((([([[([[((([[(([([[[[([[[[[[((([[[[[[([((([[[[((([[[[([([[([((([(((([(([(([([(((([[[([([[[([[[[(([[(((([([[[[(([[[(([([[[[([[[[([[(((([[[(([[(([(((((([[[[(([([([[[((([[[([([[([[((([[[([([[([[(((((([[[[[([([[(([[[(([[(([[([[[[(([[(([([[[[[[[([([[((([([((([([[((([[[(((([[((([[(([[[[[[[([[[(([[[[[(([([(([(((((([([([[([[([[[[[[[([[([(([[(([((([([((([[[(([(([[[[([(([(([(([[[(([(([(([((([[[[[([[[[([([([[[[([([((((([[([([(([[([[(([[[([([(((((([(([([([[[[(([[([[(([([[[(((([(([[[[[(([((((([([[[[[[[[([([[[[[[[((([(([(([[(([[[[[([[((([[[[[[([((((([[[([([[(((([[[([[[(([(([(((([((([(([[[(([[(([[[([(([[([([(([([[[([((([([(((([([((([((((((([[[([[[([((([((([[(([([(((([[([[[([([([(([([[[(([([[(([([[[[[[([(([([[(([[(([([[((([((((((([[[(([([(([((([[[[[((([(([[[([(([([([[(([[([[[(([[[[[[[[([[[([[(([[[[[[(([[[((((([[[(((([(([[([[(([[[(([[(([((([((([([[(([([(([[([[([((([[((([[((((([[(([[([[[([[([([[[[((((((([[[[[(([([[([[([[[([(([(([([([([([[([(((([(([[[[([[([[([([([[([[[[([([[(([((((([((((([((((((([((([[[[[([(((([[(((((([[[(((([((((([((([[[[(([[([([((((([([[[([[[([[([(((([([[([(((([[(([[(((([([[([[(([[[((([([(([(((((([[([(([(((([[[[(([[[((((([([[(((([([(([([([(([[(([[[[(([[([([(([[[([[[[[[([[((([(([[(((((((([[[((([([[[[([[(([[[((([[([([[[[((([(((((([[(((((([([(([(([[([([([(([[(((((([((((([(([[[[([(((([([[[[([[[(([[([(([[[([[((([[((([[[(([([[(([[[(([[[([([[([([[[([((((((([([[([[([[[[[[[[(((([[[(([([[[((([[[([((([((([([(([[([((([(([[[[([(([[[((([((([[([[(([([[[[(([(([(([[(([([([([(([(([[[([[[([[[((([([[([((([[[[[([([([[[([([([[([[([[[[([[([([([([[[[[(([(([((([[[[[[[[(((([[((([((([[([((((([[(((([(([([([([[[[(([[[[[[[[([([[(([((([((([[[[[(((((((([[[([([[[[[[(([(([((((([((([[[[[((((([(([[[((([[[[[([([[[[((([((([[((([[([(((([[([[(((([((([(((([[[[([([[([[(((([[((([(([[(((([[[([[(([((([[(([[[([[[([([(([(([[[(([((([(([[[[([[(((([(([[([([[(([[([(([[([[[[([[((([[[(([[[[((((([[[([[(([[([[[[[(([[((([([(((((([[((([[([[[[((([[([([([[([([([([(([([(([([([[([[[[[([[([[(([([[[(([([[[[(([(((([[[[((([[[[([([[[[[(([([(([[([[[(([[([[[(([[[([((([[[[(((([(([[(([[[[((([[([((([[[[(([[[[([(([((([[((((([([(([[([([([[[(([([([[[([([([([([[([[[(([([(([[(([[(([[[[[([[[((([([[(((([[[([[[([((([[[[[[((((([[(([[([[[[[[[[[(([[[([([[[[[[[[[[(([([(([[[[[[[(([[([[([[[[[((([[((([([[(((([(([(([(((((([[(([[[[([[[(([([[([[((((([((((([[[[[[(([[[[(((([((([(([(([([([[[[[[[([[(([(([[([([[[[([[((([([(((((((([([([[[([[[([([[((([([(((([([[(([((((((((([[[[[[([[([([([(((([(([([(([[((([([(([[[([[[(([([(([([[([([[(([[[[(([([([([[([(([[[([[[[(([[([(([([(([[[[((((((([[([([(([[((((([[((([[[[[[[[[[[[[((([(([(([(((([[(((([[([(([([[([[[((([([([[((([(([([(([[((([[[[([[[(([([((([([[[[([((((([[([([(([[(([[(([([(([[([[(([[([[((((([[(((([[([((((([[([[[([[(((((([[[((([(((((((([([(([[[([[[([((([((((([(([(([([((([([(((([[[([((([[([((([([[[[([([(([[([[(([([[[[[[([([[[[([[[[[([[[(([(([[([[[(((((([((((((([([([(([[([([[[[[[([(([(([((((([[[[((([((([[((((((((([[([[(([[[([([[([[(([[(([(([[[(([[[([(([[[(((([(((((([[([([((([[[[[[[[([([[([((((([([([(([[[([[([([[([([[([([[([[(([([[[([((([([[([[[[[(((([([[((([[((([[(([([([([[(([[(([[[([[[([[[([[([[([[((((((([[(((([([((([[[([(([[((([[[(([[([([[((([([([[(([([[((([([(([(([(([[[[([(([[([([[(([((((((([([[([[(((([([[((([[[(([((([((([([[(([([((([([([([[[([([((([([(([[(([(([(([(([((((([[[[(([[([[[[[([[(([(([([[[(((([(([((([(([([(([[[([[([[(((([[[((([([([[[[[[([[[[[[[[([[[(([[([([[[[[(((((((([[([[([(((([[[[[[[(([[(([(([([[((([[(([([([[([[([[[([[[(([(((([[[[[(([[[[[[[([(([((([([((([[[([[((([([[([([((([[((([(((([([[[[[[([[[(([[[([[([[([(([([[([[((([[(([([[[(([([[[([([([[(([[[[[[((([[[([[[(([(([(((([[([([((([((([(([([[([([[(([[[([[[[[[[[[([((((((([[(([(([([(([[[[[[[([[(([[(([[([[((([[(([((((((([[(((([[(([[([([([[[[((([([[((([[[(([(([([(([[(((([[[([((((([[[(([[(([([[[[([([(([((([((([([(([[[[((((([([[([([(((([([([((([((([[[([([[([[[(([[([[[(([[[(([[[[(([(([((([[((((([([([[[([([(([([[([(([((([((([(([(([[(([([(([([((([([((([[[[((([[(((((((((([(([[[([[[[[([[[[((([[(([[([[[((([[([[[[(((([[([((([((([([([([[[(([([[([[([(([(([[[[[([[[[[(([[[(((([[((([(((([([((((([[[(([[[[[(([[((([([[(((([[(([([[(([[[([[[((([(((([((([[([[(([[[[[(((([([[[[(([[[([((([((((([[((([[(([([[[[((([[[(([[(((((([((([([((((([([([(([((([[(([([(((([(([[[[([[(([[[(([[[([([[[(([[([([[(([[[(((([(([([[[(([([[((((((((((([([[[([[([[[[((([[[[(([([([[[(((((([(([([([([[(([[[[(((((((([((((([([((([((([[(([((([(([([[[[[(([[(([[(([([[[([[[([[[(([[[((((([[[([([[[[[(([[([[[(([([[((((([[([[[(([([([[[(([[[(([[([[[[[[(([([(((([[[(((([[(([[(((((([(([([([(([([[([(((((([(((([((([[((([(([[([[[[[((([[[[[([[((([([(((((([((([((((([[([[([(([[(((([[[([[(([([(([(([[[[([[([([[[(([(([[([[[((([[((([[(([[((([(((([[([([((((([[[[([(([[[([[(([[[((([([((((([[((([[[([([[([[([(((([[(((([[(([(([(([((((([[[[([[[([[([((([[([(([((([[[(((([[[([(((([([[((([[[[([([((((((([(((([[([[(([(([(([[((([([((([([(((((([[([[(((((([[[[((([[(([[([((((([[([(([[[[((((([(([[[([([[[(([[([[[([([[([[[(([[[[(((([([(([[([[([[[(([(((([([(([[[((([[([((([[[[([[([([[[[[([[([[([([([([([([[[(((([(([(((([(((((([([[(([([[((([(([((([[[[([([(([((([((((([(([(((([[(([[(([([[[[([[((([(([(([[[([([[[[[[(([[[[[[(([[[(([[[[((([((((((([([(([[[[([[[((((([[[([[([[([[(([(([(([([[([([((([((([[[([[[[([[[([[(([(([([[(([[[([(([(([([(([[[[[[[((([[[[[[[[[[([([([[[([[[([(([([[([([([([[(([[(([([([(([[([([[[[([([[([[[([([((((((([([(([([[([((([[[[[[(([([[[([[[([([[[(([[(((([(((([([[[((([([([(([([[(((([[(((([(([((([([(([[[(([([([[[[[[[[([[(((([([[[([([[[(([([([[[[((((([[([[((([([(((([((((((([([(([[[([[(([[(([(([((([[[[[[([([(([([([([(([([((([[[[[[[(([(((([([[[([([[([[[((([([[[(([[([((([(((([[((((([(([([[[[((((([[[[[([(((([[((((([(([[[[[[((((([([[[((([(((([[([[[[([[((((([([[([[(([(([(([[[[((((([[[([[[([([((([((([[[[([([[([([[([[([([[[[([[(((([((([([([[[([(([(((([(((([([[[[([((((([[[([([[[[(([[(([[(([([([[([[([[[([(((([[(([[[[([[[[([((((([((((((((([[[[((([([(([(([([[[[([[[[[(([((([([([[([[([[[[(([([[(([([[([([[(([(([[[([([(([[[((([([(([([[[([(([((([([(((((([([([[[[[[((((([([([([([[([(([[((([[([([([((((([[[([[([((([[([[[(([([([([((([[((([(((([[((([(([(((([(([[([(([((([[[([[[[[(((([[[(((([([((((([([([[([((([([[[((([(([([([(([[[((([[[([((([[([[[[[([[([([(([[[[[(([[[[[(([([((([([[[([([((((([[[((([[[(([[(([(([([(([[((((((([([((((([[(((([[[[[(((([[([([([[([([[[(([([((((((((([[[(([([(([[(([[([([([((((([(([[([[[[[([[((([(([(([[[((((([(([[[(((([([((([[([([(([[[[[[((([[[[[((((([[(([[[[[([([([(([(([[([[(((((((([([[(([([[[(([([(([(([[[[((([(([(([([(((([([([[[(((((([[(([((((((([[([[[(([(([[[[[([(([((([[([[(((([[[((([[[(([[[[[[([(((([(([[[[[([(([[(([([(([([([([[([(([(([[(([[[(((([[[[[[[([([([(([[([([[([[([[(([[((([([[[[([([[(((([([(([[[((([[[[[([[(([((((((([(([((((((([([[([[([([[(((([[(([[[([[[([([(([(([([[(((([[(([([[([(([[([([(([[([((([((([(([([[[(((([([([[(((((([[((([([[[[([[([(([(([[(([[(([[[([[([[(((([[([([[[([[(((((([[[[([([([[((([(((([([[((([[(([[[[(([([([[([[[[([(((([[[((((([(((([((([(([([[[[[(([[([[[(((([(([((([(([[([[([([[([[[[[([(([(([((([(((([[([([([(([[[[([[([([[([[([[[[(([([((([[((([([(([(((([(([[([[[([(([(([[([((([([[([([[[([([[([(([(([(([((((([[[([((([([[[[([(([([([([[([[((([([[[((([(((((([((([[[[(([[([(([[((((((([[(([[[([((((([[[[([([[([(([([([[(([[([([[([(([[[([[([((([([((([[[[[[([[[[(([[([(([[((([(([[[((([(((((((([([([([[(((([[[((((([[([[([[[([(([(([[[[[(([((([[(([((([([[(([(([[([([([[((((((([((((([[[[(([[([((([((([[(((([[[[[[[[(([(([([[[[[([[[([(((([[(([[[[([[(((((([[[[([([[([(([[[([([((([[[[([([[(([[[[(([[[([[[([((((([([[([(([([([(((([[((([([(([[[[[[([[(((([([[([[[([[[([[(([[([((((([([[[[(((([[((([([[(([[(((((([([[([(((([((((([([[([[(((([([[(([([[[[(((([(([((([[[[[([[((([[[(((([((([[([[((((([[(([((((([((([(((((((([[(((([[((([[[[(([([[[[[([(([[((([((([((([[(((((([[[([([((([(((([[([([[([(((([[[(([(([[[([[[[([[[([[([[(([[[[[([[[((([([([(([([[([([[(([[[[[[[[([((([([((((((([([[[([([(([([((([[[(([[[(([([[([[([[([[[((([([[([[[([(([[((([[([([((([(([(([[[[[([(([((([([(([[[((((([(((((([([[[[[(([[([[((([[(((([[[(((([(([[[[[[[(([((((((((([[[[[(([([([[[[[(((([[([[[((([[[([[[[[[[[[[([(([[[((([[[([[((([[[([((([[([[((([[([([([(([[[(([[[[[(([[([[(([[[[[([([([[[[(([[[(([(([(([([[[((((([[(((([([[[[([[[[(([[(([((((((([[([((((([[[[[[([([(([[([([[((([[[([[[(([([[([[[((((([(([(([[(([(([[(([[[[([(([[([((([((([([[[((([([([([[([[(([[[[(((([[[((([[([[[[((((((([(((((([[[([[[[([([(([([[(((((((([[([[[([(([[([((([[[[((([[([((([[([[[[([[[[[([[(([[[([[[((([[([[[([[[(([([[[[(([((([([[([([[[[[(([[([[(([([(((([([([(((((((([[[([(([([([[([[([[[(((((((([([[[[((((([[[([([[([[([[[[[((([[[([((([[[(([([[[[([(([[[([[(([([[[(([((([(([[([[([[[[([[((([[([[[[((((([[[([[((([[[[(([[((([(([[([[[([(((([(([((([[[([(([((([(((([[([[[[([[([[(([([[[[[([([([[[([[[([(([([[(([[([(([((([[([(([([[[[([([((((([([([([((((([[(([((([[[([[(([[[([[[[(((([([[[([[[[[(([([[[[[(((([[[(([[((([[([[[(([([([[[[(([([([(([([[[([[[[([([((([(([[([[([([((([([[([(([[(([([([([[[[([[[[([([[([[[[(([[([[[[[[[(((((([(([((([([[([([[[([[(([[[[([([[([([[(((([[(((([([([(([[[[[[(([(([([[[(((([[(([[(([[((([[((([[[(([[[((((([([((((([(([([[[(((([[[[[([[([[[(((([[([([((([([(([[[([[[(([([([(([([((([([([[([(([([[([([([(([(([([([[[([([[[([[([([[(([[([[[((([(([([([[(((([(([((([[(((([[[[(([(([[[(([(([[(((([([[(([[[[[[(([([[[([[(([[(([[[[([(([((((([([((([[[[(([([(((([([[[(([[([((((([[[[[[([[[([[(([(([([(([([[[[[[[[(((([(([(((((((((([[[[(([[[[(([[[[([((([[([[[(([(((([(([[[[[[([[(([[[[[([[([([[[([([[(([[([[[[(([([[[[[[[[((((([([[(([([(([[[[([[([[[[[(([((([[((([(([((([(([[(((([([((([([[[([[[[[[([(([(([(([([[[([(([[([([[[([[((([[[[(([([[[[[(([[([(([([[[[[[[[((([[[(([[([(([([([[[(([((([(([(([(([[[([([[[(([([[[[[[([[[(([([[((([[[[(([[([([((([[[[([[((([([([([[([[[([[[[[[([([[[[[([([[[([([[[((([(([[[[(([[((([([([[([[(([[[([([(([[[([([[[([[[[([[([[[[((((([[[(([[((([[[([[((((([([[((([([([([[[[[[([[[[((([[[((([([([[[[[(([[[([([([[([[[[[[[[(((([([[([[[(((([[[[[[[[([[((([[([[(([[[([[((([[[([([[[([((([((([([([([[[([([([[[([[[((([((([(([[([[[([(([(([([((([([[([[[(([(([([[[(([([[[[(((((([[[[([[[(([([(([(([[((((([([[([((((([[([(([((([((([[[[[([[([([[[(([(([[((([[([((([(([(([(((([([[([([([([([([[[([(((([[[[(((([[([[([[((([[(((([[(([[[[[(([[[[[([([[[[[[(((([([(([[[([[([([((([(([[([[[(([(([([[([[(([[[[([[(((([[[([[((((((([[[[([(([([((([[(((([[[((([((([[((([([[[([((((([([[[[[[([([(([([[[([([(([[([([(([[[((([((([[[(([([[([[([(([[[[[[((([(([(([((([[[([(([[([[[[[(((([[((((([[(([[([([[([([([(((([[(([[([((([[[((([[(([[([(((((((((([[[[([[([([[[([[[[([(([[(([([((([(([[[[([([[([(([[([([((((([[[(((([(([([([[(([(([([(([[[(([(([[[[[(([([([[[((([[[[[[([[([[[[(([[[([([(([(([([((([(([[[[([([([[(([[[([[([[[[([[(([([([[(((([(([[(((([[[[(([([((((([([[[([(((([[((([(([[[[([((((([[(([[[([[[([[[[[[[([[[[([[[([(([[((([[[[(((([[((((([(([[((((([([(([[((([[[([[(([[(([(([(([[[[[((([[[(([(([[([[([([(((([[[[((([(([[(((([([[(([((([[[(([([[([[[[([(([[([([[((([[[[((([[[([[[([((([([[((([[[[([(([([[[[(([((([([[([([(([[([([((([((([([[[([[([[[[([(([[([([[[((([[[[[[[[((([((([[[[([([([(([((([[[[[([(([[([[[[[([([[[[[(([[(([(((([(([[(([(([[(([[[[[[[(((([([[[(((((([[(([(([[([(([([(((([([[[[[([([[[([((((([[[[[(([([([([([(((((([([(([[(([[[((([((([[[(([[[[(([[([([[([((([[[((([[((([[[[[([(([([([[[[[[[[(((((([(([([(([(([[([(([(([[([([[[[[[([[([(([[[([[[[[(([[[([(([(((((((([((((([[[((([([(([[[[([[[[([[[[(([((((([[[([([(([[([[(([[[(([(([([[[[(([[(([([[([([([([(((([([([([[([[((([[[([[[([[[((([(([((([([[(([((((([[[((([[[(((([[([[([(([[[([(([(([([[(([[([(([(([[([[([[(([[[([([([([([[[(([((((([[((([[([(([((([([([[[[(([[[[[[(((([([[([((([[[[[([[((([[([(([(([(([[([([(([((([[([([[((((([(([(((([(([(([[[[[[[[((([([[[([((([(([[[([[(([[(([[[((([([[([[[[([[([(([[[([((([[((([([[[([[([[[([((([([[([(([[(((([[[([(([[(([([[((([[((((((([([((((((((((([(((([[[[([(((([([[[([[[([((([((([(([[(([([[[[(((([[([[[[[(([((([[(((([[[[[[[[[([[[[([[[[([[[[(([[(((([((([[((([(((((((((([(((((([(((([[([[[[(([[((([[([([([(([((([[((((([(([((([[[[([(([[([(((([[[([([[[[[([((([(([[((([([((([[([([((((((([[[([[([[[((([([[((([(((((([[([[[[[[[((([([(([([((([[([[(([([[([((([[[[(([[[[[[[[(([[([[[[([[((([[((([[([[[[[(([[([([([[([([[[[[[[[[([([[[[[[[[([((([([[([[(([(([[([(((([[([([[[[([(([([[[[([(((([([((((((([([[(([[[([([([(([[([([[(([[((([((([[[([([[[[[([((((((([((([([((([([[(((((([[([[(([[(([[[[(([[[(([([[([[([[(([[[[([([[((([([[((([[[[[[((([((([(([[([([([(((([[(((((([[[[[[[(([((([([[[(([(([([[((([[([[[[([(([[[[([[(([((((([(([[[(([[[[([[(([([[[(((([[(([([[[((([((([[([(([[(([(([([[(([[([[([[[([[[([[((([([[[[([([[([([[[(([((([[[([[[[([[((([([(([((([[([([([((([([[[(([(([(((((([[[[((([[[[(((([[[(([[[([[(([[([[[[([[(([[[[([((([[[((([[[([[([[([[[[[[[[([[([[((((((([([([([[((([(([[([[(([[[(((((([[((((([[[[(([([([(([((([[[(([((([[((([[([((([([[[[((([([((([(((([[[([([([(((([((([(([[([[[[[[([[([[[(([[[(([[([([[(((((((([[([([([[((([([([[([([[[[((([[([[[[(([[(([[[[((([[(([[([[[((([([[([([[([[((([(([[[[(((([([([[([[(([(([([[[[(([(([[[[[((((([[([[([[([[[(([((([((([[(([[[[([[[(((([((([((([[([[[([[[[[(([[[(([([[(([(([[(([((((((([[([(([((((([([[([([[[[([(([((([(([[((([([(((([[[[[[[[[(([((([((([([[([((((([[[(([[((([(([[((([[[([[([(([([[[[([([[[([[(([(([([([[[[[[(((([([[[([[[[[[[[[([((([((([(([[[[[[[[[(((([[((([([(([[[[[[[([(([([[[([[([(([[(([[([[([[[([([[([(([[[([[[((((([[[(((([[((((((([[([[([[(([[[([(((([[[((([[([([(([((([[[[([[((((([[[([([[[[[(([(([([[([((([([[[(([[[(((([[([([(([[[[[[([((([[[([[(([[[[[([[[(([[[[(([[[(([[(([[((([[[([((([[(([[([([([([([([[[([([[[([[[([[([([[([[[([[(([([([(([[([[([([([[(([(([[[(([([([([([[[(([(([[[[(([[[[([(([((([(([(([[([((((([[([[([(([[[(((([[([([(([[(([[([((([([[[([([(((([[([((([[([[[[([([([([[[([((((([[[[[[[[[([[([[[[(([((((([([([(([[([(((([([(([[[([([[[([((([[([((([([[([([([[[[[(([[(([(([[[[(([[[(((((([[[(([[(([[([[((([([[([([([[[(((([[[((([[([[([[[[[((([[([(([([[(([[[(([([[[([([((((([((([([([[[([([(([((([[((([([(((((([[([[([(((((([((([([[[(([[[([([((([((([[[[[(([[([[((([[([(([[[[((([(((([[[([([[(([([[[[((([([([[([[[[([((([((([((((((([[[[([[[[(([([[([([([[((([[[([[[[((([[(([[([[(((([[[[[[[([((([[[([([[([[(([[([([[(([[(([([([[[([[((([[([([[((([[[([([[([([[[[[([([[[([[((([[([([[(([([(([([([(([((([([[(([[(([([[((([(([[([[([[[[[([[(((([[[[[[(([([([((((([[[[[(([([[([(([[([((((((((([((((((([[[([([[(((([[[(((((([(((([([[[((([([[[[[[[((([[[[([[((([([[([([(([[((([[([([[[[[[[[[[([(([[(([[[[(([([([(([[(([(([([[((([([(([([((([[([((([(((([[([(([([[([((([([(((([([([(((((((([([((([[(((((([([[([([([((([[((([((([[([([[[(([(([[(([(([[[[((([[([(([([[((([([((([(([[(([[[(((([[[([[[([([[[[[[[[[[([((([[[((((([[[((([(((([[[([[([[[((([(([[(([(([([((([((([[[([([([([[[[(((([(((([[([[[([[([((([[((((((([((([(([(([[((([([[[([(([((([(([([(([(([[(((([[[([[((([[[[(((([[[[([((([((((([([[[[(((([((([(((([[[[[[([[([[([[(([([[[[([[(([(([[[(((((([([([((([[[[(([(((([[(([([[[[(((([[([[([([(([[(([([[([([([[([[(([(([[((((((([(([([([((([[[([([([[[[[([[([([[[([([[[[[[[([((([([[[[[[(([[[[[(([([([[(([(((([([[(([[[((([([([[(([[[((((([([([[((([([([(([[([[([(([([(((((([[[[[((([(((((([[[[([([([[(([[[[[([[([[(([([[[[[(([[([[([[[[[[([[([[[[([((((((((([([(([(([((([(([[((([(([([((([[[[(([[[((([[[[[[[([(([(([([((([([[([([[[((([([(([[[([(([([[(([[[[[([[([(([[[[[[([[([[[(((([([((([[(([([[[([((([[[[((((([[(((([((([[[([[[[[[[[([[[([[[[(((([[[(([[[([(([[[[[[([(([((([[[[[(([(([([([[(([[[[[[[[(([([([((([[(([([([[[((([([((([([([[([([[([(((([[[([[[[((([[((([[[[[[[([[[((([[([([[(([[[[([(((([((([[[([[[([[[(([([([[(([([([(([[([([[([[([([((([[(([[(([(([[([([([[(([([[((([([[([([([[[((([(([((([(((([([[([[[[((((([([([[[[[([(((([[[([([([([([(((([[([((([((([[([([([((((([[[[[[[([([(([([[[(([(([([(([(([[[[((([[([[[([([[[(([([(([[[(([[[[[[((([([([([[[([[[(((((([[([([[[([[[[[(([[([[([((([[[[[[((([([([[(((([[[[((((([[[([[[[([(([([[[(([[[[(((((([[([(([((((([[(([([[([[(([([([([(([[((((((([[[(([([[(([[([([[(([([[((([([[[[[([[([(([[([((((([[(([[[([(([([([[[[[[(((([([([[([[((([([(([[[([[[([([[[[[[([[([([[([([(([([([([[((([(((([[[[[[[[([[[([([(((([[([[([(([(([([[[([([[(([([[([[([([([[(([[([((([([[[[(((((([(([(([([[(([[[([[[[[(([([((([[([(([([[([([((([([[[[[[([[[([[([([[[[[([[[[[[[[[[(([([([[(([([([[(((([((([([[[([[([([([[(((([([[[[([[[(([([([(((([[[(([[[[([[([[([[[(((((([[([[[([(([[[([[[[[(([[[([((([([([([([[[[[[[[[[[[[[[[[([(([[([[((([[[[((([((([([([([[(((((([[([[([([[[([([[([[(([(([((([(([[[[(([([[([((([([[[[[([[([([[[([((([(((([((([([([([[([([[(([[([([[[[[(((((([(([([([([([((([([[[([(([(((([[[[[([[([([(((([([[([[([[((([(((((([([[(([([[[[[[([((([[[[[[[[[[[[[(([[(([[[([([([(([((((((((((([[([[[([[[[[[[[(([[([([[([[[([([[(([[[[([[([([(((([[[([([[([[(([((([([([((([[[((([((((([([((([[[([[[((([[(([([[([[([[(([[([[([(([[([(([[([[[[[(([[([([[([(([[[[([([(([(([[[[([[(([((([(([((((([(([[[[[[(([[[([[((([([[[[[([((([[(([[([[(([(((([[(([([[(([([[([([(([([[((([((([[[(([([([((((([[[(([[[([[[[(([[(([[[[[[(([((([[[([[[[(((([[[[[([((([[([([[[([(((([[([[[((([[(([([[[[[(([[(([[((([((((([[[[([[[[([(([[[([([[[[(([[(((([[[([[[((([[[([([[[[[[[[[(([[[[((((((([[[[(([((([(([[[[(([([[(([[([([((([((([([((([[[((([([(([[[([([((([(([[(((([(([((([(([[[[[[([([[([(((((([[[([[(([[[[[[([[((((([([([[[(([([[([((([(((([[[[[[([[[[(([[[[([[(([[[[[(([([[[[[([([([[(([([[(([([(((([[[((((([[[(([[([[[[([[[([([([[[(((([([[[[([[(([(((([[([[([[[([(((([([[[[((((((([[[([[(([((((([[[[([([([[[([[(([(([((([(((([([[[[(([([[(([([([([(((([[(([((([[[[(([(((([((([[((((([([[(([([([[[([([(((([(([[[([[[([([([[([[[[[([(([[[[[[[([[([[(([([[(([([(([[[[(([([((((([[([[[(([[(((([[([[(([[(([([(([[[(([([[((((([([[[(((([[((((([([[([(([([[[[[[[[(((([(([((([[(([[[([[[([[(([([([(([(([[((([[[[(([([(([[[(([([(([[[(([[(([(([(([[([[[(([(([(([([((((((([[((([[([[((((([(((([[(([[[([(([([([[[([[[[(([[[([[[((([(((([([(([[[[[(([([([[([[([[(([[[([([[[(([([[([[[[[[[[[(([[[([[[([([[((([[([([([((([(((([([[([[(([[(([([[([[[([[[[(((([([[[([([((([[([([[[[[[((([[([(((([[[[[[([(([[[(([(([(([[(((([[((([[(([([[(([[[([[((([[([[([(([([[[((((([([[[([[[[[(((([[[(([[([[(([[[([((([([(([([[([(([(([[[(([[(((([([(([([[[[[[[[([((([[[(([[(([([[[((((((([[([([[[[([[[[[[[[[[(([[[[((([(([[(([(([[[[[([([(([([([[([[[([[[([([[(([([([(((([[[[[([((([(((([((([([([[[([[[[([(([(([((([[[(((([[[[[([([[[(([[([[[(([(([([[[((([([[[((([(([[([([((([((([([([[[[(([[(([[[[((((((([[([[[[((([([[((([[(([((([(([[([[(([([[[([[(((([(([([([(((([([(([[([[[(([[(([[([[([[[[([[[([[(([[[([[[(([([[[([([[(([[[((([[[[[[[(([(((([([(([([[([([[([([[((((((([[(([[([([([[[[([([([([[[[[[((((([[[[[([[[[(([[[([[([[[((((([[(([[([[[([([[[[[([([[(((([[[[[(([(([([(([[((([(([([[[([[([(((([([[[[[(([([([[[[[((((((([[((((([([([[[([((([[[([([[([[[(((([([[((([([([([[[([[[(([([[[[[[[([[((([((((([[([[([[[[([[([(((([(([[([[[([[((([([([[([([[((([[([([((([([(([(([(([(([[[(((([[([([[[[[[[([([([[([([[(([(([[([[[(([[[[([([(([[[[([[[([[[[((([[[([(((([([([([([(([[[[[(((((([[[([[[[([(((([[(([([(((((([(([[[[(([(([(([([([([[((([[(([([(([(([([[[([([(([(([([([[(((([[([[([([(([[(([[(([(([([[([([[[[([[([[[[[(((([([[((((([[[[((([(([[[([[([[[[[([[([(([[[(((([[(([[([[[([([(([[[(([([[([((([([([(((([([((([([[(([(([[(([([([(([([((((([([[(([[[((([[((([((([[[([[([[[[[(([(((([[[[[[(((([(([[[[(([([[[[(([[[([([[(((([[(([[[[[[(([[[(([([(([[(((([((([[(((((((((([([[[[([[([[[[[[(([((([[[(([[[[([([[([(([[(((([(([([([([([[([[([((([((([((([[[(([[([([[[(([((([([[[(((([([([([[(([[[([([[((([([[([(((([[((((([((((([[([[[(((([(([([([(([(([[[[[([([[((((([((((([((((((([[((((([[[([([[([([[[(([(((((([[(([[([([([([[[[(([(([([[[[(([[(([([[((([([[(((([([[[[(([[[[[(((([(([(([[[[[[[([[[([(([[[(([[([((([([([[([([([[[([[((([([[(([[((([[([(([[[[[[[(([([([[([(([[([[(([[((((((([[[(([([[[[[([[([[((([((((([([(([[([[([[(((([([[([(([[[[[[[([[[(((([(((([((((((((((([[(((([[([([[(([(([([[[([((([[[([([[[[[[(([[([(([((([[([[[([([[[((([((((((([[([[[(([(((([[((([[(([([((([[[(((([[(([[[[([[(([((([(([([[[((([(((([[(((([[([((([((([[(([([[[((([([[[[[(([((([[([[([[([([[[[((((([[[([(([((([(([[[(((([([[([[([(([[(([((([[[(((((([([[([(([[([[[[[((([[[(([([[[[((([[([[[[([([(([[(([([[((([((([([[([[([(([[[[(([(([[[[[[(((((([[[[[[([([[([[((([(([[((([[[[([((((([([[([(([[([[[[([[([[[([[[[[([[[[((([(([(((([[(((([[([[[[(([(([[[[((([[[(((((([[([([[([[[([(([([([([[(([(([(([[((((((([[((([[[([[[[[[([([([(([[([(([[[(((([[(([[(([[[[([([([(([((([([[[[([([[(((([[[([(([[[[(([([((((((([[[[[[(((([(((([[(([[([((([([(([[[[[[([([(([([[([(([(((([[[[((((([[[([((([[[(((((([[(([[[([([[[([[[[[[[[([[[[([[[[(([([([(((([[[[([(([([[[[[(((([[[(((([([[(((([[[((([[[[([[[([[([((([[[[((([[(([([([([((((([[[([[[([([[((([(((([(([([(([([[((([([((([([((([[([(((([([([((((([[[([([[[[(((([(([[([([[[[[[([(([(((([[[[[[[(([[(([([((([(([([[([([[([([(((([[[((([[((((([[[[[(([(([[((([(([[[([[((([([(([((([[((([[[[[[(([((([[[[([[[([([(([(([([[[[[([[[[([[([[([[(([([([[([[[[(([([[(([[[[[([(([[[([[(((([[[[([[((([(([[[[([[[(([([([[[[(((((([[[[[((([((((([[[[([([([([[([([([(((([[([([[[([([(([([(((([[((([[[((([[([(([[[[[[([[[([[[[[([[[[[([[([[(([([([[(((([(([(((((([((((([[[([[[[([(((((([([((([([([(([[[[([([(([(([[([(([(((([[[[[([[([([[([((([(((([[((([(([([(((([[([[((([[([[[[([([[[(([[([([([[[([(([[((((([([[(([[[[([([[[([[[(([([[[[[[[[([[[([[[[([[(([[[[[[(([((([[[[([([[[([[([((([[[([[([[((([[((([[[[([[(([([(([[[[([([((((([[([(((([[([[([[[[[[[(([((((([(([[([([([([[[[[[[[[([[(([[[[[[[[(((([(([([[[[[[[[[(([[[(([([(([(((([[(([[[(([([(([(([([[((((((([[[[[[[[([([[([([(([([[[[[([[[[(([[([([[[((([([([[((([((([[(((((((((([(([[([(([((([[([[[[(([[[[[(((([[([([([[[[([([[[(([((([[([(([([[[[([((([[[([[([[(((([[((([[[[([[((((((([(([([(([([[(([[[([[([[([([(((([[[[((((([([[[[[([([([([[((((((([(([[[[[([[([[(([(((([([(([(([(([[([[[((([[[[[[((([(((([[([[(([((([((([[[([[([([([([([[[[([(([([[([([(([[[[([([[[([(([[[[([[[[([((([[([(((([[([([[[[(([(((([([([(((([((([[[(([(((((((((([([((((((((([[(([[((((([[([[[(((([[[[((([[[(([[[[((([[(([([((((([[(([([(((((([[[((([[([[[[[[[([[([([((([[([[([[((((((((([([[[[[[([[[[([[[(([[((([[((([([((([(([[(([(((([[[[[([([(([((([[[[([([[[(((([([[[[((((((([([[([[[[(([(([[([([[[([([((([[[(((([([(([[[[(((([([(((([(([[([(([[(([([[([[([[[(((([[[(([([([[([[[[[[[[(((([([([(([([[[([(((([[([[((((((([[[([(([[([((([[(([[[[[(([[([[([([[[[(([[[([((([[[[[[(([(([(((([((([([([[((([[[(([([(([[[[((([[([(([([[[((([((([(([[[[[([[([[(([[(((([[[[[((((((((((([[((([([[(([(((([[((((([[[((((([[(([[[(((([(((([((([([[[(([([([[([[[((([[([([((([([((([([[(((((([([[([([[((((([[[[[(((([[([(([[[([([([[[(([((((([([([([[(([([(([([[([[[[(([[([((([((((([([[[[[([[([([(([(((([([([((([[(((([(((([([[(([([([[[(((([[([[[[[((([(([[(([(((([([[[(([[[([[([([[[[(((([(([((([[(((([(((([[([([((([([((((((([[([((((((([(([[([([[([[[[[[[([([([[[([[[[[([[(([([[(([[((([((((([[((([[([([[([[(([((([[(((([[((([([([[[[[[[[[((((([[[[(([([[(((([[((([((([(((((([(((([[[[(([[[[[([[[([([[[(([([(([([[([(([(([[[(((([[[(([([(([([([(((([((([(((([(((([[[[([([[[([(([[[((([[([[[[((([(([([[[((([([(([(([(([(([[([[((([[(([[[((((((([[[((((((([[((([[([(([[[[[([([[([[(([([((([(([[([([[(([([[[([[([[[[[[[((([[[([(([(([[([[[((([[[[([([(([[(([[[([((((([[(([([([((([((((([[[(([[[[[[(([[([((((([([[[[(([(([[[(([(([([[[([[[[(((((((([[[(([([[[[[([([((([(([((([([(([[(((([([[[[[[((([(([((([[([[(([[((([[(([[((([[[[([[[([([[[(([((([[[(((([[(((([[[([([((([(([([((([[([[([(([([((([[([(([[([([[([[[[(([([[[[([[[([([[((([(((((((([([[((([[([([[[(([[[([(((([[[[([[[[(([([(([((((([[([[((((([([(([[[[([([([(([(((([[[[[[([(([[[[([[[[[([[[[([[([[[[([[[[([([[(((([([((([[([[((([[(([[([[[[([([[((([([(([[[[(([([[[(((([[([[((([[(([[([([[[([[(([[((([[([([[[[((([(([(([([((((([[(([([[[[([[[([[[[[[([([(([[[([[[[[(([((([[[((([([[([[[[[[(((([[[[[[([([((([[([[[[[(((((((([[([([[[([([[([([[[[([([[(([((([([(([(([(((([[([([(([[([([[[(([[[(([([((([[([([[[([[[(([[([[[[([[([[(([((([[(([((((((((([((([[[[[([[([([(([([[([([[[[[[[([[[([([((([((([[([[([[((((((([([[[[((([(([((((((([([[([([[[([[[(([[[([[[([[((([[([([(((([[([[((([[([(([[[([[([((([[[[(([[([((([[[[((((((([[(([[[[[[[[(([[(([[(((((([([(([(([[[([[[[[([(([[([[[[[((((([([(([[([[[((([[[([[([([[([(([([([(([[([([[[((([([[([[([([((([([[(([[[([((([(([([[[[[([[[([((([([(([(([[[([([[[[([([[([[[([[[[([[[[(((((([([([[([([([([[([(([[[(([[[([[[[[[[(((([(([[([[(([[((([[[(((([([[[[[[[[(([([[((([[((((([[[([[[((([([(([(([[[([([(([([[[[([([[[((([[[[(([[([(([[(((([([[(((([[[(((([[((([[(([[[([(((([[[[([([[([((([[([(([[(([([[[([[[((([[([(((([(((([([(([[(((([[([[((([[([(([(((([(([[((((([(([(([(([((([([([[([([[[(([(([([[[(([[[([[([[[([(((([([[[([[([([([([((([[([(((([(([(([[[([([[[((([([[((((([[[((([([[([[(([[[(((([(((([([[[(([(((([([[[(([([[(([[([((((([([([(((([[[([(([((((([[([[(([[[(([([[[([(([[(([[([[([[(((([([([((([(((([[([(([[(((((([[(([[([[((([[[[(([(([([[[(((((([(([[([([[([(([[(([((([(([((([((([([([[([([[[[([([[[([[(([[([[[[((([[([[(([[(((((([[([([([[(([(((((([[([[[([[[(([((((((([([[[(([[[(([[([([[(([[[(((([(([[((([[[[[(((((([((([(((([(([([[[[([([[[[[(((([(([(((([((((([([([[[([[[[[[((([([(([[([[(([((((([[[([([[(((([(((([[(([((([([[[(([[([[[[([[([[[[[([([([[([[(((([([[[([[[[(([([([[(([(([[[([[([[([[((((([[(([[([([[[[[[[[[[[(([[((((([([(([[[[([([([(([[[(((([(([((([[((([[([([((([[([(([([([([((([[([(([[[([[[(((([[(([([([((([(([[([[[(([((((([[[[([(((((([((([([((([(((((([([[([[(([(([[[[(([((([(((([(([[([[[(((((([((([((([[[[((((([[[(((([([[[((((([(([[[(([([([[(([[([[[([[((([[[([((((((((([(([(([[(([(((([(([[(([([[[([[[((([[[[((([(([(([(([([([[[[([([([[([([[(([(([[[[([((([([[[[(([([([[[(([[(([[[[(([[[[(((([(([[([[([[[[([((([(([[((((([([([(([([((([(([[[[[([([[[([[[[([((([([([((((([[[[(([([([[[[([[[([(((((((([((((([[[((((([([[((([(([[[([(((([[([[(([([[[[([(([(([([(([[(([[([([((([[(([[([([([[[[((([[[[([[(([[(([[(([((([([[((((((([[((((((([[(([(([[[([[(([([([([[[([([[[[[([[([[([[[[([(([([[[((([[()]])))]]])]))])]]]])]])]])]]]]])])]]])])])]))]])]]]))]))]])))))))]])))))))]])])))]))]]))]]))]])]]]])))]]]])])])]]))]])))])])]]))]]))])]))]))])]]]])]))]])]]))))])]]]))])))]])])))))]]])))))]))))))))])]]])]]]])])]))]]]])))))])])])))])]]]])]]])])]]]]]))])))])]))])])])))))]]))])))])]]]])]])]]))]))))]]]]))]]]]))]]))]]])])]))]]]])])))])]]]]))]))]])])]])])])]]]])])]))]))]))])))]]]])))]]])]]])]))]]))]))))]))]]))]))])))))))))])]]])))]])]]])]]))]])])]))]]]))])))))]]])]))))]]])))))]]]])))])))]))))))]]])]]))]))))])))]))]]]]))]))]])]])]))))))])))])])))]))))))])]]]])))))]))]]])]]))])))])])]))]]))))]]])]]]))])]])))])])])]))])]])))])])]])))]])))]))]))))]]]))])])])]]]]))])])))))]]))]]]]]]]]]]])])]]))]])))))]])]])]])]]]))]))]])])]))]]]])]]])]))))]])]])])])]]]]])]])]]]])]]))]]])])))]))]]))))]))))]])])]]])))))]))]])]]))])])))]]]]]])]]])])])))))]))))]))]))))]]]]])])]]]])]))]))))])))]))))))]]]]])))]]))]))))]]]))]])])]]))]]]))]]])])))))))]))]]])]]])]]))))))]))]])])])]]))))))]]))]])]])))]]]])]]))]])]]])])]]]])])]])])])))])))]))])))]))]]))])]])])]]))]))))))]]])]))]))]]]])))]])]]))]]))))))]]))])]]))))])))])])]))))]])]])]]))]]))])]]])]))]]]))]])]])))))]))])]]]))))])])])))))])]]))]])]))]]])]))))]))]]])]))))]))))]]]))]])]])])))]]])))))]])])))]]])])]]]))]))]))))])]])))])])])])]])]]])]))))])]]])]])]]]))]]])]))]))]]])])]])])])))]))]))]))])))))]]))]))))]))])]])))]])]]))))]]))])]))))]))))])]])))]]])]]])]))]]))])]])))])]])])]]]]))))])]]]))]])))]]))))]]]))))]])]))))]]))])]]))]]]])))]]])])]]]])]))])])]]]))]))])])))]]])]]])))))]])))]])]))]]]]]]]])]))))]]])))]]))]])]]))]))))]]]]]]])]]]))]]]))])]])])])])]])])]))))))]]]])]]]])]]])]])])]]]])])]]]))]))])])))])]]])]]]]])]))])))])]]]))]])])))])])]])]])])))]]])])]]))])])]))])]])])]])]]])))]]])]]))])])))))]]]]])]]))])]]]]])]]]))]))])]))))))]]))]]))]]]]]]]]))]])))))))]]]])))])]]))]]]])))])]])]]]))])]])))]])]]))))])])]])))]])]]])]]]))]]])]]])])]])])))))))]))])))]]]])])))))))]])]])]])))])))])])]]])]]]]]]])])]])]))])])]])]]]]])))])))))))))]))]])))]))]])]])]]]])]]))]]])]]])])]])))])]))]]]))]]])])]]))])])]]))))]))]))])])))]))]])])]]]])])]])])]]])])]]))))))))]]]]])]])))])])]]]]]]))))]]]]]])]])])))]]])))]))]]]]])]]]))])])]]]]]])]]])]]]])]))]])))))])]))]))])))]]]])])]])))]]))]])]]])])]]))]])))]])]]))))]]])]))]]]]))])])))]])])]]]])]]))]])))]])]])))])]))))]])])]]]])]]]])]])]]]])]]]]])]]]]))])]]]]]]))))]))])])])]]]]))])])))))]])]])))))]))])]))]]]])]]]]))))])]]]))]]])])]])))]])]))))))))])))]])])]]])]]]])]))]]]])]])])]]))])]])))])]))])]])]])))])]))])))])])]]]))))]]))))]]])))]))]]])])]]])]]]])))]]))]])))]]))]])]])))]))])))]]]]]])]))))]]))])])))]))])))])])]]]]])]))]]]))))))))]]]])]]])]))]))]]]))]))]]]])])))))])]]))]]]]]]))]]])))))])))])])]))]])))))])]]]))]]))])])]]]])))]]])]]))]))])]]])))]]]]]]])]])]]])]))]])])]]))])))])]))]])]])])]]]]]))])]])))]])))))))]]])))))))]]]))]])))]])]]))]))]))]))])])))]]])]))])))]]]])]])))]]]))])]]])])]]]]))))]))))])))]))))])])]))])]))]]]))))]]]))]))])]])]))])]))]]])])]]])]]]]]))]]]]))))]))))))])))])))]]))))]])]))]]]])))))]]]]]]]]])])])))]]))))]])))]))]])]])])]])))]])))))])))]]))]])]))]])]]]]])]]])])])]]]]]]])]])])]]))])))))))])]])))))))])])))])])]]))))]))))]])))]))]))))]]]])])]])]]]))]]])]))))]))]]))])))]]]]])]]))))]]])])]))]])]))))]))))]])))])])]))))]))])])]])]]]]])])))))])))])]]))]]]])]])]))])]))]])])])])))))]))]]])])])]]]))])]]))))]]]]])))))]])])]])]))))))]])])))])])))])])]])))]]])]])])]))]]])])))]))))]))))]]]))]])))))]]])))))]]))))]))]])])))]])))))))))))]]]]]))))]]))]])]])]]]]]))])))])))]]])]))])]])))]]]]))])]))]]])))]])])])))]))))]))]))]]]]]])))])]]]))]]]])])]])]]))]]]]]))]])))])]]))])]]])))))))]])]]))))])]]])]))])])]))))]]]]]]]])]])])]))]]]))))]]])]])]])]))]]))])]]))]))))])]))))]]]]))])]))))]]])))])])]]])])]]))]))]]]])]])])))))))]]]])]))))]]])])]]]])))]))])])]]]]]))))]))]]))])))])])))]])))]]))]]])]]]])]]]]]])])))))))))]])]])]])))])])]])]]]]]]])]])))]]]))))))])]))]])))))])]))]])))]]]]))]]])))]]]]))))]]])]])))))]]))]])))))))))])]))))))))))]))]]])))]))))])])]))))]))]]]])])]]))))])]])))])]]]])]]]]))])]]])])]]]]))])])]])]))])]]]])])])])])]])]]])))])))]))]])]]))))])))]]]]]])))]]])]]))]))]))])]))))]))]])]])]]]]]))])))))))]])])])])]]]]])])))))]]]]))))])])]])]])]]]))]])]))])]))])))))))]])]]]])))]]))))]])]])]]])))])]]]])]))])]])))]))]]])])]]]])])])]]))))]]]]]))]]]])]])))]))])]]))]))))))))))]])))])))]])])])))]]])])]]))]]]])]]]]])]))])])]])])]]]]]]]])))))))]])]))]))])]))]]]))]]))))]))])]))]]]))]]]]]]]]])]))]))))]]]]]]]]))]])]]]]]]]]])])])])]]))])))))]))]]]]]]])]])]]))))])]])))))])])]]]]))])]))]])]]]])))]])))]])]])]]])))])]])]]])])]]]])))]))]]]]]]))]])]]]])]]])]]]]]]]])]))]]])]]])])]]]]))]])])))))]]))])]]])])])]]))]]])])]]]])]])))]])]]))))])]))])))]]))))])))])]])])]])]]]]]))))]))])]]))]))])])]]]]))])])])))])]))))))])]]]])]]])))))]))))))]))]))))]])])]))]])]])]]]]])]]]]])]]])]]]]]]))])]])))]]])))]]))))])]))])])]]])])]]))))])])])]])])])])]]]])))))])))]]]]]))))))]]]])])]))]]])]]]]))])))]])]]]]))))]])]]]))])]]]]]))]])]))]]]])]])])]))]])]])]])]]]])]]]]])]))]))])])]]])]]]])))]))]]]]]])))]])))]))])])))]])]]]))])))]]))]))]]]]])))))]])))]]]))))])])]])])]])]))])))])]))]]))]]]]]]]))))]))])]]]]]])])]]))]))))]]]])])]]])))))])])]))))])]])))])])))])])))]])]))])]))]))))])))]])])]]])]]])))))])])])]))]])))]]]])))])]])]]])]]]])))]]]))))]])]))))]]]))))]]]]])]))])]]]]))))])])]))]]]])]]]])]]]]]]]])]]])])]]]))]]))))))]]])))])]]])))))]]]]))))]))])]])]))])])]]]]]]))])])))])]]))]]))))]))))]]]]]])))))))])]))]]]]))])]]]))))]])])]]]])])))]))])])])]]]]))]]))]]))))]]]))])]]))])])])]]]]]])]]])))]])))))))]]))]))]))]])])])]))])]]])]])])]]))))))]]])))]]]]))]))]]]])]]))))]]))))]))])))]]]])]]]]])]]])]])]]]])]]))])]])])))))])]]]])))]]))])))]])]])])]]]]]]))))))]]]]]]))]))]]]]))])]])]])])))])))]])]))]]))])])]]]])]])))]]]])]))]]])))]]]]])]]))])]])]))))))]]])))]))]]))])]])]])]))))]]]))])))]))])]]])))))]]]])])]])]])]])))]))]]]]])])))]]])]))]])))])))])]]))))]]))))])))]]])]))])))]))]])]]]]))]]))))]]])))])]))]])))]]))))]))]]])]])))))))])))]]])])]]])]])))]))])]]))]]]]]])])]]])))])]]])]))]))]])])]]))))]])))))))))))]))))]))))]]])]]]]]]]))])]])]))))]])]])]]))])])))))])))]])]])]]]]])]))]]])))))))]]))]])]]))])]])])]))]]]]]]]))])]])))]]))]])])))]])]]])])])]])])])))])]]))]]]))])]]])]]]]]]]))]))]))))]]]]]))]]]])]))))]])])))]])]))]]))]]]])]))]))]]]])])])])]]))]]))))))]))]]])])]])])]]])))))]])))))))])))))])))))]])])]]]]]))]))])])]))]))))]]])]])))))])))))]]))))])]])])))]])])]]]))]])])])]))))]]])])))]))]]])])]]))]]])))])))])))])]])]])])])])]))]))))]]))])]])])]]]]))]]])))]))]]]]]])]])]]]])]))))))))))]])))]))))]]))])]))]]]))]]]]]]))]]))))]])])]]]))]]]])]))]]]]))]))))]]]]]]))))]))]]]]])]])]]])))])))]])))]]]))]])])))))])]))])])]))]]))]))]])])))])]))))])])])))])]])]))]]]))])])]]])]]))]]))))]]]))])]])]]]]])]])]]]))])))]]]])))))]])]))))]]]]])]])]]]])])]])]))]))]]))]]))])])]])]]))))]])])]))]))])])]]])]))]))])]))]])))]])])])]))]))]))]]]]))]))))))])]))]]))))])]]]])]]]))))))]]]]]))])])])])]))))])]]])))]]]])]]])]]]]))])])]]]]))]]])]]))]))]])])]])])])]]]]]]])])]]))))]]]))]))]))]))])])))])])]])))]])])]])])])))]])]]])]]))]))))])]])]]]])]])]])))))])))]])]]]]]]])]))]]])]]])])])])))]])]))))]]])]])])]]])))])]]])])])))))]])))))))]]]]])])]))]]]]])]))))])]])]]])]))])))]]))])]))]))]]]]]))))]])])]]]]])])]]])]]))]])))))]]])]])]]]))]]]])]]]]])))))]]]]]])])])])]]]])])])]]))]])))))))]])])]])])]])]))])]))))]))]]]]]]])))]]]))]])])]]])]))]]])]]]))]])]]])]]]])]])]]))]]))]]])]]))])]))))])])]))]))))]])]]])]))]])]]))])))]))]])))]])])))]]]])]])))))))]]]]))]]))]]]])])])))])))])])]]))])))]]])])))]]])]))]))]]])]]))]]])])]]]]]))))]]])))]))]))])]]]])]]])])])))]))))])))])]]]]]))))])])]))]])])]]])]]])]])])]))])])]]]]]))]))]]))])))]]]]))]]]]]]]]]])]]]])])]])))))))]]])]))]]))]]])))])]]]]]]]])]))])]))))]]))]]]))]))])]])]))])])))])]]]))]])]]))]]]))))]]]]])]]])])))))]]])]))])]])]])))]])]]]))]])]))]])))]]))))]]))]))]))]]]))])]]]]]]))))])]])))]]]]]])])]])))])])]]])]))))]]]])]]])]])]))]]))]])]])]))))])))])])])]])))]])])]]])]]]))]]]]]]]]])]])]))]]])])]]]))]])]])]])])]))]]]]]))])]))))])))]]])]]]))]]]])]]])])]))])]]]))]]))))])))))]])]])))]])))))))])]))]))]))]]])]]))]))]))]]))]]]))])]))]]]))])]))]]]])))]]))]))])])]))]])]]])]]]))]])))]))]))))]]]]]]]])]))])]])])))))]]))))]]])])))))]])]))]]]))])]))]]))]])]]))))]]))]]])]])))))])]))]]]]))])]))]])]))]])]])]]]]]]]))])]]]]])]])])])]]])]]]))]))))])])]]])])]))]])])))))]])))]))))]))]]]])))]))]]))))])])])]))]])]))]]]])]))))])))]))]))]])]]])])])]]]])))))]))]])]]])))))))]]]])]))))])]]])]])]]))))]))]])]]]])]))))]]])])])]]])]]]])]]))]]])))))]]]))))])]))]])]))]])])])]]]]])]))]]]]]))]])]]]]))]]]])]]]]]]))))])))])]])]))]]])])])))))]])]]]]]]))]])]]]))))))])]])])]]]]]]))])))]))]))))]]))])))])])]]]))])])))]]])))])])))])))])])]]))]])]))]]]]))])))]))]]]])))))))]]]]))]]]]]]]]])])]]])))]]])]]]))))]]))]]]])])]]]))])]]]])]]]])))))])))]]))]]))]]]]])]))]])))]]])]]))))])]]])])]])))])]]]]]))))]]]])]]])))]))]]]]]]))]]))]]]])]]]))]]])))))])])]))]]])))])))]])]))])])]])]))]])]))]]))))]))]])]]))]])))])]]]]])])))]])]]]))]]]]]]))])))))]))])))]))]])]]]]))]))])])]]]]))])]])])]]))]]]]])]]))])]]))])]])]]))]])]])]])]))]])))]]])]]])))])])))))])))]]])))])])])))]))]])]])])]]]))))])])]])]]]]))]])])]]])]])])]]))]]]]]]]])]]])]])))))))))))]))])])])]]]))]]))]]]]]]]]]]]]])))])]]]]]])]))]])]))))))])))]])]])]])]))))])])]])]]]]]))))]))])]]])])))])])])])]))]))))))]]]]])])]]))]])])]])])])])))]))))])))])]]])])]])]]]]])])))])]])]))]]]]))])))]))]))]])]])])]]])])]])]]))))))]])])])])))])))]]]])))]])]]))])]]]]]]]]]]]]]]]]])])])])])))])]]]))]]]]])]]]))])]]])]]))))))]]])]])]])]]]]))]]]))))])])]))]]])]]]])]))))]])])])]])]]])])))]))))]])])]))]])])]))]]]]]]]]]])]]]]])])]])]]])]]]]]])])))])])]])]))])]])))])]))]]]]])]]]))]])]))]))]))))))]]]])])))])]]))]])])])]])]])]))]])])]]])]))]))])]])]]))))])])]]])]]]]]]]]))))])))]])])])]))])])]])])]])]]]]]])])]]])]]]))])])))]])]])])]))))]]]]]])])]))])]]]))]])))))])]]))])]])]]]]])])))]])]))]])])]]))]])]))]]])))))))]]))])])])]))]])]])]))]])))))]))])]]))))))]]]]))]]])]))])]]]])]]])))))]]]]))))]])])])))]]]]]])))])]])]]))]]]]])]]])])]]))))))]]])]]])])])])))]]]]]]))]]]))])]))]]])])]]])]])))]]]]))]))])]))]))]]])]))])])]]]]]]])))))])])])]])))])))])]]))))])])])])])]]]))))])]]]]])])])))))]]]])]])]))))])))]))])))]]])])])]])])))]])]))]])])])]]))]))]]))]])))])])]])]])])]]))])])]))]])])]))]]])]]])]]])))]))))])]]]]))]])])]])))]]])]]]]]]])))]])))]]]])]]]))))])]])])]])])])))])])))]]])])]))]])))])])]))]]]]]]]]))]])])]))]))]]]]])))]))])]]]]]]))])]]]))]]]))))]]]])]]])]]]]]]]])]]])))]))))]])))))]]]])))])]]])]))]])))])]))))]]])]])]]]]]]))])]])]]]]]))]])]))])]]]))])])))]]])])]])])))])]))]))])]]]]]]])))]]]))]]]])))])]))])))]]))])))]))]))])])))))))))])]]]])]])]]]]]])]])]]))]]]]])]))]])]])]]]]]))]])])])]]]]))))))])))]]]]]))))))])]))])]])]]))])])])))]])])])))))]]]))]])])])))]]]))]])]))))]))]])])]))]]]]]))]]]]]])])))])]]]]]]])])]]])])]])]]]]])])])]]])))])])]))])))))))]]))]))]])]])])])]])]))]]))])])]])]]))))]]]])]))]]))))]))]]]])))])])]))))))]]]))]))]])]]]])]))]])]])]])]]]]]]))))])))]))))]]]])])))))])))])]]]]))))]]]])))]])]]]))))]]))]))])]))])))]))])]]])])))]]))]))])))])))))))]])))])]])]]])]]))))]))))]]]])])])])]]])))])))])]))]))]]))])))]]])]])]]]))))])))]]])))))]]])))])]]]]]]]]]])])]]])]]]))))]]]))]]))])))])])))]])]))])]])))]]]]))]))]]))]))]]])])]])))])))]])))])])])]])]))))))]])))])]))))))))])])]))))])])))])]])]))])]]))))])))])]])))])]))])])))]])]))]))]]))])])]))]]]]))]]))])]]]]]]]]]])])]])))]]))])])]])])))]])]]]])))]]]]]]])])))]]])]))))]))))))]]]))))]])])]]])))))))])))))))))])]]))])]])]))]]]]])))))])])]))]]]]]]))))]])]]]]])]])]]))])))]])]))]]))]])])))]))])])]))])]))]])])]])))]])]]])])]]]]])])]])])]]])))]])])]])))]])]]])])]))]]))]])])]]))]])]])])]]])))])]]]]]]]))))]])]]))]])))]]]])]]])))]])])])]])]))]]]])]]]])))))))])))])))])]]]])]])])])))]]]])]))]])])]]]))))])))]]]]))])]])))]])]]))]]]]])))])))])])]]]))]]])])))]))))))])]])]]))))))])])))]])))]))])])]]])])])))])))))])])]]])]))]]]))]])]))])]])))]]]]])]])]])))]]]))))]]])])])]])])))]])]]))]]))]]]))))))]]]))]]]]))]))]]))]]]]])])])]])])))])]])))])]]])])]]]))])]))))])]]))])])])))))]))]]]])]])]]]]]]]]])))))])]]])])])])]]]])]])))])]]))))])])]]])])))])]]))]]))])])]]))))]]]))])]])]])))))])]]))]))])))]))])]]]]))]]]]))]))]]])])])])]))]]]))]))]])])])]])]]))])])]))]])]]])]])])]])]]])]]])])]]])])])])])])]]))]])))])]]])))]]))]]))]]]))]]]]))]]])]]]]]))]])]]])))])]]]]]]))])])]]))))]]]))]]])])))])]])]))]))]]]]])])]]])))))]])]]]])))]))])])]])))]]]))))])]]]))]])]])]])))))))]]))))]]])))))]]])]]]))])]])])]]])]])]]))]]))])]])]]])]))])]]]]]]]))])])))]]))))]]]]]]]]]))])))])))])]]]]]]]]])]]])]))))]]]]]])])]))]))]])]]])])]]]])]))])]])]]])))]]))])))]]))]]])))))])]])])))])))]))]]]]]]]]]))))])])))]]))])))]))])]]]])])]])])))))]))])]])))))))]))]]))]))]])]))]]]))]]]]])]]])]])))])))]))))]]])]]]]))]])))])))]))]]])]])]])]])))))]]]]]))]))]]]])]))]))]])]])])]))))]]]]))])))]])]])])]])])))]]])]]))]])))]]]]))]]))]]]])]])))]]]])])]])])])))]])])])]]))))))))]])])]]))]]]))]]])]])]]]]]])]]))])))]))))])])])]]]))))])))])])))]]]])])))])]])))]])))]))]]])))]))])])]))]]]])))))]]))))))]]]))]])]]))])))]])])])])))))))]])]])]]]]]]]])]])]])]]])))]]])))])]]]]))]])]]]])]]))]])]]]))]]]))))]]]])))]]]]))))))]))]))]]])])))])])])]])))]))])])))]])]]]])]]])))]))]]])])]])])]]]])])))]])]]])]]])]])]]))]])]))]))]]))])]])))])))]]])]))]]))))]]])]))]])]]]]))]]]))])))))]))]])]]]]))])]]]])]])))]])]))]))]]])])))]))]]]]]]]))))))]]))))])])])]]))])))])))]]]]]])))]])])))]])])]]]]))]])]])]])]))]]]))]]]]))]]))]])]]))))))]])])))])])))])))))))])]]]]])])]]])))])))]]))]])])]]))])])])]]]))]])])))))))])]))))])]]]])]))])]]]])])]]))))])]]))]))]])]])])))])]]]]]]]])])]]]]]]]]])])]])])])]]))]]]]])]])))]])))]])]]]])]]))]]]]]]]]))]]]])))])]])]))]])]])))])]))])])))]]]]]]])]]))))))])))]])])))]]])]])]]])))))))])])]])))])])))]]))])))])]]]]])])]]]))))])]]))])]]]])))]))])))))]])))]))])])])]])))]]))]]]])]]))))]))))))]))))))))))])))]])))]))))]]))]]]])]]]])]]]])]]]]]]]]]))))]])))]))]]]]])]]))))]]]])]))]]))])))])))])]]])]]])]))))])]]]]))))])))))))))))])])))))))]])))]])]))]]))])]]]))))]]))])]])])))])]]])]])]]])])))]])))])]]]))])]])]]]])]])])))]]]))]]))]])]]]))])))])]]])])))]]]]]]]]))]))]))))]))])))))]])])]])))]))])])]]))]))]))])]])))]])]]]]])))])]])]))))]]]]]]))]]]])])])))]))])]])))]])))))]))]]])])])])])]]]))]])]])]]))]))])]]))]])]))]))])]]]))])]])]]))))]]])))]]])))))]))]])])))]))])))]]])]]])]]])))]])]])])])]))))])])])])]])]))]]))]]]])]))]))]]]))]])]]))])])]]])))))]))]]]])]]]])]]]]))])])))]]])))))]))))))))]))])]]]))]]]]])]]]))])]])]]]]]])])]]))]))])]]))]))])]))]))))))]]]]]]]])])]))])]]]]])))]])))]]])))])]])])]]))]]]]))]]])))])))]]]))]]))])]))))))])])])])]))]]]]])))))])]]])])]]]]])]))))])]))])]]))]))]]))))))]]])]))))]]]]]]]))]]))]))]]))]))))]))]]))]]]]])])]]]]])]]))])]]]]])))]))])])])]]]])))])))]]]]]]]])))]]])])]]))])]]]])]])]]])])))])))])])]]))])])]])])))]))]]]])]))])]]]])))]])])))])]]])]]])))]]]])))]])])]]))])]]]])]])]))]]])))]))]])]))))]]))])))]]]]))))])])]])]]))]))]]])))]]]]]))]))]))]]))]])]]])))]]))])])))))]]))])))))]]))))]]]])))]]))])]]])]]]])]]]]]]])]]])]]]))]])))))])]]]]))])))]]))))])]]])])))))])]))]]]]))))]]))]))))]])])]))]])]]]])]])]]]))]])])])]]]]))])))])]))]))])])]]]))]]]])]])]]]]]])))]]])])]))]]]]]))]))]]]))])]))]))]])])]))]))))]]])))))])])]]))])]])])]]]]))])))])]))]]))])]]]])]]])])]])]]]]))))))))))])]]))]])))]]])))])]]))]]))))])])])]])])]]))]])))))]]))))]]]]])]]))])]]])))]))]))])))]]]]]]))])]])]])]))]]])))])))]]]))])])]]))])])]]])]))])])]]]]]])])))))])]]])])))]])))])))]]]))))]])))])]))])]]]])))))))]])]]]))))]])]]]]))]])]])]))]))]]])]]))])))])])]])]]]))])]))))]]]]]])])]]]]]))]]]]]))]]))))]])))]])]])]]))))]]]]))))])]]])])])])])])]])]))))]))]))])))])]])))]]))]))]]])])]])]]]]])))])))]))])]])))))])]])])))))]]))]))])]))]]])]]]]))))))]]]])]))]]])]))]))]]])]])])))])]))]))])]]])]]))])))])))]]])]]])])])]]])])])])))])))])]]])])]]])))]])]]]))]])]])))]])]]]]]]]]))))]]])]])]))))]]]]]]]])]])])])]]]))]]]]])])])))]]])))]]]])]]]]]])])])])))]])])))))]])]]])))]]))]]])))))]]]])]])]]]])]]])])]]]))])])]]]))]])]])])])))]]))]]]]))])))]]])])]]])])]]]]])])]]]]]])]]])]])])])])))]])]]]])))])])]]))]]]])))]])]))]]])]]]]]])]))]]])])]]]))]))]))])))]))]]])])]))])]]))]]])))]]]]]]]])]))])]]))]]]]])]))]]]])))]])]]])])]]))])]]])]))]))]))])]]]]]])]]])])))])]))))]]))])))]))])))]])))]))]]]]])]])]]]]))])]))]])])))))]]]]]]]])]))]]]])]]))]])])]]])])]])]]]]]))]])]]]]]]))]))))]))]]])]])))])]]]]))]]]]))]]]]))))))))))]))]))))]]]]]]]])]))])]))]))]])]]])]]]]]])))))])]]))]]])]))))])]))]]]])))])])))))]))])]]]]))]]))]])]]])]))]]]]]]))]])]))))]]))]))]]]))]))]]]]))))]])))]))]))))]])])]))])))]]])]]))]])])]])]]])])]]])])]))]))])])])]])]))])]])])])))])]))])])]))]]])]]]))])])))])])]]))))]]])]])]]]]]))))]]])]))])))))])])))))]]]))]]])))]])))]]))]]))]]))))]]])]))]))]]]]]]))])])]))))]]))))]])])]])])]]]]))]])]]])])]])])))]))]))))))]]]]]]])]]))]]]])]])])]]]])]]]])])])]))]]))])]])])))])])]])]]))])))])])]]]])]]])]))])])]))]]]])])]))]]])]])))]]))]]]))))]]]]])]))]]]]])]]])]))))]]]])]]]))]])]]])))]))]])))))])])])])))))])])]]]])]))])]])))]))])]]))]])]))])]]])]]])])])]]]]])]))]])]])]]]])]]))))])))]))])]]])))]))]))))])]]])]]))])))]]))]]]])))]])]]])))))]]]])]])))]])]]]])]])]]))])))]))]]])]))]])]]]))])]]]])]))]]])))])]]])))]]]]])]])]])])]]])))))]]]])]))))))))]]])]])]])])]))])]]]))))))))])])]))))])]))]])]]))]]]]])])]])])))]))]]]])]))]]])]]])]])))]]])]]]))]])]]]]])]]]])]])))])]])))]]]])))])]]))])]]])]]))))))))]])]))])])]]]])]]]))))))])))))))]]]])]])))]]]))))]]]]))]])]])])])])))]]])])))])))])]]))])]]]]))]]))]))]]))]))])))))]]])]])]))]]])]]])))]])])]]))])])]]]]]])))))])]])))))))]))]]))]]]])]]]])]))))]])))))]]])]))]))]))]]]))]]]])])])]]]]]))]])]]))]]]]]))]]]))])])])]])))]])]])))])]]])))]])]]])))]]]))])]]]]]]]]]])]]])))]]])]]))))]]]]])])]))]]]]])))))))))]))]]]]]]]))]))))]]]))))]])))]])]]))]]]]])]))))))])))))]]]))])])))]))])]]]]]))]))])))])])]])))]]))])]]])]])])))]]])]])]])]])]))]]]))]]])))])]))])])]]])])))))))])])))])]]]]]]]]))]])])]])]))])])])))]]])]]]]]))]])]])]]])]]]])]]]))]))]]]))))])]])])]]))))])))])])]]]))))))]])))])))])))]]))])]]]]])]))]]]])))]]))))]]))))))))])))])))))]))]])))))]])]])))]))))]]])))]])]]]]])))]))]))))]]]])]))]])]))))]])]])])))))]))))])]])]))))))]]))]])])))]]))))]]]])])))))])]]))]])]]])]]])]])]))))]])]]]]]]))])])))]]))))])])]))])]])])))))])]]])]]]))]]]]))]])])]]]])))])])]]]))])]])])]]]]))))))]])]]]]))]]))))])]]])]]]]])]))]))]]]]]]]]))))]])))])))])]]))]]]])))))])))))))]])])])]]))]))]])])))]))]])))]))]]]]]))]))])]]])]])]])))))]]]))))]])])])]))))))))])))]]]))])))]]))])]]))]]]])]]]]]])))])])))])]])]]]))])]])])]]))]])])]))])]])])]]]])))))])]]]))]])))))))]]))])]]))]]]])))]))))))])))]]])])))]])]])])])]))])]]]])])))])]]])))))]))]))]))])]])])]]])])]])])))])]]))]))])]]])]]))]))))]))])])))]])))])]))]]]])]])]])])]])]]]]))])])])]]))))])))]))]))])]]]]])]])])]])]]))])))]))]))))]]])]]))]]]]])]))])))]))))])))))]]]))))])]]]])]])])]))]]]]))]])))]])]))))])))]])])])]]]]))))))]])]]])])]]))))]])]])]]]))]]))]]))]))])]])]]]])])))]]))))))]])])]))))]]])]))])))])))])]]))])])]]))])]])]))]]))))]])]))]))])])]]])]]]))]]))))]])])]])]])])))))))]))])))))))]))]])]]]]])))]]]))])]))))]])])]]]])])))]]))]])]])]])])]]))])])])]]]]]]]))))]]]))]]))]))])]])])])]))])]))]]))])]]]]]))]))))])]]]]]]))]]])))]]]))))]])]])))]))])]]]]]))]))]]])]])))))))]))]]))))))]]])])]))))])]))]))])))]]]]))]))])]))]]])]))]])]))))))))]])]]))]))])])])]]]]]))]])))))]]]]])))]]]]]]))])])]])))])]))))]]]))])))))]]]))]))])))]])]]]]])]]))])))))])])])]]))]]))])]))]]])))))))))])]))]]])])]])])])]]))))]]]]]))))]])))))])])))))))]]))])]))]))]]))]]])))]]])))))])])]]])])))])]))]]]]]))]]]]]))])])]])]]]]])]])))])]]])))]]]))])])]))])))]]])])))])]])])])))))])]))))]]]))))]]]]])]]])))]))])]]))]))))]))])))]]))))])))]])))])])])]))]]])]])))])]])]]])))))])])])]])))]]))])]])])])])])))))]]]]]])])]))))))])])))]))])]]])]))])])))]]]))])])]]]))]))]])])]])]))]])]))]]]])]])]])])])))]))]]]]])]]]])]))]))])])))]]]])))))))))])))))])]]]])]]]]))]]))))])]]])]])]])])]))]]))]]))]]]])])]]])))))])]]]])]))))]))))]))])]]])])])))]))))]])]]]])])]])]])])]])])]]]])))])))])])]]])]]])))))]]]]))]))]))]])]])])))))]])]]]])]]))))])))]]])])))))]]]]]]))])))))]]))))])]]]]])))))]]]])]))])))))]]))))])))])]]))]]])])))]]])]])])]]])]))))]))]]]]]]])))])]))])])])]))])])]]]]]])))]))]))]]))]])]]]))])])))))))]))))])])))]])]])))))]]]])])]))]]])])]]])]))))]])]]]]]]]])])]))]]]))])])))]))]))))]]))))]])]))])])])))]]])]))))]))))]]))]]])])]]])]]])]))]]]]]])))])]])]))])])))))))])])]]])]])])]]]])])]]))])])]))]]))]])])])])]])]))])]]])]]])])])]]]]]]]]]])))]]]]]]]))])]))]))])]]]))]])]))]))]])]]])]]]])]]])))])))])])]])]))]))]))]])]])]])]]])))))]]])]]]]))])])))))))])))]]]]))]]]))]]]]]]))]]]]]])])]]]))]))])))]])]]]])]))]]))]]))))]))])))))])))]))])])]]]])))]))])))]])]))]])]))))))]))))]))]))))]]])])])])])])]])]])]]]]])])]])]]]])))])]])))]]]))])]))))]))]]])]])]]))])]))))]]]]))]]])]])])]]])]]))]]])])]]]))])))))]]]]))])]])))))])]]))]])))]]]]))))))]])]]))))))])])))])])))]]))]))]))]])]]))))])))))))])])]]]])))]])]))))])]]]))))]]])))]))])]])))])]])]]])]]]])))))]))]))]))]]))))]]))))])]])]])])]]])))]])))))])])))]]]))]])]]]))])]]]])))))])])]]))))])))]]))]])))]])))]]])]]))]))]]])])]])]]]]))]))])]))]])]]]))))]]))])]])]])))))])))]))))))])])))]])]]]]])))]]]]])]]))])))]])))]))))]))))))])]])]))])])]))]))))))]]))]]))))]]]))))])]))]]]]]])]]))]]]))]]])])]))]]])]])))))]])]))]]])]]))]]]]])])]]])))))]]]))]]])]]])]]])]))]]))]]))]]]]])]))])))]))]])))])))])])))))]))))))))]]]]))]])])])]))]))))))]]])])]))]]]])))]]]])]])]]])])))))))))))]])]))]]])]))]))))]]]))]])])]]))]]])])]]]))]]]))]])]]]]))]))))])]))]])))]))])])])))))])])))]))))))]]))]]])))]]]])]))]])))]])))))])))])]]]))]]]])]))))]]]]]))]])]])))]))))])))]]])]]]))]])]))]]))))]])])))]]))]]]]]))]]])))))])]))))])))]]))))]]]))]]]]])]]]]]))]))])]])]])]))]]])])])])))])))])]]))))]]]])]])))]]])]]))]])))]]]])]]]]])]]]))]))))))))))]])))]]]])))])])))])]))])]))]]))]))])))])))]))])]])]))])])]]])])])))))]])))]))]))]]]]))]]]))]]])]]))]]])]])])]]])))])))])])]))))])])]])])))))]]]]))])])))])))]))])])]]]])]))]]))]]])))))])]]]))))]]))])]))]))]]])))]])])))]]]])])])]]))]]))))]])))))))]))]])))]])]]))]]))]])]]]]]]]))])]))]))]])))))))])]]]]]]]]])]]]))]])])]])]))])))])))])])]]))))]))]))]]])]]])))]]]]]]))]])])])]]])]))]]])]))]])))]])]])]))])]])]])]]]))]]])]]]]]])]))))])))]])))])])]])])))]])]]])))])])))]))])]]]]]]]))]]]]]))))]))]]])]]])]])]])])]))]])))]])]))]))]]))]]]]]]]))))])]])]]))))))))]]]]])])]]))]]])]]]]]]]])]]]]]])])])))]]]))))]])]])]]]))])]))])))]))]))))]]])]))]))]])]]]]])]]))]]]])))))]))]))]))]))]]))])])))])])]]])])])])))])]))]])])))])))]))]]])))]])]))))]])]])])))))))]))]])])]]))])]]]]))]))]))])])))]])]))]])])])))]])])]]))]]])))]]))])]]])))])]))))]])))))))]])]])]])]]])]]])]]]))]]))]])])])]))]])))]])))]])]))))]]]]])]])])))])]]])]))]])]])])]])])]])])]])]]]))])])])))))])]])])]]]]]]]])))])])]]))))))]))))]]]))])]]]))]]]))]))]]))]])]])])]]]))]])]])))))))))]])))])))]]]])))))]))]))])]]]]]])])]]))])])])))))))]))))))]]])]]))]))]]])]]]]])]]]])])]]]]]])]))]])]]))])])]]]])])))])]])))])]]]))))])])))])]))]))])))))])))])]]])]]]))])]))))))))])))]]]))))))]])]]])]])))))])]]))))]])))))]])]]))]])]]))])]))]]))]]))])])]])))))])]]]])])))])]))]]])]]]])))]]))])]))])))]])])])))]]])]])]))])]]))))]]))))]))]))])))]]]]]]]]]]]]])))]])))))]]))])])]])))))))]]]]))])]))])]]))]]]])]]]))])]])])])]))]]]]))]])])]])]))])]))]]])]]]))])])))]]))])]))]))))])])])]])]]]]]])))))))))]))]])]))))])])))]])])]]])]]])])]))))))))])])))]])]]]])])]]))]))]])]]]]]]])])]))]))])))]))))]]]]))]]]]]])))))])))))]])]])]))]]])]]]]))]]))))))]))]))]))))]])])))]])))]]]]])]])]]))]]]]]]]))])]))]]]]]]]]]])])]]]))]]]]]]]]])]]))]])))))]]]]]])))])]]])]]]))))]])])))]]])]]]]]))]]))]]))])]))]]])]])])])])])]]])])]))]]])])])]]))])])))))]])))]))])]]]]))]]]])))])]])))]]]]))]]))]))))]]]])))])]]]))]]])]]))]]])]]))])]))]]]]])])]]]])))]]]]))))]))]]]])]))]]])]))]])]])]]]]])]])])]))])]))])])])])]])])])]])))]]]])]])))]]))))))])])))]]))]]]]])]]))]])]]])))))]]]]))]]])))]])]]]])]]))])]]))]])])]]))]))))]])]]]]))])))]))]]]))]))])])]]])]]]))]])))]))]])]]]))))]]))])))]]))))]])]])])]]]]))))])))]))))]])]]))))])]])))]])))])))]]]])])]]]]])))]]]))])))))]]]]])))])))))]))]))]]]]]])])]]]))))))))]]]]])))])))]))]])])]]]]]]]]))]]]])])])]))]))))]])))))])]])))])))]]))))]]]]]]]])))]))]))]]]]])])])])]])]]]])]])]])])])]]])])])]]]]])))])]])])))]]])]]])]]]))]))])])])]))]]))]))]))]]]])]))]])]])))])))]]]))])]]]]))])))])]]))])])))])))])]]])))]]])]))]]]))))]]]]]]]])]])]])])))))))])]]])])]])])]]]))]]]))]])]))]]])))]])))]])]]]))])]]))]]])]]]])]))))])]]]]))])))))]))))))]]))])])])]]))]))])]))))))]]))))))])))]]]])])]])))]]]))]])]]]])])))]]]))))))))]]))])))]])]]]]]])]]]))])])]]))]]]]))]]))])])]))])]))))]])])))))]]]))]]]]))))]))])]]))))))]))])])))]]]))]])]])]))))]]))]]))))])]])]))))])]])]]])]]])])))))])])]]))]]]])))])))))]))))]]]))))))]]))))])]]]]])))])))))))])))))])))))]))]])])]]]])]])])])]])]])]]]]))]))))])]])])])])]))]))])]]])]])]])]))]]]]])))))))]]]])])]])]]])]]))]])))))]])))]])))])]])]]))])]))]])])))])))]))]]))]]]))]])]]))]))))]]])))))]]]))]]]]]]))]])]]])]]]]]]]]))]]])]]))]])])]))])]]]))])))]]]]])))]))])]))]]])))))))])))]])]))]]))]])]))])]]]]]])]))]])]))]]])]))])])])]]])]]))))])]))]])))])))])]]])]]])))))))])))])]))))])])))])]]])]))])])]]))])]]]))]]))]]]))])))]))))]))]))]]])]]]))))]])])]]])))))])]]]]]])))]])]]]]]))]]))]))])))]]]]]]])])]]]]]]]])])))))]))]]]]]))]))))]]])]))]])]]))]]]])])]))]))))))])])]]]))]])]]))])])]])))))])])]]]])])])]]]])]]]]])))]))]))]))]]]))]))]))])]]]]))]))]]])))])])))]))]]))])]])]]]]]]])]])]])])]))))))]))])]))]]]]]))]]])]]]]]]]))]])))]]))))]]])))]])])))])])))]])])]]]]]]])]))]]))]]]])]]))]]))]]]))]])])]]]]]))))))]])]])])]]])))]])]])])]]])))]]])])]))]]]]))))))]))]]))]]]))))]])]]]])]]]])]))]]]))]]]])]))))]]))]]]])]]])])]]]))))])]))]))]))))])))])]])])]]]])))]]]])))])]]]]]])))]]]]]])]]]])]))]])))]])]])])))]))]))])])]]))]))]))]]))))]])]]])]))))]])]]])]]]]])]))]))))]]))]]]]]]]]]]])))))]])))]))]])))]]]])]]])]]])])]]]])]]))]))]]]))]])]])])])])))]))])))])])]]))])]]])))])))]))]]])]]]])]))])]))]]])])))]])])]]]]]])])]]])))])))]]])]))))))))])))])]]])])]]])]]]]]]])]])])]))]]])))]])])]]]))]]]]))))])])])])])))])]]]))]]]]))]])]))])])]]])]))]])])))]])]]]]])]))]]]]))]))]])))]))]))])])))])]]))]]]))))]))]]]]))])]]))])]])])]))]))))))]]])]])]]))])]]]))])]))]])]]])]]]]]]]))]))]]]))]))]])))))))]))]])))))]]]]))]])]))]]))])]]]]))])])]))]]])]])]]]]])]]))))]]])]])])]])))]])])]]]]]]]))])))]))))))))]]))])])]])))]]]]]]])]])))))]]))))))))])]))))]))])]]))))])))]))])])))])])))]]])))]])]]]))]]])]])))]]))))))])]))))))]]])])])]]))))))]])])))))]])))))))))))))])))]])])])]]]]]]]))))))]]]))]]]]]))]))]]))]]))]))]])))])])]]])])])])]]])])]))]])]]]]))])]])]]]])))])]])))]]]])])]))]])))])]]]))])))))]]]))))]]]]]]]])]])])]))))]]]]))])]]]]))]))))]]]])])]))])]))]))])])])])]])]))])])]]])))]))]])])]]]]]]]]]])]])]])]]))]]]]]))))))])]))]])]))])))])]]))))))]))))])))]])]]]])])))]])]))]]))]))])])])]]])]]])]]])]])))])]])))))]))]])))])))]))]))]]])]]))]))))))]]))])))))])]])))]))))]])])])])])]))])]]]))])])]]])])]]))])]))])]))))]]]])]]]])]])]]])]]))))]]]))))))])))]]])))]))])]]))))]])]]])]])]])))))))])])]))))))))]]))])])]))]])])]])])]])])))]]])]]]]))))]]])]]))]))))]])))]])])]))]])])]))))]]))])]]]))))])))))))))]])])]]))))]])))])]]]])]])))])]]]]]])))])]]))]]]]]]))]]]]]))])]]]])))]]])])]])]))]]])]]))))])))]))]])])]]]]]]]))]]]]))])]])]])]])))])]]])]])))]))]])))])]))])])]])))))))])]]))])])]])])]]]]])))))])))]]]]]]]]]])]]])]]))]]]])))]]))]])]]))))))])])])])])]]]])]))])])))]))]]))))]]])]])])]))]))]]])]]]]])))]))))])]])]]])]))])]])]))]])]])]))))])]))]))))])])]]])))]])]]]]])])])]]]))])])])]))))))))]])]]]])))]]))))))]]))))]]))]))])]]])]]]])))])])])]]))]]])))])]])))])))]))]))))]]))])])])])))))])])))]])]])]]])]]])]]))])])]))))])]]])])]]]]]])])]])]]]]]))])]]))))))))]])]]))]])))])]])]])])])))]]])]]]))]))])]])]])]]]])])]]))])])])))])))])))])))))))])]]]]))]])]]]]]]]])]))])]))]))]]))])]]]))])))))]]))))]]))]]))])))]]]])))]]]]])]))]])]]]]]))]]))]))))]]]))]]])])))]]]]]))])))]])]))))])))])]))))])]])])]))))]])]]]]]]]]))]])))]]))))]])]])))))]]]]))))]])))])])))])))])]]])]])]))))]]))]))))])]])]]]])))]]))))]]]])]]))])))]]))])]]])]]))]))]))])]))))]]]]]))]))))]])))]]]))]]])])])])))])))]])])))]]]]]]))]))))]])])))))])))]]]])]]]])]))]]))]))])]]])])]]]]]]]]])]]))]]))]]]))))])]]]]))]])])]]))])]])]]]))]))]]]])))))])]]))]))]]]])]]))])])]]))]))])]])])]))]))])]]])])))])]]]]]]]]]]))]))))]]]]))])]]]]]]])]))))]]])]])]]]]]]]))]])]))))))]]]))]]])]]]]))])])]]))]])]])))])))))])))]))]]]]]]]])]])])]])))]])]]))]))]])]]]]])))]]))])]])]]]))]])]]])))]])))]])]]]]))]]))))]])]]]))]])]])]])]]]])))])]])]]])]])])]]]])))]]]]]])])]))])])))]))]]])])]))]))))]]])))))))])))))])])]]))))]])]])]]]])]))]))]))))))])))]])))])]]))])])])))])])])))]))]]])])])]))))]]]])]]]]))]])])))])]]])])])]]]]))]])))]])]))]])))]])]]]]]))))))]]])])]))]]))))))]]]]))]]]]])]])])))))])]]]]]]))]]))]]]])))]]])]))])))]))])]]))]]]))]))])))])))]])]))]])])))]))]]])))]))))]))]]])])))]])))]]])]])])))))])])]]]])])]))))]])))])]]))]]]]]))])])]]])]])]]))))))))]]))]]]])])])])]]))])]])]))]])])])]])]]]])])]))))))))])])))])])))])))]])]]])])]))])])]))])))]]])])])))]]]]]]]])]))]]])])]]]])])))]))])]]))]]]]))))]]]))])])]])]]]]]])])))]))))]))))]]]]])]))]])]])))))]]))]])]]]]])])]))]])))])])))))])]]))])])))))]))]]]]]))]))]])]]]))])])])]])])]])]]])])]]]))]]])])]]]]])]]))]])]]]])))))]]]]]]])]])))])]]))]]))])])]]])])]]))])]))])))])]]))])))]))])]]))))))]])])])]])]]))]]])])]]])]]])]]]]))]])]))]])))))]]))))]))]]]))]]))])]]]))])))]]])])]]])]]))])))))]])))]))))])]))])]))]]))]])]]))]])))])))]]])]]]]])]])]])])))))]]]]]])))])]])]]]]]])])]]))))]]]))))))))]]))))])])]]]]]]])]]]]))))]])))]]))])]]))))))]))]])))]]]))))]]))]])])])]]]]]]])])]]))]))]))]))])))]]]]]))])])])]]])))]]]]))))]))))]]])]))]]])])])]]])]]]]))]])]])])]])])])))])])]]))]))])]]))))])]]))]]])])))))))))])]])]))))])])])])))))))])])])]]))]))])])))))])])]))]]]))))))]))]])]]]]]])))]]]))])))]))]])])])]])))])])]]])])))]]])])]))])])]]))]]]])))]])])])])])]]])]))]]]))))]]])])]]))])]])])])])]]]]]])]]]])])]))))])]))))]])]]]]]))))]]))]])]]]]]])]]])]]])]])]]]))]]])]]))))]]])]]))]]])))])]))))))])]]]]])])))])]]]])]]]]]]])]]))])))))))]])))]))]]))]]])))]]])])]))])])])))))])]]))]]])]]))))))])]])])]]])))]]]]]])])]]])])]])]))]))]]])]])])))]))))])))]))))]])]]]]]))])]]]]]]))])))))])])])]]]]]]])]]]]]]))]]]])])))])))]]]])]])]]]]]))])]])]]]])]))]]]]])]]))))])]))]))]]))))]))))])])]]))])]]])))]]])))]])]))]])]])]]])])]]))]]]]]]])]]])]])]]))]]))))))))))))]))])])))]]]))])]))))]]])])]))]]))])]])]])])]]]))])))])])]])]))))])])]]]))]])))))]]))])]]))))]]]))]])]]))]]])]]]]]))])))]])))])))]]))))]])]]]))]])))])])]))]])))]]))]]])))])))]))])]])])))))])])])])]))]]]]))]]])))]))])]]]]]])]]]))]]]])])))]]])]])]))]]]))])]]))]]]]])))))))]])])])])]))))))]])])])])])]]])))])))))))]])]]])))]])))))]]])])))]]]))]]])))))]]])])]]])]]]]))))]]]]]]])))]])])])]])])))))))]])])]]]]]]])])])]])]]]]]]]]]])))]))))))))]]))])]]))]))))))])))]]))]])))]]))))))))])))]))]])]]]))])]))))])]]]]])]]))])]])]))))]))])]])]]))))])]]]])))]]))))])]]))]]])]]))])])))])))))]))]])]]]]]]]]))]))))))))))])))))]))])])]])]])])]])])))]])])]])]])]])))]]])])))])])))))))]]])]))]))))]))]]]))])]))))]]))))))])))])])])))])]))])])])]]]]]])]]))))))]))])]])))])]])))))]))]]]]])])]]))])]])]])])]]]]]])]]))])]))]]))]]]])]]))])])]])])]]))])]])]])]]]])])))]))])]]]])]])))))]))]]]))]]]))]])])]])]]]])]))]))]])))]]])]]])))]]))))])))]))])]))]])]]])])])]]]]]))]]])]]]]])])))]]]]]]))])]])])]])]])]))))]]]]))]]]]]))))])]])]))]])))])]))]))]]]])]]))))]]]))]]])))])))])])])]]))]]))]])]]]]]]]]]]]]]]]]))]])])))]]])))])]]]])))])]))]]))))]])]]])]]))]]]])]]))))]]]])]]])]]))])]])]]]]]]]]]]))])]])))]])])]]))]]])]])]]]]])]))]]]]]]]))))))]))))))])]])])]))))])]])]]]])]]])]))])])]]])])]])])]])]]))))))))))]])))]]]])])])]]]]]]])])])])]]))])]])))]])])]]]])])]]]]]]))]))]]])]]])))))])]]))]]]])]])])])))))]))]]))))]]))]]]]])])]])]])))])))])])))]])))]])))])]])))]]))))]]]]]])))]]])]]]]])])])]]]])]])]]]))))])]])]])]]]]]]])))]]))])]]))))]))]]])]]]])]]])))]]]])]]]])]]]]]]))]]]]])])))]]])))))]]]))]))))])])))]]])))))]])]]]]])))))])))]))))))]]])]]])]])]]]))))]]]])))]])]]]]))])]]]))])]))]]])])]])]))]])]]]])]]]))]]])]))))]])]))])])]))))])])))]]]])]))]]))])])]))))]]]]]]]])]])]]))])))))))))]])]]]))))])))))]))]))]]]]]]])]]])]]]]]])))])]]])))])))]]]])))]]])]]))))])]))]]))]])]]]]]))])]])))]])]]))]))]))]]])]])]]]])))]]]))]]])])))))))]))]]))))]]]))))])))]))]]]])])))])]])]))]]]])]))]))])))])]]]]]))]]]]]))]]]]]])])]))]])])]]))))))))]))]]]])])))))]])])]])]]))]))])))))]]]]])]])])])))))])]))])])]]]]]]]])))))))))])))]])])])]])]))])]))]))])]]]])))]])))])])])]]]]))))]])]]))])]]]]]])))))))))])]))))]))]])])]]])]]])])))])))]]]]])])]]]])))]]]]]))]))))))])])])))]]]])]]])]])])))]])])]]]]])))))))]])]]))]]]]]]]]]))]]]])]]))]]]])]))]))])]]))])])))]))))])]])])))))])]))]])]))))])]]))]]))]]))])])))]]))]]]]]))))]])]]))]]))))]]))])))]]])]]))])))]))])))])]))))]]]])]])]]))]])])]))))))]]))))]]]]]))]])])])]))]))])])])]]]]])])]]])]])]]]]]]])]]]]]))])]]]])]]))))])]))))])])))]]]])]))))])]])]))]]]]]])))))]]))])])]))]]]]))]]))])))]))]])]])]))))]]]]])]))]))]))]))))])))])))]))]]))]))])]])])]]]]))))])))]))]])]]]])]]])])]]]]]])]]])))])])]])]))]]))]]]])]]))]]))])))]])])])]]]]]]])]))])))]))]])])])])]]]]))])]]))]]]]])))]]))]])]))]))]))]]])]))])))))])])]]]]))]]])]]]]]])]]])])))])])))]]))])]])])]])]])]))]])])])]]]]))]]]])]])]])]]]])]]]))]))]]]))]])))))))]]))]])]])]))]]]]])])])]]])]]])])]]]))])]))]))))]])])]])]]))]]]])]))))])))]]]]))]]])))))]]])])]]]]))]])])]]]]]))])]]]])]]]))))])))])))])))))))]]])))])))])]]])]]])))]]])])])))])])])])))])]])]])]])]))]))]]])))))))])])]]]]))]]))])]]]))))]]))])]])])]))))])]])])]]))])]])]])))]))]]]]))]])]]]])]])))])))]))]))])))))]])])]]))))]]])]]])]))]])))))]]])))]])))]))]]))))]]))]]]]]]))]]]]))))])]]))])])])])]])))))]])])]))]])]))]))])))])]]]]))))]]))]))]))]]])))))))]])]]]))]]])))))]])]]]]]])]))]))])])]])]))])]]]))))]])]))]])]]]]]]]))]))])])]]]]]]))))]))))]])]]])]]])]))))]]])])]])]]))])])])]]]])))))))))])]]])])))))))]])]]])]])]])]))]])]])))))]]]]))]))]]]]]])]])]]))]]]]))))]))]))]))]]]])]))]])))])])])))))]))))]))]])]))]])]])]]])]))]]])])]])]))]))]])]]])))])]))]])])]]))]]])])])]]))])]])))]))]]))]]]])]])])]]]])]]]]]])]))]]])]]]))))])]]]])))]]]))])]]])))]])]))]])]])])]]]]]))))]]]])]))))))])))]])])]))]]]]))]))))])]])]]])]))]])])]]])))]])]))]]]])))])))]]]])]])])])))))]]])])]]]])])]]]]))))]]]]))))])]]]])]])]]]])]]])])])))])))]])])))))))))]]]))))))])])])]]]]])])]))]]))])]]))]]])])])]))]]])]])]]]))))]]]]])))]])]]])])]))))])]]]]]))))))]))))]])])])]]]]]])]]]]))]])])])]))])]]))])]])]]))]))))]]])]]]])]]]])])])]))])]))])))]))]])))))]]]]])])]))]]]]]]))])]]])])]]]))]]]])])]])]]]])]))]])]]]]])]))))]]])]]]]))]])]]))))]))])])]]]]]]))]))))]]])]]))]]]]])]]))])))))]]])]))))]]]]]]])])]]]]]]]))]))]]))]))))]))]))]))]))))])])])])])])])]])))])]))]))))))]]]])))])]]]))]]]]))))]]))])]]])])]]]]]]))]))]))]])]]]]))]))))]))]))]]]))))))]]))]))))]])])])]]])])]]))))])]]))))]))]]]]))]))]))))]]]))]]]]]])]))))]))])]]])]]))]]]))])])])])))))]])]))))))]))]])])]]])])))]])]]]])))))))]])])))]]])]]]])])])])]])))]]))]])]])]])]]))))]])))]])]]]])))))]))])]]))))])])])])])]]])))]]])))])]))]]])]])]])])]]))]]]])))]])])])])]))]))]])])]]]])])]))])))]])]])))]]])]])]]]))]))]))]]]]))))])]]]]))]])]]))))]))]]]))])]])])])])]))])])))))])]])])]]]))))))])))])]]]])))]]]))]]]]]])))))])]]))))]])])]]]))))]))]))]]))])]]])])])))])))))]])]])))]])]]))]])])]]]]]]])])]]))]]]]))]]])]]))))])])])))))]))])])]]]]))]]]])])))])])))]))]]))))])])]]]]))))])))])))])]])))])])))])])])])]]))])]]]]]]]]]]))]]))]]))]))]]]]]]]]]]]]]]])]]])]]]])])]])]])))]]))]])))]])))]]])]])))))])))]])])])]]))))]]]])))))))]))])]])])])]])]])])]])])]]])))]])]]))]])]]]))]]))])))]))]]])))))]])])))]])]]))]])])])])]]])))]]]))]))]])]))])))]]]]]]))]]))]]))])))]]]])))]]])]]))))))])])))]]])]]]]])])]])]]])])])]))])))]])))])]]]]))]]])]))])])])]]])]]]]])])))])]])]])]])]]])]]]])))])]]]])))))]])]))]])]]])])])))))])]]]]))]])]))])]))]))]]])))]))])]))))])])))]]))])))])))))]]))])])])]))]]])]]])]])))])]]])))])]))])]])))]]))]))]]]))]))]])]]))]]]]]))])))))]))]]]))))])))]]]))]))))])))])])]))]]]))]])))]]])])]])]]))])]])])]]))])))]))]])]))]))]]]]]]])))])))])])]])))])])))))))])])]))]))]]))]]))]])])]]))]]])])]]]]]]]]))]]]]))]]]]))])])))])))])])]])]]]]))))]]]]))))])]))]])))])]]])])]))])]])]])]]]])]])]]))))])]))]]])]))])]])])))])))])]]]))]]]]]))])))))]])]]]]])]))))]))]])])]))]))]])]]))]]))])])))))]]))))]]))]]])]]])])))))]]))])])]))])]])]))]))])))]]])))))])])])]]]]])]])]]))]))])))])]])))))))]]])]])]))])]))]))]])))))))]]])]]]])]))))]])]])]))]])])))]])]])]]])]]])])))]]))]]))])])]))]])))))])])]]])]]]])))]))]))])]])]))))]))])])])))))])))])))]])])))))])])]])))]])]]]))]]])))))]]]]])]])]])])]))])]]]]))]]))))]])])])]]])]]]))]]])]]]))))])]))))))]])))))]]]))]])))]])])]])])]]])])])])])))]])]]]]))))))])]]))])]]))]]])])))])])])]]])])])]))))))]]]))]]))]]))]]]]])))))]])))]]]]])])]))]])]]))]))])))))])])]]]]))])]))]))))]))))])]))))])]]]]]]]])]])])]]])]))]])]))]])])))]))]]])))]])]))]]))]])))])]]))]])]]]])])))]]]]))))])]])])]))))])]])]]]])]])]]]))]]))])))))])))]]])))]])]])]]))))]))]]])]]])]]))]))]]]]]]]]])))]]))]])]]])]])])]))))]]]))])))]))))]])))]))]))))))]])])]))]]]])]]])]))]))]]])])))])]]]]))]]))))]])]])])])]]])]))]]))]))])]])])))]))]])]]]])])]))])]]]])])])])]]]]]])]]))]]]])]]))])]])))]]]]]]])]]]))])]])))))))))]])]]))])]]]))))])]]))])))))))))]]])]])]])])])]]]])])))])))]])]]))]))]])])]])))]]]])]]]])]]]]]))])])]]]))]))]))])]]]]))]])])])]]))]])])])]])))))]]))]))))]]])]])])]]]]]]]))]]))]))))]]]))]])])))])])]]))]))))])])])])]]])]]]]])]])))]]])])]))]])]))))])]])]))]])]]))]])])]))]]])))])))])]]])]]])]])])])]]])))]]]])]]))])))]])]])])))])))]])])])]]]))]]]]])]))]])]))])]))]]))]]]])])]))]])]))))]]))])))]]])))]))))))]))])]))]))))])))))]))]]))])))])]])]))]]])))]))]]]]]]]))]))])])]))))]])]])))]])))]]])))]])]]]])])))])]]))))]))]))]))])]))))]]]))))))])]])]]]))]]])]]]]])]]]))]])]]]]]]])]])]))]]))])])]))])]])])])))])])]]]]])])))]]))))))]]]]]]]])]]])))))]])]]])]]))])))))))])]])]])]])]]])))))]))])))))]]])])])]])))]]]))))])))))))))]])]]]))])])))])]])])]])])])]]]])])))))))]])]]]))]]])])]))]]])])]))))]]]]))))]]]]]))]])]]]]]]]))])])]]))]))])))))])))))))]))]]]))))))]))])]])]])])])]))))]))))]]])])))))))])]])])))]]]]]])])])))]]]])))]]])]]))))])]]]))))])))]])])]]))]]))])]]])])]]))])))]]))]])])]))))])))])]]])))]))])))]))])])]]))))))])]]])]))])]))])])]]])))])])))])))))))]]]]]])]]]))])])]]))]]])))))]]))])]]])))))]])]]))]]))))]))]]]))))])]])])))]]]])]]])])]]]))))))))]]]]])]))]))])]])))]]])]])])])]])))]])])])))]])]]]]))]]]]))])]])))])]]])))))))]]]])])))])])))]]))]]))])]))]]])]]]])])]]]))])]))))]]))]]))]]])))]]]]]]]]]]])]]])]])])]))]]]])])]]))]))]))])]]])]]))])]]])])]]]]]]))])])]]])])))))])])))))))]))))]]))])))]))))]]))])]]])))]]))]])]]))]))]])]))]]]))]]))]]])])])))]]])])])])])))))]]]]]]])])]]))])]))]]])))])]]]]])))])]])]))))])])]]])]))]]]]]]])])])]])))))]))))]]])]]]]))]))))]]]]]))]])]]]]]))])]])]]))]]))]]])]]))]]))]]))))])])]]]]]))]))]))]]])]))]]])]])]]])]]])))]])])]])))]])])]]))])))]]])]]]))])]]]]])])]]]))])]]])]]))]]])]]]])]))])]]]]]]))))))))])]))])]]]))))))))))]]]])))]])]])])])]])]])]])]]]))])]))]))])))])]))]]]])]])]])))])]])]]]])]]))]))]))))))))]))])])]]))))]])))]]]))))]))])]]))]))])))])])]))])))))]])))]]))]]]])))])]])]]]))]))])]])))]]))])]])]])]]))]]]])))])))])))]]]]))])]))]])]]]))))))))]))))])]]]))]]]]]))))]]])]]))])])))])))]]])])])])])])))]])))]))))))]])])))]))]]))))))))]]]])])]])]]])))]]]]]]]]))]))]])]])]]]]))]])]]])])]]])))]))))]))]))]])))])]))]])]])]])])]]))))])]])])]]])])]])])]))]]])])])])]))))]])]]))])]]])]]))]]]]]]])]])]]))])])))]]))])))]))]))])]])]]))]]])]))]]]))]]]))]]]])))))))]]]))]))]))])))]])]])]])]]))]))]]))))])]])])])))])]]))))])]]]]))]])))])])])))]))])]]]))]]]))))))))]]))))])]]))]))])]))]))]]]])))]]]]]]])])])]])]]]])])]]))))]))]))]])]])]])]])]))))))]]))))]])))]]]]])]]]])]]]]))]]]))])]]]]]))]])]]])))))])]])])))))])]])]))]]]])))])]]]]])]]))])))]]]]])]])])]))))]])]]]))]]]))))]]))]])))])]))]]))]))))]))])]])])]))]]]])]))]])]])])))]]]]))]]])))))])))])))]]]))]])]]])]])])]))])]))])])]]])])]]]]))]]]))]))])])))])]])])]])))])])])]))))]]]))])))]))))]))]))])]]))])]]]))]]]]]))))]])])]])))]])]])))])]))]]])]])))]))]))]])])))))]))])]]))]]]))])]]])))))]))]]]))]]])))]]]])]))]]))])]]])])]]]]]]))]])]]]])))])]]))))])]))))])]))]]]))]]]])]]])])]))]]]))]])])])]])]])]))]]))))]]))))])]]]]]])]]))])]])]]))]])]))))))]))]))])])))))))])))]))))))])])))]))]))])]]))]]))))]))])))))]])])))]])]]]))))]]])]])]))]))]))])])]))])))])))])]))]])])))))))))])])]]]]])]))))]]])))]]))])]]])]]]))])))]]]]]])]]]])])]]))]])]]])]))]]))]))])]]])))))]))]))))]))]])))]]))]])])])]])))))]])])])))])]])]))]))])]))]]]))]))])]))])]])]))]))))))]))]]])]])))]]])))))]))]))]))])]))]])]))])]]])))])])))]]))])))]])]]])]))])]]])]]]])))]]]))]]]]]]))))))))])]])]]])))]))))]))]]]))]))]))]])))]]]])]])]])]]]))]))))]])]]]))])])))))))]))]]]])]]))])))]]]))]])]])))))))])])])])]]])))]]]]))]]]])])])))])))))))]]]]]])))]]]))]))]]))])]))])])))]))])))]]]])]]]])]]))))]))]))])))))]]]]]]])]])]))))]])))]))]))]]])))]))))]))))]]])]]]))])]])]]]])]]]))]]])]]]]]))])]))]))])])]))])]]]])])))))]]]]])])]]]))]]))))))]])]]])]]]))))]]])))])])))])])])])]))]]])))))]]))])])))]]))))]]))]]])]])]))]))))]))])))])])))))))]))]))]]]])]]])]])]))]]]]]))))))))]]))]])]]))])])]))]]))])]]]]]]))])]))))))))))]])]]))]]])]])))])])]]])])]]])])])]])]]]])))])]))]])]]]))])))]]))])]]])]))]]]]])])])]]]])]]))]]))]))])]]]))]]))]])]])])]]])]]))]))]))))]]))]])]]])])]))])]]])]))))])))))]]]]]])])]])])]])))])))))]]))]]]])]]]])])]]])]]]]))])))])))]]]]]))])))]])]))])]))))))])])]]])]]]]])]]]]]]))))]])])])]))]))))]))])]]]))))]]))]]]]]))))])]])))])]])))]])))])))]]])))))])])]))]])]])]))]))]])])]))]])])]])])))))))]]]])]]])]])))]]]])])]])))])]]])))]])))]))]])]]))])))]))])))))))])])]])]]])))))))]])]]]]])]))))]))))]))]])))])]]]]))))]])]]))])))])])])]]))]]]]]))])))])])]]))))]]))]]))]))])]])))]]))]]))))]])]))))]]]]))]])]]])]))]]))]))))))])]))]]]]))]))))))]]])))]))])]]]]])]])]]]))))])])])])]]))])])]))]))]]]))])]]]))))])]]])))]])]))))])]])]))]])])]]]])]))])))])))))]]))])]]])]]))])])]]])]))))]]]]]]))]]))]))))]]))]]])]]]])]])))])]))])])))]]]]))]])]]))))])))))))))])))))]]]]])]]])])]))))))))]))]])]])]))))])])))]))]]]))]]])]])))]])])]]])])]]])))]])))])))]]]))]))]]]]]))]])])]]])]]))))])))])))))))])]]]])))))])))))])]))]]]]]]]))]])))))]]]])]])]])))]))]])]))])]]))]]))]]])))]])])))]))])]]]]))])])))]]])]]]]]))]]]])))))]))]])])]))])]])]])]))]])))]]))]]]]])]))]]]))])))]))]])]])]]))]]])]])])]]))]]]])))]]]]]]]))]))))]]))]])]))]]]]]]))])]])))]]))]])))]]))]))]]]]]))))]]))))]]]]]])])]]])))])]))])])]])]]]))]])])))])]]])]])])]))])]))]])]]])])])))]))]))))))))]])])]))])]]))))])]))]]])])]]))))]])]])])])]))]]]]])]])))])]]]]]]])]]))]])]]])])])]))]))))))])))]])]]]]]])]])]]])))])))]))]))]]))]]))])))]))])))])]])]))))]]]])]]]]]])])]])]]))))))]]))))]])]]))])]]]]]]]]]])]])]]]])]))))))])))))))]]]))])])]]]]]])]))]])))]]))])))])])))]]]]])))])))]))))])]))])]]])]]]]))]]]]])])])])))])])])])]])])))])])])])]]]]))))))])))])))])]))]]))]]])]))])]))]))])]]]])]]))))])]]]]))])))]))]])]))]]))]]])]])))])]])]))]])])]])])]]))])))]])]))])))])])]]]]])]]))]]]]]]))))]))))]))]])))]))))])))]]]]]))]))]]])])))]]]))]])]]])])]])])]]]]])])))))]]]]))]]])]])]))])])]])))))]])])))))]]))]))]]]])])]]]))]])))))))]]]]]]]]))]]))]))]]])]))])]))))]))]]]]]]])]]]])]]))))]))])])]])])]]))]]])]])]))])])]])]]]]])))]))))]))]))])))]]]]])]])))))]))])))]]])])]))]])))))]))))]]]))))))])]]])]]]])))])]))])))]]))])]])]])]]]]))]]]]]]])]))))]])])))]]))])]]]]]]])])]]))))))]))]])))]]]]]])]]])])])])])]]]]))))]))]]))))]]]])))))))])]]]))])]])]])]]]]])]]]])]]]]]]]])]]]]]])])]))])]])))]])]]))))))]]))]]]])])])])]]]]])])]]]))))))))]]])))])])]]]])))]]))])))]]])])])))]]]])]))]]]]]]])]])]])])]])]))]]])]]]])]])))))]]))])))]])]]]]])])]]))))]]])))))]]]))]))))])]]))]])])]])]]))]]])]]))]]]))))]]]))))))])])])))]]])))])])]]]]]))]]]]]]))])]]))]]]])]]))))]]]]]])])]]]]])))]])]]])]])])]]]]]])))))])]])]]])])))])])))]))])]]]]]]]])]]]])])]]]]]]]]]))]]]])))))]]]))])]])))))]]]])]]]])])]))])))))]))]]]))]])))]])])]]])))))]]]))))])])))]])]])))])))])))]])]]]]))])])]]])])]])])))))])]]]]))))]]]]))]]]]]]))))]])])]])))))])])))])]]]]))]]]])])])))))])])))]])]])))]])]]))]]])])]]])])])))]])]])))])]])]]]]))]]]])]])])])])]]]))])))])))])]]]]]]]]])]))))]]]])))])])))]))])])])))]])))))]]])])]]])))))))]]])))]]])]))]))]))]]])]]]])])]])]])))]])]))])]]]])))]])]]])])])))])))])))])])]]]))]]]])]]]]])])]))])]]]]]]))))])])]]]]]]))])))))]]]]]))))]]]])])])))]]))))))]]))]]])]]]]]]))])))]]])))]])]))))]))])))))]]]])]]))])]]))])))]]]])]]))])])])]]]]]]]]))]])]]])))))]])))))]]))]]]]]]]))]]]))]]))))))))])])))]]]]]])))))]])))))]))]]])]))]))]])])]]))))])]])]])]]))])]]])))))))])))]])]])])])])]]))]))]]]]]])]])))]]])])]])]))]])]))]])]))]]])))])])]]))]))]])]]])]]]))]))])]])]))]])]])))]]])]))]))]])])]])])]))])]]]])]])]])]]]]))))]))]))))])]])))]])])])]]])]]])))]))))))))))]]])))))]))])))))]]]))])))])]]])))))]])))]])]]))])))]])]]]))))])])])]]))]]))))]]]])]]))))])]])]))]]))]]])))])))]]])])]))))]]]))]]]])]))]]])]])))]])]]])))]))))))))])])])))]]]]]))]]]))))])]]])])]]]])))))]]]]]))]]])]))]]))]]]]])]]]])))]]]))))])])))]))]]])]))))))]]]]]])])]]]]))))])])]]]))]]])])])]]]])])]]))])))]])))]]))])])]))]]]))))])])))]))]])])]]]))])]])))]]))]))))]])))])]])]]]]])))])]]]))))])]]))]]])])))))))]]]))])))]]])]]]]]]]]]]))]]])]]])])))]]]]])]]]]))]]))])])])])])]))))])])]))))]))))]))]))))]))]))))]])))]))))]])))]]]]]]])]))])]]]]))))]))]))))))))])]]])]))]))))))]))]]])]))]))]])]]))]]]]]]))]]])])]))]))))))))))]]))]))])]])]]])]]]]]])]])))]]]]))])))]])))]]]]))]]))])]))]))))]])))]]]))]])]])])])]]])]])])))))])))]])]))))]))]]))]]])])]])))))))])]]])))))]]]))))])]]))))])])]]))))]]))]))]]]]])]])]])))]]])]))])]]]))]]))]]]))]))])])]]]))]]))])]]))]))]))])))]])]]]))]))]]])])]]])))]))])))])))]))]]])])]]])]))])])])]])]))))])])])]))])]])))]]]]))]]))))])]))])]]]])]]]]]))])))])))]])]]])))])]))])])]]))])]]))]])))]]])]]))]])]))]]))])]]]))]]]]))])]])]]]]))))])])]])))]]])])))))]])]])]]]])])]]]))))))]]]))]]])]]])))]])]]))))]]))]))])]]])])])]])))))]]]]])]])]])])])]))]]]]))]))))))])))]]))])))]])))]]]]))]])]]])]]]))])])]]]))]]))])))])]])))])]]))))))))]))))))]]))]))]))])])]]]]]])))])]]]]]]))])))))))]))]]]))))])]])]]]]]]]]])]]])]))]]]]]))]))))))]))])]])])]))))))]))]))))]))]])])]]]]]])))])))))]])]))]))]]]))])]))]]))]]]]]]]])))])))))]])]]])])))])]))))])]))))))])])])])]]]])]]))])])]]]]))]]))]])))])])])])]))])]]))])))]])]]])]))]]]))])))))]]]]))]])))))])])]]])])]]]]]])))]))))])]]]]]]]))]]]])]]]]]))]])]]]]))]))])]]]]])))]])])]]]]]]])))))]))))]))]]]]))])]])])]])))))))]]])]]])]]])]])]]]]])]]])))]]]])]]))))]]]))))]]]]]]]))))])]])])))))])]]))])))])]]]])]])))]])))]]])))]])]))))]))]]]])]))))]]]))]))])]]))]])))]))))))])])])]]]])])])]]]))]))])]]))))]]]))]]])])]]))]))))]]]))]])))))]))])]))]))))]))])]))])])]])])])))])]]))]]))]])))]]))))]])]])))]]])]))]]])]]]])))]]))]))]))]])]]]]]))]]))))))])]])))]])])))]])]))))))])]]])]])))])])]]])]])))])]]])])]]))])])]))))])]]]]]]])]))))]]])]]])))))]))])))]])))]])]])]]])]))]]]])])])))])]])))))]))])]]])))])])]]])]]])])))]))]]))]]]])]])]]]))]])))))))])])]]]]]]]))]))]))])]]]])])])])]]]))])]]]])]]]]])]]])]])))]))]]]]]])]]])])]]))]]]])])]))]]))]])])]))]]))]])])]]))]])]])]]])])]])])])])]]]]))))]]])]])])]]))]]))])))))])]))])]))]))))))]]]]]))]]])])]))]])]]))]]]]])])))])))]]]])]]]]])]))])]]]))]]]))])])]])]])]]))])])])]))])])))]))))]]])]])]]])]])))]])]))])])]])]])])])]))))])])]])))]]])]])))]))]])))))]]]]])]]]]]]]]])]]])]])])]]]]))]))))]])]]]])))]])))))]]]]]]]])])))]]]))]))]]]]]])]))]))])))]))))))]))))))))))]]]]])))]]]]))]]]]))])))))])]]]])])))))]))]))))))]]]])]))])]]]]]])]]]]]))))))]]]]))))))])))])]]])])))]))]))]]))])])]))))))]]]])])))]]))))))]]])]])])])]]])))]]]]))]))]])))))]]]))]])]])])))])]]]]]])]]))))])])))]]))]])]])))])))))))])))]))]]])]))]))))]]])))))]]])]])))]]))]]]]]))]]]])]]))]])])))))]))]])))))]])]]])]])))]])]]]))]])]])]]])))))]))]])]))]))]))]]]]))]])]))]]])])]))])]]]))]]]]])]))))]]])])))]]))))])]])])])]))]))]])]]]]))]]]])])]]])])))]))])]]]]))]]])]))])])]]))))))]]]])])))))]))])]]]])))))))])])))]))])]]))])]]])]]]))]]))])))])]])])]]]]]))))])]))))]])]])]))))]])]))])])))]])]))]]]]]]])])))])))]))]]))))]])])))]]])])])]]))))))))])]))])))])])]])])]]])))]])]]]]]])]]]]]))]))])))])]))))]))]]]])))))])])])))])))))]])])))]]))]])]]))]))])]])]]))]]]))))]]]]]))))]])]])]))]])))))]])]]]])]))))))]]))])])]))])])])])]))))]]])])]]])]])))]]))])]]))]]])])))]]))))))))]])))))]))))])))]]))]])]]])))]]]])]))]])]]))]]])]))])]])]])]])]]]]])))]))]]))])]]]])]]])))]]]]))])]]))]])))))]])))]])])])]))]]))])]))])])]]))))])))))]]])))]]))))))]]])))])])])]]])]))))])]]])])])]]])])])))]])]])]])))])])]]])])]])]]]]])))])]]))])]]]))]]]])])))])]]))]))]])])]])])])))]])))))])])])])))])))))]])))))])]]))))]))))]]))]))]])))])))))])]])])]]])]])]])])]))]]]]])]])))))]]]))))))]])])])])))]))]))]])]]))]]])])]])]))))]])])]])])))]))])]])])]]))])]]]))]])]))])]))]]]))))]])))))]]])]]]]])]]]])])])))]]]]])]))]])]]]])]]])])]]]]])))]]))]])]))))])))]]]]))]))]))])])]))])))])]]]]])])]])])]]]]]))]))])))]))))])]]]]])))]))]]])])]]]))))))]]))))]))]]))])))]]]))])))))]])]]])]]])]])]))]))))))]])]]]]])]]])))])]]]))]]]]])]]]]))))])]]))])]]]])))))]]])]]]))])]]))]])]]]))))])))]))))])]]]]))])))]]]]]])])]])]]]])]])]))]]]])])))])]])])]]]]))]])])])])]]]]]])))]])))]])]])]]))]]]]]])]]]])]]]))]]])))]]]])]))])]])))]))))]]])))]))]))))]]]))]))])]])]]]]]])]]))]])))]])))]]]]))])]]]])]]])))]])])]]]])])))))]]))]])])])])]]))]]]))))))])))))]]]))])))]))]]]]))]])]]]]))))]))])]))))))])])]]]]))]]))])]]]])]))]]])))]]))))]]]])))]))]])]]])])])])])])]]))))])]]]]])))]]])))))]]]))))])])]]))]]])])]]]])]]]]])])))))])])]))]])))]]]])]]]]])]))))))])]])))])]]]]]))]])]]))]]]]))])])])]]]])])])))))]))]))]]]))))))))])]]]]))]])])]]]]]])]])])))]))))])))]]]])))])))))))]))]))]])]])))]]]))])]]]))))]))])))]))]))]])]]])]]]])]]])]))]]])]))))))))]]]]])]]]))]]])))]]]]]])]))))])])]))]]))]))))]))]]]))]]]]))])))]]]))))))])))])]))))]))]]]))]])])])))]]))]))])]))]]])])]])]])))]))])]))]]))]])]]))))))))))]]))]]))))])])))]])]]]))]))]))]])))]]]]]))]]])))))])))]))]]])]]])]]]]]])]))]])])])]])])]))]]])])])]])]))])]]))]))))])])))))]))]]])])])]]))]))))])]]])])))))]]))]])]))]]))]]]]]])))]]]]))))]])])]))])]))])))]]]))]]))]]])))])))]]]))]])]))])])]]]]]]])]]])]))]]])])))]]])])]]]))]]))]]])]))]]))]]])]])))]])))]]]]]]]))]])]))])])]]))]])))))]])]]))])]]]])])]]]]))]])]])))]])])])])]])])))]]]]]])]))))))])]))]]]))))]])]]]))]]])])]])])]))])]])]]))))))))))))))]]]]))])))]])])]))]])]])]])))))))])]]]]))]])]]]))]])))]]])))]]])))])))]]]])]]])]])]]))]]))))])])]])))]]))))]])])]]))])]]]))]])])))])))])]))]]]])])))]])])))]]]))]]))]])])))]]])]]))]]]]))))]))]]))]]]])]])]))]))]))))]))))]]))])]))]))]])]]))])]))))]])])))])]))))))]))]))]]]]]]))]]]))]]]]])]]]]]])]))]]))])]]]])]])]]])]]])])])))]])]])]))]]))]))]]]]]])))))))])]])])])]]])))))]])])])]])]]]])]])]]))])]]))]]]]])])]))]]]]])]))]))))))]))))))))])))]])]]])))])))]])])])))))]])]])]])]))]]]]])]]))]])]]))))]))])]]]]]]]]]))))))])))]]]]])]])]))]]))]))]]]))]))])])))])])]]))))])]])]]))]])])]])))])])))]])])))])]))]]))))))))]]])]]))]])]]])]]]]]]))]]]]])))])]))))])))))))])]]])]]]])]))]])]))])])))])))]])]]]))]]))]]])])))))))]]])])))])])]]])])])]]])])))])]]]])))])])))))))])])])))]]]])]))]])))))))]])])]]))))]]]])]])]]]]]])]]))))])])]])]))))]]])))))]]]))]])])))))]])]])]]])]])))))]))))]))]])))]])]))]]]])])]]]]))]])))))])]])])))]]]]])]])]]]]])])))]]])))])])))]))]])])))))))))))]])]])])))])))]]])]])]))])]]]])])])]]]])])])])))]])]]))])]]))])))]))]]])]))])])]]]]]]]]]]))]])]])))))]]])]))]]))])))]]])])))]])])]]]]))])]))])])])]])))]]))])]]))]]]])))))))]))])]))]])))])))]]]]])])))))])])]])]])]))]]])]])])))]]]])]))]])))))])]]]))))]))])))]))]]]))]])))))])))]]]))]]])]]))]))))])]))))]]))]]])]))))]))])])]]))]])]))]]))]]]]]]]]]]]))])]]])))]))))))))])))]])))]]]))))))]]])))])))]]])]]]]]]))]))]]]))]]])]]]])])]]])])))]))]]]])))])]]))])]]]]]]]])])]]))]]])]))]]]]))))))]])]]))])])])))]))]])]]]]])))]])]])]]]]]))]]])]))])])])])]))))]]])))])]]))])])))]))))))]])]]))]])))))]))])]))]))]))]]))])]])])))])]]])])]))])])]]))]]]]]])))]]))))]]))]])))])])]))]]]])))))]])])))))])])])])]]]]]])]]))]])]])]]])]]]]]))))))]))])]]]])]))])])])]])]]])))])))))]])]]]]))])])))]]]]))))])]]]))]]]])])))])])]])])])]]]))))))])])))]]])]]])]]])])))])))))))))))))]]])))]))]])]))])]]]))))]])]]])]]]))]]]])])]])]]])))])]]])])]))]]]))))]]]))))]))))]))]])))]]]]])))])))]))]]]])])]]]))))]]]]))])])]))])]]]))]))]))]]))])])])]]]])))]]])]]]])])]]]))]]]])])])))]))])]])))]]))]]))]]))])])]]))]]]))])]]])))]]])))]]])]))]]])]])))]])]]]])]]]])])]]]])]))]))])]))]]))]]]]]])]])]]]]])]]])]]])))]]]]]]])))))))]])]])))]])])])])]]]))])]))])]]]]]))))))]]])))]])]]))))]]]])])]]]])]])))]))]]))]]))])]])))])]]])]))])]))))]))))]))])]))))))])]])]]))]))]]])]]]))))))]]]]]]]]]))])]]))))]))]]))])])]))])))]])]))]])])]])))])]))]]))]))]]))))]]])]])))))])]]]))))]]))])])])))))]])))]]))]]])))))))])]]))])])]]]]]]]])])))])]))))))]])]])))])]))]]])]))]]))])))])]]]]]]]]]])]]]]])])))])])))])))))))))]]])]]]])])])])]]]])])]]])))]])])]]])]]])]))]))))]))])]]))]])))]])]]]]])]))]]]]))]]]))])))]]]])]])]]))]))]))))]]]))]]))])]]]))))]))))])]]))]])])]]]]]]])]]]]]]]))])))]]])]))]]]))]]))))]]]])]]]])]]))])]))))])))))))])))]]]]]]]])])))]])]]])]])]))])])])]])])))])])])])]])]]]))]))])])))]))]]))))]]]))))]))))))))]))])]]]])))])))))]])]]]))))])))])]))])]))]]]]))])]])])])]]]]]))))))))])]])])]]]]]))]]]]]]]]])]))]))))]])]])])))))]]])))]]]]]]))))]]]))]])]]]))))])))))))))])))]])))))]]]])])]]]]]]))]])))]]])]))])]]])]]]]]]))]))])))))]]]]]])])])])])]])))))]]]])]))]))]]]])])]]])]]]])]]])]])])))])]]))]]]))]])]))))])))))]])))]))))]))))))]])]])]]))]])]]]])]))]]]])])]])]])])]]])]]]])))))]]])])))))]])])])]]])]]))]])])])])))]])]]))])]))]]]])))]]))]]]]]]]]]])]]])]])])])))]]))))))]))))]])))]]))])]]]]))]))))]]])]))]]]))])))))])]))]])))]])]]]]))))])]))]]))]]))]])])]]]]))))))))])]]])))]]]]))])))))]))]]])))))]])]])]])]))]])]])])]]]]]))]]]]])])]))]]))])]])]]])]))))))))]]]])]]))])]]]]))]])]))]]))]]))]])))]]])]]]])]]]]]]))]]]))]]]]])))]]])))))))))]]]])))]])])]])]))]]]])])]]]]))])])))))]]))]]]))]]]]])]))))])]]])])]))]]])]]]])])))]]]])])))]])])])])))))]]))))]]]]]))]])))]]))]]]])]]]]]])))]]])]]])]))))])))])])]])]))]]]]]]]]))]]))))))]))))))]]]]))))])]]])])])])])]))]))])))))))]])]))]]])]]]]))]]])])]]])]))]]]])]]]])]])))))])))]])]))])]))]))]))]))])])]))]])))])])]]])]]]]]]))])])]]])]))])]])]])]])])))]]])]])])]]))]]]]))]))))])))])])])])))]]]]])]]])])]])]])]))))]]])]]))])))])))]])))]]))]])]]])]])))])))))])]))]]])))])]]]]]])))])]]))]]]])]))])))]])])]]]])))))])]])]]])])))]]))])))))]]]))]])]])]]])))])))])])]]])]))]]]]]))]]])]))]))))))])])))))]])))])]]]]]]]]]]])]))]]]]))])))]]))]]])))))])])))]])])]]]])])))])]]]]]]]))]]])]])]]])]]])]]])])))]]]]])))]])]))]])]]]]])))])))))]))]))]]]]])])))])]]]))]]]]]))]]]]])))]]]])]))]])]]])))))]]))]]])))])]]))]))))]))))]]))]]]])))]]])))]]))))))])))))))))))]])]])))))))))))))))]])]]]))]]]))]]]))))))])))])])]))]]]))]]]))]]])))]]]]])]]]]])))]]]))]]])]]))))]]]]))))))])])])])]))])])]]))]])]]]])])]]]))])]])])]]]]))]]))]])]))])]])]]))))))]]]])])]]])]])]])]]))]])))]]])))])]))))]))]))])]))))))]])])]])))]]])]]))])]]]])]))])))])]))))]))))]))]])))]]]])])]))]]]))])]]]]))]]]]))])])]])]]]]))))]))]]))))))])]]])))]))]]]))]]))]])])]))]]]]))]]]))])))]]]]]]]]))])))])])]))])]])])]))])]])))]))]))])])])]]]]]]]]))])])]])))]]))]))]))]]]]]])])]])))]))))])]]]]]])]]))])]))))]]]]])))))]])))])])]))]])]]]]]]))]))]])]]]])))]]])])))))])])))]])])]]))])]))))])]))])))))])]]])]))]]])])]]]]))]]))])])])])]]])])))]))])]])))]]))]]))]]))))]))]]]])])))])))]))])])])))))]]]]]])])))])]]]]]]))))])]])])))))))])]]]]])))))))]]))]])))]))]]])]))])]]])))])]))]))])]])]])])]))]])])]])]])]]])])]]))]])])]]))]]]))]]])]])]))])])]))])]]))]]]]]]]])])]]])])])])))]]))]])]]]])]])])]]]]])))]]]))]]]])))]]])])])])]]])]])))])])])])]])])))))))))])])])])))])]]])]]])]]))))]]]]]]])]]]))])]]]))]]]]]]])])]]])))]])]]))]]])])]])]))]))]])))]))])]]])))]]))]]])))]])])]]]))))]]]))))]]))])]))))))))]))])])])))]))]]])]])))]])))]]])]]]]))))]]])))]])))]])])]])])])]]]]])))])]])]]])))))))])))])))])]]])]])))]])]])))]])))]))]))))])]]]]])))]]]]]]])))]]])))))]]))]))]]))]])]))))]])]))]))])]))]]]))))]]))])])]]])]))]))]]]]]))))))])))]]])))]])]]]]]))]]]]))])))])]])])])]]))]))]))]))])])))]])]]]]]))]])])]]))]]))]])]]])))])])))]]]]]))))))))]]]]])))]]]])]])))])]]]])]])])]))]])])])])))]])]]))]))))])]])]]]])])))))]]])))]]]))]]))]]]]])]])]]]])]])]]))))]]]]]]])]]]))]]])]]))))))]]]]]]]]]]]])))]))]]]))])]])))]])]])]))])]]]])])]]])]))))))]])))]]))]))]])]]]])]])]]]])])]])])])])]])))])]]]))])))]])))])))))])])])])]]])])])]]])])))])]]))])]))]])]]]])))))]]])))]]])))]]))]])]]]])))]]))])))))))))))))]))]]]]]])]))])]]]]]))))]))]))])])]])))])]])))]]]))))]]))])]))]]]])))]]]))]])])]])])))))]]))))]))))]])))]))]])])])]]))]]]))])))])]))))]]))))))])))))]]]))]])))])]))])])])))])])))]]]]]))]]]])))]))])])]]])])))]]])]]))])))])]]))]))))))]])]]])])]]))))]]]]]))]))))))]])]])))]]))))))])])])])])]])]])]]]]]))]])]])])])]]))))]]])]]))))])))]))])))))]])))]]))]])]))])])]]])]])))]]]])]]])]])]])])]))])])])]]]])])]))])]))))]]]])]])))]]])])]]))]]]))]])])]))])]]))]]]])]))]]]])]])))])]))))])))])))]))])]]]])])))])))]))])])))]]])))]))))]]]])])))]))]]))]]))]))])]]]])))))])]]]]])])])]))]]))]))])])]]])]]]]])])])]])]]]]))]])]]]])])]]]])]]]]))]]]]))])]])]]))]])])]])))))]]))]]])))))]))]]]))]))))))))]]))))]]]])])]])]]]]]]]]]])]))])))]])))]))]]))])]]])]))])]]))))])))]])]])]])))])]]]]]]])]))])])])]))]]]]))]])]])]))]))]]))]]))))))]]])]])))])]))]))]]]]])]]]]))]]]]]]])]]]]]))))]]]))))))))))])]])]])))]))])))]))]))]]]]]]))]])]]]))))]]])])]))]]])]])]]]]])]])]])]))]])])))]]]])]))]]]))]]]]))))]]]])])]]])))]))]])]])))))]]]]]])]]]]]]])])]))]]))]]])))])))]])]))]])]]))]]]]]])]]])))))))])])]]]))]]]]]]]]])))]]]))]))]]])))]))]]]]]))]]]]))]))]]))]])]]]]]]))])))]))]))])]]]]])])]])]])))]))]])])))]])]]))]]))]]))))]])])]])))))]]))]]]]]])))))])))]]]]]]]]))])]))])]))]]])]])]]]]))]]))))])]]))]]]]]]]])])))]]))))]]])])]])))])]]))]))]])))))])]])))]]))))])]))]))])))))]]]])))))]])]])])]))]]]]))]))))]]])))]]]))]])]]]]])]]]))])))])]]])]]]]))]]]]))))])]]])])])])])])])]]])]]]]]]]]])])))])))]))])]]])]]))]))]]))]])])))]]))]))]])]]]]]]])]])))))))]]])])])]]])]]]]]]])))))))]]]]))])])])))])]]])]]]])])))]]))]]))])))))])))])]])]]])])]]]]]]])]))))]])])])))]]))]))))]])]])]))])]]]))])))))]))]))]])]))])))])]))]]))])]]])))]]))]])])]]]]]])]))]]])])]]))])])]]]]))])]]])]]])))]]))])]))])))]))]]])]])]])))))]]]))]])]))]))))))])])]]]))]))))))))]]]]))))]]))]))]]]))]])))]]))]))))])))])])))])])]])]))]]))])]])]]])))]]])])]]))]])]])]])])]])))])]])]))))])))]]]))))]])))]]))]))]]]])))]]))]))])]]]]))]))))])))))])])])])]]]))]]]]))]])]]]])])]]))))])]])]]]]))))])))])))]]])]))))])]]])]])])])])]]]))])])))]]]]]]]]]])]))]]]]))]])))])])])])])))])))])])]]))]))))]])))]])]]]]]]]]]]))]]))]]))))])]]]])))]]]]]])]]))]])))]))]])]]]])))]])]]]]])])]]))]))])]]])))])])))))))))))]]])])]])))])))]]]]]])])))]]]]]))]))]))]])])]])]])))))))]))))])))]]))])]]))])]])]])])]))))]])))))))])))]])]]]])]))])]])]]]]]))])]]])])))))]]]]]])))))))])])]]]]])]]))))]]])]]]]])))])]))]]))])])]])])))))])]]])))))])])]))))]]])])]))])))]]]]]]]))]))))]]]])))]))]]])]))))]]]))))]))))])))]]))])]]]]))])])))))]]]]]])]]]]]])))]]]]]]])))]))]]]])))]]]]]))])]]]]])))))])])]]]]])]))])]])))]))])]]))))]]))]])])))))]))]]))]])])))))]))]))))])]]])]]])])]]]]))))]))])))))))]]]])]))]]))]])])])])))))]])]]]]]]))]]])]))]))])])])]]]]))]))]]))]]]]]])])]])]]])])]]]]]])])]])]))]]])]))]))])]]))])])]])))]]])))]))))]))]))])]]]]]))]])])]]))]]]])])))))))]])))])]))])]))]])]]]]))]]]])]])])))))))]]))])))))]])])))]]]]]]))]]]]]]))))))]])]])))]]))])]))))))))]]])]))]]))]])]]])]))]])]]]]])]]]]))]])]])))]]])])])]]]])]]))]]]))])))]))]))]]]]))))])])]]))))])))]))])])]]))))))]]])]))]]]))]]]]]))))))]]]))))])]))))]]]])))]]]])])]]])])])]]]])))]]]]]])]])])]]]]))]]))]]]]]))]]]))]])]]]])]))]])])]]))]]]))])))]))])))]))))])))]])]))]))]]])))]))))]]]])])]]))]))]])]]]))]))])]])))]))))]])]])]])])]])))))])]))]]]])]))]]]]])]]]])]]]]))))])])))]])])]]])]]])]]))]]))]]])))])]))])]]]]]]])))))))]]])))))])])]]]])]])))))))]]])]])])])))]]]]])))]]])))]))]]))))])]))))))])))))]]])])))]])]]])])])])]]]])]]]]))])]))])]]]))])))])))]]]]])]))]))])])])]]])]])]]]))]))))]]]]])]]))))])]]]]]]]])])]]))]])]]])])))]))])])]))]]])]])]])]])))])))])]]])))]]])]]]]))))]])))]])))]])))])]])])])]]])))))])])])))))]]))]]])]))]]))))]])])])]])])]]))))))])))]))))]]]])])])))])]]])]]])])])]]])]))]])]])])])))]]])])]]))])]]])])])]])])]]]])])))]]])])]]]]))))])]]]))]])]))))]))])]])]])]]]]])]))]]))]]))))])]]])]]]]]]]]])))])])))]))))))))]])]))])]]]])]))))]]))))]]))]))))])]])))])]))]))]])])])))))])))))]]]])])]]]]]]]]]]]]])]]]]))])])])]]])))]]))]))])))))])]]]))]))]))))]])))]))))]])])]]]]])]])))]))])]])]])]]]]))])]]]]]]]]]]]])])))]])]]])]])))))]))]]]]))]))])]])))]]]]])])))]))]]]]])))]]))]])]]]]]]]]))))]])]]]))))]))))])))]]])]))]]]))])])])))]])])]]])])))))]]))]]))]))]]))]])))]))])]]])]))]])])]]))]]]]])]]))])]]]))]])))))]]))]]]))]])])]]]]]])]]))]))))]]]))]))])]])))]])])]])])]))]])])]]])]))]])]]])])]])])))))]]]])]])]))))]]]))]])]))]]]])]]])))]])]]]))]]]]))])]))]]))]]))])])))]]]])]]]))])))]]]]])))))]))]))))]]))]]))))])))]]])]]])])]]])]))]]]))))]))]]])))])]])]]))]]]]])]))]]]))))]])]]))])]]))])]]]]))]))])))]))])])]]))))]]])))]))]]]]])]))]]])]])))]]]]]]]]])]]])))])]])))))))])])]]])))))))]]]]))]])))])))]]])])])))]])))]]]]]])]]))]]]))))])]]))]]]]))])])]])])))))))]])]]])])])]]]))]]])))])]]]]]))]])]]))])]]])])])))]))])]]))]])])]]))]]]])]]]]]]])))]])])]]]])))))])]))])]]])]])))]))))]]])]]]]]]))])])]))]]]])]))]))]])))))))])]])]]])]]]]]]))])])]]]))]])]]]]])]])])]]]])])]]))]))))]]]))]))])]]])))]]]))])]]]]]]))))]))))])))]))]]]]])]]]]]]]]]]]]])]]]))]]]]]])]])]]))]]))]])))])]]]))]))))]))]]]]]))))])))]]])]]])])))])])]])])))))]])))]]]])]]]])]]]))]]])]]]))]]))]]])]))]]]])])]]]]])))])))]])])]]]))]])]])]]]]])))]]]]))]])))]])])])))])))]])])))]])))))]))])]))])]])]]]])])]))))]]]]))]]])]]])]]))))])]])]]]))]))]))]]]])])])]]])]]])]))))]])])))])]])]]]])]]])])])]]]]]]))]]]))])]]]])]))]])])]]]]])])])]]]]]]])))]]])])))))))]])]])])]]]))]]]]]]))))]))))))]]))]]))]]]]]))])])])]]]]])))))])]]]]]])]))))))))]]))]]))))]])))]))))]])))]]])]])]]])])])]))])])])]]])]]]))))])])])]]))]]]]])])])]])))])]])])]])]]]]])])))])))])]]])]])]]))]))])]]]])))]]]]])))]])])])])))))))]]])]])]]]]))]]])]]])]]]])]))]))]])]))]))]]]]]])))]])]))))])]])]))]]]))]])])])]]))]])]])))]])])))])]))]])))]])]))]])]]]]]])])))]]))))))]]))))])))])]]]]]]])))]))]]]))]])]))])]))]))]]]]])]]]]])]]]]))])]]))))]]))]])]]))))))]]]]]]]])])))]]])))]]]))])]]]]]])))])]]]))]]])))])]]]])])))]))))]])]))]])))]]])))]))]])]]]))]])]))])))))))]]))))])]]]]]))]]))]]))]))))])]))))])]])))))]])]])])]]]]]))))))))]))]]]]]])]]]))))])]]])))))))]))))))])])])))])))))))))))])])))]))]))))))]]]])]]]]])]]])]])])])))]))]])))]]])])])]]))]]))))])]])]]))]])]]]))]]))]])])))]]])])])])))]))])])))))])]]]]])]))]))]])])))])))])])))))))]))))]]]]]))]]])))])]]]))))))]))]]])))])])))])]))]]))]))]])]))]]]]])))])))]])))])))])))])))))])])]))])]))))))])))]]])]])])))))]]))]]])))]])]))])]]))]]]]]])))]]])]))])])]])))]])])]))]])]))])]]])))]]))]])))])))]]]))]])))))]])))]]))])]]))])))))])]))]))]))])])])]]])]]])]]))]]]))]])]]]])))])))]))])])]))])])))])]))]]])]]])]])])]]]])])))]))))])]]]]])]]])])))]]]])])])])))])])))]])))]))))]])))))]]]]))]])]])))]]]))))))]]]])])))]]])))))]])])))]])])))])]))))])])]])])]])])))))))]]]))]]])]]])))]]))]]])]))))))))]])])]])]])])])])]))]]]])))))])]])]])]))]]]]]]])]))))]]))]])))]]]])]])))]])))]])))]])]]]]]]])]]]))))])]]]]])])]])]])]))])))]])])))])]]))])))))))])]]))]]])]]])])]]])])])]))])]]))]]]]))]]]])]]])]])])]]])])]))]]]]]])])])]))))]]]]]])))))]]])])])))]])])])))]]]]])])]]])])))])))]))])]])])]))))))))]])])))]))]))])]))])]]]]]))]))))))])])]])]])])]))]]])]))]])])]]]])]]))]]]]])]])]]))))]])))]])]])]]]))]]])])]]))]]])]))))))]]])]]])])])]))]])]]]))]))])])]]))])]])]])])])))]))]]]]]]]])])))]))]))])]]])])])]]])]])]]])))))])]]))])]]])])))])))))]]]))]))]))))]))])])]]]))))])]]]]]]))))])))]))])])))])))]))])]]))])]]])])])]])]]]))])))]))]))]])]]]))]])]))]))))])])]]]])])])]]))))]])))]]])]))))]]))]))))]]]))]])]]])])))))))])])])]])]]))]])])))])]]]]])])))]]]]))))]]]])]))])]))])]]))))))])))])))))]])]))))))]]])]])]]]])))))))])]]])))])]])))])])))])]]])]]]])))]))]])])))]]]])])])]]]]])]])]]))))))))]))])]))]]]]]])]))]])]]))]]))])])])]])]]])]))))])]]]]))]))]))]))])])]]])))))]]))])]]))]])))]))]))])]])))]))]])]])])])])]])]]]]))]))])))])]))]]])]))]])]])))))))])]]]])]]]]))))))))))]]]]]]))])))]))]])])]]]]))])))]))]]))]]]]]]])]])])])])]]]])))])]])))))]])]]))])))]]))]))]]))]])))))])]]])])]))])]])))]))])))])])]]])))]))]]]))))]]])))))]]])]]]))]]))]]])]))))]))))))]]))))))])))))]]]]])])))))]]]))]]]))]])))]])))])])))])))])]]])]]]))]]]]]])]))]]])]])]])]]))]))))])])]))]]])])])))]]))]])]]]])))]))]]]]])]))]))])]]]])))))]])]]]]))))))]])]))]]])]))))])]]))]])])))])))]])]])]])]])]))))]))))])]]]]))]]))]]]])]]]]]]]]])))])]))]]))]])])))))]]))])]]))]])))]]]])])])]]))))]]])]])]])]))]))]])]])])]]))))]))]))]]])]]]]))])]]])))]]]))]]])])]]))))))])]))])))])]]]]]]]))]]])]))]])))))))]]))]]])]))]]])]]])])]])]]])]])]])])])]))))])]))]]))))]))]])])]])])]))]))]]]))))]])]]]]]))]]]))])])])))))])]]))))]]]]))])]]]]])]]]])))))))]])])]]])))])]])]]]])))]]]])]]]])]])]))])]]])))])]))))]]]])]]))))))]])])))])])))]])))]]))])]))])))]]])]]])]))]]])])))]])))]]]])]]]))))]]]]))))])])))))))]])]]))])])]))])))]]]))]]]]])]]]))]]]))]]])]]])]])])]])])]))]])))]))))]]))))]]]])]]))))))))]])]]]))]))]))))]]]]])))))))])))])]]]]))]))]))]))]])]))]]))]]]))))]]))])])]])])))])]]]])]])]])]]]))]]])))])]]]]]])]])])]])]])))])]]))]]])])]))))]]]))))]))))]]))]))])]]]])]]])))])]))]]]]))])]]))]]]))]]]]]))]))]))))]]))]]]))))])]]))))]])]])))]))]]))])]))]]])])))])])])))])]]]]]))]]))))))]]]])]))))])])]])]])))]])]]])))])])))])]]]]])))]))))))]))]]]]))]])))]])]]))))])]]])]])]]]])))))])])]]]]]])]))]]]]])])))]])))))]]]])]))))]])])]))]))]]]]])]))))))]]]])))))]]])])]))])]])]))]]]]))))))]]]))])]]]))]))))]))])))])]))]]]]])))]]))])]))]]]]]))])]])]]]]]]])]]])])))]]]]))]]]]]])]))))]]])]))))))])])))]]]])]]]]))))]])]])])])]])))))])]])])]]))))))]))]]])))])]]]))]]]])))])]))]))]]])))]]]])))))]]])))])]])))])])])))))]])]])]]])])]))])])))]))]])]]))]])]])))]]]))))]]))]])))])]])]])])]))])])]]]]]))]]))]]]]])])]]]]]])])]))]])])]]])]])]])]]]]]]]]]]))]))]]))]]))]])]]]]]]]]]])])]]))))))))]]))]])]))]]])]))]))))])])])])])]))))]])])])))]])))]))))]))]]])])]])]]])]]]]))])]))])]])]])]]])]])]))))]]))])]))]))))]]]])))]])))]))]]]))))))))])]))]))))])]]]]]]]]]]]))]))))))])]])]])))))])]))))])]])])])]])))]))])))])]))]]])]]])))]])])))))]]]]]))])))))]])])])))])])]]])]]))]]]))]]))))]))])])))))]]]])]]))])])]]))])]]]))])]]])]))))]))]]]))]]]))]]]]))))))]]])]]))]))])])])]]])])))])))]]))]]])]]))))]))]])])]))])])])]]))))])))])]])])))])])]))]]))]))])])])]))]]]]]])]])]))))))]]])])]]))))]]])]]))])]]])])))]])])]]]))]))]])]])]]]]])))])])])))])))]])]])])))]))]]]])]))])])))])]]])]]]]])]))]]]]])])]]])]])))]]))])]])]]])))])]]]))]]]])]))])]))]]]))]]])))]))))]]])))]]])]]))]))])])]])])]])]])])]))]]])))]]))))])]]])))]])]])])))]]]])))]])]]]])]))]]]])))])))]]]]))]])])]]]]))]))]]]]]]]))])))]])]))))))])]))]]))))]]))])))])])]]))]]))])))]]]]])))]]))])))]]))))])]))])])))))])))])]]))))))]]]])]))]))])])))]])))))])]]))]))))]]))])))))]]]]))])]]))]]])))]])]))])]]]]]]))]])])]]]])]))]))])]]]]]])]]))]]])]))])])])])]]))]))])]])))]]]]]))]])]]])]]))))])])]]]))))])]]))])])))])))))]]])]))))))]])]))]]])]))])])]]]]))]]]]]))]))]])]))])])])]))]])))))])]]]])]])]]]))))]]))])))]]]]))]]))]])]]])])])]])]))]]]))])]]]))]]])]])])]]])])])]]]]]])])]))])]))))]))])]))))]])]]])]))])]])]])))]]])]]))))])]]])]]])]])])))]])]]))))])])))))])]))]])]])])))]]])]]]))]])]]]))]]])]]])])])]])]))]))))]))))]]]))))))]]]]))]))])]]]])])]]]])])))]]])]])]))))))))]]])])]]))))))))]]))])]]))]])]])])])))])]))))))))))]]]])))])])))])])))))]))]])])]]))))])]]])])]]))]]]))]))])]]))])]))))))])])])))]]]]])])]])))])])])))]])))]])]])]]]]]])])]])])]))])]]]])))]]]])))))]))]])))])]]]]))])])]]])]))]]]))])])]]))))])))]]]])))]))))])]]]))))))]])))]]]))]]))]])])]]])]]]))]))])]))))]))))]))))))]]))))))]))]]]])))))]])))]]]]]]]))))]])]))]]])])))]]))]))])))]]))]))]]]]]]))])))))))])])))])])))]))])]))))))))))])])])]))])))))]])))))]])))))))]]]]]]]))]))]]]]])])])]])]])]))])]))))]))))]]])]))))))))])]])]])]]))]])))]]))])])]])]]])]]))]])]]])]))])])))))]]]])])))])]))]))])])])))]]]])])))])]]]])]]))])]])]]]]))])]))])]])))])))))]]])))])]]])]])))]]))])])]]]]]]))]]))]]]]])))]])]]]]))]])]))))))))]))]])))])))])])]])]]))))]]]])]])))]]])])]])))))]])]]]]]))]))))])]]]]])))))]))]]])]]])]]]])])])))))]]]))))]))])])])))])])])]))])])))]])]])])]])]))]])])]])]])))]]]]]]))))))]])))]]]]]))]]])]]]])))]])])]]]])])]])])))]]))])))))]]]])))))]]]))]]))]]]))])]])]]]]))))])))])))]])]]))]]])))))))]]]])])]]))]])]]])))]))]])]))])]))]]])])]]])]]]))]])])]))))))])]))])]]))))]]]])))])))])))]]]]])]]]]]]]]]]))))]))])]))]]]]]])]]])]])]]))]]]))])]])])))]]])])]]])]))]))])]]])))))]))]))]]])))))))))]]))))))))))]]])]])]])))]))]))))]])))]]]))]))])]])]]])]))])]])])]]]))]])]))])])])])))])])]]]))]])])]])]))]])]]]))]])]])))]]])])]]]]])]]))]]]]]]))]]])]])])]])]))])])]))])])]]]]]))])))]))]))))])]]]]]])]))]]]])]))))]]])])]])]]]])])))]))]))]]]]])))]]]])]]]]]]])])))]])]]))])]]])])]]]])))])]]))]])])]]])]]]]])]]]]))]])]))])])])])])]))])]]]]])]])]])])))]))]]]]]])])]])))])])]]]])]]])])]])]])])])))))))]))]]])]])]])]))])])]))]]))])]]))])]))])]]]])])))]]])])])))]))]))]]))))]])))]]]]])]])])])])])))]))]]]]]]]))]]))]]))))]])])))])))]])]]]]]))]])))]]]))]))))])])]]))))))]]]))]]]]]))]))]]))))]])]]]])]])))])])])))]]])]))))])])])))]]]])]))))]))))]])])]]))]]]])))]]])]))))]])]])]))])])])))]]])]))))])]]]]))))]]])]]]]]]]))]]]))))]))]]]]])])]]])))])]]]]]]])])]]))])])]]]])])])]])))))])]]]])]]])])])]]))]]]]))))]))]]]]))]])]]]))])]]))))]))))]])])]])]]]]])))]])))])])]]]])]]]))]])]]]]]]]]])]]]]]])))]])))]]])]])]])]])])))))))]]])]))]])])])])]))]]]))])]]))])]]))]]]))]])]))]])))])]])]]])]]])]])]]]]]))))])]))]]]))))]))))]]])]])])])]])]]]]]]]]))))))]))]))])])])))))]]])]])]]])])]])))])))))]))))])])])))])]]]))]]])])]]]]))])]]))])]])]]]]]])])]]]]]]])])]]])]])]]])])]]]])]))]])])])]])]]]))]])]))])]]))))])]])])]]])))])]))))]])])])]]])]]])])])]]])))]]])]]])]]))))]])]))]]]]]))]]]]])]))]]]]]]]))]]])))]]]])))]])]))])]]])))])])))])))))]]]]))))]]))]]]))]))])]]))]]))]]]]]]])]))))]]]]))]]])))))])]])]])]]))])]]))))]]))])])))]]]]]))))))]])))])]]))])]]]]]])]))]))]])]]]])))])))]]]]]])))]]))]]])]))]]))]])]]]])]]]))]])]]])))])))]))]]))]]]])]])])])]])]])))])])]]]]])])])])))]])]]))])]])]])]]]))))]]]))])]))]]]])))))]]))])])))))]))]))))]]]])))])]]]))]]))]))))])])]]]]]])])]]])]])]]]))]]]]]))]))]])]])))))]]]]]])]]]))])])]))))]))]]]))))])]]])))))))]])])])])))))]])])))]]))))))))]])]]]))]]])])))]])])))]))])]])]]]]])))])])]])]]]]))]))]))))]])])))]]]))]]))])))]]])]]])))])]]))]))]])))])]])]]))]])]]]]])]]]]))])]]))))))])])))]]])]]))]]]))]))])])))))))]]))]])])])]))]]]]]])))))]]])])]]])]]]]]]))]])]]]))])]]]]])))])])]))])])]))))])))))])])]])]))))]])))])))]]])])]]))))])]]]]])]]]])]])]))))))))]])))]]]]])])])]]]))))]]])))])])))])]))]])]))]))]]))])])]]]])]])]]))))])]])]])]]]])])]]]])))]))]]))]]]]]))])]])]))]]]]])))])])))]]]]]])])])])))))))))])]]])))]]])]]])]]]]])]])]]]]))))])]])])))]]])]]]))]]]))]])))]]]]))])])))]])))]]]))))))))])])]))))]]]])])]])]])])]))])]])])]])])])]))))]]]))))]])]]]))])]]))])])))]))]]])]]]))])])]]]]]))])]])))]]]))])]]))))))))])]])]]])])))))]])]))]])]])])]))]))))))])))))))]))]])]]]])))])])))]))]])))]]])]]])]])]])))])]])])])])]]]]]))))))]))])))]])]))]]]]])]]])))))]))])]]))))))))))])))]])])])]])]]])))]))]]))))))]])))]]]]]]]]]]]]]]]]])]))))]])]]]]])]]]))))))]])))])]])])])])])]))]]]]]]])]]))]])]])])])))))]))]]))]])))]]]]]])]]))]]])))]]]])]]]))]])))))))])])))])))])))])])]])]])]]])]]])]]]]))])])]])])]))])]]]])))]))]]]])))]))])])))))])]))]]]))))])))))]]]]))]])])]]])]))))]))]]))]]))))]))]]]))])])]])]]])]])]]))]])))])])]]))])])])]]]])]]]])]])])]]]]])]))]]))]]])]])))]))]))))])]))))))))])])))]])))))))]]]]))])]))])))]))]])]])))]))))))]]]))])]]]]]]]]])])]]]])])])])]])]]])]))]]]]])])))))))))))]]])])]])]])]))))]]])]]])]))])))))))))]))]]]]]))))]])])))))])]]])])]])))))]))])]]])]]]])])])]])))))]))]]])]])])))])]))]]]])))]]))]))))])]))]]])])])]]])])]]])]]))))))])]))]])]]]))]]]]]]]]))]]]]))]]]])))]]]])]))]])])]])]]]))]])))]]])])))])))])))]])]])))]]])]]]]])]]]))])])]]]))]]))])])]])])]]]])]]]]]))))]]))]]))]])]])]))]]]]))]]])]])))]]]]]]]]]]]]]])))]])]]))]])])])])))))]))))])]]))]]])])]])]])]))]]]]))))])]]))]]])])]]))))]]])))))])]]))))])])))]))]])])]))]))]))])]))]]])])))]]]]))])]]))])])))]))))]))]]]])))]))])]])]))))])]]])]]]]])])]))])))])])]))])]]]])]))]))])]))]]]))]))))]))]]])]))]]]])))])))]]]]]])]])))))))]]]]))]))]])]))]))]))))]))])]])])]]]))))))])]))])])))))]])])])])]]))))])])]])])]])]]]]))]))]])]]))]]))]]]]]))))])]]))]))])))))])]))]]])]]))])])]])]])])))))])))])])])]))])))))])])]]))))]))))))])]]])])])])))])]])]]]))))]]]))))))])]]]]))]))]]))]]]])]])])))])]])))])]]))])]]]]]]]])])])))]])]])])))])))]]])]])))])]))))))]))]]]))])))])]]])]))]])])]])]))])])]]])]))])]])))])])]])]]])]])]])))))))]])]]]]])])))))))))]]]))]]))])))]])]])))]))]))]])]]]]])))])])])]]]])]]]])]])]))]]]]]))))]]]]]]]]]]]))])])]))]]))]))]])])]))])))]])]])]]]]])))]]))]))]]]]))))]]]))))))]))))]]])])]]]]]])]]]])]))]]]]])]]])]]])])])])]]]]))))))))]]]])]]]]))])])])])]])]))))))]]])])]))])]]))))]]]]])]))))])])])]]])])]])])])]])]]])]))]]])))))))))]])]]]]))]]))]))]))]])))])]])]])]]])]])))]]))]]])]]])))]]]]]])]]))]))]])]))]))])])]])])))])))]]]]])]]])]]]])]))]]]]))]]]]])]])]]]]))])]]]])]])]]]))])))])]]])]))))])]])]))])]]))))])])])]]))]]])])]]]])]))]]])]])))))])]]]))]]]]]))))]))]])]))]))]]))))]]]]]]))))))]]])])])]])]])]])]]))]]])]))])))]]]]])])))]]]])]])]))))])]])]]])]))]]]))]]))])]]))]))]]]]]])]]])))])]))))))])]])]))])])]]]]]]]]])]])))]]))]))]]]]]]]]]]]]])))])]])])])]]]]]]]))]))])]])]]]))]]))])])])]]])]))]])])]))]])))]])))]))])]))]])]]]]])))]])))]]]))]]))))])]]]])])]))])]))]])]])))]])])))]))]]]]])])])])])])]])]]]]])]]])])]]])))]))])])])])]))))))))))])))]])))])))]])]])])]])])))))])]])]])])))])]])))]])])])])]])]])))]])))])]]]]])]])]]]]))]]])]])]]]]]]]))])]]))]])])]]))]))]]]]]])]))]])))])]]]))])]))]]))]]]])]]]]))])))]]]]]))])))))]]]))]]]])]])))])]))])]))]))]]]])]]])])))])]]))]])]])]))])]])]]))]]]))))])))]))))])]]))]]]))))])]]])]])))]]]]]]])))]))]))]))))))]])]]])])))]]]]]]]])))))]]])]))]))]))]])]]]))]])])])]]]))])]])])]]]]])]])])])]))])))]]]]))]]]])])])]]])]))))]))]]])))]])]))))])])]]])]))]]]))]]))]])]])]])])))])]))]]]])]]))])]))]))))]]))]]]]))]))]])]])))])))])]))))))))]])))])]])]]])])]])]])))])]]]))]]]])]]]]))]]))]))])))])])])])]]]))]]])))]])]])]))))))])])]))))))))])]])])]])))))])]]]))]])]]])]]))]]]))))])]]]])]]]]]])])]]))]]))]]]]))]]]])))))]])])])]]]]])]]))]])])])))])])])]]))]]))]]])))))]))]])]]]])]]]]]))))])]])])]]]]]])]])])]]]]])]]]]]])])]))]])))]])))))]]))]]))]])]]]]))])]]]))))])))])]]]]])))])])]))]]))]]]]))]]]])))]]]]])])))])])))]]))))]))]))]]]]]))))])))]))))))])]]]])])]])]))]])))])])])]]))]]))])))]])))])]])]]))))]])]])))]))))])]])]]]]]]))))])))]))])))]]]]]]]))]]]]]])]]]))))])]])))]]])]]])]))))]))]))]]]]])))]))))]]])]))]]])]])])])]]]]]])]]))])))))])))]))]))]]]])])]]]))]]])]]]))))])]]]]]])))]]]]])])]))]]))))]]])]]]))]])])])]])))))))))])])]))]]))))))])]]]]]]]]]])))]]]))])))])))])]))]])]))])]])])])]))])]))))])]])])))))))))]]]))]])]])]])))])])])]]])]])))]]]]]]))]])]])])]))))]]]])])])]]]))))])]])]))]])]))])]])]]])]]]]]]])])]])))]))]]]]])])))])))]]])]])])))])]])]])])]])]]))))])])]])))])])])])))]))))]))]])]))]]]]])))))])]))])]))]))]))]]])])]]))]))]]])))))]]])]])))))]]])))]]])])])]]])])])])]])]))]])]]])]]))])]]))]]]]])])))))))])]]])))))))]]])]])])]]])]))]]])))]))]]]]))]]])]]])]])]]]]])]])])]]]]]))))])]))))]))]]))]))]))]))]]]])]])])])]]]]])])))])])]))]]])))]]))]]))))]])])))]))])))))])))])])]))]]])))]))]))))))])]]]))]]]]]]]))])))))]]))]])])))]))]]]]))])))])]]]]))])))]))]))]]]]))])]))])))))]])])])]))]))))))])])]))]])))]]]])))))]])]))]))))]]])]])))]]))]]]])])]))]]))]]))))])))]]]]]]])))))))))]]])]))]]]]]))])))))]])])]]])))])]]))))]]]]]])])]]])))]]))]]))]))]))]])]))])]])))))])]))])))]))))))])]]]))]]]))])]))])))])]]])])]))]]))]))])]])])]))]]]]]]]])]])])]]]])])])])))]))))))]]))])]))]))])]]])]]]]))]))]])])])]]])]])])))])])]))))))))]))]])))])]]]])))])))))]]])])])))]])]])]]]])))))))])))]))])])))))]))])]])])])))]))]))]]]))]))]]]])])]))))]))))))]]))))))]]]))]]])])]])]))]]]]])]])]))]])])]])]))]))]))]]]]))])))]])]]])))]]]]]])]]))]])))]])]]]])))]]]]])])])))]]]]]]]])]]))]]])))]))])))])))])]]])])]))]))))]))])))]]]]])]]]])))]]))])]]])]]]]])]))))])]))))])]])])])])]]]]]]]]))])]]))))])])])]]])))]])])]])]]))))]]]]])])]]]])])))]]]]]]]])]])]])]))]))))])])]))])))]]]))])]]]))])])]])])))])])))]]]))]])))]]]]])]))]]))]]]])])]))])]]]])]])))]]]]])]))))]]])]))]])]])))]]]])))]]]]))]]])]])]])]]]])]]]])])])]]))]))])))])))))]])])])])))))]]]]]]]]]]]]]]))])]]]]]]]])]])))])]]]])])]]]))))))]))]]))]]))]))]]])]]])]]]])]))]]]))]])]))))]]]]))]]])]]]]])])])]])))))]]]]])])]))]])))]))))])))]]])))]])))]))]]))]])]]]]))]])])))]]]])]]]))]]]]]]]]]))]]]))))]))])])))]))]))]))))])])]]]])]])])]])])))))]]]))]]]])]]]]]))])]]])]]]]))]]]])]]]])))))])))]]]]]))]]])))]))]]])])])]])]]]])]]]]])))]])]]))]))]]])]]]]]]])])))))]))])]]]))])]]]]])])]]))]))]])])))])])))])))]])]])))]]]))])]))])])]))])])]))])])]))])))))]]))])]))]]))))]]]]])]))]]]])])]]])]]))]]])]])]])])]]]))))]))]])]]])])]])]]))))]))]]])])]]))]]])))])]]]))))]))]]]])]))))])]))])]]))]))))]]]])]]]])])))]]]]]]]])]])]]])])))]))]]]]]]]]]))])])]]])]))))))]]))))))]])]]]])]))])]))])])))])]]))])]]])))]])])]])]]]]])))))])])])]]])]])]]))))]))])])]))))]]))))])]]])]]]])]])))))]])])])]])])]))])))]))))]))]]]))])])]]]]]]]]]]))]]))])]])])]))]])])))])]]))])])]]))])))))])))]])]]])])])]))])])]]])))]])]]])])]]])])])))])))])))]))]))])]]]]])))))]])]))])])]]])])]))))])]]])))])]]]]]])]]]])]]])])]]]]]))))))]]))]])])]])]))]]]]]]]]]]])])]]])]))))]])]]))]))))])]))))])])]]]))]])]])])))))))])])]))])])]]]])]]]]]]]]]]]))))]])])))]])))])])))))])))])])]))]]]]]))]]]]])]]]]])]]]))]]]])]])]))])]]]))]))))])))))))]]])])]))]])))])]]])]])]))))]])))]))]]])]]))])])]]))))]))]]])]]))))])]))])]))]))))]]))))]]]])]])])]))))])])))]]])]))]]]])])]]]])]]])]]])))]))])))])]]))]]))])]])]])))]]])])]]])]))]]]])])]))])))])]]))))])]]]]))]]]))]]]))])])]]]]])]))])]]]]))]])])]])])]]))]])]))))]])))])]))])))])]])])))))))]])]))]))])]]]))]))]]))))))])])])]]]])]]])])]]]]))))])]])])))))])])]))))]])]]]]]])]]]))))]))]]))]])]))]]]]])]]])]]]]]]])])])))]]])))]))]]]))]]]]]])))]]))]]]]]]])]]))])))]))]]))]])]])]]]]])]]])])]))]]])])])]])]])]))])]))]]))]]]]]))]))]]]])))))])]]])]]]))]))))])))]))])]])))])])]))])]]]]))])]]]]))])]]]]]]]))])]]])))])))])])))))]))]]))])]]])])))]]))]]))))))])])])]]]]]))]]]])))])]])])]]]]]])]])]))))])]))))]))))]])]]]))])])))))]]))]]]]]]]])]]]]])]))]])]]))]])]]]))]))])]])])]])]))))])]])])))]))])])])]]]]]]))))]]])])))]]])]]]]]))))]]]]))])]])]]]])]]]]))))]]])])]]))]]))]))]))))])))]]]))))))])]))])))]]])]))]))])]))])])]))))))]]]])]]]))]))]]])))])]]))]))]])]]]]]])])]]))])]))])]]]])]))])))]]]]]])))])))])])))]]))])])))]])]]]]])])])))])]]]]]]))]])]]))])]]))])))])]])]])])]]]]]])))]]))])))]])))]]]]]])])]]]))]))])))])))]]))]]]]))]))))]]))]])))]))]))))])]))])))]))]])]])))]]]))]))]))])])))]]]])))))))])))])))])]])))])]]]])))]]]]])]]])])))])))))])))])]])]))))])]))]])]])))]]))]))]))])]]]])))]]))])]))]))]]))]])))))]]])]]])))])])])))))])]))])))]]]])))]))))))])))]))]]))]]))]])]))]])]]])]]]]]]]]])])])]]]))])]))]])])])))]]]]))))))]])]))])]))]])))]])))]]))]]))))])]))])]]])))]))))])]]))))]]])]]]])])))))]]])]]])]]))]]]]))])])]]))]]])])))))])))))))]))]]]]))]]]]])))))]]]))])))]))]))]]]])))))]])])]]])]))])]))]]]]]]]]]])))])]]])]]))])]))]]]]]))))))))])]])))])])))]))))))))))])]))]]))]])]]))))])])))))]]))]])]])]])]))))]]]]]]]))))]]))]]]]]]]]]])))]])))))))]]]]]]))))))])]))))])])])]])))]))))]))])))))])])))])]]]))]]]]])]]])]]]))))])))])]))])]]]]]))])])])]])))))))]])])])]]]])))]]]])])]))])])]]])]]]]]))]])])]]))))]])))]))])]]])]])]))])))]])]]]))))]])]]])])]]]])))])]])))]])])]]])]])))]))])))]])])]]))]])]))))))]))]])))]]]))))]]])]]])]))]]]]]))))))]])]])]]]])]]]))))]]))]]])))])])))])]))]])]))])]))]]])))]))]]))))]]]]]]])))])]))]])]])]))])))))]))))]))])]))))]]])))]))))]])]]]]]]))]]))))])]]])))]))]]))]]]]]))]))])]))])]])))))]))]])]))])]]])])]]])]))])]]))])))])))]))))))]))))))]]]]])]]]))]]]]))]])))])])]]])))]]))])))]]]]))))])))]))))]]))])]))))]]])])]))]]))]))])]))))])]))))))])])))))]]]])])])])]])])]]])]]]))))]]))]]]))]]]))))]])]))]]]])]])]]]))))]))]]))]))])))])]))]))))))]]))]))]))))]]])])]]))])]])))]])]]))]]]]]]]]])))]]]]))))]])))))]]]]]]))))))])])))))))))]]])])))]])))]))))]])])]])))]])]))])]]]]])]]]])))]))]))]))))))])])]])))]]]]))])]))]])]))])]]]]))]]]))))]))]]]])])])]]))])]])]]]]]))]])]]]]]))]])]]]]]])]])])]))))))])]]))]))]])])])))))]))]))])])]]))]]))]]]]))))))]])]))])]]]])))]]]]))]]]]]))]))])])])])]))]])]))]))))]]])]]))]]))]))]])]])))])]]))]))])))])])])]])]))]])]])]]]]]])])]]]]])]))])))]]])])]])]]])])]])]]])])])))])])]]]]])))]]]])]]))]]]))])]])])]))]])]))])]]))]]])]]]))])))])))])]])]))]]])))]])]]]]]]]])])])))]]))]]))]]]))]))))]))]]])]))]])])]])]]]]))])))]])])]])])])]]))))))))))))])))])]]))]))])])]]]]]])])]])))])]]]]])))]]))])]))]]]]]])]]])))]]))]]))])])]])])])]])]]]))]]))]))]]]))])))]))]]]])]))]))]])]])]]]))]])])])]]])))))]]])]])])])))]]))])]]])]))])]]]]])]]))])]]])]]]])]]]])]])])])])]])]))]]])]]])))]]])])]]]]])]))]])])]])])]])])]))))]]))]))))]])]]]]]])))]]]]))]]))]])])]))))])]]]]]])]])])]))))])]]))]]]]]]))])])))])])))]]]]]]]]]]]))))]]]])))])]))]]))]))]]])])])))]))])]))))]]))])))))))]))]]))]])]))])]))]])))]))])))])]))]))])]))])])]])])])]]])))))))])]])]]]))])]]]]))))))))])])]]]))]])])])]])]]]))]]]])))))])]]))))])))]))]]]])]])]]]]])])]])))]]]])]))))))])]]))))))])))]])))))])]]]]]]]]])))])]]])]]))]]])]]])))]]]])]]))))])]]])))]))])]))])]))]])))]]))]])]])))))]])))))]]])]]))])])]]]]]]))]))]]))])]))])))])]]))])]))))])])])]))]]))]])))]]]])])]))]]]])]))]])))]]))])]])])]])))]]])])]]]]))])])])])]]]])))]]]]))))))))))])]]]]))))]))]]])]))]]])]))])]]])])]]))])))]])]]]])))]]])))))]]]]]]]]])]))]))))]])])]))]))]]]))))]]]])]]))])])])]]))]])))))])]]])))]]]])))))))]]))))]))))]]))])))))]])]]]]))))]]]))]))]])]))])]])])]]))]]]])))))])]))])])))))]]])]]]])))]])]]]]))))])]]]]]]]]))))]]))))))))]]]]]]]])]))))]]]))))]]]])]]))]]]]]])]]))))))))]]]]))])))))]))]))))]))])]]]]]]]))]]]]])]))])))])))))))]))))])])])))]]])])]]]))))])]))]])])])]])])))])))))]))]))]])])))]]]))))])])]))]))))])]])]])))]]]]]]))))))])))]])))]))])))]]])]]))))]]]])]]])))))))]]])))]])]])]])])]))))])]]])]]]])]]))))))])))))]])]]]])))])]]]))]]]]]))]]])))))]]]])]]]))])])]]]))]]])))]]]]))))))])]]))]]])]])]))]]))]])]]]]]))])]))))])])))))]])])]])]))))])]]))))))])])])]])])]))])))])])]))])])]))))]))]]])])]]])]])))])])))]))))]]))]))]])))]]))]))])]]])]]]]]))])]]))]]]))]]))))]])]]])])])]))]]])])]]))]])]])])]]]]))])]]))]]))))])])))])]]]]]]]]])])]]]])])]]))]))]))]])]])))]]])]]]]]])]])])])])]))]])))]]]]])]])]]]]))])))))]))]])]))))))))]]]])))]]]])])]]]))))]]]]])])]]))])]])]))))])]])]])]]))]]]])]]])]]))]])]))])]]))))]))))])))]]])]])])])])))))))]])])]]])]]]))]])))]]]]])]]])])])]]]]]))]]))]]])]]))])]))])]]))))]]))]])]]])]]]]))])])]]]))]))]]]))]])))))))))])))]]])])]])]]))]]])]))])]])]))))])]]]))])]]))]]]]])))]]])])))]))]))])))]])]])]]))]])]])])]))]))))])))))]]))]))])])]])]]]]])])]]]))])]]]]))]])]])))))]])))))]]))]]]])]]])]]))]]))]))])]]])))]])])))]))])])))])]]]))])]]]]]]))])])]))]]])]]]]])]]]]))])])]]))])]]]))])]])]]])]])]]))]]])])]])])))))))]]])]))))]))))))]]])]))))]]]])]])]))))]])])))]]))]))]])]])])))]))])])]]]])]])]]])])]))]))]])]))]]))])))))]]])])]])))]]])))]])]])]]])])]])]])])))))])])])]])])]])])])]]))])]])))]])]]))]))))])]))))]))]))))]]]))))]])]]]]]))))])))))))))]])]]]))]])])]]]))]]]]))))))])]])]))]]))])]])]))]])])]]]]))]))]])))))]]]))]]]]]])]])])]])))])]))]])])]))))])]]]]]]))]])]))))))])]]]])])))])]))))))])]]]))]]))])])))])])]])])]])]])])])))]]))))))]))]]]]])])])]))])])))]]])]))])]]])))]))]]]])])])])))]))])))]]]]))))))])))])]])])])]])))])]]]))))]])]]))]))))])]]]]])]]])])]]])]])])]))))]]))]]]])))))))])])])])))]))]]]]]))]]))]]))))])))]))))]])))))])]])]])])]]]))))]]]))]]]]])))))]])))]])])])])]])]))]]))))))])]]))]])))))]))]])]))]]])])]])]))]]]]))]))]]])])]])])])]]]])))))))])))]]]]))]]])]))))]]))]]]])))])]]]]))]]))]]]))))])]))))]]]])]]])]))]))))]]]]))))])]))])]])]]])]])])]]))]))])))])]]))])]])])))))]])])])))))])]]]]]])]])]]))]))))]))]))]]]])]))))]])]]]))))]])]])]]]]))])]])))])]))))])])]]))]))]]])]])))]]])))]))]])]))]]]])])]))])]]]]])])))]]]]]]))]]))])])]])]]))))))])]]]]])]]]])))))])])]))]))))]])])))])]))])])]))))))]])]])]])))]]]))))])]]))]]))])]]]]])])))]]])]]])]]]]]]])))]])))]))])))])]]]])))]]])]))]])]])]]]]]]]])]]))]])])))])])]])])])]]])]]))])]]]]]))]])]])]]]])])]]])]])]))]))]]]])]])]))])]])]])))]]]]]))]])]]]])]]]))))]]]))]])]])))]]]))))]])]])))])]]]])]])]]])]]])]])]])))]]))])))])]])]))))]])]])))]])]]]))]]]]))]]])]))])]]]]))))))]))]]])]]]]])]]))]])])]]])]]]))]]]))))))))))])))])))])]))]))))))]])]]])))]]]])]])]])]]]))))))])))]]])))])])]]])])]])]))])])))))]]))))))]]))])))]]]])]))))])])))))])])))]])]))]]]])]]]))]]))]]]]])]]]]])))]))))])])])))])])])]])]))))]))])]]]])]])])]])]]])]]])]])]]))]])))])])])]]])])])]]]])]]])]]]])))]]]))]))])]]]))))])]))])]]]))))]))])]]]]]))))])]]))]])]]]]))]]]])])]))]])]])))]])])]))])]))])))]])]]]]]]]])]]]]]]))]))])]])])]))])]]]))])))]))]]]]]))))])])]]])])]])]]))]]]]))]])]]]]))]))])]])))])])]))])]])]]))]))))]]])))])])])])))])]]))))))])])]))]]])))]]]]])]])])]]])]])]]]]]]]]))))]))])])))]))))]]]]))])]]])])]])])])]])]])])]]]]))))))))]))]])]])]))]))])))))]]]])]]]])]]]))))])]]))))])])])))]]]))]]]]]])]]]])])))]]))))]])]]])])])])))]]]])))])]))]))]))])]))]]]])]]]))]]]]))]))))))))]))]))])])))]])]]))]])]))])])]]))])]))]]]]]))])]])))]]]]])]]])))])))])])))]])]]]))]))])))])]))]))])]))])]])]]]))]])]]])]])))])))]))])])])])]]))))]]])]]])]]))]))]]]]]]]))])]]))))]])])]]]))]))))]]])))))])]])])])))))]])]])]])]]]))))]]))])]))))))])]])]])])))))])]]]))])]])))))))]]]])]))))]))]]])]))))]]))])))])))]])))]])])])))]]))]]]])])))))]]))]])])))]]]))))))])])])])))]])])])])]]]]]])]]]]])]])]]]])))))))]))])])])]])))]]]))))))])])]])])]])]]]))))]])])]])]))])]])]])]])])]]])))]])))))))))]]]]))]]])]]]))]))]))]]))]))])])])]]])))]]]]]]))))])])]])]]]))))))))]]))]))])])]]]])]))]))]]]]])]))))))]]]]])))])]]]]]]])))])]]])]))]]))]])])]])))))]))])]))))])))))))]]))]])))])]]]]]])]])])))]])])))])))]]])]]]])]]]]]])]])]]))])))]))])])))))))]]]))]]])]]]))])))))]]]]]))))]]]]]))]]]]]]]]))))]]])])]]]]]])])]])]])]]]]])))))))))]]))])]]))])])]])))])]]])]))]))]]))]]])))]])])])])))]]))]]]))]]]]])]]])])])]]])]]])]]))]]])))])]))))]]))]]]]))))))))))))))])))]))]])])]])))]]])])]]]])]])]))])]])])])]))))))))))]))))]])])]]])]))))))))]])]])]]))))]]]]])]])]])])])]]))]]])))))])]]))]]]))]]))]))])])]]]])])])))))]])])])]]))]]]]]))])))])]])]])]]]]]]])]])]))]))]]]]])]))))])))))]]]]]))])))])]])]]]]])])]]))]]])]]]]])]]))]])])])]]]]))]))))))]]))))]))]]]))]]]]])]))))]))]])])]))]))]])]]])]])])]))]))]))]])]))]]]]]])])))]))]]]])]]])])]]])])]))])]))])]])])])]))]))])))]])))]))])]]]]]))])))]])))]]))))]]])])]))]])))]]])]))])]]])]))]])]])]]]))]))))]))])]])]])])]])]]))]]))]]]))]]))]])])))))])]))]])))])]]))]]]))))))])))))])]]])))))]]]])])]])]])])]]]])])]]]]]))]])]))])])])]]]))))]]]])])]]])]))]])])]]])])])))]]))))]]]]])]]]])])]]]])))])]))]]])])]))]]])))])]]]]])]]])])])])]))])))))]))]])]]])])])]))]]))))]]])]]]])))))))]])]])]]))])]]])))))])))])]])])))])))]]))])))]]]))]]])]])]]))]))))])])]]]]]]]]]))])))]]]]])])))])))])])])])]]])]]))))]]]]]]]]]]])]])))]]]])])]]])]]]])])))]))))]])))]]))])]])]]))))]])))))]]]]))]])])))]])))])]]]])]]]))]]))])]])])])]]]]]]]]))]))))])]])]]))]]])])]])])])))]]]))]])]]])]]]]])))]])]]]))))]]]]))))]]]]]]]]))]]))])])])]]]])))))])]])))))]])])]])]])]))]]]])))])]])]))]]])]))))])])]])])]])))]))))])))])]])]))]]])]]]]])]])))]))))]]))]))]])]])])]]))))))])])))))))))]]]])))))]])))]])]])]])]))])]]])))]))])))])))]]]]))]))]]])]))]))]]]]]])])]]))]])]])]])]]]]]])]))]]])]]))]]))]]]]])]))]]))])]]]))))]))])]])]])])]]]]]]]))]])))]])])]]))]]]))))))))))])))))])])])])]])])))))])))]]]]]]))])])])])]))]]]))]]]))]])])]]))]])))]])])))))]]))])))])))])))]))]])]))])])]]]]]])]])])]]))]]]]]))])))]))]])))]])]]]]]))))]]]])))))))]]))]])))])]])]]]))])])])])])]))])])]]))]]]))]]]]))])))]]]]]]]]))])]]]]]))))]]]])))]]]]))])]])])]))]])])]]]]]))]))))]))]]))])))]]))]]]]]])]]]]]))])))))])]]]])]))]))]))]])))))]]))])]])]]))))]]]])))]]]]]))]]])]]])]])))))))]))])]])])]]]]))]]])))]]])))]))]))])]]))))]))))))]]]]]))))]))])]])])]]))]])))]))])]))]))))]]]]]])))))]]]))))])])]]])]))))])))))]]])))])))])]])]])]]]]])]]))])])]))])))]])])]))]]])))])))]]))])))])])))])])])]]))]])]])]]))]]))])))])]]])]])]]]]]))]))]))]]]])]]]))))]))]]]]]]])))]]])])]]]]]))]])]))))))]]]])])]))))]]]])])))])]))]))]])]]]])])))]]]]))]))))]])])])))])))]]))))))]))])])]])])]))]]]))))]]))]))))))]])]])]))]])])))]])])])]))))])]]))])))]]]]]))))]))])))]]])))))]]]]))]))]]]))))))))]]]]]]))))])]])]])]]]]))]]]))]))]]]]])]]]]])])]])])))))]])]]])]]]))])]))])))])))]])]]))]])]])))]]))))))])]]])]))]])]))]))]))]))))]]]]]]]]]])]]))]))]]))])]))))))])])])]]])]]]]]]]]]]))))))]]]))])]))]]])]])]])]]))]]]))])]]]))))])]]]]]])]]]]))]]]])))]))))))]]])]])]]])]])))])))])))]))]]]))])]]])))]))]))])]]))))]])))]])]))])])]))])]]]]]])]))])]]]))])]])))]]))))))))))))))])]])]]]]))]))]]])])))]])]))])]])]))]]]))])))]]]))))))]]]))])))]])))])]))))]))])]))))))]]])]]]]]]])]))])))]]]])))]]))])]))])])]]])])]])])]]))])]]])))]])])]])]]])])))]])]))))))]]))))]]])))]))]])]])])]]]]]))]])))))])]]]]]))])]]])))))]))]])))]]]))))])]]]])]]])]]]]]]]]))])))))]])]))])])]]])])])]))]]))))))))]))))]]))]]])]))]]]))]])))])])])]]]])]]]]])]]))))]]])]]]]]))]])]]])))])))])]))]]]]]]))])]])))))))]]))]])]))])]]))]])])))]])]])]]]]))])])]))])])))))]]]])])))))))]]))))]))))]]]]))))]])]]]]]]])]]]))])))]])))]]])))))]))))])]))))]]))))]]])]]]])]))]))]]]))])))]])])])]]])))))])]))]])])]))])]))]]))]])))]))))))]]]]]))]]]))]]]])])])])]))))]])]))]))))]]))))]]]])))]]]]]]]]]]])])]))]))])]]]])]]))]))]]]]))]))])])]]]]))])))))]))]])]]])]]]]))]])])]]])])))))]])]]]]]]])]]]]]))]])])]]))])]]))]]]]])))]))))])])]]))]]]])))]]]])]))))])])]])]])])])))))))]))])]])]])])]]))))])]])])]]]])))])]))))]]]]]]))])])))))]))]])))]]]]))]))))]])]]))]]))]))]]))])))]]))])])]]])))))))))]]]))])])])])))))])]]))]]))])])])))])]))]))]]))))]))]])))]]]]]]]]]]]]])])]))]]))]])]))]))))))))]))])))])])]]])]])))])]]]])])]]]]]]])]]]))]]]]]]]])]))])]]]]]])]]]]]])))))]]])))))])])]])))]])]]))]]])])]]]])]]]]]]])])])])])))]]))]]])]))])])])))]]]])]))))]]]]])))))))])]))]]])]]])]])))))])])))]))))))]))])]]]])]))]]])]])]))]))]]]])]]])))]]]]])])])]]))])))))))]]]]]]]]]])])]]])]))])))]]))]])]))]]))])]])])])])))]])]])])]])]])))]])]]]]])])))])])))))]]]])]]]]]))]]])])]]]]]]]]])]])]]]])))])))]))]]])]))])]]]]])]])]])]])]]))]]]]])]]]))]])])])))]))))))]])))])]))]]))))))]]])]))])]])]]])]))]]]))))]]])))]))]]]))]]]])]))]]))]))))])])]]]]]])])))))]))]]))]))]]]]]]))]]]])])]))))]])]])))]))]]])]])])]]]))]]]))))])]]]]]]]]])])]]])]))]])))))])])))])]]]])]]]]])]]])]]))]]]))]])))])))))]])))]]]])]])])]])))))]))]]))]])])))]]]])))]]])]]))])]]))]]))])]]]))]])])))])]])]]]))))])))]))]]]))]))])]))]]]]]])])]))]]])]])]]]])])]])]]])))]]))])))))])]])]])))))])]))))])]])]])])])))))]))]]]]]]]]])])))])])]])]]))])]]])])]]])]]]])))]))]]]]]]]]]]]])]]])))])))]]]))]))]]]]]]]]))))]]))]])])])]))]))])))])]]))]]])]]])])]))]))]]])])]))]))]))])])))]]])]])])]]]))))))]]])]]]]])]])]]]])])]])))))]]))]]))]])])])))))]]])]))]]])))])]]))))))]))]]))]]]])])]]))])])))))]])])])]]]])]]]))]]]]]))])))]))]))]])]])])]))])]]))]))))]))]]]]))]]]]]]]]])]))]))]))]]))])])])))]))]]])]])])))]]]))])]))))]]])]]))))))]))]))]))]]]]]]])])]))]])))))]])))])])]]]))])])))]]))))]]])]])])])]]]]]]]]))))]])])]))])]]]]])))]])])]])]])])])])]])))])])]]]])]]))))]]))]]))))))]))]))]))]]]))])]))])]))]]])]))))]))))))]]])]])]]]))))))])]]]))]])))])))])]]])))))]])]])]])]])))]]]))))]])]]))]])]]])]]]]]))])))))]]])]))])))])))))))])]]])))]]]))]]]]))))))))])])])]])]])))]))))]])])]))])])]))]]])])))])])]))]]]]))])]))]]))])))])))))]))]]]]]]]))]]]]]]]]]]))])]])))]])]]]))]]]]])]))])))]])])))]]]))]]])]])))]]]))]]))]])))]]]]]])]]))]])])))]]])])]])]]))])])]]]))])])]))))))))])]]))]])]]])])]])]]]]]]]]]]]))])]]))]])]))])]]]])])]]]]]]]]))]]))))]]])])])]))))))])))]]))))]))])))))]))))]))]))))]]))])))])]])]]])])])))]])))]])))]])]))))])]])))]]]])))))]])]]]]))])]]]])]])]]]]]))]))]))))]]))]]]))))]])))])]]))])])])))]]))]]]))]))]])]]))))])]))]))]]))]))])]]))))]]]]]]]))))]))]))])])]))]]]))]))]))]])]])])]))])))))))]])]))))])])]]])))))])))))])]]]))))))))))))])])]))]]))))]])]))]]])))))]))]))]))])]])))])]]]]))])]))))]]]))])))]]])]]]))]))]))]))]]])]])))))]))]]]))]])])))]))]])]))])))])]])]]]])]]]]])]]])])))]]))))))])))])]])]]]])])]])]]]]])]]]]]])]]))))]]]))]))]]))))]]]])]))])])])])])]])]))]))]]])))))]))])])))]]]])]]]))]))]))]]]))]))))])]])]])]])])])]])])))])]))))]))]]))]))]]))]])]))])))])])]]]])]]]))]]])))))]))]))))]]]])])))))])]])]]]))]]]])])]))]])]))]]]]]]]])]]])]])])]]]]]]]]]]])))])))]]]]]]]])))])])]]]])]]]))])]]])]))]]]]])))))]))]]))]]])))))))))]]]))]))))]])])]]])]))]]])]]]))))))]))]]]))))))]])]]]]]))]))]]]]]))))])]]]])]]]])))]])]]])])]])))]]]]]))]]]))]])]))]]]])]])]))]]]]]))]))]]))])]]))))]]])])))]]]]])]))]]])]]])]])))]))]))]]]]))))]])]])]]]]])]])])))]]))])]))])]]])])])]])]]]]])]])])))]])))])])]])]])))]])]]]]])))))])))])))])])]))]]])))]])])])])]]]]])]])]]]))))]])))))])]])))]))])])])])))]]]]])]))])]))))]]])])]])])]))])])]))])]]]))])]])))))))])]]]])))]]))]))])]]))]])]]))])]))]]])]]])]]]]]]]]]])))]])]])]])))])])))]])))])])]))))))]]]]])])])]]])]]]))])]]]]])]))]]]]]])])]]]]]])])]))))]]]]))]]]])]])]]])]))]]]]])))])]]))]]]])))])]]])]))))]]])))))])]])])])))))])]])]])]))))]]]]])]])))]))])]])])]])]])))]]]))]]])])])])]]]]]))]])])]]]))]]))]))])]))]]]])))))]])]]])]]])))])))]])]]]))]))))]))]]]]]]]]))])]))]])]]]]]))))]))]))])))]]])]))]))))))])))]])])]])]))])))])]]]))])))]))))]))])]]]])]])]]])]]]]))])])))])))]]])))))])])]]))))]])))))]])))]))]))])))]]])))))]])]))))))]))])]]]])]]))]])]])))]]]]])])))))])])))]))]])))]])]])])])])]]))])))])]]]]))])]])]))]))]]]])]])))]]]])])]]])]])]])))))]]])]))]]]))]]]))]]]]])]))))])]]])]])))))))))]]]))]))]]]))])]])))))))]])])]]]]]]]]]])))]]])])))))]))]]))]]]])]]]]])))]]]]))]))]]))))])]))]))])))))))])]]]))])]])))]]])]))))])))])]])]]])])))])]])))]))])])))])]))))))]]))))])]]))])])]]]))))))))]]]])]])]))]))]))]]]]]]]])])))]])))]])]])))))]]]))]])]])])))])])]])))]]]))]])))])]))]]]))))))))]]]))]]]]])]))]]]])]]])])]]]]])]))])))]]]]]])]))]))))]]]]))))])]])])]]]))]]]))])))])))]]]])])])])]))]])))]]]]]]))]))])]]]])))]))]]]]))]))])]))]])]]]))]))))]]]]])))))))]]))))))])]])])]]])]))])]])]]])])))])))])]))))]))]))])))]]])))]]]])]]]))])]))]]])])]]))])]]]]))])])])))]]]]])))]))]]]])]])]]])))]]]]]))]]))]]]))]]])]]]])]])]]))]])])))]))]])))])])])]]]])]]])))))]))]])])])))]]]))]]]))])]])))))]])))]]]])]]]]]]))]]]])]))))]])])))))))])))))]]]))]]])])))]])]))]))]])])]])]]])]]])]])])])]]]]]))]))))])]]]])))))])]))]])]]])]]]))))))])))))))]))]]]]))]]]]))]))])])))])))))]]])])]))])])])]))])]]]]]]))]])]]])]]]])]]]))))]]]]]]))]]))]])]))]])))]]])])]]])]])])]))]]])]]]]))]])))]]]]]]]))])]))]))]))]))))))))]))])])]]]]]]))))])]))))])]]))])))]])]))]]]])))))])]]])]])])]])]))]))))])))))]]))]]])])]))))])])]]]])])]]])])))))]]]]]))])]]]])])])))]))]]]]])])])))))))]))]))])])))))]])])])))])]]])]]]]]]])])]]])])])]]))]))])]]]]]]])])))])])))]])))]]]]]])])))]))])])])))])]]]))))])])))]]])]])])])]))]]]]]]]])]])]]]]))))]))]])))))]]))]]]]]))))]))]))])]]]]])))])]]]]))])]]))]]]])]))]]])]]]]])))]))]]])]]]]]]]]]]))))))))])])]]]))]]]))]]))]))])))]))]]]))]])))]]]]])]]))]))))]))]))))])))])))]]]]])]]]])]]))]])))]]]]))])])])]])))]])]))])))])])])])))]))])])]]]))])))))]]))]))]]]])])))]]))]))]]]]))])]]])]])]])))]])]]]]))]]])])]])))]))])]))]])]]])])])]]]])))])]))])])]]]))))]]]]]])]]]])]]]))])))))])])])]))))))])]]]]))]))]))]]])]]]])]]))]])]]))]]))])))])))])]]])]))]])]]]]])]]]]))))]]])))]])]]))]]])))])])))]))]])))))))])]]]]])])]]])]]]]))])])]))]]))))]))))]]]]]]]]))]))]]))])]]]]]]]))]]])])))])]]])))])])])])])]])]]])]))])))])]]]]]))]]]]]])))))))])])))])]))]])))))))))]]])))]))]]))])]])]])]]])])]))]]]]])])]])]])]]))])]]])]]])]))))))))]])))]]))])])]]]]]]])])))]]])))))])))]]]])))))]]]])]]]]]]])]]])))])))])])])))))])))]]]]))]]))])]])]]]]))]])]))]]])]]])]]]))]]])]))]])])])]]]]))]])))])]))]]))))])]]]]]))))])]])])]]]]]))))]]]]))])])))))]]])]])])]))))])]])]))))))])))]])]])]]])]]])]))])]]]))))))]]]])]]]])])])))]])))))]]]]]])))]])]]]))))]))]])]]])))]]]))]]))]]]]]]])]])]]))]]))]]])]]])]]])])])]]))))])])]))]))))]))])]))]])))])))])])]]]])]])]))])]]]))]]))]])]])])))))]))])]))]]]))]]]))))))]))]])))])])])]))])]])]))]]))])])]]])]]]]]]]))]])))]]])])]])]]]))]]))))]))]))])])]]]))])))]]))))]])))]]]]])]])))]))))))))]))]]]]]])]))]]]]))])))))])]]])]]]]]]]]]]])])))]]])]]]])]]])])]]])))]]))]))]]]]]]]])))]])))))]])]))))])])))])]])]])))]]]))]]])]])))]]])]]])))))))])))]))])]])])]]]]))))]]))]])]]])])]))))))]]]))]]])))])]]]]]])]))]]))]))))])]))])))]])))]])]])])])))))]])))))))])])))]])]])]])]])))])]]))])])))]]]]]]]]))]]))])))))]])])]])))))]))))])]]))))])))))]))])])]])])])]]]))])])]])])))]]]]])]])]])))]])]]))])]]]))))))]]))])]]]])])]]]))])]]])])))])]))])]))])]])])))))))]])]))]))])])])))])]]))])))]))])]]))]))]]]]]))]])))))])))))]]))))]]]]))]]])]))]]))])])]))])]))]))])])]]])))))))]])])])]]))]]]))]]))))]]]])])))]]])])]])]]]])))]))]))]]))))])])]))]]]]])])])]])))]]])))]]])))))))])])))])))))))]]]])]])])))])]))])]])]))))))]))])])]]]))]])]))]])))])]))])]]])))])]]))]])]))))]])]))))])))]))))]]])])))]))])))))])]])))])])])]]]]))])])]]])))))))]))))])]]]]]]]]])]))]))])))])]]]]]))])])]])))]]]))))]])])]])])]))]]]])))])]]]]])]]]))))]]))])))))]])]))]])]]])])))])])]))]]]]))))))))])))]]]]]))]]))])])]]])]])))])]]]]]])))]))]])))]))))))])])]))]])]])]])]))]))]])]]))]])]))])]])]])))]])])]))))))]))]))])]]]]])]]]))]))))))]])])]]])]]]))]]])])]))]])])]]]]])]))]))]]])])]]]]))]]]]]]]]))))]))])))]))))]]]])])))))]]]))))])]]))))]))]])])]]]]))]]))]))))]))])]]]]))])])])]])))]]])]))])))))]])]]]])))]]))))))))]]])]]]])]]])))])])))]])])))))]])]]]])]))])])])]))]))]]])])))])])]))]])])]))))]]])]])]]))]]))]]))])))]))]])])]])])]])]]]])]))]))])])]]]])]]]]]])))])))]]]]]))]))))]]]]])]])]))))]))))))])])]]]])])))])])]])))]])]]]]))])))))))]))))))]]))]))])]])))))))))]]]]])]))))]]))))]]))]]]]])))]])))])]])))]]]]))]]]])]]]]]))]])]]]])))]))])))])))]]]))))])))]))]]))])))))]))])]]])))))))]))]])]]]]])]])]]))]]])])]]]]])]))]]]]]))))))))))])])]))))]))])]]])]))]]]]])))))))))]])]])]]))]])])])))]]))]]))])]))))])]]])])))))])]))])))])]])])]]))])])]]))))]))))]]]))))])))]]))]])))])]]]]))))])))]]))]]]])]])))])))]]]]))]))]))])]]])]])]]]]))]]]]]])])])))))]]]))])))])]]]]]])]))]]]])]))))]))))]))]]]])]])))))))])])])]])))))])])]]]])]])])]]))))]])]]])]])]))]]]))])]]]]])])]]]]]]])]])]])]]))))))]])]]))])]))])))))]]]]]]]])]]))))]]))]))]))]])])]]])]]))]]])))])]]])]])]])])))])]])))]]))])]])]])))]]]]]]]])])]])]]))))])]]]]])]]])]])))]))]))]]))]))]]]]))]]]))])])])))]]]]]])))])))]])))])]))))]]]]])]]])])]]]]]]))])))])])]]]]]))))])]]]]]]])))]]]))]))]]]))))]))]])]]])]]])])))]]]]])]))])]]])))]]])]]]])]])]]]))])]]))])))]]]]]]])]]))]])]))]]]]))))])]]))]])))]))]))))]]))]))])]]))]])]])))]]))))]))]]]))))]))]]]]]]))))]))]))))])])])])]])]])])])])]]]])]]]))))])])]]]))]))]])]))]))]]]]))])])))]])]))]]]]]])))]]])]])]]]])]))]))])))))]))))))))))))])]])]))]])])]])]))]]]))]])]]]])])))]])]]]])))])])]])]])]))))])])))])])]]))))])]))])]])])]]])]])))]]])]))]]))])]])])))]]]])))))))]])]])]])])]]]])))))]]]))]))]]]))))])]))]])]]])]])]))])]]])]]))])]]]]])))]]))))]]]]]]]]]])])))])]))))]]])]])])]])]])]])]])]))]])]]]])]))])])]])]))]))]])]]))])]]))])])]]]])])]))))]))]]])])])]]])]))]])))]))))]]])])]])])]]]])])]])]))))])))]]]]]]]]])]))]]]])])]]))])))))]]]]))]])))])]]))])))))]))]))))]]))))]]]]])]]]]]))))]]))])]))]]]]]))]]]]])])]]]]))]]))]]]]])])]])]]])]]]))))]])]])]))]])))])))))]))])))]]])]]))))))])])]))))]])]]]))]))]]))]]]])])]])]]))])]]])])])])]])))))))]))])))])]])]])]))]]))]]])))]))))]]))])])]]))))])])])))])]))]))]])]))])]])]])))))]])]]]]))))]])))))]]]]))))]))]]]]])]])]))]])])))))]])]))])]])]))])]]]]]]])])]]]]])))])))]]]]]]])])]]]]]]))]))])])]))])))]])))]]))]]])]))]]))))])])))]]])])))]])])))]])]])]]))]]]])]])]]])))]]]))]))])]]))])]]])]]])]]])])]]]]]))]]])))]]]])])))]]]])])]]])]])))]))]))]))))))]])]]])])))))]]]))))))]))])])]]))))]])]]])]]]]]])))])))])]]]]])]])))]))])]])]]])]]]]]])])]])]]]]]]])]]))]))])]]]])])])))]))))]]])]])]))))))])]]))])))]]]]]]])])]])]])]]))]))]]]])))))])])]]])))]])])]])]))])]))])])])]])])]))))))))])]]]]])))))]])]))]])])]]]]])])))])]]]]])])]])]))))]]]))))]]]]]]))))])))))]]])]])]))]]])]))]])))))))]]])))))]]])])]]])))))]))])]]]]]]))])]]])]])])]))]])]])]]]]]))]]])])]]]]]]])]))))))))))]]])]]]])])))]))))])])]])])]]]]]]))]]]))]])]))))]]]))]]))]))]]])])))])))]]))]))])])))]]])])]))]])])]]]]]]])])]]])]]]]]]]]]]]]]))])))]])]])]])]]]]]))])])]])))))])])])]]]]))]]]))]]))]])))]])])]])))]))]])))])])]]])]))]]])))])])]]])]])]])]))])]]]])))]))])))))))])]))]]))]]]]]]]))))]))])])]]]]]]]]) []()])[]([][()((](]]()[(]()(([]))(][(][()([[[())])(]](()([]]([(()(]([[[])[](])[([))[([)()[[)[[)))]]((([[[[])][]])[[)[(()][[])(([][((()([()[([]])(]([[([[]([)](]())))([]][][[()(])(()[][](]])[[[)][[()())((]][]]])][[)][[)[(([([()((([())[[[([())]][[[[)()([])))))((((]([)]()[[]))(()])(][])]](]))][())][[[)[((]([)([)(]([]]])(()][]])[))[)(([(((]][()[][)())[][)))]]]()])[[][[[))])]))][())](]))((([)())()(][)(]](]](][()]([]][)[)[]]()))[()[)](]))[[([)][[)((([][(])][]][()](])[][](]])]((](][[())[(][])()[)]])[([[](([(((]))])([())[])[[]])()[)]([]()))]))())[(]][[(](()))[[]]]](()])[[([)([[]])[][(([([)]]())(()([[)([[[])[))()][[]()([(]([][[]([])]])[)][[][[[])[)(])]))[[[[][)[[)))]])[][])(()[)))[]]])[][)]][)]][)(](([]()([]([)][))[()()(]))[[)(]((([]))(])[(()()][]])(][[)(]((]]))()()[)]]][([([[]([][(((]([[))[()[[())((()]])(][([)]]([))()[)])]([)[)[)))](]](])([)[])[[]]]]]()[]](([(]((()[])])))())[([]]))[)][)[[[([[((]))(]])(()())()])](]([[[)]))](([)(([[][](]()[(]))])[]]))((([])[(]]][]([]][()[[(]([))][][)([(])(([())[[]()([]]]]][([([))))[[)]]][((([)])(([(]))(([())]])][][)[[]]][((][][[(](())[)())](]]]])([(()()[][])]]]]]](([)(([((][[((()[[[([(]][([))])()]([])(([)[)[][[)](]]])][(([(([()]))(]]([)))[[[[]])])[))))][[)(([(((([[[])))(()]][)([([)]([[]][)(]](])])((]]][())(](][]([][]])]))[([)[)([]((](][((()))[)([][])]([(][)])]([[]]])])][)[[[)]]][])(]))())(])][)]]]][])()()([[)()(]]](]]][()[[([[[()][)[]([)]]))[)([[[([]]][(])[](][(][)](]())][()((((([])[][[[(([([])[))))[[(][[[)])][))))(((]))[]])][]](](])[)]))[]]([)])[((])(]])[((])([[()[))[[[[](][[)(])])[)([[(((([]([[[)([(]][(][[[()]]][))[]][(]]([[)]])()[]])))][)]])[]]))[)][[([(()([([(([[))()[[))(]([)])[(([[([()[)]]])]))[[)[])[[[]][[]((])[)[([]))[(()[()[](][)][(][([[[(([)[)[]])])])[]]]])[[]]]]((([[()[]()([[)(()]]][[[](([(([()()()))())[[][[[][)[(](][[))][[[((()])(]([)]]()][][(]([)]][]()]()([)]([[])[([[()([)()))(]](([[))(][[))[](][))(((]()(](([[[)()]))][][][(]]]]]](())[]()[]])))[()])[]][([])(([))][](])(]))](([](])]()[)][([[)))([(([)()()]([)](([)]([](((][])(([](][([[]))()[([))()[[]](]]])[[]]([]])[[)](((][())](]([]([]]([[])]]))[]]]][[(()[((](][))[))][()[([][)[]]])()[])][)][([[[))[([([)((]])]))](][[(([]([(]]([[][)[(([)][(])[[())()[(]([(((()[[(](())(()[(]])(([]])[[[[([[(([))][)()[][()[))][(])]))[(]([)))()[(][([)]][)[))[[((([]()][(](]]][][[([][)]))(](]])])[([(][]]()]()()]]([([[[[((((([)[((])(((]]]))[[()[][))]]]]]]))([()]))(([(]()(][((])(()([[[[)(())()]][))(][][])(][[[]][[[]))[[]])))](][]([([([]([([))](((([((()[((]))]))(((()[[])([))][()]][[))[[][))])(]))]][[]])]]][(((][(]([][][[))][)]])([[]])(][()(]][)()[([)]])))(())]]])(][)([[][[[[[)[)[)]]([[)()[(())()[[]([)[[[(](([([[][())(([()[)])]])[))](])[(]([(]][)(])))([[](][)))()]]((([(]])[)[))][))([[)()](](((([[())])([([)))[[))(][([[)]][[][[)]((](([]))[(](([((([)[([](])])[)]]()(()](])())(()()]([)))(([[[[)[])()]([])[([]]()())](])([[([[]]([])][)[]]]][()[)[([)([[)(]])]]))[)][))()()]]][(](]][)([[()[[]()()([)][))])])[](][](])(])(]][)[]][[([[[[()]]([(]][(()]]([)[]]([)])[])[]([](()](][[())(])])[()([[[]((([(([)]])[)[[)[([](])((()](][)[]]((()[[)[)])[]][[[)))([)()])][[(([))[([]])(]]((]([)][]))))[)([(([([[(]))[[[[((])()(]]][[()[[]])[([)]()([)()](((](][[(()[])](((([()[))][[()())])((]()])[[[([)(])()[]][[)())[]([)(]([[[(][))][[[[(([])(]]])][]))([)]))]([(][[)(][])()()][[[([]][)()()[]([)(][][[)]])]))]])]]]))]]][(][]])][))]()((([][())])])()][[)([](][()[]([([))([[(][]))][[))(([(])[(][([())])]]))](([))][]]][])[[(](])]]][](]))]((])]))([]]))]])(()[[)]][]])))][([]][](())]([)()])()[)[]([[]]))])]]])[([[][][)()[([]]])()(][(((]]]())]))])][]([[[[)()]))])(((((])[])(]([])[[(](((())))))[)(][[[([(([][()([]]))[[(]())[))](]([(](](()([))(([[]([()]([][[(]((]()])](]])([(][)(([)((])[[)[([()[)(([[))]]()][])[])[(][))[[[[))([]([]))])](([]()((((]][()]([](()]((][[]]])((((]]())]])][(([)[]][[[()()(([(())]([]]))][)()]]])()](([)))[)[[](]][(]]]]()()))[[[[[()[][])[[[(])][(]))()[[)[[(([(]]([([)[])])]])[)[[)([([[)))([[)][)[]([[)]]())]()))((]([)[)(]([)(](][])[)]]]([)]([[)[)())(]][[([[)])]])[[([]][]()]))(]]]([]))(()]([)]])[)[([[]()[]]]]]][][))(]])[)([)]([][]((()[))]([(][))[)](]](())]]([((([[()]()()(]))[))([[[(((][)[))[((]))]]])())]((][(()))[[])])[]())[][])])[()])]([](())(([]))(])([]]([][(([((][[([()(()([](([]()]])()))])[][])((]([[][([))([]]([)]][)))][[[)((()[(([)[(()([)([][([))))[]()())[[]][[[)]][])))[]]([(])[))([))]())[[[()[[(((](])()])]([(][[(())]]()[)[()[[()][[((]())))]([[[((]()([]][)()](](][())(([]))]))])]])]])[[))[[]([[)(]((]())[)[[((()[]])][)[)[[][)][)[)[])][]()([[]((])([[([][]]]))])((()()())((()]](]][[)[([[](()[[]))])(())[]]]))])][]([[((())][][[][)())[[))][[))()]]()([((]([()([)]][)(][)]]][([[[()[[][([]([])(]((()[]]][])(][]](][[)]])]][[)][))(])]([[[[([()[[([[[((([)))[)))[([]([([]]((([((())))[[[[]][([]([[])(]]])[()])(((([(](([[))[][)[([()])[)(]()])][][)((([()[[)[((([)][]][)])]))(]([[][))))]]))[(])]([[)][()])(([)(]][[][]()]([)]]((())][(]]))](]()][[[)])((([)][()]()]([)[)[)()][)))([]([)]]))])][))]([((]()])))([)][[()[])][]][]](](([))])][(]())[))[[(][[[][[])](]([([)(]])[[]]))()[(]])[([[)[]][(])([)[])[(([()](])(]][))(]))[(())((][](([[()()](([)](())))([])[[((((])[(][)(]][][)))[([](())[[)))[(])(]][[]()[(])))[))[)[]()])()[][[)([)(()])[[])((((][]))(](())(][)(]()])(]]]()[[[[([])((]))])[((]]([[[)[()(][]])()([([[))[]([)[])([]([)(])](])(](]))))][[[][)((()[[([)]][[))(([(((()]])][()(]]])]())(][)))]]]]])[[[[())([[]][])][[([)]())))][]))())()]([(())[][))))[)([])[[[([[]([[]])[])(]]](([]]((([)](]))](])[])[]]))[)([))(]](([)[)(][)[[)))](([)[](([(]](([((([](][]]]]])))])])[))(])]())[]]([][))]]()]()((][(([(]]]]]()([[]([][)()[))[(]])()][]([([((()[()(((([[]()[())))[)([[[][]()[[[[])]()]]])()([))]]](]][]))]([)()[([])]))][(])])))([([))[()]][[)]][[](][[[())(()]]]]]][[][[([(([))[))([[[)[[([[]]]()[][[]]()[)(][[([([](](]][[)[(][()(((]())))([(()[][[[[][]()))]))([)[[(])(([)))(([])][]((])]][[]]([[([](])()])]))]([))][]([[[)(([[)]][[([])][[[)[[()[[([[]([()(([[]])(][]((([]])][]])))][[])(]])]([()[[[]]][])(])(](()[)]][)(])(](][]([])[[(][]([))((()][]()]][[]()[)[[([[(())]()()([]]])[][)()](][]()[)))((]][()(])])()][[[]][(]]((]])])(]))((([(])[[[)(([))[()(())]([)[((()[]()][)]]][]][[()[]([))()])][]][)])]()[())[[()((][)(][)][]][()[))))([[)()((][[)))()([)[][)[[((()[[]]])[(](([)])[)(]()()]([]]))(([][)]]][][[))(]]))][][[)()])())(([[[][([((][)(((][[]][((((][]([]())])(]([)])]()(]([])([])[(][())[(][))])[[[()()])]([)(][)](([(((]]][)]][[])()]())[][)][)([()()[)[))[)][)]((]]]))](((([))]))[[[][)]))])[)[[[())[]((](][][)))())][[)][()]])[)])][()][(][))[(]([)]([)[)[))([]((]([(([[(]))](]())(]]][](]((()))[]()(([(((((([[[][)[[]]]())[]))[](][(])([[)(]]])]([(][))[[(](]][)[)([]])[[)]])()([))))))[(][()]()[])[[([]()[](]))[)]([)]][)([)()))((])[[]][][[]()(]([)][))()]])]])[[])[)(()])])[][[(]][))([(()(()[][])]]()])(())]][[[])[)[))[[)[]([[([]))(()((][[)[[]))]][][[[([]]()(][[)])((([)]()])(](()([[)]](][]((([)([)(]](]()()))([[)([](())[(([((([[(]())])[[)[]((])((][(([[)([])[[((]([]()](](())()])])])[[[)])])))[]]]][((((([)]][)([[)])]]])[)[][)[)(()[)[]]][))()[]]()]])[[)][)[)([[](([()(][]([[([][([[([]()[]]([[](()])]])[)[[)])[()[(([())[[][))(()[)]](]([[)](()])()(()(()](]()([]])))(((]]))(((][()]])[)()(])()([][[)[[)(([(]](][(])(][]]]]][[])))[[[[)[][)][(])]()[[]](]]([([))[]][[())[)]]))(()()))([)][[[))[])(](]))(]]]([](][[()[])[)(]]((([]]))[]]()([)[[[[()[))([(((])]([)((((((([)])((]]())(])[]))()))])]))]][([)])[][][[()][())[][(]]]([[)](][(][)(][](])[)[[[]([()][()(]])]][]][[)(]])(]((][[(])]])[]]][[[(](((([[[([]][](]][]]((]([))[[](]]](]]()[])]][)[)])[)([([][))(]([](](())))()[(][(][[))]])[)])][([)])(]]]()(([(]][)()[()][((][()[](())[([((([)][)))()(])]()][[](()(][[([[([([](()]()((]))[)(](])(]]()[[[[]([()([[)[)())([])]]](])]][[[]])[))((([(])[([]][)([(()))[[[[)([()(()]]][)])(][](])])[([[]()(())[)])([)([[)()]]]]()[(()[[()(([[([[[(][])))[])](()(([()))])()[)([]]])(()(()()[)(]]](])[(][][])]()()]))[((]((]][(])][])][([][[(())]])(([]][)[[[]])[][[(([)])])(][](]][[[(]][(])[([)[(]][[][)()(])[((([[))][)[[[((]()[[(])]](()][(])])([())[(()()]([[[[[)(][(](()[)[[()]))(][(](]])))(]([][[()()]([][(()][([)[(()))(])])((((][((]])][[)(([()(]([)([)))[(()(]))()][([]()[[([()][(((]((()]([]))[[)]([((([)[[])(]]))[])))))[()]()]]])[]]])[)][[)))][()[()]()((([]([))[([[)][[]]]))[)()[]](][)[(][)[()[])([))(](()((([(()((][]((((](([[][)])[][()(([)]])()([()[[]]](]))])([()([[(][][[(([[])](]]])()))(([][(([[(]))([]][(((()]]][[)))([(])[[[[[))[))()(]])(((([))(((]])[(]()](()][][([[][)([()[])(()([[)([[)[[[[](()[[()[[)((]([]])][)]]))]])(][(][])([[))[[)))])[]]][)[]([][]()](][[()))][)])])][)(]))])[)[[]])([)]([][[()])]([[]([]([()()([[]))[)(])](][([[][[[))[[])]((]))]()[][[))](]]([(][[))[])]()((([))[)(][])[)([)()((([[[][][)[([[[))[[)]]([[)]())([]](]([[[[([]([][[))(()([)][([])]))][[()(([([([[[])(]]([))]](()])([]()[])]))[]))]([])])[())](([)]()[)(([[[[[)((()[])[))]])()[[([[)](()()])][)[)])([)(](])][][([][())]][(])](([](()(][)](()[)[((]][(]]))()][[)))))(](([[[](]()]))()((()][[[)[([[)])([(](]([[[(])[]((][(]((]])[](([[(()])([())(]()]))[((][](][]]]]([][]((]])(())]](][[(()]][(([]((()[(())((())))((()[(][((][()])[](]]())]][])[]))(((]((()]](([((]))]))(]())])][)()[[[[)][[]][[(]))[)][((]]]((()])[][([[[)[](]])[(]))[])([)))[))]][])])[][[[)))])((](]()])(((]]][()((])(()([][([)])(([)])]]([](()]))]])[)])[]()[([[(](([]])))]](])[[))[)[)(]](]])[[[])(]())[[))()(([([)])[([]))))))](])[])(][())()])])(]((()[](][](([[))]()[](]))[(()()))([(]()]))][))[)]][)[))](]]](]([(][[()[((()[[]][[(](]))([])([)]()[[[(])()][(](])(][)[))[])(][[()])]()((([()[(](()[](][[])([)][]]([(()[[)([]]]((]]]][])(]][]]])()])(]]())][))[)[))([])])][][]][[)[[()[()]])])((](((][[])))])((([]((][]]([](][)))]][)[])()[)([([)[))(([)()(][()[[([[()[(]([)[]]()))([)(]((([]()]())((]]())][])[[)[(]][]]])())([((([](]()[((])])[))(([)][])])(([(])]]](]]])]((((])]((([)]][][])[))[[(([]]])][](((]])))[(]]]]()[](]()(][)](]([[()[]])[[(([[([[]([[][)(())))[(]))]([]([[(][][)]](]())[[[[)]]][][(()](])][([]))()])])((])([(]])][]]([[[[(]][)[[)([))]]))([)]][))])()[])))[[(([[[]([()([)]()])([(][()[][[)][[([([]]][(]))))()]])[)()()()](]))][)][]]))[[)][][[]](()])(([))]](])](([()[[[()[(())[)(]))][)[)][(()(]([[[[())[))[)(()()[([(]))[))])[[()])([[)]))[(((()]()[)(([[)(((])[]([(][])(]])][]][[((]]])[][[[)])))][)]([)([)(([]])]]]([[[[(([()[)(([([]]))][]()(]()([([]))[[((())(]()])))])]))(])(][[[]])[())])()[[)][([[)]])])]([]][)(]]][((())(][[]]]](])[][())(()(]]([[[()])[][))[[[(])((][))([)(][))[(][]))[)()])[])(])())[([)[(()(])()()[[[][)([)(]])()[](([[)([(((][[[[[))]][([)[)]])[()][[][]([]][)(][])[])][(])))[][[[()[)[([]([[)])[)]](()[[[()[](((())[)[[)())[]]][])))()]])]][([])(]][[[)[[[([)[[[)([[()[)[()[[])()(((](][])[([](])]][())]]]()[((([((])))(([[([()]()[((()([[)[)[]]](][()([[))][[)][]][][]((](][]([](())[(](]()[]]]()[(](][[][((([)[[()]])](]](()])([)(](][[(([]]()[()[)]((]([([)]])()[[)(])])[)()(()(]]))]](]]]])()))[)])))()()]][))))(]])([)([(][[])])([)[][((][[)[[[[()))[[(])[)))))])[[()[([[[(][([[([[()]]]()]]([]))[[[))])]])[))(][([)])))])[)((([][)[))))[[([[[])])()(][)[[[)[)]]))[(]])))[)(])][([)[]()))[([()([[]]][](][)]([[)()]([]]([[])]](]()[(])[[)[[]]])[(]]([]][[(]))[)()][[[]()[]()([]](][](][((]([([[)([()[)][([]()][(](([[()[)[(])()[)[)[([(](]([())][([[][(([][)())[()(([[]])(]])][)(]([)]][([[)](((()))])(]]]()[]](([][[[()[)()()()(([)(()[([((]][((])(][([([[)]]][][((()]([)[((]()]](](])][))]))[[)([]][][([][]())[]([[(][[)([])))[[)]()[])]()[[((](]][()(([((()(])(](])[((](]]][]))]((][(([])[)())[[([((])]]()[)]](]][[[)()[])](]()(]])][](]()))(([)][][[[[()())[((]][)])[[](([)))]][[)]))([[[[)][[]))([[[([)])[(]])(((])])[(][(]]][(][(]))))(()((](())([)(]()(())()())[[[(()(]]())([)](((]][][))(()((]][))[))(]])))](](([]]([([(][)())]()[](]([[[)](()(][])])[((]()[[((]]))][]))[[]]()[]([()[[([(]]([)[])[()((()[)(([))[(([(](([)([([(([][[)]()[])([[((([])]][()[[[(])[])(]())[([)]]]]()])([))))()]))))]]]))][](((()]()(]]([(][()])[(])][(())[()](])[[[))][)([(([))])([([[[]([[()][((][)[])][([[[))(()])(][]()][](())()[)[[[[)]((])([)][)(()(])[)))][([)(([(]][)([()(()(]])])][])([[]][)][)])]])[)[((])((]])]()[))])[]]][)]]]))[[)(])[)[[)][]][))])]()][][(][)[)()(][((]))(][)[()]][[(()[)(][))](([])][[][][()(()][)([)[()]]]])][](](([])[][]()][)[))[[]([[]([]][]([))][)[(])][[))((](([[)))()[](]([((](])][([]](())]])[)[))]][(]]()][(][[(())))[][()][]([])(]((()][)[(()[[(]])())[[]))[(]]](]]((())(((]]][[]([))[[[))[[)[[((()[[)[))[((([[)([()]]([]](]]]])(()())()([]]()[[])])[)][[)](]][()[([[)[]))([]](][([())]((][)))()][]](]][]([][[])[([][()[[[)](([[[)([()[]())](([([)]([][(]((][][))[[))[])])]][[((((([)])[[]][[(][(()])[]]](][[][]]((](])([])[)]))((][()[]))]][)[]][]]]][)[][([()[[(()]]()]([]](][)((([)()]]][)]]])])[]])()[)(((([(([(()))[())[[(]())][[[[([]((][]])[[[(]])][()])()[))[)()([(()([[](](]([)(]([([[[((((]]()])]]([[)))(([(]]((]([(]]]](()([][[[][)]((()]))([)[][()]]((([(]()((([()][()[(([][[)(])))]((]]()))(])[]()()((][([[)[[[][))((](][[)])[)(](]]]](]]])(([()(])[[[][[))[])()([(([](])]])))])([))([[((][([(][([([[])]])[](])[]])](]]][])[))))))))]([](])[]][)][][[[((][)(]](([((])]))[]))[(()(][[[(()([(][[))))]]()())[[[]())[[]([])([([(([[[))(([()[][[]]()](]][)])(]([)]](()([(]])]]([))[)][]))(](])()]](((])[)(((])([]]][[)[)(]])[)][))][][)][][]])][(][)][[[)]))[(())(]][]][](())([(]]]]()[[[)][()[])[)([]])[)]][]])[]))][[))]]([((][]][][([[))([][]()(([)[[)]][][()([]]]())(])]][((][([[))[](([])([](](())()(([([[]])[))()[](([[([(([][[[)])]])(](]](]](]()][()(((()))([((()[]])()]([)[)))[[)][[(()[])()()()[[)))(])])](((])()(())]]](()([)](]))())[())])][)(]])[[)([([)[(]((])][[[])[(]]((]][(]((((([[[[]([]][()])))()][)(]]][[[)()](([([][)[)](]](()(]])())([)[[[])([[)[]([)[[))[)[()((]])[(][)[[)(]]][]()(()([]])(]])[](((][()((](((])])]]](()([)[)()(([](([][[](((][]][]()([[]][[)[]](([][))[)(][)])([[[][[(]]([[([(([)()(]][[)[(][)[)[[)][[[[(]([(((][[][()]](([))))()][(](]][)())(()]])()]](()()[])(())(]])]]]())(][][)[]]([)[(])))][(]]([])([[]()[)])()[)[[[(])((])))[(([([)])])])(([])()][)]]]((]]([])](])()))][(]]])()))]]([))()[)](]()][[][[(]))(][(]][[((]()[[]([))((()]([[[][[()([)][]([]][)((((([()[([][](([)([)](][[)]]][(()[)((((])[][[[][([[()())((())[(()][)]))(]()([)]]))]])([(()[([[]]))][(][((])(])[[(([[])[(()]][[([(]))]])[)()[]()]][[[()]()](]))[([]]][)]])[[](([([[[]))][))([))](]()[([)](](((][))()](][]])]()]]]]))()][])([[]][]((((())()([](([)))[(](([[])()[(][[][((][]])[)]([[()])]()[][[[)[(](([])[)]))])][])]([(()[[()[)[(])]]]][)()][(][[([])][)()(([)([)](([](([]()[])])()[((()[][[()([[([][[()))))[[()([[)]][()[][[]]([([][)]()][)[[]]])]])()][[))](([([[]][(((][)[[[]()([(())][)))())[)()]]()])][))(][[[()(])][[[](()(])[[)]))))()((][[[[[([)()][)[)((])]))][[]]))(()()(()(]]((())))[([]][()]))()]()[)(]]](]()[)[(])][[[)[]))))()]](([(())[])]([]([[[[]](]]]])][[(])[(]([(((])]])[)][[)](][)[[[][)[[)[(][()][)(([[())[[[)((]]])))](][[[)))[)[)])][))[)[[[((([)[)]([][][(()(()[([((([)()](]][()[]((][(]][))]][])]]))])]](])][([()]][[)(()(()()(][)])(][[]]]])](])(][(([]([]())[[[)))[]]]()]]][(][)]()())][)())]])([[([))[(]][(([(([)[[[)]([]][]]]()[([[)[]][)[(](][(](][[][(()]](([[[())(())]][])[])](]]](]][)[([))))((([[)[[[(])(([]])[))[]])]])](][](([[)([[[(]()[[][]))(((])([][)()])[))][]([][][(())])]))](][)])](][[)((()]()]]([][(()]()][]][[[([])[)]))]]])][([]))[][))[[(][]][([])))((]](]()(([()[[]([[((([])]]()([))([([([(())])[][[[]()[])(])()][)[[][[]))[[[(])[]([][]([[[]](]])(([[](([)([)][[](([(()[())(])()])]()[)]()((][]()(](())[[][[([]]())((]([[))([]()[])(((])(]()))()[[[[([([]([[([(()[]]((([)(][)[[][][(])(()(][[[)[[((([)()())(([)))][[[)()()]()[()]])](([([(](]]]][)]))[(([[][]])()))[((]]((()][))[)]])][][])]])(][[([[]])])[))[(([](][[()()[]][()][](]]](([[))[(][[]][))()([)[)[)[[([)]]]]]))[([([)](((]))()][)[)[(())[[[[()]([][][))])[[))()(]]])[())]]]([(]]()(([[])(([[[)]([[([([[[[)[[[))][]()[)]]][[)][][])[)([[)]))[)](()[])][(][(]]])](])]]()[([)[()(()()((](([][))]()()](]]()))[[[[(()))(]])))[)[[])(](][][)])]))(][(]()([[][[(((]]]([](()[[(])]]][])[(](]))])[)[)])[)]]((]))]((()[(([[([[))[]([](]]))][[][([[([]([()[(()()]()]]][]](()([[)]][[[[]][]([([[()()([)([)(](]])((([[])()])[]))[)((([([()([[[][)([]]][]]][[(([)))]([)[]]([)([[[([[(([])((([)](]([][(([)][]]))](()]((][(]([(]([)[[][)]]])][[(])[([](]])[][([[([][)[][()[][[)]][]])[[][)[])]()]][)[]][])(())]])[))))(]([)[)()([[][]]]([([[(]()][[]]][[)[(([)())]()))))[[(][))[))](])[(]())[))]]][[(]))[((]]][)[)())[])([[[[)()(]([)[((]()])]([([]]][(]](][)))][([]]](([])((][)])]]))(][(()([][[(])[()[]])(((([(([[)])[]](]]][[](([[][(]))[(())]][([)]([)())](](]()())]][(()(((]([([(([])[((]))][](()]][[])])]]][][)])(]]]]]]))([]()()](][]()[[[)((([()]())][([][))()][())][(((((](()[))]([)[[[(]](())[[][(([()(](])[]][(]][(()[][))()[][(]([)[][([](][]]]]))(([][))[(]]])))()][[()])])(())]))])[)])[][)])[][][)])))[])]][]()()[][(]](((])])()[]]][(]]))((])[[)(([[[]][[))(()]]]((](()](]][[((([[)]][)((][((()][)[))()([])[[[(](])[[)[)(([](((([[]])])]()](]]][[])))(]([)[)])))(((][(])[]]()([(([)[[]))[)]]())([)])[[)]]()([()]])])[[)()))]([([(]()][(([((]))[]))(][[]()]([(()(([]]([)(](]][(([()[][[[)][)(()[]())]))][)()(]]](](]()][)[[)](((([]][([)([[][][])))())))([[(][)](([[([]([[(([[])][(])])[)(])]]()]][([)]((]()))[[((]](])()[()(][[(])([]))()()([[][])((]]((([)([[)[)))(()(][[([)[](([][)[)(][(][(]))[)([))))]][[())][)()[()))[]())([]([(([[]][][][))])[((()))[(()(([()]([([][[)))(])]]])]][(][][]))[]())[([[[[])[([)[(([[](][(]]])](([[)))(](([())[[[(](][]([[])[]))]]]]])]][]]))))()[)][())]()))[[]])])]))([[))(([)[[()))))()()(])[[))))(([)([([[)(]]])[](]())()[()([]]([)(([([]()(])](()([[(](])))[[[([)())(][]((()[((([)[][((([()[))[))]([)[[)[]]((](]]]](())[([(]()))[((]([])]])])))())]([(]))])(([)(([)([(]][[)]])]()[])(][(]([(([]]((]])(](][[())()]()[[[())][)]]([])])]]]([(][[[(]][]())([))[][[(()[)][)]]][[(]))(()]([([]([]](]][[][[[(][((([[)])[)[((])([](([)[))])((((])()](([]]))()][]([(()][)(]]((])([[(()([((()[)])[([[[[()[][)()([])[][)]))])[[[)(](()([[](])[(]][]]([[][([([])))()(]))[][[())))[((((([)))([(](]((]((()][](]]])))[([](]((]])[]](([)((]](([()()]))(()(()[)((]][](])](]][[((](([]()([)[)]]][()((]]))]([[(((([[([][]][[][)])()()[)[([()[)](](]]))[))[)(((])(][[([(])[)[([()))(](][(]][[](](([()][]([(]]]]]([[((](]]([(([))(]((]](]][)[([])()]]()())][](]((])((])[])]((]]]][[([]())[]]]][(]))][((]]([([)[][[][((()[()]())])]][[(][[[)()]]((]))[[[)][(([)[()[)][)([(()]([)][[([]]])))(][(([])][)[]])(([[([[((][]))][)[])]]]])(([]()([]])[)(([])[)])(([]])(]][]([])(([))([[](]((])))[[]))[()])]])](]([][)][)[)[[(([()[([[(()[(]))]([])[][])([]((](]()]))[)[)(([)((()[()]][(](](()[](])]])))()[[]][([[])])[(]])]](()]]()])[[([[)(()]][)[[]][([[(](()()][[](]()(][(][[][)[[))]])[[[([))(][)[][())]]]])[](]))[)[)[(((][)][[[)())])([)[[()(([]][][([])][[][)[()(]](])((()[[))][[]][)((])([)[[][]((]])[)(]((][[)]))[][(()])()))[[)[)()((])[])((())][[]]][[[(][)])](()]])]]]()([)()(][((]()(]])[[()[])[(([([(([(()))]][[[][(][()()]])([[[)])))())((]])][(]((])([[(][(]]]](](]]([[])][][[)((([]([)(]](([([))[[[[((])([)][)])((((]]])([][]))](]()])(](]][())()][]()[)(][)](]([([]]]]]((((][()])((((]([]((]()()([(]()][)]](](([[[()]][][[[)(][([(])[([([]((])(][](())(()[[[)]](()()[[)])([])[]([(]])]])[(][])((([)[)]]]))([)])[][()](])[)](])[[((([(()])[[][[])])])][]([([]())))[)]([([[)))([)((]])[])[))[)([[[((()([)([)]()))[)]])[]]((]][[]]]])(][[(])([[)])(]]])[(]]][([[)]][]]]]]))]([()[](][][)[][]))([)()[)]([)])))([(()])])))[([]))[(][[(][)][(]())()[)[]((][))((](([[()((]([)]][[)))([[()()]([[((]]([])][))[([))](][]]](]()()(]()]])([[](](()(]()))((])[]][)()]))))(])([[)]])(](](([()()([]))[]([[[[]([))[][)]()(][)(]))]][())((]](]([([])](](][([()[][[))(][((](])([))(()(][)[[][]))([][()((][)]][(()[]))][(][]]](()[)((((]]()()])[[][))))))(]]()[))[(])])()]))][])[)]]([[(())][][[[]()]))([])()]]]()((((()()())))[[][([(((][[][[)[]]())(])))]))[)](([)]][[[)([([()](][(()[([])(]](])[([)])[[]()][[][]][](](]]))(()[]]([[(]()][)[(([[[)))]((])[((((])]](]])[[(()]])[]][((])([(][()()[()))[)][[)]((][[(]()][[([][[([[)[(([((((())[])])()][)[))](])((]][[][([[[())()([)))]()())]((][))])))([)]]([(([(])[]](()(([]((][[[((](()((()][((]))[[][]](]]][])]]([[]]([])][)[())()]][(]))[()]](([[))[()[()[[)[)][]))][)]()))]([())()[()[()][(()]](()]]][])[[[(][)([)]](([)[([](([]][]([([[[[)[][(([])[()(()()]](((]))]]]]]])](])][]())]][][])[[([)]]([]]][[)((][)[)[)[]([[](([[[[))]][[[)]][([[]])[[]][)(()()))[[[[([](])]((([[]()([[(())(]])()])(][]])(()][[)[([)])[)])[[[](]()()[)])([)]([)([))(](][](][[([[(((]]([([(]])[])]][(())(((][)](([([][)][)))((()[([([)])])]))][()][))])[([([]))((([(](])()])[)[[)]][(()](]])])()))))))][)))[]))]])[()])[][([[[)([][))[[])(]]][)]()])])[[]]([]][([)[]][(())][]](([[)())][[([])](]]][]())][](([][[)[[(])[([])()]])[(((]](](())][)([]](]([[)[[[[)([]([[[]][[(])]([[])][[)[])]()]]))))]))((])())[[)][)()[]([))()])[([[()]([(]][(]])(])[[]]][))[)]]](((][[(])()[(([[[())[])][][]([[(](((]](]([(]][)(][)(][()]])]]](]][[])][)(][]]([[]][])()]]]((]]([[][[]]))[][)[[]][)(()()())[])()])(][[[)[][([[[]](])]]][)()(][])[([[())])[])]])][]])())]())[)[(((]()([(][][[]())[([](((([([([[)[[(]([[(([][((([][[()](()([[[[[())[[])])[]]((]([[]]()[(())[)]]]]]][))[((()([(])][[[][)]]()[[)))()][([][))[))](]]]([][[]])])[]))]([](]])([])[]((]][][([)][)]]())]()[]))[[[()()([[((([]([))]([](([)(]))))[[[]))[)[)[[]((][()])[()((]]])]][))[(]))))])(]]]()])])([][)][[]([([()))([(()[])]]()]()])()[])))([[[([(][)[()[]][)[([]][)([)))(])]))(]()][])])[()[][))[]((]))))][[))(([(()])][][](]))[)][))[)]()(]]][(((([()][((])[]]))[])((([))[[][][()[[](((()[[)())([][)[)])(())][())][((]][[][(())[))()))(][][[][)[[[])))[()]]])]()]])][(]))[([)(]([)[))])(()((([[](]][])(]))][()([])([()][(])])()][(]][]])(())()[(((][[][][])][][([))[(]](]([[[(([[(]][](]()]])[)())][[][()))[[)](()(][)]()[()()])]((]])]]][]](()()[[)(])[[))(][)[(](]()([[()((]])[))][([)[[)((((]()])]](][)[])])][[((]]())]([([))([]][](([)(([(][([(]])]]]()([[[)[())(][([]]]]](]([)]))]][([(([[])[)])[[[)([])[[][))(][])[[)][[]][][](([][[]])(([(()(]][(([[)(](())[))[]])[[[(()())((]]()[([][)[[(](]]]))[])[][[(()[)]()][()[(][[)]])))[])[(]([])([[[[([][(([[][[)[][[]](])[((()[[)])))[([()][[[)]][][(]([)((]][]([[([([)])(][]]][])(](])[([)]()[][([))][[]])))()[]][[[)(([)][[))()[]])]]][))[))][][][((([]][[)([[]))]])]])([(([)(]()[()[((([([[()[[)[))))[)[][]]])()]]))[[]]()][]]))([([]()))[)]])[(()]([[(]([((((([)]([[][))]][][[)()())[[])[(]])(][[(()([)()[(]]([]((])[])]])[[)][)]()(](()][](((()[][(())(([][]([]][(([(]][[(]])([))]([())))]]][)([]([(]][)][(]()[(([))([[[)))[)([)]][(]][)()[)[[[](][]]([)[[[(]()[(((()((]())(]()[[(([[]](()([[[)[[([)))]](]([(][((]())[([(])][]]]](]](]([([)[)))))][(()[)](())]](])[]((]]])([]])]][[(([[(())[]]))([))][(](((]])[([(()[)([)]][[[[])[]([([)])[)[(])[]()(][[)])[]([))][([()])](]())[(]))][(]]))[)()()][[()][)[)[])][(]]([][])])()]([[])[)())](([((((]((]][)]]([][]]())]()()][[)(][)))(([]][[)][))[[)([[[))[[](([])]())][]]][[)[))[]])))([[))[[](]]]])((((([[])[])([)(]]])))([)][(((([([]()]([)()[((])](((([)]])(](([]]))()][(([(([[((([)[][((][][(((])])([(([([))()[])(()(])][)[()([[()[[)([[[)[])[][)]([]((([[]])(]()(][()(]())]))]][[](])][]))())[()[)[(][)[)[([]](]()])]]](]))))))))))[)(][))[(((][)([)(][[)([[[))(][)(()[](]]))[[]]])]([)[]](((()(][)[[)(()[])]]((][]]])[)(())(([)))))[]]]([])[()[(]][)[([][)))))][()))())](]([([)((][][)(](([(([][((((][(([)((]])[]]([)((([[)[[)]]])()))[]]]([()[[]))[)()[(()(([](]])()[([))((]]][))]]][[([]]]))((()]])]([)(([[)]))[()]]][([)]([]((([[])][(][](](])]][])([)())([[([]]())([[)]()((]]()))((([[)[[()[(]]][)(([))([(]](]()(]][])(([([[()((]((])[([][]](()()[([]](((][][)(]([()(([[(])](([]][(([]([)()))([)]](]]][)]][([()[(([]]](]](((])])]([[[]][)))[[)(]))][]])[))]([])((()[()([[(([)()])[()])]](()](]]](()[])]]()](][]][(](()(]])][(]([(])](([()[))[)]][[]])(][]))])[(][])(]])[)([](](]((()))][]]))]](((]]](][()]][[[[[)]]()([[]))]([(]])][([)[]](]))))[][((])][[(]([](]((((([))()()[][)((((())][[[]]]][[][]([(([()))]]([)()([)[[[[)][[)([(])])[))([()[[[]]))]([((](([[()][)][([]]]][])]))(][)[))][))]()(([)][]((]]))(()]()))([[[)]](([)[()[[(]((()[][](]][(([]()))(][)([([([))[)]]([[]([[([(][[(()([][]][)[([)[)[[[()[)))[[[()[((]]))])[[[)[[()[)])[]()(]])(]((]))[)[([)[))))(((()])(])]))(]]])((])([))(][))])((([(]][](([[)[)((()])]])[)))](()]())](][[[]](]()[](())))[][[(][([))()[]])(][)[(([[()[([[)])[[[))][(][[))]])[[[))][)(])[[[([[]((]]])](())()()([)[[][]]][][[((([]()()](([(([])](][)]]]()][(](]([[()(][)]]))][]](([[[[()[][]](((](][[)(]])]((]))([]][]]][])))[(])[])([]]))((())[()([[)()))[()))[[[[()])]]])(([)([[()][)([][][(([]]][)][][[)())]](])])[[)])](][()][][)])[(]]]))][[[(][([]))[[][([)]()[[(([)[[(][((]([][))()[)]])[))[][[(((([[]]][)][)))[[([([(([[[([(])[))[(]))[)()]]]][([])[][))[(]))])])]](([((([]])([((()[((((]]()][(]))(][([][)))]()[[([)()][])([[])](])[)]][))]())][))[]])([(]])[])][[)])()]][)))][([[](([(())())[)()])]([(]]))[)()]]])(]]()(])()(()][]]][])][]((][]][))))[[)([([()](](]][](]))(][)[)(((())]()))()][][)[][[)[[)])]()(]()])()[)[)(())]([][)[[[([[[]]((]](((][[([][()(((][)(]]()(([[)())[[[[[)[[])()()()(]])][[)[))([([]])]])])[)][()[[)[(]]()([](()))][])])[[[[]([(([)([[[]][)(()[[(])[]([[][(]()[)])))[)]))[))][())[[)(([[()(]([([[))((]()([](()[[]][[[]()[)])(]()))[[[[))]][]([])]]((][])[()[][](][(][))[[](([[)(((])()())]][)([[)()))[[[([))]][][]]])))(()[(]]())][]([)([]()[[)])([][[])(](])(])[][[(])]()[)])[[)[[()))[[))(([(])]())]((((([[()]][)[[)[([)])(]()]()(([([()[[)(())]]([(][)[]]])((]]]))](]))(])([[]([)[)[][()[]][[))(()))](](([(][][][](][[[][(([]()[)]([][[]()[[)(][)((])))](][(([][((]])[][([)[])[)()][[)([()]][)]))))]))(((]))[)[)()(][]([(()][(])]])))])][]))(])()[[][]))[]))]][))][))]([][][[)))]([(([()[[[]))[[]])[[[[[[])]]][())(([[([])(((]()[]]((][)))]][[[()(][(][))](()(]([)[)))][((](((]][]([(()()[(])()(((])][])))(])])))([]()((([][](][])(])([[)()[[[](])[(])[)(]][])([[][)[[(()))()][)([))))[())))]]](]))]))()[[((](([](]])])()(]([[()[[(()[([]](((][)))(](]](]]([[(]((([))])][]]][(((](][[])[(((()[)[])])[[))][][[(([])][)(([(]([[[](])])[]]][]([]))([]])[))))[[()][(())])[))](()[][][[[))()]())()](]()[))[[([(])(]]))(()))[]](()[)([])]((]()[[[[)[)])[(()]((([[[([)[[]]))(])](([])]]()]]]]((][][()([[(]))[])]])])(](]))[[()((])][[)]())]][)(([(](([][(][(()([]])[[]]([)()[([([)[([]][)))]))([[[([[)(]([[)]]))]([)()]]())[]())))(([])])]]()()]]])((](]([)()[[[]]([])(()]((][[[(((])]](])[[[()[(]][))[](]))][[(((]]]([([)(])((()]())][((]]](]))])](((])[))])([(]][][][[]])(]))[)[])][(](])])(][(]([[((()()[(()[])[)(]]][(][)(][)[[)[][((]]]]((([)[][([))[])])]))[(([)))(([()[]])[[)[]))[))(](]])[[](()(((]][)))[))))[])[([(]))))[)())[([[]()[[))((])([)())(](]]][][[(()(]][][))[[](])(])([[)[]))[)[)[)()][[)[[][[[(]][)((][)]]()[][])]][((][[[]](][)]])()][))[)([(]]))[[)([]][[])[([[([][)))))](][()]([((])[][]])([)()))))[])[[()((]([((][)[[[)[([]([(]]][]([)[([(]]][)[((([][))[(([[[)[[)([(([[]])()][)]])[(][)))]][])])))]])([([([[[[)([]]]]()((][[]]])(](][]][[[]()[()[))()](]]]](][)]([[[)]))(([()]][(()[([]))(]([)(][]])(]]][[[(][][(]]])[(][((])][][(])[)[([([][](]))[]](()(([]]])[[)((](((([()][](([)(()([)[)][(()([()[())()](][]][(](][[[[]](([][(])[[[)[[()([[][)][)(][)())[([(])[([)()(][])][[[)([])(])([([(((][[[(()(())))]())[[[)[(]())([(([[([[)]](]][)[](([)(([([[[((((]][[]]))())[][[]][[)]()]]((([[[)[(]()[[()(([][)[])((]])]((])]()]]](]))(()())([[])][()([)[([[])][]][[)(([])][(]()](])))(][[()(([[([))([](()))[](([]())([]([[]])[)))([][][([[)][[[()]([))()([(([([)[(]][][())]][)]])[]]([[][]][][][()([[(([([()]](]]()](][](()(][]]))(][]()[[([[((])]])[[[][())]()))([([])(()(()[(]([()[(((]([]()][[])]))]()(([([)]))])([))([))](][(][)[](])(((((](((][])[][([](()()][(][)[)[[[)][))]](][(]]])[([]]]()]]][])][((]([[[]][][])))(((()])])([[[)[[[[))(]([[[((((([([[]())(]([])[][(()()(([][[])][))()]][)[(([[())(](])[)([[(())]]([)(()[)(][[])]]([))]([(][]][)[[])))[[(](((]([(]][)()[)())[([)(]])[[()((])][[]]()](]))])[([)]]]()))[[[)[(]]([[][][[(]))([]][(((())(]][))(])]()[[[[))([[])])[[[([()[](([)](]([[])]())()((]([)][))[[)(]([][]]]((])[[[]]((][([)]]](((([[(])(((([))](][[](])((]])[][[(][)[))[)[[[))[[(]]([]())())(][][())()[[](())[([)]([)[[]([]]))(()]][)[)))])[)())](][))[()])[[(([))[])(]([()))])(]][]][([[]([)][))[[][]])[[[)((][]([(](][]]([)][[)])(][))]](((][[()([()))(]]()])(][[[](]])][)(()])]((]]())[[)))[[][)(())])(((][)[[(](([[[[([]])[[[((])()])][(])[(]([([))()])]()([))]])]])]])(][()]))()))[)[][))][))(()(([](]][]]()()])(([((()))[)]]]((])[)(())[][[[)()((([)]])]](())][])])]((][[]])([][)]](]]([])[]](([(]]((]]])]]((]])(][()))]]())](((([)][[]([]]]([[[[[]]]]][[[(][([](]])][[][(([))[())))([]][()))])][[)]([([][)([(((([)]()]([)[(][)()((()]](][)(])])(](()[)(((]]])([[[]](]][][[][[)])[)]()[(())])]][))))[())][)((][][][()()(([))[[][[[[)[]()])[]]][[[[)(()])[]))]]])(])][)(]([[)()])))()(([[(])[)]()[)[)[]))(([([([])]]]][(([))((]][)][()[[([[]]))()[()][((())[([(]([)])]()][)]])]]))(()[])]])])][))))]]](]()))[]([[]]()][[[[[())[[))[[)])[[)[[(]))()())[][[))((()([())[()[[(])[]]]([[()])(]]()([([])]([][([[](]])[]]]((()([]()()))[(()[)())(]()[[]][][][[]]]))]][()[]]]())(((])(][][[[)]]])[](][))[[[)[(]([])][]))(]][]][[[(][(][[()][((())]([[(((][[()](]))[([]](](([][)(][[)][][[]([([[]][(][)()((]())])[))]())]]]([][(]([[)]]))][())))([[(]([)(][)(](]]][[)([)](][])])[))))])]])]][))(][]()[)])(][])()(]](](]](][([]])([)[[)])][(]([()[)]](((()[(]([[())))[[[()]][(]]([[)[)(())]]([])[]]][]]()[))([(([]))]][((])[][()[]([()((([](()(][[[([]][()[][)([][(([)([(]))))[][()][[]))[(()(]()[)))([][]][[[)[[(]))]]([])])])])([[(((([])()))(]](]([([(]()]([]()([)][([])[(]())][]][)))[)[((][](])[])][(][((]))(())))][)(][(]]])][([)][())]]))(][)[)((]((]]([[)]()[)(([(]((()])([([][((][([][]][)())]((()([[]]]([()][)(]]])])])))))())))[][]())[(()(]])])]]())(()]][[[]][[[([(([([[(](])[(([[[(])]](()(][[)]]][]([]((([)[[]](]([[])[[([)]])])[)[[)[([[[]]][)]][[][][][))[[]()([((()()]))))(]][)]][[[][[[[][])]])[)[([)])[)][))]]](([]])][(([]((((][(]](][[[[])]][()[[[[][)])(])))]]]((()((([)[][[)])]]))]](())][]([[)[([)[])()())([]]])]()][)()[[(]]))([[[][]]])((([(([)()][[][(]]([[)[](])[][]][)](][)([(()][)()][]([)([[][)()[))[[][[[)]]))[[([))])[])]([]])][[[[)])(][[[]()([)])()))[)(]]([[[()(][[[(][[([[]]))](])[[[)]](]])[]()()([])[[(]]]][(()(]))[()([)(([[]([[[[]))[(][)[[)(()(][([[))[[[](((])[[(][])]))())][)]()[[[[])]())[][(())][)][[[(]][(]([()))[([)()[]()][(]((]()()][)(][(])]]])([[])[][]])]())]])([))[](())(()())[[[][[[)])))([]((()][))[[)[)[[](]]]()[][(()(])])][(][])]][[))][]][)][][(]]))[[](])[)()[[([[)]]([][()[)[[([[)]])[]]][)(])](][]]]))([)([()()]])]()[)(])))([][(][[)(([])[(][)()[(](](())[]([)))(]](]]([(]](((()([[]]](]][([)(([)]][[((](((]][)[)(])(([)([]][[(([))[))])()][[(()[)[]))]((]]])()[)))((])()([[](()[)))(]([)][]]([[)[)(](]([)))[(((]((](()()[))]][](][[()[)((])))(][]][[(]][][(]([)(]]][](][])([)[[[]))][])[)(()][(][(][](]][(()(]])(()[]]))(]][)))[[]))([]][[((])])]([())([[([[][()))([)]))][)[[][))[((][]]]])([[]((([(])[(([[[)]][][]()))(]]])]]]()[[)[(()][]](][)]((]))])(][(]]][[(]([))]()[([()](([]([]([])])[)(()[)[(]])[(]]][](]([][[()]]))(())]][()(((][[(]))[)])((])])()[[])]]])[[)([]())))()[[]))[[][[])()(](((]](][[[(](([))[][[[())]((([)()))(([]()[)(([][)[(([[)))())(]()])[][))([[(([()(])][[]])[][][()()[])[)](]]][)(]]][[[[]]([[)([)((][]()[(()[)))()()(]])]))[)[](())([]]][()([(()(()]([([[[[])((]()(][))])))[][])[)[][(][[])]())))])()](()[)((])])][)[(]]))])(](((])[(]](][[([()]))[([)]]][[[[)))[(]](])[)](((([)][)][(([(](]]([][[]))[][)[]()[[[])[)[])([[]([[([[([])][[[()([([]])][(())([([]](]((()))([](])(])(])](]))[][)[)]]](((]()[[(][)([([])[)][)([()])[(([[]][[((])[))(]]([([)])](([([[)([)[][[)(])[][]()])[)(][(])]([](]][)[)[)[((][()()]])[(]([]))](())[][]]][])(()[((())(][[[)))(([[[)[)](])(](([(]]][])][[)(][(([()[]])(([[([]])(])](][[([]))]()[([]])((]])[(((()][)]])[)]([[])])(][[]]([()][))[(]([[)](((])[])([(]((([)([[([)((([])[((][)])][[[]]())(][][[)[))()])(]](](([)[)(]]][(([[]](([]])[)[])]((]))([[([[[[()][[[([)(][)())(()]([)[]()([]](]()](()[])(([())])[]])([]]]))[(([))))][[)]([))([)((([])]([])([][][[][(][][[][([]([[])[([[[](((([()([](]]]()(([[[[])][)][]()](([))[[[)(((])](([)(((][)[)[[))])([](]])[[(]])[)))(([[)([()[[[]))[()]][)))((((]]]]]((([[][)))]])][)](([()]())](((([)[[[([(()[[[)[][(((][]]]()]([[))(]([][[)(]([]([([])[](])))]]]]]([[[])]([[][]][]([)())))([[)][](([)]][[(][)]([])]](](](([](][[[[()([[]()[([([)()(][(([(()[)])()([)]][(()[)(((]]])))(]))])[[)([(](][[[](()][[)([)])))())(][()]))[[([)))(]))[[[((])]][[))][[)[([]]))]([[(]()][[)([[[)[(([[[[])[]]][(([((](([]]))[((()](][))()()[[]])[))))(][](((])[([)])[(]))])[([[[)]][]]())]))[)[(()][)]()][[[][[]([(]])[)((]))]][[()](]([[[)][([)][)]](([])[[[)(([(]([()][((])][][])[[[[)(][(](([[(]])[)[)])]()[)([]]([(]][[()))]])((])[[)))]([[](([)[)[)((())(((()(([[[((]]][][]([))()]]([(([[])]]]]()](]][][[[)][(][)])[)[)((([)(([())[)[(([[[([(((()]([)))([([((]]][][]][])))[]]([)()))[][(((([)[[)([[((]()[[([(])))])()())[[)(([(()([[][]][])((())[()((](([(((([)))()])])[([)(])(]]((](][(()(]]])[)[))((])()[])]](]][])][(])][[]])[))[))])(([(](()[[)])[][)[]]]()()[][([)[)()])][)(]]()()([(]])[[)))[])](])]][(][()[]])()[[[)[()])[))[[])][)[[][]][[(]][((][[((])[]]]([[(([(][))([]()[)[()][]][)[])[))[[]))()()](([[]()](]][[))))][[)[]([()])[[(([(][[[)])(()][](]]]])))][())]([[[])][[((](()))(([)()()[]()[]])[(]])](])([]))[[])([])([)]))()][([()([)(][]]]))[((][((](][]([]])[([(][)((()))()[](((]]()[)])[([[)]()]])[[)[((])([[)[)])()[](()][](([)[]](([()]]])(]([([][)[[][[([][)[](([([(([]]())[)][[)[)][)])))[([)[][([)[([]()))(][[][][)))]]][[[)]([](([])][())[]()[])((()[))[()))(())([]][]]]][[]()[[()])[[]]]([][[[([))(](]))[((](()[()[[[)[)][][[()][)[])(()([]()])[])[]]][]()[][]](][(])[[]])[()[[((]]()[()][[[]((]())]))])()[)(][[()](]][]]()(][)[[)][[)]([][)(((]))[])[)[))(()[[)(()))]([][[][[)]][[)))))][(]]()[((()()[[[[)])[])[][[(([[[[()[)(])))](]][([([)]()[)[[[()[(([()(([][(()[(]])([[))[)[][))][((((([[[[)((])]()((([[))[])[((([))[)[)()([([[][])][(]([(])]]]](])]((([[])[[][[][([[))])(])][[][)(]())])()])[)(])([[)[[)][(()[]((()(](])([[[))(]]]]](]]))))(])))](][(])))([])]()]))(])])()(](((]]][)](])[)[])((])[)))[](][(][)[)(]((])[[[]]][)])[[]]][)([][]](()](()[[[](]())(][)([)][)([)](]))]]])]()](])[(]))(][[[([())[([([[]]([)(]][]))[)]][])(])[[)][))([)()](([[][[([)[]]]][))))])([(([]([([)(])(]())][]]))([[[[))[[]]][]][([])])]([()))]]()[]([[(])[]][]][]]([]()])(()(]]([)](([)][](])))(]]))]]])]))][([(([)])[(]((])]]))[[[]([([]]()([]]((](([))()[)[)])][[[[(][[))()()[[([]]()(())()]((](()[(][])[])()[())[](]]](])([(((([()((]([[)(](]([[[[(]((())((()](])(([]([)[]]([((][)]]()]])]()]((]((]([(][[(]))])]]]))(([[](()](][))[[)(()[]))[]([[][)][])[])[]][)([(]])(]][](])][]()(((()((())()()[])(][[(][))]]]]((][[(]()](][[([])([)))(])([(([[[]((([)([)()[[)((]([)(](](]])(]()[)[[[[[()][[]](()]([][)]]][)([][)[)([][)))())]]]][[([[[]]))(]][](][[)[(])](()[(([[)(([)][)([]])[]))())([](](]](()()([[(()))]]])][(]])[((]))](][[][[(]][][(()())])([][)][)][][][])([)([][(]()[][)(][)(((()((][]]]((][]]](])))[[)()[)]][[))([(][([(])(]()[)](((([)[[)(()[(](])]])[[)(][)(]])[[[([)(([)[(((]([[)(][][)[[]]))[((](([]([](][]())](]]][()()[(])]()](])](](((()[[)[)([]()[([(()]((](()[[][)([(([)((()(][))([(][(](()[(([))[[])[)[[)[[(([])[[([]([][(([)]])(]]((((([[]]())[]((])[]([[[(([]()([])[]](][[[[()]][]][[(([)(])))[)[(][[[)[))([)([(())[]])(()(][][[)([]]()]]])]()]][([[(()(()[](]]([)]([[()(]][))])(()[[]][]](([][[(([[[(](][])([)[([)[][)))[][))[()])[]]))](]])(]))(](())[]][(]][(([)()[)[[(][()])[)[[[]])((]]])(([])))()()()(((])([)()[))]([[(])))))[])(](([)([][()([)]])[][])(]()[[)[]])()]](]]][)(][()][[][)])[]][)][([])[[](((])(](](]([)([][[)((][[]](([[[)[)])[]((][][([))[[(](]))[)((](])[)](())[()[]][))[((]]]][)))()][[])()]]][([([]]())[][[([)[[[(]()([])][))]][[[][)))])[[[][[)[[[]][((([]()))))[())(([[][[()(([](][[[[)[][)))]])())))](()([)]()([[[))])][[(][(]()(((]][([))]()])[(]))(](()()([](](])())()[(([([)(][)]([[(([(]]()[(]([[)[[[))[]]([](([[][][)[]]([[((]([)[]]]([[()])[((([]](]()](](])]()()])))[[)(]][]))[[][][]]())]]][])][))][([((]]]([)))(][()(]][])][]][]))])[[[])([[))(]]((([)((([)]]]]))[[[)]))[]([[)[))[(])][[[](()[])[[))[(]([()](](][[([[))[])][][[)])[(]()[])(())][)()[)]([[[]([[))[)](](([)([(]()(()[)][]))]()]][(])[[([[([[[])))](]](]([([))()[[][[()()()([]))][]])]][[[(()]([()[]][[()))[))[[())))([[(][(])]](][)[[([(()(([[(([)([])[[))])[)[))([][)])))])][)]])(([)[]](][)])(])[([]]([]((([(([]]))([()([]])()([([](()))([()]()()[)))])(])()[([[](](]](])][)]())(([(()][[]][]])][(([)())[)([])]])()([[[][)[]])[[])(](([))(([[)()]])[(]([))(][])]])[()[](]](([)(][)[[]()]]]))((]])[](][)]]]([[([(()))][([)[[]([][[][([)]]]]]][]])[()[]()[((([([())]]]))([]((])[)])))))[)[[][[)([])[([((()()([((([)]](][)))]])))[((](([)(]])]])][][]])((]]()][))([)())[]])()])]](]([]([()([()]((][[)((]]](]](]]())]]((]([)))(]](](][[))))()][[[][)(([[[()))[))[([)(]]([[]][[[)][](]((])((]]][[(]])[)[()((((())([)]](])[)[)](]))[((])[][([())[)](()))])[]((][()]()()[[(](][])[])[][]()[]]))()[()(](][]([[]][))[(]][[[)()[(()[]([][)])])()(]][)(][(([(((]((([))())(())][][([))[(())]]]([)])[)]]([((][)])()[[)(())[)]))[))()((][[][)[]])([]][)]][([)()(](]](((())]))][)()])[)[]([([[](((]])()[[(][)]([)[)[]((][[)[[][))((][(][)(](((](((](](][[[[()(((](](]))(()])(]])()](()[)](]()])])]([(])[]())()[])([()]())(]]((](([)(][[([][([()[)]((([([([)[]))(([][[[[[(([][)[]]))([)(]]([[(()(()]()[))][())()[]][)(](()[))[]])[](]()(]])](]([))][(([])]])(][[))(][[(])([][()[([[)[[)))[)[[([)(([(((][[[)[[(]()()]](]])))[))[(()][[)[[]]][)())][))[][)(()[()[[)][]((]])[[())[[(]]]])([([[[](][)](]((([((()([)][])[)[[([))[(][()])]])]([[)((]]]([[[])])(]()()[)][([][](]]((][)()[]])))[]])[]([((])()))]])](]]])]))()((])]]([))()[[]([][[()(]])])(][]((((([)))[(]](()])()[[))[)]((][[]][](])[]][([[)(]]]](])[[(][][))[((([)])[((]]](((([[[][)([(([[)]]]()]])[([)))))]))]]([](][]](((])][)[[()[[[[[((](]))((])([[()][][)(]])](])[[([([[]][[([([)()])([[])]])[(([(][)][()[[[]])(([))]][([]()[()([)))[((])[([)[[[][[]()][][)(()[[[]][(]([[)[()())][[(([(((([))[[[]]][(([]([(]]))([[)(])]]))[((([()][[[([)[](()())[[)(]()]]((]]][()])((](())([(([()())([((](])](][)][([(]((]](])[](([]([)[(](]()]()))()))][(()]]([]]()(]))((((([)()]]()(][([(][])][)))[[[)]][[[])[[([()[[[[[))[()][(])([([(]]](()[[((]])[]()([(()])[)([]])](([]]]([]([)]]](]]])]))()[[)(]((](]](][((([[]]([[][][])]([]]((][])][)])]()]()][([][(()(([][))[][([()(([(]([)(])]]()][))]()])[)[[)])()[([[[[])(]([[[)](()[[)[))[)]]()]()()[))[([)][][([(](([][]][[][(())[[(((])][(((][](])]](](]]))]]])((](](])(([]])][(][([[()()))))))][]](((((])[][]()(]])]][)((])][[[[][][[](]([())([([](]([))]())]][()]([[[[[(])(]]]]])))][]))(]((([))]]())((((]))]]))[(([((()])((((([][[[)[)[](][)([)](([]]])])])[[([[[(([[([(])(((]])[))()]((([][[]])(])(]()])[])[[([(()(][))[]]](][[((][)][)][([])[(]())]())]([[[[]([)]]())][)][[()[][[)(]]]))()])][([((]][[))([[])([)[([([[[((](((][])][)(([][)]])([[[)(]]((((([)[(([(([))(]][)[[))[[()(][]])[]]))][][()()([])]()[(([])][[))][[[)()))]]))(]])[[)]]((]][[[(])[])]]])(]](])]([(]]]](([))]((][([[[]][()[))()[[)]([)][([[)]([[)[((][(]()[))]]](])([((()[(][[)]]])(]))[))]][)()([)([)]))()]])(]]((](]][]()(])[]([][]])[(([[[()])[[[[])](])(([([])(][])[[)][()[((](]])[)][(([])((([][()))([[)[][(()[([[)([])]))(([))(]][][([(()([[][]))]))]))])][[([]][())[][)))]]()[)()]](](((]([(])]))[][((()([((][])(((]]])[)][(][])))[][([][]([[))(]](])]))[[)]]][)[)]][[]()[]])))))()[[(]])]])][][()()]()]][]])()[((([)[][([))(]))]][[()(](][)]][]))]][(])[]))[)])(]())(]][([((([)[)]](]]]((][][)[(][[][((])(](](])()][)]([[))))][)(]])))([][)]])]])())]((())[()(([(]]]((]]])[(()]((][((()][(()])](])]][)[)(]]([()[])(][((]])[]([[)[[()]()()(()[])[]])((][][(]])][))))[[[()[()))][[))([[[][[[)[[][[))(][])()[([[)[])([)[[((())[[]]][[()]([])[)()(])()]()[][)])])(][][)(()(]()((]]][[()])[)(([]][)([[([((()][))][[][([[]()()]]()[(](][((((][[]()[]([(]](()()]])])[[[[](]([[))(([(]]))(([()]])((](][][[)(([]))])[]][((])]][](])))()][))[][][)[()])]])[]][(]]][([][)()(][()((())]([]))][([[][[))[[)][[([))]][((]])[(])[)]](((]]([)((]]()[)(]][[[))([])[[))[]]][)[[])][][[())])[)[()[)[[]((][[[)]])((([]((][)((][[[))[)]](]][([)]]([(])[([])]]])[)[[)[()[])[()][)()]]())])[((([[()([))[(]])))[)(][[)](]][[][])(()[])[())[)(())()[([]((]][()((][[]([))][[([](])(((()][)[[))([(]](([][[)(](([[)])[[((][][)]([)(]]]())[[))([[[([[]]](])())[)[])(])(]])]])]]](])[()]))(])[[])[(]]([)]](]]()[[])())](][[[(]]))[[((]((])((]))([)])](]]((]][)][(()(][[])](((]][((([](((()()][[[][])])][[]([[]()([)[())[())](]])([([((()()][()([]))]([([])()))[[]([)[([]]]][)[((]][]])))]][([][))]([)[)[(([))][[]][)]))[])[]](([()(][))][[(]])())](])(()[])((]][]])])(()]([)]])))(()([[][](][())[][))][]((](][][((]))]()[)])[)())[()()(()]]()))(]])[[))]][]]((]][[]([)(])[[(([])][[(](])]][]][(][[[)[)()][[))([[])](]((([][)))[[)([])()))][))[[(]([()[])]][)]]()(()[[]]([)(]))[][)(()]())(][(]]])])[)[)]))(([)[[)[[)()[[(])[]([))[])))[[(]))((]([))[(][)]][[()][(()))]])()])[[))[))[)))]])][(((]][((())[]]])(]]][[]][(])[([]())))()[)][))[][()[]))[[((][))())(]]()][[(([()[[([[[([[]([](([[]]((][[()(]([(])[](]]])[])]([[)][][[[][)]]]]))((])))[[[))())[([](([]())]]](][[])))[[]((]()(())[]]()[()[[(]))]]([(([()](()[][)[])(])])[)[(())(()(]([))])][)(]))[)]([()[[)[[(]][[]]))()]([]((]([))][()))()[[[[([())))[][]]))(([()][]))])(]))((([))]([]])[()])()](]()]]((([[))((][][[()((()[)([)([[)()]][[[[(((([])]](][[)[][)[([]((]])[())[[[)[([)][[)[]))]([(]())()([)]]][)([[()[](]])]((]][[[(][[[])]]))))]([[[])][[)[)][)[]()][)(][([)([)[([[[)([)(]]()[()][][[((()]]]([([[(]][)))[(((][)[[[)()(]]]))[[(])(]])[))]()[)][())))(((([[(()](([((]([)])(]((])[[])])](()]]])[))(])[([([(]][)](]()[][][[([[]])())](()]]]([))[)[[]][)]][)]((]][)[[([][)[)))[()](][))[]))[)[)([]][]([)(]))(]]]])(]))((][[()](]([])]])](])()]([))](])([]))([)])[))(])))([([]([]((]((]]][]][))[]][())(]][)[)]([]]())[)]([())(][]])[[))[(]))](()][()(())]))))([)()[)][(())(]]]]]])])[[)(()))))[)))])((()(()[]([()[](((()[]([[[[)))()]((](])([[][[([[(](])[(]))]]([())[[(])(]][))(((][][()([](])][)][((]()()()[])[([)]])[)[)))()((][[)]](])(]((][)]][(([[[][()))](((()][[[)((]([]][][()([)[)]((]])[]][[[][()())[()([)])[)(]]](])[]]]((()]][[)]])][)()[)][()][)))[))][]])])]]]])]](([[((]](]()()])[)]))())]()(]([[(()()()[)(]))[()[[[)]][()(][)()][(]]])]([()[)(]]])((([[[[[(]][[](())]]((])[])[[]]([))[][(]]()](()[))[]([(])](([][([[)]]]()[[)[([[][((()(())[[([())]((]]]](]])])]))])(][((]](][())(])])(]]]][[])]])()](]])])[)]()[(((]])())()]](])[([[[[(]))[((](])))[]([[]))]))]](()(([))(])((]]()[))()]][)))[[()([))[[)]](())])]]])]()]()])[()((][](([][([])(]]()[)[]]]([[)([))][]][]((]](][[])])[]()))]((((][[](](]][)([([][[[[])([([(](])))[]((]][][[[][]((((])[)((](][[]()[[[(])](]])(][(]((])(([[])[]))(]])(][[[)[)[](][][)(][((]]))]((][([([(]](()[))[)[]]((](])[[)][([([[][[)])((]]]][]]))))())[]][)]][()(]][][)[()())])[))])]][)))(][[][(]](][]))))[]]][)]))](](]()]])]([[](](](([](][(]([[)((()[(]((]([[(]()][)[][)[([])((]])[)))]))))][(([)()][]([)]][][((((]())()([]([[[))(])(](([][)([])))[)(])])))))][[])[[][]([[()]])][[]])(]](]][)[((()]]]()](([]]([)])[)))])])]()](](((](]()))](([(][]((]((][](((][)][)][(]))]()[][][)]((()([](]()()(][)[())])])[]([[)])(][[[))(]]())[(])())([][)()[([([)[([)[)[[()(]([(]][(()(]](])()(]()([))[](]]])[])()((]][()[[((([[[[))(()][))([](([[][[(([))]][)(])))()]]](([()))])][[))[))))(([][[([(])(([)[)))(((()]))(())((])]([([[[([][))]]()]([)[))(]][[[([))]([[()[[]((((())][()()]][]))[]]([([)))]](]))()[[[)[(()[](())])[)[[(](((])()]][[((]]))([)[][()(]()()])()[))[)][[[]]))]])(](]())[[](([()()()[))[])[)([]]()(][)([)])[[)])[[[)[)))])[[][]])[][(]][[][)(])]()[)[][)()))[)[[[]]([)][))])])]))[])[(]]])][[)[[[()[(]][[)(]][[[])([(([)]]))()(]]][]((]]))[]()]](][(())[(([])]([]][(]()[))](()[((([))](]([[([(]]][)([[[([[)][[][]([]]))(][(()))[)(([[])])[(([[]][)[]][[])]((([)]]])[[[(])][((])]](((]][)])(](][)))])]((](][[)()]([))[()]]((](([(()[))]](]]]][))](]]](]])[)(([[]]))(([]]([][])))(()))[[)[[())[)())[[(((([(])[][)]]))]((])[()))]))[)[[)][(])[()(]((()()])]]))((([][[])][](()(]([([(](][[[))[]]())(][([(]((][]()]])(]))[((((()(]][[][](]]))[](]]([)[[(([)(]))[[((][))]][[))()(()[)((([((](()][]]](([[[])])[)])()[])([[[]))()[((]()(](][)(]()[)([[)))[]])][)[[]([)]([)()))[(()])([][]]]]([]][)([()])[()[]][(([)](()[())()][[[(])(])[][]([[)[(()](][(]()])([])))](][[)[(]](()[[))[(()]]([()[([]))](]]()[[)[[))])))))([[((([)([[(]][)[]([()))[]()(()][[[][[[(()[][[](()[](([)[])]]][[][])((]][)(())]([]])][([)()[())))[)))](([(](](([][([][)([(]])(])[][(([[))](][[((([])[[(]([][(](()])([])[[))([([]]])]))([)((()(])])][][)[]]]))()])][]][)((])))[([()[)))(())))((())([[(())])[([][[]))](])()]])))(])[[[[(]([)]()][)))]])(][(((([[(([)]))()[])[[([([((])([)[[]][)[[]))][(][[[)]()[[[([[())((([][[]([))[]]][[[](])]]])(]]([[[)([[([)([])[[))[(][)][[(]()[])[[[()]](([)))]])]][[)]]]))([[[(][([][[([)))(])[[[])()[[))([)](]][](]([)[])))[()[](]]))([)([]][]])[[)[[[()]])]][(](([[)()([[(]]]([]]])[)]([)]]((([(()[]]())][(][[[](][[((](()[]()]])[[)[(]]([([([[[)()()(]()))((([())[())]])[[])(]()][))]]]])]]()]((][[()([]([][[[]))(]]((]][])[](][)[[[]([)()[(([]][([[[)]])])[)[[()([[[([][[()))(]]]][])((]()([[(([[([)](([[[(((([][]])(([)())(][][([))(([])[[)([[][))())])[()(])((([[])((]]][]([[](][)[[](]()][]([[[)]][]))[[[]()])[[)()[]])](]([[)]](][(])(]])(())]([]]]()([](])[]]]]())](][)()(](]))[]]))[())())]()]((][[(())[])[[())][))((]())[(][([)([])[[((])[(])[[]()[](()][((([))]]([()([()]]][](])(](]]])(([][([])[)(([))()[(([[[([](][(](]([)[][])(]][))(][()](([([)])()[)[)(](][])((()]]][[][[]])[]][]))[]([[[(((](())])(((][(])][[((((]]]([]][((][][[((()[][[)(([()[]([))(]])[[[))](()(]]][]][[][][()(]])[)([](((])][([[))[[[([]()(](()([][])[()]]]]([))([])())[][]])]])][([[[[]])])((]()([)])[)))[()[][(]][]()]](]([))]]]][]([())[[])]][[])[[]()([))]()]()(()([((]))(()(((()[[[[][[()(([[[][]][])([)([()])]])[](([][]](([])[[]](][])[[]][([[[()[(((]][)))]([(][))))(()([)))[[[([)]][]([[][])])(][][]((]([][])][([]([])[)([]]))[([]]]](]])[][]]])])(]])[(][]][((([[)((([))]])[[])(]()]]))((][[]()]((([))[[([[[[[)(][(]())(][[][[])](()[]]([[]())([]()[([[]](]))]]()()[[[((([)])([()[[]((]((])()][])[()[]]()[([)(]]((]([][[]))])])][))((])(]]((]][()[)(](([)(([)[))[()][]][(](]))[[]][((][))[)))][][[][]()(()))])()]()))()])()]([[)]]))]]][))[[()[()()(()[(][([)])[))])))))(()(]])][[](]])(((])))][])))((][]](]]([)[[[[])[(][[[)[)()(([))([)]][]](](((()])](]]]([)(]]])([)])[()[))[)[[](([()(]]]]]()[(][)])][(((][]))([)(())((()[[]([))]([]([))[])][))([[(]())]]((())[)[()]()())[](]]])([][(]][)][()[]([(([][])(]](([()]]])[)[(]))[)[][[[)[][]]][][]])([()])(])]()(())[]][[][[)]]))[](]](()]](()]()()[[])(([)()]])))]])[[)(])]]][)((]))[]((([)[)[]()(]()(]][]([]])[[)])]])])((([]]][)([)[([)[[]]])[((][(][[])])])()[][)])[]))])]()]]][())])(]][(])[])()(][)(([(()][)()[([](]()]()[([(])])[[]()][[)[](]])])[]()][][))[)]([)])))])[([[]()[)(]))]]])[[]]](]]]()[[)][([][][(]](((([[[(])](])][([]()][(]][]()]([)]([)]]]([]]](()()])]][[](()((([([[))]()[(((()[][()]][([)[]]([]([)]()[[[)()][[))(())[)])()()](](][))[)])((]]))](]([][])))(][(][](]]))[[(][)])[[(]]]([()])()[[))([)])[]]([)[([]))([]][(([)][]](])[[([]]]])[)[([([([](([()[][)[)](]]((]]]()([)(][())]]]](][]](][))((]](]]][(]([(](([([]([(])(]](([([([][)(]](([()]](()])][[]][[][])[)[[(()[[][]))()([]]]([[)]))([)[()])[[]))))()][[([)([][](](((][[)])())](([[[](][(([[[[[(][](((]))](([()))]()][]])[([](()])[[)][]])][((]((])))(](]))][[])([)][]](])()(]][[([[([][][][([(]]][](][(])]))[)[[()))(()](((([[[))((()[())(])[)[[)](]])[[)()([[][[(])((][()([)]][])()]])[]]()][[[)]][)][())[]]](([)()[[]])(((]]()]]])(][[)))[[)[((([))([))]])[([)[)[([()[][[]]))()))])))((]([(([(][[]]]()([[))[][(()](][])](]()[[[))[(())))([[())))]])])[[][])(([[(([]([)[)()](((([([[[)))[)[()([))([(][]())[[)[)][)())][([()](])[[[]()(([)[([([[[][][))][[[])()[()])[[()))])([)((([)[(]([[][]((]]())(]]]]))[((]]][)((][[())[([](](]][([]())]))[)]()]()[)())))])[([(])))]]([][)[[][])[][])]([))[])(]((()([)][)](]])]])([)[([[]])((][])]])[][[([()())(])])[)]][]][)[(][()][]([]())[[]][()][][()(])]](((]][)(]([[((](][[[][[))][))(()()(([[[[])[[][[)()([(()[][][)(]]()[[))(]())[)([[][]][)[[[][]]))()[)[)([]])())][[(])([]())([])[[([)]([()[[][)(((([)))(]((([[([)))))](([]]])][([)(])]]))(((]][)[][([()[[]]([)([)[[]))]([][)[((][]]([(]([)))[)()])))[[)))()]))(]))]]][[([(]][[[([))[)))[(([[]((]]())(()][)][)][)(][()))][(])(](][])])]][[())[)[)]]][]]][[]][)[)))()(([)]](])]][]]([]]((]][)))([])]][[)][[])][[(][(]()[)()[(]([][]([]][())][]][[(]][[[])])([(([(](][](][())())))]](](])](([]]))(())]())]]())((]][()[)()())]]([)()))[([(]()[]]([]]([[][)]([())])((()]))))[[]()[(])][)[(])](][)[))][[][[([]]()])((])[)(()][[[))[))()()[[[)[))])([)[])(]([[(]](][[()((()[))))]()[([((])]([]()[[)]][(][(]]()([[[([]([([[]([))[]([[](]((])[(([([][]]](([]](])[[[[][)][[(()))(()])[))((])][())()])((])(()])((])()((([(([)[()])[()]][))[)]([[[([[]][[][)(]([]((([(]][][[](([)()[]()))]()(]]([][([[[)()][[]()))))[[(]((]][[[()(]][)]]]((]]))[(()[(](])[()))((])[(([)]()())[[[))[((][][]]))](())])]([[(()(])[][()][](]()[)]]([(((])(((]][)(])([)](]][]))[([(()[]][[(]]]))[[)([](](()((()[[])][[(])(]()[())[]]]])((()()(])(((([]([[(]]]]]([([[((][]]))()(][][[]]]][][)])][([(]]][()]][))(]((()][(]][[[]][]))[[))[[]))][[)]()[[][)[]][[([[[()([(])(((]))([(()()[])[[()])])]))(]]](]))()]][[][]]()[]]])]])](]()[])])[[)(]][[(([)[()[]]]]([[([([[])])]()(])()][()(])][([()[[][)(]([())[[]([])[[)([([())][(](]]))((][)()((]([[([][)])[])[]((([(])()](][([]))[()(][[[)[([[()](()]](]]))[]][]]()[)[)])())[[(][)[](])))[])())](]][]]((]][[])([[][)][)]])]](]((((]]((][())(([)[()]])((())[)((][)][])[)]](])(]))())[)][))))]](][[([((())()][)][[)(][])[()][)[[][)][(()]()]][[)())()([][()]()[[]((][)())[]])[[]([([[()[[[)([([)[[)(])[([)[)))[])(]))]()[[(]]())][](([]]())]([(]]][((][(())][()((()()((]([[]))[[)][)[)])((()([[]([)))][]]))]](])]]()())(())])])[]()[[]](])]][[[(][[((([(()((()[]([][(]([)[(][[(([]](([))[[)]])[))()][[(])[[)][]]][)(]()]])))(()((((][)))[)))])([(]]][[)[]))][]]()(())[[[(([)][)]]](])][[(]([))(]))[()[]()(]]](([]](]]][]]([]])()[](](][[[(])()())[(]](][]][)][()(](][)()][]])](()]]]((][])][(])][)([(][))[))())]])[((])(][()([))[[[][())])[][]]]][)]]]([)()[][)(]]([[[([))([)(((]]][()(]]))[))(()]()]])(]](][)(][[)(])[[])][]()[[))]()]][[[(((())[)))[]()(()())]])]][()]((([)[([]][)]]][)(((())])([))])(([]](()(]())[(]][(]]))()][([)))[][)]]][][([()[)[[[])[[)[])]()))))())][))()[))[[[[](]([]]((][)))(](((]][[([(]])([[[[][][[(])[))][][]]][)][())))])][()(])[]](([[)[()])(([]][[][][)(][)][))([[[[[[)][)])[](())()][))[()[[)))[])])[])]))]()(]]])[]]])(]]()))]))()[[)()()()][]))(()()])][([(((])](]](([])][([][((]]))]]](([)()][]([(]))([))[()])]]())])()([[)]()([((()(]](][(([[[)(((([(([][))))))[[)[]][[[)][([([]]([)]]][[][[]][([][]]())(](][[[)[()))[[))(([[()[)](()[[))([(([](()]))[([]]]]((()([]((])([][[[]][[(()](][])([)])[(][(]][([][][])])))[((]((()]](](([[][][)])][[))[())((][(([]]]()[]()([[(([[]][]]][)(([]]([][[]([())((()]]))[(]))(()[)[))()]()[[[())[[[[[)](]))][((]](([[]](]][()])][)))([]()])[[](([())]())(]))[](()(()](])[])[[)[[[][][](((([([]])([][[[[(][([))(()[()()[][)(]][([([]))([[(()(][(((((](][[((]))[)[)[)))[())))(([(]]))][(](()][]([][[[()]])))([))(]][][])([)([)]]][(]]((]((][)]([()][[[[][][[)()[)([([[[]([[))[](]])((])[(((](())()[[(]][[)](])[[)]]][][(]([)]([)[[(][]]](]]]][((][(]]][[())[][](])()]]))((()[()[))([)]))]([)()()[()[]))]([][][()(])][[)[]]()((]))[()))]])[(()[](]][])[)(([(][]([[[(]]])[)((][][]][))[([([(]]]))[])](]]((]])(]]()((()[[][))]][)][][[)[[((])]][)[([()()[[[[(((]]]]])(([])))([])[[))]))[)))]()[[))]([]))([[)(]]()[[])](]](]](](([[)](]([(([([([)[[(][])[[]([)[)[[]][[)(([)((](([[)))]))(([(][[()[(]([][)]]))([([]()[)))[[][)][]([))(][][]([[()]]])]](])[[[[([)[))([([])][[()(])(([([)((])[)(]][[()]([([])[(([([(][][]((](][([)[([(([)((]][[[[([[()[[)[](])()[][)))[[(][)])[[][]([]()[[](](((())[)))](]())(([([)[[]]]()[([([()()(]([(][[([[[([]))[[[[[[)((][)(][](]])]]([[[[[[())[))[[)[)][)))[][[[))]][)((([]])([])((](]]((][)))[[)][[[]](])(]][))))(([[([]([[)]())[(])[))[)]]))()(](()][[)]([[]](())]((([()(][(](](][)([[[)])[(]](([]]]))[)[((])(])]]]][][))()[)[][()([[])([())[)]()([([)()]])[([[(((])([[([])](]]](]](([]])[[[)()](][[])()][([]())()[[(([](][[(([))][[(](([(([()(]][](]](](](])])()))[][((([)(](([[)[])(]])[[)[)]]]((([())[)((][](]))([(([)]][)((])][[][](([(])(])[(([[([())([()[)[(]([)[))]([(([(())][((([][[[][(][)()))))[((([]([([(](]]))(][)[)[()]()[[))])[[))[[[)[)[)[))[)[[[))[)[(])])[[]](][][][))](())]())[]))(][[[)[])[(([[][()[)[](])(([]])(]][)()))(])]))[)]][)[()[[((]((([]]][]])))[[])[(((](][[)[))])([)(]](][[)[]((](])[(()](][[](((]()[]([[[[](][[(][][[](([)))(]](](((](]()[)][))[[)([([()[[[][]))[(]))[(](((((]](([(]])]][])[[[]]]][)))[))[(][[[(((((]()[())[((())()(]))))))[]][[][(([][)]])[(((])()]))(]]])][](())((()[))()][[]()(][))(([])(]])([(()(([[))[][((()()[((((]]((((]]]))))[])[))])])]([[[)][(])()(()[]([)(]]()[(])(([]))]]([]]][[]([))](]([((([([](((]([()[(]))()[)([]][)]]]]))([(](]])]][[[[][])[[)(][([])])][([([[([((]][)()]]](][)(]]][]))[)[]([))))[]][]((([[)([[]((](()][][[()[)[)[(][])][([()()()[)][])[([[)][[]()))[((][)[]([)][(([)([[[((]][])]([[)[)]]][[)]))()](]][([)][)(]())()][(][[)[(][)([[[)(])[()((((()()])]([]))])]))()])[]()])))][[)[](]([)(]())(([()[(][)()](]()[([][]((]]])]][)()]][()([][()()][]()(]))(()]()[])])(([(]((([)[)([(][]])[()[[()[((]])]))[][[(][)]()[][](]])]]][][)]]))((]](]((][][])(([))[[)][((([))]([[))])][](])[([[[))]][][[[]([])]([)][[][[)[](]]([]][]]))([[][[)])[[)(](()]]](())(])([[]))])](][()](])[(][(([[)[()(((()([(][[[[][[)))[]]()](])(])()[[((]]]][(([)([)]])[[]()()])([)][))([[(][])(][[]()([[[[([([]()()]]]]])))]])[[][][]([[)((()()(]][][(())[[)([))[[])([)))][()[)])))))][[)))(]]))]])]](]](]]([([()[())[[)(][]([()[([)(([))((([))]][)())[[)[(](([))[])(([)())][)[)])]]])]]())][)]]][([][[]((])[])[)(])[[([][]))((]]()][)][])((]()]])([())([])]]]][(])])(]]](((])(][)())(]]([([)(][[])((()]((())])([(]][]])])))[[[))[)]([)]([[[()]][)((([][[))([](([[[[[])(]]()[]([)([))()[]]())]((([)[[)]((]))](]()[)(((]))[(])(]((]])[][[(((]]((][[)([]))())[(]([][](([[]()((([][[[)[((])[(])((])(]([)[)))(((()])][](([(]))][][[())[]([((][((((((]()]]((())]()([()[()[([[[()[)][)[())])[])()))])([])())))]([][]))[[]())[[()(]]][](][]][[]([()])()[([([)[(([)([][)[[]()((()](]](][)][)]]][()(([()[[][)))[)(]](][))[(([((]][[][]])][()([[[))[([]]]])())[()[)])(([([)[[[]][())]([(([][)(])[[)([))][(()())[[([][[])(([(((]([)])(((]))[)(((([]][(])([]([)[])(][()[(()(]([]((]]]()]]]()][])[)]))](][])]]][[][)])]()][)]()(([))[)([[)((([)[[[](]([])([)(]]])])][]])]](]))[(])[[[[[)][[([(]))))())))]()]([[]]))((](](([))]())[[([[))]))((([])[(])()[)([)(][][([[)(]))[][())]](([][[[((]((([]][[[(())([[))()))[])](([[)])[[[(]()[)([)][[[]]][[)][(()(([)(())())[)[)]())[]]])))((([[[[]][]((()[]()[[()][)(])])))]][(]])]()[(([[])[[[)][)()]]()(]]][[]]([()[)[]((])(())[()((][)]]()([(]]())()([))[[]][[][]]])[]])[]](])((][([)[(([[[][)[[)]))](])[][)()[)](()()]][([[][)]]](](([)[[(][[)()(((]([((([][)[)[())([][(([[((]))][(][]])][[([]()[)(][][([]])]([]())][)([([(]][[]([()[)]()))([()()]([[]]))((][)(]))]))])((])[)][[)(])(([[()[)()]([](])][)((][[([]](]([)[)([]][[[[)[[][)[(](([(([[(]((]]()]])([])[)[[(([(()[((])(]([][()]([))[][]]][))))][(][[]([][[]][()[)]]]][))[[))]))](())])]](]]]]]([]])()((](())][())))(](]()())](]]((([)[)][)))())()(()][)[)(][(]()(([(())()[)]][)][(](])[]))()])])()[([])[][]]]][))[[([]([))[[]][[[[)[][(([[)[])[()[))(][)][))[[)[))])][)[][[](]()]]([([][)[]]][]])((]])(][))([[)[])[[](([[[)))[[[]]))((([][(((([][(]())()]))))[[()[[[))][)]][[)][]]()()[[[)([[()](])))([)](]](])(((((()[)[[()[]][))(])]]])(]))()))([)(]))]]]()])][])]][)(]([[[][[]])[))[])[)([(]()[][]([)[(]))](([((([(][)()[((]](])([])]([]([[)(((()[()[))()[))([(()([]])((][(()])[[(]([(](])[)[((((([)][])][)[(]]][[)](([[][[([[(](])])[))[][]][[]([][(()(](([)[())])[]()))((]()(])((][[]([(]][)][[](][[[)]](()][][]]]])[)[)(][]()((([]()([])()(]))[])](([[[[[(][(]][(])[)]][)]][()))[([][][)[)[])(((((((](]]][([)])])][)[))([))(])(][])]]])()()[]]()]]]]([]]])()[[)[([([[]][][((()][[)())][[(])][[([)(])[][[))([([[([(())[(([[)([)[][[)])[]([())])[())][)[]]()[[(([)]))[([(([[(])]]([)(])[(([][()[[)[[([(]])(()][)()](]])([]([))[))][)][((](]][([(()()[])(([([[)(]))])(([)]([(][[[()()(]]])](([[()(][)))[)]][]()[([)[(])(](]))))(]][([(](((())][[))([])()]](]((](]()]]))([[)(](())(][[[][()(()]][)))))[)([[)(((()])[(])][)[((())[]())))))])[])[))([[])[[)()())])[])([[()((]([(]()))[(()([]][)](][(((]][))[][]]]]([)[()(((]][[[](](([[(]]]([())[[[])[[(()]((](())[()[][)])(][(]]))[]([))(([(([][][[(]))([)))(()))))(([([)]]]]]][[[(])[(()([(()[])(](][](][[([[(][])[)(]))()))[][])][])))[)(()]]]]([([())()[[[[][[([(](()]][]))[[[]]([]])[((]))[)][[[[)([[]([)[)(](()())]))]())]][[[(])[))[(]]()[]][[[)))[]]()(([([(]]([)[])]())))(]][(]()(()([))]](][)][(][[]]((]][)((()]][(])]))[][[((])(([][))(][[)(]()[])(][([][[()](][]]][(()]([[((])()()][][]]([([]()[][)([]([[))[((((())][)[)]()))])[([[]])([(])[(([)([[[)])[])(([[[)[(][(()[]][[]()]][]])(]([[([)))](([(][[](](])))[[])]]]](([[(()((](][(]][)[))])[])([(]](()[][()[])()(]]]]()])](]))]][(])[)[[))())][]()())[)]([[])]]()(]([(])]))[))[][[])]))))))((][)[[(][])[[((]]))[]]]]][[])]()([([))][))][())][)])]]][[([[))[))]([(]][)[]()]])]]())()(([(()()(][)]([))(()([)]]]][([)[])[]]([()[)]])[[])]()[[]))[())))[][(]()[]][()[]((]]][)][[[))[[](]][)()[)][(]]((])])))])([[(](()]()]))([[]](([[)[)))])((](][[[[][)([])[(][]]]([)][)((]]())()][[)])[)[(()([())]([()[)([[][[[[()]][[)]((())([())[([()())[[)(([(](([[])]]([[(]))([)))](()([)[[[]]([([]]](([]][)([])))([)([[((]))((])([)()([(()[)[]()()([[]]([[[))[()()([(](([]()[((])(]])]([()([)(])(]])[((])])(][)]()[))()[((]][])](())])(()([)([([)(((])[(([[[]][[)())(]][](([[()][]]([()()(])[[)(][](][]]])]())][)[(([)][](]))]])[][()][][)][][])]([]]))[[([(()))[()[[([((](]]]))]]([(]([)][([[)[((]))(([[([][(])[[)]][][([([[(()])(((][][))([())[(((()](([((]()[)][)[(][[(])(][[[)]([()))]([[([[(]))]([[)([(()(](()]()]]((([(]((])[](([(])([]([))])[)[]][(())])][(()([[[][)][)[()[))([)[][(((](]]]](]]]][)[[]](((())))()[[]](]))][([)[][((][[([[([[((([]]][)][[))[([](][(][])))(])(])(]([)([])][[][)[((()[(][]([((())()()((()(][)[]()]))[]][[)((](([[[)()][]))))[))]][([](])]())[])()[[](([))([(()][[))[(()))])((]]))])[))[(([]))[]))))]][([[][]]()()]]()[[)(]([()])()[))][]][)]]()])]([](()[])[[][()]](()[)[][(])[]])))])]][[[((]([))[[((([(]))(][))[[))[)]])([[[)[)()))[(][))[[([)][)[[[(([][[([[([))(((()])][())[)[](([[]]])])[[)([[)]]([]])()]]()])][[])[]][)((([()][)[[]]]])]])()[)]][([)(])])](([()])))[]))]]([)[])[])((]([][()(])])(]][])(][((((]()]]()[[)()(((()][(([][)[([)(][[[]])]]]][())(]][([[()(](][])([][])()]([][((]()(]][(())))([]](]])][][(]]][[]]][(())(][()()])]][])([[)()[]([([[][)([])])()[[()(])))[][)([]][[])]([[])])([[))[][]]]([))(]]([]]]][([][[)())[[]])][([(](()[([))[([]][))])))]]([](]])[[[)[]]]][[)[([[([](()])[]([[)([])))][]])[)([]())))))()[[(]]]](]][)])[)[())[[])[][[((()()([)[][][])(])()[([(()([)(([))][)())([([)[]()][()()(()))][[)]()([]])]]][)(]((([][](([[)(]]()]))[([[)[(]](](()])](]][]]([)([])][(((]]]](])())(])(]]))]([)])[[)]]])))[)])(([(]]]]([(](]])(([([(])))()[)([]))))])((]([])[))(()[])][]]]]]([)]))](((([[)))][[([]]]())[)[]]))][(]](]](]([([)[([[[)(([]([)))[(([((](][()])[(][])])([]][([])[])]])((]])(]([[[[[[]]](]([)[[][()[)](][[)()([()]((][([[]([[]()]][)(([]()((][](([[)[([))))][][)))(][)[([[](([][[]][[()])(((]][[(]]])(][(()[)()(][[)(]])(][[]()[[(())])][](((((((([]((]])(([])][][](])[([])(][)])][([])())](()]]]]](()([(([(]((([()](](])]([[[]][)(](](]()(((())[)((][])][()]]]]])][[)[[(())[[][([)]](]])[](()[)[[())](()[])[)][]]]()[()[[[])(([))[)][[)])([[]][][((][[)[[)()]())]()][][([[[[[)[))()))])()((])[]((]][)()[][(()[)))([]([])([[](])(]])[([[()])](([)((()[[])))])[)[][]()(()([(((])())()(]][(][)))(])[][([]())([][))([)[)(])((])]][[](()(][[)())]((]]]([))([[(])[[]][[)[]([](([[([]][[[()](])[]][))])[([()[()(]((])(])][)(()[(((((][(][([())])(]])([())[))][[(]]]()())]([()])[[))](((](])][[(()][))()])]](](][[)[][])[[][]][])[[)()]))[)((((((]])(]([)[[(]])(((([]]]](()])[[())(((()(()())[([[()[]((]])()][[[[[]())](]]]]]()])[([(((()([))[([]]]]))))]((][][)(])[)[]](][([]((])[(]]][())[]((())[)[]]]]()[((([[([[((((]((]())[([][]][([()])])[)[))][][])(]()()]))[(((][(])]])][()))][[])([()[]]([[)()])(][[]([(]])]]]](]))[](])[[[]())]))(][()[)[([]()([][[[[)[[]()[[)]]()[())][])[[]((()[)(][[))[[]][))]([)(][)))(]([]]([[[[](]((]([[)(])[]())[]([((([)])(([(()[)([][)]([]))[)([[])](()(][[[)((()(][)[((][[)((]]]])]])]][)]])[((][)][[)[([)[((([)[]])]][)(]]][)]]]()])]][((((((([())](]][[([][[)))][)(()[)]]))[[)[[]]([]()]([]([[])])(]])([())]([])[[))([)(([)()[[][)())[]()(]))](([))[]]](())]][)](]))]]]()][[((([)]](][[[(([][][][([]])[[][([[]][))[)(()[[[[())][[[)]]())(())]([]]][)]((][[[]](]]()[[[[()]]()][))))))[[(]][[((]]))[(])]([[[]))()[(]([)]][)](]([](]())[())]])(]])))[[(()[])]]]]]])]))])([]))([([])]))]([]))[(][]()(][))(]([)[[)[([(](][)[])](][)[[(])(](]))))])[)[][((()()))[[)][[([)))][()[]]][)[]][)]])[(])[()[][])(][]([]][))]]])(()[[]()[)(]][([([])[)((]([)]))((])[](]()[(((([]((][))[][][([]](()][(])()[(][]][))]]([)[[)()]]][]]])))()))())[]](])[()))])[])[][([([))[))[]((]])]]][][(([([(]))]][[(]](]])])])((((]]([([))[[)(]][()()((]]([[[(]()(])]))))([]]))()(]((()([))[(](][)()()]))([][]])]([)][[)(])](]]))]))([[(()[)[()[[(]))][)[[])))[)]])](](][)[((]())]([][)]()]))]]]([[])(((()[()])(][(()()))][))())())[][[[][[()[(][()((]]()][[][]))))()(((([[[])[[([])(([][][([[())())]([(][(]][)()[[))[[)[[]]([)[]()]])][[(([)(][[(]])][([(])((]][)([[))]()[))[(([]]](]((]]([]][)[))([])](]))]](]]]](([])]]([](])[[)[([([()[](]())(()]()))))(]]]][[]]())(([[])[([]]](][[]())(())(()[(])[)(]]](]]][(]][[[](([[(]))[[[[((())([()[)()][[[([(][[(]))(]()][[()[[)(][]][[)([)]()[)[)](]))([([)]((([)))()][][)[[([)[(](]][[[[(([](]][)[]]])[[)[([)[[)](]])[([]](((([[)])[[][]]))])][)]]([[](]))])])][]]])[(()((][([]([)])]][]])()[[[](])[]([])]((](]))[()[([]])]]](]([]]([[[[]](([]))([()[]([([((([)][)[)]([][)[[])))])[)([()][)[[(][[)[((([]]()(([()[)))))[((]((])[(()))()((()([][[])[[)])[((()()]]]))]])])[[[][([))]))[[(]([]([[]]))][()())(()]([])][](]][[)[)][]](])])]([[([[)]()(][[)[[[]))])]))(]]))][(][)[]()[]]]]]])()(]][[)((]])([[((([]])[](([(][]](])()([[](])](][]([]())()[][[((])](([[]][[]((])])((()(())]][)])[([)[(())[(()(([(]])])(()()])[)](][(]))[[][((()((])))((])[[()][)][)]([[)[])()](])))])[)][[][)()())])])(][([][(]))[)))((][])[][))]))([[))(][))[)([)][)([[])()(]])[())((])][[[]))[[((][(](()([[))]][[())])]][)[()][][)[][((])))[[][(]][])](][))([][)(])[)(([(([][[][[][]([]])([([([]()])]])][))[))[()](][)][[))](([]](])[)((([)()())[[((])()]([])]()])](()][)])(((])(([]]()([][))[)()((])])][(([()]([([((][([[([)[(]]))]]([((]]()(([[(([([[][[]][(](]][)])(][)])([))(][]()[)[[[]](][][[[[[((((][([[))((])[[]))((]])])[](([[(][]]))]))]))]])[)[[])([)][()][[)](([]]][[([[))[))[]])[)([][)([))()()(]]](][)[[])))[)[][()[([[((][))()[[((()()))[](]()((][([(]][[(([)])(()([[][)()(]])]([([))))()()[)(][][]]][))[))[])))((()[()(([)[])(((([((((]([[)]]])][(][(()()[])][]])(]][[[[])())([[((((]([]()[][][]]])[]]])(]))][)]][)]())[)((](][][(]]])])[[])]][](()]([((([))])))])[)][][[)()]([[(]]()[[[])])[)[(])[(]()[[[[])[[())[[[[[[[)([()(][))][(([(([(([][[(][[((])]]]]()[[]])]([]((]))(((][)(([[()((])]](][)([[)[]]][[]))()()[]][]]([[()((]))()](])]](([[[[)()(()((])])((])[[)]((](]((([](]][([]][[()])](](((([)[]]](]((]][(])((((]]][((]))(][])[([[)(([()[[)]](([)))()(]])]])[[][)))](([])())([]]]]]([]]]]][))]][[][)])()[)([](())()[))[](]))[)[]]][](]][)(())()()])[)[(]]((](([](([[])(]]][)](]][[[)](]())[[]()((])())][(])))([](]))[]]]([)(]])(][[][][[]((](((])[[)]][[(]]]([([](])([[)(][()(]](])[([)][)))][[][)([))][]))[(])[))([()))])([)[(()]])[]()[(]))[[)([])]((])(((][)[](([(])]([())()[([][)])]()()][)[()())]][[(())]([]]]]][]([()))[]([]()([]([)]]([)]))][)(](][)]))[][]()[((](])[)](()))][[[](()][]([]]])(([[(()][([[((()([(]]]](]([][)]((((((][]])(()][]([[])(())))]][((])(])()]]]([](([()[])](][)]))][[[]))[([])][)[)])])]][][((]())][)][)(()[[]])()))][])(][[[[()[[]])[())([]][)][[]][])]]][))()())[]][()[[()))[([)(](()(([[[]])[[[[))][))[)])[[[())]((][[](])([[[([)()]])]))[[[)(]((([])[(])))[][((]((]([(([(])]([)(([])][)][)[[(([]))(]([))]([[][]))))[)](][)()]()][][]])([[((]((]()]]()))()([)([][(])]]]([[[][))()()[)()[()][[))][[((]][[(((]][]]]]]())]][[((])[]]]()][)[)(]][[([([(([][]]))[)(])][]][()()][][((])()])]([]()([)])[[[(])[[))(((([[]()]))((]([)(([[[[(()(((][][)))[[)((][]((][(])](([)()[][[])([([))([[][(((][[]][()[[])](]]()((]])[]][([)[))[)[[)]](([[)[)][()()[([))(](())](]])[()(])))][])[)])()[[(](]([([][)[()[)[(][()[](()[)[()([[][[())]][])(([(]])))][[)]][(]][])[(])[(()])[((]((((])(()([[])][[[)])]](()[]([([())[[[])(()[[])][)[[])]([[])))]][[(])][])]([]]])((][]]((())([([])()[]][))(])]((([][[][[(([[)()[[]][]]](([(](]([])[)]](])]))])]](()))])(][(][[))]]][[)[([][](]]()((([)[[)][([)]])[))[[()[)]]](][])((][()[(]][[)][[][)))][]]([]()](]])()(][(])))]]][[()(()(([[())[)]))]][[()([)([)[[)([[]([[[(]]](]][((]])([])]])[)][)[)(((]((][)[[[([))[[]][][[)[)[()((])([))([][)][([[[[(][(][[]()])))(][](]][[][()[([]))(]])[[[(()]([[[])(([])[))((()[)][)[([((((](][]]]([[([([)([([)((]]]))(][](](](]())()))][[[))[(](]](([)]([(([[))])[[[[))[)(]]]())()([[[)([)))[])([)(()))([]()[[)((()[)(]])]]]([]]])])])][[((][([]([[)([]])([]()[])[(])]()()(][()[][(])](()][[)](()[(([][())[[((][)[)[[](])[([(](])[]])[)[[[([([[[([)()]])[])[])))[(())][()]](()(()[)]]])[)(()]]()((][)))[(]))]]]]]((([)((((([]][([[][)))[)()(])(]]](()][[][[)[)[(]]]([[(][][]()]]](]][)((]])([[()]))([([[])]((](]([)(][)()]]([[)[])])])])[[[)))](])[]((([[)([)]([)[])[[((])])(]((([[(]])(((([([[(][[[]])[(]]]]()[)[[][](]([]]](([[((])][[]]]][[]]][)[(([[()[(]]((](]]([)[[[[])()((]][())][[][)[]])[][)]]]][(())]()(((([(([[([)[[)[[][])[)[[[])])[)[[(]]][]([())([)][)[([)[(]))[()][)](]])][(]]()[]())(](][((([()[]])[](()][)(([[)(()()[](])[(](([)[)]])[(([]](])()][([]])][)(][[([))[(]](])))(]())([[((([))]][]](]][]()]([[[[]]](((])[][]]]]([[[(][(([](]([][(][[([(](([([[)]]])][[([[[([[))[][))[([])((((][)(](]()][()))[)[))]))(])]]]((((())))))[[[[[(]]][()(]]])([[])()[[](([)[(][(]()()[]]))[[[[[)(])]][[[[)][[])[()]][(]))[([]][[)((][)[([[[))[)(()[[)(](](])))][)))[]([])(([[([[((()[)(][[()[(][])[(]()(]])([[)(][])])[))[([))[)((]((())])[))](])[[)([](])[)[())([)][](()])][([])]])([[)(]]])]])][)][)()))]))]]((]][)[](((]](][)[()(]])[([([)]()()[((]][][]))([()][)])[]([])()(][)(]]])])([[]]][])[)]((][)()])[)[[[]][]()(])[)]]]][)(]())(]())]]((([))(](][[[[])]]][)[)[)[(](])][(]))(]][]]][[]]](()]([)]()[([]][((][]]()))][)([)[)])]([)]))[)((]][]())]]((](](]([[())])([[][[))][[)(]]])][)](((][((][)()([])]][()(](([])))]](()])[[[)])))][))[[][[)(]]]()])]((()(()([)))))]([]([))]])][])[)([(()[[()[(])))[][)([[[[(])[))](]])([](]](([)])][]]))]][))][)]([])(][))[[[](][[]])((([[[(]])]]][)[[[])(]()](][]))))()]([[])([([)]([([[)])((((][))])]](()(()(](]((([]]](]][]([(())(](()[]]]()(])[]([([(()[[[())[)[[[(((])[]][)[]([[[(()((]()]()])()(])[]()])(()[(](([]))[](](()]][][)[)[))[([())])[)))([(()[))([()])])()[([[][)](])][[]([))[][))))())()))()))[)[(](]])][[)[([(([[))[]])([[]((()[[]((]](([(])()]()(][(][(])][[]](((][([)]][))[][)])][[)][())([)])]]([[((][(](([[)([)](((])()))(([[(](])(()[))(((]])[[))(([]]](]((](]])]][)[[]())[([()[[))[[(]][[[([](((])[)[(][])[[)](][[((([([)[[[)((][(]([]][)(][((]([])[)(])()]([[]]])]]([(]((()(][(]]((]])([)(][[])))))([][]))(([)()[[)([)][[[()[([])([(]]([](]]([[[([()((](](]))]](][([)))()([)([(]([[)[)[][]]()[[())()()(([)[]](]([))[))([[[)[[[]][[(()([)]]](]]((((])[[)())[)[)[[)[[]][())])[][[()(])(](]]())(]]()[)[)[([[[[)](]]]()))))[](((]))(]))((])]][[](][[))[][[[](]([([([([[[())([)[)][[[([))(((()]][[]([(][](][))[)]()[())]][]][]([((][)((](][[(([))[]]]]((]([[])[])][(]]](]([]]()[[)]((])[](]]])]]([)[[]]][[][)])[([(][([[()[[)(((])))((]]([])]]((](])))][[]]))][]([]]([[((][(][)((([]]]((]][[[(])][](]][)()))[))]]()(][][[][][]([)((]]())])[(]([[[))[(]()[((])()(](((]((([[[)[)[[[[[)(([(()])[][]]((]][]][[[[[][])))([)[(][)]([[[[((]]([])((]))]))]())(][[](][)]])()))]][]([[)[][(]([)(]()(()[[])])([[]))]]))(()[([[)])((]]))(])[)[[(][]]][([)][[)](]][[](])[)(][)[][)][]]]]]]()[)])([[[(]]([)([)[[([)())][)]))[))((([][[))][[[[]()[[])(]()(([[]]](]([)]()]]()[(())]])])](][[)((]][)[]]([[][](])([(((([()])[)()[()]]]])(()(([[[)))[)([)(])[(((][[[])]])][))]]])[[[](]())[[[]][)]])]()[]))[)][])([[][[][]])[)[]([)(]])]([]))])(][][()([][(](()()](([])((][[())((]][)]))[]][])(](]((])]()]]](])[)]))))((]][)[((([[(][[(])(((]][)]([]))[[)))[(])[)])]()(()([(()([([)(]()]][])()](()([])])))]([()[([[)))(())[](][][[))](]][))])(][()[](()[[))[[[()[)())][)[[([()[)][[[[(]([[()()((]](])[[)((([])))])]])(([]()))))]((][])](](()[([]])[)]](]](](])(()][(])](](]])]][]([([)][[)[)(]][)[)()][)[][)(([([[()([(()]()(](([)[[]]]()]([][[)([(([])()[)]())(([)(][[()[[]]([[[()](]][)[](())]()[))[())(]()[)(]])([[]))((](]]([((](()])))][[][](]())()([][()][([[)([))[[(][)()([)()[[)[[)))))][[]()[[)]]]]][])(()([]]))]](((](((]]]))[](()(([[[[[]][))]]((([()[()[]))((]()])][)[([))))]()][[((]])[()()(][)[[[()](])]]][)))])[[[)]([(]])][[)(])[(]))([)([][]]]]][[(]][()[[])[])]([)()[]())((]([)()[](([())(([(][)])))[([[(([([([)]]([[[]][(])[]]([[[()])[[[))]](]]))])]][[()()])[][)]]][](([][(([)(])][([]][)(]][[][()]][(]]]))][()[)([(]][[[[)[((])([]]])(])][[]([))()[[)))]])][))([))()[((]]])(])]]]()]](]]()([[)[]([][]][[](][[()(][)[]))[)]][])()[(()]]))[](]]]()]([))][(()[[](][)]]][([])]]))])(])]]][]()]])[]][(][()[)[])]()][[]([)[[([]][(((()()[([(])]]](](()[)((([[(][]([(])([[])[]())()])[()][][]))[[()[[[(]])]]([((([[[][[([)[[)(([)])[)[)[([]](([]]((][[])()]])[(()[[[[)()]([)(])())(]])[)[[]])][))(([](]][[[][)()[[]))[[([)[)](](]][]())[]))[)(]))))](][))(]()]]]])][)]))(][[])[[()][([([]))[]][][](][]()]][(](]([[(((()(()()[]]]()]])[([))]][(()[[[[)[])()[[)[(][[(]][]](])[([)(()]][][[[(][][)(()(([[][])()[)(]([[]()(]][[([]]([[))[)([[[]]((([(][]())([)[[()(][][[](]]])))[[[[(([([]][)()[[](]))[][][]]]((]()]([])]((([[]([)]]](()]]))[](([)])((][]))[(]]]([()))]]()())))(]))()[()][(()]]][)[[]])[([(][])[[[]()((()[)[)())(()()]))))]]](]))))][])]]]([[[)))[)(](((()][([[)][[[)([[()[]))[])[()([)((][(]))])(((]((()(]((()[))[[])]]()))(([(](][[[[[[][)](]))](((((](()(()(()[[[()[][[))(]()]][)[()][(]](()][((][[))])[])[](])([(]])([][]]))))[[())(]](]][[[[]))][])[([(])([)[[](([([)])[)[))()[]()())((()]])[)([))]()([[()(()(])(((([([]](([))](([]][]([[(([)]][][()[[[()(()]))()()][[)(())[))[([]][)[((][[))[)][[]]][())())([(]]))[)())([][([([][)]][(([)[)[))())](]][([]]()[([((()(][[[]([[[(())[[]])]((((()]((][[([[[[)[][)])]))])([)([[]][[[][[(([()][))][([)(])[])])((]))()]]())))[](](()[[((]))][)[([(]()[[](]]]])[])[](]())[)[)[)[((][([()]((][())))]()[][])[[((()])])([][])[[(())([]((][)([(](])[)([]()[)()([))(]]))[[([[[([)[][])([[)())])[([(())[](]([[[])())]][]()()))[[[()))(][[()[][()][[[][]])[[[)((((]]]]]))((()]][]()]())]])](][])(((])]([])[(()[][])))()(]]()]([(]]([(]])]]()(([]))([)[][][[((([)]]]](]([)([(][[])((((]][)(]])][](((])[[[]())]]))([[)[(][(](()([(]]])]]))]])(]]))][]([]](][[][][]))([)]]))[])]](())(][(])[]])]((]][[[([)])])][]]((])[]](](()[))[[(](])([][((])[])][(][)[])[[(()[))(()[()[))[](]([(]][[(])][)[[)[)]((((]([][])][)))[]))[]])[([))))][()()]([)[[])(]]][)[][)[](()[)]][]]][(][((([)(()(([)([([)(][([(])[)))[[)))[()(]]()[)[))](]]][)()()[(]])[[[[[])])))[][(][[()]]()][[((()](]([[(()][(([(])]())[)[])(]][]]([)]])[)[)]([[[])()()))[[[)]]])[([][](][[[[[))]([(][[)([(([][([[[)[][)[])[[(][))()[)([()()]]))])[[[[])]))[])[(())[()]([()(]()](])]))[)(())[))]]()][]()[((]([[()[[)[[)][)]]([][)())])[(]](]][[()(]((][()[((][[())]][][)](]()([[))][[(])][[[])[[([[)]([([)]))([](()))([([[])][()[[(]][[()]((][(](][(((]][][[[(((((]][))]][))()[((]])]])([)][([])[]((]([[])])[(([([[[())]][))(([()[[)[()(][[])([([)(][]])(]](](]])(([[[]((()[([)(]]][[))([))])[[(([(]]))[(][(([)[)()[((]([](()[)[(()(])()])][(()[[(][)([)])[()[[]]([)[][[])))[])(])[[][))]((())[))]])()([(][])])[((])[)()][[)(](())[]()[(([(((()])([[[][)]))(])](][[(][)[([][[[)])[][(()[[()[[)[[])]([))[(])))]())[(()([)((][](())]())))([)[(()((([)]]))[()[()[])])))[)[]][[)[[]][]((((())[(([][)))]))()[)[([]]([()[])[[(]([((])][()[][[[()[[)]()][)(])[)][(][([[[[)][)))([)([)[]]])))[)[]][)([([[[[[()])][[(()[][[[([)(()())(()))(]))[[](()((][[](]()(())]][[]]))([[(]])[[][[[[]])()((]]))]]([[][[))[)][(]]])))[(][])[()[)([)][[(([[((](][()])([(]][([)([][]]))]]())]([([)[(])]))(])]))][[[(()]][[(([][(])]))])(])][(([(]()()))]()[][]]]((])]()][([)[)]()]][]()[)())])([[]]][[][][(((([[]))([[[][(](](])[[[[[([()([[[]](])([(]((][([[[]][]))]])[[]](][))[](](([)([])(][)][])()))(][[]]())(()(])]()[[))))[()(()[[])()](][[(][)()[[([]]))[(([[)]([)]([)[][](][(([[[])])(([)[[][)[([(](((]))([(([)]]()])[([)))])][)[([())[())(]]]())(])([((][](])[[])]]))()[[[])]([])](()()))(]]]))]())[[][[)[)][(([]]))[[((]])])](]]]()([(](([(]])[])]()[[[[][])()]((][[[((()[((]((]](()))))])]))[)[]][][)[])[(]]])[()((]](])([))[]()()])(]][[((])]((()[[)]]]()[)([])([()[]]()(]]())]([(()))][][[))(((((][(([]]))](]]]](][])])[])(][()([]]))][[]][()][())](][[])](][(][][)[]]()[]([[[()[][[]()])[[(([(((([[)([(][(()[]][[[[]))[([)[()]]])()()[)])))((([(((])])([]]]([]([](((]))[))](([][))]]]([]()(]])]]]]]])[[])[])])[)()[()][[[[)(]][[[(]([)[(]()[[)[(]]([))[)]]]())()([[]])(]((])[][))])][((]()(][]]]])(][)(]][((()(])(()([[[()]]))()])(([)[)[)[()((([[([](())[[]([[[[)]]([)(([)[]](([))()][])(())])]([]]]([]((((()]())]([()([([(]]([()][()[((][()))][])(])[)([[))))()][[][(([][])[[())))][(][)[(](][)]]])][))])(]()][])[][]]][([][[[[[]([(][[]([]((]()(()(())]](]())][([][)[]]([][([[])))))])[[[([([](()(])](][(])]([][[[())](])()])(]))[([[)))([)[[]()([]])[(()]((])([)[[)]]]((])(][(][]][))([(((]][)])(()]]])]](])])]])(([([][[[]()[]))[(()[])](]]][(()]([[]([][[([[][)][))]]()()([[(]))())(]])]([]]((](]][))])[[[[)()[[)])(](([(((())))[[][[]([(([)[(]][[]][([)[][)])[)([()()[[()])][()(])(]])(])(]((][]][())[)(()[[]][(]]))]])[[()][(()((((([()[)][]]]([)]](([)[))(][()[[])]()[[([[)([[[([)](()[(])[[[[[()[)(][])((](([)[]]([)([)[(][)[([)][[([[)))]][[)])(()))]]([(]]())[]))))]]])[[[][([]])[((][[)[()(]])[[]))(([(]]([[()(]]])[[]))][])[]])][))))]]([()([[()[[[[(][)[)[)(([])][()[[([[[])))[](([(()]][)(][)([[][([([[](([)[(([(]()[(]([[[[]()[(([)([([][)(]]][()[[]((()(]]]]))))(]([])]([[(]([([[)[)))])(]((])[[]([(([())[[]])))))]])([)][]()()][[((](([([[[]()][)]((])[)[()])[)((])[]((([)])(][[]])[]]([][(([((()]((]([()[[()([]](])(()][((]]()(][][][)[[]((][()[[([])(((]][((([([])][]]())]))[)[()]]]([)))[(][]]])(](()]((]))[))[)]]]]]()]](](([)[([[())])](]([(((](])]]]][])[[[(()))][)]())(][[)((((]][()(]([((](][(()))][()]]([]](()]])[([[()([[))]]))])(](])))]())([)(())[][[]((([]((()(()[))[))])[[][[(([])))[(([((]])))]](][]([)))))[]])(](([))[[(]]])][)([((]([[)(][))]([[[][([(((([]()][([]]()])[]([)[]])[])[][[)]][[)((])[]][()()(][]([)][)])[[([]([])[][[)[[])]][(]])]((([(]([([[(](](]][[(][[[(()))](]])[[](][(])[][])[[[][[[][(((][()))[))][()[(]][]]]][)[][(]]][((]))]]()])[))[]]][)()]))(([[[((]]]())])]]][[]])[[]]][[)))(([]])))]][([]()[[[)([[))()]()])]([([([])[)[)))][[[((()(]))]))([]()[](])[][]()[](()[[)]())])])(])))][[][))(((](]](]]([)((][([][())[[(](]]][)))][)[()(][][(([()()([)[)((([]](][(])][)]])[[()))]([[[](([][])()(()[()[[]))([[[[([[)[[)()])[[([[)]()]()][][()]][)[)])[](][)([(())(()()()()][[)((()][[][])]))))[[]]()(](]()[]]()](]()][(][)][))](()([[[)[]][])[)[)]][]]]])[)][)()]()[]([[()([])][([]())])[]]()((][(]]]([](())[])]))[][])[[))[[)]()([())))[[))))[[]][([[[)])[](](]))())(](]))((]])[[((([((]))[)()[[[(]]([[[([)]())[[([)])[))()))()]())[][])([[]((([(]]()[)))(])[]])([([)[()[][[[])[]][[]]()()[[[[[()]([)[()]])][((([)]]([)))[]])[)()[(])]](()[))]])[)]))((()()]])[([)(](()[(([[(([[[))(]])()[[))][(]([))(]][()]](([)]][][[)(]))))](]]][]((]([]((]]([)())[[[]][()()]()]]]([))][(())[]([))]][)([[])(]([))[)[([[]]]][](()([))]]]][[[[[(][[(])[)))((()][)()((]]))]][((((])(][))([[))([[[)][((][([]()(([])])][][]]][]])([(][))[(((([[[[))]]([[)]()))([([)(())][([)(()]])[)]][)()([[())((((]])[]((([[([])]][)]()[[)][[)()[[)])(()]])(]]([][))]([[[]()]])])([)](()][][])([[((][[)(([)][]]](])(]([)))))((([[(]]]]((()]][[)[(())((][]])]))[[(](())((]()]((]()][)][([()[)))](()[([[)([]]]()())]](]][](])]]][)[)]])[[([)(])[]((])]][()(][])([[[())]][([()((](([[[)[)([](]()](()]([([[)])(])[()(]([[](()](])(]))]])][]]])[)))][][)[)(]()]]])])][)[]([)[[[[(](][(](([][)][])[)]((][]]][[](([]))]([)]])())()[[[]]])[()(((([()))[(])[][][([)]])])(([[](])()())))[]](](((][]])[]])]))[([[)]()](])))(([([][[))(]([])((([((()(][([]]](][]][][)[)]]])(())((([][])](](((([)()()](([]))[([][[)]][[[)]])][()[(]))[[)(](]][([]][([[[(]][([[[]()[)[](([)][))[][[][[[([([((]]))][])][[[]]]()([)]][[][[[[[[([(([[(()[[)]][[[][[[)])[((])])][[(((([]][]([([[(])((()(](](()()]])[((([)]([((](([(([))(([](]]([((])()[]([[[[[()[))[()(][[)(())]([[]])(])((()[)(]]]]([][[][([(])[((])[()]](([)([(()[)](]))]]()[(])](())([)[(((()[)]]][([][](()])])[()([)[())]([([]]][([][(]][[()([]]()()[(([[)(])])]][[)[][[()]))(](]][[)]]][()[)][)][(])])])][]][(]])[][)[[()[][)((][(((][]][))()]](()[)()])[][]()[)[]])[))](())[[[()[[[[)[[][)([]))])[([)[(]][))([][[[[[))((]([[[])[[]](([][]]()()((](()()]((][]]((][(()[])[]][()[)()[([(][[[])[[)()[[)]][]]([))[(([)([())[[(([])[()]]]()(][)[(])(]))[))((](]](([)(]()((](][)()(][(]))()[[[[](][(()(])([]))[([)])[([(][[([)[([]())[)[[][][[)[((([](](()])[(][)(((([[])[))[()[))[)]))[)(][)[)([[]])[([]())[[]([(][][[[)[]]))[((([[[([[)]([)))[)()()](][)]]](([[(]])[[[](])))][]])()[(]([(([[[)[[()()(][[[)](]])[[[))([())(([))]](]][)]])())()[[()]][)(([)[][][[)(][[(])[()[)[[(])[][(])][[([][[[]([)(](]]()])([[(])[]]]))]][(()]()[())][](]()(((]()])[((]](([][])))][)][]])(][][[[(](([(([])[[()(])]())][))(][()[]([)]())[(]])[))][)((]]((][]]][))]][[))]]])][[(][([))))([([)(][]))()[[(]])(([(]([])]))((][([[[)][(])[))([)[([([(((]][[((([((()]([[][[[(]])]))]))[][)([([(()]))[([]()()(([([[()])][))][)[[[)))()]([[))][])]]([)])())()]]](](([]()()([)[])[]]]])]]()]]([([([][]][)(][[[)])(])])[][([()][]([]][](])[][[[[[(]](][]([([(][[)(((([))(())][()]))[([)]()[]][]])[((((]()(((((]])])]))][]()[]))[([[[[[(]([[])[(])[()([](]])([]((])[))([([([))(((])([[]((][]]])[][)[([([()])([(())[[(((([]))(]]([]][]])[[(][(()())([))[()(](([]))])](()[[](]((][[)])[)((][]](([)(([([)([[[[][[[()()[[[[(()[[])))())()(([(](][()))(())(](])))])))](][[([()])[][][))([)[]([()([]()[)[[()[][][](]()][]])])[](([)[]()[))])]]()[)[)([(][]]]])]((([[)][([[))())[()[]])([[(]][))[][)]][)[)))(]]]]((([]]])])][())])(][]])())][()))])(])[]()]()]][])[())()[(][[(]][[([))[)][[]([(][]([([[[[[))])()]]([())[(]]))][)(((])()(][))])][(][(])][([([)((((][[])()]())(]([))[])][(()([[[])]])[(()(([)((]](([])[)[((([(][([[[[]([[))]](())()])([[[)[]()[]])])(]([())][[])]))(((()]([(]]]()]])](()]]][[[[())))[(([(]])]]))]()[)((][(()(([]())])[))[][[([](][(]()([[)[][[())[)))()[)[(])]))())(])((())))([([(]((]()([)(](())(])][[)()[[[[]][))())[)]))[()[[((][[))[(](]()(((([)]]][[())]]]]()][([((]](([[][()[)[]))[)[))(]([][(][))][[([()]](][([]][([([)))])([])())[)([[)]](]))[)[))[[(]))])([)])(((])]][]()[)(([])()([((]]))())])[])[[([)])(]([)))]((()]](([)[[])[][)))[[][](()[[][[[[([())((]]([[)][]((][([[[[)())))]][[([)[]))[][([)]((]([]()())[[[[((][[[]))[))][)[[)([])]]][()[][[](])([))]())([]((()][)[([([)[(]([]())[[]]])((])))()(])][])((()()((([((([))][([[([))]](())[()]]([][[()()](])([)]))))[[())((([[()([[)))(([]](])[([([]([](]]][[)]((]])](()])((()([())[](]))]])[([)[)[([[)[[(]([[((()[]([[)))])([[]]((][([[(])[]())([[(([([]([)]()(])]]([)((((][]))][)))[[)(]((]])[)((([[]()[)[](](]])(((()[[([)]([])()(][)()]]]([])[][)][)[))])(((])[)](](][(()[[[([])(()](]])[[(][)]]())()(((][[][()))[[)[)]][[]]]])]][(((([)([[(])])][])(])[))][)))(][[[)[][[(([][[([(([)[(]([[)([]))[)]]))])[)()))(()[])]()[(([([[)())[[(()])([](([([[)()(])(])])()](][(())[[]](][)[]])][(()]]()](](])([[[[[))(]([]][]))()[((([(())]](]((())[[)[)(])]()([()[]([[))]][[[][]([((())([([]]](][[][[()))[[))[])([][])))[(((])]))([[))[[)]([)[]]()[[))[()([[))(]])))[[][(]][([)[)[])(])])[[[[([)[](([[))]]()][]][]()()]))(((]]]((]]()[)[]([[((][)]](((())[(])[]]])[((]][]][]((][(]]](][][)][])[([[[)[]]])]))[[()[[[)][]][[[[)]([[[(])[[]([(((()[[(()]()()[([))[)[)()(][([(])([)[)]][()()]([((()([()[()[][[[)]))[[[]][(][([)])])([[()[(]([([)]]]]())(]])[()[][)[(]])])))[([))(((([)]([([((([]])[(([([])]])])](](([((]])((][][[(])(((]()]()[]))))(()]]))[]()[[]][([(])(([[)[][(][[(]))])[])())[([]()[(((([])][)([[])([[[()([]))([))[]][)])))))([][([]][)(([([)((][[[))][[[])))][(][)[]([])]])][]](][[[][][]](]()(((])[([])[([)((]][][)[([)[()][]()[]([)[)(])(]([))[][)[)(()[[[)))[([()[][]())])[]]]](()([)(]][][([)[)([)[(][[][](()](])[([))])[[)(](][(((()]([(][[(()()][]))()((]]]][([)][(]])()[(())]][(][[))([)(]](][]])(][[(][[[(()[)[[()(]()[])[[][[([)[]]][)][([[[[]])])][])((][([]]][][)])(]())((()[[)[]([[()(](([[[][]()[)([))(])([(]](]([)]](]][[](]([[())[()][([)([))]()[[()[)[([]]]]]])[](][][]()[[)][[]((]])((()]](())])[))()]][([)[)([[[[[)[])(([)])][])]([])[][)][()[[[[[[[]([([(]]][)[[][()]](()()]]]()(((([(](([][[]([)[([[])]))[([][[([[[)(]]])()(]]([])([())[[(]]]())[[(((][)[((]](([)([()[[[([])][)(]())[(])][)[]](][])[))])])((][])[()]][(](((]]]]([)]())](([]))[[]]))]((]))[(])[))]][[[])[()(]][()]((([(]((((([]((([])[([(]][)](()[)[)()])][(]][)()])(])[(((][][(][)]())[)[[][)[))])([)([)))][[)])]][[][[()(())[[)]])[(])[)((([(]]()[([(]]]((([]))]]([(])(](]([)](][([])]])(()(]()]]))[)][][])[[)((([)[)(]([]][(][())((()[[])([[[][()[)[[]([))[)((]]([(]][])](](()[)[[())])(]((([)][])])))(])([[](])[[][[(](]]([)[)[[][)]](][[[[[)[(][([((((((((])(]](()[[[])((((]()]][([))][[[])[[]]])[)))))()]]][[[())()[](](()[)))()([[()][](]]]))(((([[)[)]()[]))(][]]])]()[][]([(]))[)([)())])[()((([((]](][]](])[(([))[)((([))()])))[))[[[(((][))]))()]][][]((())([())[[[((]][](]]((]][)][)](([][(]]))(]](](()()]]([[[]))[(]([[][]))(]([]][][((((()]([)]](]][[((]()[](()(])([))]]()([[]((]])]]](([](])[)()[))[[](]][[)])[([[[[)[]([(][))]]([]])]]))([(]([[)](](])()][]])])](((][][))([[)))])()()]((()]][)(])))(()[)][]([(][[])(()(]()[]))])[)][][](()][)[)()())(][[[]()]](]]))[])]])(]]))))[)[)()))(([(])([[]()(())[)])])[[])[](](()))))]([)]])(][]([)([[]]]])[)[[)[(]]])())[([)](([)([]](])]])]])[[])[[)]))()])())(]([[)]][[]([[))][](])(](])[][([)()[([))))[)[)())]((()(([][)[[(((([(([]][[][[)(([(((]])[[([)[]()((()[[]()])())(][)[)[([))]]))())[[]()])[)([)))(()][)])([[)(])[]]([)]]]][)[][)]()((][)(](]]]]]()(][(()[[(()()[[(](((()[](])])((([)[)()([[])])])[)[)([)([[(([(()][])][[))])([(([[[]](([]((])(([[))()(()]([((()[(](([))()][])[]]]]][[[)[([)])]][][))]]))((()[[([(](])]]](][([])][[)[[[])][(()))])[])[)[[[))])[)])][))(()([[[([])))](()[(([[))]((([]]]]]()((]])([]())[()([))(()[[])]())])[[][][][([([][[[](]]]]])](([[[[))((])(]([([)))()](([[))((([((]))(][([))(([[])[[(([](()([)][()[)[[][]])[)[)[[))(]))])]((]((][))([]([])()[]]([([[()[[)()[])(([[(](])[())]]]])]])][(])))[]](]])[)](())()]([[)[)[()(()][(]]][[[)]()][[)(()(][][[((()][(])])[[][[][(())([(])(])[(]))()[]))[))[[])((]][]]()[)])[](([]()[([(([((][))(()](]])((])]((])(([(()]))]()(]()])][(])([][(](]])[)(][)]()]()](]])(]][[)([[]]][(()][))(](())([)]()[[([[]([()))][([((]]()][[])[)))(][()[(([([(()))[)(])([])[)]]))]))[(][)([[[()]])[[)[))[([]][)(](][())()[[([(]])))[[)]]])([[)(()))]((((][][)][[((()[)(((())[([)[[))]]]][]))]))[[][[()[[)))])[(][[(])((([[(]]()([][()([()[)())[])))[[[]]((]][[]()[))[([()(())])][([([]]]())]]))([[)(])([(([[]([](]][]]]][[[[)[(](][)(][])]]]]]])[)))[[([[)([(]](]])[[(()(]]])(((])[[)(][[())([[([)((])()()[((])[([[]()]))][](][()][](])[])))[](]](][([)[[](([[))][)[[)]][[[[[[])][[])(((([]([[[(([((]]])[(]][)][[([)(()[())([](](]([[)][](]))][[()([[((([))[[[((][]()]))))[][(]]][(([]((([[((([[)))([(])([(])]][[)()())][)((][[]][])([]](()(]])[[(])][[[]()]()]))[]]([]]][][[)]([))]()(]))][(([]))][[]]])]((]][][()](]()]()([)][][())([)[]([))[([[())[)[[[[)[(]])[]([]])[[)[[])])]()])[(([(](][[)())(][()([]]][[]]][[(])[)[()[()[[))[[))[[])]][])([((]]([)[)][(][][)(]]([)(])[())(]()[)][)][[]](])))]](]]][]][(())[([(][[[([)[(((]((]](](]][)][[(([)])][)[)[)(([[(((][((][[()())]()[]]()]([)()(]()(][()([]][])][]()]([[))[][)[]]])(([))]()(]])[)[]]][)[))((]]]]]([])])]]]((][]](]([[][[])[])([)]()()(][[(]([(([(](][)]()(([(])[(()))[)))[](())()]([[][()]][[)])][]))(]())[)][])]]()[])][()]](([)]([][)))(())[][(]]))])([[])[[](](])[]]]))[[)(([](()[[[)]]([([[((())(]]()))()[))))([([)))[([[()([][])[[[])(([([[[[([][)))]][[()(]](]())((])[][]](([[]][())(])])([[([(([([([))))]))(][[[(([(])[]))[((((])[(]]([[][((]]][]]]()()[())))]))))]][(][]]])((](][([)]])]]([][(][]()()[))][]()([[)]][])))(([)][]]])()(])][][(](([)[]])[))]]))]))[[)([[]][()[)[[](([(]]()[)]([)(][[(((()[]]([()]([)]]([()(]([(]]()))]])[[)))[[)(([]()[)((]])[(](([[[())[(([))(([[[))()[)(()[[[([)])]])(([))][()])))))(()()[][]])[([])(][[[[([](((])(([[)([][]][[)))(]]])((][(]()][([[)([[(])(()()[]()])()[]()][()]]])([[](])]]])[()[(]])([[)]()(][[(]]](]]]([(([)](([]([)[]]]])[][[([][))[[(]][[]][][[]][[)[])[[)()[][[)()[)))][)([[][]))[](][([[]]]]]()[[]])())[(][]](][((][(]([[])[()][[])[((())))(()(([)([)[)])[[([()]])(]](()](([))])))])))()])[())]]])][[)[][)(])([)([[()(][)]])((()([(]()])]((())]))()[)((([][[)[[[[()))([[())[))(]([)[[)(][(])](][[([[()(([]((][[)]()(][((]))][[[)([[((()[]][)]()[([)])([][))[]])))[[(())[](()][]][]))][[]((])]((()()])]][[[(()))([[((]())][]]])](([]][)[][()[)[][][(]()[([](]))(][[[[])([(])[)[[[[)]()][([[])][)(]])][()]]][(]]]][)[((][[)((([[)([][)[[[(]])[[[([)[))([]([())][][(]())]((][]([[][((]((](]((])[](])[[[[[])][()([))(][]()(()[[]]][(](](([)]]]][([])(()][](]][)][[(]])]]][)(([][((([)[[)]][)[[(])[](()([)[]([)[]]())[([)])(][[[[)])[(([][[)[[]])(])]][)(([]))][(()[[]))(](([](]]()([][([]][)][([]](]])]((]()[[](][[(]([](](]][]([([[((([]])(][)[]([([)([([(]]]([]][)))[])[)(][()]())])][))]][()[)])][()[[]())][()[[)]][]]))]](([()]][]([]([()([])[))[[)]))]))]))]])[(((]]((])())[)]]())[)([)([[))(]][([)]](]]()(])(]])[)])(][(([)()))([[)[()]()([[)([)(([]][)(([(()([(][])(][([]](())())((([)([(()[[[(]((((]))[()]]([])][[((((](]()([)[()()[[))(]())(()([[]])[[[[]](())[([)])(]()[)[(((()(]()]])]]([[[()]))))()[[[()][))]](][(][))[]((][[[)[)])](]][]]]([[())[)[([[)[(()((](]()[][[((][])])]])([([])((]))[([((([()[[[)[)[][)))]()((][](])[]][)([)]]]]])][[]()[)[]((([](]((]([)([)](]((])()[()()()(]))](()[[](([()(())((]()[))]]])(())[(](][])])(([)][]()]][]][[([]]][]]]([]][]]([[))[))]))]](((]))][[(([][(()]]))[)(]([[[]([]](((([()([[)()[([)[)([[]][([([])[[))]((]))))][])()([[()]])[[[((([)](](][)()]]][)])]))[)]]((((]](]))][()])[]]()[[([()[)[])[(]())(][)([)[(][][)[[[[]()[(]()]()((([[[]()][]([(][))([)]][(]][](](((])([]]]([]((][][)))[]((][()[[]()[)][]((])]])[)])])][[)([(([(])])()](()))[](][([)(())(](()]([(]][)[(]])]][)))(](([[()()[]([()[[]])]()]]))[)[)]][[]([)[([[[[[)(([])[](](]]](([([([)((()][[)]([]]))(]](]([)))([]]))]())[)(([)[])[(]](][)[[[)[]([(][)]())(()[[)[]])[))([[]])(]()))(][])((][)])[][))][()[[)[[()])([([)([([(]([[(]][)([]]][)(])][]][)([[)[())[][[)]()]([)[][[]](]][()][([][[([[)(([](((]]][))[()[]]]][)))][((]])()[]]([(]([[)))[)[()])))[]](([]([[]]][(]])]]([)](][][))([][([](])[)])[[](]])]]()]][[)]])([()([)[[)[[[))[(][[[]())))[(([[[))[((]()[[))][[()([[[[[)][[)())()))))])(]])()(]))[([])([]]()([])[([(](])[(])]][()[[[)())(((()][[]]])](]))[][)()][[)()[]][(])])]([[])[)([))](()[])))]][([(]))[(][(]][]][[))](]]](]()])]][[[)([()]((()]]()[][(][]()[()])[))[][(()[)[[])([])(((()]][(([[([[[([)(]))))]([][()[))])((()]()(]][[]))[([)))[[[([[]([][)[][[[(]])()]](])[[[]))()[[))(][[[()]))](]))[(]](())]])(]([)()[[[())(][((](]](](](([((])()((([]])]()([]([)[][[(()))[[(([([]](()][)])][)])](()])[())[(]))(])[[[([](())])[([()])](](]]])]])[]]])())(])](]()]())]))())[))([[[]))()([(])]]]][][[[((]()[(](()]]((](([([[()](([)[([][(([]()[()(](])][][[()[]()]]([()[[[[()(([)])]])][]][[()[)()]))[))]([([]([]([(][[()[[])[[(](])])[()[))([](())][]([([(()[([][(])][()](])([[)]))))]))[][]]]((])])][)))][[(([))]([]([[[][][(]](]][[)[)])]][)[[](](([]([))([[[([(]((][[)))])[)([][(](()[)([([(](]))[)((])][](]]((([[([)))[)[[(][(]))([))])([[(])(())([[]][(()))[[][](](][)[)[)[](([[)[())()(])]])])](]]]]]][[]]([)[()()[[]()][]][]](]]([[))))])(([)]()])))]()(][[])([)]])[[]([)()]](([)([))((()())[])))([[[))[[)]))](]]]][[[[]()])[)))[)()]]))()][)]])[)[)[[))([[][]][)][[)())()[[][[[])]([()[)([)]]]][[[)((]](][(][([[(]()()]())[))(]()]])))[[([](][([]]([]([([[(](]]))]])[((([[)[[(())())](][][[]))))]][)[[][))]]])(])]][[()])]()])())]]]((](]][][)))](([)[))]()[()])]([[(())((([)])()[)[[[][)[)]([]][[]([))[)])(][((((]))]][[]]]()(][))]][))[)])[(]([))])]()]]()(]]([])((])]]([]([((]]])]))[)][)([(]](]]])[)(][)[[()[[)[[[[)[[[(])[[[(]))[)][)[()]][)][[[)])([()[()(]([([][][])]()()]([])(]([()(]]()[)))]](](]]))[][[[[]([(]]])]])([))]])([)([[(()[)())(([]))[(]][[[[])[[)]](])[[)][])]]]())[(][]](])]][]()[]]]()[[((()(]((([())([[](([])[[([[)(((]](][[][)[]()()])[](]))](()()[)())[)))()])[))(])]([[()[[]((][((([([[[[[]([])](])[(()[()(][][(][]()()()([)](](])()[[([)](][[)((]()[)]]][)(]([[[[[([)()(])([[][))(]([(])[)[())[)))[(]([)[[[]([]))]([])()()]][)]][([([(])())][]][))])(]][[))())])(])([(])))]])][]]]([((()])([]]]([)))[]][(((([](])[)])()))))([)[[)]([])]][([()[))))][]]))[)](([][()()[)[])()[))]]]()[)]](())([[)])][](]([())[]]))[([((([]][)()]](()]][]](()][([)[[][]]()[]([]())(]]]])](([[[[))(][[]([[(]))[(][((()[][([)[)[()))](])[]]()][][[(()())[(][)[)[[](][])([[]))[())][])[)([[[](()())]([([[]][())))[((]))[]()()))[[([[[(])[[[)]))]]](])([](]])[()[)[])]))))()][[)[[((])[))([[([[(]])(](])(][[[[)](])()[()(])([)[]](((()](]([[(([])()])[()()([(][()[[()()))[])([])[](()])[)[(]))]](([](])]]]]]][())[]])(][[((()((([(]()([[(])[()()[)]()[](]][][[[]))]][(])[([)()[][)[[)])))]((((])[))[[][))))[)(([])[))))(()]])((([]([(]][)][[[[[))(][(]([[[)([)[[[][))()(]))))([([)[))()()([)]]([]])]))(]([([(]])((()[[[(]]())))(([((][[()(([][[]][[)[]][])])([[)[]))](]]]](([)][[][([][())()))][[)]([[[([(][])[[([[()([[(]()())()))[)[][(][([(][([([][[]((([)()))[]][]]]([)[]))([))(]]][))[(())(]])[)[[)]))[)[)]()[[[])[[))][][]([)))[)[[]](()(]([()[(]]]](((])[[)[[))(])[())(]])[)([(][[([[]])[)]]])[))])]))])[]([][)))][)](((][][[[([])(([()([)[(([]](([(]]])])]())[[][[]]()[[]](([]](])[[[()()()[(([[])[][)[[[])[([)]([)(]](]()[][([))[)])[())()(])[((((()]][)[][((][]]()[()()([)([]()[([[())]][]][[][[(([[(](([](()[](][)(][)[][)][((]()[[)[()[])]]]([)((]())(()[[()]][(][[][[])]])()]][(]][[))])())]))][)]][]((([]))[([(([][(][[((([()[)()]])[](()[(([[[[[)()[))]([[[]])((]))[(](([](][[(])(((]])))]])[)[[))(([[)[)[][)]([)[(][([]()]]][([([]))[)][])(([[)(](])()[][)](]))[((]]])])]])[)]](][)))[)([[)[[[)(((]]([)[]][]([)[][]()]](][[[]][()[[]]((()[)([(()[[]]](()([](](][][)((])])][(][)[))][([)[(][[))(](]][(]))([[[)[(([[[))]()][()(]])()[)[]))()[()))])(]([(][([[[](][]][((]([]]((][([[[][])(((])])[[)()((()][[([][)([([][](]))(]([))[(([([)(()[]]]]])][()([)([][[][(()[)(())[)][[[[([[]()[))())][))[[[[][))[()([)([()([[[)()](][](])(]])(()(]]])))()[)()]](][([]))([[)]((]))(()((()])[[()([[)]](]][[)(]])(]]((()[[[](([])([[()[)[()[])]])[[([((([()(([((](]((()[)]([(][]])[)[])][[)[]]][((][](])[[[((])(([[[])([)([(([[[]([[(([(][[[][)()[](]](()]])])())[[)))[()]]][(])[](](()())])(][)]][[([)(])))]][]()[()])()(())[))(]())])]])()]](][]((]]))([[)](()((()[()([)[](([)(])]]]](]][])[)[[)](])()))[][](]([)]([(])()([[()[][]([[[)[[])([))[[[[)(]]]()(]([]()[((]])][[))([[()[)([([])))))([[](()([[[](]][(]])())(][][((([(((()[)[]([])(())]][]]]()[[]]]))[)(]]][[[[][[(]()([[([](([[)()][)[()[)])[[]]][](()[](][)]()((([[]][))][([[(][)]]])][[[())])[][[)))))[()])[([[[[]]]])]]((][[(]))[(])()()][(()](][()])]([([])))[][[]])[))]()[][](([)([[)())([(][])[[)])[]]([[)][[(()(()([])]][()((]])())])[)([[[))])[((]([(([([()[]))]]][])](((())[[)]))[[][)[[()][()]][)[[[))))[([][[[[)]](]([))[]())))][](][[())(][]()[][]]((][[[)]]))[])])(])())(([[[][(]([(])[)](([([][))][(]])(]]][(])(])[[(]]()[()([([[(])((][))[)((]()][((])[[])[](][]][([()()((]])[))[[([()]]]][]([()([)]]])]]()[()[[]])[()][()[)[)[)]])]](([])))()[)[)[((]((])((]))))(])][([[[))(][))[[)[][(())[(([[([))[([([)[[)][[))()]()[(][()])[[))])][[]))(](])])[[(](]](]))]()[]()[)]([[]]]()))[[())[(])[)[(](([[(][]([]][[[)()[)[[)(]]((()[)[()[)[[[)[]][[[([([(]])][(((][(([()[])[]][](])][)(([))([[[[(]]]())((]]](][(])(]()[]([]))()](((](][)))[[](([((]]][([))))))[(]([[(]))[)][]])]][][)(((([[[]()))]](][[))[[]([(]))[()([((((]]]])[()])()[]]))[[[)))(])]][(()()[)])([)[](([[])[]((()[(]](]]]])[())]]])))][)][)][(]([[)((()([([([)[[[[)](((])[([[)[[]])]]][[[])()([()[))[[]])[)))((()([]([[[))]]([)[)]))[])[][](](]()[]()()(]][)]][)[]])]([)[((])[[(([])]][]]]]([[[](][))([])](]))])[]]))](])()]][[([)([]][)(])]([)[()[][)[)[]())((](][)[[([[[]]](][())()[[(])([[)[[][())]]))][])[[([()])])]][[[)([([()[([[]()())()]([]]()][][])][](])))[([]([)]([)[[]([[())]()[(([()[(])][)[[)[)]][)([]]([))]][))])(([)(([)])]]]]][([]]]]][)(()[])[)[(](]]]()))(])[[)]]([(]((]((]][]([([]])()[][))[([]([)))(]([[[))((([)(]])(([()])[[(]()]])[)([[][]([]]]][[])[][]][)]))]))]])(([[()(([([)])])]]]][]((]]][(((]((()[[[))())[][][[((]()(([[([[)([[([[(]][][[)()((][)[]][([]]()][[[)()(]([[[[())])()])[))[))[(]((][(([]()[]]]([]])[(((())]((])[)]][(]]]])[[(][[]([]([]])[(()[)])))[[)[[[][]([])[][[(]][[([](((]]()[([[])][]))(([]()()][))])((]]))())[((][]][][))[[[]]][])]])()))([[[([([[([[)))()[)])]])[]))[)(([]()[()))][[()()([))())(]([]([[(])[)(([()[)[))())(][[)[[))[[)[[[)))][[[)([)]((]())[([[](())]][()[)())(])[[)]([])[][(][)())[([[)[)((()()(()[]]()[)[(()[[)])))([)[]([])]())([[()]]][(][]][[(][()]][[[((()[)))(]))]([[)[)()()](]))(]([)(][(()])(][)[)(()(([][))()([(]]][([[()](]])()])])[]]](](]())]]()[[([()))][[]][]([)])[)[)[(](()][[[]([])((](][([)[[(((()()[)]([][]))][][(()(([](])[)[)([[[](()(()[]([]]())])([[[(([())][)[)]]([)](()([(()()]([[([[)[[[][)[])]][)[(][])))(]]()))(())[)[])))(([(()]([(()[()[]](](]]]()))([[)][][[([([[[(]()][([]][][])]]]]((][)[)]]([[((((]](((](()][([([(([[))[()]()()([][[(((])())[)()[[[[([)]((][([[]))([))[(]]))))([(])([[][))[]))(]]]))([])])][)[][]](((](]()[][))]][)[()[)()(((])))(]())[]([(()[))([)[[[][)]((](]()([()]]((])()]([]))[(]])[)][]][[)[]])())[(][([)(]([][]([[[])[](())))[]([[([])])(](]))[])(]]()][[])[(])])([([[]()[((]]][)[)[[()][]])((((]](())(([)))([(][]]]))[))([[][([))][)]](([]((][)(())[))[(]]][)[]((]](][([]])())][(())[]]][)([]]([][](])][[])())]]))(]([()](]))[)[()]][(])))[))[))([[[([()[)()]))](()]])[(]][(]([[[]]](()])[))(][()])([()()[))(]])[][](]][)[[[))]]][(([[)(]]))][[)]])(])())(()])]))()][[])][))(]])[](])[()(](([[]][(][)](][)]))[]([))))(()])()][[)([(()]()(])]((])])]([(([)[)[[)])(()]([)(])(])()((][)()[(])])[][)(()[))[[[](](()))[))()]())][)([[]((]])[)][([)(([)(](][[((()[])](()[((]([])[))()[[[[)][[))[())])[])][[([][)[[[)[((]])[[(([[)])[[)[()][)((]])[(][((][(()[(([()](()[]])][()[)][(][)]))[[[[[()][[)(]][(])()](]()[[)[()[]()[))])])((()(][)([]([[))[]([[())(][()]()()(()))(]()[[)()()](][]][[(][)]())[][[]([)][][)((][[([(][[[](])[(]])[[[(]))][[[[)([)]][([(])]]()(][]))(]]([[)[(])(]()())[([(()))))([]]]()([]]([))(])[](([][)[)[())][[([([][]]][[[][(][[)]))))))])]([](([((()](]]()[]([(((]([(]([)[]](][]()(()(]][[[[)[]]))]][[([][[[((])()])[)()(]))[]])]))(])[[)([(]]]]([]])[][)[)[))](())][])]))[))))(](]]())]]([[)[]()([)([[]([([])(()[(]()))]())]][][)[[()]([))))[(]])](())()])(]]])]]]](]([]([)))[]))((])))[))([)]((])]](]][[]][]][))](([]]))([)[]([))])[()[][]][((]()](()](()([)])]](([()[))(]]))([((]]((([[([(((]()([[)()()])])(])]](()))()([)][](]([()]]][())][[[)(([(](][](])(()(([[)([)]()((]][(][(][]([()[]])][([])[)[()][())))[[[))))](([)]])([]]))[)]]]([[](]]()])([[([[()](][[]][((()((](][][[()(](][][[)][]]])(])[[[)[[[((]()[(((((]])][)([])[)[][)[[[)](([)(]][]([[](]()(])([](][]([)([][)][(]])[)][(((((][(([]))()[[]]]([][[()()]()]]([([])])])))[][([))(][((])[(][][()(]([([[])][))(([()])(]][)(])][][)](][((())(][()[[)][]][(][(][(([(])[]()[([[[(([)])[]][]())])))]][]([(]((([]]]((](])((]])[[))[[[][[]])()(([)])][(]]]][([)))))[[[[([([][)))](]])[(])))(]]])(][(]((])(](]]])[]([([])]]]][)[]](]])[)[)]()])[)])[(](]()]([()([]()[]](][)(][([)](]((()([)[)(])[[]())((]])](])())])(]]])()((([([[](([[([)])))))[]][)])[][)([[()[]]][))(([]([)[)[[[)[[(]]())[([(())[]]((]][))][(](((][[())[([([)[)]())(([]))[]]]]]))(()()](([])])(]][)]()()[])[(]()])]()[))(]())]()[])[([[(([([([[]][](]([])))([[)][(])])([)))[(])()][]][(([[)[)]]])[))[(]][]]))]]][]]]][)))[([]([(()))((]()]](]]]()[][[[]](([[([]](([]()()(()[[[])((][([))[[))](]))((()[]]][)((()(()]][[))([[](]](([][]()()()(]((((()])[)])][)(([([([[)](])[(]][)[]((]](([]]))]])()[([]])(]([[](()])(([[[][[](((]])]][([()()]]]]))(])(](((][))(][])][()])[[)])])[[))])))[)](]][)[(]()]]]()(()(])()[([([][()[(()([]([[])[[]](]][]()])([[][)](]([([(][)([][[)((])][()(](])]][][(])[[(()]]][([((((](())[[[([[)([[))(](([))]])]()))])[([[)()([(]([])([()(])[]][]][]()](][(()([)]](]]]()[([)[][])(]([])[][]])(][]]])(]](][)[)([[)()[[][[)([]]))(((())])[]((]((())))()[[((((]][)[[[[)]]])])[(([[]][[]()(])(][[[()])([])(])([([](()))(([])]][][(]][]][][)((()([()()))](([[](())(]]([[[([]])])]()]]([)))]))[()[][[]((([(())(([[)]]]])[[))(()[)[((])][][[[())([())]]])][([](]]]][(](](][[([)]]((]((])([]((]([)](()]]]))([]()]](([))[)][()()([))([[(]]()](])(()])[](](()]))[(]))([]])[[)][][()][[)(([)]](([()(]((][)[]][])[([[[]([(([()]]([])([[[)))[(][)]([)([(](][]]))()())]()))(]([(]]]([]()]]]])]))])))[])[])(]]][[))))))))()([]([(([]()[])][]()[[[]]([([[]][)[]]])][][((](((([]))[][]()()]]]([](())))[]])])]]([)()))([(((())(][([[[](])]((()()(())(]))]([][)[)]([)[)[)[)]()]])[]](])(((]))()]][[()(([[)())]][([]][](()()[)[(]])([)][))]]((]()[[(])[()([]])(())(())])][([[)()[])][)]((]))[[]))[[)(([[][](()[[()[)[)[)))(([)[[]()])][)][))[[)())(](]([[][(([[][()])((][]])[([]][]][[(()((]([)](])]([[[))((][]))[[((()[](]]]))()][]]](][((())[(][())]))[[)]([(](][[])(]][(][)[][])(([)))]][[)(()(((]]()]))])()][)[([)(([([()())[[[]()][[(])[])[]])([([([()(()[]())[][)((][]])(]()[)(()()[))])][(())()[[)(][())[)]])[])])]][([][)))[(]((([)]([][([))[)][([)[)())]]])[)[(])([]))(])(()(([(](](([(]]))([(][()((]])()(]](]([(]()]((][)])[][[[][([()(])][[][[(()]))]))]][[][([](((([))(][(])]])[)[((([)()([)[](()(([([()([)](()([)])()[([[[[](((])))[[[(())([]](]][[[[]]](])))(]((([(][([)[](([[]]](([[](])[(]])]((((()([)))()[[)])][[(])]](](]([]]([[(()()(()()(][((([))[[[(][](([](()[[)[)[[)[[][]))))[](()][([(]]((((]()][()[[(()[)]([[([)[((]([[))]([)((([](](])(()]]([)([)((()])([](][[)]])()(])))))[[()(()([]()([])[)[[[)[)][)([[)[][][]])[()([()[[]]][(((])]]))(((]](()()[])()[[(((())][)[)]])(()][][([(]([)[)((])[][][][[(](]()([())))](][))]][])()[][](([[)][)([((]]][())]([]])][])[[))([[([(][[(](()(]])([)()[[[)][)]([)][](](]](([[)[)(((]))]())[)[)[])[[)[[(][))[]][([[]())]]])[))))]())]))())[()](][[[[]))](([])][[[][)([[())[][]))()][[[])][]](((]([)))([)[])()([)[)(()])([(](]])()]())]([()]([())()]]][[[[[[[[([(]))])[[)()](]()][[()[)[)]][(](]]](()[(][]()]]))(((]][]])[(()))][]([][][())[[)(]][]][(][[()[[[()()][()[)][)((([]]()][[]([])][([([))(]]()]][(()]))[))[[[)))(]]]()][[([[)(])][)]]([)[]))[[)[((([)[))[][([)][[])[][[[)]([[))([)]([(]((([))]))[(([)([)]([])([)(][)(())(]()[)((([))()([[][([[)[([[])[]())]]([)))][((()[)(([)(][)(])[]))][[([[[)))])([))[((][(][(([[([[[](])()))([])[[(]][]]()])][)])(]((])))())[()])][)[)[))]()()](()]]]()][(](]()([)[)(]]]][[]()())([)[(]]()([])([)([())[))()]][][[)[][][)]]])[]))()(([())())[[]([))[][)()[[]])][[[([)]][[])(([[]([(][][(][(([(]])]])((])(])](](([(])([[[[[()(][])]][()[])[([(]((][[][([)]]()(())([)][]])]((([[])](][[[)())])([]((([([)][][]])[())](()]]]([)])(]((]][[[([()[(()[(([(())[(()([(]][)[]](])([[)[([])[)][[)][([)()(([))[)[[)((][)(]))]))(((([(]][((()[)(((])(((((]]()(([])))(]()([[())]]]])([((((]((([])[()[([][(][()[(]])[()))]]]([[[(])[]]))[[][[)(([[[)[)[[)][]][]()([]]()(]([()]([)]][)((])[())[[[[[[[(([(]))](((](][(])())[][()[([[()[[[]]))))[]([(]))))([[([]])[)[]][)([)(]))[([[[])][(())([[])][[(([])]]))[[([(([())))]()()))[[]][](())](()[[)))([[[](])(][]([)](][])((])[([[])][[([](][([]]][])](())](])][()[]([)][]())()[[]]()]))][)[)[[]](([)))][((()[[[](][()[))])(]])()[]())[[))()])[)([[[(])]()))[([)[[[)[)(](]([())[[][](])]][])[(])[())([])()]]][)))[[)[)]()]])][()[())]()[](][(]]]]()])]()]())[(][)[(][()(]])]][][[((]()[)([)()(()))(]([[]][)])]]())])(([(()()]])[((()))(][(][(]][[([)[][(])]][([]][]()][](()([][[(])()])][)][][)]][]][](]]()][[)(][))(]][))()[[]]]]()[((()(])]((])()([(()([]([][)[])[()[)[(([]))[)[)((])([[]]]()[)))])[[[]([))]([)()[()](()])]])([[][([([()))]]]])](][])]][)([()((([]([](()](]])]](]((]([((]]([[)))[(](]()]]))(][])[]](](][[[([)[)(]((][[](])(()[]]]]((]])[[(][[(][(()]][))]]))]]]]])))]))([][)(][][))[])(([][][][]([)]]][]]]]]((])]))(]))[[([[]()])([))))]([]]))[)]()]])]([(((([[))[[[[()((][(][)](())))[(][)([[(]))()[()]((])[[)](])])))][[()](])[][]]]][)[][][[]](](([](])())]([]]())()]]][]([])[][([)[][))][]([]([[[(((]()))][))]()(]](]])[((])(([)])]])[[[()][)](](][]]))([)(]))][[[]())[()[)[])]()[)((](([()(])[][[()[()([)][[[))]])([(])](])[())][])]]))]][[[][[[([])()]](])(([[][[](]][[)(][)][[)])[)](([)()([))[(([]][])(]([([)](([[()]])])[(])[]][([[[[((((()()[))](][(([))((]()[[[([([(())])](][(]([)[])))])(])[[()[)((]]][)])[])]([[[]([(([))]))]]([(()[])[]))(][)(]]()])][]))[[]))()(])]][))(]]]])([)[])[[[](])])[]))((])[(]]])]([))[[])([](((]][))()][[])[)(([)[[]([]))()[])[)[)[([)))))[][)])][)(()(([([]([))]([((]([]])[)[))]((]][(]])]][[]()]))]))][([]][]([]))])()((][((([[])))()[)]()([(]]][[)([(][)](()([]()]])]](]][]]))[](([]([[]]]([[]([[([((([()[](]][[()[)]())(()[]([][]][])[]([()()(()]][)[)()))[)]]))()]))])](([]])((([]][)(]()(()[)[[(][]](())(([)[((][(]][[(])][))([[(])]([[())(][()))]][(][]([)]]][]]]))[(]()))[[([()[())])[([()]][))[([()]]()[[()][][(((((])(([((](][]]))(]([]))[)[)(]]([[()[[)]]([[([))[)]][)[)[()(]()()[[)]](]])()(]]))(][[]([()()((])(((([(]([)])))[([]][((]]([[)]][[[)])[))([)[(]()([[]][)[])[[)))[(])])[[([)([(((][(])[[()([()((])][)))](](([)]]])[[([)]][)[])[)((][])(((]([))[([([)]([([[])([(][([]](](())][[(][)[)[[)[[[(]](([)]]][)((((](]]))))[[[)()[[)]]()[)[)])[[[[][)]()[(([])[[)[(]]]]))(()[][([)[[([())]]([))[](][()())[][(]((])[]))]()(])][[)()[[]([[([]][][())]))()[[][])([[][[[][[(()))([([](([[]([[[]][]())]))]][((])[[[)[)[)()]](][))]][)]()](])])][)[([([)(][([[(()(](()(((][[(([([([)]([)([]]))(][))[][))([])]()(]]])])(())(]][)])(]()][)(()]]((](]()([)([]])(([[(]][(([(]])((][([(])[]()([((]](([]])[[(](]]]]))(](()][(][)[([]](])[()[[(]]()[])]([[()][[)][])][])))](]](())([)((]))]][([]((][]))[[(][))][)(([]]]([)[()]]([]])]])[[[([[[][[(([(](((([]))[]]](([([(]))(()[]([[)(][(()([]](([))()]([[](()(()[]]]])))((][])[[[[]((([([[][]][][])][][(([[](([[[((]([))[)([()()[)(])](]](]]])([(([(]])[][][([()[[)](][[)))[[([()(]])])[]([([ (([[[([[[((([[[([[((([([[([[((([([[[[((([([([([([(([[(((((([[[((([(([(([([((([((([((([([((([[(([(([[((((([[([([[([((([[[(([([[(([[[((([([(((([[(((([(([[[[[[[([(([[[((((([((([[(((([(([(((([[[(([((([([[((([([[(([(((((([[[[(([((([([([[((([[([(([[(((([((((([((((([([[[[[(([((([[(((((((([(([([([([[([([[[([([[(((([([(([[[[[[[[[(([[[((([(([[[([[[((([[([((([(((([[(((([[[[(([([((((((([(([[[(([([[[[([([(((([([[(([([[[([([[([([[[([[[(([(([([[(([([[((([([([(([[(([((([([[([([[([[(([([(([[[(([[[[([(((([[[([([(((([(([[(([[[[([[([([([([[[[(((((([([[[[([[([([[[(([[((([([[(([[(([[[[[[([[[[[[[[[[[[[([[[[([[[[([[((((((([(((([([[([(((([[(((([([([[([[[(([([[[([[((((([[(([((((([(([[(((([([([([[([[([[(([[(([((([[[[[([([[((([([[[[[[[[[[(([[(([([[[[[([(([[(((([[(([(([[(([([[(([[(([[([[[[([((((([[(((([[[((((([([([((([[[[[[[[([[[[[[[[((([([[([([[[(((([[[[[(([[(([([[(((((([[(([[[((((((([[([[[[[[((((([[(([((([([[([[[[((((((([([[(([((([[[[[[[[([([[(([[(([[[([([[((([[([[(((([[([([[[[[[[((([[[([([([([(([(([[[([[((([[([(([(([[[[([(([[[[(((([[(([((([[(([[[(([([(([[[[(([(([[[[([([(((([[[[([((([[[(((([[[(((([[[([([[([[([[([[([[[([[([[[([[(([(([([[[[[[[[[[[[([([[[[[((([([[[([[[[((((([(([[[(((([[[([([[[[((([[[((([((((((([([[[[([[((([([([(([[[([([([([([([[((([[[([[[[[[([[[([([[(([([[[[([[([[[(([([((([([([(((([[(([((([([[((([(([([([[[((((((([[[[[[[([(([[([(([([(((((([[[((([[(([([((([((([[[[(((([[(((([[((([([[[[[[(((((([([([[([([((([([[[([[([[[([([([([[([([(([([(([[(([([[[([[([([[((([[[([[[([[(([([[(((([[[(([[(([(([([((([([[[[([((([[[[(([([[([([[[([[[[([(((([(([[[[[((([[[([(([([[(([[((([[(([[[[((([((([((([([[[[([[([(([([(((((([([([(([([((([[[([[[[[([(([[[(((([((([(([[(([[[(([[((([([([[(([[[((([[([[[[(((((([(([(([[([[[(((([([((([[[[[([[([([[([[[[([[(([[[[([([[(((([[[[[([[[[[[[([[[[(([[(([[[[([[[[([(([([[([((([[[[[(((([(([(([[[([[[[[((([[([[([[[([((([((([(((([([[(((((([(([((([(([[([[([(([(([(((((([([[([[[((((([[(((([((([(([[[([([([(([[([(([([((([([((([[([([([([[(([([[[(([([(([[([[[[(([([(([[[([[[[[[([(([([[[[(([([([([[[[([(([([(([[([[[(([((([[([(([[(([[(((([(([([[([((([[[[(([[(([[[(([([[([[([[[(((((([(([([((([[[(([[(([[(([[([([[((([[(([([[[([([(([[(([[(([([[[(([[[[[[[([(([(([[(((([([[([(((([[(([((([[[((([(((([[[[[[[((([([(([[([([(((([[([([(([[([[[([((([[[(((([[[[([[(([[[[[[((([([(([(([([[(([[(([(([([[[((((((([[[([(([(([[[[([[(([((([([[([([[[[[[((([([((([([[[([[[([[(([[[[(((([([([[(([[[([([[((([(([[(((([([([([[((([(([[(((([(([((((((([[([(([[[[[[[(([[[(([(([[[((([[[[((([(([[[[[[[(([[[([[[[[([[[[[([((((((([[[([[[([([([[[((([[[[([[(((([([[([[[[[([(((([[(([([[(((([(((([[(([[[(((([(([([[[((([[[(([[[[[(([[([([[((([[[([([([[([[[([([([[([[[[[[[((([[((([([([(((([(((([[[[([[(([([[((((([[([([[(([(([(((([((([(([((([[[([([[[[([[[((([[((([(((([([[[[((([((([([([[[[([[[(([[[([(([([([[[([(([[[[(([[([([[[[(([[([[([([([([((([[([[([[([(((([[[[([([(((([[([([[[[[([([([([([(([[[[([[[([[([(((([([[((([([(([[(([([[[[([([(([[[((([(([[(([[[([[([([[((([(((([[[([([(((([[([((([([[[[[(([((([[[(([[([[[[[([[([([([([(([([[([(([[[([([[[[[([[[(([[(((([[[(([((([[[(([([[[([([[([[[[[((([[[[[[[(([[[[[([[[[[([([(((([([([[([[([[[(((([(([[[[[(([(([[[(([[[[[([(((([[[[[([[(((([[[[[[([([[(([((([([[[([[(((([[[([(([([[[[[[([((([[[[(((([[[[([[[[[(([([((((([[([([[[[([(((((((([[(([([(([(([([((((((((([[[[[[(([((([[[[((([((([[(([([[(([([[(((([[[[[[[([[([[([[[(([[((((([[([(([[(([([[[([([((((([(([([[[[[[(([([[([([[[[([[[[[(([[[(([([([[[[[[[((((((([([[(((([([(([[(([[[[((((([[(((([([(([((([[([[[([[[[[[[([[([([[([(((([[((([([[[([([[([[(((((([((([[[([([((([[([([[[([(([((([([[[(([[[[[([(([[[[[([[[([[((((([([((((((([([(((([[[(([[[((([[[([((((([[[([[(([[([[[((([[(([[(([([[[((((([[[[[([(((([([[[[[[([([([(((([([([(([([[([[([([[[((([[([([[[([[[([[[((([((([[[((([[[[[[(((([[[(([[((([[[(([[([(([[(((([([([[(([[[[(((([(([([[[([(([((((([([(((([((([(([[([[[[[[[[[((([[(([[([[[([[[([(([[[([([([([[[[(([([([[((([[[([[[[[(([[(([[[(([(([[[([(((((((([[((([((([[([(([[[[([[[(([([(([[([[[[[(([([(([[[((([(([(([[([[(([(((([(([[(([([[[[[((((([((((([[((([([[([([(([[[([(([([([([([([[([[[[(([(((([([[[[[[(([[[((([[[((([(([[((((((((([[([(([((([(([[[(([[[[[[((((([(([(([(([[([[([[([[((([(([[([((([(([((([[[(([([([[((([[[(([[[[(([([([(([[([(((((([([(((([([([([([[[[[[[(([([[([[[[[((([[[([([([[[[[(([([(([([[([[[([([([((((((([((([((((([(([[[[[(((((((([([[([((([[[[[[[[[[[[((([[([([[([(([[[[([[(([(([[[([[((([(([([[((([([(((([[[(((((([([([[[[([([[[([((([(([(([[[[(([[[[(([([((([([(([([[[([[[(([(([[[[[[([([[([[(([[[([([[[[([[([[[(([((([([((([[[[([[(([(((((([(((((([[[[([[[(([((([[((([[((((([[[(([([([(([(([([((((([[[[[(([[[([[[(([[(([[([([([[(([[[(([[(([[[[[[(([(((([([[[[((((([([(([[([((([([[([(([[[[([[[[([[[([(([[[[(([[((([[([[(([[[([[([(((([[[([((([[(([[[(((([((([[([([([((((([(([[[[(([[[[[([[((((([[[((([((((([([[[([([[([[([((((((([([(([([[([[[[([(([([[[([(([[[([(([[[[[(([[[([[[[([([[[([[(([[([((((([([[([[([([([[(([[[(([[(([[(([((([([[((([[([[([[[(((([([[[[[[(([[((([[[[[([(([((([[([[([([[(([[[[([([[[([([[([((([(((([[[[((((([[(([[([(([([[([((([((([[[(([(([([[[([([(([[([[[(([[([[((([[([([((((([(([[[[[(((([[[((([([([[[(([[[(([(([[[([[[([(([([(([(([([[([([[[[[([([(([[[(([[[[(((([(([([[[([[[[([[((((([([[[[([(([[((((([[[((([(([((((([[(([[((([((([(([[[([(([(([(([[([[([[[[((((([(([[([[[(([[[(([(([([[(([([([[([[[([[[[([[[([[(([[[(([([[(([([((([[([[[([([([(([[(([(([[[[(([(([[(([([[(([([[((([[[(([([[((([([[[((([[[([((([[([[[[([([(((([[([([([[(((([[[(([(([[(((((([[([([([([([[((((([([([[[[[([([[[[([([(((((((((([((((([[([[([[(((([([([((([[([[[(((([((((((([[([([[[((([[([[((([[[(([(([[[([[((((([[[([[[([[([([[[[[(((([[(([[[([((([[[[([([((([[[[[((([[[([[([(([([[([((([(([([[[[[[[[[([([([((([[[[((([[((([[[[[[([(((([[[(((([((([(((([(([[[([([[[[([(((([(([([[((([[([[((([[[[[(((((([[([([[((([([(([[[[(([([([([[[[[[([[(([(([([[[[((([[([[([[[([([[(([[([[([[[([(([((([([([[[([[([[[([[[([[[[([[[[[([((([(([[[[[[[([[[(([[[([(((((([[(((([[([([[([[(([(([(([[[([[((((((([[(([[[([[(([[((([(([(([[([[[([[[[[([[[([((([[[([([([[[[[[[[[([([[(([[([((([([[([[[[[([[([([([([[[[([[[([[[([([([([[[([((((([[([([[([[[[(([[([([(([[[[[[[[([[[[[((((([[([[(([[(([[[([[((([([([[([((([(([[[([([[([[(([((([[(([[[([((([((([[[[[(((([[([[[[[([[[([[(([[[[[(((([[[(((([[([([([((([[[[[[([[[([[((([[([(([((([([[[[([(([(([([[(([[(([[(([(([([[([[[[[([[([([(((([([(((([[([[[([([[[(([([[(([[[((((((((((((((([[(((([([[[([[([[((([[[[[[[[([([([((([([[[[[(([[[[[[[[[[[([[[(((([([([[[((([(([((([(((((((([[[[[(([[([([[[((([[(([[(([(([([([((((([[((((((((([[[[[[[[([[((((([(((([[([(([[[((([([[[[([[[(((([[[[([([[[[([([[[([([(([([(([[(([[([((([([((((([([((([[[[(([(([[[([[(((((((([[[[(([((([[(([[([(([(([[[[[(([([([(([([(([[((([(([[[[([[((([((([[[[(((([([[(([[([[[((((([[[([[([([[((([([[[[(((((([([([[(([[((([[[[[([[[[[(([[(([([([[([([((([[[[[[(([[[[[[([(([((([[([([[[[[([[[[[(([[([([(([([(([[[(([([[[([([[((([[[[(([([[[[[[[([[[((([[(([([([([[[(((([(([([[[([([([[[([(([[(([[([([([[([[[([[[[[([([[[[([[([([(([[([[[([(([[(([[[[((((([[[((([[(([[[([[[[((([[([([[[[([[((((((([(([([([([[[([([([[(((([[[([[[([(([[(((([[(([[[([[((([[[(((([[(([(([[(([[([[(([((((([([[(([[[[((([(([((([[(([((([[(([((([[[[[[[([[[[([[[(([[[[[[[[([[([([[((((([[[[[((([[(([[([([([[[[[[(((((([[([[([((([((([(([[[[[[[[[(([[(([[(((((([[([[[[[(([((([[([[[((([([((([([((([[([([[[(((([[([[[([[[(((([[[(([(((((([[([[((([[[[((([([[[[[[([[[([[((((((((([([[[(([(([[([((((([[[(([((([(((([[(([[((([((((([[[((((([([([([([[[(([([(([([[[([(((([[(([([[[(([([(([([[[[([([([(([(([[(([([([[([((([[((([([[[[[[[((([([((((([(([([([[[([[[[([[[[[([[[([[[(([[(([[[([[([(((([([(((([([([(((([(([[(([(([((([[[[[([[([([[[(([((((([[(([[[[[[(((([(([[[([([([([(([[[[(([[([([((([[[([[([((([[(([(([[([[([[([[[[[[[((([(([[([[([[([([[[([([(([[[(([([[(((([[([((([([[[[[((((([[([([(((((((([([[((([[([[[((([[[([([[[(([[[(([[[([(([([[[([[[(([(((([([((([([[[[[([[[[[([[[[((([(((([[(([([([([([([(((([[[([([((((([(([[([([(([([[[[[((((((([[(([(([[[[[([([[[([([[([[[[[[(([([(([[([[[[((([(((([[[([[(([((([[[[([(((([[(((((((([[((((((((([[([([(([[[(([([[([(((([(((([[[[((([([((([([([[([(([([([[[[[[[[(([([(([[[[[(((((([[((([[[(([(([([[[[(([[([([[[[([[([[([((((((((([([[([[[[([(([([[([[(([[((([[[((([[([((([[[([((((([(((([((([((([[((([(([((((((([(([[[[(([[([(([[[([(((([[([[(([((((((([[[[([(([(([[[(((((([([[([[(([(([[((([[[[[[([(((((((((([((([[([[((([([[[[[((([[([[([([[((([([[[([([([[([[([[([((((((((((([[[([[(([(([(([([([[((([([[[([([[[[([[([[[[[([[[(((([((([([([(([(([(((((((([([((((([(([[([(((([[(([((([[[([(([[((([(([([([[[((([([([[([(([[((([[(([((([(((([[([[([([([[(((([[[[((([(((([[([([[(([([(([([((([(([[[[([[[([(([[[[[[([(([([([[[[[((([[((([([([((([([[((([((([([(([[[((([[(([[([[([([(((([[([(([(([[([[[[(([([([((([[(((([[[([((([[((([([[(([[[[[[([[[[([((([([[((([((([([[[[([((([([([(([[[[[([(([(([[[([(((([[[[[[[[[[[[[[((((([(((([((([([([([[[[(([[(([([([[[([(((([((([(([((((((([(((([[[[[[([[([[(([([[[([[([([(([[([[[[[[[(([[[([[([[(([[[(([[(((([[[[((([([[[[[(([([[[[[([(([[((((((([(((([(([[[([((([[(([[([([[[[([[([((([[(((([([[[(([([(([[[([([[(([(((((((((([([[[[[(([((([[[([(([([[[[([[([[[[(([(([([[[([[[[[((([[([[([((([[((([[([[([(([[[[(([[[[[[[(([([[(([([[[([[(([([[([([[([[[(([((([([([[([[[([[[([(([[[[[[[((([(((((([[[([(([[([[[([[[[[[(([(([[[(([[(([[([([([(([[([(([[[([([((((([(([(((((([(([[[[[[[[[[[[([((([[[(([[[[[[[(((([[[[(([(([[[[[([([[[([([((([((((([[([(([([[(([[(([((((([[(([((([((([[([[[((([[[([[(([([[[[(([([((((((((([[[[((([([[[([([([((([[[[(([[[[(([[[(([[[[[[[[[[[([([[([[[((((((([(((([[([[(([[(([((((([[(([[([(([([(((([((([([[([[([(([[[[((([([[[[(([([((([([([[(([[[([([([([([((([[(([([(([([[([[(([([[[(((([([((((((([(([([(([[[[((((([[([[([((((((([[[[(([[[[([(([[[((((([[[((([(([[[([((((([(([(([(([[((([([([([([[[([[[[[[[[[((([((([(([[(([([[[([(([[[([(([[([(((([[[[([[([([[[([([[([([[([[[[[[([[(([((([([[([[(([[([((([[([[[([[((((((((([(([(((((([[(((((((([[(((([(((([([([[[[(((([[[[([(([(([[[([([[((((([[[([[([[[[[([([[[[[(([[[[[[([[([([[((([([(([[[([[[([([[[((([(([([[[[([([([[[(([[((((([[([([[[(([((([[[([([([[[([[(([((([[[([[[[(([((([([[([[([[(((([(((((([[(((((([[(([[([([([[[(([((((([((([((((([(([(([([(([[(([([([(([[([[[((([[([([((([([([(([((([([(((([[[([[(([([(([[(((([([(([([(([(([(([([([(([[(((([(([([([(((([[[((([([(([[[([([[[[[[[([(([[[[[[[[[[[([((([[[[((([([(([[((((([(([[[[((([([([[[[[[[((([(([([[((([[[[([(([(([([([[(([([([(([[(([[[[[(((([((([([[[(([[[([[[([[[(([([[([[[[[((((([[((((([(([(([[([([[[([[((([(([[([(([[((((([[[(([[([[([[((([([[[((([([[(((((((((((([[[[([(([[(([([([[[[[(((([[[([(([([(([[([([([[[[(([[[[[[[(([[(((((([([[[[((([[[[([[([[[(((((([[(([[([[[((([[((([((((([[[[([((((([([(([([(([([[[[([(([(([((([(([[[[[[[[[((([[[[([[[([([[(((([[([(([[([(((([([((([([[[[([[[(([[([([([(([[([([[[([[(([(([((([[(([([[[[([[[[[[([([((([([[(([[[([[[((((([([[[[([(((((([[[[[([([[[[[(([[[(([((([[[[[[[(([(([[[[([[([[([[[([[([([(([([([[[[([([(([[[(((([[[(([([((([[[[[[(([(([(([(([[([([[[([([([[(((([([[[[[[(([([([([([[[[[(([[[[(([[[[([(([([[[(([[([[(([[[[((([([([((([(([([[([(([[[((((([([[([[([[(([([(([[[([([[(([(((([[[[[([[((([[([[((([[[[[([[[[((((([(([((([(([([[[([[[([([([([(([([[[[([[[((([([(([[([[(([[[[(((([([[([(([((((([([(([([(([[[([[([([(([[[[([([[(((([([[([([[[[(([[[[[((([[[(((([[[([([(([[([([[[((([([[(([[[(([[([[([([([(([[[[[((([[([[[[((([[[[([[([(((([[[[[((([([[(([([(([(([[([(([(((([[([([([[(((([[([[[[[([(([(([[[[([([[(([[[((([[([[[[(([(([[[((([([[([[[[[([[[([([((([[[([([((([([[([([([[((([[(((([(([(((([([(([[[([(([[[(([[[[([[([[[([[([((([[[((((([(([[([((([[([[[([[[[(([([[(([[([[([[((([([[([[[[[([(([(((([(([[[(([([([[[(((([[([[[(([[([((((([[[([[([[([[([([(((([[[(([[([[(([((([([([(([(([[([(([((([[([(([([([[(([[([([[((([([[([(((([([((([(([[(([([[[[([(([[[((((([[[([([((((((([[[([(([(([([([((((([[[[(([[[[(([[([[[((([[(([[([[[([(((((((([[[[((([([[([[([([(([(([(((([[[([[((((((([((([[[(([([[[[[[[[[([([[(((([([(([[[(([([(([[([[[([[([[[[((([[[[[(([(([(([[[(([[[[([[[[[[[[[(((([[(((((([(((([[[([[([([((([[[[([(([(([(((([([([(((([(([(((([[([[[[([([[(([((((((([[[(([[[[([[[((([(([(([[([[([(([[([[(([[([[[([((((([[[(([([[(((((([[[(([[[((([(([([([([([([([[[(((([[[[([[(((((([[(([[[[(([((([([((((([[[[((([((([((([([((([[(([(([([([([([[([(([[([[(((([([[([[[(([(([[([[[[(([([[[[[(([[[[[[[(((((((([(([([[((((([(([[([([[[[((([[(([[([[[(([([[([([(((((([([([[(((([(([(([[(([[[[[[(([((([([([[([[((([([[([([[([((((((([(([([([([[[[[[(([[(([[[[[[[[[(((((((([[[([[[[[([(([[[[([((([([[[[[[[(([([([((([[[([[([[[([(([[(((([([([(([[(([[(([[([([((((((([(((([[([[[([[[(((([[((([[((([([[([[[[(((((([[([(([((([(([([([((([((([[([[([[((([[((((([(((([([[((([[[(([([[([([(([([([[((((((((([[[((([[(([[[[[([([[[(([[[[(([[[[((([[(([[([(((([[(([[(([[(((([[[[[([[[[((([[[[([[(([(((([[([([((([[[[[[[(([(([((([[[(([([[([((((([([([[[(([((([[[((([[([[[((([[((((([([(([(((((((((([([([[[([([[([([([([(([[([((([(([[[((([(([(([(([[[[([[(([(((([([([[(([[[(([([[[[(([(((([([((([[[[[([([([[[(([[([([[((([[(((((((([((([[[((((([((([([[[[[[[[[([([((((([([(((((([([([[((([([[[(([[[((([(([[[([[[([[([((([[[[(([[([[(([(([[[([([[([[[[[[([[([(([[[[([[(((([[[([(([(([[([([((((([[([[[[([[[[([([[([[[((([((((([[[[([[([[[(([([[[([[[[[[[(([(([[([[([(([([[[[[[[(((([(([(([[(([[[(([[[[(([([[[(([((((([[[[[([(((((((([[(([([([(([((([((([(([[(([([(([(([(([([[([([[[[(((([[[[[(((([[[(([([([((((([([[[[([(([(([[[(((([[([[[[(((((([[[[[[[([[((([([[[([[[((([([(([[(([((((([([(([[([(([[[[[([([(([(([([[[[[([[(([((((([((([[(((([[([[[[[((([[[([[[[[[[([[[[(([((([([[[([[[([([([(([((([([([(([[[((([[((([(([(((([([[([([((([((((((([[[([[([[[([(((((([([((([[(((((([((([([([([((([[[[([[[(([([[[([[([[[((([([(([[(([[([[(([([[[[(([[[[[((((((([(([[(((([([[[[[([(([([[[[[([(([[([(([[(([(((((([(([(([[[([([[([([[[([([([([[([[(((([[((([[([(((([(((([(([[(([(([(([[(([([(((((([((([([[([[[[((([((((([((([[((([(([(([[([([[[(([((([[([((((([[((([((([(((((([([((([[[((([[[([(([([[([[[([[([([(([(([([[(([[([[[[([([[(([[[([[([(([[[((([((((([[([([[(([[([[((([([((((((([[[([[[(((([([[[[([[(([[([([[((((((([(((([[([((([([((([[[[[(((([((([((((([(([[((((([([([[[(((([([[[[([(([[([([[(([([[[([[([[([([[[[[[((((([[[[[[[([([([([[((([(((((([[[([[[[((((([([[(([([([[(([([([[[((([(((([[([([[((([[[([((((([([(([([(([[[((([[([[((([([[[[([[[([(([[[[((([(([[[[((([[(([[(([[([([([[((([[((((([(([[([([[[[([((([[([((([([[((([[[([(([([[(((([(((([([([[([[[[((([[[[[[[[(((([[[[[((((((([[[([(([[[(((([[((([(([([[(((([(((((([([[([[([([[((([[[[(([(((((([(([[((([([([([(([[[[[([[([([(((([[([([[[(([((([[([[[[[(([[[([[[[((([([[([([([((([[[[[([(([([(([((([((([[([[(([[[[[[[[[((((((([((([[[[(((([(([[([[[([[(((([[[[((([[((([([([([[([[[[[[[(([(([([[[[[([([[([[([([[([([[[(([([[[((([[[[(([([([[[[[[((([[[(([([(((([([([[([(([([[([[[[[(([[[[[[[([[(([[[[(([([([([(([[[[[([([[[[([[([([(([[[[[(((((([([(([[((((([((([([[([([([(([[[[(([(([[[[([([([([(([[[([([[[[[(([([([([[[(((([(([[[([[[[[((([([([(((([[[[[(([[[([[(([[([([[[([[((((([[[([(([[[([([[[[[([[([([[([([[[[[(([([([([([[[[(([[([(([[(([[[((([([[([(([[[[([[[[[[([(([((([(([[[[([([([((((((([((([([[(([([([[([([[((([((([([([[[([((([[[[([(([[[((((([[([[[[([(([(((((([[[[[[[([[(((([(([[[[(([([[[[[[([[[(([([[([(((((((((([([([[([([[[([([(([([([([((([([([[(([(([[[(([(([[([[[(([([[[[[[[([[(([([((((((((([([[[[[[[[([[[([[[([(([([([[[(([[(([[[([([[[[((((([([[(((([([[([([[([([([((((([[[(([[(([(([([(((([[[([(([[([[[[[[[([([([[[[([[[[[(([[[([[([([(([[([[([[[((([([([([[([([([(([([[[(((([[[(((([[([[[([[[(((([([[(((([((([([(([((([((([[(((([[([((([[((([(([[((([[[([[((([(([((([([(([[[[((([[([[(((([([(([(([([([(((([(([[[([[([([([([[[[[([[(((([[[([(((((([[[([[([[((([((([[[[(([([([((([((([([[[[((([[(([[(([(([[[([[[((([([[[[[[[([([([[(([([(([([[([([[[[(([(([[(([[([[(([[([((([[[[[(((([[([([([([[[[[([[(([([(((((([[[[[[[[[(((([(([([([[(([[(((((([([(([(([([[[[(([[[([((([((([[((([[([[[[([[([([((([[(([([([((([([[[[[([[(([[[[[(([[(([([(([((([[(([[(([[([((([[([(([([[[[([[((([([(((([([([[[((([[[([[[((([([((((((([[([[[[([([((([[[([[(((([[([[[(((([([[[[([[([[[[([([(([(([(([([[[[([((([[[[[(([([([(([(([[[[[(([((([(([((((([[[[[[[[(([[[([([(([[([([[([[([([(([[(([[(([[(((((((([[[[[[([[(([(([[[[([[((((((((([(([([[([([([((([(((([[[[[[(([[([([([[(([[([[(([[([((([((([((((([((((([[([[[[[[(([[([([[([[(((([[([([[(((((([([([((([[[(((([([[([(([[([[([([([((([[(([[([[[[(([[([((([(([[([[(([[[[[(((([([[[[[[[[[[[[[([[[((([[([(([([([([[([((([(([([[(([([(((([((([(((([[[(([[(([[((([([[[[((([(([[(([[[[(([(((((((([[[[[((([[([([[([(([[([[[[((((([(([((([([[[(((([([[[(([[(([(((([[[[[(((([([([(([([([([(([([([[[[[[(([([([([(((([([([[((([[([[((((((([[[(([(([[[[[[[[[[[(((([([[[(([[((([([[([[([[([((([[([[[((([([([[(([[([([[[([([[[[[[[[((([([((([(([([[(([((((([[(([[[[([[(((([[([(((((([([[[[([(((([[((([[[[[[[((([[([(((([[[[((([[([((((((([((([((([[([([([[([([([(([([[[(([(([([[[((([[(((([([([[((([([([[[([[([(([((([([[[(([((([(([[[[(((([[[((([(([[([[[[([(([([(([[[(([([([[([([[[[(([([((([[[([[((([[((([([([((([[(((((([[[[((([(([([([[(([[[((((([[[[([[(((([([([([[((([[(((([[([[[((([([(([([((([[([[([[([([[[([[(([[([[[(([(([[(([[[(([[(((([[[[[[(([[([[((([([([[[[[[([([[((([([[[(([((([[[([([(([(([[(((([((((([[([[[(((((([[[([[[([(([[(([([[(((([((([[[[[(([([[([(([[(([([([(([([[([[[[(([[[([[[[[([([([[([[([[[(([((([[[(([([(([([([[((([[[(([([(((((([(((([([[[(([([([([([(([[(([(([(([[[([([[[[((([[[(([[([((((([([([[[[(([([([(([((((([(((([[[([[([[[([(([((([([([(([(([(([(([[[[(([([(([(([[[[[([([[([([(([[([[([(((([([([([([[(([[[[[([[(((([([[[([([([([((([[([([(([([([(([[([[([[(([([(((([([[([[([[([[([(([[([[(([(((([[[([([[(([[(([[[[(([([[[[[[[([([([(([[(([((([[([(((([[[(([([([([([[[[[[[[[([([[[(([[[([[[[[[[[[[(([(([[([[[([(([[([([(((([[(([[(([[([([([([([([[(([[(([([([((([[([[[([([[[[((((([[(([[[(((([((([[([([[[[[[[[([([((((((([[[([([[((((([[[[[[([(((([[[[([[[[(((([([[((([[[[[[[[[(([(([((((([(([[((([([((([[[(([[([[(((((([[[([(([[[[([(([([[((([[((([([((([[[((((([([[[[[([(([((([[[([([(([[[[[([([(([([[[([((([([((([[([[[[[([(([[([[[[[(([(([((([[([(((([(([[[[[[(((([[((((((((([[((([([([(([([([([([[[[[([[(((([[([[([[([(([[[[[[(([[([[[[([(((([([([([[([(([[([([([([([([[(((([[(((([([[[([[((([[([((((([([[((([[(([[([[(((([(((((([[([[[([(([[[([([(((([[((([[[([(([(((((([([[(((([[(([([((([[[((([([[[[[[[[[([([[((((([(([([[([([[[[[([((([((((([((((([([[[((((((([[(((([([[([([(([[([([((([[([([[[[[[[([[[(([([[[[[([(([(([([(([([([[((((([[[([[[[[[[[[([((([[([([[(([[([[[([[(([(([([[[([[([[[[[([(([[[[[((([(([[(([[[(([[[([(((((([[(([[([([[[([((((((([[[([([[[[[[[([([(([(([([[([(([[([[[((([(([[([[((([[[([(([[[([([[[[(((([(([(((((((([([((([([[[[[(([([([[(([(([[[(([[(([([((([[[([((([[(([[(((([[[[[(((([((([[[([([([[([(([((([[(([[([[(((((([[([([[((((([(([[[[[(([[[((([((([[((([(((((((([[[[([(([[[([((([([([[([[[[[[(([((([[[([([((((([[(([[(([[[([((([[([[([[([[(([((([(([([[[[([[([[[(([([([[([([[[([(([([([([([(((((((([[[(((([(([(((([[[((([(([((([((([[[([[[[[[[((([[(([((([[[[(([([(([[[([[(([[([[[([[(((((([(([(([[((([[[([[([([([[([[((((([[[([(((((([(([[((([(((([[[[([(((([([(([[[(([((((([[[([(([([([[((([([[[(([[([([[([[(([(([((([[([[([[((([([((([(([(([([([(((([([([([(([([[([([(([[[(([[[[[([[((([([(([((([(([(((([([([(([(([([((([[[([[[[([[([[((([[([[[[([[((([([([[((((([(([[[[(([[(((([([([([[([([([[(([([[([[[[(([[(((((([[[([([((((([[[([[((([[[[(([[[(([[(((([[([[((([([([((((([(((([[(([[((([(([([([(([[(([([[[[([((([(([(([(([[([(([([[((([(([(([([[[[[[([([([[([(([([(([([((([([[[[([([[([[([([((([[(([([[[([[[([[((([[(([([[[[[([((([[((([([[[([[([[[[(([(((([([((([[([(([[([([([(([[[([[[((([[([((([(([[([(([(([[(([[[[[([[(([([[(([[[([[([[[((([([[[[(([(([([[[([((([([[[((((([((((([((([[((([[([[(((([(([(((([([([[[[[[([([[([[([([[([(([(([(((([[[(((((((([(([[((([[([[[((([[[[([((([[([([[[[[(([[[[([[([(([(([[[(((([[[[[(([[([([(((([(((((([[(([([[((((([([[([((([[[[(([(([[([([(([[([[(((([([((([(([[[([([([(([[((([(([([((([[(([([(([[[([([([[([[[[(([[([(([[(([[([[(([[[([([[((((((([(([(((([[((((((((([([[[[[[[[[[[[[[[[[([[[([[([[[((([([[(((((([[([(([[[([[(([(([[[(([((([[([[(([([[[((([[(((([[[[[([(([[([(((((([([[([[(([[([([((((([[(([((([([([([[([[([([([(([([[[([([(([(([[[(([(([[[[[([([[[[(((([([[(([[((([([[(([((((([((((([[[[[[([[[[([[[([[(([[[([[[[((([([([[[[((([[[((([[[([[[([(([[(([[((([[(((([([((([([(([([([(((([([(([(([([(([[[[([(([[[[[([((([((([[[(([[([[[[(([(([([[(([[[[([([([[((((([[((([([([[[(([(([[((((([[[[[[[[((([([([([((([(((((([([([[[[([[[[([(((([[[[[((([[(([([(((([([([(([[[(([[([([[(([[[([([[[[(([[[([(([[[[[[[[[([([([([([[[([([([[(((([((([[[[([([([[[((([((([[[[([([([(([[(([([[(([[[([[([[[[(([(([[[([[[[[(([[[([([(([[[[[[[(([([((([(([[([[([([([((([([((((((([([((([[[[[[[(([[([([([(([(([(((((([[([[([[(((([([([([[([[(((([([([(([[([[[[[(((([([([([(([[[[[([[[([[[[([(([[[[[(([[[((((([(([([[[(([[(((([[([[((([(([([[[[[[[[((([[(((((([(([([([[[[([[([[([[[(((([[([([[[[[[(([((([[[[[[([([((((([([[[([[[[[([[([[[[([[([[([([([(((([[((([[[[(([([([[[[[([[([((((([[[[[[[[(([((([(([([([[[[[[([(([([([(([([([[((([([(([[[[((([(([([[[[([[([[(([[(([[[[([([[([([([[[[((([(([(((([[[([([([[[[((((([(([[([[(([(([[[([(([[((([([[((((([[([[((([(((([((([[(([([[[[[[[([[[([[[[([(([[[([[(([(([[([([([[([((([([(([[[([((([[[((([[[[[([((([[((([(((([(([[([[(([([(([[[[([[(([([[([(((([[((((([[(((((([[[((((([[([[[([((((([((([([([([(([(([[[([((([[(([[([[[([([[[[(([(((([([([[([([((([((([([[[([((((([([(([([[[[((([[((((([[[((([[((([[[[[([([[[[[(([[(([[[((([((((([((([((([(((([([(([[([[([([[([((([[(([([[[[(([((((((([(([([(((([[[([[[(([[[[[[(([((([(([[[[([(([[[([([([[([([[[((([[([[([[[[[[[(([(([[((((((([(([([[[[[[([([[(([([([(((([[([(((([[(([[[[(([(([(([([[([[(((([(((([([[[[([(([[[(((([[[(((([([[([([[(((([[([(([[[(([(([[[[[(((((([([(((([[([(([(([(([((([((([((([[([[[((([(([[([(([(([[[[[[[[([[([[[([[[[[([[[([[([([[[[(([(([[([([[[[([(([([[[((((((([(((([([(([[(([[[[[[([[[[[[([[([(([([[([[([([([([(([[[[[(([([([([[([[((([((([((((([[(([([([[([[([[(((([([(([[[[[([([[([([([[(([(((([(((([[[[((([([((((([([(([[[[[([(([[(([([[([[(([[([(([[([([(((([[[[(([(([[(((([([(([[(([([[([([([([[([((((([[([[([(([[[([[([[([([[[[(([((([[([[(((([([(([[[(([([[[[((([[([(([[[(([[(([([[([[((([[[[[([[(((([[[(([([[[(([(([[[[[[[([([([(((((([[[[([[[[([((((([[(([[([((([[[([[[[[[[[[((([(([[(([([((([[[[[(([([[((([((([(([[(([[((([([[[[(([(([(([((((([[(((([[[([([((((([[[([([([([[((([[[(([(((([([[([[[[[[([(([([([[([[[(((([[([(([((([[([[([([((([([([([[([([[([([[[[(([([[[([([(((([([[([(([[[[(([([[[([([([[[([[((((([([[(([[[((([((([[((([([[([[[([((([((((([([([[[[[([[[(([[([(([[(([(([[(([((((([[[[([[((((([[[(((([[([[([[(((([[[[(([([([(((((([((((([[[([(([[[([(([[[([[[([[[[(((((([([[(([[((([([([[([[[(([[[(([[([(([[((([([[(((([[([[([((((([([[[[((((([((([(([[[[[(([[((([(([((([[[[([([[((([((([[[[[(((([[((([[([[([([((((([(([[[(((((([[[([[([([(([[(([[([((([((([((([(([((([[[(([[([([[(([(([[[[[[(((([[((([((([[([([((([[([([((([((([([([([[((((([[([[(((((([[(([(((((([(((((([[([(([[[[(([(([([[[[([((([[[[((((((([[[[([[[([[[[([[(((([(((([[([([(((([[[[[((([[[([[((([([[[([[((((([(([((((((((((([[[([(([((([[[[[([([((([[([((([([([[(([[([[[(((([([[(([([[([[((([[([(((([[[[[[[[[[([[(([(([((([[([[([(((((([((((((([[[([(([((([([[([(([[[([[(([([([[[([[(((([([[([[[([[[((([([[[[[[((([((([[((((([([([(([[((([([([([(([(([(([(([([[(([([[[[(([[[[[[(([((([([[([[([(([(((((([[[[[([([[[[([(([[[([[([[(([([(([((([([([([((((([[([[[[([[[[([([([[([([((([[((([([([[[[(([((((([[(([(((([[([[[[[((([[([[[[[[[([([([[[[[[(([((([(([([[[([([[((((([(([((([((((((([[([((([[([[[[[[[((([(((([[([[((((([[([[(([[((((((((([[[[(([[[[[[[(([((([[[[[[(((([(([[((([[(([[[([((((((([[([(([(((((((([[[(((([[([(([([([[(((([([([[(([((([([([(([(([[[([([((([([[(([[[([[[([[(([[([([([[([((([([(((([[((((([([[[(((((([((([[(([[[[(([[([[(([(([([[[[[([([[((([([(([[[[([[((([[[[[([[[(([([[[([([[(((([[([(([(([[(((((([([[[((([((([[[[[((([[(([[(([[[(([([[[[[[(((([(([[[[(([(([[([[((((([([([([(([[((([[(([([([([[[[([((([[(([((([([[([[(([[([(((([[(([[[[([([([[[[[((([((([[([([([[([[(([[[(([[[[((((([((([[[((([(((([[([(([[[[((([[(([([((([((([[[([[[([([(((([(((([[(([(((([([(([(((([(([([[[((([([[((((([[[(((([((([(([(([[[[[[[(([(((((([([[(((((([[[[[(((([([(([[[([(([([[(([(([[((([[([[(((((([([((([([[([[([([([[([[[([[[[[[(((([(((((((([[[([([((([([[([((((((([(([([[([([[(((([(((([([(([[([([[[[((([([[(([(([[((([[(([([(([[[((([[[[[(([([[((([[[([[[(([((([[[([((((([([[([(([([([([(([([[[[(([[([[([[[([([([[(((([([[[([(((((([[([(([(([[([[([[[[(([([[((((([[[([(([[(((([([([[[([([(((([[(((([([(([[[([([(((([[(([([[[([((([[[(([[[([([[(([([[([[[(((([[[(([([((([(([[([[([([([([[((([((([([((([[[[[[[[[[([(((([(([[[[[(([[(([(((((((([[[([[([[[([[[([[[[[[([[(([([[((((((([((((([[[([[([[[[[((([[([([([[((((([[((([(([(([[(([[(((([[((([[[(([[[[(((((([([([([[([[[[[[([[[[([[([[((((([(((([((([[[(([([([[(([[[(([[([([[[[[(([(((((([[([(([[([([[[[(((([[[([[([([([((([([[(([([([(((([[((([[[[([(([[([((([[(((([([[(([((([[[[[[[([(([(((([[[[([(((([([[([(([[([((([([[([[(([((([([([[[([([[([([[[[([[[[(((([[[[([[[[[[[([[((([[([([([(([([[[[([[(([((([[[([[([([((([[([[[[[([([[[([((([([[(([([((([([[([([[(([[((((([[[[([[[[([([[(((([([[[((([(([((([[[[[((([([[[[[[([([[[[[[(([([[([((((([[[[([([[[(((([(([[([[[([([([[([[([[([(([[[[([[[(([[(([([[(([[[([[((([([([(((((([((([([[[[([([(([(([[([[(((((((((((([[([(([[[[[([(([([[([([(([[((([[[(([[[(([([[([([([((([([[([([[[[([[(([(([([([((((([(([(([([[(([([[([((([((([((([[([([([[((((([([[([[[[(((((([[([([[[((([[([([[[([[[[[(((([[((([[([[([[[[[(([[([[((([(([(([(([[(([([(([([(((([[([[[(([[(([([([([([[((([(([([((([(((([([[[[([((([[[([[[[((([[(([[[((([[([(((([([([((((([([([[((([([([(([[[[(([((([((([[([(([[[[[[[[([((([([([([(([[([[([([[([([([[((([((((((([((([[((([(((((((((((((([[[([([[[[(([[([((([[[[([((([[([[[([((([[[(((((([[([[[([[[[[([[(([([(([[([([(([[((([((([([(([[([([([([((([([[[[[([([([([(([[([[[[[[(([([((([([[[[([([([([([[[([[[(([([[[[[[[[[(([[([((([([(([([([((((([([[[([(([[[[([[(([[[[([[[(([(([[([[[[[([((([[[((([[[[[([[[(([(([[[[(((((([[([([[(([[[[(([(((([[[[(([(([[([(([([[[([[((([[(((((([([[(((([[([([((([[(([[[((([([(([([[[[(([((((([[[[((([[[[([[([(([(([[(([([((((([[[[[[[[[[[[[[([[([[[[(([([[(([[[[[([([([(([[[[([[([[[([(((([[([[([((([[[[[[[([([[((((([(([[([([[(([[(([[[([[([(([[([([[[((([[[((([([[(([([(([(([((((([[((([([[((((([([([[[[([((([[((((([([([([[(([[(([([[[([[([[[[[([[[([[([(([[([(((([[([(([([([[[(([[([([[(([(([(((([[([[((([[[[([[[[[[((([([[([[[((([(([[[[[[[([(([([([([([[[[([[[((([[[((([([[[([[((([[([[([([[([([[([((((((([[[[[[[(([[([([([[(((([[([[([[[[(([[[[[([[([([[[[(((([[[[[[[((([(([(([(([(([[((([((([[[[[[[([[[[(([[[[[((([[((([[[([[([([((([[[([[([([([[((([[[([[[[([([((((([[(((([(([[[([[[[([([[((((([[([([([(([([([(([[[[([([([[([[([[[[[(([([[[([(([[[(([((([(([[[[(((([(((((((([[(((([([[[[((([[[[[(([[(([[([[[[[[([[[[[([(((([[([[([(([(((([[(([[[[([([(([(([[([[[(([(([[[[([([(([[[([([[[[(([[[[([[[(([[[[([[(([([([[([[[[((([[([(([([([[[[((([([[[[(([(([([(([[(([[(([([[([(([[([[[[[([([([((([((([[[[(((([([(([([((([[[[([[([([[((([[((((([[[[[(((([((((([[[[[((([[[(((([((([(([[[([[[(((((([[([[[[((([[[(([[[[[[[([[([(([((([[[[((([[[[[[([(((([((([[[(([[(((([([(([[[[((((([[[([[(([[([([[[((([[[[[[[((((([([[([([((([[((([[([[(([(((((([[[[[([[[((([(([((([[[[(([(((((([(((((([([[(([([[(([[([[((((([[[([(([([([[([[(([[[([[(([([((([((((([(([[[[[(([[([[([(([[([[([[[([[([[[(([[[[[([[(([(([[[[[[(([((([([[[(([(([[[([([([[(((([[([((([[[[(([[(((([[([(((([[[[[([([(([(([[((([(([([[[(([[(([[((([([([((((([((((((([([[(([[(([[(([[(([([[[([((([((((([[([[(([([[([[([([(([([[(((([[[((((([([[([([[(([([[[([([[([[[([([[(([[(([[[[([(((([((([[[[[([([[([(((([[[((([[([([(((([([([([[[[[(([[[([([([[(([(([(([([(((([([[[[([((((([[(([[[(([(((([[([(([[(((([([([(((((((((((([[((([([(([((([([[([([[[[([([[[(([([(((([(([[([([[[(([[([([((([[((((([([[[([(((([([((([(((((([[[[[([([(([(((([([(([([([[([[[[((([[([[[[[[([[[([[[[([((([([((([[([([([[[([[[(([[((((([[[[([[(([[[[([(((((([[[[((((([((([(([[([(((((([(([[([([([([[[[([[[[[[[[[[[[[[([([[((((([[(([([[((([[[([([[[[([[[[(([[([[(([((([([(([([[[[(([[([(([(([[[([[((((([(([[([(([(([[(((([([[[(((([[(((([[[[([[[[([[[[((([([((((((([[([[([[(([[(([[([[[[([(((([(([[[([((((((((([(([[(([[([([([[(([([(([((([(([([[((([[(([(((([((([[((([[[[([([[[([[[[[[([[([[([(((([[([[[[[([[[[[([[[[[[(((((([(((([[[([[[[[[([([[[[[[(((([(([[([[((([[[([[[[[[(([([[[[[(((((([((([[(([(([[(([[[[([[[((([(((([((([((([(([([[([([([[[[[(([([([[([[[([[([([[[[([([[(((([[[([[(([[[[([[([[[(((([[(([[([([([([([([[[[([([(([([([(([[[[((((([(((([[[[((([([[[([(((([[[(([[[([[[(([((([[[(([[[(([[[(([[([[[[(([((([[((((([(([(([[[(([([((([[[([(([[([[(([[(([[[[[(((([[([(([[[(((((([[[([[(([[[([([([[([[([[[[[((([([[([[([[([((([(([[[([[([[[(([[([([[([([(([[[[[(((([[(([[([[[(((((([[[[([([[([(([[([((([[[[([((([(([([([[([[[([[[[(((((([([([([((([(([[[[[([([([[[[(([((([[[[[[((((([[[(([([([[([[([[([([([([[((([(((([[[(([([((([[([([(([(([((((([([((([[[([[[[[([[((((((([[[([[[([([([[[([([([[[[(([[[[[([(([[([[((((((([[([[[[[([(([[[[[[(([[[[[((([(([[((([[[([[[((([[[(([(([(([([[(((([(([((([((((([([(([([[([[([[(([([(([[((((([([[[((([[[[[[([[((([[[(([[[([(([[([((([([(([((([((([((([[[[([[([([(((([([([(([[[([[[[(([[[[[([([[([(([[[([[(([(([([((([(((([[([[(([[([[[[([([[((([(((([([([[[[[([([[[(((((([((([[([(((([[[((([[(([([[[(([[((([(([[[([[((([([[[[[([([((([[([[([(((([[([([[[((((([([(([([[[((((([([[(([((([(([[([[[[[((([[[[(([[[[[[(((([[(([([([(([[[[(([[([([((((([[[([[[[[[[[[([[[[([[[[(([([[((([(((([[[((([[((((([[[[(([[([([[([[[[((([(((([((([((((([((([[(([([[[[(([([(([((([[[((([((([[[[([[(([([((([([([((([([([[((([([([[[[[[[((((((([([((((([(([[(([(([(([[((((((((([[([((([[([((((([([[[[[[(([[([[((((([([([[([[[(((([((([[[([([[([(([([(([[([(([(([[[(((((((((([[[([[((((([([([[[[[([([[[([(([(([[[([([([[[([((([([[([[((([([[[(([((([[[(([[[([[[[(([[[[[[([[[[([[(([([[(([(([([((([([[[(([(((((([([(((([([([(([[[[[([(([[[[(((([([[[[([(((([([([((((([[[((([([([([([([((((([[([([((([((([([[([([[[[[[[[[(([[(([[(([(([([((([([([([([[[[(((([([([(([([[([[((([([([[(([([(((((([[[[([((([(((((([(([[[[([[([[[[[([[((((([([([([[[([[[[([([([[[[([([((([[([[([([([[((((([((([([((([[[([[[([[[[[[[[([((((([((([(([(([[[[[[(((([[(([([[[[(([(((((([[[((([[[(((([[[[[(([[(([[[((([[[(([(([[((((([[((([[[[([[(((([[([[(([[[[([(([(((([([([[(([[[(([([(((((((((([[[[([[([([(((([[[[[[[[(([[(((((([(([((([(([[[[([([[([([[(([[[(([([[(((((([[([([(((([(([((((([(([(([[(([[[[[[([((((([[([[([([[([[[[([[((([[([((([[[([[(([((((([[([[((([([[[[[([[[([[[[[([((([[([[([[[[([(([((([((([((((([[[(([[([((([(((([([[[(((((([[[([[(([[((((([([[[[([([[(([([[([[[(([[[([((([[[[([(([[[[([([[[[((([([[[(([([[[(([[([[(((([([([(([[[[[(([((([[(([((([[[((((([[([(([([[[([[[([(([[[([([([([[[([[(([([([(((([([[[[(((([(([[((([([[(((([[([([[[[[[[[[[[(((([[[[[(([[([([[(([(([[[((([[[([(([([(((([[[(((((([(([(([(([([[([[[(([[[[(([[[([[(([([(([[(([[(([[[[[((([((([[([[(((([[[([([[[[[[[([[[[[([(([[([(([([([(([((([[([(([[[(([[([[[(([(([[([(([[[([(([[[[(([[[(([([[[[([([[((([[(([([[[((((([(([[[[((((([([[(([[[([([[[(([(([([(([[([((((([([(([[[[[([[([(([[([[[([(([[([[[[[(((([([[[([[([[[(([((([([([([[[([[[([[(((([((([[[((((([[([[[[(([[([[(([([[[[[[((([([[((((([(((((([[[[[[[((([[([[[([[[(([([([((([(([[[[([(([[[[[([([([([((((((([([(((([([([(([([[((([([(([((((((([[[([[([[[([([([[[[(([[(([[((([[(([[([[[([([((([[[[([[(((([[([([([[(([[[[(([[[([([[[([[[[([[(((([[([[([([(([([[((([(([[[[[[[[[([(([[([([(((([[[[[[([(([([[((([[(([([([(([([((([((([[[(((([[[((((([[[[[([((([((([(([[(([[[[[[[[([[[([(([(((([[([[([(((([([([(((([[(([((((([([([[[([([[[(([[[[([[[(([[([[[[[[([[(([[[[(((([(([([(([((([(((([([(([([[[[([[[[([[([([[(([([[[[([([([([[[(([[(([[([[([(([(((([([[[([(((([([[([[[[([[[(([[(([[(([(([[[([[[((([[([([[([((([([([([([[([([([((([[(([([([[([[([(([[([([[([(([[[[([(((((([([(([((([[[([[([((([([(([[[(([([[[((([[[[[([([[([([[([[[([((((([[[(([((([([(((([[[([(([([[(([[([(([(([[[((([(([(([[([([(([([[((([([[((([([(([[([[([[[[[((((((((([[((([[([([([((([[([([(([([[([([[[[[[[[[[(([[([((([(([[(([[([(([[[([[([[(((([([[[(([[([([[([(([[((([(([[[(([[[(((((([[[[((([[[[(((([[[[([([([([[[[([[[(((([[[(([[[((([[[[[((([[[(([([((([([[(([([[[[([[([([[(([((((([[(((([[[[[[[[[[[[[[(([[[(([[[[([(((([[[[([(([(([[[([[[([[(([((([[((((([(((([[[([[[[[[[([[([[([(((([(([[(([(([(((([([(([(([[([([([([([([[([([[((([[[([([[([[[((((([((((([[([((([([[([([([([([[([([([([[[((([[[[[[[(([[(((([[[((([(([(([[[(((([([[([[([[[[[[((((([((([([[([(([[[(([((((([[[((([(([((([[([[((([[[([([([[[[[[[(((([([((([(([([[[[[((((([([(((([[(([([[[[(([([[(([((([(([([([[(([[[[[(((((([[[[[([[[(((([[([[[([[([(((([[[(((((([([((([[[(([(([[([([[[[(([[[[([(((([[(([([(((([[([[((((([([[[([[((([[([[[((([(([[[([(((([(([([([([((([([((([[[((([(([([[[(((([([((([([([([[[([[[([(([[[((((([[[[(([([[[[[[[[([([(([(((([((((([[(([(([[[(((([[(((((([[[(([[[[(([(((([[((([[[[[[(([([([[(([[[((([[[((([[[([[[((((([[[[((([([(([(([[[((([([(((((([([((([([((([(([([([((([[(([[[([[((([([((([[(([[[(([[[([[[[([[(([[[[[[[([([[((([[[[([[[[((([(([(([([([[[[(([[[([[[([[[(([([[[((([([([[([((([([[([[[[(([(([[[[[(([(([[[((((([[[([[[[(([([([[((((([[[[([([((((((((([[(([(((([[[((([([(([([[([[[[(((([[[[[((([(([([[([[(([([([([(((([[(([([([([[([(([[(([[(((((([([(([[([[(([[[[(([(([(([([([[[(([([([[([([[(([([(([(([(([([[([([(((([[[[(((([(((([((([[(([[[([[[[[(([([([[[(((([[[([((([[([[([(((([((([[(([((([([[[(((((([(([[([([(([[[[[[[([[(((((([[([[[([[[[((([((([[([(([[([([((((((((([(((((((([[[([[[[((([[[[[[([([([(([([[(((([((([[[[((([[[[([(((([[([([[(((([[[(([[([(([((([[[[([(([[[[((((((([(([[[(([([[([([([[[(([(([(([[([[[([[[[([[(([(([([((([[((([[([(([[[(([[[([((([(([([(((((([([[[[([[[([[[[([((([([(([([[[[((((((([[((([[([[(([((((([[([(([(([([[[(([([[[((([([[[[[[([(((((((([(((([[(([[([(((([([[[(((((((((([[([(([[(([[([(([[([((([(([((([[[[[(([([[((([([[([((([[(([[(([([[(([(((((([[(([([([[[[[[[[(([([([([([[[[([[[(([[[[((([([[[[(([[[([[[([([[[(([(((((([[(([[([[[[[(([([[[(([[([((((((([((([[([[([([([[([([([([[([([[[[[(([([[(([[(([([[[(([[[([([([(([[((((((([(([[([(((([(([((([(((([((([[([([[[(((([(([[(((([([[([[[(([[([([(([[([(((((([([([[([[(([([[([(([[[(((([[((((((([((([(([[(([(([[([[([[[[((((([[[[([[((([(((([[(([([(([([(([[(([[([(([(([(((([([[([([(((([(((([[([((([([(((([([(([[[[[(([[(((([([(([[(((([(([([[[[([(((([(([(([([[[[((([[(([[(([[((((([((([([[(([([[[(((([(([(([((([((([[[[[([(([[([[[((([[([[([[[([((([(((([[(((([([(([([([(([[[[[[[[[(((([([[([[[(([[[((([([[[[[[[([[[(([(((([[[[[(([[(([[[[(([[(((([([[[[([[([[(((([[[([(([[[((((([(((([(((([[[(([(([[(([(((([[([[(([[([[((([[[((([(([[([[[(([[[([(([([[[([[[(([[[(([([([(([[(([[(([[[(([(([(([([[((([[([([[[([([[[[[[[[[[[([([[(([(([((([[[((([[([[([((([[[((((([[[(((((([[[[([[([(([[[((([(((([[[(((((([[[[[[[[[((((((((([(([([([[[[([[(([[(([(([[[([([([[[[[[[[(((((([((([[(([([(((([[[[(([[([(((([[(((([(((([[(([([([([[([[([([[([[[(([([[(([(([[((([[[[([[((((((((([([([[[(([[((([(([[[[[[([([([[([[([([[([[([[(([[([[(((((((([([[(([(([[(((((([(((((([([[(([([[[[([[([((([[[[[([(([([([([([[[(([[(([[([([([[[(([[[((([[([(([[([[(([(([[[[([(([[((([[(([[([(([[[[(([[[[([(((([(([(((([([[(((([([[[[(([(([[(([[[((([[[((((((([([([(([((([[((((((([(((([[[(([[[([[[(([[[[[[[[([((([([(((([[([[[(([[[[(([[[[(([(([([([((([([[[[((([[([[[([(([[[(([[([[[([[([[[(([([([([[([([([[([([[(([(([([[[[(([[[[[(((([[(([[[([[([((([(([[(((((((([[[[[[([[(([([[[([[(([[[(([([([[(([[[([(((([(([[(((([([[[([[[(([([[[(([[[[[[(([[[[[(((([([(([[[[[(([[((([(([[[[(((((([[([([(((([([(((((((((((([[(([[[[(([[([([([[([[[((([[([([((([[[([(([[(([(([[(([[[[(([([[[([([[(([((((([[(([([[[(([[[[([[((((([[(([[[((([[((([[([[([[((([([[[[([([([([[(([([[[(([[[[[([[(([[([(([([[[([(([[(((([([([([((([([(([(([[([([(([([[([((([[[[([((([[(([[((([([(([[([[[(([([[([[(([[[[[([[(([(((([[([[(([[[((((([[([([([((([[([([[[([([[([[[[[([[(([([[[[[([([[[([[[[[[[[(((((([([((([([(((((((([(([[([(([(([((([[[(([[([([([(([([([(([([([([[[[[([[[[[[[[([[[[[((([[[[([((([([([[[[(([([([([([(([((([(([(((((((([[[((([[[[([[((([[[(([([[[[[[([([[[([[[[([((([[[(([([([(((((([[((([([[([([[((((((((([([(([[([([[[(([[(([[[(([[(((((([(([([[[((((([(([([[([((([[((([([[[(((([([[([[([([[[[[[[[[(([(([((((([[([[(([[((([([([([([[[[[([[[[(([[([(((([[[([(([([[[[[[[(([([(((((([(([([([[([([(([[([(((([[[[(((([[[((([([[[[(((([((([(([[[([(([((((((([[(((([[([([[[[[[[[([([[(([[(((([[[[([([[([[[[([(((([([(([([([[[[([[[((([[[([(([[[[[[([([((([[[([([[[((([[[[([([[[[([[([[[((([((([[([([([(((([(([[[[[(((([(([[[[[([[([([(([[[[[[[[([([[((([[([(([([([[[(([([[(([([[[[([[[[([((([([[[((([[([[((([[[[[(((([[(([(([[(([([[([([[[[(([[([[[([[[(([[[[[((([[[[(((([(([[[([([([[([[[[(([[[(([(([(([([([(([[([(([([[(([[[((([((([[([[[[[[(([[([([([[[([([([([[((([[(((((([(([[[[[[(([([[[(((((([[[[[((([(([[(([((([([((([([([([([[[((([[[((((([([(((([[[[[[[[(((((([[([([[[[[[[((([[(([[((([[(([[([[([(((((([(([[[((((([[[[[[[[(((([[[[[[([[([(([[([[(((([[(([([(((((([([[([[([[[[[(([(((([[([([(([[[[[([([[[(([([([([(([([[[[((((([([[(([(([[[[[([[(([([([([([[[[(([(([(([(([((([[(((([(([([([([[[((((([(([(((([[([([[[[([([(((([([([([((([[(([[((([[[([([(([([([(([([[([(((([[[[[((([[([(([(([[((([[[[([(([([[[((([[[[[[[[([([([([([(([(([((([[[[[([([([[([[((([(((([[([[[([[([[(((([((([(([[([((([(([[([[(([[([[([[[[(([([((([[(((([((([[([([[([(([[[[[([[[[((((((([[[([(([[([[[((((([[(([[(([[([[([(([([([[(((([(((([([([([[(([(([([((([([(([([[([([[[[([[([((((([(((([([(([(([[[[(((([[[(([[[[(([[[[[[[[[([[[([[(([[([([(([[(([([[([[([[(([([(([[[[((([[([([[[((((([[[[([[((([(((((([[[[[[[[(([([((([([[[[[[((([[([[[[((((([[(((([[[(([([[[(((([((([[((([[(([([[([(((((([[([([[([[(([[[[[[([[([[(([([[[(([((((([[(([[[([([(((([([[([[[([(([[[[[[[(([([((((([[([[(([((([[[([[[((([([[((([[([([([[([[(([[[[[([[((([((([([[((([[[[[[([[(([[([[[[[[[(([[[[[[([(((([(([((((([[(([[([[((([([[[([([[[[[(([(([(((((([[[(((((((([[([[([[([((((([((([[([[[[[([([([([([[[[[((([[(((((((((((([[([[[[[[[[((((([([([(((((([(([(([([((([[[[[[[((([[[[[[([[[[([((((([([((([[[(([((([([[([[[([(([([([((((([([((([([(([((([[([((((([(([([[([((((([([[([[[[[(([[[[([(((([((([((([[[[(([[([([([[[[[[[(([([[[([([[([([([([[[[[((([[[([[(([[[((([[(([([(([([([[[(([(([(([[[([[([((([[(([(((([[[(([(((([([[(([([((([(([([([[(([[([([[(([(([([((((([[([(((([(([(((([[([([[(([((([[[(([(([[((([(([[(((((([[[(([([([[(([[(((((([(([[[([([[(([(([(([(([((([[([[(([[[[([([[((((((((((([[([([[[([(([([[[([[[[[(((((((([[([([(([[[((([([[[(([[[[([([([(([(([[([(((([[((([[[([(((([((([[[[([[[[(([((([(((([[([([(([(([[[[[(((([((([[([((([([([(([([[((([[[(((([[[[[([[[[((([[[[((([[([[[[((([[[[(([(([[[(([(([([[(((([(([(([([[(((([[([([([(([([[(((([[[[([[(([[(([([(([([[[([[[([[[((((([[[[(((((([([([([[[((([[[[([(([[[(((((((((((([[([[[([[(([((([[([[(((([[[([(([[[(((([[[(([[(([(([[[[(([[[((([(([([(((([([(([([[[([[(([[(([([([([((((([(([[([[([((([[(((([([([[[[[[(([([([[([((([[(((((([((([[[(([(((([[([([([([([[(([((([[[[[([[([[([[([([([([[((([[(([[((([[[([[[[([[([((([[([((([[[(([[([[([[([[[[([((([(([[(([((([(([((([((((([[([[[([(((([([[[([([([(([([[([[[[[[[([[([([[[((([([[[(([((((([[(([[[[[([[[[[([([[[[[[((([[([([([([((([(([[(((([[([([[(((([(([[[[((([([((((((([((([[([(([(([[[[[[[[[[[[[([(([[[[[([([[(([[(([([[[([[([([([[((([[[([[[((([(([([(([([[[((([[[[[[[([[[([[[[[[([(([[[([[[[(([([(([[(((([[[([[([[((([(([((([[((([[[([[[(((((([[([[[([((([(([([([[[[([[[([[[([(((([([([[[[[([(([([[[[([[([([[[[([(((([(([[([([[[((((([([([([([([[[([(([[[[[[(([[(([[([[([[((((((((((([[([([[[([([(([([((([[((([[([([[[(((([[[(([[(([((([[(([((((([[[[([[[[([[(([(([(([([((([[((((([(((([[[([[[[[(([(([[[[([[[(((((([[(((((((([[((((([(([((([(([([([[[[([([([([([[([[(([[[([[([([([[[[([[[([[[[[[([[[[[([([(([((([(([([[([(([[((([[[([([[([[[[([[[[[(([([[(([([[([[[((((([[((((([[[[([[[[([(((((((((([((([((((([[((([[[(((([(([[[((([([[(([[[[[[[[([[([((([[[[[(([([[([[([[(([(([[[(([[(([([[([((([[[(([[[(((((([(([[((([[(([[(([[[([[(((([[([[[([[[[[((([([[[[[[(([[[[[((([([[(([[[((([[[(([(([[[[([[[(([([([((((((((((((([[[(([[([((([[(([(((([((((([(([([(([[([(([((([[(([[(([[[[([([[(([[(([[(([[[(([([[(([(([[[[(([([[[([([(([[[[[[[[[[[([[([[(([[[([[[[[(([([[[[[[[[[(([[[(((([[[([((((((([[[[[([[[((([((((((([[[([[((([[[([[[([[[([(([[[(([[([[[[[((((([(([(([((([((([(((([((((([[([((([[[[[([(([((([(((([[(([[(([[(([((([([((((([((([([((([[[([[[[([(((([[[(([[[[[(((((([[[[((((([([[[([[((((((((([(((([[(((((([[(([[([[[[[[([([((((([([[([((((([[[([[((([[((([[[[[([[((([[[([([[((([[[([[[[([([[[[(([[[[[[[((([(((([([(((([[[[[[([[[[(([(([[[[[[([[[((([((([([(([(((((([[[(([[([([([((([[(([([[(([[([[(([[(([(([[(([[[[([(([[[([([([([[[(([([([([(([[(([([[([[(([(([(([(([[[((([(((([[([[(([[(([[[([((([(((([[(([[([([(((((([[([([(([((((([[[[[(([[[[(([[[([((([((((((([([(([([[[[([([([[(([[(([((((([([([[([((([[[(([([[([([[[[[[[([[([(((([[((([[[(([([[[([[[[[[[([[([[([(([[[[(([[[((([[([(([[(((([[([[([([((((((([[[(([[((([[[[(([([[([[(([([([[([((([[[[[([[([[((([((([([[[[([[((((([[[(([([[(((([[([(([([[([[[[[[[(([[([([(([([[[[[([(([[(([([(([[[((([[[([[[([(([((([[((((([[[[([([[[((([[[([[([([(([(([[([(([([(((([[(([[(([(([([[(((([[[([([((([[(([[([[[[[[([[((((((([(([[([((([[[([([[([([[[((((((([([(((([[(([([([([[[[[[([[((([[[[([(((([[[([[[[(((((([[([([[([[([[[[((([((([(([[[([[[((([([([[(([[((([[([(([[[(([[([[[[([(([[([[[[[([((([[([[[[[[(((([([[([[[[([[[([[[[[[((([[(((((([[([([[[[[[[([(((([(([(((((([[((([([[[([[[([([[[([[([(([[([[(([[(([[((([[[([(([[[[((([(([(([[([(([([[[((([([([[([[(([[[[([(([[[((([[[([((([([[[(((([[([([[[([[([[([([[[[([[(([([(([((((([([([[[([[[((([[([[[([([[([[(((((([[([[((([[([((([[(((([(([[([(([([([[[[[[[([((([[(([[([((((([[([((([([[[([([([[((([[[([[([[((([[[((([[(((((([(([([(([[[([[([[[([[(([[(([([(((([[(([[[([([[([[([[([[([[[([([[[(([([[([[[(([(((([(([((((([[([[[((((((((([[([[([[[[([([[([[(((([([[([([(([([[([[[[[[[[[[([[[[((([([([[[(((((((([[[([((([([[([(((((([([[([[[([(((((([((((([[([[[(([[[[((([[([([[[([([[([[[((((((((((([([((([([([[[(((((([[([([[([[(([[[(([(([(((((([[[[(([([([([([[[[([[(([(([[[[([[[([((([[[([[([([[([[[[(([[(([[[([[([[[[(([([(((((([[([(([[([[([[(((((([(([((([((([[[(((([[(([[[([(([([([([(([[(([[[[((([[(([([[(([([([[([[[[[[[([[([([[([(((([[[[[([(([(([((([[[[(([((([[[[[[[[[[[([[[([([[(((([([[([([(([([[(([([[[[([([((([[[(([([((([(((([[[((((([([[[(([[(([([[([([(((((([[[([(([[([[([[([[[[[[(((([[(([[[[[(([[([[[[([[[((((((([[([[([([[(([[([[([[([([(([([[([[[(([[[[([[[(([[([([(([[[(([[([((([[((((([(((([[([[[[[[[(([([([[[[[[[[[[(([([[[[[[([[([((([((([([([([[[[[[[[((((([([[[[[([[[(((([[[[([[([[([([[([[[[([[[(((([([[(([[(((([[[([([([(([(((([[[[((([((([(([([(((([([([[((((([([(([((([[(([([[[[[[[(([[[(([[[[[[([((([([[(([(([[(((((([[[[[([([([[((((((((([(([(([[[([[[[((([(([[(([[[([[([[[([(([[([(([([[[[(([[[([[[[([([((([[[[(((((([([([[((((([([((([([[([[(([[([[([[[[([[[[[[[([([[[[[[([[[([[((((([(([([(([[[(((([[[([(([[((([([[([([[((((([(([[(([[[((([([[[([[(([[([((((([[((([[[[((([[[[(([[([[(([([[((((([(([([[((([[[(((((([(([[[[((([[[[[[[(((([([(([(([[(([((([([(([[([([(((([([([(((([([(((((([[(([[(((([(([([([[(((([(([([([([(([((((([[((([((([((([([[([(([[([(((([(([([[([((((([[(([[[[[([[[([[[(((([([[(((([[[[(([((([((([[([[(([([([[[[[[[(([([([[([[[[[[[(([([(([([[([[((([(([[(([[([(([(([(([[[([(([(([[(((([[(((([([([(([(([(([[(([[[[(([[(([([[[[(((([[([([[([[(([[[(([[[[[([(([[(([([([([(([([[[(((([[([[[(([([(([([[[([(((([((([[([[(([[(([(((([[([[([[[(((([[([[((([(([[[[([[((([[[([(([[((([[([([([([([((([[[[[[([[[[([[([[([[[[[[((((([(([((([[[([(([[([[([[(([[([([(([[([[(([(([[[[[[(([[(([[[[[[[((([((((((([(([[[([[((([(((((([[[((([[[([((((([([[((([[([([[[([([((((([[(([((([([[[[((([[(([[([(([[[([[[([(([[(([[([[([(([[([[(((([(([((([([[[((((([[[([((([([[[[((([[[[[(([[((((((((([[(((([[[[[([[([[[[[[[([((([[((([(([[([([[([[([([([([[([([(([([[[[([(((([((((([(([[[[[[[([[([[(([[(([(([(([[[[(([[((((([(((([[(([([[[([[[(((([((([([(((([([[(([[([[(([[[[([([[[((([[[[[[[(([[([([[[[[[[([(([(((([[[[(((([[(((([[[([[((([[((([(([[[[[(([((((([[[[[([[(([(([([[[[[((((([[[((((((([[((([([(((([[(([[(([[[[((([((((((([([[[[[[((([((([[[([[[[[[((((([[[([[([((([((([[(((([([[[[([[(([(([(((([[([(([([(([(((((([([[(([(((([([[([([([[[(([[(([([[[([([([[([[[[[(([([(([[([(((([[[[((([([((((((([[((([((([[([((([(([(([[([([((([(((([[[(([[[[((((([(((((([([(([[([([[[(([(([(([([(([[((([[((([[[([[([([[[[([((([[[[((([([([[[[[[([((([[[[[((((([((((([[[([([[[[[((([(((([[([[((([[(([[([[(([[[[[[[(([[[[(([([(((([([([[[(([[(([[(([[[(([[([[([[[[[[(([[([[[(([[(([[([[([[([([(([[[(((((((([[[[[([[[[([[(((([([[([([[[(([(([([[[([(([[[(([[([([[(((([([((([([((([[((([(([([[([[([(([[[(([[([((([[([(([([[[([[([[([([[([[[([(([((([[([((((([[([([([[([[[[[([[([[([[((([[[([(([([(((((((([([([((([[(([[((([([(((((([[([([[[([[(([[[(((([([([([[([[[[[[(((([[[([[(([[[[([([(((((([[(([[([(((((([((([[([(((((((((([[[[[[([[([([[[[[[(([[[(([(([([([(((([[(([([([[[[[[[[(([([[[[((([[(([([([((([[(((([[(((([(((([((([[[[[([([([[(([(([([([(([(([[(([[[[[(((([([[[[([[((((([((([[([[[(([(([(([[((((([[([[[((((((([((([(([[([[[((([([[(([[(([([([([[(([([(([((([(((((([([(([[[[[[([((((((([[((([(([[[[[[[((([(([[(([[[(([((([((([((([(([[(((([[(([((((([([[[((((([((([([([[([[[[(((([((([[[((([((([(([([[[([[[(((([[[[[[(([[([[[[(([[[((((([[[[[[([([([(([(([[(([[[[[([(([([([(([[[[[[[(([([((([[([[((((([([[[(([[[[[[([[([([[([[[([[[(((([[(((([((([[[(([[([[([[(([[([([((([[(((([[[(((([(([[(((((((((([[[(([[(((([((([[(([([([[[[(((([([[[([([[([([[[([([([((([(((([([((((([((([([[((([((((((([([[[([((([[([[[[[[([[((([[[[(([[([([(([(([[[(([[(([[(([[(([[([([([[[[[[[[[[[[[(([([[([([(([[(([(([[(((((([((([(([[[([[[[[([[(([[([(([[[[(([[[[(([[[([([(([([[[([(((((([[(((([([([(([([(([((([[([((([[[((([[(([[[((([[([[[((([[(((([[(((((([[([(((([[[([([((((((([[([[(([(((([(([((([[([[(((([([[[[[(([([(([(([([((([[([((((([[[[[([[([[[[[(([([[[(([([[[([[[(((([([([(((([[[(([[([([([[[([[[[((([[([(((([[[([[[(([([(([([(([(([[[(([(([[([(([(([(([(([[(((((((([[[([((((([[[(([[[(([[(([[(([([[[[[([([(([[([[[[(([[[[[[[((((([[([[[[[([[[[(((([(([[[[(((([[[(([(([([(([((([[([([[(([[(([[[[[([[([[([[[[(([((([([([[(([[(([[(([[[((([[[([(([(([([([(([([(([((([[(((((((([(([([[([[((([(([([[([(([[([([([([([[[[[[([[(((([([([([[([[(([([[([(([[[[[(([([[((([((([((([(([[[[(((((((((((((([([[(([[[(([([[([[[([[([[[([((((([(([[[[[[[[[[[([[[[[(([(([([[[([[[[[[([(([([((([[(((([[(([[[(([(([[[[([[[([[([[((((([[([[([[([[(([[[[([[[(([([(((((([[((((([[([(((([[(([((([[[([((([((([([((([[([(([[[([((([([[[([(([[[([[((([[(((([[(([[[(([([[((([([([[[([(((([[[([[[[[[[([([[[((([[[[[[(((([[[(([[[[(((((([(((([((([[[([[((([[(((((([[(((([([((([([(((([[((((([[([((([[([[([[[[(([[([([([[[(([((([[([[[([[([(((([((([([([(((((([([([[[([[([[([([(([((([[([(((((((([[([(((((([[([[[(((([[[([((([((([([((((([[[[(((([[((([[[((([([((([([([[[(([[([[([([[[[((([([[[[[((([[([[(((([((([((([[([((([[[[[(([([(((((((([[(([([[[[(([[(([[[[(([([(([([[(([([[(([([[[[([[(((([[[(((((((([((([(([[([((((((([((([[[([[[[([((([((([([[([[[((([[([(((([([([[[[[[((((((([[[(([[[[[([([[([[[([[[((([[(((([(([((([((([[[([([([[([([[[(([[[[([([([[([([[((([([[[(([((((([((([[([[[(([(((([([[[[(([(([[(([[((([((([(([[(([[([[([((([[[(((((([[(((([([[[([[[[[(((([(([(([([(([[((([[([[([[[[[[(([([[[(([([(((([[[[([([([([(([(((((([([[[([(([([(([([[([([[[[[[((([[[(([[((([[([([[[(((((([([[[[[([[[(([(([[([[([[([[[[(([([(([[[((([[(([([[(([([([((((([[[[[(([[[[([[[[(([([([[[[[[[([((([([(([[([[([([([([[([([([[[[(([[[([([[[([([(([([(((([[[[[[[[([([([[[([[[(([([((([[([(([[[[([([([[[[[((([(((([[[((([[[(([[[[[([([([([[[([[[[[[(([[[[[[(([[[[([[([([[([([((([[[([([([([[[[([((([([[[(((([[[[[([[[(((([[[[[([[([[((([([(([[[[[[([(([((([(((([([[((([[[[([(([((((((([[[(([[([(((([([[(([[[[[[([(((([[[[[([((([[(([([[[[[[[[[[((([[((([([(([([([(([[([([([(([([((([[[[[[[[[(([[[[((((([((([[(([((([[[[(((([(([[[[([([([([([(([((([([(([([((([([[[([[((([([([[[([([([[[([([([(([[[((([([([((([([([(([(((([[[[[[(([[[[([[([([(([([([(([[([[([([[(([[[[([[[(([((([(([((((((([[[([((([((([[[[(([[(([[(([((([[(([((((([[[((([(([[[[[[[[([[[[([[(((([[((([[((([[[(([(((([([((((([[(([(([[[[((([(((([[[[[[[(([((((((([((((([([((([[([[[([[(((((([[[(([([((([((((([(([[[[[[[([([([[((([(([([[[[[([((([[[[([[([([([((([([(([(([[[([[((((((([(((([(((((((((((((((([[[[([([([[[(((([[(([(([[[[[[([([([(((([[(([(([((((([([((([([(([[([[(([[[((([(([[[([[[([([[[([[(([((([([([[[([((([([([([((((([[(([(([(([([[[[([(([[([([((((([[[[[[([(((([[[((([([[[[[([([[[[([((([[(([(([(((((([[[([(([[([(([(([[([([(([(([([[([(([([([([[(([[[[([[([([[(([([(((([([[[[([[[[[[((([[[[([(([((([[[([((([[[(((((([(([[((((((((((([(([(((([(([(((([[[[([[[(((([[(([[[(((([[[((([([[(([(((([((([[(([[[[[([([[[[[([[[([[(([([([([[([([(([[[[[[[[[[(((((([[[[[[([[((((((([[([[([([((((([[([((((([[[[[[(([([[([(([([(((([([(([[[[[((((([[([((([([([[([([([[[([[[([[[(((([[[([[((([[((((((([[((([([[[[([[((([(([[[[[[([([(((([[([([([[[(([[([([(([([[(([[(([[([((([[((((([[((((([[([[[[[[[([(([[[[[[[((([(([[[[[(((([([[((((([(([((([[([[[[((((([[((([([[[[([([[([[[([([[([[[((([([(([([([[[((([(((([([[([([[[[((([([[(([[[[([[(([[[[[[[[[[(([[[[[[([[[[(((([[[[[[([(([[([[[[((([[[[[[[[([([[[[(([([[[([(([(((([(([([(((((([((([[([([(([(([([(([[[([(([([([[[(([[(((((([[[(([[((((([[([[((([[([[(([[[[[[([([[[([((([[(([(([((((([[[([([[(((((((([(([(([([[((((((([[(([[(((([(((([[[([(([[([([[(((([[((([[[(([([((([[([[(([[[[((([[([[[([[[[[([[(((([((([([[(([[([((([(((([([([[[((([[[([[[(([[(([[[([([([([(((([[[[[[[(((((([[[(([([[[((((([((([(([(([([(([[([[([([[([([([[[[([(([[(([[(([[([([[([[([((([((([([[[(([[((([([([[((([[[[[([([[([((([([([([([[(([((([((([(([[((((([(([(([(([[[[[[([[([[([([([((((([[([[[[[([([[[(([(([([([([((([((([([[([((([[[([([[[[(([([[([[([((((([[(([((([([[[([((([([[([([(([[([[([[([(([([([[[(((((([([[([((([([([[([[([(((([([[(([(([(([([((((([[([[[[([([((((((([([(([[[[([([((([[[[(((([((((((([[[(((([[(([((([[[([[(([((((((([[[(((((((((([[[([([[[[(([((([[[([[((([(([([([[[([[[([((([([([[[[[[[(([([([((([[(([[((([((([([[[([[([([[((([[((([((((([[([([(((([[(((([([[[[((([[(([[((([[[[[[([([(([((([[[[[[(([[([[(([([(([[([(([[([[(([[([(([[[[([((((([([[([[[[[([[([([[[([[(([((((((([([[[([([[[((((([(([([[[[[([[(([([([([([[[[[[([(([((([[[[[[(([(([[(([(([[([[[[(([([([([(([[[[[((([([[(([[[[(([[([[((([[([[[([([([([[[(([[(([(([[([[([((([([([[((([([(((([[[[[((((([[(([[([([[[(((([[(([[((((([[[[(([(([[[[((([([([[[[[([(([(([(([[[[([[([(((((((((([[[([([((([[[[[(((((([([[[[[[([[[[[[([[(([([[[([([[[[(([(([[([[(([[(((([(([(((([([[[[[[[[[(([[(([([([[(((([[(([[[([((((([[[(([[[[[([((([[[([([(([[[[[([((([((([[[(((((([(((((((((([[([([[[[[([[((([([(([([([[(([[[([[[([([[[([[[((([([(([((([((([(((([(([[[[(([([[([([[[[(([([[((([([[[([[[[([([(([([[[(((([[[(([[((((((((([[[(([([([([[[[((((([((([(([([[[([([([[((([[[[(([((((([[([[([(([[[((([[((([([[((([[(([([([[[(((([(([((([((([([[[[[[([[[([(((([([((([[[[[([((([[[[([([([[([([([(([[([([((([([[([[(([[(([(([((([([([[[([(([[([[[[[([([[[[[[([[(([[((((([(([([(([[[(([(([([([([([([[[(([[[[[[((((((((([([(((([[([[[([(([[((((((([([[(([(([([[[(([(((((([(([[([[[[([(((([([([([[([[([([(((((([[(((([(([[([([(([[([([((([(((([[[([[([((([[[[((((([((((((([[([[[[[([(([(([[([[[[[[[[[[[([((((((((((([[[([[[([[[[[(([((((([[(([[([(([(([([(([(([[[[(([[([(([[[[((([(([([[[([[(((((([((([(([[(([(((([(([[[(([(([(((((((([[(((([[([[((((([[((([((([[[(([(([[([(([([((([([(([[([(((((([[[(([[([[(([[([(([[((([[(([([[[[[([([[([([[(([(([([[[((([([([(([([[([[[(([[[((([(([([([[(([([[[([((([(([([[([[((((((([[([(([((([[([[(([((([[([[(((((([((([[[[[((((([[[[[(([[[[[[[([[[((([([((([[(([[[(([(((([(((([[(((((((([[([[[([((([[[([[[([[((((((([[((([(([([[([[(([[([([([(((([[([([[((([(((([([(([([[([([[[[[([(((([[[[([[([([((([(((([([((([(([(([([((([[((((([((((((([[[[[[([[([[([[([((((([[[((([(((([(([((([([([([(([[(([([([[[[[((([([(([[[([[([([[([[(((([([[([[[(([([[(([([[([(((((([[[[[[[[([([([[[([([([[(((([[(([[[(([[([[((([[[[([([[[([[(([(((([((([(([[([[(([(([([(([[(([([[((((([(([(([([[([(([[([[[([[[([([([((((([[[(([(((([([[([((([(([[[(([[[((([[([((([(([[((([(([[[[[([[[[(([(([(([([[(([[(([[([[[([[[(((((((([[[((([[(([([([[[[(((((([[[([[[[(([[([(([(([[[[[[[[([([(([(((([([[[[[(([[([([(([([[[([(([[([(([[(([(([(([[(([([[[([[([(((([[[[((([([[((([(((((([[[[[[((([([([[[([([[([(((([[([[([((((((([(([(([((([[[([([[([[(([[[([[[([[[([[([[([([[(([[(([([(((([[(([[([([(([[[([[[([[(([([[[[((([(([[((([[[[[([[[([((([[[(([[(([[([(([[([[[[(([([([([[[[[[([[(((([[[[([([([[[[(((([((([((([([(([([([((([[([(([(((([[([[([((([[(([([(([[([([[([[[[([[[([[([[([[([([((([(([[[(([[([[[(([(([((([(([[([[(([[[((([(((([((((([[[((((((([[((([[[([[[[[(((([[[((([[[(([[[([[((([([[[([([([(((([([(([[((([[[((([([(([([((([([[([([[(([([(([[([([(([[(([(([[([[([[[(([([([[([(([[(([[([((([[[[([[([[(([[[([((([([[[(([[(((([([[[[([([[(((([[[([[[(([([(((([([(([((([[(((([[(([[[(((([(([((((([[[(([((((([([[[[[[(([[(([[([[(([[[[[(([[[([(([[(([([([[([[([[[[[((([(([[[[(([[([([(([[[(([[[[([[(([([[[(((([[(([(([[(([[[(([[(([[[(((([(([(((([([[([[([([[[[[[[((([[([([([((([(([(([[([([(([[[[[[(([[[([[([[[[[(([([[([[[[([(([([[[[[([([[(([([(([(((([([([((([([((([[(([[[[([[[[([(([(([([[((((([[[([(([[[[[[[([[([[(([(([[[([([[[[(((((([[((([[([((([(((([((([([[((([([[([(([[(((([[([[(([[([(([([[[[[[(([[[[(((([[([([([[[([([[([[[([(([[[([([(([[(((([(((([(([([([([[[([(((((([([([[[[[([[[([([((([[[[([([([[([[([([([[([([[[(((([[(([((([([[[([[[((([[[(([([(([[([(([((([(((([[(([[([(((((([([[((([(([[[[([[([(([((([([([[[(([(([[[[[[[[[((((([[([([(([(((([(((((([[[[((([[([[([[[((((([[[[[([[([[([[(([([[((((([([[[([((([[[([[[(([(([((([[(((((([[((([([[[((((((((([((([((((((([[[[[[[[((([(((([[[(([(([(([(([[[(([([([[[(([(([([([[[(([(((((([([[([[[[((([[[([[[[(((([([(([[[([[([[[[(([([[[[[[(([([((([[(((([((([(((([(([[[[([([(((([([([(((([((([[(([[(([((([[[([[[[[[[[(([([[[([[([[([[[([([[[[[((([[[[([[[([(((([(([[([[([[([([((((((([([(([([(((([[([[[((([[[[[[((([((([(((((([[([[[[(((([([([(([([[[([(((([(([([(([(((([(([([[(([[[(((([[(([[[[[[([(((([[((([[[((((([([(((((((([(([([[((((([[[[[([[(((([[[[([([([(([[(([[[[[[([[[([(((([([[((((([(((([((((([(((([[[[[[(((((([[[[[[(([[(((((((([[[(((([[[[([([([[(((([((([([[[[([[([[[[((([[[[((([[(([([[[(((((([([[[[[([[[[(([[[[[([[((([[[([([[[([[([([[([[(([((([[(([(([([((([([[[[[[([([([([(([(([[((([((([[[([([([[[([([[[([([[([(([(((((([(([[[(([(([[([(([([[[[[(((([[([[([([(([([[[([([([[([([(([([[[[[([[[[([([[[([((((([(([[[[[[[([[[((([(((([[((([(([(([([[(([[[(([[[[[[[([[(([[(([[([([[[[[[[(([([([[[([[[([[[[[[((([[((([[(([(([(([(([(((([([(((([([([([([[(([[[[[[(([(([(([((([[[([[[[[[[[([(((([[[[([([((([[(([[(([[([[[(([[(((([([([(([[[(([([[(([(([([(([([[[[(([((([[(((([[(([[([(([(((((([([(((([[[[[[(((([[([[([(([((([[([([[[(([([[[([[[[[[[([([[([[((([(([([((([[[(((([([([([[[([[[[([[([[([([[(([[[(([((([([[(([[(((([[[(((([(([(((([[[([(([[([[([(([([((([[[(([[((([(([[((([(([[[([((([([([((((([([[([[[([([[[([(((((((([([[[([([([([([[[[[[(([([([[[(((([[(([(([[[[[[[((([[[([(([(([([(([[[([((([(([[[(([((([([([[(([(([[[[(([(((([((((([[[([(([[[((([[((([([[[[[[([[(([(([(((([([[([([[([([((([[[[[[([([[((((([(([[[[([(([[((([(([[(([[([[([(((([((([[[((((([[((([[([((([([((([[[(([[([([[[[(([[[([[[(([[[[(([([[[([[(((([(((([(([(((((((([[([(([[((([([[(([([[([[[[[((([[((([[[[[([[[((([([[[([[[[[[(([(([(([[(([[([([[[[[[((([([([((([[((([[[[[([[(([[(([[([(([[(([[(([[([[[[[[(([((([(([([[[[(((([[[[(((([([[((((([[([[(([(((([[[(([[(([([[[([([(([((((([(((([[((([([[[([[(((([(([[[[[[[((([([[([((([((([[((((([[([([[(((([(([([(([[(([((([(([[[((([[[[[[((([([(([(([(([[[([[[([([([[([[(((((([[[(([[([[((([([[([[[([(((([[[[([[[[[[[((([[([[[[((((((([([([[[([((((([([[([(([[[[[[[((([[(((((([[([[[[[(([[[[[(([([([[((([([[(([[([([[[[[[[((((([[(((((([([([(((([[(([([(([(([[((([[[([([[[([[[(([(((([([((((([[[([[[((([(([[[[[[([[[([(((([[[([([[[([[[([[([((([([[([[([[[[[[[((([([([((([[[[[[[[[(([((([([([[[(((((([[[(([([([[[([[([[([[((([[[([((([((((((([(([[([[((([[((([[([([[([(([[[(([[((((([[(((([((((((([[[[[([[(([[(([(([(([[[[([([[[[([(([[([[([([[([(([[[([[[((((([[[[[(((([([((([[[([[[[([[(([[[[(([[[(([(((((([(([[[(([(([[[([([[[[[([[(([(([[[([((((([[(([[[([[([([(((([[[([([[((([[[([[[([([[((((((([((([([[[[[[[[[[[(([[[(((((([[([[[([([([([((([[[[[([[((([([([([[([(((([[[[[[([([(((((((([[[([[([[[[[((([([([[[[[((([(([[([(([(((([(([[[([(((([[([[([(([([([([(([[[(((([(([[[[(([[(([([([[(((([([[([(([([[([[([((([(([[[((([([[(([[[[([([[(([(([(([[[([([[[[[[[([(([[[[[([[[(([([[([(([[([([[([(([[[([([(([[[(((([(((([[[[[[[[(([[[[[([[[[[([[([[([([(([[([((((((((([((([[((([[((([[[(([[(([[([(([[[(((([([[(((([(([([(([((([[(([(([(([[([(([[[([(([([([[[[([[([([([[(((([(([[[((([([[[[[[[[[[[[[(([[[[[[(((([[[([[([(([[[([([[[[(([([[[[[[([[[([((([(([([(([((([([[([([(((([[[(([([((((([(([([[((([[[((([(([([[((((([([[(((([[([[[(([([(([([[[([((([[[(([([(((([([([[(([(([([[[[[[(([[([[(([((([[([[[[(((([((([((((([(([([(([[[[(([([[[[[(([[(((([([((([[[([[(([([([(([[[(([([[((([([[((([[[((([[(([[[([[[[([[(([[[[[([(([[[((([([[([(([[(([(([[(((([(([[([([((((([(([[[(([[(([[[(((((([[[[[[([((([[[[[(([[(([((([([[([([([([([[([([([[([((([([(([[([[[[[[[(([[(((([[([((([([[[[[[[[([(([([([[(([[[[([[([[([(((([(([(([[(([[[[[(([([([[(([([([[[[([[([[([(([([[[(((((([((([[((((([([[[[(([([[[(([((([[([([([([[([[([[((([[[(([[(([[(([[((([[[([([([[[[((([(((([[[(([([[([([([([(((([([[([([((([(([([([[[([[[(([(([(([[[([([(([[[([(([[(((([[[[[[([([[((([([[((([(((([((([([([((((([[[[(([([([([[[([([([([(([[([[(([[[[[[[[([[[((([([([[[(([([([[([[[([([[[[[([[[[[([[([((((([([(([((([((([((((([[(([[([([[[([([[([((((([([[[[([([([[[(([[([((([[((((([((([(((([([([[(([([(([[([[[([[([([(([([([(([[([[[[[[([(([([((([([[[[([[[((([[(([([([[((([[[([[(([[(((((([[[(((((([[[([[[([[([[[[((([[[((((([(([[[(([([[[([[[[(([[(((([([([[[((([(([((([[[[(((([([([[([[[([[([[([[([[[[[[(((((((([(((([[[([[([([([[[[[[[[([[(([[(([[([((((([[[((([([(([[[((([[([([[[([[[[[[(((([((([[([[([[((((((((((([((((([(((([[[[([[[[[([([[([[[(([[[[([(([([[((([[((([[[((([((((([((([[(([([[[[([[[([[[[([([[([[[[([([[(([[[(([((([((([([([[((([[[[[(([(((((((([[(([(([([[([[(([(([([[([[[[[[[[[([[[[(([[(([(([[([([[((((([[((([[[[([[[((([([([[([[[([[[([[((([([[[((([([[([[[((([[[([(([([([(([[[[[[[([[([[((((([([[((([[[([[([[(([[(([[[(([((((([([([[[(([(([[[[[([[[[[[([[[(([[(([[[(([[([(([([(([[[([[((((((([([((([(([([[(([[([(([(((([([[([[([[((((([(([((([[[([((([[[[[(((([([([[(([([(([[[[[[(([[(([((((([[[[([(([[((([[[(((([((((((([([[(([(([[((([([([[[([[[([[(([([([([([([((([((((((((((([[[(([([([([([[(([(([(((([[([[[[[(([[(([[([[((((([(((([([[[[[[[[[(([[[([([(([[(((([[[[([[[([[([(([[[[[[[[[([[((([([[([([(((([(([(([(([([[([[[([([[([(([[(([[[[([[[(([([([[[[([(((([((([(((([([[[[[[[((([[(((([[[(([[[([([[[[[([[[(([([[[([([(((([[(([(([[(((((([([[[[[[[[[[(((([[[([[(([((([[(((((([([([([((([([((([([([[(([([(((((([[([(([[([([[([(((([[[([([((([[[([((([[([[[[[[(((([([[[[([[[(([[[[(([[[[([[[[([[([[[([((([[[[[([([([[([[(([([[(((([[((([((([(([[[([[((((([([[(([[[[([[[([([(([[[([([[[(([([((([(([([[([[(([[([[([[[([[[[(((((([[((([([([((([([[([[[([([[([(((([[([[([([([([(((([[[[[([[(([([(([[[[([([(((([(([[([(([(((([([(([[((((((([(([([[[(((([([([[[[[((([[[([[[[([[([((((([((([[([[([[([[(((((([[[(([[[((([[[[[[[[(([[([([[[[([[([(((([([[(((((((((((([[([([[[[([[(([[[[([[([[(([[([([([[[[[([[[(((([([([[[([[([([[[([([[[[[[(((([((([(([([[[[[((([((([[[([[[(([[(((([[[([([(([([[([(([[([[((([[[[[[[[((([(((((([((([[[[([((([[((((([[[[[[([((([[[[[[((([(((([[(([([(((([([[(([[((((([[[[([((([([[([[[([([(((([[[[[[((((([(([[(([[(([(([[[[(([[[[[[(([[((([[[[[([([[[([(([[(([([([([([([[[((((([[[[[([((([([(([[((([((((([([(([([[[[[[[[([[[[([[([[(([([([[([[[([(([[[[[([[[[[[[[((((([[[((([([([[[([([[([[[((([([[[([([([[(([([[[(([(([([([[((([[([(([([[((([([[([((([([[[(((([(((([[(([([((([[([(((([[((([[((([([[[[[([[[(([[([((([[([[[[([[((((([([[[[(((([((([([(([([((([[([[[[([[[([[[[([((([[[(([([[[([[([[[[(([(((((([(((((([[((([(([[(((((([[(([[[[[([([((([((((([(([[[([([([([[((([[([(((([(([(((([([((([([(((([[([([(((([([([[((([[([[[[[[(([(([([([[(([((([((([[[[(((((((([(([[[(([([[([(((([[(((([((((([((([[([[([([[[([[[[([([[([([[([[[[([[(([[([(([([([[(([[([[[[(([(([[[[(([[(([([([(([[([([(((((([(((([[(([[(([[([([([(([[([(([((([[[([[(((([[[([[[([[[([[[([[[[[([([([([([(([[[[[(([((([(([([([([[[((([[[([([[([[[[([[((((([[[(([([[[[([[[[[[([[(([[((((((((([[[(([([[[[[([([(((([((([[[[(((([[((((([[[(((([((([[([[(([[[[((([([(([([([[[([[((((([[(([(([([[((((([[[[(([((([[([([[[[((((([([([[[([(([[[(([[[([([([[[((([[(((([[([[[(((([(([([[(([[(((([(((([[[[(([[[[[([[([[([([[(([[(([([[([[((((([((([[[[[([([((([[[[[([([(([(([([(([[[([(([(([[((([[[[[[((((((([((([(([((([((((([[[[[([(([[([((([[[([(((([[([((([[[[[((([[(([([(([[[([(([([[([[[(([[[((([[[[[[(([(([((([([([[((([([(([[([([[([([[([([[[[((([([([[[[[(([[(([([[([([[((([[([[(([[[([([((((([([[[[([([[([[[((([[([[(((((((([(([((((([((([([((((([[[[([[[([([([[([((([[[[[(([[(([[[(([[([[[((([([((([[[[[([[[((([[[[([[((((([(([[[([([[([(([([[(([([[[([[[[(([[[(([[[(((([[[([((((([[([[([((((([[[([((([([(([([[(([([(((([(([(([[([[[(([[([(([([([[[((([[[([[[((([[[((([[(([[((([[[((((((([[[((([[([([[[([(([[([((([[[([([[([(((([[[([([(((([([([[[[[[([[[([[(((((((((([[[(([[[([(([[([[[[(([[[(([((([((([((((([([([((([[((([(([[([([([([([(([(([([([[([(([[[[[((([([[[((([([([[[[[[([((([([([(([[(([(([[[(((((([[[[([(((([[[[([[[(((((((([[[[([(((([(([([(([[((([[[(([([[([[[([[(([([([[[[[[((([[[[(([((([([([[[[(([([(((((([[([[[(([[[[[[([([([([([[[[[[((([[([[(([([(([[([([(([((([[[(((([[(([(([[([(([[((([[[(([([([(([(([(((((([(([[(([(([((([[[((((([[(((((([[[[(([[([[(([([[[[((([[[[[(([([(([(([(([[(([([[[[([(([[[([[([([([[[(((([[[[[[[(([[((((([([((([[([([[((((([[(([[([(((([(([[[(([[[[[(([[[((([[([(([[([[(((([[[[[(([((((([[[(([[(((([[(((([[[[[[(([[([(([((([(([[([(([([[[[(([([[([[([([(([([[[[[((([[[[[(((((([([((([[([[(((((([[(((([([[[[[([[[([([((([[((([[((([[(([[((([[((((([[(([[([[[[[[([[[[(([[(((([[[[(([([[[([[([([[([(([[[([[([[[([[([[([([[([([([(((([[[[[([[([([[(([((((([(((([(([[[[([(([[(((((([((((([([[[[([(((((((([[[[([([(((((([((([([(([[([[[[[[[[([[[([(([([([([[([([([(([[([(([((([[[[[[(([[((([([((([(([([[[([[([[[[[[[([[[([([[[[(([(([(([([[[(([([[[[[[(([[(((((([[([[([([[([([[((((([([([[[((((([(([[[(([([[[([[(([([[([([[[[[[(([(([[(([(([([[(((([[[([([[[(([([(([([[([[([[(([[([[(([((([[[[[[(([([([([((((([[[[(([[[[[[[([[([([([([[[[[[(([(((([[[(([[([(([((([[((([(([[([[([[[(((((((([[[[(((([[[[[([[[([(([[[([([[[[((([[[[[([(([[([(([(([[(([[(([[(((([([([[([[(((([([[[[[([([(([[[(([(([[([[(([([((([(((([[[[([([[[[(([[([[[([[[((((([[([[((((([[[([(((([[[((([[[(((((([(([([[([[((([(((([(([[[[((((([[[(([[[([((([[[(([(([(((([[[[[[(([([[[(([[([(([[[[[[([([([(((((([(((([((([(((([((([([[[([([[(([(([(([[[(([[([([(((([[[[([([([(([([[[([[[[((([([[[[([[[[([[[(([[([([[([(([[[(((([[[[((((([(([[[[([[(((([[(((([[[[[([([((([(([[[([[[[[([((([(([[[(([([([([[[[(([([((([[[(([[([[([[([[[[(([([[((([([([[[[[([([[([[[(((([[([([[(([[[[[[[[([([(([([[[([(([([[(((([([((([[[([[[(([[[([([([[(([(([[((([[[([([([([(((((([[[[([[[[(((((([([[(((([[[[[[[[[[[[([([(([[[[[[[[((([(((([(([([(([([([([[[[([[([[[[([[[[([[[([([([([([([[(([[[([([(((((([[[((([[[[((([(([([[[[[([([([[[[[(([([[([(([([[(([([(([((([(([([[([([[[((([[[(((([[[[(((([(([[[([[(([[([[[([[(((([([(([([[[(([([[(([([[[((([[[[[((([[[(([([([([([([[[(([(((((([[[([[[([((([[([((([[(([([[(([(([([(([[([[([[(([([([[(([[([[([(([[([(((([(([[(([(([(([(((([[[(([[(([[(([([((([[([(([[(([([([[[([[[([[[[[(([(([[(([(([[[[(([([[([[[[[[[[[[[([(([[[(([(([[[(([([[[((((([(((([[([([[([[[[[[[[(([[[([[(([(((([((([(([(([([[[[([[(([[[[([[[([[[([[[[[([[[([(([([([[[[([[([[[[((([[([([((([[[([(([[[([[[((([[([[[([([([([[(([[((([(([([([[(([[(([[(([[[[([[[((([[[(([([[((((([[([([(([([[[([[[[[([[[[([[(([((([(([((([[([(([([[[([[(([[[(([([([([[[[([([(([([([[[((([[([([([[(([[(((((((((([[[[[[([[[([([([[[[[((([((([[([((([(([[[([(((([[[([((([([(([([([(((([(([[[[[([(([([(([(([([([[((([[[[((([([(((((((([[[([([(((([(([([[([([(([(([([[(([[([((([(([[([[[[[((((([(([([[[[(([[[(((([(([[[([([([[[[(([[([([[([(([(([([[[[(([[([((([(((([(([([[([([[(([[[[[[(([([(([([(([([(([[([([[[(([[([[[[[([([([[[(((([(([([(([[[((([[([[([[[((((([(((((([(([[((([[([((([([[[[[[[[([([[[[((([[((([((([[[([[((([[([[([[[[[([((([[[(([(((((([([([((([([(([[([([[[[[[[[[[[(([(((((([[((((([(([[[(((([(([([[[[([[[[(([[([[[([(((((([((([[[([[[[[([(([((((([[((([[[[[(([[[([([[((([[([[([(([([(((([[((([[[[[[[[(((([((((([[[([[(([(([(([([[[[[((([(([[[([[[[[[[([([[([([[[[[[[[([[[([([((([[[[([([[((((([[[[(((([(((([((([([[(((([(([[([[([((((([[[[[[[[(([([([([[[(([[((([[(((([[(([((([(((([(([[[(([([[(([([([[[([([([[[[(((([([[([[[([([([[(((([([(((((((([[[[[(((([([[[([[[[[(([((((([[([[([([[(([([((([([([(([([([[(([([([[[[(([[([(([(([(([[([([[[(([[[(((([[((([([[[[((([[[([[([[((([((([(([([[[([([[([[(([[[([[((([(([([((([[(([([((([((([((([(([(([[((([[(([[[[[[([[(([(((([([(([((([[[([[([[[[([[[((([[[([(([[([(([(([[[(([[(([[[[([([[(((([[((([[[([(([[[[([(((([(((([((([[((([(([([([[((((([[[((((((((([[(([[[[[[((([([([[[[[[(((([[[([([((((([([[[[[[[[((((((([[([((([[(([([[([((([[[(((([(([([[[[[[[([[((([[([[(([[[(([[[[([([[(((([((([(([([[([[(((((([[[(([[[([(([([[([([([([((((((((((([([([[([((([(([((([[[([[[((([[(([(([([([([[([[[[[(([[[([([([[([[[(((([[[[[(((((([[[[[[[([([[([(([[[[((([[([([[[[[[((((([[[(((([(((([[[([[((([([[[[[[[([[([[[[([[([[(([((([[([[[((([[[[[[[[[[([((([([(([([[[[[[([(((([[[(([[(((([([[[(([(((((([[(((([([[[[([(((([[([[(([((((((([([((([([([(([(([[(((((([[(([([[[[((([[([[([[(([((([((((((([(([[[([[[[((([([[([[([(((([(((([[([([[[[(([([([[((([((((([(([[([[([([[([((([[([[([[((((([[([[(([[[(([[([((([[([[[[[[[[([[([([(([((([(([(((((([[(((([(([[([[[([([[([(([([((([([[(([[[([[([[(((((([[[[[[[[((((((((([[[[[[[([[(([[[[[[(((([[[[[([(([([([(([[(([([([([([((([[(([[([[[[[[(([([[[([[([[[([[[[[(((((((((([[[([[[(([([((((([([([[(([[(([[(([(([[([((([[(([[(([[(((([[([[([[[(((([[((((((([[[[((([[[(([[([[[[[[(([([([[[[[[[[([([((([[[([([([[[(((((([[[([[[(((([[[(([[([[[[((([(([[[(([([((([(([(((([[[[(([([[([[(([[([[([(([[([[[(([[([[([[(([([([([[(([[(([[([([[([(([((([[([[([([[([[(([(([(([(([[[[([(((([[((((((([((([(([([[[[(((((((([([[[[([(([(((((([[([[([(((((([(([[(([(([([[[[[[[([([([([[(((([[[[([([([(([((((([([([([([[((([([[([([([(([(([(((([([([[[((((([[[[[((([[([([((([[[(((([([[(((([[[[[[(([[[[(((((([[[[[[(([([[[[([(([[[([[[[(([((([[[((((([((([[[[[([[[([[[[[([([[([[([((([[(((([(([[[[[([([([([(([[(([[(([(([[([([[[[([[[[((((([(([((([[[[[([[(([[[((([(([[([[([[([([[[[(([[[((([(((((([(([([[([[[(((([[[((((((([([(([((([[[((([[[([([([[[[[([(([[[((([[[[[([[[[([[((([((([((((([[(((((([[[[[([([[[(((((((([([[(([(([[((([(([[[(([[([[[[[[[([([(([((([[[(([[(([[([(((((([[[[[[((([[[[([([([(([(((([([[(((((([([[(([([[[[([[([[[((([([([[[[(((([[[([(([((([[(((([([([[((((((((([[((((([[[(([[((([([((([[[((([([([(([([[[(([([[([(([([[[(([([[[[[[(([([(([((([[([[(([[[[(([[((([[[([(([([(([(((([((([((([(([[[([[([([[(([[[[[([[(([[([[[[(([([[((((([((([[[([[([[(((([[([(([([[([(((([((([(([[[(((([((([((((([[[[([(([[[[((([[[[[[[([((([[[[([[([[[((([[(((([([[[([(((([[[[[[[(([[[[([[((([(([([(([[([[([(([(([[([[[[(([[([[[([[(([[[[([[[(([(([[([(([[[((((([((([[([[[[[(((([[(([(([[([([[[([([([[[[[(([(([([[([[([[(((([[[((((((([[(([([[((([[([[([([[[[[([(([[((([([[[([[((([(([((([([(([(([((([[([[[[[(([[[([[([[[[([[([[((([([([((([(([((([[((([(([[[[([[((([[[[((([([[([(([[([[([(([([([(([[[(((([[([[([([(([(([[(([(([([[[([[[(([[((((([([[((((([[[([[([[(([[[[(([([[[[[[[[[([(([[[[([([([[([([[([([([((([([([([([((([([(([[[[(([([[[[(((((((((([[((([[([([([[[([[(([[(([[[[[(([[((([[([([[[[([[[[[[[[(([[([[[([[(([[[((([[((([([([([(((((([(([[[[(([[([(((([(([[(([(((([([[([[[[[[([[[((([[(([[([[(([[[[[([(([[[[[[[((((([[((([([[((([([(([(([((([(([((((([([[((((((([[[([[[[[[[[(((([([[[[(((([(([([([[[([([[[[([([[[((([[[((([[(([([[[((([([[[[[[[[[(((([[([[[[[([[(([[((([[(([[[[(([[[[((((((([[(((([(([(([((([([([([[[((([(((([[([([[[[(((([[[([[[(([[[([([[[[[[[[([[[([([[([(([[([(([(([[[((([([[(((((([[[([(((([[[[([(([[([[([(([([(([([[([[[((((((((([[(([[([[([[[[[[[[((([([(([[[[(([[[(([((([[([[[([(((([[([([([(([([([((([(([(([([[([([[[([(((([([([(([[[([[([(((([[(((([[(([(([[[[((([((([([([[(([[[((((([[[[(([[[[[[([[((([[(([([[([(([[[[(([([[(([((([([[[(([[[[[[[[((([[([((((([([[[([([[[([[([([[[([[([([[[(([(([((([[[[[[(([[([([([(([[[([((([([[(((((([(([(([[([[(([[(([[[((([(([[((((([[([[([[([[([[[([(((([([[([[([[(((([([[[([(([([[([([([([(((([([([((([([[[[(([[(((([[(([((([[(([([[[[[[[([([(([[[((([(([(([[[([([[[[[((([([[([([[([([[[(([[[([((((([((((([([((([[[((((([[[[[[[((([(([([([((([[[((([[[([[(((([(([[(((([[[([([([[([([([[[[([[((([[[[([(((([[(((([[[[[([[([[([[([[[[[([([([[[[(((([[[([[[([[([([[([[([[[[[((([[[([[([([(([(([([(([((([[[((([(([[([[[[([[[((([[[[(([[(([(([([(([[[([[([((([[([[[([[[(([[([(((([((([[(([([(([(([[[[([((((([[(([([[([[(([[((([((([([[(([[[(([((([[([[[[(([[[[[([[([((([([((([[(([[([[([(((([[((([[[((([[((([[[(((([[([(([(([([(([((([(((([(([(([([(([[[([((([[(((((([(([[([[[[[([([[[[[((((([[([[(((([(([[[(([([[[[[[(((([([[[(([[[[[([([(([([[[([(([[[[((((([[[((([[[(([(([[(([([([[[[((([([[([[[([(([[([([[[[[[[[[[[([[[[[[[([((([[((((((((([[[([([[(((([[[((((((([([[(([((([(((((((((((([((([[((([[[[([((([(((((([[[([[([(([[[[([[[([[[((([[[([[[((((([[[[[((((([([[[(((((((([[(([[(((([[[[((([([(([[([(((([[[(([([[(([[((([[([((([(((([((([[([[([(([[[(([([((([[[[[([((((((([(([[([[(((((([(((([([[[[((([(((((([([(((([[[(([([[([([(([([(([[((([(([(([[[[[[((((([[[([[(((([[[[[[([[([([((((([(([[[(([[([[[[((([[[([[[([[((((((((([([([([([([[[((((([((([([(([[(([[([(([[([[[[[([([[[(([[[(((((([((([((([[[[[([(([[[[(([[([([(([(([[(([((((([([([[[[([[([[[((([[([[([[(([[[([([((([[[([([(([((((((((([(((([([[[[[([[[([[([(((([((([[[([([(([[[[([[([[[([([([([(((([[([([[([([[([(([[(([[([[(([([((([[(((((([[[([[(((([[([[([([([([[([[[[(([(([[[[[[(([(([([(([([[[([(([[[[[(((([([[((((([([[[[[[([[[([(([((([([[([(((([(([[[[([([[[[([[([(((([[[((([[([[[[[((([(((([(([(((([([[[((([[[(([[([(([((((([[[([([[[(((((((([(([[[[[[((([[[([[[[([(([[([[(((([([((((([[((([[[[([((([[(([(([((([([[((([([[([(([[(([(([([([((([(([[[(([((([[([[(((((([[([([[(([((([(((([((([(((([((((([[(([(([[[(((([([[([([[(([[(([[(((([[(([[(([[[((([[(([((((([([[(([[[(([[(((((([(([[[(([([[([(((([[(([((((([((([[([([[(((((([([[[(([[[[[[(([[((([[[[([[[([([[[[([(([[[([([[[([(([[[[[([[([((([([((((([([[([[[([(([[([[(([[(([((([[((((((([([([[([[(([((([([[[(([[([((([[[[(([[[[[(([((([([([[[[((([([[[([[(((((([[((([([([[[[(([[([([((([([(([([([([[((((([[([[[[([[[[([((((([[([[[[([([[([[(([[[([(([([[[[(([[[[[[[[[([[(([([(([([(((([[[(([[([(([[(((([[([(((([[((((((((([[[(([[(([((([(((([[[[[(([([(([[(([([[([[((([(([[[([[[[[([([((([[(((([[((([[[[([[[([[([[((([[(([((([(([([[([[([(((([((([(([[[[[[((([([[([[([(([([((([[(((((((([((([[[[[([[[[([[([([[([[[(([[[[[[[[([[((([[(((((([[[((([([([([([(([[(([[([([([[[((([([[[[[[((([(((([[[[[[[[([[[([([([([(([[([[[([([[[((([(([([[(([([([[(([[[[([[([[((([(((([[((((((([[([[([[([([(((([[(([[([(([(([[(((([(((([[(([([[[(([([(([[[([((((([(([[([([[([(([((([(([([([[[(([[(([[(([[[([([([([((([([([[([[(([[[[([[((([(([((([[[([(([[[[[[[([[((([[([[(((([[[([([([[([[([(([[([[([[[([([([[[([[[[[(([(([[(([(([[([(([[[([([([[[((([[[([[[[((([([(((([[[[((((((([[[([(((([(([([([[((([([[([([([[([(([([[(([[([[[(((([[(((([[([(([(([[([[[[((((([(([(((((([(([(((([([[([([([[(((([[[[(([[((([(([[[[[([[[[[(((((([([((((([[[[[[[([([[(([[([([[[((([([[(([([[([[(((([[(([[[[([[([[([[[[[(([[[[([[((([(([[[[[[[[([[(([(([[(([[([(([([[([([([(([[(([(((((([[(([((((((([(([([[([(([[[([((([(([[(([([[[(([[((([[[[[[(((((([[(((([(([[[[[([[([[[(([[(((([((([[[[[[([[[(((([([[[[[[[(([(([(([[[((([[[[[((((([[[([[[[[([([[[[[[(([[[((([[[([(((((((([[[([[(([([[([[[[[([([[([(([([(([[([([([[[[(([(([((((([[([(([[(([[[([[((([([([([(([[[(((([(([([[[(([([([[[([[[((([[[([(((([[(((([((([[((([[([([[[[[((([[[((([((([([[((([(((((([[[[([[[((([[((([[[[[[((([(([([[[[[((([([[(([[[(([([([[((((((([([[[[[((((([[[([([[(([(([([[([(([((([((([(((((([[[[[[[(([[([[[[(([[(([((([([[((([([[(([([[[((([((((([[[(([([[([[(([([[[((([(([((([(([[[[([([[[[[(((([[(([(([[([([(([([[[([([(([([([([[([([[[(([(([((((([(([[[((([[(([((([((([([(([[[(([([(([([([([([(([([[((([(([((([(([([[([[[([(([[([[[([[([([[(((([([(([(([([((((([[[[([([[[[((([[[(((([([[((([[(([[([[[((([([(([([[([[((((([(((([(([(([[([[[[[[[[[[([[([[[([[[[(([[([(([[([[([[[(([[[[([[(([[[([[(([((([([[(([[(([[[[(([(([(([([[[(((([[([([(([([([[([[[([([([(((([[[([([([(([[((((((([(([(([(([([[([[(((([(((((([((([[[[[[[([([[[[(([(((([((([(([([([[([(((([[[(((([[[((([[([([[[[[[[[[([(([([([[[([((([[([[([[[(([[[([[([[[([(([(([([[[(([[[(([([([([[[[(([[([[([[[[([[(([([([(((([([([[([[((([(([([[((((([[[([[[(([[([([[(([[([((([(([(([([(([(([(([[[[[[[[(([[[((((([(((((([[[([([([[(((([((([([([([((([([([[(([([((((([([[([[(([[[[[[[[[[([[[(([(([[([([([[([[([([[[((([([[((([[([[(([([((((([(([[[(([[[((([[([((([[([((([[([(([[[((([([[([((([((([(([([[[((((([[[((([[[[[([[[[[[[([(([([((((([[[[[[[[[([([(([([(([[[[([(([([([([[[[(([[[([(([([((((([([((([(([([[([([[([([(([([[[(([([[([(([[([([([[[[([[[[[([([[[[[([([([[[([[(([([((([(([((([((([([(((([((([[(((([[([[[[(([[[[((([[(([[[([[[[[((([[(([([[([[[[[[[((([[[[(([([[([(([[[((((([([([([[[[([([[([[[[([[([((([[(([[(([[((([[([[[([(((((([([((((([[[([[[[[[(([[[[(([([[[[[[([(((([[([[([((([[(((([((([[((([((([([(([[([(([[([([[((([([([[[[(((([[([[(([(((([(([([[[[(([([[[[[([[[[([[[[[[(((([[[[([([(([(([((([([[[[[((([[([[[([[[([([([(([([[([[[([[(([[([(([([([[[([[[[[(([((([([[(((((((([(([[[([[[(([[[[(([[[([(((([([(([[[[[(([([([([[(([[([[((([[([(((([[((([[[[([[([([(([((([([(((((([([(((([([((([((([([[([[((([([[[[[[[([((([([[([((([[[(([[[([(((((([([(([[((([[(([[([[([((((((((([[[([[[(([([[[(([[([([[(([[([(((((([[[[([[(([([([([(((([([[([[[[([[[[[[(([([((([[(([[[((([[[[[([(([(([([[((([[[([([[(([[([(([([[([((([[[((([[([([[([[[[([([((((([([[[[[[[([((([(((([(([([((([[[[[([([([[([[([([[[(([([[[([[[([[[(([[[[[([[[[[([((([[[[([[[[(([[[[[([(([[(([[[(([(((([[[([((([([([[(((([((([[[(((([([([(([([(([[[[([([[([([[([([[(([[[((((([([[([[[[(([(([[[[(([[[(([[[([([([((([([((([[[[([[([[((((([([[[([[([[(([([(([[([[([[([[((([([([[(([([[[([([(([([[(((([[([[[([[[((([[[([([[((([([[[([[[([[([[[(([[[[([[[([([([([((([[([(([(([(((([[(((([(((([[([([[(([[[([([[[([([([[((((((((((([[([[([(([(([[[[(([([([[((([(([([[(((([[[([(((([[[([[[[(([[([((([[([[[(((([([(([(((([[([((([([((((([[([([[[(([([[([([[(([(((([[[(([[(([[[((([[[([[((([[([([([(([(([([([((([[[[[(([(([[[[[((([([[[[([[([[(((((((([[([([[([(((([(([(([[([([(([([[(([[(([[[([[([[[([[(([[([[([[(([[([([[[([([(([((([[[([[([[[([(([([((([[[[(([(([(((([(([((([(([([([(([([[([[(([([[[([([[[([(([(((([[[(([[[[[[((((([([((([[((([([[[([[((([[[[([((([([([(([((([([(((([[[[(([[[([([([[[([(([((([[[([([([[[(([[([[[((((([([[[[[(((((([[([[([(([[[([[([([[([([([([[[(([(([[[[(([(([(([[[([((([(([[[(((((([([((([([([([[[[(([[[[([([([[[[[((((([(((([[[(([[([([[[([([[[[[([[((((((((([((([(((((((([(((([(((([([[[[([([[([[[([[[(([((([[((([[([[[(((([((([([((([[((([(([((([([[(([[((([[[([([([[([[[[[[[[((([(([[((([[[[(([(((([[[([([(([(([[((((([[[((([(((((([[((([([((([(([[[[[([[(([((([[[([[[([[[([([[((([([([((([[[[([([[((([[(([((([([(([(([[[(([[([[(([([((((([(([[[(((([([([([(((([((([[(([([((([[[([[[[[((([(([([[[((([[[([[[([[(([([((([[(((([((([[[[((([(((([((((([[[(([[(([[[([((((([(([((([[[[([([([([[[[[[([[([([((([[[((([(([(([([[(((([([(([(([([(((((([(([[[((([((((([([[[[([[((([(([(([([(([(([[[[[[[[[[[[(((([(([[[(((([([(([[(([[[([([[[([((((((([[[[[([[(([(((((([[[(([([[([[[[([((([[([([[[[[((((((([[[(((([[[[(([([[[[[((([[[[(([((([[[(([[([([([[[[(([((([([[[(((([([([((([([(((([([([([[(((([[([[[[((([[([[[([([(([[[([[([[[[((([[(([[([((([[[[((([[[[[[(([[[([[[[[[((([[[([([([([[[([(([([[[[([[(([([[[(([[[[[[[([([((([(((((([((([[(([[([[([[([([[([([([(((([[[([(((((((([[([[[[[[[(([((([[[([([([[[[[((([[[[[(((((([([(([[[[[[([([[[[(([[(([[[[[[[(((([[([[[[[[[[((((((([[([[[((((([[[([[([[([[([([[((([[((((([[([[[[[[(([([[[(([(([[(((([[[[([[([[(([([([([[[[[[[((((([([[([[[(([(([[[[((([([[[(([[[[[[[(([[[(([[[([([[(([[([[[([[([((((([([(((([((((([[((([[((([[[[((([([[[[([[[[[[([([([([[(([((([[[(((((([((([[([([[(([[[[[[(([[[(((([[[([(([([([(([([([[[[([([[([([[[[([(([(([[([[[((((([[((([[[[[[(([((((([(([([([[[[(([[[([[[[[[[([(([((((((([[[([[[[[[[([[[(([([([([[[([[([([[[[([[[[([(([([[(([([[[(((([[(([[[((([([[([((((([(((([[([(([([[((([([([[((([([(([([[[[(([(([(([[([([[[[[([((((([([((([([([[[(((([[[([([([([[[(((([(([[[[(([(((([[[[[[[[[(((([[(([[[([(([[[(([((((((([([[([[[[([([(([([[((([[((([[[[[(([[([(([(((([[([[[[[([[(([([([(((([(([[(([[[[[((([(([[((([[[([([[(([([([[(([(([(([[[(([([([[(([([[[([(([(([(([[[[[[[[([(([([(((((((([[(([[([[([((([[([[[[([([[(((([(([(([[([[(([[[[([[(([(((([[(([[[[(((((([[[((((([(((([[[((([(((([[([[[([[(([([([(([[([[(([(((([[((([(([[([([[[[[([([[[(([[[((([[([[[[(((([[([[[(((([[((((([(((([[[[([((([([(([([((((((([([[[([([((([[[[[([[(((([([(([([([[[[[(((([((([(([(([((((([(([[([([((((([[[((((((([[[[[[[(([(([((([[([([(([[[(([([([[((([([[[[((([([([((((((([(([[[[[[([(([[[(([[([[[[[[[[[((([[[(([[((((([([[(([(([[((([([[[[([[[(([[[[[((([[(((([((([[[(([[([[(([[[[((([[([[[(([([(([[(([(([((([(([[[([[((([[([[(([((((([(([[[((((((([[((([[[[[(((([[[[(([([[(((([([[[(([(((([[([([[(((([[[((([(([([([[[((([((([([([[(([[[[(((([[[[(([[[(([(([[(([(([(((([([((([[[[([[(([[([[[([([(([(([([[[(([[([[[[[[(((([[([[[([[([[[[[[[[[[(((((([[[([(([((([[(([[[[[([[([((([[([[(([([[[[(((([[([(([(([[(((([[[[([[((((([([[[([[(([([((((([[[[[(([[([([(([(((([([[[[([[([[(([[[((([([((([[([((([([[[([[([([[[([[[[(((([([((([(([[[([(([[(([[(([[[(([([[([(([[([((([([[[[([(([[[([([(([(([[((((([[[([(((([((([[([[([[[[[[(([[([([[([[[[([[[([([([[([([([(([[([([(((([([(([([[[(([(((([[[[[[[[[[(([((((((([[([[[([[([[[[[(([[((([[[([(((((((([[[(([(((([(([(([(((([[[(([(([([[[[((([[[[(((([[[(([[[([[[[((([((([[(([([[([((([[([[([[(([(([(([[[[((([([(([[[(([[([(((([[[([([(([(([[([[(([[(([[[(([[[[(([([([[([[([([[[(([(((((([(([[[[[[[[[[[([[[(([(([([[([[((([[[[([(([[(([([([([[[[(([([([([([[([[((((([([[(([[[[([[[(([([[((([[[([((([[(((((([[([(((((([((([(([((([[[(([([[[[(([(([[((([[[[[(((((((((((([[([[(([[([(([([([(([[([[[([([[([[((([(([(([([[[((([((([[(([([[([((([[([[([[([(([[([([(((((([(([[(([([[([[(([[[[[[[[[[[[[([((([[([((([[([([[[[[[(([[[[(((([((((([((([([[(([([([([[([[([[(([[([[[[([(([[([([[((([[[([([[[([((([[[([[([([[[([([(([[([(([[([((([([[((((((([([[([[[[(([(([((([[[[([[[([((((([(([[([[((((([[[[([((((([(([((([(([[([(((((([[[[[[((([[((([[[[[[[[(([((([([[([[[((([[[((((((([[[[([[[[((([[([[[[(([([[[[(([[(((((([([[(((([[[[(((([(([((((([[[(([([[[(([([([(([([[[((((([([([[([((([[(([[[[(([[[[[[[([((([[(([[((([([([[(([[((([[([[[[[([[[(((((([[([[(((([[[(([[(([(([(([[[(([[[((((([[[([[[[[[(([[[([(((((([[[[([(([((([([(([[[[[[([[([[(([(([((([(((([[[[([(([([([([(([[[([(([[[(((([([[[[[[([[(([[[([(([(([[([[[[[[[[[([[([[(([[[([([[[([[([(([([([[[((([([[(([[([((([([(((([([(([([([([([((([[(([([((([[[[[[[[([([[[([[[([((([([[[[([([[[[[(((((([[[[(([[[[((([(((([[((((((([([((((([(([(([[[(([([[((((([([[([([([([(([[[[[([[(((([((([[[[[(([((([((((([[([[([([[[[[([(([[[[([[((((((([[[[[(([[[((((([[(((([[[(([(([([[(((((([[[[[((((([[[([([[[[([[[([[(([([([(((([[((((([[([[[([[(([[((([[[([[(([((((([[([([[[[[[(([[(((((((([[[[[[(([([[[([((([[[((([(((([[((([[[[([((([[((((((([((((([[[[[([(([[([[(([[[[(([([((([[[[([([[((((([[[([[[(((([[[[(([([(([[[(([[[[[[[([[([[[((([[(([[[[[[[[([([(((([([(((([[([[[[[(([([[[[[[[[(([((([[([[(((([([[((((([((((([[[[([[((([[((([([[[(((([[(([(([([(([(([[(([(([(([([[[[[[((([[[(((([[[[[([([[([[[(((([([[([((([([[[(([[([((((([[[[[(([[[[[[(([([[[(([[((([([[([(([([([[[[[[([[(([(([([((([[[[([(([[[[([([((([[[[(((([(([[([[((([([(([[[[([([(([[[[([([[[([[(([[((([[(([[([[([[[[[[[([[(([([[(([([[[([((((([[((((([([([[([[([[[[[([[[([[[([[(([(([((((([(([((([[[[([[[(([[([((([[([[([[(((([[[[([[((([[[([([[[[[[(([((([((([([[[([(([[([[[([[[((([[(([([([((([([[(([((([([((([[[[([[([([[([(([[(([[[[([(([[([[([[[[[([(([[[[[[([[([[([(([[[([[([(([[([([(([[[[((([([[(([([[((([[[([[([(([[[[([(((([[[[([(((([[((((([(([([([[[[((([((([[[([((([([[[[[(([((([[[[((([[([[[([[[[([[[([([([([([[([([[([[[[([[[([[([([([[[[[([[(((([([([([([([((([([([[[([[[((([[[[((([(([([[[([[[[(((([[[[([[((((([([(([[[[[[([[[([([[[[[[[[(((([([[([[[[[([[([[([[[[[([([([([([[[[[[[[(([[[[((([[[[[(([[([([((([[((([[[[[[[[[[[(((([((([[[(([([([[([([(([(((([[([((([([([(([[([(([((([((((([[[[[[(((([[[[[(([([[[(([([([(((([[((([([[[([[[[[[[[(([([[[[((([[[[[([[(([[[[([[([(((((([[([(([([([[[[[[[(([(([([([(([([((((((((([[(([(((([([(([((([((([[(([[[(([([[[[([([[[[((((([[(([([[[((([[([[([[[[([[[[(([[[((([[[(([(((([[([(([[(([[[([(((([[[([[((([[([[([[[(([([([([[([[[([[((([(((([(((([[((((((([(([[((((([[[([[[(([[((([[[(([((([([[[[(([((([((((([([[(((([((((((([([(([[([(((([[([((([(([(([(([(([((([([[([(([(([[[(([[([[([([([[([(((((([[((((([[[([[[([[([[[([([[[(([[[([((((([([[(([([[(([([([[([[[[([[[[[([[[(((([[((([[([([[[(((([[(([(([([([[([[([(((((([([[([([(([[(((([([([[((([[(([[(((([([((([((([([(((([((([[([[[[((([[([(([([((((([((([(((([((((([[([(([[[([([(([([([[[[[([(((([[[[(([[([([[[([((([([[[([[((([[((([([[([[(([[((([[(([[([[[(((([[[([[([(([([[[[(([([(((([([([([[(((((([[(((([(([(((([(((((((((((((([([[[[[[[([((([([([[[([[[[((([[((([(((((([([([(((([(([([[(([(([((((([[[[(([[[[((((([((([([[((([[([[[[[((([[[[[(([[[([[([((([([[[[(([[[[[(([[[[(([(([(([[([([(([[(([(([(([[([((((([[[[[[[[[[([[[([[[[(([[(((([[((([(([([[([[([([((([(([[[[[[(([(([((((([[[([[[[[[[[[(([((([[[[[[(([[([([[[[((([[(([(([([[([[([(((([[((([([(([[([(([([([([(([((([([(([[(((((((([([[[[[((([[([[((((([([[[[[[(([[[((([(([([([[[[((([[[([((([(([[[([[([(([[([[[([[[[[[[((([[[[([(([[[[[([[[((((((((((((([[([([[[([[([((([((([(((([(([([[[(([[(([(((([((([[[(((([[[(([(([([([[[[[([[[[[(([([[[([[([(([([[[(([[([(([([([([(([([([([(((((([([([[[([((([(([[[[[[([[(([([([([((([[((([[[([(([[[[(([([[([([[[(([[([[[((([[(([([[([([(([(([[[[[((([([([[(([(((([[[[[(([(([(((((([[((((((([[(([((([([((([[[([[([(([[[([([([(([((((([([((([[[[[([([[[[(((([(([[([([(([[[((((([(([([[(([(([[[((([[[[([[(([(([([(([((([[[[[[[[[((((((([[[(((([([(((([([[(([[[(([(([(([([[([([(([[[[[[[[([([[([(([[([([[([([[[([((([[[[[([[((((([([[[[([([([[[[(([[(([[[(([([(([[[[[[(([[(([([([[(([(([[(((([[[((([[[[[(([(([[[([(((((([([[[[([(((((([[[(([((([[[([((([[[[[((([(([[[[([((([([[[(([([[[(((((([([([[[[(([[([[(([[[[([[[[[((((([((([[(([([[[[((([[[(([[([(([([[([([[([([[((([[(([[[((([((([((([[[[((([([((([[[(((((((([[([[[[[(((([(((([([[([[(([[[[(([[[[(((([[(([[(([(([[([[[[[((([[[(([([[(([([([(([(([[[[((([([([([[([(([((([[[[((([[[([(([[[((([(((([((([(([([(([([[[(([((([([[[[[[([[[[[[[[[[[((([((([([([[[[[(([(((([[((([[[([(((((([((([[((([[[[(([(((((([(([([[([[([([([[(([[(((([[[([[[[(((([[[((([(((([[([[((([[((((((((([(([([([[[(([[[([[[[[(([[[[(([[[([([[[[[(([(([((([(([(([[[(((([([([([[([([[[[([((([[([([[[([([[[((([((([([[[[[([(((((([((([[[[([[([([[(([(([[(([[((([([([[([(([([[([[((([([([(([(([([[((([([[[([(((([[[[[(([(((([([[[((([([([(([((((([[(((([[(([[([[[([([[([[[[((([(((([((([(([[[[[[([[[((([[(((([(([[[((([([[[([[([[[(((((([(([([(((((([(([[([([(([((([[([[[(([([([((([([[[[[[([[([[[[([[([([(([((([((((((([[[((([[[(([[([([([((([[(([(([([([[[[[(([[([([[(((((([((((([[[[[[[[(([[[(([((([(((([([[[[[(([([[[[[([[([[[((((((((([[([([[([[[([[[([[((((([([[[[(([([[[(([[([[[([[[[[[(((((([[((([([[([[([[([([[[[([([[(((([[[(([[[[[([[([[[([([[([[(([[[(([[([[([(([[(((((((([((([[[((([[([([[[(((((((([([(([([[([([([([(([(([((([[[[[[([[[[(((([([[[([(([((((([[([(([[[((([((([([[[[([[[[[([[([[(([(((([[([((([((((([((([[(([((((([[[([[[[[(((((((([[([([[(([([[[([([([([([([[([([[((((((([(([(((([([[[([(([([[([[[((([((([[([(([[[([[([([[((((((((([([[(([((([(([(((([[([([([[(([(((((([(([[([[([(((((([[([(([([([[(([((([([(([([([[(((([[[[[(((((((([([([([[[[[[[((((([([(((([[(([(([([[([[[[[(([[(((([[([[((([[(([[[((([[[[([([(([([[[([[(([[(([[[[[(([([[(([[(([[[[([[((([[[(([((((([[(((([[(((((([[([((([(([([[([[((([([[([[[[[([[[[[(([[([([[([[[([([(([([[[([[([[[[(([[(([[[[([(([[([([((([[(((([[[(((((([([(([(([([([[[(([[([[[(([((([([[(([([([([[(([[(((([([((([[[[([((([[[([[([([[[[[[[[[[([((((((([[[[([[(([[([[[[(((((([([((([[([([[([([([[[([[[[([[[(([[([[[[(([([([[[[[[([([([([(([([[(((([(([(([[((([([[[(((((([(((([[([[[(([[[([([([[[([[[[([([((((((([[[[([([([([([[([((([[[[(([[(([([([([[[([[[([[[[(([(([([[[[[((([[[(((([[([[[[[[([[([[[(((([(([[(([[(((([[[(((([[((([[[([[[(([(([([([(([([(([((([([(([[[[(((([(([[([(([((([([([([([((([([([([([((([[[[([(((([[[[([([[[[[[[[([[[[([[((((([[[[([[[([[(((([([[([(([[[((([[[[([[[((((([([([([[([(([((([[(((([[(([[([([[[[([[[([[(((([((((([[([[([[[([((([[(((([[[[(((([[[[(([[([(([(([(((([[(([(([[((([[([([[[([[([[([([[[([(([([([[[(([(([[(((([([((([[([[[([[[(([[[[[[(([([[(([[[[[([([[(([([[[(((([(([[([([[([(([[(([([[[([((([((([([([((((([(([[[((((((([([[([([([[([(([((([[[((([([[([[([((((([([(([(((((([[(([[([[((((([[[[[[[([(([[([((([([((([[[[(([((((((([(([[([[((([[[[[[(([(([[[[[[(([([[((([[([([(([([((([([[(((((((([([((([((((([[([[[[[[[[[[[[[[[([[[[([[([([[[[[[[(((([([([[(([[(([[[([[[([([(([[[[[([[(([([[[[[[((([[[(((([([[[([(([[([[[[[([[([([(((((((([([([[[[((([(([([([(([[[([[[[[((([[([([[([([([(([[((([[[[([[(([[[(([([[[[((((((([[[((([(([([[[[[[([([[([[([[(((([([[[[[([[((((([([((([[(([[[((([([[[([(([([((([((([[(([((([[[(([(([[([[([[([([[(((((([[[(([[([([([[([(((([([[((([[[[([[([((([[(([(([[[([[((((([(((((((([(([(([([(([(([(([[[(([(([([[[[[[[([[((([[([[[((([[[([([((((((((([([[[[([[([([(([([[[([[([[[[((((([([[[[[([[[[[[[(((([((([[[[([((((([(([((([(([(([[(([([[(([([([[(([([[[[[[[(([[[[(([([[[(((([(([((([((((([[((([[[((([[([((((((([(([([([(((([(([[[([[([[[(((([([([(([([[[([[((([(([([([(([[[([(([([[([([(([(([(((((((([[(((([[[(((((([[([[((([([([([((([[[([([[[([((([[[([[(([[(((([([[([[(([(([([[((([(((([([[[((((([[[(([[[(([[([[([[(([([[[[(([[[[[([(([[[[[(([([[[[([[[[(((((([[[[((([[([([(([([[([[[[([(((([[(([[[((([[([(([(((([(([(([[(([([((([([([([[[[[[[[([([([[([[(((([([([(([[[[([[([([([((([((((([(((([[[[[(((([([([[[((((([([[[(([(([[[([((((([[[[(([[([[[[((([(([[([[[(([([([[[[[([[[[(((([[[[[[[[(((((((([([[[[((([(([[[([(([[[[[[(([((([([([(([[(([([([(([(((([([[([(([((([[(((([[([([(([(((([([[[[[([[(((((([[([[(([(([([([[([[([[[(([((([[([((([([[[([(([(((([(((([[[(([([[[(([[[([(([(([[((((([[([[((([(([(([[[[[[[([([((((([[(([[([[(([((((([((([[[[[[((([([(([[(([[([[[((([[[[[(([((([[([([([((([[[([[([[[[[[[[[[[[[[[(([[[[[[([[[([[([([[(([[[([([[[(([[((([[([([[([[[([[[[(([([([(([[[(((([[[((((([[[(((([[(([(([(((((([(([(([([[(((([[[[[[((([[(([(([[(([([[(([[(([((([([([[(((([([[[(([[(((([(([([[[[[[([[((([[([([[(([((((([([(([[([(((([((((((((([([(([(((([([[(((([(([[[((([([([[[[((([[[[[[[[[[[[[[(([(([[[(([(([[[(((([[(([[(([([[([(((([([[([(([[([(((([([[([(((([[[[[((((([[[(([((([[([[[((([[[([[[[[([[[[[((([[(([[[[((([[(([[[[([[[[([([[[[(([[[[(([[[[(([[[(([[[[(([[[([((([[[([([[([[(((((((((([[[[[((([[[[[[((([(((([[[((([[((((([[([([([(([[([[[[(([[(([([[((([[((((((([[(([([[(([(([[[[((([[((([[(([[[[[((([[((([(([[([([([[(([[([[([[([(([([([[[[[[[(([([[([([[[[(([[[[([[[[((([([([[(([([([[([([(([(((([[([[[((((([(([[[[([((([([[([([(((([(((([[((([((([(([[([(([[(([[[[[(([([([[((([([(((([[([((([(([[([(([[[[[(([([[[([(([(([[[([([([(([[[([[([([[([([[([[(([([([((([[[[[([((([[[[[[(([[[([[[[[((([([(([([[(([((([[[([[(((([([([((([[([([[((([([[([(((([((([[([[[[((((([([[[(([[([([[([[[[[[[([((([([[(((([([(([[[[[[[((((([([(((([([[[[[[([(([([[(([([(([([(([[([[[[(([([(([[[[[(((([[(([[([[((([[((([(([(([[(([(([[(([[([(([((([[((([[[[([[([[[([[(([([[[(((([[([[[[([[[[[[(([([([(([(([[([[[([[[([((([([([[[[([[[[(([((([([(([([((([([[([[[(([([[([[([[[([([(([(([[[([[([([([[[([((([[([(([([(((([[(([(([([[[[([([[([([([(([[((([([(([[((((([[([([([(([[[([[[[[([([[[([[([[(((((([(([([((([[[((([(([[[[(([[([([([(([[([[((((((([(([([[(([([[((([([[([(([([(([([(([((([[[[([[(([(([[[[[[[((([[([((([[[([[[[([(((([[[(([([[[[[((([[((([[([([[[([[[([[[(((([[(((([[[(([([[[[((([[(([[[[([[[[((([([[[[([([((([[([[[([((([((([(((((([[((([([([([[[[([([([[[((((([[([(((((((([([([([[[([[[((([[[[[(([[(([(([[[[([[((([[[[([[[([[[[[([([(([(((([((([((([(((((([[[((([[[[[(([(([((((([([[(([([[[([([((([[([(((([[([[(((([((([[(((([[[([[(([((([(([(([[[[[((([(([[([[[(([([(([[(([(([[[([([[([((([[[([(((((([[([(([((([([([[(((([(([[([([([(([[(([[(([([([[[(([[[((([((([(([((([[([[[([[[[[((([[([[[((([[(([(((([[[([[[(([([[((([([[[[[([[(([[[[([([([[[[(([[(([((((((((([(([(((([((([([[(([[[((([[(((([[((([[[([[([[((([[[[[((([([[[[[[(((((([(((([[(([[([(([([(([([[[[[((((((((([([[[([([([(([[(([[([(([(([[(((([[([[((([[((([([[[[[[[[[((([[[[([([[[((((((([[([(([(([([[[(([[[([([[([((([[(([[[([[(((([[((((([[[[[[[((((([(([(((([[(((([([[[([[([(([([[[[[[[[[([(((([([((([([(((([[[([[([([[(((((((((([([(([[[[[(([[[[(((([([((([[[([([[[[([([[[[[[([([(((([(([([([[[[((([[[([[([[(([([([(([[([([([((([[[(((([[[[((([((([[(([((([([[[([(((([[[([[([[[([[((([(([[[[((([([[[[[(([((([([[(((([(([([[[([[([(([(([((([(([([[[[(([[[([[[[([([([(([([[([[([(([(([([[[([([(([[([[[[[[[(([[[(([([(([[[([[((([(([([([(([[([(([[[[[(([[([((((((([(((((((([([([[[[(((((((([[(((([((((([([(([([[[[[(([(([(([[[((((([[([([[[([((([(([([[[([([[([([[([[(((((((([[([[[(([([[([([(([[([([[(([([([([[[[((([([([[([(([[([([([[[[([[[[(([[((([([[([([[[([((([[([([((([[([([(([[((([([([([[[[(((([[([([((([((([(([[([(((([([(([(([[[((([([[[(([[(([[(([(([(([((([([[[[[[(([[[(([([((([([[([[((([[(([([[(([(([([[[([((([(((((((([(([(([[((([([(([(([([[([((([[[[(((([(([[(((([[([[(([[[[[[[([([[[(([((((([[[([([[[[([(([([(([[(((([[(([([([((((([[([([[((([[([([(([[((([([(([([[[([[((((([[((([[(([([(([[([[[[([([([([[([[[[([([([([((([[([(([[[([[((([[([[[[([[(([[([([(([[([[[((((([[(([[[([(([([[((([([([[([[[(([(([[[(([(([([([(([(([([([([([(([([[([((([([([[([(([([[[(([([[[[[([([([(([[(([[(([[[([(([[[[([[(([((([(([[([[[([[([[[[([(([([([[[[[[((([((([([((([[[((([[[[([(((([[[[[(([((((([[(([([([((([[([[[[[([([(([(([[[((([([[[((((([([([(([((((([[([[([[(([((([[(([[[[[[(([[[([((([((((([[([[((([(((((([((([([([[(((([[([([[(([[([(((((([([[([([(([(([[[[[([[([([[((((([([[[([[([(([[[[(([[(((([[[[[([[([[((([[[((([[[([[[[([([[((((([([([((((([(((([[([[([((([[[[((([(([((((((([[[([[[[[[(((([(((([[(([(([([[[([([[[([[([([[[(([[[(([(([(([[[(([([(([((([([[([([[[(([[[([([(([(([([(((([([([[(([((([(((([[([(((([((([[[([(([((([[[[[[[([[[[[(([((([[[[(([(([[[[([[(([[[(([(([[[([([([[[(([[[((([([([(([(((([((((([[[(([(((((([[[([[([[(((([([[[[(((((([[[[([([[(((([[([[[([((([[[[([[[[((((((((([([[((([[((((([[([[[[([[(([((((([([[(([(([(([[([([([(([(([(([[(([[([(([[[[([[[[[[((([([[[[[[([(([([((([[[[(([([((([((((([[([([[[([[[[([[([[[([((([((([(((((((([([([[[([(([[(([((([([[([(([([[([([[([[([[(([([([[[[[([(([([([[[((([([([((([[[[[([([[[([([[[([[([[([([(([(([[(([[[[((([[[([[(((([((([[(([(([(((([[(([[[([((([(((([[((([([[([([(([[(([([[([[[[[[[(((([[[[(((([([([((([((([[([([([([[(((([([((([([(((([[(((([(((([[[([([([[[([[([(([([[(([[(([((((([[[(([[[[([[((([[[(([((([[(((((((((([([[((([([[[[([[([([([((((([[[[[((((([([[([[([(([[((((([((([([((([[[[([(([((([([([([[(([[([((([[[[[(([(((([[[([[([([(([[(((([[([([[((([(((([([([(([([[([([(([[[[([[(([[(([[(([[[[((([[[[[[([(([([[[[[[[([[[([[([(([(((([([[([(([[[(([([([([([[[[[(([[(([[([[([[[[[((((((([[(([[([[[[([((([[(([[[[([(((([[[[([[[[([[([[[([[[[((([[[(([[[[[([[(((([([[[([[[[((((([([[[[([(([([[[([([[(([([(((([[(([[([([[([([[[(((([([[([[[([[[[((([(([([(((([(([[((((([([((([(([(([[([[([[[[[[[[(([([([(((([([([([(([([[([[[[([((([(([(([[((([([[[(((([((([[[[([[[((([[([[(((([[([([(((((((((([[[[[[[((([[[(([[[[[(([((([([([[[([([((((([((((([[((((([([(([([(([[(((([(([((([([[([(((([[([[[[[[[[[[([([([(([([([[[(([((([(((([[([([([(((([[[[(([(([((([([([[([(([[[[(((([(([([(([[[(([((([[[(((([((((([[[[[(([[[[[[([(([[[[([[[[[((((((([([([[([([[[[([[[[([(([[[(([[[([([(((([[[[[[([(((([(([(([[[[(([[[((([[(([([[[([([(([([(([[[[([(((([[[[([([((([[(((([[[(([[[[([((((((([([[[([((((((([([[(((([([((([[[[[[[((([[([(([((((([[[([(([(([[(([([([[[[[((((([[[[[(([[[((([(((([[[[(([[[([(([(((([(([(([[([[([(((([(([[([([([[[(([((((([[((([[[([[([[(([[[((([[[[[[(([[(([([([[((([(([((((([[[((([((([(([([[([([[([([[([([[[(([[[[[([[[[[[[[([([(((((([([([([([[[((([(((([([[([[[([[(([(([(([(((([(((([[([[([[([([([(([[([[[(([[[[((((((([(([[[([[[(([([([[[(((((([(([(([[[[([(([[([[(([(([([([([((([[[[[([[[([[[((([([([((([([(([[[[([[(([([[([(([[(([[([[([([([([[[[(([[[[([[(([[[([[[([([(([([([[(([([[((([([([[([[[(([(([[((([([[[[[[([[([(([([[[((([(([[((((((((([([(([(((([(([[[(([([[([([[[[[([[[([([[(([(([[[[([[[(((([(([((((((((([[[([[(([([([([((([[[[([([[(([[((([([(((((([([(([(([((([[[(([(((([([([([[([[[[[[[([[[[([[[[([[[([([(([(([([[([[([(([([(([[[[(([(((([((([(([([([[[[[[((((([((([[([[(([[[([(((([[[[[([([([[[[[(([(([[([[(([[[[(([[[[[([([[([(([([[[(([[[(((([((((([([(([(((((([([((([((([[([[((([[[(([[[((([(([[([(([[[[[([[(([[([(([[([[[[[((([[[([[[([[((((((([([[([[[[[[([((([(([([[([[[([([[[[([(([(((([(([([[((([[[[[((((([([[[((([([([(([(([([[[[([[[([((([(((([(([([([((([[(([[[[[(([(([[[(((([[(([((([(([([((((([([[[([[([(([[[([[[[([[[[(([((([(((([[[([[[[([([[[[([((([([[[[[(([(((([((([[([([[((([(((([(([[[[((((([((([([((([[[[[([(([[[[[[[([[(((([([[[[(([[[((([([[([((((([[(([[[[([[([(([(([([[(((([([([(([(([([[([[[(([[[[[(([((([[((([[[((((((([(([([[[([([[[[([(([[[[((((([[([[[(([[([[(((([[[(([[[([([[([[[(((([[[[[((([[([([([((([((([([[([[([[([([(([[([([([[[([[([[[([([([[((([([(([([([([([[[[((([((((([[((((([[[[([[[[([((([[([((((((([[(([(([(([([([(([[[[([[([[[([[([[([(([[(([(([[[[((((((([([(((([[((([[(((([[(((((((([[(((([[[[(([[([[[[(((([([[[[[[[((([((([([[[[[[[([[((((([[(([([(((([[[([[([[(([[(([([([[[[([(([([[(((((([(([((([[(([([([[([[[[[([[[[[([[(([[[[[(((([(([[[((([[([(([[[([([(([[[((((((((((([[(([[(((([(([[[([([[([([([[([[((([[[([(([[[([[([[[[((([([(([(([([([[[[([(([[[[(([[[(((([([((([([(((([(([[([((([[[[[((([[(([([[[([(((([(([([([(([[[[[[([([([([([([[[[([[[[(([[((([[[(((((([[[(([([((((([([[([(([([[[([[[(([([[[[[[[((([([((([[[[[[[([((((([[([([(([([[((((([[(([[((([(((([[[[([([[[[([(((([[[([([(((([([[([[[[((([[[[[([[[([[(([[(((([[[[((([[(([[[([[((((([[([((([([([([[(([[(((([[((((((([([[[([([([[([(([[[[[[[[([(([((((([[(((((([[[((((((([(([([(([(((([[[(([(([[([[((([(((([([[[[[[[[[([(([[[[((([(([[([(([[[([[[([[([[[([([(([([[([[[([[(([[(((([([[([[[([[[((([[([([([(([((([[[[(([[([([([[[([[[[(([([[[[[[[[[((([([[(([([(([([(([[([[[[([[[([([[([(([(((([[[[[(([((([([[[(([(((([((([([([[((([([([[[[((([(([([(([([[[[[[(([((([([[[[[[(((([([[([([[[[[(([[([[(([(((([(([((((([([[[([((([[(([[(([[(([[([[[(([[([([([[([([[(([[(((((([([([[([(([[([([[[([(([([[[(([[([(((([[((((([([([[[[([[([[(([[(([(((([([(([[([[([[[[([((([(([([[(((((([(((((([[([[[(([([([(([(([([([[[([[[([([((([[([[([(([[(([[[([([[[([[[(((([[([([[([[([[([(([[(([[[(([[[[([[[([[((([([[[([(((([[([[[[[([[([((([[([([[[[[[((((([[[[([[([([([[(([[([[[[([([[([(([[[([[[([[[[(([[([(([[[([((([((([(((((([[([(((([[((([[[[(([[((([[[(([[(([[[[[[((([(([(((([((([[[[([[(([([(((([((([[([[([([[(([((([(([((([[[([([[([([[[[([[((([(([([[[((((([([([[(([[[[[[[[([([[[(([(([(([([[[[([[(((([(((([[[[([(((([[([[([([([[(([((([(([([(([([([([(([[([([([[[((((((([[([((([((([[(([(([(([[[(([([[([([[(([(((([(([[((([(([[(([[[[(([[([[(([(([[[([([([[[(([([[[([[(((((([(([[((([[([[([[[[([([([[[(([([(([[([([[(([([(((([[[((([(([[[((((([[([[[([([((([([([((((([([[[([(((([(([([[[[[[([[([([([((([[[[[(([[([[([(((([[(([([((([[[[[(((([[(([[[([[(([([[[([[((([[([([([[([[(((((([(([(([[[[[((((((([[[[[[([[([([((([((([((((([[[[([(((([[[[((([(([([[([[[[(([(([[([[[([[(([([[(([(([[([([((([[(([[[((([[([([([((((([[[[[([(([[((([[[([(([([([[[(([([[([([(([[(((([([[(([([(([([(([[[[(([[[([(([[[([([[([[(([[[[[[[([[[[[[((([[([((([(((((([(((([([([[(([(([[(([[[[[(([([(([([[[[([(([([[((((((([((([(((([((([([[[(((([(([[([[(([([(([(([(((([(([(([((([[(([(([([[[([[(((([[[[(([[(([(([([[([([[[([[([[[([([([([((([[(([[(([([((([[((((([([(([(((([[[((([(([[[([[[(((([([[[[(([(([([(([[([[(((([([([[[([[([[[[([([[[((([([[([((((([[[([[([[([([([([([((([[(([(([[((([[([[[([[[[(([[[([[[([[([([(([((([([(([[[[[((((([[[(((([[[[[([[[[[(([((([([[([(([[([[(((((((([([[[((((([([[[[(((([((([[[[[(([(([[[[[[([(([[((([((([[((([((([(([[(([[([([[([([[([[[[[[[[[[[([[[[[((([[[([((([([(([(([([[[[(((([[[([[([[[[([[(([[(([([[(([[((((((([[[[((([(([[[[([(((([[[([(([(([(([(((([[[(([[((([[[([([([[[((((([[([[[([([[((([[[([([([[[[([[(([([([((([([[[([(([[(([(((([([(([[([[[[[([[[[(([[([[[([[[[[[[([(([[[([([[(([((((((([[[[([(([[([[[(((((([[([([([[[((([[([[((([[[[[([([[[([((((([[[[[[([[(([([([[[[[([[([((([[[(([[[([[((([([(([(([(([([((([(([[[[([[((((([[(([([[[([([[((([([((([[[(((((([[[[((([(([[[((([([([([([[[([((([(([[([[[([([([(((([[(((([(([([(([([(([([(([(([([((([((([([[([([[[[(([[([((([([(((([[([[((([([[([(([[[[([(((([[[([[[(((([(([([[((([[((([(([[([[[[(([(([([[(([[(((((([[[([(((((([[[[[[((([((([((([([([(((([[[[(([([([[(((((((([([[([[([([[[[[([[([[([([([([([([([([[([[(([[[[[[([([([[(([[((((([[[[([([[([([(([[[[[([([(([[[[(((((([(([[([(([[[[[[(([[(((([[(([[[(((((([([[[([(([(([[[[[[[(([([([(([[[[[((([[[(([(((([[(((((([[(([[[[(([((([[([(([([[([[(([([[(((([(([(([([[[[[[(([[([((((([[((((((([[[([[[([[((([[((([[([([([([[(((([(([[[[((([(([([(([(([[((([[(([([(([[([[([(([[(([[[([[([[((([([[[([[[[(([[((([[([([(([[[[[(([[([[(((([(([([(((([([([(([([(([[[([([((([([[[(([[(([([((([(([[(([[([([[[[([[([[[[[([[[(([[[((([[[([([([((([([[[[(([[[((((([[((([[([(([([[([((([([[[[(([([[([([([(([([([[((([(([(((((((([([(([[([[(([[([[([([[([([(([[[(([(([[[([[[[[[([[(([[([([([(([([(([(([[[([([([([([(((([((([(((([([([[((([(((([[((([[([[([[[[([(([([([(((((([[([[[(([(([([([[(([(((([(([([((([[[[[([((((((([(([(([([[[(([([[[([[([(((((([(([([((([[[[([(([([[[([[[[(([[((([[[[[[([([([(([[[[[([[[[[[[[[(((([[[([[((((([([((([([[([([[[[(([[([[([([[(([([(([[[[[[[((([[(([[([(([[((([[[[([(([[(([[[(((([([((([[[([[[([[[([[[([[[[([((([[[([(((([(((((([([[[[((((([(([([[([([([[((([((([([(([[[(([([([[([[[(([((([[([(([([((([([(([[[(([[((([([([[[([[([[[[([[[([[[([[([[[(([(([(([([[[[[[((([[(((([[([[([([((([[[([[[[[[[([[(([[[((([(([[([[((([([([[(((((((([((([[[([[[([((([[[([([[([((([((((([[((([((([[[((((([([(([(([[[[([([([([[(([((([(((([((([([[((([(([[[([((([[((([[[[([[[[(([[[(([[[(((([[([[[[[(([[[[(((([([[[[([[([([[((([([([[([(((([([([[([[[(([([((([[([(((([(([[[([[[[([[((([([[[[[[[([[[((((((([[[[(([[[([(([([[[[[((((((([[[[[[[[[[(([([([(([(((([[[[([[(((((([(((([([([((([(((([[[([([[(((([[[([([([([[([[(([[([([([[([([((((([([([[((((((([([[[(([[[[([[[(([((((((([[[[([([[([([[[[[[(((([[([(([([(([([((([[[([(([([([[([[([[[([(((([[[[[([((((([[(([[[[((((((([(([((((([([([[[[[([[([[[(((((([[([([([(([((([([[(([[[[((([[(([([[[([([[([(([([([([(([((([[[[(([(((([[[[[[[[([([[[(([[(([[((((([[([([[[(([(([[([[([[([[([(([((([(((([[((([[(([(([[[[([([[[[(((((([([[[[(([[([[(([[[([((([([[[([[[([([((([[[([[[([(((((((([(([(([[[[[([([[[((([((([[([((([[[[((([[[[[(((([(((([[([[[[((((([[([([([([(([[(((((([([[([[[[([[[([([[[((([((([([[[([(([([[[([(((([[(([(([[[([[([([(((([((([([(([([[[([([([[[[((((((([[([(([([[[([[[[([(((([[[[((([([((([([([[(([[(((((((([((([[[[((([[(([(([[((([((([(([[[((([[[[[[[[(([[([[[([[(([[([[[(([[([[([([[((([[[([([[(([[(([[([((((([[[[((([[(([[[[[[(([([([[[(([[[(([[((((((([[(([([[[[([(([[[[[(((([[[((((([[((([(([[(([[[[((([([(((((([((([[([([(((([([([(([([([((([[(([[(((([[(([[([(([([([[[([[[[(([[[[[[([((([[([((([[(([[([[([(([([((([(([[([(((((([(((((((([([(([(([(([(([((([(([[((([((([([([[([[[[([[[(([(([([[([([[[[[((([(([((([[(([[[([(([((([([[(((([[[(([([[((([[[[(((([[[[([((([(((((([(((([((([(([[((([(([([(([([((([[[[(([[[([([[[(([[[(([[((([[((((([[([((((([[[[(([[([[(((([([[([[[[([(([[(([([([([(([([((([(([[[(([[(([[[([(([[[(((((([[[(([([[[([[[[([[([([([(([[([[[([[([[[[[[[((((([([[((((([([(((([([([[([[[[[[[[((([((([(([(([[[[[[[[(([([[[([(((([[[[[[[[(([((([[[(((([([[[[([(([([(((([((([((([((([((([((([([((([([(([[[(((((([([(((([([[[((([([[(((((([[[[([([[((([([(([[[[[([(((([[[([(([[[([[[([[([[([[[([[(([[[[[[([([([([[((([[[([[([[[(([([(([([([([([[(([[[([(((([((([(([(([[([[[[[[[([[[[[[[(([[([([[([((([([[[[((((((((([(((((([[((([([([(([[([[[[[(([[((((([[[(([([((([[[([([([[([[[((([(([[[[[[[[((((((((((([(([([[([([[([(([[((([[([([([(([(([(([[(([[([([[((([([[[[[(([[([[[[[[[[([[[((([[((([([([(([((((([((([([[((([([([[[(((([[([([([([(((([(((([[([[[[[(((([[[([[([(([[[[((([[([[((((((([[[([(([[([[([[[((((([(([((([[[[([[(([(([(((([((([[[(((((([[([(([(([[(([([((([([[([[([[(((([[[[(([([[[[[(([[(([[[[[((([([([[[[[[((([[((((((([[[(([[([[[([([[([[[[[([([[((([([([(((([[[([(([((((((((([(([[((((([(([(((([(([((((([[[[((([((([[(([[([((((([[([([(([[[[([[[(([[[([(([[[([[[((([[[[[(((([((((([([[[[[[([[((((((([[([[[[[[[[[(([((([([[[(([((([[([[((([(((([([((((([([([[([[([([[([[(([(([[[([(([[[([(([[[[[([[[[[[[[((([([([[([[([[([[([[[(([[[[[(([([((([[[[[([[[[([[[(([[[[((([[(((([[[([[([[([(([([[((([(([((([[[[([([[[[[(((((((([[([([[[[[(([[[([([[([[[([[([[[([((([[[[(([([[([(([([[(([[[([[[[[((([((([[(([[([([([((([[[([(((([[[(([((([([[((([([(([(([[(((((([[([[((([([[[(([[(([([(([([[[(([([[[[(([([((([[(([[[[([([(((([([[[[[[([[([[((((([[([(([[[([([((([(([([(([[([([([([[[[[[(((((([([([[[([((([((([[[[[[((([([([(([[([(([()]))])]]))])])])))]]]]]])))])))])]]])])]))))))]]]]]])])])])]]))])]))])))])])]]]))])]])))))]])]])]]]]]])]))))])])]]]]))]])))])]))]]]])]))]]])]))])]))]]))]]])])))]])]]))))))]]))]))])])))]])])))]))]]]))))])]]])))])])])]]))]])))])))]]]]])]]]))]])]))])]])]))]]]])))])]]])]])]]])]])])]]]))]]]]])])]]))))))))]]]]])])]]]])))]))])))]])]))])]])]])]]]))))]])))]]]]))]]])]]]])]]]]])))])]))]]]]]))]]])]])]])]])]])])])))]]]]]]]])]]]]]))])]]]))])]]]))]))]])]])])]])]])])])))))])]))))])))]])]])))]))]]])])))]))]]]]]]]]])]])))))))]])]]]]]])])))))]))))]]]]])))]]])]]]))])]]]))]]])]]]]))])])]])))))])]]))]])))])))]]]])))))]))]))))]))])))))]]))])))))))))]))])]]]))))])])])))]])])]]]]])]])])]]])]]))]]])))))))]])))]]]]]])])])))]]]]]))]]))]]]]])]))]]]]))))]])]])]])])))])]))]]))]))])]]))))))]]])))]))))]))]))]])]]]])))]))])))))]]])]])]]))])]]])))))))]])]])))]]]]))])]])]]]))))]]]]])]]))))]))))])])])])]]))))]]])])])))]])])))])))))]))])])])))]])))]]])]]]]]]]])]]))]]]]])])))]])])]]))]]))]))]))])])])]])))]]))])]])])]])]))])))))))))))]]]]]]]]))])))]]])]])])])]]])))])]))]]])))))]]))]]]]])]]))])])])))]]))))))])))))))))]]]])])))])]])])]]))]]]]]]])]]]]]]])]]))]))])))]))))])]]]))]])])])])]))])]))]]])]])]]])))]])])])])]]]]]]))]])]]])]])]])]]])]]]))])]]]))))])]]]]]))])])))]])])]]]]))))))]])])))]]])]))))])]))))))]]]))])])))])])))])))])))])))])))]))))])]))])]]]])]))))]]])))]))]]]]]]]]))))])]]])]))]]]]]]]]))]))])))])))]]]]]]]])]])])]))))])])))))]])])))))]]]]]]])]])]]])]]))])])])]])]]]])]]])]))]]]))))))]]]))])]]]))]]))]]]))])))])]))])])])]))]]))])]]]])]])]))))]])]]))]]]])))))])]])))))]])))]]))]]]))]]])])]]]))]]]])))])]))])]))])))]]))])))]))))]))))))])))])]]]]))))]]]])))]])]))]]]))))]])])))]))])]]]))]])))]))])))]]]]])])]])]))]))]]])]]]])]])])])))])))]]))])))]))]))]))]))])]))))))))]))))))])]]))])))])]))])]])]]))]])))])]])))])]]]]]]))]]]])]]])])]))])]]))]]))))]]))]])))])])]))])])]))))])])]])))]))))))])])))]]]]))]]))])))]])))))]]]))))]]]]]))])]]]])]))]])))))))]]))]]]))]]])])]))]]]]]]))]])))]]]])))))])]]))]]))]])])]]])))]])])]])]]))]]])]]))]])]]])]]))]]]]]]]])))]]]))])))])))]]))]))]])))]]]])))]))))))))]]))]])])])))])])))]]]]))))])]]]])]]])]))])]])))))))]]]])])])]]])]))])])))]))))])])]])]]]))]))]]))))])]]])]))])]]])])))])))]]])])]]])]]]])]])]))))))]]))])])])])]])))))]]]])]]))))]))))]]]]])))]]]])))])]])))])))]]])])]]]]]))]))]))))))))])]]])]]])))])])]]])]]])])))])]]]))]])]]))]]]])]))))))]]]])])]]]]))]))]])))]]))))])))]))])]])]])]])]]))]))]]])])]])))))]]))]]))]]])])]]]]]]]]))))]))]]]])))]))])])])]))])]])])]]])]))]])))]]]]))]])])))]))])])])]]))))))]]])]])]]]]])])])))))]))])))))))]]]]))]])))))])]]]]]))))])]]])]])]])])]))])]]])))])]))])]))])]]))))]]]]]])])]])])]]]])))))))]))]]])]]]]))]]])])))))))]])])])))))])])]])])])]]))]])]])])])])]]]))))]])])]]]))))])))])])]))))]))))))]])]]]]))))]))])])]))]]]]]]]]]])))))))]]]]])]))])]]]))]]]])))))))]]])]]]]]]])])))]])]]]])]]]))]))))])]])))])]))]]])]])])]))))])]])])])))]])])]])]]]])]))))]]]]))]]]]])]]))))]]]))]]]))]]]])]]]])))]])))])]]]))])))]])])))]))))])))]))]])])])])]]]]))]))])])))))]]])))])))]])))))])))])]])])]]])))])]]])]]])))]))))))))]])])])))]])]]))])))]]]))]])]]]]]]])]]])))])])]])]]))))]])))]]]]]])]))]))]))]]])]])]]])]]])]]]])]])]]])])])))]]))]]]))])])))])]))])]])))]))]]])]])])]))]]]))])])))])))]])])])]])]))])))))]]]])]))))))]))))])]]])))])]]]])]]])]]])]]])]]])))])]))))]]]))]]))])]]]])))]]))])]]))]])))]]]]]]]))])]))]])])]])]]))]]]])])]])])))])])))))]])]]]))))]]]]]]]]])]]]]]))])])])]]]]]])))]]))]]]])]]])]))])]]]])))])]))]))))))])]])]]])]))]]])]))]))])))))))])]]]]])))])]))]))))]))]])])]))]))]]])]]))))))])])]))])]]]])]])]])))]]))))])))]])])]))))])))]))))])])])])])]]]))]))])]))])])])]]))]])]]]]]])]]]))]))]]]))])])]])])]])]]))]])]]))])]))))))))]))])))]])])]))])])])]])]))]]]])])))])]])]))])]])))]])))))]]]))]]]])])))])])])]]])))]]]))]]])]]]]])]])]]]])])]]))]]))])))])]))]]))]]])])))])])]]]))])]))])])]))))])]))]))))]])]]))]]]]]))])])]])))]]))]]]])]]])])))]])]])]]]))]]))])]])]]))])]))]])))]]))]))])]))])))]]]]))]))))]])])])])]])))]])))]])]]])]]])))))))]])))))])]]))]]]]]])]))]))]))))]])]))]])]])]))])]])))]))]]]]))]]))))))]]))))]))]]])))]]]]]))])])]))]]]]]]]))]))])]]])]))))))]]]))]]))))]]))]]]]]]))])]]))]))))))]]]]))])])]]]]]))])])]])])]]]])))))]]))]])])])]]]]]]))]])]])])])])])])])])]])]])]]]]])])]])]])]))))))))]])])]))]]]]))))])])])))])))])))]]]]]]))))))])]]]))))))]]))]])]))]))]]]])]]))])))]])))]])]))]))))]]])]]]))))])]]]]))])]])])))]])]]))))])])))])]]))]]]])])]])])))])))])]))]))])]))])]))])]))]))))]]))))])])])]]])]]))])))])]]])])])])])))]]]))])))]]]]))))))]]])))])])))]])])]]])]))]])))))]])]]]]))])))])]))]))]))])])))]])]]]))]]])))])]])]]]]])])]))]])]]]]]])))))])]]])])]]]]])))]])]])))]]])])])]]))))))]]])]]))])]]]])))))))]))]])])]]]))])]]]]]]])]]])]]))]]]])]]]]])]]))])]))))]))]]))])]]])])))])])]))]])]]]])])])]]])))]])])]]])]])))))]]])])])]]])))]]))]]]))))]))]))]))])]]]))))])]]]]))])))]]]])))))))]]))]])]))]]))]])]]]])]])]]]))))]]]])]))]))])])))])]]])))]]]]])]]]]]]]]]]])]])])]])])]]))]]))])))])))]])))])))]]))])]]]]]]))]))]]]]])))]))))]]]])])))))]]])]))))))))]])]]))])]])])))]))]]]]])]]]]]))))]]])))))]]]]]))])])))]))])])]])]]])]]]))]]]])]]])]])))]]))]))]])))])])])])])]])]])]]])))))])]])])))]]])])]]]])]])]]])])]))))]])]]))])]))]))]]]])]))))]]])]]]))])))]]]))))]))])])))))]])))])]))]]))]])))])])])])]]])]])]]])])]])]))]))]]))]]]]))))]])]]])]))]))]])))]))]))]))))]))]))])]))]])]]))]))))]]])])))]))))])))])))))))]])]))])]]]])]))])]))]]]]]))]]))]))]])])]))))]))))))])))])]])))]]]]]])]]]]]]]))]])]])])]]]))])]]]))]]]]))])]))])]))]])]))))]]))])])]])]))]]])])]))])]]])))]]))])]]]]])))))])])])]])))]]]))]])))])])]]))]))]])]))]])]]])]]))]))]]]])]])]))])))]]]]))))])]]]])))))])))])))])])]])]]]]]])))))))]]]]]))]))]))))))]])]])])])]])))]])]]])]))]])]]]))]]))))]]]]])))])]))]]))))])]])]]))]]]]])))])])])]])]]]]]])]))]))))])]]])])))))])])])))])])]]])]])))))]]]))])))]]]))))])]))]])])]]))])]))]]])])])]]]])]])]])))]]))]))))))]])]]])]))]]])])])]]]))]))]])]]))]]]]))]]))])))]]))]))))]))]])])]])]))]]]))]))]))]])))])))])]])))))))]]])])])]]))])])])]))])]))])))]))]])])])]])]]))))])]]]]))))]))))]])]]]])]))]))]))]]])])]]]]]]]]))]])])])))))]]])]))])))]])]]]])])]])])]]])))]))])))]))]])])]])]])))]))))])]))]])]]]])))]))))]))])))]]]]]]))]]))]]])))]]))]]]])))]]))))])]]))))))])))])))])]]]))])]]))]]]])]]])]]]))])]])])]]]])]]))]])])])]])]]]])))))]]]]]])])]])))])]])]]]]])]]))))])]]])])))]])]]])]]]]))]]]))]]))])]])]])]])])]]))))]]])]]])])]]]))]]))])]])]])))])])]]])]]])])]))]))])])]))]]])]]))))))]))))))]])]))])))])]]]])]])]]))])]))))]))]]))]])]])]]]])])])))))]]))))])]]))]]])]))])]]])])]]))])]])])]))))))]]))]])])]])])])]]))]]])]]))]]))]]))]])))])]]])])))))]))]))))]))]])]]))]]]]])])]])]))))]]]]]])])))]))]]]]]])]))])]))])))]]]])])])))]])])])))]))))]))]]])])))]))]]]]]))))]))])]])])]]])]]]])]]))])]))])]))]])])))]]]]]]]]])]))]]]])]]])])])]]))]]]])))]))])])])]])))]]])]]])]])]))))]]))]])]]])]])]))])])]]])]])]]])]]]))])]]))])))]]]]))])]]]]]]]]])]))))])))]])]]))]))]]]))))]))])]))])))))))]]]))))))]])))))]))])]]]]]]]]))])]])])])]]])])))))))]]))))]]))]])])])])))])]])))))]])]]]))]])))]]]]))))]]))]])]]])]]]]])))]]]])]])]))))])])]]]))))])]]]])])]]]]))))])))]]))]])))))]])]))])])]])))))])]]]]]]])))])])))]]]]]]])]))]]])]]])]))])]])])))))])]))]]]))))))]]])))]]))]]]])]]]])])])])])])]]]]]]))])])]))]))))])]]])]))]])))]]]]])))])]]))]))))])])))])]))))]]]))]]]]))])]]]])])]))]))])])))]]]])]])]]]))])]]])))]])]])])])]])])]]]))]))))]]))]])))))))))))]]]))])])]]]))])]])))]]]))]))))]]]]]))]])]]]]])]]]]])]])])]))]])))]))]))))))]])]))])]]]])])]))]]))]])]])]]]))))])]))]])))))]])]]]]]]])])))])))]]]]]]])]))))]]]])]]))]]]]))))]]))))))))]]))))]])))]]))))])])))))))]]]]))]))]]))])]])]])]]])]])]]]]))])])]))]))]))]])))))))])]])))])]]]])]]]])))))]])))))])))]]]])])])])]))])])))]])])])]]])]])]]])])])]]))])])]])]])]])])))])))])])])]])))]]]]]))))]]])]])])]]]))]]]))))]])]]))]]])]])))))]]]]))])]]]])])]]])]))])))))))]]])))]])))]))]]]]]))]]])]])]))]))])])]))))]])]))]))])]])]]]]))]])))))])]])])))]]]))]]]])]))))]])]]]]]]]))])]]]]])))])])))])))))]]]]))]))))])))]])])]])))]))))]))]]]]])])))])]]]])])]]]])]]]))))])))]))]]]])]]]])]]]))])]])]]])])))))])]))])))]))]]))))]]]))]))]]]]]))]])))])])]))]))))])))])]]])]]]])]))]))])])])))]]])])))))]]]]])))]])]))]))))]))])]]]])])]]])]])]))])))])]]]]]])]])])))))))]])]]])]]])))]]]]])]]))])]]))]])]]]]]))])]]))])))]]]))]]])))]])]])))])))])]))))))]))])])))))]))))]]]))]]])]))])]])])]]]]]))]]]]))]])]]))]))]]]]])])])]]]]]))))])]]]))]])]])))])))))]]]]]])])]))])))]))))]))]]]]))])]))])]])]])]))]))])])]]])]]]])]]]])]]]]]]])]])])])]))))]))]]])))]))]))])]))))))])])))]]))]])])]]]])))])])])]))]])]]])))))))))]))]))))]]])]]]]))]))]])])]]])]]]]])])]])]))]]]))]))))]))])])))))))))]]))])))]]])]))])]])]]]]]])])))]]))]))]]])]])])])))]])]))]])])]))])])]]])]]]))]])]]]]))]]]])])])])]])]]))]]))])]])]))]])]]]]))])])))])])])))]]])]]])]]]]])))])])])]))]))]])]]))])]]]]))]))]))))))]]])])]))]]])]]]))])))))))]]]]))]]])]]))])])])]])]])]]))))]))))]))]))]))]])]]])]])]))))])))]]])])])])]))))))])])]]]]]]]])]]]]]))]]])])]])])]])])]])]))])))])))]]])))))]))])))]])])]))]]))]]]]]])))]]]))]])]])]]])))]])))))]))]]])])])]]))]))))])]])]]))]))]))))]))])]]]))]]]]))))])))]]]))]]]]])))))]]]]])])]))]]))]))])]]])))))]))])]])))]]]]]]])))])]))))]])])))))))])]]])])))))))])]]]]))]]]))))]])))])])]]]]))))])]]]]))])]))])])]]])]))]])))]]]))]]]]))]))]))))])]]]]]]))))])])]]]))]]]))])]]]])]]]])])]])])])))))))]]]]])]]]]))])]]]]]]))]]]]])))))]))))]]])))]))]]]))])]))]))))]]]]))])]])])])))]))]))]]]]))))])])])]]))))])))]))]]])])]))])])])]]]]]]]]]])]]))))])]])])))]))]))))]]))])]))])])))))]])))))])))))])])]]])])])))]))]]]]]))]]])))]]]]]]]))))))))))])])]]))))]])]])))]]])]]]])))]))))]]])])))]]))]))])))])]]]])]])]))])])])]))))])])]))]]]]]]]])]])]]))]))])))])])))))]]))]))))])]))])))]]]])]]])]])]))))]]])])]])])]]))]]))))])]))]])])]]])]))])]]]])])))))]]]])]]])]))))]])]]]]]))]]])))]]]])]]])]])]]]])]]]]))))])]]]]))]])))])]]]])]]))]])))))))]]]]])]])]]))]]))]]]]])])])])]))]]]))])]])]))))]))])]])]]])]]]]]]])]))])]]]]]])))]]]]))]]))]]))]])]]]]))])])]])]))])])]))))])))]])])]]))))]]))])])]])]]]))))]))]]]]])))])]]))]])])])])))]))])]]]])))])])))])))))]]))])]])]])])))))]]]]])))))])])])]])]]]])])))]])]))))))))))]])))]))]]])))]])]]]]))]]])))))]))]]))]])]))])]])]]])])])]]]))))]))))]]))))])])))])]))))]])])])])]])))])))])])]))))]]]]))))]]]]]]])]])]))]]))])])]])])))]]))))])))])]]]))]]))))]))]))]])))]))))]])]]])))]]]]))]]))]))])])]])]])]]])])]]])])]]]]])))])])])))]]])])]))])]]]]])])]))]])]])]])])]])]))])]])])))]))]]))])]]])])]))))))))])))])))])]]])]])]]]])]]])])]])))))])))])]))]]]])))])]))])]]]]]])])))]]]]]])]]]]))])]]))]]))]))]))])])])]]))]))]))]])])))))]))]])]]]])]])))))]])))]])])))))))))]]]])]]]])))])]]])]]))))]])])]]]]))))))]]]])]))))]])]])]]]))))))]))]]])))))]))))]))])])])))]]]))]]])])])]]]))]))]]]))]])]]]]))]))]]]])))]))]]]]])]]]]]]])))]))])]]])))]))))])]]))))])))]))]])])]))))])]))]))])])]]]))]]])])]])])))]))])]))]]]))]))]))]]]))]]])])]])]]])])]]])]))]))]]))))]))))]]]]]])]]])))))))]))])))]]]])))])]])]]))))])))))])])])))))]])])]]]])]]])))]]])))]])]])]]]]]))))]]))]]]]))])]])]]])])))))]])])]])]]]]]))]))])])]])]))))))])]]))]])])]]))))]])])])))]))))))])))]])]])))))])))])]]]))]]]]]]))]])))]))]])]])]])))))]))])])])))))]]])])))]]]))]))])])]]]]])]])))])])]))]])))))]))]]]]]))))])]]]])))]]])))])])))])))]]]]]])])]))])]]]])]])]]])]]))])))]))]])]]]]))])]]]))]]))]]))])])])]]]]])]))]]])]))])]])])])))])]])]))])])])])]))]))])])]))]))]]]))]))]]])]])])])))]])]))])]]]))]])))))]]])]]))])])]]))]])]]]])]])))]])]]]))])]])))])])])])]]]])]])])])])]]]])]]))])]))]])))]])))))]])]]])]))])])))]]))])])]])))]])])]])))))])])]))]]))))]]))])]))])]]]])])]]])))))]))]]])])]]]]]]]))]])]]))))]]))]))))]]]])))])]])]))]))])])))]]))]))]))))))))])))])]]])]))]))]])]))]])))]])]])])))])]))]]]))]]]]]])])))]))]))]))]]))]]))]]])])))]]]))]))])]))))])]]))])))])))])])]]))))]]]])])])])))]]))])])]])))])])]])))])]]])])]])])))]]))]]]])]]]])])])]]))])]])])])))]]]])])])]))]])])]]))])])]])]))]]])]]))))))))]])]])])]])])]]])]))])))])]]])])]])))))]]]))]))]))]]]]])]))])])))))]))))]]))))))))]]]])])]))))))))])))))))])]]))]]]]]))])]]))])])]))])))]])]]]))])]))]]]))]]]]]]])]]))])])]]])]))]))])]])]])]))])])])]]]])]]]))]]]])]))])))]))]))])]])]]])]))]))))]])])))]))]]]]])])))]]]]))])))]])]]])]])]]]))))])]]])])))]))]])))])))]]]]))))]]])))])])])]]))])])]))]])]])]]])))]]]])])]))]))))])])]]]]]])])]]]])])]]])))])]))))]]]]))]]]]]))])]))))))))))]])])]])]]]))))])])))])]))))])]]]]]]]]])]))])]])]]])]))))]]))))]))])))))]]]]]]])))))]]))))]])]]]))]])))])]])])]]]))]]])]))]))])]])))))))]]])])]]]])))]]]]]]]]])])))]])))]])]]))))]]))]))])]]))]]))])])])]]])])))))))))]]]]])]))])]))])]]))]]))))]))))))]]]]]])])))]]]]])))]])]])]]])))]]))))]])))]]]))]])])))]))))]))])))))))))]))]]))]]]])])])]]]]))]])]]]]])])))]])]))]]])]]]))))]))]])))]]])]])))]]]]])]]])]])))]))])))])))]]]))]]])])]))]]))]]))])])])]]))]))))]])])])))]))])]]))))))])]]])))])]])])]]]))]))]]))])]))]]])]]))])))]]]]]))]))])))]))]])]]]))))]])))]))))]])]]))))])]])))])])]]])]))]])])))))]))]))]]]]])))]]]))))))])))])))]))))]))])])]]]]])]]])]]]])))]])]]]]))]))]]))]]]]])))]]])]]])])])]))))))))])]])))))]]])])])]]]])])])])))]]))))))])))])))])]]])]])))])])]]]])])))]]]])]]]]))]])))]]]])]))]]]))))]]))))]]])]]])]]])])]])))]])))]]]]])]))]]]))))])]]]])]]])))])]])))]]]]]]]))]))]])]]]])))]))])]))])]))])]])])))]])]))]])]))])))))))]])]]))])])])]]))]]]]))])))]]])))])]))]))))))]])]])]]])])]]]]])]]]))])])])]])))))]]))])])))]]))])])])]])])]]]])]))]))]]))))])]))])]])))])]]])])])]])]]]))]))])])]]])]])]])]))]]])]])])))])]))])])))]))]]]])]]]])])])))])]]])]]])]]))]))])])]))]]]]]])]]]])]]))))]]])]))]])]]])]])]]]])))]])))]))])]]))]]))]))]]))]))])))]])))]])]]))]]))))]]]]]))])]))]]]])]]))])]))])]))]])]))])]]]]]])]))))])])))))]]]]]]]))])]))))]])])))])]]]]]]])]])])]]))]]])])))))]]]])]])))]))))])]])])))]])])]])))])])]))))]])]]])))]))]])]))])])))]]]]])]]]))]]]]]])))])]]]]])))])])]))]])]])])]])])]])]]]))])])])]]]))]))])]]])]))]]]]]))])]]))])))])]]))))])])))]])])]))]]]]]))]]))])]]))])))])))]]))))]))))])])]])])))])]]]]))])))))]]])]]))))]))])])]])])]))]])])])))]]]])]]]]))]]]])])]])]))]]]]]]])])]))])]])]])]]))]])])])]]))])))]])))]]]]]))]])))]])))]]]]))]))]])]))]])))))))]])))]])]))]]))]]]])]]))])])])]])))))]])))]]]))))])))]]]]]])))]]]]]))))))))))]])]])])]]])))])]]]))]]]]))]]]))]]]]))]]]]))]]]])])]]]])]]]]))]])))]]]]))]])))]]]]])]]]]])]]])))]]])]])))]))]]])))))]]]]]))))])]])]))))])]]))])]])]))))])]])]))]]))]]))))]]]))]))]]]))]))]]]]]]]]]]]]]])))]]]])])])))]]]))]))))]])]))))]))])])))))))))]))))])]]))])])))))]))]])])]])))]])]]]]]])]))]))))]]))]]])]))))]])])])))]))]]))]])]))]]))]))]])))]]]]]]))))]])]))]))]))))))]))]))]]))))]]])))))]]]))))]]]))])])]))]]]])]]])]])])]])))]]))]]])])]]]))]])])]])]]])]]]]]]))]]]]]]]]]]]]]]])]])]]])))])])])]])))]))]]]]])))]]])]]))]]))])])))]]]]]])))])))))]))]])]]))]])))))])])]]]]]]]))]))])))]])]])))))]]))]))])]]]))]]])]))]]]))))]))))]))])]]])])))])]])))]))]]])]])]])])]))]))]])]]))))))]])]]]]])]))))]))])])]]))))]])))]))])]])]))))]))])])]))]]))])])])))]))]]]]]]))])]]]))])))]]]])]))))))))]]]]]]]]))))]]]])]]]]])])]))]]])]]))])))]]]])]]))]]]])))))])]]]))]))]]])])))))]]])])]))))]]]]]))))])))))])))])])])]])]]]]))])])]))))]])]])])])]]]]]]]])])])])))])]))]]))]))]))))]))])]])))]]]))]]))))])]]]])]])]))])])]])))]]]]))))))]]]])]]]])]))]]]]]))])]]]]]))]]]])]))]])]])]]))]]]))]]])))))]]])]))))])))]])]))]))]])]])]))))]]))]])]]])))])]]])])]]])))])])])])))]])]]))))))]]]))))]]))))))))]))]))])])]])]))])]]]))])])]))])))]])]]])]))])])]))))]]])]])]]]))]))))])])]))])))))))])]])))]]])))]])))))])))]))]))))]]])]))]]]]))]]]]]]])]))]])])]))]])]))]]))]))])))]))])))))])]]]])))]))))]]]]]]])]]]]])])))))]]]])]])]]])]))])])]])]]]])])))))))))])])]]])))]]])]])))]])]]]]]]])]))]))]]]))]))]))])]))]))]))))))))])))))]])]]]))]))]])))])]])]]]])))]])]))))])]])])])]]))]]]))))))]])])]])]])]]))]))]]])))]))]])))])))])]))])]]])])))]]]))]])))])])))))]])]]]]])]))))]])]])]])])]]]]]])]))])))]]])))))))]]]])]))]]]))]])]]]])))]]))])])])]])])]])))]]]]])]]]))])])]))])))]]]])])]))))))))])])]])]]]]])]]))])]]])]))))]]])))]]]]]])]))]])]]]]]))])])]]])]]]))]]))]])])]))))]]]]]]])])]])]]]])]]]]]]]]]]]]]]])]])))))])))])]))))))))]])])))])]))])])]])))]])]))]]]]]]))]))]]]]]])))]])]]))])))))))]))]]]])))])])))])]]))])]]]]]]])))))]])]]))]]))))))]))])])))))])]])]])])))]]])))]))])]])])])]])])))))))]]]))])))))])])])))])))])]]])]))]]))])]])])]]))]))))]]])]))]])])]]]]]))]])]))]]]]]]))]]])]]])]])))])]))))]]))]))]]])])]))])]]])])]])]])]]])])]])))]]))]))]]))))]))]))])]]))]]]]))))]]]]))))]])))])]]])]])]])))))]))))]])]]])]]]])])]]))]]))))]])))]))])]])])])])))))]]])]]]])))]]]))])]])]))))]])]]])]]]])))))]])]]]])]]]]]]]])])]]]]))))])]]]])))])])])])])))])])])])])))]))])]]))]))))]]]]))])])))]))])]))])])]))]))]]])]]])))]]))))]]]))))]]))]]))]))))]]])]])]]]]]])]]))))]]])))]]]]])]))]))]]]])]]])]]])])])]))]]))]]]])))])]])])])])])]]]])))))))])])]]]])]]])])])]]]))]]])]]))))]))))))]]])])))]]))]))]))))]])]))])])])])]]]]]])])]))]]]])]]))]]])]]]])]]])])])]])])]])))])]))))))]]]])]]))]])]]]])))))))])]]]]]]]]]])])]])]]])))])]]]])))])]))))]]))]])])])]))]])])))]))]]])]]))]]])])]))]))])]))))))]]]))))]])))])])]]))])]]]]))]]))]]]])]])]]])]))])])]]])]])])]]))]]]]])]]]]])]])])))]])]])]))])))])]]))))))]]))))]])))))]))]]])))]])]]]]))]]))]])]))]]]]]))]]))]])]]])]))])])]]]])))]]]))]])))]])]]))))]]))]]]]])]])]))]))]]))))])])))))]]]]]]])])])]))))))))]]]]]))))]])])]))])])))]))]])])]))])]]))))))])]])]]))]))))))]))]])])])]]))))]))])))]))]])])))))))))]])])]])]]]))])]])))])))]]])]])]))])]]])]))))]))])))))))]])])]])])])])])])]]])]))]])])]]))))))))]]]]])]]])))))]))]])))])))))])))])]]))))]))]])]])]]]]])]]]])])))])))]]]))])]])))))]))])]]])]))))]]]])]]]]]])))]))]))])])])])]])]))])]))))))))]]])])]])))]]])))]))))))))]]))])]])]]))]]]))]])]])])]]])]])]]]]]))]]]))))]])])]]]])])]])]])]])])))]]))))))]]]]]])]]])]]))]]])]))]]]])])))))]])]]])]]])]])])]])))))))))]]])]])]]]]])]))]]]]])]))))])))]))]]]))]]]]]]]])))))]))))))]])])]]))]]]]])])]))]))]])))])])])]]))]]])))]]])))))))])))]))])])]])]]]])]])]]]]]])])))])])]))]]])]])))]))])])]]))]))))))])]))]))))))]]])]])]]])])))]]]))]))))]])))]]])]]]]]]))])))]))))])))]]]])]])])]]])]]))]]))))]])))))]))])])])))]]])]))))]))]]]]]))))])]]])])))]])]))]))])])])))]])]])]))])]])])])))]]))]]))]))]])])]])]]]])))]))))))])]]]]])])))])))]]])])]]])])]])))])]]]])])]])])])]))))]]]))]))])))]))]))]]]]])])]]]))]]]]))]]]]])]]]))]]])])]))])))))))))]])))]])]]))))])))]]]))))]]]])]]]))))]]))]])])])]])]])]))]))))))]))]]]])))]])))]))))))])]]])))]]))))]))]]]]])])])))])))]]]]]]]]]]])]]]]]])])))]))]]])]))])]))])))]))))])))]]]))])]]])))]]]])))]))])]])])])])))]]]]))]))])])]))]])]))]]])))]]]]])]]))]))]]))]]))))]]]]))]]]]))]])]])]))))]))))]]]]])]]))))))))]]])))])])))]]]])))])))])))]]]))]])))]])])]])])]])]))])]]))]]])))]]]])]))]])))])))))]]]]])]]]]))]])]]))]]]])])]))))))]]])]))]]])])))])]]]]))])))]]]]])))])]]])))]))]]]))))))])]]]])]))))))])]]]))]))]]]]])))]]]))))]]))]))]])])]))]]))]]]]]]))])]))]]]))]]))]]]])])])]]]])])))))]])]]]]])))])]]])])]])])]]))])]])])]]]]]]]]))])])]])]))]))]))]]]))]])]))))])]))))]]])))))))]]]]]]]]])))]))])]))]))]])]]]])))]]]))]))]])]))])))))]]]))])])]]))]))))]]]])])]]]]])))])])))))]))])])])]]]))])]])]]])))])])))]))]])))))))]]))))))]))]))]]]]]))))]))]])])])))]]]]]))]))])])]])]))]])))]]])]]))]]])])]])]))]]]]))])]]])))]])))])])])]))]])]]]]]]))])))])]]])])]))))))])])])]))])])])]))])]]))]]])]))])]])]]])]))]]]]])]]]]])])]))]))]]]))))]]])))]))))]))]]))]]])]))]))))])))])))])]])]]])])]])))))))))))))]]])]]]]]))])]]]])))]]]]]]])]]])]]))])]])]]]))])))])]]])))]]]])])]))])))]]]))]]]]]])])))))]])]])))]]]]])]))))))))]]))])])))]))])])])]))])]]))])])))]]))))])]])]])]))]))]])))]]]])])]]))]]]]]])))]))]]]]]]]]])]]])))))]))]))]]]]]]))])))])])]])]])]))])))]]))))]]))]]]])]]])]]]]]]]]]])))))])]]))]))]))]]))])])]]))]))]))]]]]))]]]]]))]]]])])))])]])]]]))]]]]])))]]]]])]])))]])])))])))))]]]]))]]]])))))]))]))]])]))]))))])])]))))))])))]])))]]]])]]])])])))])]]]]]]])]))))))))))))))]))))]))]))))]]))))))]])])])]))))])]))]]]])]))])]])]]]))))]]])]]))]])))]]))]])]])])))]])))]])]]])])))])]]])])]]))]]]]))))])]]]]])])]))])])]]]))])]])))))]))))])))])))))])]))])]])))]]]])]])))]))))])])))])))])]))))]]))]])))]])])]))))]]))])])]])]))))))])]])]])])]))]))]]))))]]])])]])))]]))))]]])]]]]])]]]])]])])]))]])]))]])])))))])]]]))]]])])]]])]])]]])]]])))))]]))))))])]])])])]])]]))]]]))]))])]])])))]))]))]))]))])))])]]))))])]]))])])))))))]))))]])])))))])))]))]]]])])))]))]]])))]]))]]])]]])))))]]))])))))))]]))))]))))])))]])]]])]])])])]))]]])]])]])))]])]]]))))])]]]))]]))])]]))))]))]]])))]]]))]]]])]]]])]])]])))]]])]))]])))))]]]])])]]]])]))]]]))]])))])))]))])]))))]))]])))))))))])]))])])]))]))]]]]]]])])]))])]]))))))])]])]]]]))]])]]]]])))]]]])]))]]]]]]]])]]])])))]]))))])])]))]]])]))]]]]]))))]]]]]])))))])))]))])]]))])])])))])]]))))]))])])]])])]))]]])))]))))]]]]]]]]]]])))]])))])])]]))]]]]])))]]]]))]]]]]]]])])])])])]]]]])]])]])]]]]])]])]))))]]]]]]]])])]]])]]]]]]))])])))))]])]]]]))))]]]])]]])]))])))]]]])))]]])]]])])])))])])])])])]))))]])]]]]])])])]])]]])]]]])]])])]])])])])])]]])]]]])]]])]])))]]]])))]))]]]]])])))])]]])))])))]]]])])]))])))))]]))))])]]]]))))])]]]]))])]])]]])))]])]))]])])))]]]]))])])]]))])]])]]]))])]])]])]]]]]]))])]]]]])]])]]))])]]]]))]]))])]])])]])]]]])))])])))]))]])])))])])]))]])))]]])]]])]]))])]]])])))])))]))]]]]]])])]]])))]])]]]]))))]])]])]])))])]]))]]])]]]])))]))])))))]))]))]])]]])]]])]]]]])]])]])])])))))]])))))])]]])]))]])]))]])]]]]]]])]])]]))]])))]]))]])]]])])]]]]))])])]]]]))])])))]])]]))]))))]]]])))])])]]]]))])]]]])))])]))]))]])]]]]]])])]))])]])])))]]))]]])]))]]]]]]))]]]]])))))])]]))]]])])))])]])]))))]]])]])])]]]]]))))]]])))]]]]]])]))]))]))]]))]))])]))]))]]))))]]])])))]])))]])]]]])))))])))))]])]))))]])]])))]))]]]]]]]])]))]]]]])]]))))])]))))])])]]]]]]]]))]])))]]])]])]]]]]]]))]]]))])]))]]]]))))]]])]]])))))]])])]]]])))])]))]]]]))]])]]))])]]]]])))))])))))))]])))])]]]])))]]))))])))]]])))])]]])]))]]]]]]))))))))]]))]]]]]])])]])))))]))]])]]])))]]))]])]]])]])))))]]))))])])]))]])]]])]]]])])]]])))))]]]]]))))))]])]))]))]]]))))]])))))]]]))]]]]])))))))]])]]]]))])]]]]])])]])]])))))])))]))]]]]])))]))))]])]]]]]))])])])])]])])))))]])]))]]]))]))])))))])])))))))]]))))])))]]]]))]]]]))))))]]]]])])]]]])])))])]]])]]])])]]]]]]]])))])]))]])))])])])])]))])]))))])])))])]]))]])])))]]])])]))])]])]]])])]]]))]])]])]]]]]]]]])]]))]))])]]]))]])]]]]]])]))))]]]))])]]]))])])])]))])]]]]))))])))]))]))]])]])]]]]]]))])])))]))])]]]]))))))])]]]))]]]]]])]]])))))]]]))]]]))]))]))]]))]]]))))]])]]))))))]]])]]]]])]])))]]))]])])])))]]))]])))])]]]]]]]))]]]]))]])))])]])])])))))]]])]))])])]))]]])]))]]])))))]))]))))]]]]))))]])]))))))]]))]]]])]))]]]])]])))]]]])]]]])))))))]]])))]]])]])])))]))]]]]]]]])))]])))]]]]]]))))))])]]))])))]))])))))])]]]])))))]])]]))])))))])]]])]]]])))]))]))]]]])]])])))))))]])])))])]]))])]]))])])]]])])]])]]])))])]]])])]]])))]])])]]))])]]]])]]))]])]])]])])])]))]])])))])))))]))))]]]]))]]]]]])])]])))])]])))])]]]]]]]]]]]]]))]])]])]))]]))]))))))])])]]))])]])]])]])))])]])]))]])))])))]]])]))]))])))]])]])])]]])]]))])])]))])]]))]])]]))))))))))))]]]]])))]]))]))]]]])]))]]])))]))])))]))))))])]]))))))]])))])]]])))]])]))]]])]]]]))]])])))))]])]])])])])]))]]]])])])]))]]))])]]]])))]])]])]))]))]]])]]]]]]]]]]]))]))))))]))]]])])]])]])])]))]]]]))]]]))]]))]])]]))]))])])]]]))))])]]))]]]))])])))]]]]))]))]))]])]])]])))])]])]))]])))])))]]]])]]]))]]]))))]]]])))]]]])]))]))]]]))))]))]))]))))]))]]]))))))))])]]])))]]))]]]]])]])]]])]])))))))]))]]]]]]]]]]))))]))]]])]))])]))))])])]]))])])])]])])])]]])]]]])]])])]]))]]]]]])]])]])))]))))])]]])))))]]))]))])])]]]))])]]]])])))])]]))])]])]))]]]))]]))]]))])]]]))])))])]))))]]]])]]])])]])]]])])))])]])))])])))]]]))]])]])]]]])]))))]))])])]]))]]]]])))))])]))]])]]])])))))]])]]]]))))]]))]))])]]))))]]]])]))]])]])))])]])]]]]]))]])))]))])]]]))))))]]]]]]]]]])]])]]])]]))))]]]]]])]]))]]])]))]))])])]]])]]))]])]]]])))])]))))]))]))]]))]))]]]))]]]]))))]]]]))]])])])))])))]]])])]))])))]]]))))]])])]]))))]))]]])]))))]])]))]]]]))))]]]]])))]])))))))]]]))])))))]))]])]])))]])]]]))])))]))]))]]))])]))]]])]])))]]]]))]])]]))]]])))]))))]])))]]]]]))]]])]]]])])))]]))]))]])])))))]]))]]])))]]]]]]]]])]]))]]]))])]]]]]]))])))))))])])])))]]]])])))]])])]))]]]))])])]])))]))]))]]]]]]])))))))]]])))))])])]]))])))))]))]))])))]))))]]]]])])]))])]))))]])]]]]])))])])]]])])))))))])]))])])))])]]]]))))])))))]]))))]]])]]))))]]]])]])))]]]))]]])])]]]]])])]]))])))]]))))]))]])]]))])])]))]])]]])]]))))])))]]]))))])))))]]]))))))]]]]))]]))))]))]])]]]]))]])]]))]))]))))]])])]]]])]])))])]])]]))]]))))))))])]))])]]]]]]]]))]))]))])]]])]))]])])]))]]]))]))]))]])])]))]])])]]])))]]))])))]]]]]))]]))]))))])])]))]])]]]]])]]))))]))])]]))]]]]])))]])))]])]))])])]]]])]])])))))))]))]]]))])]]]))]]))))]]]]]]]]]))))]))]]]]))]))))]]])])])])]]]))))]]])])])))])])))))])]]]]])])]]))]))]))]]]])]))])])))]])])])))]])]))])]]))))])))))])]])])))]]]))]]))))]]])]))]])]))])]]]])]]]])])]])]]])])])]))]]])]]]]]]])]]])))))))]))])]]]]]]])]]]))]]]])])]))])))))]))]]]]]])))]])))))]]])]]))]))])]]]])])]])])]]]])])]))])])]))])]]]))))]]]))]]]]]]))]])])]])))]))))))]]])))]))]])])])])]]]]]])]]]])])))]]]])))]])))]])))))]))))])])))))])]])]]])]]))]])])]]]))]]]))]]]]]]]))]]])])))]]]]))]))]]])]])])))))]]]]]]])])])]))]])]])]]]]))))]]))]))]]])]))]]]]]])]])))))]])))]])])]])]])]])]]])))))]]])]])))))))]]]]]]]])]]))))]]]]]]]))]]))]]]])])]]]]]]))])]))))))]]]]])))]]]]])])])]]])))]))]]]]]]])]]))))))))])]]]))))])])])]])])]])]])]]))]])))]))))))])))])])]]]]]]]))]]])]))]])]]]])]))])]]])])])])]]])))]]]]]])]]]))]]]]]])))]]]])))])]]))]])))]]]])]])]]]))])])]]])]])))]]]])]]))))]])])])]))))])])))])])]))))]]])])))]))]]]])])])]]))]]])))]))]]]])))]]]]])]))]]]]))))]]])))))))]]]]])])]])))])]]]])]])]))]]]))))))]))]])]]]]])))))))])]]])])]]]))]]))])]))))]]]))]))))]]]]]]]]]]]]))]))])]))]))])))]])]]]])])))))])))]]]))]))))))])]))]))])]))))]])]))]))])))]]])))])])]])]]]]]])])])])]]]])))]))])))))])]]]))]]))]]])))))]))))])))]]]])))]))))]])))])]))]])]]])]]])))]]])]))])))]]]]])]]])))])]))]])))]))))])])])]))))]]]))])))))])]))]])]]))]]]))]))])])))]))]])))]])])]]]])))])])])))]])])]]])]]])]]])))]))]])]]]]]))])))])])))]]))))))])))]]])))))]]))]))])])]]]))))]))]]]])))]]))])))]]]]]]]])]])])])]]])))]]))]])])))]))])))]])))])])))]))))]]])]])))]])))]))]]])]]])]])])]]]])]))))]))))]))))))))])))])))))))))]])]]]]])])]]])])]]))]]]))))])))))]]]]])])])]]]]))]]]])])])])))])]))))))]]]))])))])]]]))]))]))]]]]))]))]]])])])])]])])]])]]]))])]])]]))))))]]]]])])))))]]])]]))]]])])])]]])))]))])]]])])])]]]))]]]]))))])])))]))])])])))])]]]])))]])]]])])))]])))])])))))]]]]]]))]]]))))]))])]]])])]]])]))]])]])]))])])]))])))]))]))))]))]))]]]])))])]))])]]])]])]]])))]))])])]]])])]]))]])]])]]))]])]]])]])]]]))]]))]])]))])])]]))]))]))))])]])])]]))))))))]])]])]]]])])))]]]]]))]))]]]]])))])])]))]))])])])]])))]])]]])))]]]))]]))]]]))))]))]])])]])]))]]])])]])))))])])))])]]))))]))])]))))]]])]])))])]]))]]]])]]]))))])]]]))))]])]))])))]])])]))]]]]))]))])]])]])))))))))))]])])])]]])])]]]))]])])]]))))]))))]]))))]))]))])]])))])])])])]]])]]]]))]]])]])]]])]]])])))]])])]]])))]]])]]])]]))))]])]))])])]]])]))]])])])))]])]])]])]]))])]))]])]])]]])])))))]])]])]]]])))])])))])])])]]]))]]]))]]]]))]))]]]])]])])))))]]]))]])])]])])]])])]]]]))])]))])])]))))]]])))]))))]])])])))])]]]))))]))]]]))]]))])]]]]]))]]]])]]]])))])]]]]])]]]]]))]]])]]])]]])]))]]])])]])]])])])]]]]])))])]))]))))])))])]]]]]]])])))))])])]]]])]])])]])))]]])))])]])]))])]]))]])])]]])))]])]))]))])]]]]])))]]]))]])))])]))]]]]]])]]]])]])]))))])])])]))]])]]]]))))))])]]))]])])]]))]]])]))]]])]]])))))))))])]])]]))]])))]]))])]))))))])]]]))]]])))])]])])))])]]]]]]])])))]])]])])))])))])]))))])]))))))])])))]))])])]])]]]])))]]))))])]])))]])]]))]])])])]))]]]]]))])]))))])]]]))]]]]))]]])]]]))]))))))))]])])))]))]]]]])]]])])]))])]]))]])]]])]])]))])])])]]])]]])]])))]]]]])])))]))]))])])]]]]))))]]]]]])]]]])]]]]])]))]]]])]))]))))]))]])]]))))]]]])])])))]])])]]))])]]))])])))])))]])))]))))]])))])]])]]))))])]]]]]])]))]]]]))]]]]]])]]])))))])]))))))])]]])]])))]]))]]))]])))])]])]]]])]])])]]]])])])])))))]]]))])]])]))]]]])))]]]]]]])]])]))]])))]]]]])]]]))]])))]]]]))]]]])]]))))]])))]))))])])))])))]))])))])]))]])]]])])])]]]]])])]]]]])]]]])])])]]))])]])]))]]])]))])])]])])]])]))])))])])))))])]))])]]]))]]]])])])]))])]]]]))])]))])])]]]]]]]]])))))])]))])]]]]]]])]]]]])))]]])))))]]])]))])))])))])]])])))]]]))])]])))])]])))])]])))]]]))]]]))])))))])]))]])]])))]])])))]]])])]])]])])])]]))]))]]])]]]]]]]]]]))]])]])])))))])]))]])])])))])])])])))]))))]])])])]]]))))))])))))]]]))]]]]]]]]))]))]))])]))]))])))])]]))]])])]]))]]])]]])))))]])]))])))]])]])])]))))])])]))]])]]]])]])]]))]]]])])])]))]]]))]]])]))]))])]]])]])]]]))]]])]])]])))])]]])])]))])]]]]]]]]])])]])))]]]))))]]]))))])]])])]))])))]))))]))]]]])])]]]]]]])))]))))))]))))]])]])]))]))]))])))))))]]))])])])]]]))))])])])]]])]])])]))])])]]))))]]])]))]))]))]]]]))]]))]])])))]))]])]]]))]])]]]]))]]])]])]]))])]]))]]]])]]])]])]]]]]]]]]])]]))]))]))))])))))]])]])]))])])))]]])]]))]])))]])]))))]]])))]]]])])]]]])))))])]))]))])]))))]])])]])]]])]]))])]]])]])]))])))]))])))]])]))])])])])]))])]))]]]))])])))])))]))]])))]]]))])))))]))]))]]])])]])])])]))])])]]])]))])])]]))]))]]))))]]]]])])]]]]))])))]))])))]]])]))]])]])]))]]])))))])))]]])]))]])])))]])])))]))]]))]]]])]]))]]]]]]]))))))])))])))]))])]])]))]))]])])]]])))))]]]]])])))))))]])])]))]]]))]])])))]]]]])]))])))]]]]]])))]])))]]])]]]]))))))])))]])])))])))]]])))]]]]])])]])))]])))]))))]]))))])]]])))]]])]]])])]))]]])]))]))))]]]))])])])])))]])]]]))]]))])]])))))]))]))]]]])])])]]))])]))])]])])]]]]])]])]))]])]]]))))))))])]]])))]]]))]]]]]])])]]]]])]]])))))]]]]])))]]]))]))]))]]]]]]])]))))]]])]]]]]])))]))))]]))]]])]])]]]]]))]))))]]))))))]]]]]])))]]))]]])]))]]))])))])]]]))])]])]))])))))))]))]]))))))]))]]))])])])]])]))])]]))]]))]))]])]]]]]]]]))])))]])]]]]))]]]]])]])]])]]]]))]]))))]])]])]))]])])))]]])])]]))]])])]]]]]]])))))])]))))))]]]]])]]]]]))])))]]))]]]]))))]])])])]])]))))]))]))))))]))])))))]]]])]]))]))])]]))))]]))))]]])]]))]])]))])]])])])]])])))]])])]))]))))])]]])))))))]]]]))))])])))]]]])]]])))]]])])])]]]))])]]))]))]]))]))]]]]])]]])])])]]])]])]]))])]])]])])])]]]))))]])]])))]])]]]]]]]))])]]])))]))])))]])]]]]))]])]])])])))])])])])]]]))]]))]]))]]])])]))])))]))])]])])]]))])))))])]]]))])]))]]])]))]]))))]))))]]))]))])]]))]]))))])])]])]])]])))))))]]))))])))]])]])]]]]))]])])]))]])]))])))]]])])]]])]]))])])])])]]])]]]]]]]]))))])))]]]]]])])))]]])])])]]))]]))])])])])])))]]]))))))]])))]])]]]]]]]]))]]])]])])]])]]]])]]]]])))]))))))))]])))])]))])]])]])])))]]]]]]))])))]))))])]])]])]))])))]))]])))]])]])]]])]]]])))]]))))]])))])])]]]]])]]]))])))]])]])]))]]))])]))]]]]]))))])))]))]]))]]])))))))))]]))))])]]))))]]))])]]))]]]))))])]))])]))]])]]]]]]]]]))]]]])]))])]]]))]])]])])]]]])]])))))])]]]])]]]])]])))))]])])])]))])])))])])]]))]]]])])])))]]))))))]])]]])])))]]]])])])))]))]]]]]))]]]])))])]]))]]])])))]))]])]])])])))))))]])))]))]]))]])]]))])]]])]])])))))])])))])]])]]]]]))])]]])])]]]))])]]]])])]]])]]]])))]]))]]]]]]))]]])]))))))]])])]])))])))))]))]]))))])]])]))]]]))]))))))]]))]]]))]])])))))]))]])))]]]))]]))]]))))]]))]]))]])])]])]))))]]]))]))]])))))]))))])))]))))])))]))]])])]]))))))]])]])))]))]]]))])))])])]))]))]]))])]])])))]])])))]))]))]])))])]]]])))]])))))])]))))]])]]))])]]]])]]])))]]]]]]))]))))))))]]])])]]])))))]))])]]))]]])))]]])]))))]))]))))])))]]]]])]])))]]]))))])]])]]]])])]]]]))]))))])]])])))]))])]]])]]]]]])])))))]])]))))]]]]]))])]]])]))])]))]))]]]]]]))]))]]]])]])])])])]])]]))))]])]]]))))))]])))])]))]])]]))]]))])]])])]])])]]))))])])])])]]])]])]]]]))])])]]])))]))))])]])]]])]]]]])]))))])))))))))]))])])]]])))])])]]]))]])]])]])))]]])]])]]]])])])))))]))]]))]))])])]]))]]]]))])]]]]])))])))]))))))]]]))]]])])]]]]])]]))])]]))]]))])])))])))))]]])])])])])])))))))))]])]]])]]])))]]]])]]))]]]))])))))])])]])]]]]]]))))]])]]])))))]]]]]]))]))])))]]))])]))])])]])]))]]]))))])]))))))])))]]]])]))))]))))))]])]]))])))))))])]]]]])))])]))]]]))])]])]])))]))))])))])]])))]]))]])]))]]]))))])]]))])])))]]]]))))]]))]]))))))))]]])])))))]]]]])))))]]])]]])))]]])]]])]]]]))])]])]]]))))))])))])]]]])))]])))]))))))))))))])))]))]])])))))))]]]))))]])])]]])))))))))]])))])]]]]]]])]]]]]]]]]]])])]]))])]]])]])])))]]]])])]))]]))]))]]])))]]])))))]]]]))])]]])]))])])]]]]]))]]])]))))]]]]]])]))]]]))]))))]])]])))))]]]]])])]]]]])]]))]))))))]])))])]]]))])]))]))]))))])))]))])]))]))])]]))))]]])))]])))]]])))]]))))])]])]]))]])))])])))])]])]]]]]))]]]])]])))]))]]]))]])])))])))]]))]])]])]))]])))))])]]]]))]))])]))]])))]))))])]]))]]])]]])]])))])]])]]]))])]))]))]]))]]]])))]]])]]]])]]))])))]]])))]))])]))]))])])]])]]])))]]]]])]])]])])]])]]])]]]))))]]]])])])]]]]])]])]])]])]]]]]))))]]))))])]]]])))]])]]]])])])]])])])]]]))))]]))]))))]])]]])))]]])))])])]))])))]]]]]]])))))]]])))])])))))])))))])]]]))]]])])]])])]])])))]]]]])])]]]))]))])))]]]))])])]]]]]]])]))]])))]))]]))))]]))]]]])])))])])]))))])])])])]])]))])]]])]))))]])]])]])]))))])]]])]])]])]])]])))))]]))])))]]]))]]))]])]]))]))]))))))]])])))])]]]))])])])]]))]]]]]])))]))]))]]])])]])]]])])]])]]])])]]])])))))])]])))]]]]]]]]))]]])])))]))]])]))]]]]))])]])]))]])))]])]]]]]]))]]]])))))]]]))]])])])))])))]]]]))]))]]))))]]))))])]])]]]))])])]))))])]]])])]])]))]))])))])])]))])])])]]))))])]]])]])))]))]]]))]]]]))])])))]]]]]]]])]])]]))]])))))))))]]])]])]))])]))])]])]]))])]]]]))))])]]]))))))]])])))]]]))]))])]]))])]])])]]])]]]]]]]])])]]]))]]])]]]))))]]]])])]]))))])))]]])])])])))]))]))]))))]])))))))]]]]))]]]]))]])))]]))]])]]]]])]]))))]]]]]]]]])])))]]])]))]])))]]])))]]])])]]]])])]]])])]))]))))]]]])]))))]]]]]]]])]]])))))))]])])))))]))])))]))]))])])))]])])))]])))))]]]]]]]))])]]]]]))]])]]))]])))]]])]]]]]])]])]))))]))]]))]))))])]]))]]]]))]))))))])])])])))]])))]]]))]])]]])]]))]]]]]]]])]]]])])]])))]]))]]]]]))]]))]])]]])])])]])))]]))))))))))]]]])]))]]]]))])])))])])])])])))])])])]])])]])])])]]]]))])]]]]]]]]])]))]]]]))]])]])]]])))))]])])))))]]))]]])]]])]))]))]]))]))])])]])]]))))]]]))])])]))])]])]]))])]])])))]]]])))]])]]]]))])))]])))]))])))])])])))]])]])]]]])]])]]]))]]]]])]])))]))]))])])))]))])))]])]]])])))]]))])]]]]])])]])]])))]])]))]])))))))]]]))))]])]])]])]))]))]]]]])])])]]])])]]))]))]]))))]]]]])]])))])))))]]]))])]]))]))]]])]]]]))]])]]])]]))]]]])]]))]))])]])]]))])]))])))]])]]]]))]]]]]]]))))])]]])]))))]])))]]])]])]]]])))])]]]]]]])))]]]]))])]]]])))))])))]))))]]]))])))]))))])]])]))])]]))))]])]])]]])))])))))]])]))]]]])]]))]])]]]]]))]])])]])]]]))])))])))]))))]))])]))])]]])))]]))]]]]))]])]])))]))])]))]]]]]])]))]]])]))])]])]))]]])]))])])])))]]])))])])))]]))]]])))))]])))))))))]])])]))))]])))]))])]]]))))]]]])])])))]]])]])]]]])]))]])]))))))]])]))))]))])])])]]]])))]]]]]]))))))])]]))]]))]]])))]))])])]]]]]]])]]))]]]))])))]]))]))]])]))))))))]]])])]]]]]))))))]])))))])))])))]])]]]])]]]]])))]]]))])]]]]])])])]]])))]]])))]))])])))))))]]]))))]]])]])]))]))))))])))]]]))]]]])])]])]])]]))])))]]]))]])]]]]])))]))])))))]]]])]]]])])]]))]))]]))]]))])])])])]]]]]))]))))]])))])]])]])])]]]]])]]])]]]]])))])))))]]])))]))]]]])]]]))])]]]])]))]]]]]]))))))]]]]))]]]]]]))))]])]))))]]])))])])]])))]]]]])))))]]])])]))))]))]))])])])]])])))]])])])])])))))]))])])])]]]]))))]])])])])]]]]]]])]))]))]]))]))))))])]])]]))))))]))])]]]])]))))))))]]]])]))])))])))))))]]))))])]]]]))]))]))]))]])]])])]])]])))]))])]])])]]))]]))]])])])]))]])]])]]))]]])]]))])]])]]))]])]])]))]]]]))))]))])))])]))]]]))])))]]]])]]))]]]))))]]])]]]))))))]]])])])]]])))])])]]]]]]]])])]))]]]]]])]]))]]])))]]]])))))))]]))))]]])]])]]))))]]))]]))]])))])]]))]))]]))]]))]])])])))))])]))]]])]]]))))))))))]]]]])]]])]])]]])]))]]]]]])]]))]])))])])])])]))]]))])])]))])]]]]]))))]]]]]]))]])]]]]]]])))))))))]]]]]]]]))))))]])]])]]]))]])])))])]))])]])])]]])]]))]))))]]))))))]))])))]))])])]])]]]]]]]])]])))])]]))]]]))]])]])))))]])]])]])))])]])])]])]]))])))))])))]])])]))]]]])])]]))))]))))])]])]])])))]]]])]]]))])))))))])))]))]])]])]])))]]]])]))]]))))))]]))]))])])])))])])))))))]))]])]]))))])]]]])]))))]]))))))]))]]])]))))]]))]]]))))])]]]]]])]))])])))])]]]]]]]]]])))]]])]])))]))]])]])]]]])]])]]]]]]])])))]])]]]))))]))))]]])))))]]]]]])])]])))]]]]))])]])])]]]]]]]))))))]]]]]))))]]])]])])])]]]))]]]]])]])])])]))]))]])))]]])]]])))]))])))])]])])])))))))))))])])])])]])]))])]]]))]]]))))))]])]])]))])))]))))]])])]]]]))]]]))]])]])))]])]]]]]]])]))]))))]]])))])]])]))]])))])]])))))))]]]]]]]])])))))])])]]]))))]]]]]])])])))]]]]]]))]])))))))))]]])))))]])])]))])))]])))]))))]))))])]]]]))])]]])))]]))))]])])]]]]))]]))]]]))]))])]]))])]]])))]]])]]]])]])]]])))]))])]))))]))]])]]]]]]))]])))]]))]))])))])))])))])]))]])))])]))])))]])]]]))]])]])])]]])]))])))])))]])]])]]])))]]]])])))]]))))]]]))]]])])]]))]))]))])]]))]]]])])]))]])])]))])])])))])]))]])])]])]])))))]))]]]]])]]])]))))]]]]]))))))))])]))))]])])])]]])]])]))))]]]])])])]]])])]))]])]))]]]))]))))])))]))]]))))]])))]]))]]])])])]))]]]]]]]])))))])]])]]))]))))]])])))]))))]))))]]]])))))]])])]]]])))])])]]])]]]]]]]])])]])])]]]]]]])]]]))])))]]]]])]))]))]))]])]]])))))]))))]]]]]]]])))]]))))])]))])]])]])))]])])]]]))]]]]])))]])))))]))])]]]]])]]])))]))))))])]]])]]))]]]])]]]])]))]))))]]]))])))))]]))))))]))]]]]]]]]]]])])]]))])])))])])]))))))]))]]])))])]]]]])]])]])))]])]]])))])))]])))]]]])])]]]]]]]])])))])]])))]]))]))))))])))))]]])]])]])))]]]))])]))]))))]]])])])]]]]])]]))]]])])]]))])]))])]))])]))]]]]]]))]])])]])]))]))))])))])]]))]]]])]))]))])]])])]]))]]]])])])]]]))]))))]]]))]]]])]))])))))]]]]])]]))])))])]]))]])]))]))])])]])]))]))))])])]]]))))))))])])))]]]])))]])])]))]))])]))])]]]]]))]))))])])]))])])))])]]]))))])]]]))])))])]])))])))]]]]])])])]]])]]]]]]))))))))))]]))]])])])]])))]]])])]))])])]]]])])])]))]]]))]])]]])]))])]])))]))])))]))]])]]]])]]]]])]]])]))])])]])))))]])]))]]])))]]])]]]]))]]))]]))]])])]))])))]]))]])])])])]]])]])))]]])]]]))])]]])))])])]])))]]]])]])]]]])])]))])]]])]]]]])]]])]]])]]]]))]])]]]])]))]))])))]))))]))]])]]]))]]]]]]]])]])])]]))))])))))]]])]))]]]))]))]]]))])]]]]]]]]]]])]])]))]]]]))]))]]))]))]]]]])]]])]]])])]))]]))])]])))])]))]]))]]))]]]))))]))]))]))]]))]))))])]]))])]])]]))]])])]))]])]])]]))])]))]))]])]))]])))])]])))])]]])]]]))))))]))]]])])])])])]))]]])))]]]]])))]]])]))]])]))]]])]))])]))))]])]]])]]))]])]]]))]))))]]]]))))]]])))]]])])]])]))])))]))])]))]])]))])]])]))]]]]])])])]]]]])]))])))]]]])))]]]))))))])])]]]))]])])])])])])]]])]]]])]]]])]])]]]])])])]))])]))]))))])))]]]]]]]]))])])]]]]]]]]]]]]))))]])]))))))]]]])]]]]))))))])])])])]]])))]]))]))]])])])]]]))]]])]]])))])]))))]])]))])]]])]))])])]]]]]]]]))]])])]]))))]]])]])])]]]]])])])))]])]))]]]])]])]])]]))]]])))])]))]]]])])])]))]]]))])))])]]]]])]]]))])))])])]]]]]))))]]))))]])]]]]))])))))]]]]))))]]]))])]])])]]))]]])]]]])]]]])])))]]]])]]])]))])])])]]]]))))])])]]))]]]))]))]))]])])]]])])))]))))])))]))))]))))))])])])]]]]]]))])]]))]]])]))]]]]]]))))]))]))]]])))])]]]))]]])))))]]]]))]))))])))]])]])]))]))))))]]])))]]]))))])]]])))))]])]])))))]]])]]])]]))]]]])])]]]]))))])))])]))]])]]))]))]]]))])])]]]]])]))))]])]])])]))))]]))]]))]]))]))])]]))])]]]]])))]]]])])]]]))])]]])]]]]]))))]]]]))))))))]]])]])]]))])))]])))]))])]]))]]]))))]))]]]]]])])])])]])]]]]]]]))]]]])))))])])])]))]]]]]])))]))]])]]))]])]])]])]))])]))]]])])]]]))))]])]))]))]]))]))]]]]]])])]])]))]])]]])]))]]]))])))))]]])])])))))]])])]])])]])]]))))))]]))]]]]]])]))]]])]))]))]))]]]])])]]])]]]]]]])]])]]])]))])))])])))]]))]]]]]])))]))])]]))])])])]])])])]))])]]])]]]]]]]])]]))])])))]))))))])])]]]]))))))))])]]]])])))))]))))))]]))])]]]]))]))))])))))]))]])])]])]]]]]))))])])])]])])]])]])]]])]])]]]))])]])])]])]]])]))]]]]))))]]))]]]])]]]]]])]]))]])))))]])))]]))]])))]])))]])))])])]]])]]]]])]))))]]))))))]])]])))])]))))))]]]]])))]]]]])]))])])]])]])]))]]]])]))])]]))])))]))])]]))]]]]]]))))]]))))]]))]]])))))]))]]]]]))))]])]]))])]])))]]]))]]]]]))]]]))]))))])]]))]])))))]])])]])))])])))))]]))]]]]]]]))))]]])])])]])]]]))])]]]])]))]]))]))]))])]))]]]]])))]]]])]))]])]]))]]]]))))))]])))))]]])))]))]))]]))]))))))]))]))])])]))]]])))]]))])]]))]))]]))))]]])))]))])])]]))])]))]])]])))]]]]]])])])])])]]]]]]))]]])]]))))))])]))]]]])])])))]))]]]])))]]]]]])])]))]])]]])]])]))]]])))]]))])]))]))))])]]]]))))))))]]])]]]]))))])]]]]))))))]]]))]))]]))])])])))])]]]]]])])])))]]])])))]]]]]))])]])])]))]))])])])])])]]))])))]])))])])])))))])))])))]))]]]))]]]])]]))])]]]))]]]))))))))))]])]]])]]]]]])])]))))])])]]]))))])]])])]]])))])]]))])]]])])]])))]]])))))))]]])))]]))]])))]]])))]]])]]])))]]])])]))])]]))]]])]]))]))]))))])]))]])]))])])))])]]])))))])]])]])))))])]]]))))]]]))]]]))]]]])]]])]))]])]))])]])])]]]))])))))]])]]]])))]]])]]]]])))])])))]]])]]))]]]))]]))]]]]])))])]])])])]]])]]]])))))])])))])))))]))]))))))))]])]])))]]])]])])]]]])])))))])])]]]))]])]])))]])])]])]))]]))]]]]])])])))]]]])])]])])]])])]]))])])))]])])])))]))]))]]]]]])))]]]))]]])]])]))])]]]))])]))]])))]]]]])))])]]))))])]]])))])]]))])]]]]])))))])))]))])))])))))))]]]]]])))]]))]))])]]]))])]))]))])])]]]]])))])])]]]]])))])))))]])]])]))]]))]])])]])]])]]]]]))]]]]))))]))))]]))]])]))]))))]]])]]))))]])))]]])])])]]]))]]]))])]]])])])))))]]]])])]])))]))]]]])))))]])]))]))]])))))]])]]])])]))])])))]]]]))]])]])))]))))]]])))))]]))))]]]])))]))))])])]]]]])]))]]])))))))))]]))]])]]]]]])]]]])]))]]])))))]])]]]])]])])]]])))]]])])])]))])))]))]]]]]))])])])])])]]]]])]]])]]])]]])]]]))))]])]]])))]))])]]))])])])]]))]]))]]))))]))))))])])]]))])])]))]]))]]]]))]))]]]])]]))]])])]))])]]))]])]]]])]])])]])])]]]])]]])])]])]])))])))))]))))]]))))])]])]))]]]))]))))))))]]]])))])))]))]])])]))]))]]]]]])]])))]])])]))))])])]]))))])])))])]))))]))]))))])]])))]])])])])]]]))])))))])))])])]]]]]))]]))))))]]))])))]]))))))]))))))]))]]]])]])]]])]))]]])))])]]]])]]])]]]])]])))])]))])])))]))))]]]])])))))]])]]]])]])))])]]))]]])]]]]])])))]])))]]))))])]])))])]))]]))))]))))]]])])))])]])])))]])]))])]])))]])])]))]))]]])]))]])])])]]])])))]]])]])])]]])])])))]]])))))]]]]]]]])]]]]]))])]]])]])])]))]])]])]]]])]]]]]]]])]))])])))))])))]]))])])))])]]]]])))))]]])])])])])]))]]))])]]])])]]]]])))]]))]]]]]]))]]]]))]))]]))]]))])))))]]]]]]))))])])]]])]])])))])]]]])))))]]))]])]))))])]))]]))))])))]]]]]])))])]]]]]])))))]])))])]]]])))]))))))])))]]]]]]]])))]])]]))])]])]))])])]]]))))]]))]]])]]])))])))]]]]])]))])))]))))]]]]]])])]]])])]])]]])])]))))]]])]]]]])])])]]))]])]])]]]]))]])]]]])])]]))))))))))))]])]))))])]])]]]])])]]))]]]]]]]])))]]]))]]]))))))]])]])]])]])))])))))])]])]]]])]]])))]]]]])])]))))]]])]))])))))))]]))])]))))]))])]]))]))))])])]]]]))])]))]])]]]]]))))])])])])]])]]))))])]])])]]])]])])))])])])))]]))))))]]]])]]])]])]]))]])]])]))])))])]))]]])])]]]))])])]]])]]]]))]])])))))]])]]]))])))])))]]))))]])]))]])]])])])]]]]])))])]]])]])]]]])]]]]))]]]]))]]])]]]])]))))]]]]]])]])))])]]])))])])]]]))))])]])])]]))])]]))))))])]))]])])])))])])))])])])]))))))]])))]))]])]]]))))]]]]]]]]]])]))))))]]))]))]]))))])])]]])]))]]])]]]]])])]]]))]]]))))]])))]]]]]]])]))))])))]))))])]]]])])]))]]])]]]]))]]))])]])])]]])]])]))]))]))]))))])])]])])))]])]]]]]]]]]))])]])]]])]]]]))))]]))])])]]]))]]]]]]]]])]))))])))))]])]]))]]))]]]]])]]))))]))]))]])])])])]))]]])))))))))))])))])])])])])]))]])]]])]]])])])))]]))]))]])])))))))]))))]]])))]]))])]]]])))))]))]]))]]]]]]))])]))]])])]))))]]]]])))])]]])))]))])))))]])]])]])]))))]))])]]))]])]))])))])])))))))]])]]]))])]))])]]))]]]))]]))]]])]]]]]])]]]]]))]))]]])])])))))]))]]]))]]))]])]])]]])))]])])))))]])]])]]]]]]]))])])]))])]]])))]]])]])])))]]])])))]])]]])]]])]])])])))]]])]]]])))]])))))]])])]]))]))]]))]]]])]]]]]]]]])]])]))]))]])]])]))]))]]))))))))]))]]]]])))]])])])))])))]))]]]))]])])]]]])]])])]]]])]]])]]]])]))]])))])))))])))]]])))]])))]])]))])]]]]))]]])]])])]]]]])]]]]))))])))))])))))))))))]])]])]])))]))))]]]]]])]]])])]])))]]]))])])))]]])))))])]]))]]))]])]]]]]]]])])])]])]]]))))]))))))))]]]]]])]])]])]])]]])]])])]))))]]]])))]))])))]]])])]))))]]))]]]])]]])]))]]]))])))))]]])))]]]])]])]]])]]]))))))]]]))))))]]))]])]]])))]])])]))]])))]]])]]]])])))])]))])]]]]]])]]))])])]))])])]])]]])]]))])]))]])])]))))])))])))))]])))])]]))]]])])])]]]])])))))])]])])]]])])]]))]])))))])))])))]))])])))))])]])]]]]])]]]]])])]]])]])])]))]]])])])))]]])]]]]]]]]))]])]]))])])])])]]])])])]))]]]])))))])])])))]))))])))]])])))]])])]]]]]]))))]]))])]]]))])])]]]))]))]))]]])]]])])]))])))])])]])]))))])])])])]])]))]]]))))])))]]]])])])]]])))]]))]]))]]))]]])))]])]])]])])])])]])))]))]]])]))]]]])])))))]])))]))))))]]])]))])]])]])]]]])])]))]])])]))]]]]]))]]))]))]))))])]])]])]]]]))]])])]))])]]]]]]]])])))])]]))))]]))]]]]]]])]]))])])))])]])])])]])])])])])]])])))]))]]))]]]]])))])]]]]]]))))))]]]))]]))]]]))])))))])])]]))]))))]]))]))]]))])]])])))]]]))])]]]]]))]])]]]])]]]))]])))]]])))]])])))]])]))]]]))])])]))]])]]])))])]))))]]))]]]]])]))]]]]))])]))])))))])))]))))]]]])]])))]))]])]]))]]]]]])]))]))]])])]))))])]))]]])))])]]])]))])]))]]])]]))))]])])))))]])]))])))]]])))]])]))])))))])]))]]]))))])])]])])))]))])]))])))])]]])]]]]]])]))]]]])])]]]))])]])]]]))))]]]]]]))]]]]]]]]]]]]])])))]]]))]))))]])])])]])]]]])])]))])]]]))])]]))]))]))]])))]))])]))]))))]])]))))]]]))])]]))]]))]]])))]])))]])))])))))))))])]]))])])]])]])]]]]])]]]]]))]]]]]]]]))))]))))]]]))])])]]]))])]])])]]))])]])]))]]])]]]]]))])]]]]]]])])]]]))]))]))]])])]]]]))]])])))]]]))])))])]])]])]))])]])]))))]])])]))]]))]]]]))]))))]]]))])])])]))])]])]]))))])]]]))]))))]))])]]))])))]]]]])])])))]]]]])]])]]]))))))))])])]]]]]]))))])]])])])])))]])]]]]])))])])])])]]])]]))))))]]]))]]]]]]]]]]])])))])))))))]])])]]])]]])))]])])]]]))))])])]])]]]))]])))))])]]]))]))]])]]]]])])]]]))]))]]]))]))))))]))]]]))]]]]))]])]]]])]]])))])]))))]]]]])))))]]])]]]))])]])])]])]]))])]]]])])]]]]))]))]))]]))]])]]]]])))))))]))))]])))))]]))]]]))])]])])]])))]])))]])]]))])))))))])))])]]])))]])]])]])]]])])]))]]]))))))]]])])])))]))]]]]]]]]])))])])])))]]]]]]])]])]])])))])]])]]])]]])])]]]))))])]]])]]]]]]))])))]]])]]])))))])]))))]))]]])]]])])]]])))]]))]))])]))]]))))])])]))))))]])))))]]]]]]])])]]))]])])))]])])]))]]]]]))]]]]])]]))))))]])))]]]]]]]))])]])])))))])]]])])])))))))]]]])]])))]]]]]]])]]]]))))])]]])]])])))]])]]))]]]))))))]])]])])])]]])]]]))]))]))])])))]]]]]])))]]]))])))]))]]))])]))]))))]])])]])))))]])))])))])]])])))]]]]]]]))]))))]])]]])])))]]))))])))))]))])])]]])]))]]))]]]))))]))]])]])))))]])]))))]]]]))))]]]])]))])))]))]]]]]])]]))]]))]]))])]]))]]))]])]]]]])))]])))])])])))]]]]]])])]]))]]))]))]))]]]]]])]]])])))]]])]]]]])))]])))]]]]])]])]))]])])))]]))])]]))))))))]))]))))]))))]])]]])]))]]]]))]]])]]]))]]]])])]]))]]])))])])))])]])))]])))))]]])))]))))])]])]]))]]))])))]]))])]]]]))])))))]])])]]]]]])))])])]])])]])]))))]))]))]])]]]]]])])))]])))]]]))])]]])))))]))))]))]]]]))]))]])])])))]))]]]))])))])]]]))])]))]))])]]])))]]]]]]]))]))]]))))]]])])]))]]]]]])])])])])]]])]))))))))])]]])])]]])]])])))))])])])))])]]]))])))]]))])))]]))]]])))])]))])]])]]))])]]]))))]))]))))]]]))))]]))]])])))]))]]]))]])])]])]])]]]])]]])])])]))))]]])))])]))])))]])]])])]]]]]]])]]])]))]]])])]])))]))])]])]]))))]]]]]]))))])]))))))]))])]]))]]))))]])))]))]]]])]))])]))]))]])]))]]]))])])]))))]]))]]])]]))]]))]])))])])]]]]))))])]]]]]]]])]]])))]))]))]))]]]]]]))]])])])])]))))])]))))]))]))]))]))]])))]])))]]]]]])]]])]]])])]))]]]]]]])])]]))]]))]])]]]]]]]))]]]))]])]))]))])))]]))))])))]]])]]]]]]]))])))))])]]])])]]]])]]]]])]))])])]])])])]]])]))])])]])]]))))]]]]])]))])]]))]))]]]))]))))))]))])]])])]]])])]]])])])]]])))])))]]))]))])])])])]]]]]])])))])]))]))]])))]))]])]])])]])]]])])]]])))]])]]]]]))]]]])]]]]])]))))))]]])]))]])))]]]])))]]]])]])]]]])])))]))))]])])])]]]]))))]]]))))))))]]))]]]]]]))))))]]]]]]))))])))))]))))])))))]])]))))])]]])]]]]]]))]]))])])])]]]]))))]])]]]]])))))]])]))]))))))))])])))))]]])))]]))))])]]]]]]))]]))))]]]))]])]))]))))]))])]))]))))])]]])]))])])]))))]]]])]]))))))])))])))]]]]]])))]]])]]))))])]))])])))))))])])]])]])]]))]))))])]]])]]]])))]]]]])])]]])]])]])]]])]))]]]]]]]])]]])))]))]]))]])))]))))])])]))))])])]]]]))]))))])))]))))]])))])]))]]]]]])]))]]]])]])]]]))])]))))]]]])]]])))]]]])]])]))))))]))]]])])]))]))]]])])]))]]]))]))]))]))]]]))))])))]]]]]]]])))))))])))])))))))))]]])])))]]))))))]])))]))]))]]])]]])))])]]])])))))]])]))]])]])]])]]]]])))))]]])]])]])))]]]]))))))]))))]))])])]])))))]]]]]]]]]))]))]]])])])))]))])]])]]]]))])))]])]))))))])]]))]]))))])))]))])]]))])]))]]])))]]])]]])])))]))]]))))]]])])]])])])]])]])])])]]]])))])])]]])]]]]])])]))))))])]]])])])]))]))))]))))]]))])])]]]))])]]])]])])]]])])])]]))))]]]]))]]]]]])]))])]]))]])]]))))]]))])]])])))]])])))]))))])))])]])))]]))))))]]]])])]]]))]))]])]])]]]]]]]))])]]])))))]])]))]))])]]]])]]]]))]])))])])))])])]))))]))])]))]])])]]]]])]))])]]]])]])]))]]]]])]])]]]))]]]]]]))])])]]))]))])))])])])]])))]]]]]]])])]])]])]))))]))]))))]]]))]]))]]]))]]))]))]]))))]]])]))]])]]]]))]]]))])])]]))]]]]))])))]]]]])]])]])])]))]]))])]]]))]]]]]))]])]]))]]))]]]]]])])))))]))]]])))))]))]))))]]]))]]))))]])))]))])]))))])]))]]])]]]))))]])])]]]])]))))]]))]]])])))])]]]))]])]])]]]])))])]]))]]))])]])])]))]]])]])]]))]))]]))])])]]))])]))]])])]])])))])]))])])))]]])))]]))])]))))])])])]]])])))]])]]]))]]])))]]]))))]]]]])]]])))]])))))))]]])))))]))))])))]]]))]])]]))])))]))]))]]])]]))]]]))])))])])]])]])]])]]])]]]])]])])]]))])]))]])))])]])]]))))]))])]])))])])]))])])))])))]))))]]]])])])]]]]))))]])]]]]]])])])]))]]]])]]))])]]))]]))]]])))])]]])]]]]])))]]))])))]]]])]))]])]]])]]]))])])]]))]]))))])]))]]))]])])]])]])]]])]]])]]]))]])]])])]]])))]))]))])))))))])]])]]))))])]])])]]])])])))]]]]]]))))))])))]])])))]]]]))))])]])]]])]))]]))]))]))]]))])]]))])]]])]))])])]]))]]]]])]))))]))])])]]]]]]]]))]))])]]))]]]])]]]))))))]]]])])]))]])))]]]))))))))]]])]]])]]))]]))]])]))]))]))]]]])]]]]]))])))]]))])))])]])))]]]))]]]))])))])]])]))))]))]]])))))])])])]]])]]])]]))])]])]))]))])))))]])]))]]))])]))]))]])]]))])))]))))]))]])]]])])]]]])))]])]]))]]]))]]))))]])])])]]])])])]]]]]]]]))))))])]])]))]])]))]]])]])]))))]])]])])]])]]]))])])))]]]]])])]))]]))])])])])))]))]))))])))]]])))))])]])]])]])]]]]]])))))))])))))]])))])]))]))])))])]))))])))])])]])]]]]))))])]]]]])])]])]))])]))))])))]])])]]))))])])])]]))]])]])]))])))]])))))))]])]]])]]])))])]]])]]))))))))]]))))]))))]))]]]))]])))])])))]]])]]]]]]]))]]]]])))))]]]]])))]))))))]])]])))]))]])]])))]))])]])))))))]])]])]))])))])]]])]))]])])]))])))]]]))]]])]])]))])])])))]]])]))]))]])])]])])]]]]])]))]])))]]))])]]))]])]]))]]]))))))])]]))])])))])]))])]]))]))]]])))])))]])))))]])]]))))]]))))))))]))]))]]]))]))))]))]]))])))]))))))]])]]])]))])))]]]]))])]]))]]]]))]))])]))]))])]]))]])))))]))]]]]])]]])]]])))))))))))])]]]]]]]]]]])]]))]))])]]]]])]])))))))])))))]]]])))])]])]]]))))])))])])]]))])])]]))]))))]]))))))])])]])]])])])]))))])]]]])]]))]))))))]))]]])]))]))]])])))))))]]))])]]])]]))))])])))))))))]]]]]]))]]])])])])])]))]))]]]))])]))])))))]]))]])]]]]]])])]]]]])]]))])]]])])])))]))]))]]))]])]])])))])])]]))])])])]])])])]]]])))])]]]]])))])]))))])]]])]]]]]])])))])))]))]))))]]])])]))]])))]])])))]])))]]]))])]])]])))))]))]]]])))]])])])]]])]))])))])))))]]]])])])]))]]])))))))))]]))]]]))))]]])]))])])]]]])]]])])))]])]))]]]])])]])]))]]]]))]))))])))])))]))])])))]]])]]])])]]])]]]))]])])]))])])))]])]]]]])])]]))))))))))]))))))]]])))])))])]]]]]))])])]]])))])]]]]]))]]])))))])]]]))]]))))]])])]))]]))]]]]]]]]])]))))]))]))))]]))]])]]))]))]]]])])]]])]))]])]]]]]])]]]]]])]))))))]]]]])))])])]]]))))))))))])]])]]]]))]))]))])]]]]])])])))]]]]))]))]]]])))))]]))]]))))]]])])]]))]])))))]]]]]))))])])))]])])])))])]])]]))]))]]))]]])])])])]]])]])))]])]]))]]]]))]])])))]]]]]))])])])]))]]]])]]))]))]]))]))]]]]]])))]))])]]]]]])])])])]))]])]]]]])]))])))))]]])])]]])])))))))]))]])]]])])]])]]]]])]])])))))])]]]]))])]]))]])]]))])]]))])]))]])]]))]]]]]])))]))])])]]]]]])))]]))]])))]]]])]))))]]))))])])]])))))])))]])))]])])]])]]])])))])))]]))]])))])])]))]]]]]]])])])))])]]])]]])])]))])))]])]]])))]))]]]])])]]]))))))))))]]])))))))]))]])]]])))]))]]))))]]])))))))]))))]]]])))])])]]]]))])])))))))])])]]]])]])))))])]))]))]))]])]))))])]])]])])])))])]])]))))))]]])])]))])]])]])]]))])])]])])))])]]])])))]))]])))))])]])]])]))]]]])])]]])))])]])])))])))])])])]))]))]]])])]]]]])]])))))])])])]])]])]]]]]]))]))]))])))))]]))])))])))]))]])])])])])))])]])])]]]]])))]])])])))]]))]]])])))])))])]])]])])]]))]]))]]))])]]]])])])]])])]])]]))])]))]))])))])))))]]])]))]]]))))))]]]]]]]))))])])])])]]]))]]))]]])]]])))]]])])]))))])))])]]))]])])))]))))]])]]]]])]]])]])))]]]]))]])]])))])]))]]])))]]))))]])])]]))])]]]))))]))))]]))]])))))))]])]))]))]))))))))]])])]]])))))]))]))]])))])]]])])]]]]]]))]])]])))]])]])))))]]))]]]))))))]]))]]])])]))])]]]))])]))]))])])]])))]))))))])]))]))))]))])]]])]))]]]])])]]]]]]]])))]]]])]]))])]]]]]]))))]]]])]]]]]]))]]]]]]]]]]))]])]]]]))]])])))]]]])])]])]))))])))]]])])]))])])))]]])]])])]]])]])])]]]])])))]])))))]]]])]])))]))])))))]])]))))]]]]]))])))]]]]]]]))])]]]]]]])]])))))]])))))]])))])]]))]]))]])]))])])]]))]]])])])]]))))])])]]]]]]))])))]])]]]])])))]])))))))]])))]])]]]))))]]])]]])]]])])])]])])])))])]])))))]]]]]))])]))))])]))])]])]))]]]]]])))))])]])))))])])]])]])))))))]])]]]]]]))))))]]]]]]]]]]))])])]])])])]))]])]]])]]]]])])]]]]]))]])))]))))]))]])])))]]]))))]]]))]]))))]]])]]]]))))]))]))))]))])))))))))))]]))]))))))]]])))])]]])))]))])]]]])))]]]]]])]]]])]))))])]))]])])]])]]]]))]])])])]))])]])]))]))])])]]))]))])]]))])]]]))))))]))]))]])))])]]]])])]]]]])])))]]]))))])]]]]]])))))])])]]))])]]]])]))]))]))]])))))])])])])))])]]])])])))]))]])]]])])]]])]]]))])))]]]))]])]]))])])))])])))))]))]))]]))))])])])]]]]]]))]))]]))))]]])])])]]]]))))))))))))))))]))))])))))))]])]]]))]))])])))])])])]])]]]])))])]]]]])]))])))]])])])]]]]]]]))])))))])))])]))]]]))))))]])]]])]])))])])))))])))))))]))]]]]]]]))))])))]]]]))]))]])))))])]))))]))]]])))]])))]]))))]])]]]])]]]]]]]]))])))]]])))))]))]])))]))]]))]]))]]]])))])))])]]])))))))]))])))]))]]])]]]]))]])])]])]]))])])]))])])]])]]]]))]]]]]]))))]))])])])))])])])))]]]))])])])]]])])])]]])])])))]])]]])])))])]))])])))]))])])])])])]]]]))]))))]]]])))]))]])))])))))]]]]))]]]]]]]]])))])]))])])])]]))])])]))])])))]])))]]]]]]]]]])]))]])))])]]]]]))))])]]]]]]))]])]))))])]]))]]])))))))]))])]]]])))]])]))))])))]))])]]]]]]))])])))]])]])]]]]]))))]]])]]]]]))))]]])])))])]]]])])])])]]])))])])]])])]])]]]]))]]]]]]))]]]]]])]]])])])])]]]]]))]]])))]]]))))])))]]]]])])])]]]]))])]])))])]))]]])]]])])])]]]]]]]]))))])]))])])]]])])]]]))]]]])])])]])])])])]])]]))])])))])]]]]]]])])]))]]]])]]]]))]]]]])))))])])]))]])]))]])))]]]))])]))]]]])]])]])]]))]))]]])]]]]])]))))))]]])])]])))]]))]]])))]]]]]])])]])]))])]))])]]])]))))))]))])])])])]]]]))))])]))]]])]))]]]]]])]])]])))]]))])]))]))]))))]]]]])]]])]))))]]))))))]]])))])]])]]))]]))])))])))]]))]]))]))]]]])]))))]))]]])]])))])))))]))]]])])))]])])]])])])]]]]))]]])])]])])])]]])))])))]))]))))]])))]]])]]])]])])]]]]]))]]])))))))]]]]]])])]))))])]])))]]])]])])))])))])]]]])]]])))])))))))])]]))])))]))))))))]]]))))]])]]]])]))]])]))]])]))])]))]]]]))]]))]]]])]))]]))))))))])]))]]]]])))])]])))])))]))))]])]])))]]]]])])))]]]])])]])]]))]]])])])))])])))]]])))]]))))]]]])))))])])))])))])]]]))))]]])]]))))))])]]))))))))])]])))]))])])]])]])]]])])]))))))])])])))]))))])]])]]])]])))]))]]])])])]]))]]]])]])]])))])]])))))]]))))])])))])]))))]]))))))]])))]])]]])))]))))]))))))]]]]))]]]))))]]]]]])))]]])])]]]]]]])]]]))))])]]])])])))]])]))]]]))]]))))]])))]])]]]))])]]])])))])]]]))])]])))])])))])))])]]])))]))]]))))])]])))))]]))))))])]))]]])]]]]))]])]])]])]])))))]])]])]]])]]]]))]))]]]))]]))))]])))])]))])]]]]]])]]])]))]))]]]]])]]]]]]]]]]]))])))))])]]])]])]]])]])]))]]]))]])]))))))))))))))]]]]))])))])))])))]])]))]]]]]))])]])]))]])]])])])]))))]])]]]]]])])])])])]]))])]])]))])))]])]])]))]))))))))]])))]))])]))])])]))]))])]]])))]]]))]]))]]))]])])])))]))]]]])]])]])]]]]]))]]))]])])]])))]))])]))]))]]]))))]]]]))]))))]]]])]]]]])]])))))]]]]]]]))]]]])]]))])])]]]]])]))]]))]]))]]]))]]])))))])]]]))))))))]]))]))]))]))])]]))]))]]]))]))])]))])]))]]])]]]))))])]])))]]]])]]])])])]]))]]]))))])])]))))]]])]]])]))]]])]))]]]]])]])]]]]])))))])]])))])]))]))])]))]]]]])]))))]])]])))]))]))))]))]])]])))))))])])]]]))))])]]))))))]]))))]])))]]])]])))]]]))]])))]]])))])]])))]))])]))])])]))))]]))))))])]]])]))])])]]]))]]]]))]]]]))])]]))]])]]]]])]]]))])))]))))))]]))]))]]))])])]])]))]]]]]]]]]]]]])])])]]))]]))]]))]]))]]]))]))])])]]))]]]])))]])]]]]]])]])))])]]])])))))))])))]])])))])))))])]))))])))])])])]]])])]])])]]])]))))]]]])])]))]])))]))))]]))]]]))))))))))]]))]))))]]]))))]])))])])]]))]])]])]]))]]])))]))))]]))))]]])]]])]])])]])]]]]]]))]]])])))))]])]])))])]))]]]]]]]))])])]))])]]]]]))]]))]))])])])]]]]]])))))]]]))]]]])]]))]]]]]]))))]]])]]])]))])))])))]]])))]))))]]]])]])])])))])))))]]])])))))]))]]))))]]))])))])))])))]))]]]))]]))])))]]]]]]]))])))]])))))))])]]]]]]))])]))))))])))]))])]))]])])])]))]]))]])])))]]])]]))])))])))))))]]])]])))))]]))]))]))]]])]])))])))))]])]]]])]))))]]]]]))]]))]))])])]))]))]])])])]]]]])))]))))]))))]]))))]])))])])]))]])))]]]])]))]]]]]]]])])]))]]))))])])]))]))]]]))]]]]]])])]])]]]]]]))))))))))])]])))]))))))])]]))]]))))))])])]]]]))]])]]]))))]]]]]])]])])])]))))]]]))]])]]])])]]))))))])])))]]))]])))])])]))))))))])]))])]]])))]])]])]])]]]]])]])])])]])))))])]])))]))])]]])]])])]])]])]]])]))])]])))])]]))]]]))])]])]])]))])))]])))])])))])]))))]])])]]))]]]))])]]])]))]))]]])])]])]))))]])]]]])]]]]]))))))))]]]))])])]])]])]]))]]))]]])]]))]]]]]])]])]]))]]]))]]))]]))]]])])]))))])]))]]]]))]]]]]]]))]])]]))]])))]])]]))))])))]]]]])])]]])))))])))))]]]]])))])]]]]]])])])))]]]])))])]]]])])]])]]])))]])))]]))])]))]))]))]]])])]]))])]))))))])))))]]]]))]]]))))])))])])]]))]))])))])]])))])))]])))))))])])))]]]]))))])]]))])]))]]]]])]])])])]]])]))]]))]]])])])]])]))))]))]])]))))))]))])]))])]]))))]))]))]])]]]])]))))]])))])))])]])]]])))))]]]]]])]]])))])))]]]]]])])))))))])))]]]]))]]))]]))))])])))]])))))))]]])))))]]]]])]))]))]])]]]]])))))]))]]]]]))])))]])))]])]]]))))]]))))]]]]))))]))])]]]]]]])])]]))]]]]]]])))]]])])]]]]))]])]]))]])]))))])])))]))))]]])]]])]))]]))))])))))]]))]]]]))]))]))]]))]])]])]]]]]]]))])))))]))))])]]]])]))])])]])])])])]])]])])]]))])))]])))])]]]]]]])]])]]]]]))))]])))))))))]]))]]]]])))]]]])])))])]]])))))]]])])))]))]))))]])]]))])]])]]))]]))])]]])]]]))])]]))]])))]]]])])))]))]])))))])])]]])])]])))]])])))))])]]])))]]]))))))])))]])]]]))])))))))])))]]]]]]]))]]))]]]]]]))]))]])]]))])])]]))]])]])]]))])]]])))]))])))))]]]]]])]])]])]]]])]]]]]])))])])])])])]])))]]))])]]])))]])]]]]))])))]])]]))))]]])]])]]))))]))]]))]])]])))]))))])]]])]))])]))]]])]]))))]]])]))])])])]))]]))])]]]]]))]]]))]])]])])]]))))]]]])]))]]))]]]]))]]))]))]))])])]))))]]))))]]))]))])]]]))]))]))])]]))]]))])))]])]])]))])]))]]]]]]])]])])]))]]]]]]])])]))]])]])))])))]))]]]]))))]])]))))]]])]]])]]]]]))]])))))])]])]))]))))])]]))])]])])))])))])))]])))))]))])])])]))]))))]])])]))]))))]]))]]))))))])]))))])])]))))])])]]))])])))]))]]))]))])]))))]]]]]]])))]]]]))]))))))]]])))]])]))])))))]])]))]])]]))]]]])))]]]])))]])))))])]]))]])]]])])))]]]))]]))])))))]])])]])])))]]))])]]]))))]]]))])]))])))))]])]]])]]]]]])])]]]]]]])]]]])]])]]))]])]])])))])])))))]])])]))))))]]]])))])])]]]])]]]))]]]])]))])]]))])]]])]])]]]))]]))])))]]]])]]]))]))])))))))))]])])])]]]]]))))))]]))]))]])])))])]]]]]]))]]]))]]]]]]])]))]])))]))])])))))]])])]))))])]))])))])))]]]]))))]))])])])]]]))))]]))]])]))))]]])]]]])]])])]])]])]]]]))))]]])]]]]])])))))]]]]]]]])])])])))])))])]])]]]]]])]))]]]]]]]]]])])]))]]]]]]])]]))))])))))]])))])]]))]]]))])])]]))]]])]]]]))]]])]])]))])])]])]])]]))]])])]])]])))))))]]])]]]])]]))]]]]]))]]))))]]]]]])]])]])]]))])]]]))))))])])]])]))]]))]]])])))))]]]))))])))])]))]]])))])])]]]])]))]])]))])])]])]))))]])])]]])]]]]]]]]]]])))]))]]]])))]))]))])]]]]]))))])]])])]])]]]]]]])]])])]))]])]))]])))]]]]))]]))])])])]))])]]]))]]))))]]])))])))]))]))))))]])]])]]))])]]))))))])]))]]]])]])]]]))]]))]]]])]])])]])]]])))])]]])]]]]))]))]])]]]])])])])]))]]]]))))))]))]))]]]))]])]])])]]))))))]]])])])))])])))))))))))]]])]])])]]])])]])))]]]]))]]])]])))))]))))))])]]])]])]))))))])]])])))])]]]))))))))]]])])])))]]]])]]]]]]]]]])]])]))])])]])]))))]])]])])]]]])]])]])))))))))]]])]])))))]))]))))]))]]])]])]))]]])])]]])]])]])]])]])])]]]))]]))))])]))]]))]])]]])]])]]]))])]))]))))))]])))]]])))]])]])]]])))]])])])]]])])))])]])))))])]]))]])))])]]]]]]])])]))])]]))]))))]])))])]])))]])]]))))))]])]])])]]])]])))]]])]]])])])))))]))])]))]])]]]])])]])]])]]])])]]))))]]])])))])]]])))]]]))])]]]]))]])]])])])))]]])]))])]]))]))])))]]]]))])]]])))]]))]]))]])]]))])]])]]])])]]])]]])])))]]))))))]))]))))])]]]]]]])])]]))))))]])))]]]]]])]]])]]]])]])]))))]]]]]])]])))])]]]]])]]))])]]]])]]))]]]))])]])))]]))]])])])))]]])]]]))])))])))]]]])]])]])])]]))))))]]]])]]]))))])]]]])))]])]]]]]])])])]))]]))))])])))))))]]])])]])])]]])))])]]))])))))))]])]]]]]])]]))]])))])])]]]))))]])]))]))]]))]]))))])]))])]]))]))])])]])]]])))]]])])]]]])))))]])))]))])]]])]]])))]]]))])]))]]))])]]]]])]))])])]]))]]]]]]])]])]))])]]))))]])]))]]])))))]])]]]])])))])))]])]])]]]]])))])]])])]))]])]])]))]]]])))]]))]]])))))))])])]])]]))))]]))])]])))]]]))]]]]))])]])]])]]]]]]])]]])]))]]])))]]))))])]])]]]]]]])])]])]))]]])))])]])])])))))]))]]))]])])])]]]])]))])])))))))])))])]]]))]]]]))]]]]])))))]))])])]]))))))])])]]))]]))))])))])]]]))]]))]])]]))))])))]]]))]))]))]))]])]])]))]]))])])])]))]]])])])])]]]))])]]]]))]]))]))]]))]])]]))]])]))]])))])])])]]))]]]))))))]))])])))])))]]])]]]]]]))]))]]]])]]]]]]))))])]))))])))]]]]]]]))]]]])])]]]])]]])))]])])]]])))]])]]]]])))]])))]])]]])))))])]])])))))])])]]]]]])]]))]]))))))]]))))])))))))))]])]]])])))))]]]]))))))]]]]]))]]]))))])]]]])]]])))])])))])))))])])))]))]]))]]))]]))))])))]))])]]]]])))])]])))))]))))])))])))]))]))])))))]]]]])]]))]]]))])]]])]]])]]])))]])]]])))))))])))]]])]]]]])))))))])]]]))))]]]))]]]]]]]]])]))]]]]])]]]))]])]])]]]]]]]]]]]))])])]]])]))]]]]))]))]])]))]]]))]]))]]))]])])]]]]))]]))]])))]))])]]))])]))])))))]))))]))]])))])]]))]]])))))))))))))])])]))]]])]]]]))]))]]])))]]]))]])])))]]]]]))]]]]]])])))]]]]])]]])]]))))]])]]]))]]))]])))]]))]))))))]]]))]]])))])]])]))]]))]]]))]))]])]])]])]))]]]]])))])]])]]]]]]]]))]])])))]]]))]))))]]])))]])))))])))]))))))))))])]]]])]]]])))))]])))))]]])]])]))]])]))]]]]])]]]])]])])]]])))]]))])]])]))])))]))])])]]]]])]]]]]])]]])]]]])])])]])]]]))]])]])])])])])]]]])])]))])))]))])))))]]))))))))]]))))))]]])]]]]))]))]]]]])]]]))))])))))]])))])]))]))]))]])]]]])]]]])))))]))]])))]))]]))]]]))))]]])])]])))]])))])]))])])]]])])]])))))))))))]])]])]]))]]))]]]]]]))])]]])])])])])])))))]]])])]]))]))))])]]]])])]])]]]])]))])]]]]])])]))))])]]])]]])]]]])])]))])))])]]])]]))))))]]])]]])))]])))]))])))]])]])]]]))))]]))])]))]]]])]]]))])]]]]]])]]])]]]]]]])))]]])]))])]))])))]]])]]])))]])])])]])]]])]))]]))]])])]]]]]))])]]]]]]]]]]]]]))]))])]])))])))))))])])))]]]]))]))))]])])]]))))]]))])))])])])])]])))]]]]]])])]]]]])]]]]]))]])))))]))]]])])))]]])])]])]]]]]]])]])]))])])])]]])]))))])]]])]])))))])))]))])))]))]]))])))])]]]])]])]])]]))]]])))])]])))])]])]]]])]]])))]]))]])))]])])])])]])]])]])]]]]])))]))]])])])])])]]))))]))]]])))]))))))]])))])]])])]))]]]]]])])]))))]])))])]])]]))])))))])])])]))]]))]])]]])]))])]))))])]))])))]]]))]]]]))]))]]))]]]))))]]]))])]]]))))]])]])))]))]])]]])]]))))))))))))]]]))])]]]])))]]])])])]))))))]]]])))))]]])]]])]]])]))])]))]]))]])]]]]))))]])]))])])])]]))))]])]))]))]))))]])]))]))]]]))]))]]]])))]]]])]])))]]]])))]]]])]]]]]))))]]])))]])]))])])])))])]])))]))))]]]]]))]))])])]]))))])))]))]]]])]]]])))]))))])]]])))]]))))])]]))]))])])])]]]]))]]])])))]]]))])])]]))))))))]]]]])]]])]))])]]])])]])))))))))))]])])]]]]))]])]])))]))]))]))]))]])])]]]))]))))))]]))]])])]))]]]))))))]]))])))]]))]))]]])))]))]])])]]))))]))]))))])]])))))])]))]))]])])]]))]])])]))])))])]))]])]))))]))]]]))))]))]])))])]])]]]))]))]))]]])])]))])]))]])))]]]))]])]]])))]]]]])])])])]])])]]])]))]]]]]]])])])]]))]]]])))])))]))))])]]]]))]]]]])]])])))))])]])]))])))))])]])))]))])])))])])))))])])]))])]]])]])])))]))]]])))])])))))])]]]])]]]]]])))]]]]]]])))])]))]))]))))))])])])))))]]]]]]]])]]))))))))))))]])))]]]]])])])])])]]]]])]])))])))))])]])]])]]))))))))]]]))))))]))]))]]]]])])]]])])))]])]]))]])))))]))]))))])]]]]]]))]]]]]]])]]))]])]]]]]])))]])])))])))]])]]]]]))]])]])])])]])))]])])))]]])]]])))]))]])]])))))])]))]]]]]]]))])]]])]])]))))])])]]]))]])))))]))]]])]))]])]])]]]]]]))]])]])])]]))))))])]])]))]])))]])))]))))]]])]))]]]))))]])))))]]]])]])))]]]]]])])))])]))]]]]]]]]))))))])))]])]]]])))))]]])])]])))]]]]))])]))]])]])]])]))]]))])])]]))]])]]])]]]]]]]]]))]]]]))]]]))))]]]]))]))])]))))])))))])]])]]]])])]])]))])])))])]))]))]])])])]))))]))))]])])]))])]])]]))]]))]])))))]]])]]))])]]])))))))]]]])]]]]]))])]])])]])))]))))]])))])]))]]]])]])]]))]])]]))])))])]]))])))]))))]])]])]]])]]))))])))]])]])])])]]]]])))]))]))])])])])])]]]]]]]])))]]])]))])]]]])))]]))]))])]])))]]]]]))))])]])]))])])]))])])]]])))]]))]])))])])])]))))])])]]]])])]]))))]))])))))]]])])])]))]))))]])))]))]))]))]))]]]])])])])]))]])]]]]]))]))]])])))))]]]])]))])])])]))]]])])]]]]]))])])]]))))]))]]]]])]])]])]))))))])]))]]))))]])]]))])]])]]]]]]))))]]]]]]]])))))]]]))]))))))])]])]]))]])))]]))]])))]]]]]]])])]]))))))]]]]]]]]))))])])))))]]])))]]])])])])])))])])))]))]]))])))]]]]]))))))]]])]))]]]]]]))]))))))]])))]])])])])]]])])])]]))]]]]]])]])))])))]]]))]])]))])]]))])])]))]))]))]]]))]]]])]])])])]]]))]))))]]]])))]]]]]))]]])]]])]]))]]]])])]])]))]]))]))]]))))]]]]])))]])]])))]]])])))])]]]])]]]])]))]])]))]]])])]))])]])))]])])]]]]]]]]))])])]])]]]]]))]))))]]]]]))]))))])])])]])))])))]]])]])]]]])])]]]])))]]])])]]])))])])]]]]]]))])]]])))]]])]]]])])]))])]))))])]]]])]])])]]]]))))]]))]])])]]]]]]]])])]]))))]])))))))]))])]]]))])))]))))]]]])])))]]]))))]]]]))))])]]))])])]])])]))]))))))])]))]]]]]]])]))])]]]))))])]]))]]]])]]]]])])])])])))]]))]])]])))))]))]))]]]]]]]]])])]])]])]))))]]])])))]])))])]])]))])))))]]])]))]))))))]]))]]]))]]))]]])])]]))])])))))))))]])])]])])))]]))))))])])]))]]])))])]]]])]]])])]]]]]])]))]]])))]])]]]])))]]]))))))))]))])))]))])])])])]))]]]])])])))])]]]])))]]]]])]]]]]]]])]]]]])])])]))])])]))])])])]]))]]])))]))]))])]]))]))))))))])])))])]))))))]]]]]]]])]]])])]]]]])]))]])]]]]])]])])]]])])]])))])])])]])))))]]]))]])]]))))]))]])]]]]]))]])]])]))]]])]]))])])))]]))]])))])]]]])))])]])]))])])]]))]))])])))])])])]))))]]))])]]])]))])]]))]])]]]]]))]]])]))]])])])])]]]])])))]])]])]])))]])))]]]))]])))))]])]]]]))]]])]))]])))))]))]])])]]])]))]]]]))]]))]))]]))])]]])))])])]])))]]])]])])])]]))]]]]))]]))))))))))))])]))))])])]]))))))]]]]))])))]]))]]]]]))])]))))]]]]]))]]]]]]))]]])]))]]])]]])]))))]]))]))))])]]]))]])])]))]]]))]])]]])]))]])]]]]]]))))))))]]))])))])]])]]]))]]))))]]]]]))]]]])]))]))]])])]])])])]])])])]))]]])]])]]])]]))]]]))])]]])]])))]]]])])))])])]))]))]]]]))]]]]))]]])]]))))])])))])]]]]]]]]))]]])]]]))]]]))))])))))))]])))]))])])])))))))]]])))]]]))]]))]))]]]])]))))]])]))))]))]))))])]]]]))]]]]))])]]))]])))]]))])]]]]))]))]])]]))])]])))]]]))]]])])])]]))]]))]]])])])])]))])]]]]])))])]])]]]])]))]])]))))))]))))))]]))]))]])]))))))))]])]]))]])]])]])])]])]])])])]]]]]]))])))]]))]]])])])))))))))]])]]]])))]]))]))]])]))]]])]])])]])]])])])]))]]))))]))))]]))))])]]))]]]]))))])]))]])))]))))))]]]]]]]])])])]]]))]))]]))]])]]]])])]))])))))))))]]]]]]]]]))))))]]]))))])))]]]))])]])]]]]))))))]]])))))]]])))])]])]])))]]])))]))]))]])])]]]]]]]]]]])])]]])])]])))]])]))]))]))]]]))]]))]]))])])]))]]]))]]])]]])]))])]]]))]]])]]))])))]]])))]])]]))]])]]))))]))]]))]))]]]))))]))))])))))]]]))])]]]))))]])]])]]]])]))))]]))]]]]))]]))]]]]]))))]))]]])]]]]]]])])))]]]))]]])]])]))))]]]]]]]]]))])])]))])]))))]]))))])))])]]])]])]])))]]])]]))])]]]]])))])))]))]))]))))]]])]))]])])))])))))]]))]]))]])))]]]])]))]))]))))])]]]])]))]))))]]))])]))))]]))]]]]]))])]))))])])))])]]))))]))))])])]])]))))]))]))])]]))]]))])]))])]))]]))))])))]])]]]])))))]]]])]])]]))]))]]))])))])))))))]]))))]]]))])]])]))]])]])])]))))))])]]))])])]]))]]])]])]))))]]))]))))]]])])]])))]))))])))]))]))))])]]))])))))))]]))])])])]]]))]]])]))]]))]])]))]]]]])])]])])])])]])])])]])]])))])))))))])]]))]]])]))]]]]])]]))]]))))))]))]]])])]]])]]]))]]]])])))]]]]))]]])]]]])])])])]))]]]]]]]])])]))]]))))))]))]])]))]]))]])))])]])])))]])]))]]]]])))]))])))])]]))])]]))]]))])]]))))))))))]]])]))))])]]))]]))))]))))))))])]]]]]])])))]]])]))]]])]))]))])]])))))]))]])]])))]])))))))]]]])]))])])))])]]]])]]])]]]])]))))))])]))])))])]]]))]]]))])]])))]])))])]))]))]])]]]])]]])]]))]))]))]]])])])]])]))]]]))])))))))]]]]))])]]]])))]))])]]))]]]))))]])])]]))))])]]]])))]]]])))]))))]])]))])])])]]]]]])))]]]])]]]))))))))])))))))))])])]]))])]])))])))]]]])]]])]]))))))]])]]]]]]]))])])]]))]))))))]]])])))]))]])))]))))])]])]])))])]]]))))]]])])]))]]]]])]]]))]])))]))))]))))]]]]))))])])]])]))]))]))])]))]])])]])])]))]]])])]))]))]))]]]]))]])]]))])]))))))]]))]]))])]])])])]))]]))))])])])]))]])]])]))])))]]]]]))))]]]])]])]))])])))]]]))))]))]])))))))))])])]]]])))))]])])]))]]]])]]])))))]]]))]))]]]]]))]))]]]])]])])))])]])])])))]]])]))]]])]]])]]]))]]]])])]))]))])))]]]])]]]])))]])])]]]]]]]))]])]]]])]]]))]]]))]])))])])))]])]]]))]])))])])]))])))])])))])]))))))])])))]]]))]))])])))]]]])))))]]])]]])))]]])))]]]))]])])]))]]]]]])))]]))))]))]]]]))]]]))))))]]))))]]]))]))]])))))]))))]))])])]]]]]]]])]))]]]])))))]]]))])]]])]]])])])])))])]))))]]])]))])))]]])))])])))])])])]))]))))])]]]))])))]]])]])))]])]]])])))))]])]]))))])]))]]))))])]]]]))]]]])])]]))]))]]])))])]))))))]]]))))])]])]]])]]))))]]])]]]]]))))))]]]]]))]])])]))])))]))]])]))]]]])]))]]))))])])))))]]]]])]))])))])]))))]]]]]]])])])]]])))]])]])))]))])))]]])))))]))]]]))])]])])))])))))]]]]]])]])]])]))))]]]))]))])))]]]))))]]))]]]]]]])))]]])])])])]])])])])])]])])))])]])))))])))))]]])]])])]]])))]])])]])])])])])])]]))]))])]))))]))]))]]))]))))])]])]])]]]]]]])]]]))))])))))]])))]))]])]]])]]]))]))])]]]]))))])]]]]))]]]))]]]]]]]]]]]]]]))))]])))))]))]])])]])]]]])]))]])])))])]))]]])))]]]]])))]]]))]]]))))]]])]]]])])])])]]]]))))]]]])))]]]]))))))]]]))]]]))])))]]))])]])])]]))]]])]))))]])]])]]]))])]]))]]))])))])]]))]]]]]]]]]])])]])]))])])]])))])])])]])))]])))))))))]]]]])]])]]))])])))]])])))]])]))])])]]))]))])))]]]))]))])]]))]])]))])]]]))))])])))]))]]])))))])]]])]])])]])])]]]]])))]]])]))]]]))])])))])]])]]])))]))])]))))))])]]]]))])]])])]]))])]])]])])]))]])))])])])]])])])])])))])]])])]])))]]])]]]))]))]]))]]))]]])]]]])]])]))))])]]])]))))]))])]])]]))]]))]]])])])])]]]])]))]])])]])]]]])]]]])]))])]))))])))]))])]))]))))]]]]))]])]]]]]])]]))]]])]]]]))]]])])]]])])])))))]))]]))))])])]))))])]])]]))))]))])]]])]]]]]]]]))]]))])))])))])]]]]])))))]]]))))]]])))])))])]))])])]))]])))]])]))])]]]]]]))))])])]]))])]]]]]]]]]))])))]])]))])])]])]]))))]])]]]])]]])])]]]))]]]]))]])])])]]))))]])]]]])))])])]]])]]))]])))]]))]]))]]]])])])]]])]])]]])))))))]))])])))]])]))])])]))))])])))))))])])])])]]]]]))])]]]]))])))])])]))]]])]]])]])))]]]]]]]))))))])))))]])])))]]]]]])]))]])]]))]]]])]])))))]]])))]))))]])]]])]]])])])])))]))]]])]])]]])]))))]]]]])]]))])]]])]]))])]])]]]]]))])])))))])]]))])]))]))]]])])]]]))]])])))))]]]]))])))))]]])]))]])))]])])]]]])]))]]]))]]]]))])]]]))])]]))]))]]])]]))]]]))])]])))]))])])]))])]]))])]]]]])]]]]]]])])]]]))))]])]])))])))]]]]]))]]))]]))])]))]])]]]))]]]]))]]])]])]))]))]))]))))))]]]))))])]))])]]])))]]]))]))]])])]]))]]]]]))))]]]]]]]]]]])])]]))))]])])))]]))]))))]]]])]))))])])]))]])]]])])])])]]]))])]]])]]])]))])]])))))]]])))]))]])))]))]]]]]))])])]))))]])]]))]]])]))]]])])))]]]])])]]]]))])]]]])))])]]]))]]])]])]))]])])]]]])])))))]]))]])]]]))))))]]])]))))])))])]]))]]])))))])))])))]))])]]]])]])]])))])]]]]])]]])]]]]])])))]])]])))))]))]])]]])))])]])))]])]]]])]])])]])]])))))])]]]]]]))]]))]))])))))]))]))))])])]]))))))]])]))]]]))]])])]])])]]]]))])))]))]))))))]]))]]]]]]]]))))])])]])]]]]))))))))))])]))]]]))]])])]))))]))])]]]]))]])]]))))]])]]]])))]])))))]]))]))]]])))]]]))]]))]]]]]))))]]])))]]]))))))]))]]]])]))]]))))]]]]]]))]))])))])))))])]]]]]]]])]]])]]])))])])))])))))]])])])]])]])))])])]]]])])])]]]])]]])])])])))))]])]]]]])]])]]]]))]))))))])))])]]]]))))))])]))]])])])))]])]])]))])])]))))]]]])])])])])))])]))]))]]))]]))]]]]]]]]])])]])])))])))])])]])))))])])])])])])))]]])))))])])]))))])]]]])]))))]]]]))])]]]]]))])])]))))])]))))))]))]]])])))])]))]))]])]))]])]]]])]]]]]]))]]]])]]]))]]])))]))]]])])))]])]])])))])]]])])])]]]))]))])]]])])]]]]])])])))))]])]]]))))))))))]]]))]))])]]))])]))])]])])]]])))]))))]]])]])])])))))]])]]))]]]]]])])))))])]])))])]])))))))))]]))]))]))]]))])))))])])))))))]]]]]]])])])))]])])])))])])])))])]))]])]]]])))])))]]])))]))])]))]]]])]))]])))])))))])))]))))])))]]]])]])])]]))]]]])))))]])))]]]))))])))]])]))]]]])]]]])]]]]]]]]])]]])))))])])]]))]]]]))])])]))]]))))]]]]]]))]]]])))]]]]])]]))])))]))]])])))))]]])]))])])))))]]])])]]))))])]])]])))])])]]]]])])))]])]]]))])))]]))]]])]))]])))]]]))))])]])))]))))))]]])])]]]]])])]))))])))]])])]]]])]]))]])]]))))])))])]))]))]])]]]))])]])])]]]]]))]]]])]]]))])])]))))])])]])]]]])))])))])))]))])])))])]]))])]]]))]]])))]])]]]]]])))]]])])))))]]))])]))]])]])]])]))])])))))])))]))]))))]])]))]))]))]]])))]]])]]])))]]))])))]]]]]))]]]]]]))])]]]]])]])))))))]])]]))])]]]]]))]]]])])])]]])])])]]])]]])))))))]])]]]]])]]])))])])))))]))]))])])]])))])]))]]]))))])))]])])])])]])]])]])])]))]]])))))]]]]]])))]))]]]])])])]]]]]))])))])])])]))))))]]]])]]])]])])]))])))])]]]])))])]]))])]])])]]]]))))))]]])]]))]]))))]]]]]))])])]])])]]))]]])]])]]]))])))])]])]])]])])))]]]]])]])]])])])]]]))]])]]]))))))]]]))])]]))))]]]]]))]]))]])]]))])]]])))])]))]]]))]))])))))]])))]))]]]])]]))]]]))]]]))]]])))]))]]])]]]))]]]))))])]]])])))]]]]))))])))))]]]]))])])]))])])]]]])])])])])])]]))]]))))]]])]])]]]]))]])]]]))))]])])]]]])])]])]]])]])])]))]]]]])])])]])]))])))])))]))))])))]]])]]]]))]]))]))]])))]))))))]]]]])]))]]]]]])]]])))]])]]))]))))]]]]]])])]]]]]])]]]))))]))))))]]]]]])]]]]])]]]]])]]))))])]])]])]]]]]])]]])])]]]])))]])))]))))]))]])))]])]))])))]))])]))]])])])]]))]]))])))))))))])]]]))]))))])]]]])]]))]]))]])]])]])))))))])])))]]]])]]]])]]]]))))]]))))]]])]))))]]))]))])]]))])))))]])]]]))]))])]]))]]]])]))])])))]))]])]]))]]]])]]]])])]]])))]])]))]])))))]])])]]]]]]]]]]]]]])]]]])])])])]]))]))))))])]]))])))])))))]]]]))))))])]]]]))]])]]]])))))]]))]]])]]])])])]])))])])))])]]]])]]])]]]]]])]])))]]]])]])])]))])]))))]))])])]]]]]))))))])))])]))))])]]])])))))]])))])])]]))]]])])]]))]))))])]))]]])])]]]])])]])])))]))])])))]]))))))))))))])])]))))]]))])]]))))]))]]]))]])))))])]]]])]))))])]))]))]))]])])])]]]))]]]]])])])]))))])])]])))]]]))))])]])])]]]]])))]))))])]]]]))]]))]])])]]])]])])]]])]))]])])]])])))))]]]))))]])]))])])]])]])]))]])]])))))])))])]]])]))]]))]]))]]))]])])))))))])))))])])])))]]))]]))]]])]))])))]]))]))])])]]]]]))))])]]))))]]))]]]])))])]]))))]])])])]]]))]))]]])])))]))]]]]]]))]))]])]]]]]))]]])]])]]])]])]]))])]])]]))]]]]]))])))))])))])]))]])]]]))]])]])])]))])]]])))))]])]]))]])]))]])]))))))]))))))]))]]]])))]))])))]]])]]]]]))))))]))]])]])))]])))])])]])])))))]]]]]]])))]]])])]]))]])]]])))))]]]]))])]))))]]))]]])))]))))])]]]]]])))]]]])))]))])]])]]]]]]]))]]])))]]]])]]))))))]]])]]]))])))]))))]]])))]]]]])))))]))))]]]]])))))]])))]])])]])]]]])))])]))])]))))]]]])))])))])])])]]]]])]]))])]])]))]]))]]))])]))]))]]]])])))]]]])])]))])]])))]]]])]])])]))]])]]]]))]]])]]]]))]]]])])]]]))])])]]]]))]))]]])]]))]))])])]]]]))]]))))]))])]])]]))))])]]]]])]]]]]])]]))]]))]]]]])))]]]])]))))]]))))))))]))))]]]]))])))]))]]]))])]]])]))]]]]])]])]])])])]]]]))])])]))])])])]])))))]])])]]]])]]]))]))))]])))))])])]]]])]]])))]])])])]])]]])))])])]])]]])))]])))]]]]]))]]]])]]]]]]])))])))]]))]))]))]))])))]]]]]]]))))]]]])])]])]]]]]))]]]])]])]]))))]])])])]]))]]]]]]])))))))])]])])]])])]])]])))]])]]])])))]]])))]]])]]]])])])])]))])]]]]]]]))])))]]])]])])))]]]]]])]]]])))]])]]))))]))]))]])])]]))]]])])]))])]]))))])]]))])]])]]])]]]]])]])]]])]))]]))]])])])])))))]])))])]]]])])])))))]])])))]])))))]))]))])]))]])])))]]])))]]])])]]))])]])]]]))]]))]])])]]))])))))]])])]]]]]]])))])]])]]))))])]]])]])]]]]))])])])]]]]]))]])]))]]]])]])]]]]]]]]]]]]]])))))])]))]]))]))])]])]]]])))]]]])))))]))]]]])]))])])))]]]))]])))])])]]))))]])]))))))]])))]])]]])]))])]]))]))]]]]))))]))]]]]))]])])]]))))))]]]]))]))]]])]]]]])))]]])))])]]]]])]]))]))]]])]]]]))]])]]]]))])]]])])))))])])]))])])))])]]))]]]]]]]]])]))]]])]]])])])])])]]]])])))])]))]]]]]])]]))])])])])]]]]])])))])])])])]]))])])))])))]]))])])]]))])]))]])]]]]])]]])]]))))))]]])))])]]])]])))])]]]])))])]]))]]]])])]]]))))))))))))))])))]])))])))))))])))]])])])]])])]])]]))])])])])))])]]]]]]]]))])]])))])))]))]]]]))])])])))]])])])))))])])]))))])]])))]]]))]])))]]]])]]])))])]]]])]))))])))])]))])))]])])])])]))]]))]]])]]))))])]))])]))]]))]))]))])))]])]]))]]]]])]])]])))]]))))]]]]])]]])])]])))]]])])]]))))))]]]])]])])))))]])])])]])))])))])))])]])]))]])]))]))])))))])])]))]))]])]]]])])]])])))])])])]])]))]]]))]]])))]]))])])]])]))])]]]]]))])]]))))))))))))]])]]))]))])])]]]])])))]))))))])])])))]])]]]))]])]))]]))]]])]]]]))])]])]])]])])])]]])]]))]))))]]])])]]]])))))])]])]))]]]]]])])]]]]]])])))]]]]])))]))])))]]])]))))]])])]]]])]]]])))))]]))]])])]])])))])]))]])])))])]]])])]]]]])]])))])])]])]]])))]))]])]]]])]))])])])]])))]])]]]]]]])]]]]))))]]]])]]]])])]])])]]])])])))]))]])]])])))])]]))])]])]))))])]]]]))))]))])]]]]]]])))]))]])]))))]])))])]]))])]]]])))]]))))])])]))]])])))])])])]])]]]))))]]]])])]]))])]]))))))]))]]]]])])]]))]]]))]])])]))]]])))]))))])))))]])]])]]]])]]]]]])]])])])]))))))]]]]))]]])))]]))))]]))]]))]))])))]])))))]])])])]])))]]]]])]])]]])))))])))))))]])]))]])]]]]]])]]])]]])]])]]]))))))))]))]]))]]]]]))]))))])]]]]]]]]]])))])])))])))]])])])])]])]]))])))])]))]]]))))]]])]])]))]])])]]]))]]])))])]]])]))]]))))])])]]]))])]))))]]))))])])]]])])]))))]]))])]]])))))]])]))]]]])]])]]))]))])]]))))))])]]])]))))]])])])]]])]])]]))]]]])]))])])])]))])]])])))))])]]])))]))]]])]]])))]])]))]]]]])))]]]))])]))]])))]]))]))]])])))]]]])])]]))])]))))]))))]])])]])]))])))))))])]])])))])])]]]))))))))]))))]]]]]])]]])]])])])]])]])])))])]))))))]])]])))]]))]))]])]))])]]]))])]))))]]]]]))))))]])]))))))]))]]]]]]]))]))])))]))))]]])))))]])])))]]])]))]))))]))])]))))]))]]))))]))))])])]]])]]])))])))])]))]])))]]]]))])]]))))])))]]])))])))))]]]]))]]]))]])]])])])]])))])))]]]]])])])]]]]))]]))))])]]))]])]])])))]))]])))])]]]])])])]))]])))]]))])])])])))))]])]]))]))]]]]))]))))]]]]]])]))]]]))]]))]])))]]]]])))])))]]])]))))))]]))]))])]]))))]])])]]])]))]]])]]]]])))]])]]]]))])])))]])])]]]]])]))]))]])]]))]]]]))]])))]))))))]]])])))))]]))))])])))])]])])])]]))]])]]])]]]))]])])))])])]]]))]))])])])))]))]])])]))))]])])]))])]]))))]]]))))))))]))])]])))))))])]]]))]])))]]))]))))]]]]]])))]))]]]]]]]))]]]])))))))))]]))]])]])))))]])]]))))])))]]]]]]])]])))])]])))))))])))]))])))))]])])]]])]))])))]))]]]]]])])])]]]]]]])]])))]]]]])]]))))]))]])))))]))]]]])])])))]])))])])]])])])]]]])]]]])]])))))])])])])))]))])]))]])]])]]]))])]]]])])]]]]]))))))]))])]])]])])))]))]]]]]]))]]]])]))]])]))]))]))]))])])])])))]]))])])])))))]])))])))]]]]]])])))]]])]]])]])]))))]])]]])])]))]])]]]))])]])])))]))])]]])))))))]))))))])]])]])))]))]))]])]]]]]]]]]]))))])]])))]])]])]))]])]))))]]])]]))]])])])))])]])))])])]]]]])))]))])]]])))))))))))]))])))))]])]]])])))]])]]])))]]]]]))))])])]]))))]))))]])]]]])]]])]]]])))))))]]]])))])]]]])]))]))]]]]))])]]))))))]))))))]))]]))))))]])]])))))]])])])])))])))])])]])))])])]])))])))]]))))]]]]]]))]))]])])]]))]]])))]))])))])))])))])]]))]]))])])]])]]]))))))]]]))])))))])])]])]])))]]))))]]]]])))])))]])])]]]])))]))])))]]))]]]]]))])))])))))]]]])])))))])]])]]))))]])])))]]))])]]))]]]))]]])]])])])))]]))]])]))))))]]]])]]])]]]))])]]]))])]]])))))]))))))])])]))]]]]))))]])]])]]))))]]])))))]])]]]])))))]))]]))]))]]))])]]))]]])]]]]])])])))))])))])]]])]])])))]])))])))]]]))]])])))))]])]]])])])]]])]))]]]]))])]])]))))])])]]])]))]]]])])]])])]])])])])))])])]])]])))]))])]]))))]]])]])])]))])]]]]]])]])]))))]))]]])))]])])])])]]])))))])])]]]))))]])))))]))]))]))]]]])])))]]))]]))])))])))]])]))]]]]])))])]))]]))])))]]]]]]]]])]]])))])]]))]])))))])]]]])]]]]))))))])])])]]]]]]]))]))]]])]))]]]))))]])]]]]])))]])]])]))]]))]]]))])]])))]]]])]))]]]))])]))))]])]])))]))]]]])])]])]])]]]))])]])]])))))])]])])])])]])]))]]))])]))))]]))]))]]]]))))])])]]))])]]))]])]])]))]]))])]]]]]))])])))))])])))]]]]))))]))))]))]])])])]])])]]]]]))])]))))]])]])]])])]))]])))))])))])))]])]])])])]))]]]]]))])])])])]])]])]))])]])]]]]]])]]]]]]))]]))])]))))])))))))]]])]))])]]]])])]]))]))]]]])])]])]]])]]]]])]]])]])]]]]]]]]))]))])]]))])))]]])]])))])))])))]))]))]))])]]))))])]))))))]]]]]))]))]]]))])]]))))]])])]])]))))]]]))))]]]))])]]]])]))))]))))]])]])]))]))]))]]]]))]]))))])]]))))])])]))]])])]]]]]])]))])))))))]]))]))]]]]]]])]])]])))]]])])]])])])]]]))])]]]]))])))]))]]]]]]))]]])]]]))))])]))])))))))]))]]]])]))]])))])]])])]])]]))])]))))])))])))])))))])))]]]))]]))]]]]])])]]]]])))]])))]]])))))]])))]]]])]))])])))))])]]])])))])))])])]])])]))))]))]]]])])]]])]]))]])))])]]]))]))])])])])))])))))])]]])]])))))]]]))))))]])))))]]))))])]])]))]])]]]]))])]))]])]]))]))))])))]])))])]]]]])))]]])))])]]]))])])))])]])])])]]))]))]])]]]))])]]]])]]])]]]]]]])]))]])))]))))])))]])]])))))]])])))]]))])]]]))]))]])]]))])))))]]]])])])]]]))))]))])))]]]])])])]])])]]]]))]]))]])]])]]]])]))])))]]]]))])])))]])])]))])])]))])]]]]]])])]))])))]))]]]]]]]])))))])]])]]]]])])]))]]]])))]]))))])])])]])]])]]]])]])]]]]])]]])])))))])])]]]]]])))]))]]]]]])])]]))))]]])]])]])]]]])])]))]))))))]])))]]]]]]]])]))])))]])]]))))]]))]]])]))])))))]]]))]]]]]))])]]]])]]])]]]]]))])])])]))))]]]]])]]))])])]))))]])]])])])]))))]])]])]]))))))]))]))])])])]]))]]]]]]])))])])))))))])])))])])])]])]]))])))])]))]]]]]]]))])])]]]))]]]]])]]]))]))]]]])]])]]]))]])]))]]))])])])]]]])))])))]]])])])]]]])))]))))]])])])]]])])])])])]]]]]]]]]))])]]]))]]]])])]]]))]])])]]))]]]))])])]))))])]))]])))]]]]]))))])]]]])]]]])])]))))))])))])])])])))]]]]]]]])))))]]))]))]]])])])))]])))))]])])])]]]]))]])]))]))]]]])]]))]]])))])))])]]]]]))])]]]]))])]))]))])]))))])])]))])])))])]))))]])))]]))]]))])]]])]]])))]]])))]]]])])])))]]]])]]]))]])]]])]]]])]]]]]])))))])))))]))]])])))]]))]])]))))]]]])])]]]]]))]))]]]))]))])])]]])]))])])])]])]])])])])))]))]])))))])])]]))]])]])]))))))])]]))])]]]]]))))]])))]]])]))]])]])))]))]]]))]))]])]]]))])]]))))))]])])))]]])]])]]])]]]]]]]]]]]]]]]]])])))))))))]]))))]))])))))))]])])]]]))]])]]))]]))])]]))]]]])]])])])]]]))])]))]])))])]))])))]]))])])])]]]))])))])]))))]])]]))])])]]))]))]]]])))])]])])))))]])]))]]))))))]))))])])]]))]]]]]))))]]]))]))])]])]]]]))]]]]])])]])))])]]]])))]]])]])))]]))]))))))))]]]))))]))]))])]])])]])]])])]]]]]])])]))))]))]))))]])]])))]])))])))))])))))]]])])))])]]])]))]))]]]])])))]]])]])]]]))]])]))]])]]]]]))]]))]))])]]))])))])]])))]]])]]]))])])])]]))])]])))])]))))]))]]]])]])]]])])))]])))])]]]]])]))]])))]])]]])]]])]))]])))])])]])]])])]]]])])))])]))])]))])]])])])]]]]]])]))]))])))]])]))])]]))]))]))])))])]]]])]))]]))])])]))])))]]))]]))))])))))])])])))]])]]))))]]))]]]))]]]])))]])]]])))))])])]]]))))))]]))]]]])]])]))]])])])]])])])]))))]]))]]]]))])))))]])])])))]])]]]])]])))]])]])]]]])]]])))])]))]))])])]))))]))])))]))])])))]])]]]]]))]]]))])])]])]))])])])]))))])])]))]))])))])])))]])]])]])))]))]))]])]])])]]))]]])])))]])])]))])]]])))))]))]]]))])]))))])]]]]))))])))]]))]))))))])]]])))))]])]])])])]])]]])))]]))]))]))))))]])]]])]]))]])]]]))])]))]]]])))]))]])))]]]]]]])]]])))])))]))])))]]]))))]))]))))]]]))))))))])])])])]))])]]])])]])])]))]]])]])]]]])]))])))]))]])]])]])]])))])]]]))]]))]])))))])])]]])))]))]]]]]])]])])])))])]]]))])]]]]))))))))])))]])))])))]]]))]]]]]))])))))]])])]]))))))]])]]))]])))]))])]])])])]]])))]))))]]]]]))))]]))]])))])]]])))])]))]]))]]]))]))]])])]))]]]]])])))])]))))))))]))]))))]]]])])]]]))])]]])))]])]]))])))]]])]]))])]])]))]))])])]]]]]]])])]]])))))))])]]])])]]))]]))))))])]]]))]]]))]]))])))]]]]]))])]]]]])]])]]])]))]))]])]]])]]))]])])]])))])]]]]]]]]])]]])))))]])])]))])]))]))])]]]]])]))]]])]]]]]]])])]])))])])]]))])])]])]))))]])))))))]]])])))))])))))])))])]]]]])])]])]))])))))]])])]]]]]]]]])])))]]])))])]))]]))))]])]))))))]))])]]])))]]))))])])]]]))])]]])]]))))))]))))]])]]))]])))]])])))))])]])))]])]]])]))))]]))))]])])])])])])]]))])]])])])]))))])]]]])]]))]]]]]]))])]])]])]]))))]])]]]]])])])])]))])])])))]])))))))))]]))))]]]]]]))]))))])]])))]))]))]]]]])]]))])]]]]])]])))])])))])]]])]))])])]]]]]))])])]]])))]))])]]]]])])))))]]])))])])))]])))]])]))])]]]]))])]]]))))))]])]]))]]])))])])))]]))])))))]))]))]]]]]]]]])))]])]))))]]]])]]]]))))])]]]]]])))))]])])]]])))))))])])]]]]]]]])])]])))]))))]]]))]])))))]]]])])]]])]])))])])]))]]))]])])])])])])]]))]]))]]))))])])]]))])]]])]]))]))]]]]]]]]]])]]]))]]])])]]]]]]]]])])])])]))]]]))))])]])))]))]]))])])])]]]]]]])]))]]]]))]]))]])])]]]))))]))]])]]))])]])]])]])]])]))))])]))]])]])]]))])])]))])])]])))])])])])]]])]))))]])]]]]]))]])])])])]))))])]])]]))])])]])])]]]]]))]))])]))]]]]))]))]))]))])])])))]))])]]])]])]]]))))])))))]))])])]))]]]])])])))))])]]))]]])))]]]])])]]]))]))]))]]))])])])])]))]]])]))))]))))))])]))]]])))]])])]))])]))]]])))]))]]])]])]])])])]]]]])]]]))]]]])]])]))])])]))]]))])]])]))]]]]])))]))))]])]))]]))])]]])]]]))))))]]])]])))))]))))]]))]))])])]]])))]))]]])])))]])])]]]]]])])])))]])]]))]]]]]]))))]]))]]]))]]))]))]]])]]))]])]]])])]])]])]])))])]))])])))]]])]]))))]])))]])])])]))))]])]]]])))))]]]))]])])]))])))]]]]))))))]])))])])])))]])))]])]]])))])]))]]]])])]])])]))]]]))])]))])]]]])]]))])))]]]))))]]]]))])))]))]]])])))]))])]])]]])])])))]])])]))))]])))]]])]))]))]]])]))])])])]])])])]])))])))])))))))])]])))]]]]))))])]])))]]]]]]])))]]))))])]]]])]))))))])]]))))]])]]]]))]])))))]))]])]))])))])])))]]]]]]]])])]]])])]]))]])])])))]]])]])))])]])]])]])])))]]))]]])]))))]]]]]]]]]]]))]))]]])))))))]])]])))]])])]))))])])])]))]]]]]])])]))])])])]))])])]))))]]]]]))))]))]]))]]])]))))]]])])))]))])))))]]]])]]))])]])])]])))]]]]]))))))))]))]]]]))]]))])))]]]])])))]]))]]))]]]))))])))]))))])]))]])]))])))])]])])])]))])]])))]]])]]]]]]]]]]]]])]))))]]]]]))]])]]))])))])]]))]]]])]]))]])))])])])]])]]))])]])]))))]]])))])])]))))))]])])]]))))]])]])])]]))]]]]]])]])))))])))))])))])))])]]))]])]]))]])])])]]))]]]]]]))))])))])])])]])]))])))))))))]])]]]]))]))]])]]]]]]))))))))]]))]]))]]))])])]])]])])]]))])])]]]))]]]]]]]])))))]))])))]))]]]]]))]))])])]))]]]]])))])]]]])]))]))]))])])]]]])]])]]]])]))))]]])]]))))]])]]])))])])]]]])]])))))))])])))]]])]]])))]]])])]))))])])))]])]]]])]))])]])))])]]))]]))]])))]))])]))]]))]]]]]))]])]]]]])])))])])]))]])))])])]])]]]])]])))]])))])))])]]]))]]]])]))]))])]))))))]]))]])])]))]))))]]]]]]]]]))))))])]))]])]]]]])])])])]]))))]]]]])))])]]))]])]]))]]))]))]]]])])]])]))])]))]])])])]]]]]]])])))]]])]]]))]))]]))]])))]]]])])))])))])])]))]]]])))])))]])]])]]]))))))])]]]))))]])]]]]])])])])]])]]]))]))))])])]))]))])]))))]])]])))]]]]))])])))]))])))]])]]])))]]))])))]])))])]]))))]])))])))]))])])))]))))]])]))))]]])]]])]]))))]]]))))]]])]))])])])]])])])])))]]])]])]]))])])]])]]]))]]]]])]]]])])])]]]]]]])]]))])]]]))))])]))]))]]))]]])))))])])])]])])]])]))))]])])))))]]]])])]]]))]]))]]])])]))])]]])]]])]]]]]]]])])))))))))])]))]])]]]]]]])]))]]])]]))]))]]]))]))]])])])))])])])]))])])]]])])]])])]))))))))))])]])]))]]])]]]]]])]))]]]]))]))))]])]]]]]]]))))))]))])]]]])]])))))]]]))])]]]])))])]]])])])))])))]])])]])])]))]])])))])))))))])])])]]]]))])))]))])]]]]]])]]]]))])]])])))]]]))]]))])]]))]]]])])])])]))]]]]])])]])])]])]]]]])])]]]))])]]])))))]])]]])])]]))]])]]]))]]]]]))))])])])))]]]]])]]]))]))))]]])])])]))]]]]])])]]]))])])])])]]]]))]))]]]]))])])])]])])))])))))]]))])]))))))]]]]]))])])]])]]]])])]]]]]))])])])]))]]]]))]])]]]]]]]))]]]]])]])]))])]])])]))))])]))]]])))]]]]]])])]))]]]])))]]])]))]]])])]])])]])]])])]]]]])]))]))]]]]]]])]])])])])))]])))]]]]))))]])]]])]]))]))))]]]])))])))))))]]]]]]]]]))]])]])))])))]))])]))])]]]]])))])])])]])])))]]]])]]]))]]]]])]])))]))]]])])]]))))])])]])]]]]]))])])])])))]]))]))))))]))]]]])))]])])]])]])]))))))]))))]])]))])))]]))))]]]))])]]])))))))]]]]]))))]]]]]]]])))]]]])]])])]))))]))))]])]))])]]])))]])])))])]])))])]]]])])]]))])))))]])))]])])])]]))]]))]])))]]]]))])))]]]]))])]]])]]]])])))]])]])))]]]))])]))])])))))])]]])))]])])]]))))])))]]])])]))]])])]))]])])))))]]]])]]]))))))])))]])])])])]]]]]]])))))]]]]]])])]])]])]]])]))]])])]]))])]]]])]))))]]])])])))))]]))])))))])))]))))]]]]])))])])))])]]))))])))))))]])])]]))]])]]]])]))))]]])]]])))))))])])))]])]]))]])])]])))))])))]]]))])]])]]]))]])])]]]])]]))]])]))]))])])]])]]])]])]))])]]])))]]])))])]))))))])))])))]])))))])]])))]))]]])])]]))]))])))]])))])))))])))]]]])]])])))]))))))])]))]]))]))]))]]))]))))]))))])]])))]]))))]])]])])])])]]])])]])])]]]))]))]))))))]))]]))])]]))])]]]]])]))])]]]]])]))))]]))])))))))]]]]]))]]]])]))]])]]))]]))])])))]]])]])]]])]))]]])]]]])))])])])])))]))))))]])))])]))))))])]]])]])]]])))))))])))])])]])]))))]))])))]])))]]]))])])])))]))])])])]]])]]])])))]))]]]])]]]]]]])]]])))]]]]])]]))))]])))])))))]))]])]]]]])]))]))])])]]]]]))])]]))])])))))]))]]))])])))]]])]]])])))]])]]]]]]]))))))]]]])]]))))]]]))]))])]]]])])))))])])]))]]]))))]]]]]))))]]]])])]])]))]))]))])]))]]))])))])))]))])])]))]]))))))))])]]]]])))))]))]]])]))]]]]))]]]))]]))]))]))))]]]]]]])]))])]])]]))]))]]]]]]])]]])]))]]])]])]]]])))))])))]]])]])])]]]])]]]])]])))))])])]]))]))])]]]))))]])]]]]))])]])]]]]]])]])])]]]))]))]])]]))]]]])))])]])]]])]]]))])))]]]))]]])])))]])])]))))))])])))))])])]]]]]]]]])])))])))))]]])))]))))))))]])))]])])]]))]]])])])]]]]])))])]))))]))]]]])]))]]]))]])])]))))]))]])]]]]))]))]))])))]]]))])))])]]))])])])])]])])]]])])]))))))))))]))])])))))]])))]]])]])))]]])))]))]]])])])))))])]])]))]]])))]))]))]]]]]]])))])])]]))))]))]])]]]])))]]]])]]]]]))))]]))]]))]]))))])]]))]])))]]]]))]]]]))]]])])]]]]]))]])))]]])))))))))]])])]))])])]])]))]]])))]])]))))])))))]])))]])]])]])))])))])])]))])))]))])]]))))))]]]])]])])))]])))]]))))]]])]]])]]))))])))))))])])]]))]]))]]))])])]))))]]))])]]])]])]]])))])])]))]]]]]]])])))])]]]]))])]]]]])]]]))))))))]]]]]]]]]))]]))]]]]]])])])]))])))))))])]])])]])])))]])]])])])))]))]]]]]]))]]))]))]))))]])])]))))))])])]])]))]]])]]))]])))]]]])])]]))])))))]])]))]))))))))]]]]]]]))]]]]])]))]]]])]]))]))]]])]])]))))]])]]))])]])])])])]))]))]])))])])))])))])))]]]])))))])])))]))]]]]))]]))))))]])]]]]))))]]])])])])])])]))])))]]]))]]]))))))]])]))]]])))))])]]])]]))]])]]))])]])]]))]))])))]]])]]]]))]]])))))))]))]])])]]]])]]))))]))]))))])])]))))]))]))])]]]])))])])]])]]]))))]))))))]]))))]]]]]]]]])]]]]))]]]))]))]))]]]]])))]]]])]])]]])]]))])]))]]]))])]))))]])])]]]]]]]]])]))]]])))])))))))]])]]]))))]))]))])])]])]])])))]]]]))))))))])]]])]]))]])))]]])]]))]]]]))]]]])))))])])]))]))])]]])))))))])])]]])))))]]]))])]]]])]))]]))])))])]))))])]])])))]])])]]))]])])]))])]])))]))])]]))]))])])])))]))]])]]))]]]))))])])]])]])]])]]])))))])]]))]]])]]))))]]])])]))]]]))]))))]))])]]]]])]])])))]])]])]]))]])]))]]]])]]])]])))])]]))])))))]]])))])]])]]])]])]]]]))]]]))])]]]))])]))))]))]))))]])))]])])])]])])))])])]]])))])])]]])]]]]])]])])))]]]))]))]]]])]])))]]]))]])])]]]]))]))])]]]]])]]))))]])])])]]))))]))])]]))]))])]))]])])))]]]]]))))])]])]]]])))]]]])]])))]]]]]))])])])]])]]))]]]))]])])))]]])])]]))])])]]]))))]]])))]]]]]))]]]])])]])]))))]])])]]]]))])])]])]]]))])]))])])))))]))])]])]))))]]]]))]])]]))])])))]]])]]]])]))])])])])]]])]]])]))])))]))])))))]]]])]]]]])))]])]])))]])]]]]]))))]))]])])]]]))])]))]])]])]])])))))]]]))])]])]))])))])])])))]]]]))]])]]))]]])]))])]]]]))]]]]))]]]]])])])])]))]]]]]])]))))]])])])]]])])]]))]))]))]))]]]]]])))])]))]]]))))]]]))])])]]]])])]))])])]])]]])]])]])]]]]))]))]]]]]]])))]))]]]))]]]]])])]]]]]))))))])]]]])])))))]]])]]]))]])])))])])]]]]]])]]]])]))]])))]))]))]])]]])])]]))])])])]]))]]])]]]])])))])]))))])]]))])]]))))]])])]]])]]]])))]]]]]]]]]))])))]))]))])]]]])]))])]))])])))))])]]]])))))])))]])))]]])]]))]]))))))]]])]])]]]])))]]]])]))))))]]))]]]]]]]))]]]])])])]]))])]))])]]]))))]]]]])])]))]]))])]]]]))))))))))))]])])))]]])])))]])]])]]))]]])))))]]))])]]))])))]])]]])])]]))]))])))))]])))))]]]]])]])]))]]])]]])]]]))]]])])))]))))]]]]]))]]))])])]))]])])]))]))])]]]])))]])]))])))]]]]]]])])])))]]]]))])))))]]))])])))]]]])))])]]]]]]]]]]]))])]]]]]]])])]]]))])])))]]]))))])])]))]))))]]))])])]))]))]))])]))])]))))]]))])]))]])]]]))))])])))]))])])])))])])]])))]]])]]))])])]))]]))])]))]))])))))])))])))))]))]]])])])]]))]]))))))]]))))))]))))]])]])]])])))]))]]]])]]])))]))]])]]])])])]]])))]))]]])])]])))))]]))]]])])])]]]])]))])))]]])])]]])]]]))])])))]])])]])]]]]]]))]]]]])])]]]]])]])]]])))))]])])]]]))]))])]]]]))))]]]])])]))))]))))]]))))))))]]))))))]))])))))))))]])]]])]])))])]]))]])]])])))]))]])]]]]]])]])])]])])]]])])]])]]]]))))])]]))])]]]))])]]])]))]]))])))])))]]]]]]]]])]]])])])])])))]]))]))]))])))))])]]]))])))]]])))))]]]))])]]]]))]]]])))))))])]])]])))))]]]]))])]))])))))))])]))))]]])]))]])]])]))])]))]])))])])])])])]]]))]])])])))])]))]]]])])))]]]]))])]])]])])))]))))])]))])]]))]])))))]))]]))]])]]))))])))))))]]])]])])]]]]]]]]]]]))]]]))]]]]))]]]])))])])])]]])])))]]]])))))))))])]))]]]])]))]])]]])))]]])]])))])))]))]])))))]))]]))]])]))])]])))))])))])])]]])])]]]]]))]))]]]]))))]]]]]]]))]]])))])]]]]]]]]]]]]))]))))))]))])))))])])]]]))])]]))])])])]]))]]))]]]))]))]]]]]])]]])]]))])]]]))))))])))]]]]]]]))])]]])]]])]])])])))]))]]])]])])]])]))]])]]])]))]])]))]]]]]]]))]]]]))])]])]])))]])))])]])]])))]]]]])]]])]))]))]]]])]])]]]])]))])]]])))]))]]]]])]))))))))))]))]])])]]]))])]))]]])]))))]])))])]])]]]])])]]))]])))])]]]))]))))])))))))]]))])]]]]])]))]]]]])])))]]]]))))]]))]]]))]])]])]]]))]]]]]]])]]))])])]])]]])]))]])]])]]]]]]))))])))))))]))])))]))))])]]])])]))]]))]]]])])])])))]))))])))))]]]]]]]]]]]]]]))))])]]]))]))])]]]]]))])])])))])]]]])])))])))]])])))])]]]])]]]]]]))]])])))]])))])]]]))))]])))])])]))]]]])]]))]))])]]))))])])]])]]))]])))]]]))])])))])))]])])))])])])))]])))]]]]])])]))])]]]]]]))])]]])]]]]))])))])]))])]))]])])]]))))])))]]]]))))]])])])]])]]))))])))]))]])))]]))])]])])])))]]])])]))])))]]))])]]])))]))]]))))])]]))])))))])]))))))))]))]))])])])))]))))]]])]]]]])]])]]]])])]]])])))]])])]))]))]))]])]]])))))))))))])]])]])]])])])]]])])))]])])]])]])))]]]]])])))]])]])))]))))))))))])]]]]]])))]]))]))]])]])]))))))]]]))]))])]]]])))))))]))]])]]))))])]]]))])]]))]]]]))])))))))]))])))]])))])))]))))])))))])]]])))])]])))]]])))]]))]])]])]))])]]]])]])])))))))))])]])]])]]]])])]]))]]]])]))]))]]])))]]))))))]]]]]))])]))]]]]]]]])])]))])]])])])))])])))]]]]))))]))))])]])]))]]]))])])]])))))))))]]))))))))]]))))])]]]])))]))]])]]]))))])))]]]])]]))])]))]]]]]])]])])]]])])]]]]]))]))]])))))))]]]]])]))])])]]))])))))])])]]]))))])])])])])]))]]))))])))]]]])]]]]])]]]]])])))])]))))]))]]])]]])]))])]]]))]]]))]]])])]]])))]]])]])))]])]))))))))])])]])))))]]]]])])))])]]))))]])]))]]]))])])]]])])]])]])]]))])))]]]]]]])]])]])]]))]))]])))])]])]]])))])])]]))]]]]))])])])])]]]))]))))]]]]]]))]])))))]))]]])])]])]]]]])))]))]))]]))]))))])])]))))])]))))])]])]]]))]]))]]])]]])]]]]])]]]])]]])])]))])))))])])))]]]]]]])])))]])))])]])])]))]]))]))])])])]]]])]))])]))]]])]))]]))))])]]])]))])]))]]])])])])])))))]]])))))])))]]))]]))))])))]))]]])))))])]]))]))]]])])))))))))]])]]])]]]]]])])))]]]])))]])]]))))))]))]]]))))]]])]]])]]))))]]])])]])))])])))])])))]]])]])))]))]]]]])]]))))))]]))]]))]]]]]]]]]))])))])))])]])]]))))))]]]]]])])])]]))]])))]]]]])))))]])])]])]]]]]]]]))]]])]]]])]]]]]]])))]))]])))]))]])))]))])))]]]]))]])])))))]))]])]]))]]))]))]]))))]]])))]])]]]))]]))))]]))])]]])]]]))))]])])])]]])])])]))])))))))]])]]]])])]])))]]]])]]]))]])))]]])))))]]]]))]]))])]]])]]))])])]])]]]])])]]]]])]]])]])])])]]))]]))])]]])])])]]])]))]))))]]])])])]))]])))]]])]]]]]]])]))]]]])))]])])]]])]))]]]))])]))])])]]))]]]]])]]]]])])]])))]))])]]]]]]))]]]]]])))])])]])])]))]]))]]]]])]]]]])))]]))]])])]))))))]]]])])))]])])]])]]])))))]]])]]))]])]))))]]]])))])))]])]]]]))])))]]))])]))])])]))]]]]]))]))])]]))]])))]))]]]]))))))))]])]]]))]))]]]])))])])))))])])))])]]))]]))])]))])])]]])])]]]])])]]]]))))]]])]]]])])))]]]))])]]))))])))))]])]]]]]]]])))))))))]])))))])])]))]))]]))]])))]]])])]]))]]]]]))))))))])))]))])))]]])])]))))]]])]]]]]]]]]]]))]]]]])])))])])])]]]]]]]])))]])]])]]])]))))]])))))))))))))))]]]))]])]))]]])])]]])]]))))])]))))])])]])]]]]])]])]))]))]]))]]))]])]))]))])]]]])])))]))])]])))]])]]])]]]]]])))])])])]]))))]]]))))]]]]]))]])]]])]]]]])]]))))]]]]])))])))])]]]))]])))]))]])]])])]]]))])))])]])])])))]])]]]))]]))]])]])))))]]]]])]]]]]]]]))])])]]))]]]])]])])]])))))])]]])])])])]]])]]])]]]])])])])]])]]]]])]])])))])]]))]])])]]]]]]]]])])])]]])))])]]])]]]]])]]])]]))]))])))]]))]])]]]))]])))))))]])]]]))]))]))]])]])])]]))))]]))))))])]]]))]]])]]]]]]]))])))])]]]]])]]]])]]])]]])]])]]])])])))]))])]]])]])]]))]])])]]])]])]])))]]]])]))]))]])]]]]]])])])]))]]]]))])])))]])])]]))))))]]]]])))]])]])))]])]))]))))])]]]])])]]]))]))))])))]))))]]]))))])]]]]]])))]])))]]]])))])])])]]]]]]]]])]))])))])]])]))])]])]]])))]]]]])))])])]]]])))])]]]))]]))))]]]]])])]])]]])]]])))))]])]]]))]))]]])))]])]])))]]])])]])))))))]))))]]])]])))])])]))))]])]])]])))))]))))))))))])])]]]])])]]]]])])])))))]])])])])])]]))))))]]))]))]]]))))]])])])]]))))])])]]]])]])))])]]])))]]])])))]])]))]]])))]])]))]])]))]]))]))]]]]))]))]]))])])])]]])]])))])]))]])]))]]]))]])]]])]]]])]]])]])])]))]])]))]))]]]))]]])]]))])))))]]]])]])]]))]))]))])]]]))])))])))]]))]])))))]))])))]]])))))]]))])]]]])])))))]])]]]])]]])]))]))))]]]]))]]]))])])]]]]])])]])]))]))])]))])]]])]]]))]))]]]))]]])])])))]]]))))]]]]]))])))))])])]])))]])]]))]]])]]))])])]]])]))]))]]])))])))])]])]))])]]))]])))))]]]]))))])))])]])])]]])])]]]]))]])])]])]])))]))])]]]]])))]]))]]]]]])]))))]]])]])]])))]])])))]))]]))]]))]]]))]])])])]])]])])))))])]]))]])]]])])]]]])]]]))]]]]]))])]]]))])]]])]))])]]]])]])]))])])))))))])]])]])])]]])])))))])))]]])))))]])]]]]]))]]]]))])))))])])])]])))]))))]]]))]])))])]]]))))])]])]]]))]])]])))]]))]]]]))])]]])]]]])]]]]))])]])])))])]]))])])))))]]]])]))))]))]]]]]]))]]))]]]))]])])])]]))]]))]]])]]]))]]]]])))))])]))]))])])]))]]])))))]])))]])))]))]]])]]]]))))))]))))))]))]])]]]])))])])))]))]]])]])]]]])])]]]))]])]])])]]]]]]))]))]]])]]])]))])])))])]))]]]]))]]]]))]))])))])]]])])]]]])])]))))))]]]))))])])))]])]))])))]])]]]))]))]])]]]]))])]])])]])))]]]]]]]]]]]])))])]])]))))))))]]]]]))])))))])))])))))))])])])]]])]])]))])]))]]]]])])])]]])))]]]]])]])]))]]]]]]])])])])]))))])]))))))])]]))])])]))]]]]))]]])))]])])]))]]])))]))])))])]]))])))]])]])]])]]))]))]))])))))]]]]]]))]]]))])))]))])]])))))))))]]))])))]]])))]]]))]]]]]])]))))]))]]]])]])])])])])]))])]]]))])])]])])))]])))))])))))]]]]])]))]]))]))))]))]])]]))]))])))]]]))])]))]]]]])]]))])]))]]])]]]]))])]])))])))]]))))))))])]]]))]))]]]))]]))]]]]])]]])))]])])]))]]]])])])])]]]))])]]])]]])]]))]])))]]]]]]]]])]]))])))]))))])])))))]))])]]])]))]))))]]]]))]])])]))))]]))])]]))]]])))]]))]]]))))]]]]]])))]]])))])))]]])]]])]]])])]])))]]])])]])]])]))])])]))))])])])]]]]]])]))))])]]]]])))))]]])]))]]))]])))]]])]]))]])]]])))))])]]])))]]]))]]]))))])])))))))])])))))]])]]])]]]]]))])]]]]]))]]])])))]))])]]])])]])))])])]]])))]))))))]])]])])]]])])))]]))))])]])])]])]]]]]]])]]])]])))]))])]))))]])))))]]]]))]]))])]))))]])])))))))]]]]]]])])]))]]]))]]]]])]]]])])]])]))]]]]]])]))])))))])])]]])]))]]))])]])))))]]))]]])]])]])]]]]]]]))))]])]))]])]))]])))])))]]]])))]))]]]]]])))))))))])]))]))])]))]]))))))))])]]]])])]])))))])]))]]]]])]]]]))))]]]])))])]]]]]])]))])]]]))))]])]]])])))]))]])])]]]]]]))))]])]]]]]))))])]]]]]))]]]))]))]]]]]))]))))]]])]])]])])]))))])])]]]]])]]]]]))]]]]]]])))]]]]])]])])]]])]))]]])))]))]]]))))]]))]]])]]]]])])]]]))])]])]))])])])])]])]]]]])]]))]]])))]))]]]]])])))])]]))))])])]]]))))])))]])])]])]]]))]]))])))]]]))])])]]]])]))]]))])])))]])]))))])]])]]])]]]]))])])])])])]]]]])])]]))))])])]]]]))))])]])]])]])))])])])])]])]]))]]]])])]]))]]]]))])]]])])]))])]]]))]]])]]]])])])))])))]]]])]))))])))]])))]]])]]]])])]]])))]))])))]))))]))]))]])])]])))))]])]))]])]]]]))))]))))])])])))]])))]]]]]]])]])])])]]])]])])])]]])))]])])]]))]]]]]))]]])))]]])]))]))))]]]))]]))))]))))]])]))]]))))])]]]]])]])]))))]])]]]])))]]])])])]]])]]])))))))])]]]]])]]]]])]]]))]]]]]]]))])))]]]])))]]]))]))]]]))]]]]]]]))])]])))))))]))]))))]]))])))]])])])]))))]]))])))]])])]]]))]])])]))))]]]]))]])]]])]]])])))])])))]]]]]])])]])])))]))]])]]]]))]))])]]])))))))]]])]))]))]]))]])]))]))])])))]]]]]]))]])]]]]))))]]])))])]]])]]))])])]]))))])])]]))])])))]]]]]]]))))])))]]])))]))]]))))])]])]))))]]))]))])]]]]]]]))]]])]))]]))]]))])])]]])]))]])))]])])]]))]]))]]))]]])))])]))]))))))]]])]])]])]))]]]))]]))]]]])))])]])]))]))))]]))]]))])]])))]))]]])]]))])]))])]]]])])])]))]]]])]))])]]]]]])]]]))])]))]]]])]]))])]))]]])]))]])])])])]])))])])))])]))])]]))])])])]]]))])))]))))]])))))]]])]])]))))))]))]))])]])]]))])))]))]))))))]])]))))])))])))])]]])]])]])))]]]]])]]]))]))]))))]]]]])))])]])]))])]]]])]]]]))]]))]]]])]]]]]]])]]]]]))))]])])]]]]))]])]]]])]])])]])]]]]])))])]))))]]])]]))]))]))))))]]]])]])))]]]))]])])])))]]))]]]))]]))])))]))))]]]))])]]]]])]]])))])]))])])]))))))])]))])]])]]]])])))])))])))]]]]))]])))]]))]])]))])]]])))]]]]]))]))))])]]]])]]])])]])]))]]]])))])]]]])])))])]))]))]]))]]]))))]])]))]])]]])]]])))]])])]])]]])]))]]))])]))])])]])])])])]]])]])]]])])))])])]])])]))))))]]]]]])])))]]))))]]))))]]]])))])))])]))]])))]]]))))))])]))])]]))])]]]]]]])))))))]]])])]))])))]])])))]))]]))))])])])))])]))]]])]])]]]])]))]])])]]])]]]]]])]]])))]])])])])])])]]]))])])])))]])]]]])])))))))])))]]])))]]]])])]]]))))]]]))])))))]]]])]]])])))]]]]])])]]]]]]]]]]]])]))]))]])]]])]])]]])]])]])]])]])])]]]))))]]]))))]]])))])]]]]))))])])]]]]))]))]]]]))])]))]]]))]])))]))]]))))]]]]))])]]]]))]))])]])))]])]]]))]))])])])])]]])))]]]]]]])])]]))))]])]])))]])])]]]))]]))]])])]]]]]]]])))]))]])])))))))]]]])]])])))]))]])))))]]]]]])]])))))))]]]))]]))))))]])]))]]))]]]]]))))]]])])]])])))]]]]]]]])]]]]]]]])))])])])))))]]]))))]])))))])]]]])]]))]]))]])]))]]))]))]]))))]]))])]]]]])]))]]))]]]]]]]]]])])))]])])]]]]])))]))]]))]])]])]])])])]))))]]))])))))]))]])))))]])]]])]))]]])]])])]))))]]))))])]])]))))])))))))]])]]]])]]]])]]]]]]]]]]]]])]]]]]]))]]))]])])))]]))]]])])]])]]]])]))))))]]]])])])])]])]]]]))]]))]))))])])]]]))))])]]]]))]]]))])]))]])]])])]])])))]))]]))])])])))]])]))]])]))]))]]])]]])])]])])]]])]))]])]))))])])]]]])]))]]]))])))))))])]))]]]]))))]]))))])))])]])))]]])]]]))])))]]]))]]]]]]]]]))])]))))]])])]]])])]])])])]))]))))))))]])))]))]]]]])])))))])))))]))))]]))])]])))]])])])))]))]]]]))))))]))]])])))]])])))]))]]]))))]))]))))]])))])))))]]]))])]]]]]]]))]))))]]))))])])))]]]))]])]))]]])))])]])])]])))))]]))]))]])))])])))])))])))])]))]))])))]]]))))))]]))])])])])])))]]]])])))]])]])])))]])]]])))]]])]]))] [][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][] ()[]()[[]]()(()[[([][])][]()][][]([]()(()((([]([])()())([][()])([[][(()[])()()]][](()))[(()([()]))()]())(())))([([])[][]]()[])))()([])[]()[([(([()]))()])[(([[]])[[][(([][([()[][[()[]]]])])[[()][][]][])]])]]()([[]()()]()([])[()()()()()])[][()]([[][]])()[[][]]()[](()[]())((()))[]([])[]()(())()(([[]()]))()[()][][()()[[()]]][]()(((())))(([][][()[[][[]([()]()())[]][(())]()()[[]((()(()[])[]((()()()([[]])[[[()][()]]][][])[]))[[]]()())]](()[][()(()([][]))()[]]([](()()())[[][()]((((()[][]([][[]()]())((([][((()[])[])][]))))()))([[[()()]]]([][])()))()[]])()())]))[[](([()()]([](([[][()([]()())[](((((()()[[][[(([[]][])([])[](()(()()[][])[[]()[[]]])[][]()[]())]]]))[[](((([]))))]())[][()[[][]()[[]()]()[]()][](([[]]))]((([([()[](()[[]()()])[()]])([][[[[][[]][]()]][][([])][]])]([])(([])))(([])))[](([][]))())))[]([[((([([[[][()()]()([()[()([()(()[][][[()]])[[([][()])][()][][[([]())[[[]([])[]](((([[]])(()))))]]([])()[][()()]]]])[()[()][][][[()(([]([])[[((([][[][]])()[]([])())[(((()[[]()])([[]([])]))((())))[]])]](())))]]]()[[]]][()[()]][][]]([[[]([[([][]([[[]]][[]](([()[[([][][()]((())))]()][[]()()](()()[])][[]]))[[[()]()()()(([](([]([]()[])))[()][]([(())[(([[]]))[]]])[[]][])((())[()](()[[[()][()[]]][((()))[]][[]][[]][[()]()]]))[[]])()(()[()])]])())]])()]((()[[]]))[(()([]))([][])]]))([[]])][()[]]])([[][[][()][]()[]([])[(()[()()[[()(([])([]))[]]]])][[()([])[[]]]][((([][[[([])]][([][]()[()[[]]])()][]][([[]([[()[[[][]()]]()]((()[])[]((()())([()[]])(()[])))[[]([]()[][])]](()))])()]))[[]((()))])()()]()[[[[]]]]()]][()])[]])[[]][()][][[(()[]((())()()))]](()[])())[()])]][()])]])[[(([[]][[]]((([][()()([()][])]()[()(())([]()[][[][]][(())])][[]([()()()[][]])][]()[[()]]([](([[]]()[(([][[()()]()]))()])()[()][](()[()()][](()[]())((()([[]()])()((())()))[]([()()()]))([])))([]()[()]())[(()([()([(()([()]))(([[()]()]))()][()])]([]([])[])()))](([]))[[((())[[]]()([][((()[[[][]]]([])(())[([]((((()()())))()([[[]]])))](()(([]()()[]())[()([])]([(())[[]]][()][[()()]][])())[()([()])()]())()))([([])])[[]([()](())([][()[([[()([[([]([[]])(()))((()([])[[[[[([([])()([])(([(())][]))[[][]]()[]()]()[]()())[[([(([][[]]([])())()[[[[([([[]([([])[][[()]]]([])(((())[()([])[()]])())[()]()())[]][])[]])((()[]))]]][]()]()[](()))(())])[[]][]][()((())[])]]]][]([[]()()])[[]](())()()][]]([])]))]][[][]()])](([()]))][[][]](())(()))]][][[([(([]([[][()][][(())()[[]][[[(([[]])[])[][][](()[[[()[]][]()()([()])][[[]([[([](((([]())[[][[((()()[])[[()][]])()]]([])][]))[()[()[]](())][()()(())[]()[]])())]])()[()((()([])[([])])([]))]()[]]]()()[(((()[])()([(())]((())([]([()()[][]]()[]())()[()()(()[[]()]())][]))())[]()))]()()])]][]][]]()]())([])))[[[[]]]][([([])((([])([(()(())())][[][]([]())[]])))()]([]())[])][]()])](([][][()[[[[[[[]][](([[([[[[]]()]])[[](()[[]](([[]](([])))))]([]([]))[[([])]]]()((()())()())[]]))(())]][[][]]](([]))()[()[[]]()]][](())([()[]])[[[[][[([[[([])((([[]()()]))([([])]((([()(())][]))[][()]((([[]][([]())([]([])[][[[([][[()[]]]()[]())]]])])))(([[][][([[][]()])]][]()[[()[((([])))](()())[][]][]])))))]]])][((()))[()]]()[[[]()[][]]((([()])()(())([]([])))[])]]][()()[()(((([()()]()[[](()(([][][])[][[[][][[()(([()](()())[]([][[[][][[((()))[][]()]()]]])))()()(([()][]))](([([])]))[[]([](([])))](()((([[(([()][([[][]](()))()](([[]]()([((()()[]()))(()[()]([[(()()(([[()]]))[()])][[[]]([])[[]([()])[][][]][[]][[[[]([])([][()])]()]]][[]]])[[[]][]()][][(([]))]()[()])(()[])][][]))((([()(())]([[[[][][[]()[]]]](())](()(()([][[]]))())([[(([]()))()]([()])[]()]))([([()[[([])((()(()(()[[][]])((())))(([])(([]()((()))))([[]](()[([()()([[()[]]])])])[[][[([[][()(()())]](([(())])))[][(([[()[][()([])[]([[()(()([]()))([[]]())]()])]]])[])][[]([[](([()])(()))[[][]]]()[])()()[]]()]][]])(()()[])[]))()[]())[][][][[][]()([])]](()())]])(()[[][][[]()]])][[[]](())]())[([][])])[])))[()])[][[[([()])[]][][]()]](([[]])))()]][[([]()[[[]]])](())()()][])[[()]])())[(())]())]()][[[]]]]))]((()[])))))[[]])[()][()()]()[[([(())]())]()]([])[()[[]]([[]][])][()[[][()][]][[]][()[][]]]]]]([[()()([]())[]]])]]]()[()()]))][()[]()([])()]()[()[()]])[])(())]()](()()[[[]]])))(((((((()(()[(()[]()[])])(()[[]])[][()()][[]([](([[]([([[()([][[[][()]()[][][([[[][[([][])]]]](()[]()))][[]()]]])][()[]]()()(()[[[]]([][][][])((()))()][][([][])([])()]()[[]]((()()([][]))[[()]][[()][]]()))()([()()])][])[()]]()[[]])]))([]))([][])])[][()][[]]())[[]]))()()))(())[(((([(())])())[])[(([][[[([])()()[]([]()[][[[[][][[][[]]]]][]])](())[][[]]]])()(([[][]][])())()[[()[[]()]][[[([[][(([]((([](()[])[](()))()[()()[]][]))()())([]()()[()[[][()([])]([[[[][]([]()[([[][]]())(([])[][[]])()([[[]][][[]]][(())[][](())][][][])][])(())([][][])][]][[][][[([[]([][[][]])([([](((()[]()[])())[()[([(((((()))[])))]([[][][]]())[](([[[[][[[()([(())][[]]())]()(([]))][[][]]]][]]](()()[[]()()()()()][][][]()))))(()()[()]()(()))([])[]]([][(()())])]))])])()][(([[()()]([]()[])]([[][]][[][[[](()(((())())[][[]]()[]))[[]()([][])]]]()]))()[()]((())()[]()))[[]]][]]()][()(())]]([()])(((()[(()([])[][](())[[[([((([((()))()()[]])))()()()[][]](()[][(())][]))]][]])[[[][][](()[][[]]())]]()]()[])))())]()[()][[]][[()]][]][])()(()([])[]))[(([]))]([])]])[(()())]()[]][][]]([[]])()]()]())])[][()][]()[()()[]]()()[()()[]]])]])))[])(()[()]()[]))([()()][][([]()[[]])()(())]))][]((()))]([[[[]]]])([]([[]]))(([])))[]())())(()))][][]()[([()]([]))][]([(()[[][]])])([]([](()()()())))()[][()]()[()]([])()()[[([[([[]][()[][][][()[][(()[[[][]]([[]]())][])[()]]()][]])][]()][[()([]([[[][]()()((()())[])[[]]()(([](([()]))))]])[()([])][])[[]([])]][]])[([()[()][()][]])](()[][([[][[][()]]](([])(()[])()))])]()][[[]()[[]]]()][(([[[[[]()[(())()]][]]][]()]))][[]]([][][])[([[][[([][()([])()])][()()()]]([][[[()]][]]()(([[]])[[[[()()[]][([[[[([()[()[[]][]()[[()]]()]()](()([(())[]])))[]]]]])]][[()]][[][][[]][]]]()](()[]))[[]][([]())[]([])()])])()]()[][[()[[()]]([])]([][[()[[]][()[][[]][()((([()[[][[]]][]()][[]]))[](()[]))()[]][][]]]()][])[]](()([][][]([[]]([][[]][])()))([(())][])[][([([])])]()[])([])[[][([])][[()][(())]]]((([[]()])(()(())))[])[[[][()]]]()()[]()[(((()[()][]([](()))([[]()][])([]([]([()[()[(())(()[](()[[][]][])())](([](([[(((())))]()](()()[])(()[([][]([][[]([[][[[[()]][([][](()))()]][[(([()])[])()((())())[]]()[]]]][[([()[(()[][()[]][])[[]]]][][])[[[()][]]][]]])]([](()))))])[([])]((()[([[][][[](()()[()])(([[]()]))([])]])]()([][]())()))([[[[[(([][][[]([])()]((([])())(()((([()()][]))())())[[[](([(([()(([[([][])[]][]]))]())()())[]]()()()[[([])[]]]()))[[]]()]])(((([])[()]()[[[[(((())))]]([()([])[]][[]])]((()[][(([[(([]))]][]())[][()()(()[][](()[]()))([](()[()])[]((())))][][([]([[]]()))])][([[([[[][[[(())]]()[[[]]([(([((()))][](()))())(()(())[])([])])()[](([()])[]([[(()(((([[()]]))[([])(())][[([[][()[(())]]()((())[])(())[](([()([([[([[[((()()()())[()[]]())()]()()()((([([])]))([][])[[]]()[()(([((()()()))(([([]())]())(())[]())]([])[]))()]())((([]()()[]())(([[][[()([]((((((())()))[]()[([(())])[][(())()][([][][]([]))([])()]((((([([(()[[]]()[[()]([])][[]][()([])((())[(()[](([()([])])))[(()([()[([[[((())()(([[[()]][()]][[]()])[])[()(()((([][[]]()[])((())[([])()][()](()[[]()()([(())([[]](([[]((()()[[[[]()[()[[]]][()]]]]())()[])[](())]))(((((())([(([][])([]([()[()((()(([(()(())[()[]][])[[()]()[[[[[]]()][]]((([]())))()][][(())]([])()[]()(())[]]]))[]()[[]][[]][]))[]()()()]]))([]))])(())))[])()())[][]([[]([]([[(([[][]])[[[[[][]](())][]]()])]()])[]()[()]()[([([[]])]()[([[]])][]())])[[]]]([]))()(([[()[]][([(([[]()]()))[[]]]()[[(())]([[]()]([([]())[[]([([()[]()[]])[]])]][[[][](()()[([][][][(()()())])])]])(([(()(())()())])(((()((([[([(([([([[]][(([[]()[]]))])][(())()]()[]())()][])[()[((()()))]])[]])]])[[]([()])](()[])[()]))))(()))))()((([()[([])()[([])]]]()))[])])()]])))[]([()]()([([[(())[[]([[[]]][[]][(())])]()]()])([(([])([[]][[]([()[][]()][])](()))[[[[([((([[]](())()))()[()])])]]](())[]])([()]())][])]()[((()()()[([([][][]()[]([[[([])[(([])[()()()()[](()())[][[]()]])[][[]][([](()(()))[][()()]()[])[]]]]]])())][[][]()([[]][()[[()]][][([](()))[[](()[]()[][]())]()]]()()([([()])][()()]))()])])()[()])()]))()[]]())([[]])([[]])])()))()))][([()[[][][][]([][][][]([][]))(([[[(()[[[[()([]([]))[(([()]()[])[][[]][])]]]([])]]([]))][([][])()]()[([][[]][()[]])()()][]]])[]([]()()[[(([])[]()())]])([([](()()))(([][[[()()][]]]))[()[]()()()[][]][]()]))][]])][[]])]]][]([[[]((((([[[([])]]][(()[])[([](()()[])[]())][]([])]))))[(((()[(([[]]((()([[]()[([()](([])())[([[[]]]([()]([]())))][]([((()(((()([[[[()()]]()][]]()[]))())([](([]([][])[()([])])()[])([[[(()([])[[]([])(())()])]][]][[([()[()(([[]([])][])[]([()((())())()[()([]())]]([]))())[]]((()[[[]]][][[]])())[[]]])]()]([()[]][])([])()(()())(([[]])[]()[][]))[[][(([[]]))()]][([][()(())])[][][([][][])]][()(([])(()[]))][([[]])[([[()[[()]]()()][()][([])()[()[[[]()][(([[]]()[]([])))[]]]()[]][([])](()(()([(()())][]()())))()[([])]]()])[()(()())()[[]](()[][[]]())][[[]]]][][]([[()](((([](([](([]))[()()]()))))()[]))()([])[[((((([]())))))[[()][[]][[]][()]()]]()]])[]]([][])[]))())[]()[[(([[][[()[]]((([[([[([([[]])[[]()]][[[[[]([()]((()()[[]]))()[])([([])])]]]([[(([[[[]]]]))()(())((([()[()][]])))()[](()((()([]()[][([])[][]])[[]])))([[[()[()]]][[((()()))(([][]()()))]]()([()[]([[()]]()[][])])][]())()[]]][[](())()[([]())[([[[[()(([]))[(()(([][]([])(())([][])))([](([])())[]))]()[]][[](())[[]]][]]][[]][]])]()]()(()(([([[[]]])()[]])()[((())[])[([[][]])]])()([]([[([[[()]][[(([][][])(()()()))[[]]([[[][]]][][](()([])))]]()(()()[][()[]][])]())]()[](([]))])(()[]))((()[()([][()[]()[[[]()]]](())(([][]()[[[[]][()[[]()()[][](())]][]]([()[[[[]]()()([[]])]]](()))]()))()[[]()])])[][[([]()[([([]([()()][()][]))][[]][([])][])[(()())]]([])())()]]()))]())]()[])][][[]()(([[]()](()()))(()([])))(([[]([([])[[[]][()[[([][])[]]()]([([()[([[][[[]]]([[[]][](([[[([[[][[][][([()])(()([(())]))[[()][(())]]((()([]()([]))([[](())]))[([[][]][](([[][[([()()[()]([([()])]([[]]))()])]((([])[[[]]]()([()[][][([])[][]]()[][]][[()[]()()]])))]([[]])][])))[()]])]([])]]()]([])[][][(()([()][([])][()(([([(())[]])([])([[]([[][][([])[()](()(()))]()[][]])])]))]()))[][]([])])()]()]][][()]))(()[][(())[()[()]]()])()[([()](()))[]]][[(([]([])[]()()[]([][()([()[[]]]())]()))()[]()([]))]][(()(()))])()()[][]][])]()])()()])[][]](()()[()[]])[][]]([][[]([(())([([])])])])][])[][]]))[]()]]([[[[]][]][()()]]))][()[]]][][][]))(([])[]((()())([]()[][[]]))[][]([[[]][]()[(())[]]])()))()]]))]])]))]([[[][([])]]()[]([(())[][]])])([])([(())([[()[]]])]()[])]))[[]][]([([((()))])([])](([]))()[]()))[][]()[[[][](()()[()([[]][][()([[()]([][()])][([])]()(()[][[[([])]]]()[][]()))(([]))()])[]([][(())[][[]()(([()[()][][][]][()])[[()][]](()))[][][]([()][([[()]])()[]])]][()][()()[]([[]])[[]]])][][([[]])]()[])]]))])[([](([()[[()]]]))((()[()[([])]])(())))()()[((()([([])]([][]))))]])())]())]]))][()]]()))][](())[[][[]]]]())](([])()[[()()]][])[])][[[[][]()][[]][([[[[([[]]())](()[[()]()()[([][[][]])]([[][[[]]]()])(())]([([([[()[[]][][]]()])][])[]]))]]]())]()](())])])[]))[][()()[()[]]((([()()]([][[]][()[][[()[()]](([]))[[][((()))()[[]][()]]](()[[()]])[[]]]][[()]][][[]](()))[[]])))[[]]][]()))])()))()()(()()))([])][]()]])))([((()[[([()()])[([([])()[]]()(())[[()]([])]()()()[])([])][(())]]]))()]))]()])][]])])](()([][][])(())))())]([]))(([([[]])])[])[][][()]((())([([[()[()]()]]([][([()])])[]((([[]()[][]])[]))([[[()[]][[]()]([[]])[[([])()[]([])]]](())])()[])])[[][()]]()[[][(())[][(())]]](())[])]]))((([][([()])])([[()[[]]]])))[()]()())[]]()](())()()[[]]([([[()]])([()(())()])((([][([[[(((()[])()()))]([([([][[[(()([[[()]((((([([][[][]])])[]((()[]([]))))([()([()()()]())[][]()[()[(([]()()[[]]())[])[([([])()]((())))(()([[]][[]([[][]()[]][()()[][[]]()](())([()[()()()((()))]][]))([])()([[()]])])((((())[()][]))))()[[[](()[]([([][[[]][]()])[][]]())([()(()())]()[([][[][]()[(())[]]])[()()]]))]][]](([([[([[()[]][([[]])[[[][]]]]()()][[[][]][()([[([])]([]((()()[([[[([[]()][][][])]()]][[]])]([()[()][][(())()()[()]]()][]))(([])((()(()[[[(([[()([])[((([(()[([][]()[][()]())()]()(((())([][[[][[]]]])[[[[]]([])]([[]])(()[[[][]]]()()())])([()])))])(()))[()[]][])((([[]([[((()())[()([[[]][[[]]][[[(()(()))]]]][])[[()][((([])[()[]][(())([](()((([[[(([[]([]()[])()[][[]]()][([])[]([]())()])(()()[()([])[]()][])())[[]](()[[[][]]([])][]()[])][](()()[]())(())()](((([[]([([]()[][])(([][[[]([])[[]]](([[](()(())[][]([[([]()[()]()(([])(())()))]()()[()([()])[]]()]))][])[])([[]][][])](()([]()([[[][]([])([[][]([](())(())[]([][(())][])[]([([[][([])]()([([][])])[[][[(([[](()[((((()()))[([((()))()])][][][][[(())[[()]()()[]]]])[[()[()[]][]](()()(([])[])[])([])])][([][][][[][()[][]]])])]))]][][(()(())([][]))([](()[[]][(([()](())([])))[([])]([(()()[[]]())(())()()([][[][([()()[(()[])]])[()[()(()()[])]]]()]())[][([])][]])([[[][[][]][[][()[()()[]]]([[[[][]([])]()][[[]]][][[](([][[]])[[()]][[]]([((([([])()][]()()[]()())))([][[[][][]]((())[[([[[]()]][[]][]([])[[]][[[](()[]())]][[]][[]][])][]()()])][[()([])]])]))]()((([([][])])()[()((()))()([()[]()])()][]())[()(([])()[])]())])][]]]([[][[]]][]))](())[]))]([]([()]((()))))]])])[])[(()())[]][][](()([[]](()(([])[[]]()))))])][]](([][(()())]))))[[]]()[([[]])[[([[[[]][[[()]]]]])()(()[][[[()]]])][]()]])[](()())[][[(()[][][(([]))]())]]()[])[()]()[[]()([[]])]()([]))])][()])))[][]()[[]([][[(()())]])]())[]][[([[]])]])[]))[[]]()))]([])[(([[[[[]]][[]][[[[[]]]]]()](()()()([[]]([]())))[[[]([[()]])[[][[[[[][([][[]])]()[(([()][(((())))])(())(())((())))[((()[[]])(((()()))))()]]()]][][[]](())][]((([[[][()[]]]])[][]([()([[()]][]())([[([][])([][[[([])(()[[(([()([[][()][[[]()()()[]](())][][]])[(())()]])()[()(([]))]()()())[][()]]][((([][][[]](())([[([])[[([]())[[]]]]](()[])]))[[([])[][]]]))]([()][]())()([()]))]]()])]]([]))]()())))[()(()())](())]]][[()]][]()((([][[([[()]][[[]([][[([][]((([[](()([]([])()[]))()]()[](()))[[[]][][[][]]()([[]][[]])][[]])[][][[](([]()))]))]])][[[[][]()]([([[[[()]]]][])[((((([([])()()[]])[[[]([[]])()()][]]()))[[()[]()]]))]()][])([[([[[((()()[](([]))[]))]][]((()[[()]][][[[]]]))[]][][(()[([[[]()([])([])]](([]([][[(()()[[]][][[]]([])([])())(())]()[[]([][])]()(()[()][([]())[[([])[[]]([[]]()[]()[])]]]())[][()]]))(([()()([][])]))[(())])()[[]])][[]])])(()[[((()([[[]]([][([()([(([[]]([]((()([]))()))[[[][]][[][[](((([()[]])[]()[]))[([[[]()((()))()(())()](())[[[()](())][[]]]])]()([[()][[()[[][][[()[[](([([()[[][]([()])]()])()(())])([])[[()]])]]()(())()[[]()]](())[]([[()()][([][]([]()[][])[([()][])])]])]]][(((([([][[()[[()]]][][[]]])([([[]]([])([]))])([[]])[][]]([()([()()()]([])[[(()(())[])]]())][])[])[[[([(()[][][()])](()))[]]]()((()[]))][]))[[()]])[]()[][[]][()[[]()]([[[[[][([[([]())([()])[[()]((()))[]]]])(([([]((((()))()[[][(()(())[])]])[()]))[(())(())](([[([])]](([[()]]([()]))())[[[[]()[]][[([])[[]]](()())()][([]()[()]())]]()]))([[()]][][][][]())[((())[()[]])]()([([][()]())([[([]([[][()]])([]))]][]([]))]([[[][()]]]))()([][])[]][])[()([[()[[]()]()]])[()]()][])][]]()][]][]()])((((()([])()())))[[([][([[]])(())][][])]]([])[[([([[()()][]][][]()[([])])])[()]]]([]([[[]]]))()[()[]]()([()]()))[][][[([])()[[]()[()]]([[[]]](())([()])([[([][](()[()()(([[((()[[][[[][()]]][]()])()())]][()(())]))([])(((()()())))()][])[]((()))[])]()]())()()())[[()]][]([[[]((()(()[][])()[(([([])]))(([(()(((([(())])))()))])(()))])[([])])[]()()()]][[](())]([[()]()]()()[([(()([()][(())[()]]))[([])[][]]])((([[]])())()()[])[[()()()[]]]]))]][([()])[[]][[()]]]]]][][]))]]])[[()[[()]([[]])]]]()[[](())[[]([(([]))])]])]())])][([])(())[]()[]((()[[]][()()((((())[[(())()[][(())([(()()[])([])]([])[()[()()]])()[]]]((()()()[]()()))[]]))[](()))]))[]])])[][][])([]))][[[([[(([][]()([]()([[]([(([[]((([])())[[]()(([])(([])))](([[[[(([[()][()][](([]))[[(([])[[[((()()[[()()][[]()([](()[](([][]()))[(([[([[()([([])[]()[([]())][[()()]]])[]([([][[[](()[[][(()[(([][[(((()[[[][]]])[[][()[]][][][][()]((()([]([]([][])[[]][]())(([]())[(([()()[[]]])[()()[][()[]()]])])[])[[][]]()()[()()][[]([][[[][[()]][[]]][[[[[[]]]]]]()])])[[]])]))][][]]((())))[()])[][()][][[]]])([])]])[]()()(([()]))](([]))([[](())])([])][[][]])]())()]])]][[]()][]))()()])())]]))[]()[[[][()(())]]()][[]](([[[()[]][][([[]]()()()()()[([])]()[])]]]())[]([()[]][[]])[]([]))]()[]()()()[]][]()])]([])]()()])[])]][][([[()]])]]]()[()])[][])([]([]))([]))](([][][])))[]()[([])][][()][()[[]](([([][()[[]((()[])())([[((([[]](()[()[()[[[(())()][][((()))]]([()(()())])]]()])[][])[]))[]((()())()(()[]))([]()((())(())[]))[]]()[]])]][([])])[]])[[]])]())[]([(())()[]][])])])[[((()))]][])))()]()][()[]()]([]))]][[[[()]][]()([[]][][])([[[][([])[]()]()]])](()[()][])[()]][]](())][])]])]][]]([[][]]))(()[()]()())][]](())([])))([][([()((([[([][[[()[[(()())(()())()[]]()]]]][[]([](()[()[()()]]))[()][]](())[]([()])()[]()[][]([(()[][])()[]()[]][])()()[[]])((()))()]]())([][[(([])([[((([][[[()]][][[()[(())]]]([()()[][[[([[]()]()(())[()[]([])](())[[][]([][])][])[[][]()]()[[([[][]]((([([[](()[])])[(([(([]()))]))[(()[])[]]()][](([[(((([[[]][(([(()())]))]])))[[()[[][][][][][[][(()((()()))[([][][([[]])[]])])([][][][[()]([]()[[[[]]]]([][()]))[()[]]])[]([[]])]]][][([][])()]]])]()]))[[]]][([])]))))]([][])(())(())[]][][][]([])()[([])][()]([])[([([]()())[()()]]([[()[]]]()(()[()][[]])))]]]([]([]()[[]][][[]]())[])]][])([()()((([()]([[[[]]]]([([](())[])][][([]()([]()([])[]))][][()[[[]([[(())]])](([[][(([]))[[]]()]][][][()]()))[]]])()[])[]()([(()()[()](([[]]([])()(()[()([()([])[[]]()[]])()[[]]]()[[[[]()()]]][[]]))[]()[([[]])]))[([])][]]()))))](([]([]([()])()))()[[]()][])[])[][()[(())][[]]]()(()[[][]])]())))][[[]]]([](()[]))][[()()(())]][[](())[[[[[()]]()[()]()[][([[]][()[(()(()()[]))]()])(())](())]][]][[][[][[][[([][((([()])))]())[][[(()()[(()([[()()()][][()()]]))])([])][[()[]]]([()])()][]]]()[]()[([[()()]()])[([[](()[])[[()()[]][]][()[]][()[][()]()(())][][()([])][[]]])]][]]]]]()()))[[[]((()((([()][[]](([[]()])[])((()))()()[(())])[])))()())(())(([()[()](())[][[[[]]][[]]]([[]])()[[()[]]()]]())[[()][[([[[]]])[]()()]]((([][[](()(()))([]()([()]))[()][(([]))([[]])][[[][()(([[]]))][][]([])()]()]()[[[(([])[])[]()][]([()])()]]][()[[]][]])[]))]([][[][]([([()]([]()()[()]([][[(([])[])]()]()))(()))][[][[()[]]()]](())())])())()()][]](([])())]][])[()([([([[(([[][[([](([([[(())][]()])][([][(()([[(()[[]])[]([()(()[[][](([[()()(([[][()([])]]))]])(()))][]()[(()())]([()][[[[[[(()()[(([][[]]()[])[])()[]])]]][]([()[()](())][])(((((()[()])[]())()[])[][])([]))([[[[([]())[()()[[([[[][](([][(())]()[[]]()[]([]())))]](())([[[[[]]([][()[[]]([]())][][])[]][([](([][])[(())][([[()()(()[()[()()[(([[()]])())][][()[]]][]])]([[(([([][(())()[]])()([](()))][]))()]](()))(())()])[]]))]]][]([]))[[()]])]()([])[[[[[()]][]]]][](([][])([[][]]))](()())[()][()]][][]]](([]()())(([(())([])(()(([[]][]())[][]()[[(())()()[[[[(()([])[])]]][]]][[([])[([]()[[]()[()[[]]]][([]())[]()][()][()])]]()()(())]]((())[(()()(((()[()]()[])())))([]())])))])[()()()]([()[]])))[][][][([[]])(())([()]((())())[][]())()([[[[((([]))[()([]())((()[()([()])()[]])([[([])()()([([][])][])()][([])]()]([]))[()])])[(((([(())[[[([]())]](([][])[[](([([])[[][]]][][][[][()((())()[([[([[[[(()(()))[][]()][][[()[]]()([[]]([(())]))(())]]]])[(()[])]][][([([[]])])](())]())()[[[]][][([](([[]()]([][][(())]()[](()[])()()))())([]([[]])))]]()])[[[]]()[]]][[[][([])()]((()[[]])[()(())[()]]([[]]()))]]([])][])[[]])])](([]))()()()][()[]]()[][])(([])))[][]))([([[]()]([][()[][]][[]]))()])()]][[[([()(()())[]])]()][([])([]([(([]())[])]))[([])[][([[([()][[()[]]][])[][]]])]][]()][[[]]]]]]])]()][][()]([(([](([()[[[()]()[]]()]]))())[])])][[()()[()](()())]([()[[[](([][])[])()[[][][]([])][][[()]][][()()]][()()][][]]])][([[]]([]()([])()))])](()((()[][()()[]])[(([[]()([()])(())[]()]))][]))]][])())])[]]()([[[][[([()([(()[])])[]])()()()()(()([()[]((()))[[][()]](())])[][[]]())()]](()(()))()([[([][])]()])[([[]]())]]])][[[][]]](([[]][()]))))])])()()[][][[[]]]()[()][()]))]][([()[]]()())[]]])(()[[()()]][][[]]))()[(())[[([[]([()]([[[]]])[[]]([[()()(([[]](([][[([]()[()()(([])[][[][]])])[[][]][]()]](([[()][[((([])(())[()][])())[][]]](())][]()[(()[]()[([()()]())[[([])][][]]()])][]))[()()()[[]]]()))))[]]][([()[]][()])]([((())[])()([[]]()[([][[[]]][]()()[((([()][]([[(())[]]][[][][]][[([[][()(()[][][[][[]]]([][()()[[][[]]]][[][()]]((()[][([][]([])[()]())[][(())([])](([[][(())[][]]])[[[]](())][][]([][[][([])]()][][[[]()]]))(()()[]()(())[()])[]]([]))[])[[]][][]()))[[[[]]][(()[([])[[]][(((([])[]()(()[][[(()[])[]]]())))[()]([][])[]((((())())[()]))([[]([([[]()]()(()[[(()[])][]])[()])()[]]([()])[]())(()[[]])[([])[()][]()]]((([])()))([][])[][(()[]((([][])))[[[()]([([])][[]][[([[]][()][()([])([[]()])])]()(([(([])[[[]]])]()([][([]())()(())[]]())[[]](())))])()]][][][()]()[])]))[([[[[()([])([(([][][[[((()())[([()])[()([]()()[]([()[()()[()](((([])[])[])[])((([([][([()])(([])[])]())()[]()])(()()[]()[()[]()([])()])[([[]])[][]]))]]([]()[][(())]))(()(((([])([])()[][[][[][]]]))))[[]])][()][]()])]]])((())))[]])()[([()](([][]))[][[]])]]]]])][(()[](()[([]())[]][][])[[[()[[]((([]([[][]]))))()]]][([]()[[]])]][][])]]]((([([]())[[[()]((())([()])[(((([])([(([][](([([((())(()))[([])[([[[]][[()]()[()]()((()))][[()[[(())[][()()]()]]([]())[[]]][[][([])][[[[]]]]()[]]]]()[(([([][])([[]])(([(()(((([]))()[])(()())[][])())])[])]))]())[()[[[]]][[]]]]][([])()([])()()]])][[([[]()]())][]()((()[]))()()])((())()([([[]()([]([]([[()]])[[]()()[]]))])]()))())[[()]]))(([])([([[[()]][]()([]())()[]])[(([][])([()()][()([][[]][(()[[([()][([][([])](())[([][])()(([]))[][]()()()([[]][([[][][[[[][([()[([])]])[][]]]]]])])](()))((([]))([()[[[[[]][[(([]((()(()([]))[([()][][()()[]](((()[](()()))[[[](())[][]]]())))]([])))))]]]][([()])]]][]))()][()[]([[[(([]())()[]())((()([()])))]][][([()(([](((([])(())))[])([([])()(())])))(()[][][[]]([[[]][(())()[][]]])[])([([])][([])[](())[]])][])]])([[([][()[[[[]][]]()[]]]([()[][]](()))[[][]])]])[][[]()[]]])](())[]])()[]()])])([(([]))()]))]][[()()[][]]]))])())[()[][]()[]])([])[[[]]()])[]])]]([])](()))([][]()(()[()()]((()[[]][()][[][[()[(()([(())[(()[[[()[[[][]][()()([([[]([[][[][]]])()[]]([(([][[]](()())))]))[[]]])](()()(((()[][]))()[])[[]][])([][]()[])]]][][[[][]][()]((()))([(())](()([()][[([()])]]))([])([()](()([[[]][][()[(()())[[]][][(([])[(())()[]])[]]]([()])[]()(([]())[()])][]([](())())()]))))(((([(([][((((([]))[][][][([])])[[()[]]])[(())[][]()()()]([]))()]))][()][]))[]))][](()())[((()))()][]([[[][][([])[[[()[(([[()]]))()[]][]()([([])][[]()][][][()]())]([])]]([][])][()][][]]()][([]()([[()[[]()]][]])(()))[][]])][(())()[]]())[[][]]]])(([][[()]()]))())]()(())][]]()([])][]())[][[[([][[][([](())([[]()][]))[][]()]])](())]][()[()]][]))[(()[])[()(()[])]]))))]((()[])(([])))((((([[([(([][()[()()][([](()[([])])([[]()]))]][[[([])([()[()](()[()(([[([][])]([[()[([[][()()(())(()[][]())()[]]([[]](()(()()[[]((()())([]))][][[][((()[[[]()]])[][])]][([[[](())([])[]]])[]([()[([]())()]])][()([][(())(()()())(())]([]([][()([[]()[]()][[][]])])())())])()([()]))[[[()[([][[]([])])]()()[[([()[[()][]]])([()])]]()]]][()])([[][][()][][]]())])((([][()([[][]])()()[[()]]])))]]][([])])]([()[(()[][])][()((()()[(([[][[]]])()()())]))]([[][]([[]()[[[][][]][][()]][()([[[[]([([[(())]][[][([])([[]])]][[]]())])[[(((())[]()((((()[[]](([]()))([[[][]][(()(()[])()[]((()()[[][]()][])[[][]][[]])(([]((((([]))[()([()])])))([]))[[]])[[([]())[()([()()])]([]()[])()]([([][(())[()(())()]][()])][][[()[]]]([[[]]][]))[([][[]])](([[]]()()[][[(((()))()())]]))][]((((()[])))[]))[]([])([[]])]]))())[()[]([][])]())[][]()()))[])](([[(()())][]][([([][][()][])([])([]()[((()())[][[]()[]([([[]])[[][()()([]([]))[[[(()(()))(())()[]]][[]][[]]]][[(())][()]][]][](())])])(()[])])((([][][])))()[]])][][]))](())]][]])]()])[[]][(())]][]())(([[[]]([[]][]())]))][][()()[[]([[][[]([[][([([[][]([])]())()])][]])](([])([[]])[])])(())]]()(())))[])()[()]()[([][])[()[[][]][[]()]]]([][])][((([]))[()][])()()([][])([[()[][((()))]()]])])])[][()][[]()[[([][])]](([([((()(([]()))(([([()])](())([])[([()][()])])[(())[[]()()](()()(()))]([(())(([[]((()))]))([]()()(()[([]()[[]](([(([[([]())][(())][[]]])[((()[[](()()(())()[])]))])]))())]()([[][([])]][][()])()()[([])([](()[]((()(()([][()(())])())[[][](()[]())])[])))]([()])[(())[[([[[]()]])([()[][]](()))([])]()([[]([])])][](()[]([][[[()]]()()]())())]))]()))([[]][([[]](())()[[((((())(()())[])[]()[][]))]])()]))[])[]])()]())[])((()))[][[()]]][[]([(())[[]()][]])](())()[]](()[()([][])([][]([[[((()[][(())][()[]][[]](()[()][][()()[()[]]((())[[]])([][])([])])()[][](()))[][[]()])()]]]))])]])()[()((()))])])]])([([])((())([([])]))()]))[])())())][](())]]([()]())[[((()())([](()())))][()]])]([])])(()())())))([]())[[]]][])]([()])([(())][(([(()())]()()[]())()[[][[][[]]([()])[()[(([]))]()[]]]])])())((()))])())())](([])))()]]][([[]()])()[][(([][]()[]))[(())([])]](()((()))(()))]][()][[[([][])[[](())()]]]]][[[](())]()]())])[]])()])([][])[])]()[][()(())])[]()](()(()[([])[[]]])([][]))[]()))]()]((()[])[([([](()))][]([()][[]([][[][]])])[(())])])[])[])]((())[])))]]([[[]]])(([][()]([(()())()])[(([])()[]([])([()]))][([][][]()())([](([()])()[]))(([][]))]()[[]]))[]()][[([])]]())[[][]]][][(()[(()[[]])()][][(()(())[[]][([])()[([])[(())(())[()[()(())()]][]]]][()][[([[]][])()][][][]])([()])])]])]()(([][()[]]()))()[]())[]))]][][[]([](([])))]()[][]([()][()][[]((([[][(([()]()(()()))())]][])[]))([[[]][[[]()]([](((()))((())[()])))]])[]()][]()())[()[]][([])[([()]((())))]][]])()[[][]()])[][]][[()][()][[[]]()[[[][([[][[]]]()[])()]][]](())[()]]]()][]]()[])([[()([])]](([[[()](([][]))]([][[([(([]))(())[]][][()][([])](()[][([]([[]()[]])[[[[[[][]()]][()[][((()[]())([][[()]]))()()]([])]]([([]([](())[]))(([])(()()[])()[()][]())(((()[[[]()()]][((()[]()[]))[([])[([][([[]([])[([])][[]][]][])][]((()[[][]])([[[]][]]()(([]([]([()[()]]))[]))([([[]()])[([]([()(()[[()][[]()[][]()[([])][][()]]](([[()([])[][[]]]][([[[()]]((())())](())([[][[][]]]))()])[[(())]]([][[(([[]](([[()[()][[[[]][][]]]]]))()([[]([[([]()()(())[])][]])])[()([][[]])][[]]()(([]()))[[]])()[[]([])])((())())]])())()[])([]()[][])([()])[](())[][][]])[(([]())[])])](())[]])(()))))]]([()][]()[][[]][[[([])]]])(()())]()(())[[[[]][[]]]((()[()]([]))[[[[[()()[]]](())]((([]()[[]])[()](())()))]])[][[()]()[]()([[]]())]](()(()))[]()[][][()[]])))])]][[]][])]())([])[])[[]]]()[]][[[()()]]])((([(()[[[[]()()[(([()[][]]((()[([])])))[([])])[](()[])(())()[[]()]([][[(([([])()][()]))[[](([[()(())[()[[[([[]])(([][()]))][][]](([][]))][]][]]]([()][][])())([])[])[]][[[[([[[[([()[]])][[()()()]()]]]]()(()))][]][][]]([])][]](())])]]]((()(()[])))[]()](()))[[]([][][()][(([([][[]]([[]]())[])[]][](())))][])]]))())([(((()()))[][(()([(([(())][]()[]))(())])[]()[][[]]([()()()](()))[()[]()][([])()]()())()](([(())()]))([[][()[[]]]])([(())[[()]][[]]()([]()())[()([][()[][]])]([])][[[[[][[]((()[][])[()([[]])])()()[()][]()([](([(()[][])((())([][()()()]()[])()()[[(()())()[[([])]]()(([((()[][[]])[][(())()])()()][()[[()]]]))()]])[]]((([])))[]([[()[](()(()(()[])()))[(())]]]()[][][][[()[]]])[[][[][[[][[]][([])]((((([])))[((()))]))]]]])(((([]()()))(()[[()]])[[]])))[[]()][()([][()])]((([((())[[()[]()]][])[]()]))([])[[[]]]))()]()[()][[[()]]][]((()))][[]()[[]]]]()[([[]])][[]](([][[][]]))]])(()))])][([])]))[][])[][]())))[][]([][(([[]])[])]))[(([]))(()[]()([()][])([][]))])])]()])]([(()())()])][(([]))(())()[]][][][[()]((([]()(()()[()()][[[[][][()([])]]]]))[[]]))[([()[]])]((([](())))[])()])[][()]()][]))[[][((()))([])]]]][]])((((())(((()())))([]))())[[[[()]]()][[[]()]()()]](()[(()[][][](()))[][]])(()))[])[[((([()])((((([])()())[[]][((([]()))[](()[][[]]))](()))())()((([]()(([[][((([][()]()[])(()))()()[[]([])][][]()[])][[[]()]]][[]])()[[()[]][[(()([]))][([])()[]]()][]])())([])((([[()]()]()([()[()]])[])))[()[][()]][][])((())))())))((([(()[[[()()][]()]()])[[]()]]))([[]([()(([[[](([[]()]()[](()[()])))]()[]]))][])([]([]()([[[][]]]([[]([()]()[[][[]]]()[([])()])])[])(())))][()[]()])[()()([])([])[]])]()([])()[[()]]]((()()()))())()[()()][[]]([[[]]]))]]))][[][[]][]][]][]])][])](()))[[]]]])])([][])))[]]([][[()[[][]]]]()([]))[[]])))][]]]][()([(())])()(([(([[[]]])())()]))])()(())][]])[]](()(([[]]))[][()[]()][])[()[]]))[([()[]((([()]))([])[(()([]))(([[[[[[](([[(())()]])()[][[]])[]]()]][[]]()]](()))[()]()[(())()])[[][][[][]]][]()([[[]]])]())(())][()[(()[])()()[][][(((()()))[]())]()]]())][](()())][[[]]](())[()][()][]([()[([(([((()))([[]])])[([(()(())([[]]()[]((()[()[]]))()(()([])[()()])))])(())])])([[([(()()([]()((()))[])[[[[[]()]]]([()])])])()]]()()[]([]))]])()([([[]])(()[])])([[]](((()))[([()])[[][]]]()))[()][]))))[][([])]())([(([]()))])]]][[]]]])(())))[][]()[[[]()([[]()])]([])])())[(([]([()]()()())([[](([][([(([(()[[]()()()[()([([[[[()[()()][]]]]()])][])[()]]()](([])[][])()[([([][(((([((())[]([[[[][]][]]][]()))][()]))))()()])()()()][]())(())])(()()[])])[][[]])])]())[]()[])][(([])[])]))[[[()][([[]][([[([()([]([[[[[](())]][[([])]([])]][[]]][]()(())[([])[]((()))[][]])(((())))[()])([([][(())])[]([][[[[()()[][()][()]]()]()[]]][[[]][([])[[([][])][]([]([])[[]])[([()[([[]][])((())[])][][()()]])][()[][]][()()]()()][((([()[]()])()[]))()[[]]]]][])](()))[()][[[[()[]]]]]])]][()]())])]()]][()()[]])()]][][()]][]([[[]][]()[]][])[])))(()([]()((()[(()[([][][](()))[(())(([()](())(([[]](([[][[()]]])[()]())([[]]()[])())))())([])]([])[][[]]]()[])]))(((()[])[][]())))[]))()([()([[]])([()[]()[[([[]])()()[][]]()(()()())]][][])][]([][()][]))()[]())[][[]][[[]]()])[()()()]]()()(()([][])([]))[][(())](()([][]()))[][[]]((()))()((([[]()][]()((([](()[]()))[([[]]([[()()]]))])))))[()][[(())][]((([()][]([[]([()])][[()]])[])(()([][[][][[()]()](())][][[][][]]))(())))][([][][[]](())([]))((()[]))][[[](([]))]]([[]]()([([[[][][][]()[]]()]()([][])[()]())[(([][]([])[][()])[])]](((((())())[]))))([()()]()))()[][][()[(()[][]([][[(()(()([[(([])[])((()([]([(()[()()][])]()(())(([[[[][]]]])[[][][][]])[[[[]]][]])(())()[[][]][])(([([](([]()[[][]])[()])()())]([()[[]]()()]()[])((()([])[]())))())())(([][()[][[]()][()(())(([[[]]([()](()))]((()[([()][])[[()()][][][([()][([]([]))[[]](())(()([([[[]]])][[]][(((()))([([])][][]))]([](([])[]([]([][]))()[(()[])]()())[[[([[]()](()))(([([])])[][]([])[]()([()([]())([[[]()]])][]()())[()[[]([][(()[()]([]))](()))([][])][([[]]([[()]]([]())[]))]]((()[[]])([(())((()()[(()(()))]()[]())())]())[][[()([[[][([[[()]]])]]])]]()()[]))][][](([[(()[])()][]([(([]))[][]])])()(()))(([([][[[](()[()])]])[]][][[[]([([][])]()())[]]]))]])((()))[][()])[()[[(())]][[()()[(([([])[]]))[]](([([])[()([])[]]()[]])())()]][][]()()[]])[[]]])]](([[([()([()()]()[()][[]])()[]][])]]([[](([[([])[]()][()]](())[]))([][[[[]][][[[][[]][]]]]])][[[]((([[](([][[()()]([])[]])())])[][[][]]()[[]][([[]])((([]()([][()([])[[([([()])][[[[]]]][])]]((())[])[[[(()([()])[()])[]][[()][]]]][()[]]][]))()([])[([])[(([[[[([()]([[][]](([]))))]]([[](()()([()][])()[[]]([]))])]]))[][[()[[[()]]][([])][]()]]]]))])())(())]]))[])()([][])[]()[]][(())[[()]]])))([[]])([][([][][])()])[[]([[]][[[]]]()())()])()()[([][])()]()][]](([()(()[]())]([])[][(()((()[[[][]()]])([[()[()()[()[()[[([[[()[()][]][]]])[][]([]()()[([()[([][][][])]])[[([])]]])]()()([])][]]]()([[]])]()[()([])[[[([([]([]))[]])]]][][()()[[[][([]([()](())))()]]]]()[]]()]()(([[]]((()()))))([])[]])()))[()[]]])[])))[]())][]]))())[()()]][]])[[()]])]]()[((())[[]])][][[][]]([[[]]](([[]][][][]())(()[])([])))()([]()[[[([])][]]()][()[]]()[][[()]](()[(())])[]([[][[]]][[][(([[]])[()])][[[(())]((([()]()()))[[[[]]]][[()([]())]()])]](((([[()]([])(()[(()[][][(())[(())(([[]()([[][[]]()][([])[([](()))[(())()[]()]([][[]][])][]])[[[][]]]])(((([()]))[[]()()])(([()])([[[()[()]][[[]]()()]]()]())([[][][]][][[]])))[()][][][()]())([(()([]))[[][]]]())]][[][()[[][][][]()()]()]])()])((([()()])[][][(())[[]][[]]([][][]([]))]))()]))[([[]])]))()])[[[][]()[(([[]]()))[]]]])[]([][][][[](())(())])[()]()[][[(())(())[[([((([]))[][][[[]([()((([()[](())[]]([[]])()()(()(()()))[](()([][][])))[])[((())[[()([[]])[](([[]])())][]()[[[([[]])]]]([])[]](([()][]()[]))[[()([[[[()][]](())([])]()[()]])(())[(())]()](()[([][](([()[]]())))]([])[(())([[(()()()[]([(([][()[(()[[()][[]]()[]][([[](())])])((([([()][][()([])])]))[]()([()[()[][]()([])[[([])[()[(())][[][]][]]][]](()()(()))]])[[]])]]))][][[][([((()))])]][])[(()[(()([([[()][(())([]()(()))]])[]][])[]()())]())])[][]]])()])][])()([])[(()())[(([][][](()([[]([])([[[()((()))]]]()[[[]]]([]))([[((()))[(()[]())]()]()([])()])[]()(())[]()()([](()()))])[])[][]))]][[[([](()()[])([]))]]]([]())((([[[()]]])(()((((([])))[][[]]))(()()))[()]())[[[[](([()])())[][]]]])[][](())[[([])][]]][])])][()][()]])[][]])]]]][]([])()[]([()()])[[]]([]([]))[((([[()][]])([[][]][[]][[(()()()()(([]([(([]([][[()][]][])[])[])[]])))[([][])])()()[]]][])))]([])[][[[[]][([()](()[]))]()]]([](()))[[[]][][]][([[]([])[]])()[][([])][[[[](((([][]))()))][[][[]]][[]][()]]]]()[]([[]()](()[])[()])[]([])[[[]()]](())[()[]](())((()()(((()[(((([])())))]((())()())[])[]()))()([]((())))[])())[()([[()([])]][])](()(([[[[[]]][()](())]])))(([([]([[[[]]]])[][[()][]]()[((([()[]()[(((()[(()()[](([]()[][])[])())]([[()]()]))([])([[(([][[[](())(())([()])()]([()]())][][()][][[](([][][()(())]([])([]))[])][])([][](()[()][[()(()[([[](()()())][][](([])[]))][])[[[]()][([](([()]))())](()())]][([()([])()][[()]])]][]))[])[]]]())[]))[]]])))][]())([()])][[]()]([[]()[]])))((())(([])[]()))[]()[][[[[[[]([][])][([])]]]]]([])[][[]]([])([][()()]())[()((()[([[]])](([[]])()[((((((([(([]))()][((()[]([])))()()()]))())))))])))]()[[]]([])[]()[]()(())[]()(()[])()[]()()()[(()())]((()[]))[[]()[]([()[([[](()())[[]]([])])()]()[]])](()(([()])[][])[([])[]])[]((()[[][][[(()[[()]][[[(([()[](())][()]((())[[[]][]()[]])()(([][[][[[[][(((())()))[][]()](()[])]()(())]()[]]()[]]))[]))]()[]([][()[()[[][]()([][()()[]()[]([])])()[[]]([([])()]()([]()()[][])([([[()[]]][(())])])[])]]()][])][[]]()])](((([[[]([]((()([]([])[][[[]]])((((([])[[][][]])))[][][]))[])())()][]][]))(([])))[][][(())])[]]](((([])([(()[])(([]([()()()[]]))[])()[][][]][](([()[()][][[]()((()))]()((()[]()))[]()[][()]]([[[[[[]]]][(())[[()]][[[]][[]((([])[()])[[](([()[[(((()[])[])[[([])]([([[(([]))(()([])(())(([])))([])]])(((()()())())(([]([](()[[]])[()][[()((([[][()[]]])))][]])[((()[]()()[][(([[[[]]][]]()[])[()[[]](((())))])]))])((())[])(())[(([[][()(()[]([][()])()(()[])[][](()[][][]))][([]())]]([])[][]))][[](()[])()[]()]()()[]))(())]([(([](()())))[()](()[])][[[](())][]]()((())[])[])())(())][[(((()))[((([()])))][][][[[[]]]()])[[]()]]()()])()]]([])])(((())[([](([])[[[]()]](()[[([(()[])(())])]][()])))]))[]()())()()][](((([])[])[([])]())))[]]]][]([])][()[()]()([])]])[[]])))((()()[])))([])([]))))()[][][])[][][][[([])]()()]([[](([])([()[[](())][][]]))][[]])()(()([[[()()()[()()(()([]([]((([])[][])))))][(((())([])[()([([][[]]((()[[()][()(())]([()])([][]([]))])()[([[]]([]))]))()()]())()[[]]]))]]][()][([()])]][][()[]])()[])()()[[][]]()[](())[][][[]]()[]([(([][][[]][]))][[(())[]([][][()[[[[]][][([])](()[([[]()][][[][[][[][][[()()[[][(([]))]][()(([[[()]]()[]][(())]()([]((())([[[[([()]([][()()][]))()[][][()[]()][[][]()[]()]](())](([[]()[[[()[()(([][()][]())[()])([([()[[[][][[](()()((([[[]]])([[()][][[]((()())(()))([([][[]])])()()]])([]())[()]([]())()[()()()][([](()()[])[]((([[[[]]]][](()))))([((()))[]][]()[[[]]][])([][[](())[()][]][]([()[()]][](([][]()[])()([([][[()(()())(()()[])]][][]()([]()[([([[[]()]][])])([][[()[[]([[([]())((()([]())))][][]])]()]])][]([()[[]([[([[]((()([[]]())))])]])(()(()[]))()(()[[[[]]()[()][]()[]]()])][()(()[])()](())])[[]][][]))])()[()[(()[][])[]]])[])()([()])()[()()]()())([[[]]])[][])[]])[]))]]][]]())[[[]([(((([])[][]()(([[(([][([[[]((())[[]][][[()]])]()])[]]()))[]([()[[[(([(([])[([]((())[]()))])[()(([][((()())()(((()[([])][]()[[()[][]][][()]()])()(()(()))))[()])](([][])))[()[][]][]()()())[[]][[]]()()[][()(())(([][]))[[]](([]([[()()()][][][][][()]]))(([([((()([[()()[]]]([[]][[]()(())][]([])(()(()[[((()(([([()])()][])()((()()(())()[][]([[]][[][[[([()()])]][[][]]](([])[]()[[([([])()][])()]][()[]])()])))(()))[]))]])[[[()([[][[()]][[[[]]][[]([])[][]]]](())())][]()[]]()]))())[][][[[]]()]()))])[[][[[[][[(()[]())][]]]][]]]])()[([[]()][()]()()[]()[()])][[][]]()()([()(([()][(([[([])(())[][]][]()]))[]])[]([]())()([])([])[])](()))[][([[][]][[[([[(([()]([]([][([([()][][][][][])[]])[[()]]]))))()()[]()[([[]])()[([[]])](())]()][[[]]()][()[[()]][()[]]]][])]]()()][])()]))]([[](())])[]]][[]()](([(([][])()([][[[[()]][]][](([[]]))][()]))[][]]()))[[][()([])()[]]([([(())])[][[]]][((()))[]])()()]))[([])]]([[[]]](([])))([()[]]()([()]))[]][()(()[]())()([[[[]]]])()]()]([([[()[([[[[([])[[[]]][([])()()[[]]([])[]((()()(()([])()([]))()()))]][([]()[[[[]]]])[]]][]][[(())]][]([])[[([[(([]())()()([]))([])]]())[][]][][([])]()[[[()[()()](()[((()))])[[([[]][()()[]]()[][])()[]]]]([([])()])([])]()[([]()[[]])[([])]()()()[([])]](()()([()][]([[](())])(([[]])[[]([][]([()]))()]()[[([][][([[][]])])([()[[()]]((([[]](()[[][]()((()[])[])[][[[]]][()[(()[((()()([([])()])))])()]]]()[[(()[][()](([])))]])()[()])[((())[]()([()][][]))]([]))()([[[][()()()][[]()](([[]][([]())[([[]])][]])[[]][]()())]])())[][[]]])][()((()[][((()([]([()]()()()())())[((())([]))[]])[][])]()[][()])[([])])[]]()[[([[()(([][(())()[()]](()())[]()()))]]())[]][([]())[([]([]))]([])]()][()]])))([][])]]]()())]]])]())])][][(([[][]][()]))[][()([()([][][])])][]]])((([][[][][]])[(())()])[[[[]]()]])(((([[[]((()[][[]]()[]()))]])()[[[[()]()[](([()[()]](()[]([])[[()][]()()[[]]])))[]()]([[]])]][()[()[((())[[[][()]]][[[()][[[(())()][([]())()]()][]()](())(())]()[[[]]][][]])([])]][()()]([])[]]([]([](()[])))()([((([()([[]])])))][][]))([][])))[([(()()())][]([[(()())]])())]())()[])))()[][[]][]()([[(()())()[[]]]()()()()[]()()])[()[[()]]]][(())][[][([][])(()([][])()())]](()))]][]][][][()[]([][])])]]]]()]))][]]())[]))[(((([]))([()][[[()][[]]]][]))[])[[[][[]()()(()())[]()]]((()()[][((()()())([]))([([])])[]]([]))([]())[]()([[]]()([[[]]()[()([()[[[[][]]]]()([()()([()[([])[](()([]))]])()[]]((((([[]]))()())([]))[()()()]))[[]()(())()]][(([[[][]][]])[])]())]])((()())))())()]()]()))()]()]]()]][(()[][[]]()())[]]()](()))])][[()]][]]]()()[[][]])[]([[[]()(())]])][[]()]])[([]())](([]))[()][]()()[]()([])[[()[[]]](()([][])(()())([[[]()]]([()[([[()((((()[[]([[][]([(())])][()[(([[()[[]()]][]]))(()((())())[])[](((()()[]))[][([])]([[[]()]][])[[]])][[][]()]][[]])()[][]][]))))][(((()[[]])))[[]]()]])()(([()([()[]])]()()()))][]()]()([][])[]()(([]))())(()[()]())[]))()]()[([[]()[[]]([[((()[()[]()][]([([](()[[[]([])]][]))(([()[([[[][][][]][]])[]]([()]())()[]]))][[[][]()[]]([()(())][])][]((()())))())[][])][]])]())[[]][[[]]][][]]([[()]()()()]([[]])([][][[[(()[]())]]]))[](())[([(()[][[[]]()][][()[]][[[[()()[()([([])][()[]][((()[[][][([])][]()([][])]())()[([()][([[([])]([([]()[](()[[[]]])([])[])[([([])[]][]())][][([]()[([[[[(())][]()]]()](([]((([[][]][[()]])()))[[][]][([](([[()]]))[])][][]((()))[([()([])][])([([[[[()(([]))[](([([[()([[[(())][][[[()()]][[]]]((((()[()()()])[([[([])][([[][()([[(([[()]]))]])[()[[][]((()))[]]][()()][[([])]][]]])]([()()]())]())][([[()[()]][]([])[]][[][]][([]([[()]()()[[]][]]))](((()))([])[])[][][[([][][][][[]][])()[]]]([[]()[]([][])][])())]())[][([()])[[[]]][]])())][()([])(())[][()](((()()[]()))())][[[[[]](()([()()](((())))))][]((([])()))[[[[(()([()])([])()[()][])]()[[]]()[]]()()]()]]]([(([][])([[]][()]))[[[([][])[([()[[]][][(([[([([[]([()[][][][]([[([][()[([]([[()]((()[]))[]][[]]))()()(([]))]()()[]]())][]]()[()](([(())](([()])))))])]([()]((([]))(([[][]()(())([][])])[]))[][[([]()[])()(([[[(([])[()()][([])(([[[()][()]][]][()()()()()][[]]))()(()([][[[([])([[]][[][(())][]])((()))]]]))(([[[()[[[](())[()](())]()]][]]()[]][][[]]()))]([()]()(()[[(())]]))[])([]())(([]()[]()[][]))[[]][[](((()([]))[])[()])]]()][[]]([])]([()]([])()))[]([[]([])[[()]]]([[]][])))]][[][]]))([])])(())]]))()([])[]((()))[[([[[[[()[[](())]][]]][(())[][[]]][[]([()[][(()())()][((([(([][])[()]()[][[([])](([[(()[])]()]))])[][()][]])[]()))()]]())()([[]])()([])[][][][][]]([()][])][]])][]()][][]]][][()(([]()()[[([(()[[]](()[]))()[]])][]])([]))()][[[]]])([])[]]]]](([]()())(([[]([(())](((()[][])[]())[([[()]])()])()())[()]])[[]]([])[[]])()()[])][]()())])[(()[])]()([])()()]()])]())([([][][][](()()[[[]][[][((([((([]())))()]([()[]])())()()))]]][])[])](([[[]([[][]])(()[[[[([])([([[]([()]()[()[[[]()]]])])()][]([((()))])[[]]())[]((()))[()()]()]]][]])([][()()[]]())][[]]]))[([])][]))][(([(([](([]()()))[][])([[()]][[]()[]]))]))(())]]()[([(())[([])]][]())]]([][]()[[]][][[]([](()()[])(([[]]()[[]])()([[[()()[[[]((([]()))[[[[]][][[][()()(([[][[][]]]((())[][])[]()()[[][()()]](()()[])[()([])([])(()()[(([]))(())(())])]))[[]()[]][[()]([[()][]()[(()[[[[[()()(([](((()))([([])([()])()([][][])][]))()))]()[]]][]()]])()]()()[]])]((()))]]]()([(([]())())][])])]][([[][[()]][]()[]((())([](()())[[][]((()()([[]][])([[][][()]]([[()]([])][(()(())[()]([[][]()]))[]()(([(())]))]))[]))]))][][])[()]]([[][][()[[[]()[()[]]]]()[]()[]](([])[[[[[][][]]]]])][]())[]((()([])()()([()]))(()())())[()((([()()[]][()()][[()[]([()()()[]([][()])(([]())[()])[[]]])]]([(())()][])[]()))([]))]]([[(((([[]])((((())()))()[])))())]()[[][[[[][]()][]]]][]]()(([][()[()()]]))[]())]])((()(((()[()])((())([][[][()()]()[]]()()()[])[[]([])()]))[]())[])([()][]))))])([(([])[[][][]()[[[()[[]]]()()][]]([()])])])(())](()))][()[()(())()]])[]])))][([[[[[]]]()((([[(())(()([[[[()(())()][]]([])]()[[]]([])[([][])()(())[[[]][[[]]]]][][]()]()))]]()[][](([])()))))([][]())]][]([[[[]]]]()))][[]]())]()(())()])])([])([([])])])][]([][])[[][]][])[]])]()]]([[[](([][[[([]()[[[()()[[]()([()[]])([[([(([]([]()[(())]())))](()())[[]])()([])()]()])(()[][]()([()]())[[[]][[](())]]())]]]])[()]]()[]][][[]]]))][]()(()()[([()([][]())](([]([]()[])))()())()((([[]()]((())[([[][()][(())()]])][]((([[]]()[[[[][]]]]))[([])]()))()[])))(([((()[[([([[]])[[]]()([()()]([[[[][][()]]]]))[]])()][()([])]][[]]([()([][[()]][])][][]([([])[](([][()[[]][[][[][()[]]()[()]]]()[]]))[[]()]]))(()))([]))](([]([[[()[][]]]])()))()[](([[]([((((()[])(()()()[][]))([]([][][]))[[[](([(([[[]]()[[[((()[]))]]]()([(([(((([])))([[][]]())([()[]])()((((())[[]][][([()][])]([[[([][][])][]]]))[])()))][](([[][]]([][]))())[])((())))]())()(())][()()[]]))()][[][[[[[]]()[]([](()))]((([()(([][]))]([[]][])[])[])[(())]())]][([]([([][[[]]])[][()()[()[][(()[[[(())][(((([]))[][]()))]]])[]()]][][]]()[]()]))[]]]))()()]])[[][()([][[[][]]([[()]])[]][[([])()()[([((()))[]])()[[[][]()(()[])][]()]]]])[][()]][[]]][])])]()()[[]])(([]()[])([][[()[[[()[]]]]]]))))())()()])])][][[]]])])]([()((()(())[[]()([]((([[[]([][][])()](([])(([[][[[()]]](()([()([[()[[][]]]]()[])]))[([])[]([[]]())([])(())]([][])])(((()))())[(([]))([])()]))])))[])][[]]()(()[][])[])())])()[[(([([])]()[(([]))])[][])[([(()()((())([((()())([()([])]))][[]])([[]()[[]()]])()([]))[[]])])]()()][()]][()()]()(()([[[]][([])][[]([])[]]])[]()[([[]])[[][(((([[][]])[[()]]([]))[]))(([]))[]]](([([[]((([[][][()([([](([[]])([])))])[[()][(()[[][(()[])()()()]()()[[[()()][()]]]][()])([][][[[()]]()])(()([](())))]]]])))][(([[[[()]]]()()][]())()[]())])()])[])][[]]())()(([]()[]))[][][][[[(())]]][](())()()[()[]][](((()[])[[[]][]()])[])()[([][][[[(())[((()[])[[]])[([])[][]]][()[[[[]][(())[[([([[]])])[()]][[]][]][([[]()])]]]][][()][()()]]][()]]([])])](()((())))[([(()[([[]]()[])([([]([]((())[]))[])()()[][][(())](())()[([[[()]][]][](()))]][]([]))][[(((([[[[()]]]])()[]()()[[[([[()()][]][])[(())()[()]][](()[])]][[]]][(()[][](((()))))[]((()()([[]()])[]([])[][[][]]))()[]()]))[](([([])([])[]])[[(([()])())((())[[([()[]((()[])([])())([[[([]()()[])()]()]])[()[[[]](())([([](()))[]])]()]()([(())])][[][[]()[[][[][([][])][]]][([[(((([]))))()[([]()[][(()()[][[(())[]()][[[][]()()][][([]((())()([][[[[()[[()]][[(())]([[((([[[(()[])[((([][]()[()](()())))()[()])(([[]()][])[])([])]][[(()[[]()[[[[([])]()()][[]]]]]()[(([][])[()()][()])])()([([[[]][[]()[[[([])[]][]]]]()([([()])])])[]][][])[([][][][]())]]][]()[][]][([[]([])[][]])[[]()[[]][]]][]()()()[[]]]()))[[[(([(())()[]]))]][][]()[][[[()][]]]()()()[()[[][][(())[[][()]]]]]][]()[[()][]]())]])[][]()]]()][[]()[[[]][()]][[(())[()]][()()]()[][][]]([][])]]]()[])))]]])])()([])]]([()])])]][]])][][[()()()[()]()]()[]]([])[()][[][]]][([[]][]([]()))][()(([[]([]()([()]))]()))][][[][[]][[[]][]]])][](([]))[]][()()])[[(())][]])]])][][[[()]][]])]()[]([(([][][[()()()[[]]]()]))()[[]]][[([])[[][]()[[][]()](())(()(([((())())()])([()[[[][]()]][][[()[(()()([](([[][()]]))[[][]])(()))]([])([])]]][][])))[(()[()()])][()[]]]()()[]][][]][])()(()[[[]]()])[()()][]([]([]()()[[[()(())[[[][]()((()())[[]])()][[]()()]]()]]()])[[]])[][](())[([]())]()(([()()(()())]))()()[[]](([()([()](()))]))[[]][[([])()[[]][(([])([][]))][[[]()[[]][][[()]()]]([()[](())])[][]]()][]()][[][[]]()()]()[][()](()()[])[](())()()[][][](()())()[[([[]](([]()))())[]()()]]()([[]])([()([[]()])]())[][]([[]()])[][[[]]][][()[((()))[()]()][]][([][((())[[]]([()[()]][][()])())][]())([[]]()()[[()([][][[[](()[])]][[[[]]]([()[[[([]([[]((([[]])()[]))]))]()][][]]])])]][[(())]()()]())][]([[(()([([][[]])[[()([[]()][(()(((([[()]]))()[])[]))[()[[()[()][]]][(([]))[([](()[][]))[[([([]([]()[[[]()[()]()][]()]()))]())()]((([]))[[][][]()[][][([][()][[()(())]]([([[([]([]()()[()](())[][])[[][[[()[]]]][([[([]())]][[]](())()(([[[()[[()]]()]]][]))[[([([](()[[((()[[()]()[][]()]())()[[[]]])]()[(())](())()])[][[]])]())[][]()]])]()])()]()])][[()][[[][[[[[[]]][()[()]]]()()][[][[()]]]][][([])[]([][])][[()(([()()]()[[[]]([[]])][][(((([])())))]))]]]][]]))(()[[[][[()[()]]]][[]()()]([[]])])]]()(([([])]())[]()()()[])[([])[]])([[()]]()[(())[]][()[]((()))([])]()()[[][][()()(([])[](([])[()])[[()([((([][]())[])([()([[[([[()(([[]([([])])[]]())[[]][([()()((()[]))][]())]([()]))[()]]()])]]()])](())([()](())())([][][[[(([]()))[[(())[[](())[]][]]]([]([]()))()]][[[([[[]][()([])[(([([][[]]([])())[]][])([[[][[]([]())][()([](([[]([])]([][])))[[[]]])([()])][[[]]]]([(((()()[[[]()[]([[[][]()()([][])[([][[][()][((()))]](()))()]]][](()[][][]))][[[[()()]]][]]]((([])[][[]]()[]())))))][]([][])[[(([]())[][]([])[]())()[]]])([])[[][()[()]]]][[]()][][[[[[]]]]]))]]][((()))])]][]][]]([[[]]]))[()]()())[][[()[()]()([[]([[[[]([([([([[]][((()(()([][])((())))()[(([([([()(((()(([[]]())(()())()[[[][()][]]((()))[(()()[[][]])(())]()[]([(())]([[](())[]()[(([()][]))][()([])][]]))(([([])()()[()[[][]](()(([[](()(([[]()[][]()()]))[][]()[][()(((()([])[]()[](()))[(()[])[]])[])()](([]([][][[]([])()](([][()((([]()())()[]([][[][]])))]))[((())[[]((((())[()(()()([]))][]))[()[]])][][[[[[(())[[]()[]]([[(()[][])([])[([][][])[]([[]()])][()][()]]][[]])](([][][]))()[]][()((()()([([])]))([[](((([[[][]][(())]]())))[])]))(()([])())[(()())([[(()[[[]][]()][])]](([()])))]]]()]()()(()[([()][])[([[[]][]])][[]]][[(())()]])([[[][]]]()()((()((()())[][[](([[()][(()[[][]])()((([[]()[([()(([]((()[[]])([[()]([()][([])[]][((([])))[(())]()]())[]])[(())()()]))[])[](())][])[]([])[]][]][[(())[[[[][]]]]]()]([]))))[]][]]))([([][])]([]))[([](()()))[][([][])](())([()][]())][()][]][[([[]([(([()[]]))]())])]])()[][()()]))())[]([[]])[][(())[]][()[](([[[[[]](()((()()()([([(()())[()((()))][][()][]()])])()[]))[[[()][]]([([])]())()]([]))([()([][]()[[[]][()()]([]()([([])(([([])]))()])())](()[[[]((()((())[])()()())()[](())()(([[]])[]()[(()[][])]))]][]))])]]([[[][[]]][[[[][]]][]]]()([[[(([()[([]()(())[]()([]([]))([](()()[[[[]]][][]]([])))[[]][[[](())][]][[[]]]()())]])(()[](((([])[]))([(([[([])[]][]()]))([]())])[[]()([()][])[[]([()])[[]][[]]][()([])[()(()())(())()[]]](([]()[][]())()[[[[[]][[[]]][[][][((([](()))[[(())]])())]][][]]][][]](([[]([]()()[([])])[]]((()(([][(([[]])[])[]()])[[([][[]]())]][]([])(()()()()[](((([]()())())[]))[])()[]()))(()[]))[[]][[][][[]][]])([][](((([])(([]()[()]())[([][])[()]])))))[[[([]())[][[]]]][([[[[][[()]()]()[[()]]][()]()[]]][(([][]))])(([][])(()()))][([]((())([[]()])[]()[]()()(())))]](((()))[[()][]])()))])[]))]]([]()[[]][[[([[[()()[]()]]])]([[](([])())([])()([]())])]][])]))]))[[(([]))][()([()[]]((())([()()([])([[]([[[][()[[][]]]]])((()))()])([]())]()([[[]]])[])[]))]()]]][()(()()())[([]([][])([([][()[]][])])[]())()]([[[[](((()[()]([[([])]](()[[]]())[[]])[[(())][()()]()][()])(([([]()[])[][[()][][](())]])()()[])(([])()))[])]]])]([])[[[(([])[[][[][][[]]([[]([[][()]])])]()[]])]](())])[]])()[][])[[([(([])[[(()[])]()(((()()[]()[][])()[[[]()]][()]((([()()[][][()[([[([(())()()])()]]())][[][(()(([[][[]]][[]][])))()[]()()]]][]()]())()[])()([](()[][([[]])()[]])()[[[[()]]][[()[[]()]]()([[()[](())]])]([](([](([][(([()][[][][]][])())][][[][[([[](()[[[()()()]()]][])][]()())()(()()[[[]([])()]([])][()[[[[[()]()][[]][(()[]([])([[()[](()[()])]]))[()]]()][()()((())(([[[]([])][()[]([[]][[[][()][[()][(()[])]()]([])]]())]])()(([([(())])])()[])(([[]][[((([])(())))(()[](()([][]))())[[]][]]])))()([[]()([()()][]())])(([]()(()))()[()][()()]()[])())]]()]]([]))()[[()(()())][][]](([]))]([]()([[[((([[]])))()((()([()()[(())()]][()()(()())])())[]())[[()]]][](()[[([[(()(()[]))[]()(())([])()(([[[[[()]([([[][()]()])[[[(())]][]([[[()]]][()][[]](([([][][()[[]()([[[[][(())]()()[[]]]]][[]()()])][([][])(([])[[]([[()]])][])]]([]))[()([[]])[[[][()[][[]()([])[][]]([([(())][([[]]()(([([()])])())[[[]([])]]([(()()())]((())())))]((()))((()[]([]()[()])[]()))[()])()[]()()])][]][][(())[()([((([]()()[(())[]])))[]]([[]])())[]]]()][]([[]])[]]])))]])()]]]()[]]))]]([])())[(())](()())][[]](([[]][](([[([]()[])]][()[[]][[]()][]]()))))][])(()[]())]][()[][[()[][[[][]]]([[]][][][[][]])]][][][]()()][[]])[][()])]]())(([[([()[][[[][(([[[()([])[((([])))]([][[()[]]]())][][[(()())][[]]]]](())[[()()](([][()([][][])]))(()[[]][()])]())((())(())(()[[]()()]))(()((([])(([[[]][[[[]]]]()()((([])[]))]))([])[][[][[(())]]()]))()([]())()((())())))[]][[]()[]]]()()(())]][((()([](()[[[]]]))[]()[]))][]([([])[][][]]))]()][[]]((())))(()[[(())]])())())[]))[()()])]()(([])))()[()][([]([])([[]()[(())](())])()(()()()((([])[][[()](())([(((([]()))[])[[]][([])[[]]][]()[][])][][])]))(([][()][()()[]]))((())))[][[]()])(([([()]([[[]()[]((([](()()()[])))[][])]])[[][][[]][[[[[]]]][[([]())[()[][[[()]]()](()[])[([[][][][]])[]][]()()]][]]]]()([][[]][[]()[]]([][(([]([]([([]())][]())([])[][]([[]][[]()()])([[]()](()([]))()()[])[[[]][()]])))])))(())]))[[][[]](())[[]][[]]]]()[])[][()([][])(([[([])][]]))])[()()])([()])]([[((([(([([][([(([]((()()()(())()[][]))(([]())[]))()[[[[(([])[([])][])[[[([])]](([(([](([][[][]][()]))([[[()[()](()())][]((()))[]][]]())(()[[[(([[](())[(())(()([()[][()[]]])[(())])]]))]]][[][[][]]([][])[]]()[])((()()([]))))((()[]())[(((()))[[]])()[[]()]]))](([([[][]])])()[])[((())[])[[(()([])([][][([][][])([[]()[][(()()(())())]][[[]([[][()]((()()[((([()((([][])([[]]))()())])[([]()[]())([[[]]]())]))[[]]([])([])])()[()[[()(())[][]()[]][[()()[]]]]])])][]])()])()[()])[(([])[[()()[[[([][[[()][][]](()[[[]([]()())([()])]])((())(()))[[([])]]])[()]]]]]]((([[]])[[]]))())([()[(([]([][])[[()]]))][]])]][[[]][][([([]()()[])()][()])]]]]))(([[]]()[])())[([()()])]][][]()[()(([[[]]])[])([[([([][()])])[()]((((())([[[([[][](((([(())[[]][([[(()((())))[()([])]]]()())]([][[[]]()]())]()(())))))][]()(()))]](())])([]()[])[]()([([])[[]()[]]()][])[]))(()([[[[[][[]()([(())[]])]([()()])]([[()[[[]]()[[[][()(())]][[]]]]][[([])]]([])]())[][(([])[])[][[][([]([]())[[][]])]][[]]]()]]])([()]())))]]())]][]()[][[[[()((()[])(([([][])]())[]([])[])[][(()[])([][[[()[([])]()((())[()][][])]([])][[]([])]()[]])(([()[[][[]][]][]()]((()[[()]]([]))())([](([])(([])))(([()()[[()[()]][]]([]([[][[]]][]())[[[]][()[][[][(())]]()[][]]][])[][]][])([])))())(([(()([]([][[[][]]()([])[]])(([]))))][[]][[]])()())())[([])()][](())])[]][]((([])))()](((([[][()(())]]))())([[][]()][()])([[]]))]()[[][]([])]][]()](([()[](())[[[(()[][()((()()[][])[][])])][]][[]]]][()[]][()])(([][])))()]][[()()[([[]]())][[]][[]][]]])[]][][])])()[[][[]]][]])())[()]]))[][])]])()[[]()()]())((()[](())[]())[[]])(()[](()[()[()(())]]))])]]))()([])]))())[]]([[()[[[]](())]]])[][][]]))]))()[[(()())[[[()[[()([]())]([[]]())][(()([][[]]()[](()[]()([]()[])))(()))[][][]()](())[[]]]]([][[[]](())[((([()[]]()()([]))([]))(((([([])]))[]))())]])[]]()]](()[]([[]][((()[]([]))[[]])([]())[([][()]())([([[]]()[(())()[((((()[(([]))])[]))[[][]]()[][][()]())]][[[()(([])()[])]]]())][[]])(()[])[[([([[[([]([[()[][(([]([][[]][(()[])[()()[[]]](())()[[([[[]]][[][]()])(([]())[[][[[][[]()[]]][]([])][]([[]])([()[]()]())()][]()((()[()[([[]])][([])[()]]()]))()[([][()])((()))[][]][])](()())[]]](()())([([[]()])()])()[](([])(([])))(()[[]([])]))))][()[([][[]()[]][][([])([])]()([]))[]]()(((()))[[][]()](()([])()[]))([[()]])]][()]([][[[]]](([[]])))]))]()([[()()]][])]][[]]())])()[]]]]])[][[(([]))[([][()([()[]])()])]([])][]([][])])))[]])])(()(([()]()))[(([(()(([][][])()([[([[]])]][])(()))([[]]()()()))()[][]][[]])[[][[][()([]())][(()())[[()]()[[]][[]][]([[()]]()()[])]([(())([()]())[]([](()[(([[([[([]())]](([]([[]](((()())(()[])()(())[()]))[[[()[][([[()()[[(()[]([[]]))([])()()]]()](([[([])]]()((()))(([]))[(([()(()[])()((([][])[[]((([[[[[[]][]()]]][][([])[()()](()(()[]))[][[([()([])])[[[(()[])()[]][](()(([()[]([[[]]][][[[]]]((()[[()[]([([]([]()))](()()))(()[])[([[()[[][(([()()()][()[[][]()[]((([[([[[][([((([[((([[][(()()())[][]][]][]))(()))()](())(())]()[(()([[]][[[()][[[]([])[]]([]())]]][[][]]))][(([][]((())[][[]])))()])(([])([][[]][[()](())])()(())()[]))[][][[]])])]]][([][][[()]])[]([[]](([])[[][[[][[]][]]][([[[]()]])]][]()()))][[(([[]]([])()([][])())[])]][[[][[]]([[]]())][]]([[]][(((()())))][(())[][[[]]][([])[([])]][]][[]][()]))()[]]]())[][])([()(([[[[]]]])(()))])[()])]][([]([()()]((()()()()(([])((()()[])(()))()()[][[]]))()))())](([[()][[]]](([](()([[()[][]]])()[])[([([(([](()[][])))()()[([])]])]())])))))()[])()[]]]]][])][]()]([[(()[]()()())]()[[[]][[][([]([]))]]]])])))(())])[[[()()()]((([()]())))()][]][](([((())[])])[[([](([][[]]))[]())]][()[()][[[][[]]][]([]()[])[([])[()(([]))[[([()[()((()())()([]([([[]])[[]]])[[()(()(())([()[([()[]])()[[[([])][]][]]([]()((([])[[()[[()[][](())([])]([][]())()()][]([])[([])[[[]([][])([][[(()[][(())])(())[[(([[]]((([]))[()[(([][()]))]])))]][]][]])()(((()[([[][[]][]][])[]])())())[()([[()][[]([])]()()()]((([])((()([([[[]([[][([()])](()[])()])[][(())]]([()][])][])])()))())([()[][[]](([]([[([])]([][]([][])((()))())][[](([(([][()]))](()))[[[]]([](()([([])(()())()][(([][()][]))(())[(((()))())[([])]]([])(()(()[])[]()())][[][]]([[[([])]]](([[]](([[][]]())(()[()([])[[]((()([]([(())]()[]))[]([]([[]()()[()][][](()([()[([])(()())()]([](())([[]][(([])[(([])[()()(())][()()()(())])])])[][])][]))]))[](()))[])]]())([[]([((()()((())[]))[()[]][])][[([[()()]])()]]())[()]](())[]()[](())()((())))))(([])))([[]])()()(([[(([]))[][]][]])()[([]())][])[[()[]]]()[]([]))(()()([[]()])))[][]())())]()(([]([][()(((())[]))][]))[[]][])())][[([([[[]]])()][[][]([]()[][][])(()()())][])]()[([[[][[]][]]])]([((()[][][])[()[(([()][](())[[]](([((((()[]))()[][](())))[([])[]]([](((())))[[[]]()()()]([([])]))]((()))[][[]][()[[()([])([([[]][])[([[[][()]]][])]()][][[[][[([()])]]((()([]))()()[]([[([]()[[[](([([])([()])[[]][]][][])([])()())[[]]]])[][()()[][[]]]][()]](()([(()[[]][])]))()))([[]])[[([][][])]][](([]))]([])[]][(()())()][][(([]))[]])()][()]]])))([()][])[])[[[[(()[[[]]]([])(())[[]]())(()[(([]()(())))])()]]]][]][]]())[](()[[]()])])]([[]])[])))])([])([][](([][()]([]))()())))(([(()()[]([][])[])(())]()[]))())]]()[][]][(((())))]]][]](([[]]()()())[]))()[[()][][][()]][(([][[([][])][]])(([])[])[])][])(([()[[([([][]())()]()[[][[]]])]]][()][[([]([()]([]())))[]]([][[()]])]()([]))))]]))]([[[]]])([([[][](([]()[[[()]]]))([](())())])[][()]]([][][][[()][[(())[]]]]()))[](()([])[[](())]())][])[()[]])[]](())()()][]([]()))((()))()()()][(([[](())[((()(()[[[]([])]]))()()([[(((()[]()))[(())])([([][([(()([]()[]))[[([[[][[()]]]]())]()()]])[()[]([[]](()))()]])])]()][](([[][]])[][][[()[][()]]][][([[]][[[()]]])()()])()[[](())[[]][]]))()]][[([]())[[]][[]][]()()()]([[]])])(([()[[([])][]()[]][]]([()]))))[(())][][(())]]][[][()([[([[[()]([[]][])][[[()][[]]()]]])][()]()](([[()()[()[()]()[]]]][[]])[[][[]]]))](())[(([])()()[[]])[[()[]]][[[[]]][([[]][][()](([(())(())]()())()([](()))()([]([]))))]]]]]][[]]]([()][])[]])[]([]()[]))[(())]())()]()]][]]]]()([]([[][][([[()[[((()))([])]()[]]]])([])][[([[](([(())([[]([]([()()][(()[])[[()(()(([]))()()[(([]()([][[()[]]((([]())())((()[]))[]((())[[([[([[]]())(([[]][[()](()(()(([((()))[[]()]]))(([]())[[]][[()]])))](([])()[][()[[[][]]][()]()([()[]]())[]])([[](([[][[]]()][]))])()))]][[()()[[]]][]()(((()([[]])(((())[])[])[[[[[][]][()][(([[(([[[((()))]]]))]])[])][[([[]()])()]()](((()[((()()[([()])][[(([[()]])())]]([()]())[])())](([[]](())[]()())[([])[(())(()()([])([([][])([[[[]]()]]([([]((([])[])[]()())[(()([][]())())])[]]()([])[([[][]][[[]]()]()([[][]][()]))][[[]][[][[([])][()](([])[])]()[]]()](()[([][[(()([]))][()]]()[[]()[(())][[()()][[()(([]))()][[[[]]]]()[()()]][[]][[()[]([][])()([()()][][]([([])]))]]()][]])()[]])[][]((())[][()[]])[(())[[[][]][()()(((([])())[][[[[](([()()][([([((()[]))]()[[[()][]()(([]()))][][]])])])[](((()()(())[]((([][()()()][[[([()]())][([[][()]()[][](()()[])])([])]](())])))[[[()()](([][]))([[][][]]()[])]]())()())))()[]][[][]]]]([])[]))[((())[[[]][[]]]([]())()()[])]]]()])([])[[[]()([])[][()][[()[]]][[[[[][[]]]([])]]()][]()]][[()][()[]()]()[([[[][([[]])][][]([])]()])]])]([]()[])[[]]))]()([[([[]()][[]()()][()[((([(([]())())[()[]][[()][[(())]([[]])()([([])](([[]()()]([[[]]]))[][]))](()[])](()([()][]))][()([()([()(([][[][][]][()(([()][][]))([(()[])(())[]])[][([])()]]([]))[()()])][()][([])])](())[]()[]()[([]())()[]()])[]])[[]()][]([][()])[([]()())()[[[]()(()([[[][][()[][()[]]]]()[()][][]][][[]][][()()]))()[[(()()([](([[([])([][](()[])()())[[([])[]]]]()()([()[()](([][([])[]][(()())])[()][][[([][][((((()))[])([([()])])[][()[()]])])][()()][()]()][([]()[(([]))[][][]]()[][])]([()](()([(()()()[()][[]][])]([[]][(((()())))[([]()[])()(([]())[()[]()])]])(()(()))(()()[])))()()))([[[]][(([](()((()))))[][[]]((([()[(())]][]))))]][])]((([])))([])[[()]])])))((()))[()]()())]]()]()][]]()[])[])[]]][(()[()()[[([](([]())))[][()][]]]])]())]])()()]))[]))]]][]()([([[]][]()[]([])[])])((([()][][])[(([]()))()[]]())[()])())()[(()[(())])()(([()]((())))(())[[[]]([])()][]())](())(())))])[[((()())[][[()[]]])][]]]()](([])))[[[[]][][][][()()([[][[][([[[[()]]]][(((([[(([()])[])][[([[[][(()([()[]])()(([[]()[]()][[][]()()[][[((()))]()[[]()]]()][])()[]))()[[]][]]]][([([()])()[](())])([])][]())()]]()()()()[(())](()()[[](()([[[]()]])[()])]([(())(())(([](())(())([()])))]))[]()[(())[()([])([[]([](((()((()))))))[(())]][[[()][]()()[[()][][](()[])]][[([])[](()(()([[]][(())]()[][([])()[]])()()([])[()]))]((())([][()[[(([[][][[()()][([][][]([[]][][][])[])][]]]())[](([()([]([[[[[][]]]]([()](()([]()[])))()][]()([])[()](()(([][]()))[][(())][()][()]((()())([()][][]())((()))[]))(([()])[][()()([[([(())[()[][]([][]([]))[]]])[]]])()][]()[()()][][[[]([])()[()](())]])))[()[]]][()])))]]()])[])[[[[]()[]]]()([])]]()])]][]()])[][[]](()())[[]()][][(([])[[]()()[]()])])[()](()[()([][[()]])][])))])[()]]()][[][](((([][]([])())()([(([][](())))]))())())]])]([[[[(()(([()](([[]()[][]])(())[]))([])((()[(([[][]](([]([()]())[][][(())[]][])())())[]((())())([[()([[]()[([()]([()()[]()])[([[()(([]))([])][()([(()[])]()[()][([])()])[[][[]()[]]()]][[[]][]]])][])][(((([[]]()[])([()[[(()[](([])[[()[](()()()[()][[]()[((())[(([]))[[]][][][][]]([]))]]())()]]()[])[[]()(()[()][((()((()[()[[][]()()[[[]]][]][]][][][([()][])[()(())]()()][][()]))([[][()((([(())()([([][]([(()[[][]][])([](()(()()))([]()[](())((([[()(()())][]()]))))[[]][]((((([][()])[][[]][(((((([[[[()]][()]]]()([[]]))))[]))[])][()][()[][[](([]())[])]])))))])()([[]]()[(([])[[(())[]]])[][][[[([][()](())())[[][]]()(([([][])[()([](()[[]])[][[]()()])([])][[](())]]))][]]]]))]())(((())))])))[()]]])))[[[((([([([(())([([([])([[][()(())][]()])()][]([]()[[][]]))[][]][[]([])([([[(())([[[](())]]())()]()(((()[](()))))])]())])()])])][([()][[](()([()[]([[]]()())]))]([()()[[([]())[]]]]))[[][([])]]([])][])[()(())[[()[][[]][]([([])])()]()]]))]]](((((()))[((([([()]()[]()())(([][][])(()))])))]))())][][])]([[[[([[[]]])[[]](()[]()[])[]][][](())]]]))]]((()))]()))[()[[()][]]](()[][]())))][[[[]([()()][[]()()([()]())])(())[((([](()[][([(()[[](([[]][[]([[][()][]]([[]](())(()[]()[[]][[[()]][([])[]]])()))()([(())[[]([[][()()][(()(()[])[])[[]()]()([[]][])[()]()][]])[][(())][]]])[([[][]])](()[]([](([[]][]((([][[][[]]])))))[[(([][[]])(()())())]][[()]][][[][[][]]([])()([])](([()])([][[]()]([]))()))[()])](()[])()))()([])]([[][]]())())])()[[]((([])())[][[]](()))[]]])([])([()(()[][](())[[[()][()][]][][][()]([]()[()])]([]())(())()()[[]])(()(()()[()](([]()())()[]))[])][[()[([][[[]]])([[]]([][()[]])()[])[]()[([])]][[][][][[[]([[([]()[[](())])]])([])]][[]]()([]([[][]()[((()))()]()][])()(([][]([]()()[]())))[[]()[([[[]()([])]([][])]()[][][[()([])()]][])([])]()]([[]]([])))[]]]])())[()]))]]]]])]]()))[()[()()([([()](()))](()[()[]])([](((([][]))([]))[[]]())[([][])]((([][[]][[[()()()()(([[([][][])([[]])]]))]][][[(()(([][][()[]()([((([(()([[]](()[()()([])(()([]))()[[[[[]]](()[][()([]()([[[[]][][()[][][]]]()[][][((((()())()))())]](([]))[][[[]()[][]]([])[][()()()]][])[(()[])[](()[])(([[()](([[()[]]([[()]][[]()(())([[()[()[]][[][([])]]]])]()[]()())(())()()][([])(()[])()][[][(([])([][][])[]([][[[([([([[(()[[]((((((()([[]([()[[][[([][[[(()[[][]])[]][]]])()()]([])](())[]]([[[][]]])])()]([])))())))(([]))(([[()()()[]]()]()))))[[[][][]][([()[()()[]]([[(([][([][])])[()])]([[[]][[()[[()]()()[[([][[()[][[]([])][]][]([])][[()]])][]][[[][[]][]]]]]()]](()))(()(([()])[()[[]]]))])()()[(())][]]()([][[]]((())[(()[]()[][[()[()[][]](())][()]][]()(([])))()((()))[]])))][[][]](())]][]())()](()[[]])[()]()])](()))])((([([([]([]))()])[]()([[[]]])])))]]((([]())))()])()(()[()((()()))[][][[[]]([[()]()[]()()[]][[]((([[]]))(([(())])))(()[[]])()[()[[]()]][([]()([(([[([()])]])([[([])[]](())[[]]()])(([]))()[()])[](([][])[()(()[])[[[[]]][]]])]([])))]])]])[]()[]()[])(())]]))()]))[([([])[([((((()[[]]))([]))([[]])(())()()())][([[]][])])][()()(([[([])]](()[]([()([([]())])[][][]])))([]()[])[])]])([])]])])()]([]([(())[][]]))()]]((()())[()[]]())[(())][][]([][[]()[]()])))[][[[]]][[][]([[]([()][]()(([[[([[()()([([([[]]()([](([])[((([()()])()[]))[[]][]])))()[]]())]([]((((())))())))([()][][][][((([]()())[()()[]])([()][[(([]))](()[])]())())][]())()(()[])]((()))[[]((()()()[[](([]()))]()[][]))]][(())])([()[([])](()(([(([()][])([](([(()([])[([])])(([([[[[][()[[][()([])[][()(([](())([])))]]()[][]]]]]()[[[[([])(([[[[]()(([]))][[()[][]][][][[[([[[[[[[]]]]()]][([[[]([]()[])][]])][[]]])[]()((()))(([[]])()[]([(()(()([]()([()[([()]())]]()([()])(([]))()[]))[])([])[[[]][]]())(())()](()[]))[])[]([(([()]))]())]([()[[]][]][[][][][(([[[[](()[[([][](()())()([])()()[])]]()[][((([[]]())[[()][]([([()[()[()]]][[()][([])]])[]])][[]])[()][[]()])]()()())()][]]])[]())][][(()[])(([]))]]())[(([([])]))([][[()[()][[[]]]](([])[][(((())[]()))][[]][[(([][[][]([[[][[]()[]]]()[]][([])][[](([])()[()[()[][[][(([])((([()]()))[([])()][])[]([()(((()()))[[][]]()())]()())[]()())]((()(([([]())([()(())[[]()[()]]()])()]([[]([])][])))[()[([][((()))()()]([[]]))][](([]))]([(())]())))][]]([][([((())[]())[]()(()[[]]([][])()()([()(([()([])]()[]([]((([](([([](()([[()]])[][[]](([()])))()[])[][]][[][()]][[[([[([])]])]](()([[(())()[([[][][]])[]]]()])())]))()[](()))()[([][]([[]()])[()])[]()[([])]])))((([][][])()()))()))[]]))])])[([])]()()]())][[][()]()])][()()])[[]])]])])[]][]][[[][]]]]]]()()[[()([()][](([]))())]]]))[[][[()]]()[([][]())[[((()(())()[])())()([[()]])]]([](()(()()[[()]])[[]])())]][[]][()(()[()[[(()[(())[][[()]()(())]()([][][([]([]))[()([[[]]])]][](())[[(()[][[[][]][((()))(()([]))]([](()))][])]()][()()()])][][][]([][][])[])]][]])]]]](()())][]])]))()])([()[[][]]]))[]))])()[][]([([])]([])[])(()[[([()])[((()[()]())[[][()]][(([])[()])](()))()[()][]()]]()])))(())[]][][[[[][]]]])[]()][]([[]])]([])])[]))[][()(())()[][][[[]][]([])]]][])[[]](([]()))[]])()([][]((()()[]())[[]]))][[][](([]))[]]([])[[(()[][])[][]]]))())[]][[][[[][]]]])]))[][(()[[[]]()[]][([[][[]()[][((()))([]()((()()))())()][()([]())]()[[[]()([])()]()[[][[[()[]]](()([][][][][[[][][]][](()[()([[(()[]([[][()[()]]]()[(([()])()[[]])]()))]]([[][][([()[][]][])[][()][()(()())[[()()][()[](([])[()][[]])((())[[[]][()[[[]]]]])]]]]])[[]])([[()]()][]())])[]]()[[]](([[]()][[()]]))[[]]()))[()]()((()[[[[[([])]]()]][(())]][]()))(())]][][]]([()[[][]][]][[]][])]()])])](()))[][(((()())))]]]()])([])))([[[]]([([])])(()(())(())[])]))([]))]][]()[]]())(()))()))]]]])]()][]())]()((()))))([()]))]([([([])([[()]])()])[()]()])[])[]][]]()]([[][()()()()[[([()])[(())()]]][](())[]]]([()]))[()]([()]([()][([])[()[()()[][]]([[]][])[[[()[(())()]](()[[]])]][]]])))[([[][]])]([[]]))])][]))[((()))]]()[[[()()]()][(()([[](())(((([[](())]([]())[]))[]()[]([[()((([])([][([]([()][[]]()[[[]]()])())[]])()))]]())))]()()))]])][]()()([][((()[]())[]()[[][]])()][])(([[]()[()[][][]](())(())()]))](())])([])[](()()(())[])))))][[[[([(((()(([]()))[()])[])[][])][([()])])](())]]])[[]])]())()[[()[]]((()([]([()])())[]))][[]])[[]]])[()][([()][(([][[([]())][([[[[]()][([(([])[])][])(((()))())]][]()()[()]][[]]())[]](([[((((([]))([()[]]))))][([[(([]((([[()()[(([][[()]])((([[]]))(()[])))()][[()]]()]()][[]][](([])()[[]([]()(())[])](([])())())[[][()](())([])[[]()]])[[][()]()]))))()([[]()(([[]][])([()()])()()[([]([][])()([](()))[])()])][[][]]())[][]([])([])]([]()[([()[([])[]]])()]()([])[])][][[[()([[]])]]()][][()[]])](())])(([[()[()]][]()][]())())[][]()[[(())]](())(())([]))])[][([[[]()]])[]()]([()(())]))]()([([[[]]])[([])]](([()][][[]()[[]]])()())[(()())]))([()][[[]]])()](())[][()([[](([[[]()]]))])(())()])[[]()[[[]][]]]](()))([([][[]](()([[(())[]()()][(())(())][[[()][]]]]()[[[[([]([]))([()][])]]]([]()[[](()[])]([]([][])))][[([]((((())))())()[()[]](([]))[])]][[](([]))])()))]([[[]()[]][]()[]([](([()()]([[()()]][([])])[][[[][]]])[[([][][][])(())()(([[]])[[]])()][[]][][()]][]()()[]))(()())])[[]]([]))(()())[[]([])()][[]](([([(([[]]((()())[][[([[([()]((([(([()[]][][[[[[[]()[]](([([(()([[()][]()()[][[][]][]([][][])][]))][])(()[])[([[][]]([[]]))]()([]())]([[([])]]))([(())([][]())]))[]](((())(()([()])((([()][]))[[]([][[[]([])]()]([]([(([])[])([[([()])]()()]())[()([[]]()()[](()[[[()(())()]]()](()[][])))()[]]]())([])))([])(([]([])))[[()](())[]]()[][[]]](([](())))())(([[[()()[((()(((()(()([[(((()()[]))[([[[()[([()][[]][])[][]](()()([])[]())]([])]])[(([(((()[]())))[[](([][])())()()]]))]])][([()()(()())[[]()][][][]])][]([]([[(()()[[][([[]([]())])([[[[](())]]([])[]])()(()())[([[][][](())()])[]]]])()[]]][][()[()([])[]]])[((([]()())()[(()[()])[[]((())[])[](([]))]])(())[((([([])])([()[]]))[])])()])]()[][()][]))()[[]])[[]][([(())][])])[]))([])[()])[]][([][])]][[[[]()]][][]([[[()[]]([]()()((((()))[])))[[[]]][[[([])[()][()[]]]]][]()]])][]]]())))[])(()))()]]]([])))[]]()[]())([[(([]))[]([])]]([[]])))))((()()))((()()())([()()]))[(()[](([])[])()[])]]])([])[]((())([]()()))]()])))][[()(()()[((([][()][([[]])[][([[()([])[[]][[]([([][[]])][[[[(()())([])[][][([()[][]])(())[]]([])()]()()]]()])([][])]]][][([[](())])])(()[[][]][([][])][()(([])(()[([[]])()][()()]))(()[][(())[]])]())()]][[]()([])][[[][[[([])]]]]][][[()()[][]](()[])][([]())]))[[]](()))])[][]]([()()]()()())])[[[]][]]])([(([[][][]]))()([()][][](([[]])[[]()[(([]))]]))]([()])([((((())[](())))[()[([])]])()]))[[]]())]]]][])))([]))]])[](())[[(([]))(([])[])]]())]()([])(())))[()([](([])[]))]])]]()[](((()[()()()])([[()[][(([]))][(())]]])()()([(()[](())(()())[])(())([]([]))[]()([([]())])]))())][])([()])])])[()]([]))[]](([()]()[]())[]())))[]][()][[]]())])][]([[(((())([[()]]))((()()[[[()]]((((()))(([[[]]]((([([][()])[](((([])))[(())(())[()[]]]())]()()[(((([](())))))[]])))))))[][][]()])))]]())()()())[]][[([])(([])[][(())([[()()][[()(([[[([[]])(())[[]()[[[(())()]]]()[][[][]([])](([[[]]][]))]][[]]([])(()())([]([])[[]()()][()][[(([]())()()[[[[[((()[])[()()])[][()]]]][()]]([][(([[[]]()]()))])])][[([[][]][][](([]()(()))[])[])()()(()[[][]])[]]()([[]])]]()[(())[[()]]])()]][]))()]()]])][][])]()()()])()[]][][]]](([])()))[([])]][()(())][]([][]([]))())()]()()[]][([[]]([[[[[(())[]]()]]][()]]([((()))[(())[[]]([])][[([[]](()))]]][]))[])([]())([[][[]]]())()(())[[]]])][[]]())]])][[[[]]][([](())[[]])][()(((())[(())[[()]][][[]][()()]]()([[]])[(([[][]])[]([()()]([]()))([()]))])(()(([()[]]()()[(([[]]))()]())[[]]())()(())))]]][])()[][((((((()[[]]))))))][([][]()[]([()([[][[][[([()])[()[]]]]]]())[()]](())))[[]((([][([]())]))[[(([]()[]())()([])[[()]()([][[]])])]([][])][][[()]])]](([][]()[[]][]))][]]]()](([[[]]()](((()))(())[[]])))][])](()[[([([])[][[]]]())]][[[]]])()[]]]())[[]][])()[[]]][[(()[[([][]())[[][]()()]]()[(())(())][()]][](()([]())[[()[]](()()[])])((([()][])[[()(()[()[](()()())])][()]][[](([])[[()()()]][((()(()(())[]([]([[]])))([]))[])[((([]()[([])](()[([()()[[]()]][][()[]])]))([]()[][])[([(()[])])[]][()])())[]()[[()]]()[](()()(([])[]))][[[[()([(())[[]([()[]])()]()])][][()[()]()][]]()[([])[]]([]()[([()[()[[]]]][])(([]))[[[]()][][[]](()[[]][])(())()][]]()((([([()])][[]])()[])))[(())[]]((([()][()](([](())))[([()][])])))]]]()[]())[[]]]))[]()[[][]()[(([]())())[((()[([()][()[[]]])])()([]))]]])()[()]](([][])())[][[][([[[()]]])]]]]())[]()[]()[[]()][][()]()[]((()))[()][][]()((()[]((()[()([]([])[]())[][]()([][]()(())()[([])])(())(())])[]))()())()()()[]()[][()([[[[[]]][([])[][]][([])]((()()((()())([()]))))][[]()]()()([])[]]()[])][[[]]()[][][]][]((()))[][][[([[([][])]])[][[][[]]]]][[]][][([[]])][()[[]][]]()([]()((()))([[](([(())()]()))])(()))(())()(((()(())))()[][()])[[[[(()([[[[]()]][([])((((()()()(([])()[()((()))](())([()[((()))]()])[[](((())[]))][([](())[])()])()()[((((())()[[]])))[[][()]()]])[[][]](())))[()[[](()[]([[([()[()]])([[]])]])((()[])[((()([([][])[[][(([])[](())[][()]())((([((()))][][([])(()()[()[]]([([](())())()]()))[(()([][][()()[[]]])[][])]][[([])[[[()([](()())[])][][()()[[([])]]]]()()[](()()[()[()([][[]]((())())((([([][])()[]]()([[[[](())]()[[]([])]][]])())[[][][[]()()]][][]))(()))[[([(())])()][([()[]][][[]])][]]]])]][([(([[[]]]))()])[]]()[]([()()[[][]]][])])))][()]([]())[([])]]]([[]()[([([])([]([]())([[]][])(())([])[[]])]([()(())[(([[[]]][]()))([])]]))[()]]()])[[][()[((()[]()()[[[[][]][]]()([()()]())([[][][[([](())[([])[[]](()(((())[([[[()[()[]]()]]([][[[]]]())[()[[]][][([()(()[]([(()()[])[]([([[]])])()]()())())]())([]()[])][[[]()[[[()][(()([()[()[[()][[][(())[[()(())][[][[[]]]]]]]][]]](())(([]))))[]]()]]]([][])][([][[()[][([()[](()()())([])()])]]]()()()[()])[](()(([(()[[]([])][()[[(([]))]()]][][()](([[([])][]][()]([[()]()]))()[]))]))(()())([([([])]()()[][])[][]]([]([][]))))([])()[(([]))](([]()[]))()[]]()[()][]]])]((((([[]()])))([]))))))])([])]]])()][]()))[()]()(()(([()]()())[])[][])((()((()[[]][])[][])))][]]])()(((()(()[[]])[[]](([]()((()[([[[]]()([[[]()][][()]][(([])[()]()()[])])()])([]())[[]]([[()]][])[]]))))())[])(([[(([[[(()[[]])()[(([((()([]()[]))[[]])]))([]([()([]())])((([[[[[]([])()(())][]((([[[()]([[]]([]))[][[()([([])()])]][[([]()[])()()[()]][]()][]]]))[])([])[]()([[]][(([]))][]())[][]]]([[]()])[[[[([])]]][]()([[([([])][(())()[()([](([()()([][]()(()()))][])[[()()[]]])([(()([][]([][][][][()]())())[])])[[[]([][()])]])][][()][[()]((())[()(([[()([][])[]]]))])]]()([[()][(())((()()[()]()([]([([[([(([]))])]])][()][])()()[])))([]([[[(())]]])([]))]()][()(()[()[[([()])](((())()[](([()]())([(())()[]][][[]()[]()])))())]])]()[])[(([]))])(([[]])[(([][][[([((([()]())))()])]()]))])()(([()[](()[[[]]])])[()][])]](()[][]))]]))())([[[()](())(())[[([]())([()])()]][[]]]()[[[]]]])())]([[()(()[][])]])()]]()][])(([][[()]][()(())[]()]([]((([[]]))[](()[(()([()])[][()(()[]()([([()[]])()()]))]()())[()]])[[][]][])(()[])[(()(((()([])))))()](()[()][[()][]])))()(()([[][[(([]))(([[][]])([]))][]][[]]])))[(()([][[]])[]()()(([][()])[()([()])])[([([[()()][][]])[]])][][()][][[(([]())[()])()]](())[][[](())])])[]]])))())()()[]()([()])())])[][[][]]())]]()[][]())()[]]])([[]]))](())]]((()())[]()())][[()[](())(())([(([](([[]]([()[[]][][((([]([])[])))]]))[][(())])[][]))[[][]]()]([](()[[]((([()(())](()()([])))[][][]((())[[]((([([()]())[]][()])))]()(()())[])))([([[]])()()]())][])))][]]()()[()]()[()][]()[](()([]())()())[(([([][[(([(()(([[()()]((()))[[]][([[][]]())(()[()[[][(())[]]]]()[((()[[[][[()]]()[[[()[[[([[[]]])()]()]]]]][][]][]]()([[()][[][]]](())[])()([])[])[]()())])]])()[]))][[()[]][(())][[[]((()[]()()[]))]](()([]([()])[]))()])(([])))][([])]]())]()[[()([][])]]([[]][])))([()[]()][])[(([]([]))[])[[]()()][]()]][][](([()]()[])[]([[][]()()]())[([()]([](()()[(())()[]])))][]()[(([]))[]]())[(())]()()(()[[(()[])]])[]([])([()(([])[])])[[]]()()[][(([(()[])])([])[()][()])(()[()])[]()]((()))[][[]]()[[][[]][()]]([])[][]()()[([])][()](())()([])[[(())]]((([][]))([(())][[[]([][()]([[[()]()[]()()()[]]][[([()[[][][([][[][]]())](()[])]])[()[]()]]](([[[]]])[()[[](([()][([[()]])][[][][([])]()]))][[][]]][()[([()()])]()[[][]]][]))[[[][[]][[]][][(())]([(([][](()))(()[])[[]])()])]])]])[])(())[()](([])([]((([][(((((([[((())(())[])][]][[[(())][()([][]([])[]([(([]))])())]]([][[(())()([][[][([[]()])[([][(()[[(())[]]][[]][][[[[[[]]]([()])][[()[[][[]]([[][]][]((([]([][][([])][()[]])))))]([]())]]]()])]()[[]]([])([[[]]][[]]())())][]()]([[[[]](([()[]])[[]][])]])((())[])])()[]]])[[[([](()[]))[[[]][]]]][()[]([][()])]()()][()()]]())[])(())[(())])[[](([]))]))()[[]])[[]([[()[]([[][]])]])[](())[[]()]([][][[[[]]]][((((())()([(())]([])[][([[]()][][(()([[]()[]])()()[])])][]([()]())))))])[][]][](([[()][]]([[()[()][][()]](([[(())[[([[[]((()[(()[])[]])(([([()])[[()]]()[(()())][([[][[]]])([()])[][][[()]([[[]()()([()()[]])()([][])]])([[]([]())](()[[(([[()([([()[]((()))(())[[]][]]([]()()()[][]([])(()()))([]))[]])[[][](())]][]]))]]()(())[])[([()][[()]([([])[]((())(()[]))](()[()((()[][])()(())[]([]))]([]([]))))]()())()()][])]]()([()][(([[[]()[(()())]]]))]()(()[](([])[])[()]))]))[[](())])]])]()]([])]][]))])[()[[(()[])[([][[[][[()()(())]([(([[]]([[[]([()][()[((([])[([])][]()[][]([[]](([])[[][]([[[[[[](())([[][]()(())()((([[]([((([[]])))](()()))[()[]()(())]()[()()][]()[[]()]])[]([()])[]))][]((())(()[[[]][()[()(()())](()()(()))([][[]]())(())][][()]()([[]])(([()]([[[][]]])()()([]())))]))([([](()[](()))[]()([([])[()[()(([])[][()()()])](())]][]))[]][]))]]]][[][[]][]][][[[]]()]][])][][][(([][]()()))([])]))[()[(((([()])[[]])([](([]))))(()))]]([[]](([[]])))))]]())(([][]))]((()())[]((([[]]))))([][]()()[][[()[]]])([[]][[()(()[][])()]])])))](()[]))()[]](())()]]()(()))]([[([[](((())[[]()](())()[()][()(())([[()(([]))[[]()][][][([]()[([]())][][[]])(()(([(())])()))[]]([])[]](([][([(((()[[[()][]]])()[])[])()()()(())[()]]([]([]())))[()]()[(()([])[](()))]()[[[][]]]()()[()]]))()([([]([[([])]]()[]([])())()[]([]))]()[][[[[]][][](((()))())]][][](([])))](()[()]()[])()((([])())()[])((())[]())(()))()[]()[[]([([[]([(())](([])()[]))])](()())([()]()[])()()[])]([[]()[([[()[[((())[((()[[]](()))[])][[[([])[]()]](()[()])])([[[]][]([])[[([[(()()[()]([[]][[]]))][([[]]())][]()][([])])([])(()())][[[(())[]]][[]([])]()[()][]((()))]]])[([[][[(()[])([()][][])]]][])]([(([])[][[[[]][]()]()])])]]]])]]([][][])([][][[](()[])()]())[()()[][[]]]())([[]()[()]]()(()(())[()[](([[()]])[]([]))[][][]([[(([]()[]))]()])]))][[[([][][])]]()[(())]()[]])(())[])([[()[]]()[]]((([])))()[])])]()[[()[]][]]])]](()()[[][]])]))][()])[[(([])([]))[]()]][([][([()[]][][])()[]]()(()())[(())][])])(((([[[][]([]()[()()]())][]]((())))))))))([[()]](([([([([])[][]])[]()][()][[]][])[]()[()][][]()]([()]((([([])][])[][][([](([[][]]((((()())()[])))())(()()))()()((([[([()[([[][[[(()())[()[([[[([]())]()]])]]((())(()))[]()[[](([[()()()[[[]](()[()()([[((()[()[]()]()))([()]()[]())[[()[]]][([()])][[](())()][]]((((()[]([[(()[([])[]()]([])[][])([[()][[()([[]]()[][[]][])]()(())][()](([])([][]))](())[]()((([(([]([])())[()([])()()]())[[[](())]]]))[[[]()[]]][][(())])[])[([])()]]]))[[()[(())][][](([][]())(())(([[[[]](([]()()))([])[]()]])))()]][([][(([]()[])[])])(())])))([]()([])[(()())((()))[][[(([()()(()[(([]))([([]([]()()[[]]()[(())])())][][][()(((())([[]()][()])()))])])()][([[[()[[[(([]()))]([])]]][](()())[[()()(()()()[()][])()][(()(()[[()[]][[()]]]))]()](())]])][[]][]()))[][]]]](()))])[]([])])()[([])]]()]]))]([])(())(())]]](([][[]][()[]()][]))][]([[]])())()](()[])[]][[[(([])(())()((([[[[]][][]]]))[]))[()[]([])[[][]]]][[]]]([])[]][[((([])(([([(()([]))][])[[]][][[(([]()[([([()])[()]()()][]([]))()()][]))([]()[[([])]]())]](()[[]][])()[]][]())))()[])[]]])([])[[()]]][]]))()[]((([][]))()[])([[]][]()()))[])[[]]()])[])[([])[()[]][]][()([])[[([([][()[]])])[]]()]][])[()][[(())]()]()[])()))[]([[]])[[()]]()(()((([[][]])()[]())))[()[][][[][([(())](()([][(())[()[()[([])([])][]]]])[([[]])])((((())))([])))][]([(())([][()()])]())]]()[()][[[()]][[][()[](()[(())(()())](([]))[()[][()]])]]][][][()[]]()()()()([])[][[]][][()][()]()[]()[[]([()()[[]()](())[[()]][]])()][]([][()](()()))[([()][][])[]](())()[([[]([[([][][()][])](())()((()))][[([[()()][[()([])]][(())[()]()]]()(()[]()[[]])[(()()([()[][]]))()[][]()[][]])(()[(()[[()()]()])]())[][](()())]]((([[[]()]][][[[]]][][])[[(()[][]()())][[[[([[[]]]()[[[[]]]([])(()(([][((()))])[]))[]])]][[]]]]()()])))()()]()()[][[][([])([[]]())[]]()[()()[([()])[[[]][]()()]]][()[]]()[]][([](())[])[([()(([])[[]](()))[]((([])))[[](())([(())])]([])])]][][()(()[[(([][])([]([[()](()([])[()])])()([])[[]])[][[[()][]][]()](()))]]())([[]])([])])[()]([([([][][]()([])(([[[()()(()())][[]]()([(([][][])([[([()])()]]))()(())(()[])()[()][]])]()()][])()((()(()))[[[(()[][([]([[]]))[]])]]]([(([()()]))[[([])()([[]([])])()()][((([])([][][]([()]()(()[()([])()]))(([(()[][][[]()])()])(()(([]([][[()]]()[[()]()]()[()([]()())(())([][[][]][]()()())()[()]()])))))()(()))([(([[[([]([[]([(()()[])()[]])[]]()))([([])])[]((()))()[[([])[][]]][[(())()]()]][[]][]()]]())([]))[]][])[][([]())](())([]))[][[]])]]([]([]()())()[]((([][()])[][(())])())[[](([()()(()[([[([])(()[(()())](([()](())()(()[]))()()()[[]]()[][][]))][[][]](()()[][])()]([([])[[]()[]][]][]))[]]())[][[][]()([][[]])]((([]([[]])[[((()))]()][])))[[[]]([[]](()()))[][[](())[]]]]))])()]))())[])])[]([][()()[]()][])])([])((()()[[([])()()][]]))[]()][[()]]()[]()([][])()(()[[]([()()[[]]]([()[]((([][])()([[]]()[([])])[[]][()()(())[][]]())[](([[]]))[]([]((())()()[[]])[]))])[])][])(())()[][((()))()][][[[]((()(()[()])))([])[[]()][][[[][[[[](())[([()])[()[]][][()[([])()](())()(()[][[]]())()][][()[[][([[[()(())][]][][][]](([]))[[([])[[]((([])))[][[[([[[[]()][[]]]])[()()((())(([]))())][(()[(()([]([]())))])]()]][]]()]([()[[[]][]()]][[]([[]])()][])([(([]()()))])()[(([()])([][[()[]]])[][][(())])[][]]]][[]]())][][[](([[[(([]))[[]]]()][]])([[]]))((()([][()])))][]]]]()]]]]]]]](())[]([()]())(()[([[[[[]]][]()]((([()][](()()[][]))[([()[]()][]([()(()[])]()(((([[]])[]))()())([][[]((([][][[(([[]][]()[][[][][]][(()())[[]()](())]))][()][]([()[[]]]())()([])[()]][])(())))[[][][()[]([[](()[[[()]]][[]()()(()[(([]))()]())[[([](())[]([]))()[([(()[[[]]])(()[[]])][])[()[[()([])]]]]][[(([(([]))][([]([(([][[]]())[()[][][]]([(())]))([[(([][()][]))]([])](()((()(()()[]))))([()]))[][]]((([()[][((())())][][(()[()])]])())(()))())([[][]])[])([[]])])())[()]]](()[[]])[[]]]((([()([(([[]]))([])[]]())])))])])]([([]())[][]([])()[[()]]](()()(())[([(()[[((())[()[]()([])(([([()])])([((()[()([(()(()))()]()[])]()))(()[[]]()(([()((()([((((()(([][])[])[(())][(()[][[()][]([[]])[]])[[[(((()()[][()])(())[[]](())())[])[[[][]]]]][[[]]]](()[])[()][()()]]))))()][()]()))[][()])[()[]][[()]]([[()]])[]][()[[([((())[([])[()]][])]()[[()]]()()([()]))]((([[]()[()]])[[(())[[()[]]]][]])(()())())]()(())])[()()]))[]]))()[]()[[()][]][](())][[]((()))]([[(())]])[]()[][]([]))(([]))]])][])[]]))([])[][]()[()]]][][]))[()])((([[()][[]]])[()[[(([[][]((()[[](([()([]([][])[()][]()[])[([[][]]([[]()]())([([[]()]())([([[(((()[][[]([]())[]]))[][([[(())][][[]()][([])]()])(())[]()[][[][][[]()()][][[([][()()][])]]]]()[](()))][][]()[(()[])[]][()((()()))[()][]]()]()[[]([]([]))][]([][[(())()[[]]]]))[[()]]][([])[[]([[][[]](())([[]]([[[[][()()([()][()](()[][()])(()[[[[[]([][])]()]()]][]()()[[([()])][([[][[(())([])((([(())]))[])()([()]())](()[[(())()]()([][([])]()[[]][(())([(()())])][()()]())()[[]]()]([]()))][]][[[()([][()[][]][()][][])([[]()()][])()()][[()][][()]]](([((([][])[]([]))[])[][[[]]]])[])[]])]]))][[]][()()[]][[()]]()]][][][()[]][]]))[]])]])([])[]])[[]]((())[[[]()[[]]]][]))[([][[]][])][]()][][]]()))])[])[]]()[][])()())[][]()][]][[[][((()())[(()[]([])[])()])[[[()][[(())]([()])()]([])([()()[][]([][[[()]][]])]([][([]())][()[][]([][][[]()])]()[[[]([()][([]([]()([][])()[][[]]))(()())()])]()[[]][][[]]]))()[]]]][([]([][])())[][][][[[]][]()[][]()[[([[]]())([])]]([()])]]]]]))([[[][][]][[(([[()(())()]][][(()())])[[[()(())()][][(()[])[]]]])([](()[])([]))()]]][])[](())])(()))][[][]([][])(([[]]))()])((())([]())()[()])[([]((([]()()[]))([][][()([()])[[[]][]][([])[]()]])[()([()]([]))[([((()))])]([][]([][()[][]()]))[]]))([][])()()[([])]([[]])][]])(())([])([(([]))]((())))[][][()(([]([()])))()[]][[()()]][()]((())([])[[([]())]][[][()([]([][][[][][]][[[()[]([][])[()()[][[]]([][][][[]])(())[]()([[[([[][((())[](())([[]][[]][()]))][][()]()([[()][]()][]())(())[()[()][[[](([][([([][](())())](([[([])]])[]))(([])[(()())[()[]()()]()[[([])([([()[[][((()))](()()[])][[]]][[]])(()(([[[]]()[]()()[[()]([([])])]()])()([()])))](([()]())()()[])[])](())]][[]])()[([])[([]([](([])([()]())[]([[][]]([])()()))(())[][()][[]][][()]))]([]()[([])()])](())()][[()[]([()[]]()[])()]](())())[[]])]()]]])]()([])(([][]()(([((()))[]]))[][([([[[]([[[][][]]][])[(()()()[[]])][()(([[[[]]]])[]()[(()()[])([])])]]()([[[([[]((())([])(())([()])([[](())])[])]((())((()[])([[][]])[][])()))([[]])]]]()(()[]([][]([(([]()))])([[]])))()[]())])()()()[[[()([[]]()())]()]()]]([[((()[]))][]()][](([[()]][][][[[([])][([])()][]]()[()]([()()])]))))]))]][])()]](()[[][[]]])]])[])()[]([][]()[][][])]()[([][])]()][][[[]()()][[]([[[(())]]](()[[]([])][()()](()[])[([])[([]())(())[]]()])[(((()[])[][()][[()[([([][[[][]]])])][(()(([]()[][][[[([[[[]([](()[])[[[][[()][[][]]](())][]])()[]][()[[[([][([[]][](([()[()[]]]))(()()))]())[]]]][][[([]()(())())]()][]()[()[[]]()]]]])]]])[[]]))]()((([][])))]]))([[]])[()((())(()[][]))()([(()())])]])](((())))[()[][(([[()[]]]()[[[[[]](([][()]))][][][][[[]]][]][]()()]()([[[[][]][[]][]]][()()()[(())()]](([])))))]()]()]())[][]([()])()[()][(()())]([((()))[[[]]][([])(()())]([[]](()(())[[]]([([([][[]()][]()[(()[[[(((()([[()]()(()()()())()]))([])))]]()]([[]]([[]()]()([])[()]))[([])])[[]][[[](()()()[][[][]([])([])[]]([()]))()]]()()()()]())])])))((([()]([([()([([(()(([][][()(())]))())[()][[[[[()()(())]]][][()][]()]]([]([])[()])[]]()())])])[]()])()(()[])()[(()(())(([]))[()]())])[[()][(([[()]]))((())()()[][[[][()][[[]()]][(())]]()[]()[([])[]]]()([]([[][()()]]()[])()([[]])[](([[([()])(([[[()[][]((([](([][][([([()()()])])]))[[()]])[()][])[])()][]]]))[[]][[][]][]]])[])[()[()[([[[[]][()][][()[[]]]]])]()]]))()][]]))[][((()()[()][][[][]()]())())]]())()(()()()[])[]()[[]()()[][(((()()))[]()([]([])())[])][]]([()()[]])(()[]())(()()([])[])[[()([])]()](([([])])())()()(()(())())()[(([[([]()([[]][])())()]])[])][][]()[[]]()[][]([[][]()[]()[[[[([](([[[]()]([([][()()])]())()]())()))][([[(([()](([()[[]]]))()([[]()]))[])[]](())()[][]()])][][[([[]]()([][]))()]]()(([]([[[[([])[]()([][[[]]][[(()(()))[(((((()[][(())]([([])()([][])()]))))))([[[[]([])]][]])]]]((()[]))[])]([[]()])]][[([]())[]()([])]](()([](([]()([[][[]]]))))())][(())])[][][((((())[]))(([])))[][]][()][]((())))([]())[()[([])[[]()([][()])([])]]]())([]()()[])()[[()[[][([[]()()[([]()[][[][][][[][][[]([[]])]][]()]())[((()))]]()])[]()]((()[]))(()(()([]))[()[]()](()(()()[[]])[])((()[])()))()]()[][([](((([(())()([([[()[[[]]](()((()((([[(()())]([])()[]][]))))))[][]]][][])[()]])])[](([])))([([])][(()[]()([][[()]([])[][]])())[]()]))))([[()][[]][()[((()))](()())[([])()(([[([[[]]])[(([()])[[](()()[][][[]()]()[()])]()[])[[]]]()]]))[]][(((()[][]())[]()[[([])[[]]()]][][([][[[()[]()]]]([[]][(()())[[]()((())[])[[(([])[()()([(([(((()))())][[[[]]]])[[(()[])()]((([[]]([[()()](())(())()])([[]()])([][][][]))[]))(())[]()])[]][][])])]]]][])()[()()[[][][[[[()()[[()[[]()][](([]))([][][])]()][[([]([](()))[]()()()[[]])[]()]]](([]()()()())[][()(())])]([()](()[[]]([[](())]()[][()()])([[]])[])())][([]())([()(([][]))()])]]]])][(()())(())][][[][[]]]))(()()([[]]()))][[][([])]][[]]]][])[]]][][](())[([])[[][][[(([][])[])]]]]]([][])()][]([])][(((())))]]()[((()[])[[()]])()()]][((()[()]))])()()(())()()([[]([[[][()]]([]([])()[()[]]([[]]))])])[[[]]]((((())[[(()[[()([[((([][]([]()[[]])[][[()[]]]))[]()()()[[][[]()]((()([[[([][[]()([])[([[[]()]()[()()()[((()))[[[][([(())[[]]])[[[][][[]]]()()([[]()[(()[])()][([])][][()()]][])]][(([]([[]])(())())[[[]]][[]])][()]]]()()([]())]]])][]([](()([]([])([([]([[]]([][])(([])[[[]](()[()[([])()(((((()[[()[][]()](([(([(())[][]][]()([][[[][[]((()))](([[]][()][(([][][[](([]))]())[()[][[(())][[][][([][[[][[]][()]][][]][])]][]]()][[()[[()[][[()]([])[(())()]()([](())[[]])([[]])]([])[]([]())]]()(()([])((())[]()())([[()()]]))](()()[[[]]([[]()[[][]]])[[((()())([([[][][][]][[]()(([()][([]([])[][][][])[(((()))()(([([][])]([][[]])))([()][()(())()]))][()][()]]()((()))))(()[[]][[]([])])[]([])])]()()))[]([[][()[()]][[](())[()][]]])[][]](([()()]([[]]()))[])[()(([]))[][]][]]]())])]([]())[][][]())()([])()(()[[]()]))([])](())])[[]][])[][])][]))[]])[()])))[[([()])]([()([[([()]())()((()))(([])[([])[[][]][()]](((()))))]()[[]]()][](([(()((())[])([])(()))]([]))[]()[()]))()[]([][]()(((([[()]([()[()[[[()]]][]()][[]()]])]()[[]])[([(([()(())]))](([[()[()[]()[]()()]((()()))]][][[[]]])[[[()]]][]([(())(())()[]])())([[][()[()][([[[]()]])]][]]))])([]))[])())[([][[]]()[[][[[]]]](())())[[[][[][()]]()][]]()[]()([[]()][])]])[][(()([([])()]()))][()]])[]]((()())(()))])][][]())((([][((()))]))[[]])[[[]([])[]]][][]))])))[][[([()])[[]]()[(([(([]()[]))]())[([[[([[[([[]][[]][[[[[[[((([(([]()(([]))[][][[()][[[[]((()[][([]())[[[[]][]([][]()[[]][[][](()[[[([[[]][]]([]))[]()[]]][][[[[]()][[]]()[]]]][(()([])((()[(())])[[[]]]))()()][[][]()[]])[]])]()]]())(([])[[[]]]()[()][])([()])(([]))[][])]][]([()](()))[((([]()[]((([()]))[]))()))]()]()][]))])(()())[][][()]))]]][[]]]]][()]])]]][][]()[])[[]([]([[]])[[[][][[[[]]]]()()()[]]()[][[]]][])]()[]](())()][[]](())])])([])([](()[]((())())))][]][]]([[([[]])[]]])[][])[][]][[]([([((()((()[])[]()[]))[[[(()(([[[()[]][]()]])))][([([[[]([])]][])][])](([()]))()([[(([])(()[])())([[[]]])[()][()]]])]])(())()()]())]([])[][(())])])]]])))])()]])]][][][(()[])[[[]]]()])]()]()((())[])())((())))[]())[][[[[[]]()]()]][][][][][][][][]()[]()(((())))()([][])([][()])()()[()[]]([[]])[]([()[()(()())[[]](((((()(([[()[()[()]([][[[]]])()]]()()])))()[[]])[()][])()()))([][[][]])[]][]])(())[()()[][[]]()[]](([]()()))[]()[][][]()[()[](()[()])([()])]()()[[]][[]][]()[][[]]()([[]])((((()((([])[][[[([[]([])]())()([]()([()]))]]][]([][]))[(()()([][()])[]([](((()[[()()([([[]][[()([])[()[[][][[()()][]()()][[()]]()][()()]()[(()(([][([])[][]([])([[]([][])[[[](([[]]))[][]()(()[()(([][]))][()][])]][()()][([])]])[((()[]))]])))(())[](([]())([[([(())])[]]]()))()[]]][()[]()]]])]()[][][()([]([[]]([]([[]()][]))[]))])()[]][](((([[([])]])))([()]))[]]))([()](([]))))))[()[]([][[]])]([])])[]())))[[(())[]][]])()[]()()([[[][[(((()[]([()[]()[][][[[]]][][[(())(()([()]((())))()[[][]][])]]()(()([(())][([][[]])]))[((())())][][][]([(((())[]([([]([][((())[]())[][]])[]())])[[]])([(()[][]()[(()([][]())())])]))[]][[]])]))))()()][][()[()]]]()]][()])([][][()][]([(())][]))()()()()()([[]])()([[]](()[]))((()()[]())()())(())[()[()]()][]([][()[]]()([])())[[]][][][[]][]([][][])[][[[][(([()][]))]]][]()[([])[()]()([([[(())[[[([][])]]()]]]([][]))])[([[][][]])[]]][][([][()[]]([][()]))][()]([[[]([]()[][]())[[[]([])(()[])(()[](([[()[[]]]])())[]()[][])()()()][()]](()())[[]]([[]](())())(())]][()[]](([(()[[](())[]([][()[([(())[][[[()]](()(()()()[]))[[]]]])[]](())(([()[[]()[](()[[()]]((()())[(((()[[]]([[[][]([()[]][]([[]][[([])(()()[[[]()[([[[]][]([][])]())[[]]()]]])]]([()])))]])[]))((()))([]()()()[]))()()[()]])[][])[[]]]]))])])[][][]][])))()(())()()([](()))()[[][()]][(())][][][]([[][][([])[[[[([()][[[][[([(([([([([](()[[][]()]()[(([[[(([]([[][[(()(()))([])]]]))())]]([](()())([](([]))())[])][()])())[]])())()(())])]()([])()[][])][])())])()(([]([]([][()])()))(([[][(((())[[(())[[(()([])()[[([()])()]]([(([(([[[(((([]))[[[]()]([]([])())]))]()[]()[]][()[][(()()[[(())[][]([[](([((((([([([]([])())])((([]()())([]))())](([(())[]]))[[([])]()]()[(([()()][()()][[[[()]]()]]()))][][]()())[[()()]([])([])()])[([[([()[]])]])][()()])[]([])))])[[()][[][()()[]][]]](()[]))[]][])]][][()]([])([])[])]]](([]())[()])))]))()[[([])(())]()[][]]]))]][[]]]][[][]([])[[]([[(([()(((()()[([][])](([()[]]())[()([()])])[][][[[]]()[()][]([[[][[]()()]]([])()])()])())[]()([])[()]())(([])[])[]])())]](())[()()[((([]([(())]())()[]([()[]]))()()))]]()[[()[]][[[]][[[([([()(())])]()()([]))()]]]][([]())]])]()]))(([[]([()])()([(([[([][])][[[]]]][]))]())])()[]([]))([[[]([[]][([(()())])(())[()]()])[[][()]]](())([][]())(())()](()[]()(([[]]((()))(()))))([](()))[()]())]][()[()[[([[()][[[[()]][[]]](())(((([][(()([()[(()()())]()(([]))]()))](()[()])[][]))))][]])][]()[]]()([]([()[()[(([]()()((([[][]])()))())[])]]])[[]])([[()](()[])[[([([[[]]][])()])(([([[[][]()[[][]][()[]]([]()())[][]]][[(()[]([(())]))[()]][()][[[[][]]][(())]][]][[][][]()])[()([()[]][]())()[][()[]()]]]))[]]]()()[][[[]]][()([(([[[[[]][][()]]]([][])()][][[()]()]))][])]][][[]()[()([[[()[[([])[][[()]][()[([()]([(()[(())][][][[]]())[]]))]([][(((((([([])[]])))([]()(())[()]()([][])))))])][[][([])((()[[()][]])[]([](([])[])))[(()()()(([[[]]])[]()))[([[[[]][([])[]][]](()()[])()][[[()]]()[(([()])([([(())])[][([]())]()]([()]))(()([][])()[]))][()]])[]][[[]][[[]](([[]])[][])]((()[])())][][([()])]]][(())][[][[[]][[[][(())[]]()[[]][[(())]()()[][]()[]()]]()]]][()[[(())](())[][[[[([])]]][](())(())[]]]]]][]]()](([])[])()[()[]([[]]())][]]([(()[[]((([][([][[(([([])](((())[[[]]()])[])((([][([])[]([])[]]))())[]())([]))]]())]))(([[()[[]]]]([[]][]([][(())]))([((())[[[]()][[][()()][()]](([](()))[])])[]][()[]][()])))[[](())()])])((()))[[[()[[]](([]))()]]]]())][[[]]])()]])]])))[]()]]](([]([()([])]))[][][])][[()(())(([[]])([])(()(([]))))][[()(([[]]()[])([]))]]][[[()()()]([][[([[(())()]])]([]()()[[([])]])])]()([[]][[[]]])[][([])]][][()[[][()[](()([]))()]]]()[[(([[]]))]([([[]])][]([][]((([])(())())[([])[]]))[][[][]((([])[([[[]()[]]])]))]()([])[[([[(([()([()([][()[[]]])(())[]]())])([])(()([])())(((()))))]()][])([])[]][[]][]])()])]((())[()])]]][()()]][]])[[()()]][][()]([[]()([[][]()()()][])[]][()][])[[[()][]]()][(([(([][[[[()()]][[([[(([[[][[[(()([])()()(()((())[[][]][[]]()))(())[([])(())()][]([][[()]][])[](()(([]))[][]))]]()][[](([(([()(())][][(()([]))]))]()()[]))[[[(([()[]]))[]]]]]][][[[]()]]()((())(([[[[]]]]())())())]))]])][[][][[[()]][][[]()](())]([](([]())())([][])()[])]([[]]())[]([][()])[[[[][]]()([]()())]([()][([][([[]])][[]([][[][][]]())]())(((()[]))[(()([])()()(()))]([([[()[]()][[]()]((()[]))])])())]()[]()(()[([(())])[]][[[[(()()()[])()[][()]][()()]]]]))]((())[])]][[][]()[][]]]([()[]])((([[]([(())[(((()[][[]])))][()]]())])))))([]()[((((())(()([])[](()))[][])))])][[]]()([[]]([][][]))(())()))()([()](([][([([])(([[()[[][]]]]))([]())[]])][()[][]][[]([])][([()])[[[]]]](())))[]())][]()[](()[[()[]]()])[]()()()()()()()[][[]][][[[[][[(()())]((([[()][([])]()()])))]][[[((([[][([[()()[](()([[]]))(((([]))[[[[()[(([[][[][]]()])((([])([])[][]([[[()()(([[]])[[]])]()[]([])[[((())())[]]](()())()]])())))[][]()][](([()[]])[][([((()[[(())]][]((()[[]])([[]])(()(()()[](([](())(()[([])])))([[]][(())][()][])[[](())])[][][()]()([]))[([()[[]]][]())][][]()[[()([])[]([])[[()()[[]]()([]())([(()[][(())]()[][([])(()([]))[]])])(())((([]([])()[])))]]][]]())[[][][]])[()[()[()]][[([])[([[()(()(()())[])]])[][]][](())]]])][][()]([()(())](()[]([[[[]]]()][][][][][]))))])[()([(())(([]())(([()([][((()[(()[]([]()))(([()])[[()][]])]))][()])[()]]()[])))([])()](([([][()[[[()([][][]([[]()]()))]()([[][[]]][(([[()()()[]]]))])()]]][()[]])([])])))]()([])]]]]))[(()())]]][[]][][])]])([()()[[]]()()])(()[][][()])))][][[]]][[[[][]]]]([([])[[][]()][[]()]])[](()[[[]()]][])((([]))[][][])()]()(()[()])]](()[(([[]()([][])])()(([])))])()()(()[[()[(()[][[[(())[]]][()()(([[[[][[()(())]]]]()()[][]][[]])[(([]))([(()([])([][[]]([][(())][()]([[]]((([[]][][[][]]))))[()[(()(())(()[][[()]]))][]()][][])))[()]])])][]()[]]())][][][[()([()])([])]]]()[([([]()[(()())(([]()[])[][[][][][[][](((((([])[]([])))()))[])[(([(()())()([[][()]])][[][[]((([]())[()])[[]]())[]([[][[]][[][]()](()([](([[]][](())())[][[]()[]](())[[]()]())))][][])[]][]()[([([[]])[]])]]))]]([(()(([])[]))[([[[]]])]])[][]([()])])])([(([[[]]([]())]))])])([])(())(([([[()[[]]()][][]]())]()[][[[[[]()]](((())()[()])[[()]])[()][[]()([()]()[])[(())]]]]([][])([()()[]][()[([])]()]))(([[][]([])]())))][][[]]([([])])(([]()[]))(((()([([])](()[])(()[[[[]]]])((()())))[][[]][[]()[]])))]()()[][][]())(([]))[][][]([]()[([][])])(([]()[()])[])[][]()[]([]())(([](())[]([[]]))(()(((())((([][])))[[]]))))([]()[[()]]())([]()()[])[([()()[]()()((()()[])[[]]([](())[]((([][()[[(([]())[()])]]()([]()([[[][([])][]]]))][[]]))[]()[][[[[][()]()([])]][()()[]()][[]([])]])))[([[]([]([([[]])]))[][]][])]](([][((()))])[]([[]()[]](()()[[((([][[[[[][((()[])(()[]()[])[]())[[][(())][](()())([((([]))()[])])[(())[([])((())[()[]([][[]([[()(()()[]([]))()][()[[[[[][[]][[]]][(()[]())]][]]]]](([][][(()())[[]]](())[()[]][])[]([[[]]][[][[()[(([()](()()[])))]()]()][]])))]()[]())](()[]([]()[][]())))((()))][]][()]][]()][]](()(()[])()(()[()([([][()]())]()([]([])[])())]([])[[[[]][][][]]][]()))([])]]][][()[([(([]))(([[[]]]([]))(((()[]())[])[][]([(([]))[]][(())(())])(([(())][([()()(()[(((((()()())(()([]))))[][[([])]][]))]([]([]))([]))[([])](())[]][]()(([[]])[])([])[])[([()[[[[][[]]]]]])][]()])[][]))[()[]][]()([][](()))(()([][][()])))])]()])[()[([([()([([[[[]([][][((()[])[()])[()]()])()]()[[]]]()([])[([])[]]])])])([(())]()[]()[(([[]][]([][(())]))()[])()])[][]()[([]([[([](())[()((()([[(([][][][(()([]))]))]()([[]])[([][(([()[[][][[][][]([])][[]]([])([][])([])[(()[][]([]))[((())(())[](()()()))[][]([][()]((([][()](()(()(()))()[](()))[])()([()]))[][])()[])[]][()]()][]]()([()][[[[[([])](())][][[]]]()]][[]])])()([()([][[[()[[](())[][][]([][[([][])([[]][(())])((()()(([()]))(()[()[]][]([]())()())))([[]]())][]([([]((([[]]([](()[(()())()[]][()])()()[[(()[])()][]()][](([([]([][[]([[[[[()([[]])()[[]]]()[[]]]()()()]][()[]()[]([(([]))])[(())()]][[((())([[][]](()(()))[[]])(())[])][]([([][()][[]])[([()[(([()()()]))]])((())())]]([[()((((([()])()[[][(()[(())([([(())])])](((([]))))(([([[]])])))[[]()][[]]]()([])]()[])()[]))[][])]]))](()[][[[[]]]][[][]]()[])](()[][]))])())])[]))((([()()][]))[()([()][([][]())])()])()()))[]([][]()()))([]()((())[]))[([])(()((([[][(()([]([][][])))(()[])[]]()([[]([(((()([][[([[](())[[]]])[]]]()((()((()))[()](((()()[])())[[]([[][[][]]])]))(()[[][[()()]][[][()[]]([])[()]([[[()]()[[]][[]([([()][[([])]()[()[((()([[[]]()[][[[()][][]](())[]([]([(([([][][[[]][([()(())[[]][(([(([]))([[]()([[[()[([()((([])(([])[()[]])())[]())])]]()]([]())])([])(())(([])[[]()[()]([[]([])[]])])])])[(()[[([]((())([])(())[[]()(())][])()([])((()[[]([[[]]]()[(()())][](([[]([[][]]()[[]])([((()()[()[()]][]()))[(()())([]((()()[]))(()()[()]()))][[]()(()[[][]])]][][([()][]())[][]][]()(([])()))][[]])))]))[])[(())[((())[([])])([]()()())]][[]]]]()([()(([()]))][((()))][])(()))([([][][[[[]((([][])))((())())(([][[][]])[()(()[[]])[]])][][()[[](((())())[]([()[]])[][()[]()()[((([]())[][]))][([])()]])][[]]]]][])])](())[[]]())[[[[]]]()]]])](())]([((()(((([([([])])]([][(())])([[]()[([()]([][[][]])[[[([])]][()[[([])()][]]]((([()]))[[()][()[(())[[()]]]]]([]))()()][[]([])[[]]][])][]()[]])[()[]]))()[])[()]())(((()))[]))([]()[()[][()]])([]()(())(([][]))[[[]]()([])])()[])[[((((([[[]]()]()[[(([([([[]])]())]([]()(())[]((([[[[([()](())(()([])[[][([()])][()((()())[])][()](([([()[[](()())[][[]]](())])]()))(()()((([[[]]]))()[(())()([([[]]()[])[[]][][][]](([])))][(([][[]][((()))]))(()[][()(()(([()][]()[[]])(([][[()](()(([[([][[[()]]]([]))]([]())()([]()()[[(()()([][(([][([]([]()))])[()])()])[[[](()[()])()]])]])[()]]))[])()][][[([()()[]]()[])]](())[])[[]()([[][][]])()](()[[[]][]])[]))())])]))[()[][([[]](()[(([()((([][[[]()]])(())))([([])](([](([])()))([[][[](([[(())]()([]()[][])[][]]()))]])())()[])])((((([()([(()[()](()[])(()([][]))[()])])(((()(())())(())(([()()[[[]()([][()][][])][((()[()]))()]][([()[]])()][]][])[](((()[[][]]([])[[()][(([]())(([[()[[]][[]][((()([])))]()]([][[[]([[([]([][]))][]([[(())()]((()()()(([][][]))[]))[[[[][]]]]]()()()[[[()]]]())])][[]][]])]([()])[[]()[]])))[[]([[][]])]()][]]))()([[]]([])[])))[])()()(([]))(([][]([][][[]])[[][(())()(()()[])[][([(([][])()([][()[[]]()[([])()]()[]]()[()[()]][[[([])((()[]([[][()([[]][]((()()([()()([([][[]])[[([]([]))()(((()()([]())[])))]([](((([]))()[[][]][[[]][]()[(())[[()[()][]]](([[][[[]]([]()[])]]))]][[]][])()())([([()()])]()()))]]())]))))()[(()()[])([[]][[]]())()()()][]]])[][[]([][][][])]))([[((()[])(()))][([([]()[])])[[]]]][[][[][]][]][][])[()()][[((()[][]))()]]]]])((()([()()[]])(([])()))))[[(())]]][][[[[[]([[([][])]])()([]())[()]][]()[[[[][](([]))[]](((()()[])()()))]][]]]][[([[[(([]([][](()()[[[]]])([[]]))[()[(()[()][][()][][[]()[][[][][][]][]])[][][][]]()(())][][]()((()[()])[[]]))[()](()()))][]([[][[()]]])[[]([](())()[][[][[]]])]][[()(())(()[()])[]][[]()](([([[[]]][][])][[]]))[[[[()()]]()]()()()][[()]][[]()]()[[]()]()[[()]][][(())]]()])([(())])]]()[[(())[]([[[()[()()]([[[[(((())[]))]()]][]()])()[][()([([[]]()[[[]]])[([]())]][](()))[][]]](([()([[([[([]()([[][()](()(([(())()()[]][[(()[][()([([([()[]()[([])()[[]]][]](()()))]())])]([()[(())]])[][([[[[]]]([[[()(())]()[()((()[((()())()(()))[]][]))[(([(([]))])[([[[]()]([]([]))[]][()])[[[()][][()]()(())[]([((()([[]]()))[]([()()()((([])))[]])([[[[]]()[]([[[[([[][]])]][]]]())]]([][[[]()][][]]()))(()))]())]()]()])(())(())]]][]]())()][()([()])])[()][((([][[]])))()][[]](())[]][])()[]([](()[]))]([][]())[[()([(([][]))[][()[]]])][][(()([][[(())]()])[()])()]()(([[[()]][][()(()())[]]((()))(())[](((([][[[(([()])[([][])][[]()()]())[]([([[()]]([]([[()]][[]()]((())))())[()][])]()[][](([(([()]))[][[]][][][[[]()(([][()[[]]]))]]]()[][[](([[]([()()]([])(()(())[(()[])]))()([])]()))])[]))[]][][[[()[()](())]()()()([][][([((()))[][(([])([][()]()))][[()]()]])()()[[[[[[]][][][]]]()]]][(([])([([(((())[([])(([[[]]()]))[([([])][[(([([][[]])]([][])(([])[])))]()])()[]][]])[([])()]())]([][([[][[]]])[[[([])][]]]]))][](([([(()[][(([[()]]()(()())))])([])])][])[([[()]])[()]]([](((())()[([()]()[])[][]])[[]][[]()][])[](([](([][]))()))))([(()[])]((([][])())()()())[[()()][[()[](()[])][[[[]][[]]]]][(())[[()[[[]]()()(()[([])[[[()][()]]([][()()])]()][[][[[()][]][]]])()()[]()]]]]])[([])[[[][]()()[(([()()[()[][]]])(())[[([])[]()[]]])([]())]][[()][][]][]]])[])[][()[]()(([])[[][][]][([[][]()][()[()]([()]()())[][[[((((([([[[][]][()][](((([]([]))))[()(()[])()])((([]([()[[()]]][]()))))()()[]](())[()][])]()[]))([][]())(([[][([([]([()][()]()))[][()][((([])((()[([()([][[][[(()()[[(([])[])]](())()((([][])([[]]))()[([])()](([[[]()]]())()))[])()]]][([][[][()]])([])((([]([((([()][][()[]]))()[[](([])(([])()))(())]())])[(())][[]()([([])][][([[[][()([]())]](()([])())][][[]()[[()]()[(()[[()][[]](()()[[][]])[]()](()())())[][]()]]][[[[][][[](())]]]](()([]))[])()[(([])())]])]())))][][])[]([[([[([])()][[]()]])[[]]()[()]()([][[]])](([](()[][]))[[]()([((()))])((([])(()()()(()))([])()))()([])][])[]])]()()[])()]()([[[()]([])[()[()]]]][[()()[(([]))[()][][][(([()]))()]]]]()))[(())([])]))(()())(()(([[][]])[][[()([]())[]]][[]([])()](()))(([[][[]()][]()])[])(()()))())]][(([[[]]]()()([[][()](()()[][][]([([])])([][[]()()][()]([]))(()[]))([[]][])])()()()))])()](()(())[[([])[]][]])(()([])[[][(([[][([[(([[]()][(([](()())[[([()()][])()[()][[]]](()[[[][[]]][][](([([(([[()()(([]([])[]))][[()()]][(()(())[]()[])]([[][][]((([([][[[][]]()]()[][[(()())]()][])(())[]]))([([])[[][]]]()([])[[]]()))(())][[]])([](()[][]))[[]](())[[()]()][[(()(()[()[[]([]())[[()]]]]))]](((()[[]()[[[(([[]]))()]][([[()]])]][[]]]()))()([[]]))]([[[][[]([][][[(([[(())]](()(()))[](()(()[()[](()(())(()))][[]]()))([]()))[[]]())[](([([[()]])]))]](()))][()](())[]]][][([])]()[[]])[[]])()[][([])]()(([([[([[]])[()(([])()([()]))(([])([((())([[[(((())[])((())())((()())(([]))([[([](()))]](([]))(()())[]))[(())()[([[[[]][([[()][][]([][[[][](())]][[()()[][][[[]][][(()([[]][]()[[(([]))[()[()[(()[])]]](((([]))()))[]][]]())[][])()[][[()[[]()([[()()]]())]][[]]]][]]]])[[]]][][[][()([[]()]()[])][]([])])][([][[]])[]([](())[])[[([])[][]]()([])(()[[[]]])[(()[([]()[][(([([[[()]]])]))][])])(()[])][[[[]](([[[]()()[][(())[[][][]]]]([])]()(([]()[(([([]([]))(())[[]()[]]()]))])))([]))[[]([()[([]()([]))]])[]]][][]()](()[(())][][[][([][[][]])]]())](()()([])([[[[][[([])[([])][[[]]]]]]][[]][([][(([]))()[]]([()()]))]()(())[()[[]](()[[[][[]][()([[]()]()(())[[(()[])[]][]()])]]])[(((()[[]](())))[()([])([]())])[[()][()]([]())]()(()([])()[]())[][[][]]((()))]][]()()()[][[][][()]]]())([](([][[][[]]][]))()))(()[[(([()]))()[]]][]()(()()[([[]([[]()()])])]))((()))]]]([[[([])()][[(()[][])][[[][]][[()[][(()([[][[][]]](()[]))[][])]((()([])((([]()[](()[()])[()()([[[[]][(())]]([]())(()[()()](()))(())[]][])])()))[([])]))]][]]]][[]]][()])[][()]())[[[]]]()[]]([])]())[][([][][])()]]]([][([([])]([]([([](([])))]()))[(([(()()[[[][][[(([][[]]([])))][]](())]][(())])]))][][])]())[()(())([[((()[[(())()][[[((()))][][(()[([])()[](()[][()[()([[[((([]))[[(()(()((())()([()()(([](()()[()[](())([][][])]())))[[]]]))))]][])][[]()][[((((()))()))[()()()[[]]](([[]])[])][][()][][]]()]][])]()]([]))](([]([]))[[([(([[]([]([]))([[[][(())()]()]][()]()[])[]][([])][]))])([])]])())[[()]]]]([()([()])[([[]()])]()[]])]([]()())[[]()]])([])())[][][]]()[][()](([()[((([]()))[][])]]))])]]))]))]]])])))])]))])]))]))]])]]))]])])))))]]]])])]])]]]]))))]))]])))]))]])]])]))]])]])]]])))]))))))]))]]]))]]]]))))))]])))))]]]))]))]))]])))]]])])]]])]]))))))])])]))))])])])]]]])]))])]])))])]]))]])]]))]]))))][ [[[(([[[((([([([[[(([(((((((((([(([[[[([(([[[((([[([([([[[[(([[(([[(((([([(([((((([[([(((([([(([[[[(((([[[(((((([([[(([[([[[((((([([([(([([([[[((((([[[[([([(([(((([[[([([((([[[[[[[[[((([[[((([[[([(([[[[([([([[([([[[[[(((([[([[[(([(([[[[([([[(([[[[([([[([[(([[((([([(([[([([(([(([[(([([([([(([(((((((((([[((([((([([(((((([[[[[((((([((((((([((([[(([[[([[[[[(([((((((([([([(([[[[(((([(([[[[((([((((((([[[((([[[[[([[[([([([[[[[(([([[[[(([[(([[([([[([[((([[([[[[([([([[([([([[((([[[(([[(([[((([[((([((((([[(([[([([[([[(([(([[([((([(([[[(([([[[[([([[[[((([[(((([(((([(([[[[[[([[[([[((([([[[([[[[([([([[(([[([[[(((((([([([([[[(([[[([[[([(((([((([(([[(((((((([[[([(([[(([[[(([[[[([((([[[[(([[[[([((([[(([[([[[((([([([[([((([[[[[((([[[([((([(([[[([(((((([[[(([((((((((([(([(([([(([([(([((([[(((([[[[([((([([(([[[((([[[[[[([(([([[([[([([[[[([([([([[([[[([([([([(((((((([[[[((((((([((((([[[(([(((([(([[([(([(((([[(([([[[((([[((([[([((([([((([[[[([([(([[(([[[([[([[[(([([(([[[[[([([([[[[[((([((([[(([(((((([[[[([([[[[((([[((([([([[(((([[([[[((((((((([[(([[[(([[[([[[[(([((([([([[(([[(([([(([[((([(([[[([[([([[([[[(([[(([(([[[([[([([[((([[[[([(([(([[[[[((((([[[([((([[([([[([[([([([([((([[[((([[[[[[[(([((([(([([[([[([[[[[((([([[((([([[((([([[[([(((([[([[([((([[((((([[[[(([(([[[(((((([[([[([([([[([([[(([([[([([[([[[[((([(((([((([([(([[([[(([[[([([[(([(([[([[[(([[(([[[([[(([([(([(([[[((([([([[[[(((([[[[[([(([([[[[([([((([[[[[([[(((([([([[(([[[[((((((([[(((([((([[([[[[[(([[([[[[[([[[([[(([((([[[([([[[([[[((([[[[([[([[([(([[[[([[[[((((([[[[[((([[([([[([([(((([([([[[[([[[[[([[[[([(([(([[((([[(((((((([([([([(([[(([([([(([[[([[[[(((((((((([[(((([([[(([[((((([[[([([[([[((((([([(([([(([[([(([(((([[([[((([[[[([(([([[(([[(([((([[([[([([([((([([([[([([[(([[[[(([[[([([([[[([[([[[([[([[(([[[[[([(([(([[[((((((([[((([[[([[[[((((([[([([[[[[[([[([[[[((([[[[[[((([[([[((((([[[(((([(([[([[((((([[([[[((([(((([([[([[([[((([[[[(([[((([[[(((([[[[[[(([([[[([[[([[([[[([[((([[[[((([(((([([[[[([[([[[[([(((([(([([((([(([((([[[((([[[(((([(([(([([([[([([([(((([((([([[[(([[(([[(([([([[([(([([[([[([(((([[[[(([[[[(([[[((((([[[[[([[[(((((([(([(((([([([(([[[[([((((([(([[[((([[[[[((([[([[[[[[[[([(((((([((([([[([[[([[[([([((([([((([[[(((([[[[([((((([((([[[([[[((([[[[[[[[(((([([[(([([[([((([([[[([([[((((([([(([([([(([[[(((([([(([([[([[[[(([[[(([[([[((([[[([([([[[[[(((([[[[[(([[[((([(([([[(([[[((((([([(([(((([([([([(([(([([[[[[(([([(([([[[[[(([[((([([([(([[(([[(([([([[((([[([([[[[[(([[([[(([(([[(((((([([[[(((([[[((((([([[[(([[[[[([(([[(((([[(([[((([[((([[([(([[[(([[[[[[([[[[((([(([[(((([[[[([[([[([((([([([[[[((((([((([[(([([([(([[([[[(([((([[(([([[([[[([((([([([(([(((([[[((((((([[(([(((((((([[[[([[(((([([((([((([[[((([([[[(((([[([(([([([[(((([[([(([([([[((([([([[[((([[[(([[(([([[[[[[[[[[([[[[[((([(([[([[[(([[(([([([[([[[(([((([([[[(([([[([([([([[(([[(([[([([((([[([[([[[[([[[([([((([[[[[[[[[([[([([[[([([([(([([[[[(([([[([([([[[[[[[[(([[[([[[([[[((([[[[[([(([(([((([((([([([[[([(((([((([[((([([[[[(([([(([[([[[((([([[[(([[[[(([[((((([((([(([([([[([[[[[([((([[([[[[[([([[[[[(((([(((([([([[(([(([[[(([[[([([([[((([[[([[[[[[(((([[[((((([[([[[[[[[(((((([([[[[[[[[[((((([[((((([[[[([[[[([[[[([[(([(([([[[((((((([(([[([[[[[([[[(([([([[[[[[(([([(((([(([([[[[[[([[(([[(([((([([[[(([[((((((([[[([([[((([([(([[[(([([([[([[[([[([[([[(([((((((([(([(([((([([[(([[(([[[[[[[(([[([[[[(((([[(([((((([[[([[[([[[([[[[(((([([[[[[[[[[([(([[(([[[([[[[(([((([[[[[((([[([((([[[[([[[((([[(([[[[[([[[[(([([([([[[[[(((((([[([([([[[([(([(([(([[([(([([((([[([([([[(([([((([([[[([([[([[[[[[[((([([[([((([[([([[[(([[([[((([([(([[[((([[[([(([([([(([[[(((([[[[[((([[[[[(([((([[[[(((([[((([[([([[(([[(((([([([[[([[[([(([[([(([[[([[[[((([[(([([[[([[([[(([([[(([([[[[[[[[([([[[([((([[[((([((([[[(([(([[[(([([[[[[[[(([[[(([([[((([(([(((([([[([((([[([(((((([([[(([((([(([((((([(((([[((([(([[([((([[[(([((([[[[[[([([[(([[([([[(([[(([((([[[(((((([([[((([[[[[([([([([((((([[[[((((((((((([([[(([([((([[(((([[(([[[[(([([[[[[([(([([[[([[[([(([[(([[(((((([([[([[[[[(([[([[[[([[([[[[[[[[(((((((((([([([[[[[([[[(((([([(([([[[[([([([(([(([(([[[([[([[[[([(([[(([[[[(((([[[([([((([([([[([[([[([[[[([([[[(([(([([[[([(([([[[([[[([[((([([[[[[(((([(((([[(((([[[[[[([[[[[[([[((((([([([[[((([((([[(([([(((((([(([[[([((([[([[[[([(([([([[(((([[([[[([([([[[[((([[[[([([[[(([[([(([[((([[[([([(([[[(([([[[[((([([[([([[[([[[[([[([[[[[([([([(((((([[[[((([[[[([[[(([[[[(([[[[([(([[[([[[[[([[((((((([([[[[(([[[(([([(([[([[[(([([[([[([[([[[([(([((([([((([[([[[([([[([(([(((([[[[(((([[(([(([(([((((((([[[[((([[((([[([(([(([([([([[([[(((((([[(((((([((((((([([[[[[[([[[[[([[(((((([(([(((([(((([[[[(([([(([([[[((([[[((([[[(((((([([(((([[([(([[[[(((([([((((([([[(([([[[(([(([[[(((([([[(([[([([([[[([[((([((([((([[[([[([[([([[(((([[([[(((([([([[[(([(([((([((((((((([[([([([(((([[([[([[((((([([([[[([([((([[(([[(([(([(([[([[((((([((([[(([[((([[(([[(((([[[[[[([[([[[[[([[[((([[([[([([[(([(((([[(([([([[[(([([((([((([[(([[[[[((([[([[(([[[[[((([[[[(([[[(([[[([([(([([[([[[([[([[([[(([[([[(([(([([((((((([[[((([(([[(([[([([[(([[([(([((([[([([([[((((([([[[[(([[[((([(([(([(([[[[[((([[([[(((((([[(([(([((((([[[[(([([[[([([([[([([[[(([(([[(((([[((([[(([[[(([[(([([([[[([([[[[[(([[[[(((((((([([([[[(([(([([(([([[[([[((((([([[([([[[[([[([([([([(([((((([[[(([([((((([[[[[[([[[[([([[[[[[([[[([[[[(([(((([[[([[[(([((([((([((([[[[([[[[(([[[((([([[[[([((([[([[((((([([[[[[[(([[[([[(((([[((([[[(([[[[([[[([[([[[[([[[((([[([[[[([((((([[[([[(((([[[[[[[(([[([[[((([[[[[[[[[([(([[[(([([[[((([[[[[([(([[([([(([(([[(([[[[[[((([([[[([([([[([[[[([([[[(([([((([([[([[[[[[(([(([[([(([[[([(([[[([[[[[((((([[[((([[[([[[([[([(([(([[[([([[((([(((([[[([([[[[[(([[((([[[[[[(([(([[[[[[[[[[[([([(([((([(((([[(((([[([((((([[[((((([[([[((([([[[[[[[(((((([((((([[[[[[[[[([([([[(([([[(((((((([[[[[((([([([(([([[[((([(([[[[[[[[(([[[[[(([([[[([[[[(([[(((((([[(([((((([([[([[[[[[[([[([[(([([[[(([(((((([(([[([[([((([([(([([([[([((((([[[[[([([[[(([[[([([[[([([[([[[[(([[([[[[([[(([([([[[[[([[(([[([(((([([(([(((([([([(([([[([[[[((((((([[[[([(((((([[[[[[([((([(((([[(([[[([([[[((((([[([((((([(([(((([[(((((([([((([(([[[(([([[[[[[(([[[([[(((([[[[[([[((([((((([([(([([([([[[((((((([((([([(([([([[(([[[[[[([[[[[([([[([([([[((([(((((([[([((([[[((([((((([([([[[(([[[([[[(((([(([[((([([([([([([([[[[[((([([([([(([(((([[(((([([(([(([[([[([[[[(((([[(([([([([[([([[[[[[(([[[[([([[([[[[[[([[(([[[[([[[[(((([[[([[[([[[([([(((([[[[((([(((([[[((((([[(([[([(([[([[([([[([[(([((([([([[(([[[((([([[[((([[[[[([([((([([[[[((([[([([[[[([[[([(([[[[(([([[[([(([[((([[[([[([[([[[((([[[[([[([[[([[([((([[[([[(([([([[[[([([[[(((((([[([[((([[[[[[[(([[([[((((((([([(([([[(((([[[[([([(((([([[[[[[(([[([((([[[([[[([[[[(([([(([[[[([([[[((((([((([[[([(([(((((([[[[[[([([((([[[[([[([((([([([[((((([(([(([([[[[(([[(([[(((((((([([[((([(([(((([([(([[[((([[[([(((([[([([(([[[([([(((([[(([(((([[[[([([([([(([([[(((([[[[[[[[(((([[((([((((([[([([((((([[((([[[[([(([([[(((([[([(([[(([[([([([[(([[[([[([([((([[([([[([([([(([[[[[(((([((([(([([([[[[(([[[[[([[[[[[[((((([[([([[[[(((([(([[[([([(((([[([([[(([[[(([([[([(([[(([[(([(([(([[[[[((([([[(((([([((([([[[([([((([[((([[[[((([[[[(([(([[([(([([(([[(([(([(([[((((([([((([([([[[([((([[[([([[([((((([(([(([[([(([[([[([([[[[[[[(([[(((([[([([([([(([[[(([([[([(([([[[([(([(([([[(([[[([[[[[[[(((([(([[(([([[(((([(([([[(((([[((([[(((([[(([[[([([([[([[([[[[[[([[[((([([[((((([[([[[[[[[([[[[((((([(([[(((((([([(([[[[[[(((((([[[([[[[[(((([([(([([[([[(([(([[((([(((([[([(([([[[((([[[[([[([[[([((([[(((([[((([[(([[[[[(((([(([([[([[[[[([[[[([[[([([([[[[([(((([((([((([([[(((([[(((([((((((([([[[((([[([([[[[([(([[(([[[([(([[[([(([((((([([(((((((([[[((([([[[(([[((([([(((([((([[([([[[(([([([(([([([((((([[[[[[[([(([[(([[[[(([[([[(((([[([[(((((((([([[((([(((([[[[[([[([(([(((([([([(((((([[[[[([((([[[[[[(([([[([[[([((([((([(([((([[[([[((([[[(([([(([[((([[([((([[[[[[((([(([[((([[[((([[(((([([[([[([[([([(([[[[([[([[([[[[[[([([(([([[[[[[[([([([[(([(((([([((([((([[[((([[[((([([[[((([[(((((([((([((([([(([[[[[[([[([[[(([([([[[([[(([[[[[[[((([(([([[[[[([[([[((((([([([[([[([([[([((([[([[(((([[[(((([[[([[([[([[([((((([[[(((((([([([([[(([([[[([(([[[([[[[[(([[((((([[[(([([(([(([([([((((([((([([([([(([[((((([(((([[[[[[[[[[[(([[[[([[([[[[[[[[(((([(([[(((([[([[((([([((([([([(([[[([(((((([[[[(([(([[[[[[[[[[[[([[[[[([((([([([((([(([[[(((([[[[([[(([([([(((((([([[[([[(([[(([(([(([([[((([[[[[[([([(([([[([(([[([[[([((((([((([[[((([[[([[[[[[[[((([([(([(([([[[[[[([[[[[(((([([[(([[((([[([((((((([(([[(([[([((((([([[[[((([((([([[[(([[[([[[[((((((([[[([[(([([((([[([([(([[[([(((([[([[([((([[[((([([[[((([[[((([[(([((([([(((([[[([(([[[((([([([([[[([([([[[[([[(([[[([((((((([[((([[[[[[((([(((([[[(([[([([[([([([((((([([(((((([[([[([((([[[[([[([[[((((([((([[([[[(((((((((([[([([[([([(((([([[([[((((((((((([[((([[([[([([((([([[[([([[(([([([((([([[[[(([[(([([([[(([[[([([[(((([[(((((((([((([[([[[[([[([(([[[([[([([[((((([((((([([[[[[(([(([([[[[[[[(([[([([[([(([([((([([(([[(([[[[[([[[([[[(([[([[[(([[(([[[[((([[[[(((([([[([(([(([[([[[[[(((((((((([([([[([[([(([[[([([[[[[((([[[((([[([((([([[((([([[((([[([[[[[([([[[[[([[(([[[([([((([[([([((([([(([([([[[[[[[([[([[([[[((([[[([(([(([[([([(((([[([([(((((([[(([(((((([[([[[([(((([[(([[(([[([[([[([((([[[[[[(([[([((((([([([[[([[([[[((([[[(([[(([([([([([[[[[(([[[[([[[[([[[((([(([(((([[([[[((([[[([((([((([(((([[[([((([[(([([[(([[([[[(((([([[([([[([[[([([(([([[[((([[(((([[[[[((((([((([((((([[([([([([[((((([((([[([[(([([((((([([[([([[(([[((([[((([(([[([[[(((([(([[[(([([([(([([([[[[[[((([(([[[[[([[(([([[[(([[(([([(((([(([([[([[[[[[((((([[([([(([[([(((([[[[[[((([([([[(([[([[[([[[((([[[([([[[[[((((([[[((([(([[([[[[([[[([([[[([([[[[([[[[([([[([([([(([[([[[[[([[([([[(([[((((([[[([[(([([([([((([([[[[[[[[[[([[[[[([((((([(([(([([[[(((([(([[[(((((((([[([([[[(([[[([((([[((([[([[([[(([[[[(([([((([[((([(([[[[(((([[[(([[(([[[([[([[(((([((([[(([([[[((([[[[[([[[(([(([([((([([[([([[(((([[([[([([[([[(([[([([(([[[[[(([[[(([[[[[((([[[[([(([([[([([([[(([([[[[[[((([([[[[[[[[[[[[((([(((([[(([(([(((([[[((((([[([[[[[[[[([[[[[[([[([[([([(((([[[[([[(([[(([([[[[[((([([[[([([((([((((([[([[((((((([(((([(([(([[([[(([[(([(([[(([[[((([([[([([([[([[[(([[[[(([((([[[([[([[([([([(((((([[([([[([((([(((([([(([[([(([[[[(((((([((((([(([[[(((([([(([([[[[[([([[([[([[[((([(([([[[[[[[[[([[[((([([[[([[[([[([[([[[[((([(([((([([[[[((([(([([([[[([(([((([(([[[(([((([[[(((((([[[(((((([[((([[([[(([[[[(([([([[[([([[[[([[((((((([(([([((([([([[[[(((((((([[[[(([[((([[(([[(([(([(([[([((([(([((([[([[((([[[[([[((([([[(((([[[([((((([[[[[(([[[[[(([(([[[(((([[[[([(([[([[(([[([(((([[([[([([(([[[[(([([[([((((([[(([[[[(([[[[[([(([[[[[[((((([[([([(([[([(([(((([([[([[(((([(([[[([([(([[([[(((([([([[([[[([[[([([[[([(([((((([([[([(([[[(([(((([([[(([[[((([(((([[[[[[[([([[([(((([([([[[([([[([[[([[[([([(([[[[((([[(([[([[(((((([[[[[[(([[(([([([([[(([[([([([([((([[[([[[[([[[[((([(([([([[([((([[([(([[[[(([[([([([[[[[([[[[([[[((([([((((([([((([[[(([([[[[[([([([(((([(([[([[[(([((([(([[([((((([([([[((([([[([[[[(((((([[([[(((((((([([[[(([[[[(([([[([((([([([(([((([((([((([[([[[([([[([([([[((([([([([(([[([[[([[[[[[((([[([([(([[[([([[[[[[(([[([[([[[[((([[(([(([[[([[(([((([((([[[[[(([([(([([[[([(([([([(([[[[([(([[[(([[[(((([([(([[[([((([((([(((((([[([[[[[([((([([[[[[([[(([[[([[([[([([[((([((([[[[[[([((([([[([[(([[(([(((([([[[[([[[[([[(([([[[[[[[[[(([[[[(([[[([((([[(([[([([[[(([(((((([(([[[[[[([[[(((([[([[[[[([[[([[([(([[(([[[[[[[[[[(([[((((([[(([[[((((((([[([[[[[[[[[([((([((([(([((((([([([([[(((([[([([[(([([((([([(([[[((((((([([(([[[[[[(([(((([[[(([([[(([([([(([([(([[[(([[(((([[([(([([([((((([([([([((([([([[([[[(([(([((([([[(([[[[([[[[([(([[[(([[[[[[(([((([(([[(([[([[(([([([([([[([[[(([([[([[[[([([[[(([(([(((([[[[((([[([(((((([([[([([[([(([[((([([[([[([[[([([[((([[([(([([[([(([(([([(([([[[([[[([((([(([[[(([[[([[([([[([[[(([[[([[[(([(([[[([(([((([([[[((((([([(([[[[[[(((([[(((((((([([([([[[[([((([[([[(([[[[([[([[[(([[[[[[([[[([[[([[(([([[[([[[[[(([((([[[[[([[[[[(([([(([[[([[([([[(([(((([(([(([[((((([([([[([[(([[[([[(((([[[[((([((([[[([[[[([[([(([[([[([(([([([([([(((([[[[([(([(([[[([[(([[[[[[([[[(([[[([([([(([(([[[((([([(([([[([([(([([([[[(((((([[[[([[([([(((([(((([[[[[[([([(([[[([([([[[([[[[[((([(([(([[[((([[[(([[[[([([[[[[(((((((([(([[[[[[[([((([((([[([([([[[([(([[[[(([([([[([([[[([[[[([[[[[((((([[(([[([[[[[[[((([[[[[[((([([((([([(([([[[(([[([[[([(([([([[((([[([([[(([[(([([[((([((([(([((([[[(([([[[[(([[[((([[([[([[[([[[[[([((((([[(([(([([[([(([[[[[[([([(([(([((([[[(((([([([[[([((((([([[[[([([[((([[((([(([(([[[[(([[([([((([[(([((((([([([[[[[((([([[[[([[(([[([[((([([[([(((([(([[([([([[[(([[[[[([([(((([[[[([([[[((([([([([[[[(((([[[(((([[([[[([([[[[([([([[[(([((((((((((([[((([[[(([[[[[(([[((((([(([[(([[([[([[((((([[(([((((([[(((((([([(([[((([[[([[[(([[[[[((([[[(([[[([[([([[[[[[[([[([[(((([(([[[[[([([[[(((([(((((((([((((([[([(([([[([[(([(([[(((((((([[(([(([[((([[[[[[[[[[((((([((((([[[([[([[[([(([[((((([(([([((([[[([([[(((([([(([[[[((((([[([[[[([(([[[[[(([([[([(((([(([([[(([[[[[[([([[[([[[((((([[[(([(((((([([([[[[[[[[[[[[[((([(((([(([[[[[([([[[(([[(((((([[(([([([([(([([(([([([(([[[(([[[(((([[[[(([((([([[[[[[[[[([([([([[(([[[[([[([(([[[(([((((([[(([[[(([[((((([[((([([(([(([([[([[[([([[([([(([([((([[[[([[[[[([[(([[[((([(([(([[(([(([([[([([([[([([((([[[((([[((([[([[(((([(([[[[((([([[([[[([[(([([[(([(((([((([[(([[(([[[[[([[[[[([[[((([[((([([[(((((([[(([[((((((([[([((([(((([([[[(([[[[[[[[[[[([[([([([[[((([(([([[[(([[[[([[[[[[[[(([([([([((([[((((((([([[[([((((((([([([(([[[[([[[[(([(([([((([[[((([([[((([([([[([([[([(([[([[[[([([(((([((((((([[[([([(([((((((((([(([((([([((((([(([[(([((([(((([([[((([[[[[(((((([((([([[[[[[((([([[[([((([([([((([[((((([[(([[(([(([(((([[[[[[(((([([[[[[([[[([((((([[((([(([(([([((((([[[[[(([([([[(([[[([(([([([[[[([[[[[[[([[[[(([[([[[[(([([([[(([([[([[(([(((([(([[(([[([([([(([([[[((([(([[[[[([[[[(([(([([([((((([(((([[[([[[[[[([(([[[[([[[[[[[(((([[[([([(([([[([([[((((([[[[((([([[[[(([([(([[[[[[((([[[((((([(([[[((((([[(([([([[[(([([(([([([((([[([[([[(([([([(([[[((([([[[([(([((([[([[([(([[((([(([([[(([(([(([(([([[[[([([[([((([[((([[[[(((([([(([[(([[(([[([([[((((((([(([[[[[([[([([((([[((([([[[(([[[[[(((([[[(([((([(((([(([[[([([[[([[[([[[([[([(([([[(((([[([[((([(((([(((([[[([([((([[[[[([[[([[([[[([[[[[[[[(([[((([[[[([[([[([[[([((([[[([((([[[(([[([[[([(([((([([[(([[[((([[([([(([[(((([((((([([(([[[[(([[([[(((((([[[[([([[[([([[((([(([[[((([(([[[[[([[[(([[((([([[[([[[([([[([[[([(([(((((([(((([[[[([([([[([[(([[((((([[[((((([([((([([[(([([[[([[([(([[[([[((([[((([((([[[([(([[[[([[[[[[[[[[[([[([[([([([([[([[[((((([[([((([[[([[[([([[[[(([[(([([([[(([[(((([[([((((([[[([[([[([(([[([[(([[[(((([(([[[[((([([((([([([((([[[[(((([([[(([([([[[[[(([[([(((([(([([(([[(((([[(((([[[([(([[([[([(([([([([(([[([([([(([((([[(([[([([[(([(((([((([[([[(([([[[[[([[([[(((([(([[([[(((([(([[[((([((([([[[[[[[([([[((([([((([[[([([([[[((([[(((([(([[([[[((([[[[(([([[[(([(([[[([[([((([[[([[([[(([[(([([[(([([[[[[(([[[(((([[[(([[[(((((([([[([(((([[[(([([(([([(([((([[[[[[([([[[[((([[(((([(((([[[([[([[[((([[((([[(((([[[[([[[([[[(([[([[[[[[[[([([[[(((([[([((([[[[([([(([(((([[[[[[((([[([(((([[([(((((([[[[[((([[([([(([[([(([(((([([[((([([([[([(([[[([(([([([([([[((([([([[[[[[([[[[([[((((([([[((((([[([([([([([([[(((((([[([((([[([[[([[((((([(([[[([([[([[[([[((([((([[[([([[[((([[[[[[[[([(((([(((([(([([[[[[[(([(([[((([(([[[([([([[([[([[[[(([[([((([[([[([[(([[([([([(([(([[(([[[[([([([[([[([[[[[[[(([(([([(([(([[((([(([[(([(([(([[[(([[((((([[([([([[[([((([[([([(([([(([[[[[([[[[([[([[(([[([[(((([[((([[[(((([[[([[[[[[[([[([([[((((([[[([([[[[((([(([[[[[[([(([[[[[[[[[[[([([[([[([[[([([[(((((([([[[([([[[[[[[[((([[[[[((([[(([[[([[([((([[(([[[[((((([(([([[((([(([[([((([(((([([([[([([([(([(([((([(((((((((((([[[((([([([((([[[[([[[[[([[(([[[[[[[[(([[(((([[[(((([[((((([[([(([([([((([(((((([[(([([([[[[(([((([[[[[([[(((([([[(((([([[[([[[[([((([(((([(((([[[[([([(([([([([[[([([[[[([((([[([([[([([((((([[(([([([[[[((([([((([(([[[[[[([[([[[([([([[([[([[[([[[([([([([[[(([[(((([[[(([[([([((([[([((([[[[[([([([[[(([([[[[([[[[([((([[[[[(((([([[((([[[[([((([[[[[(([[((([(((((([[([([([([[(([[[[[[(([(([[([([((((([([([[[(([(([[(([([([[([(((([[(([[([[[([[[(([[([([[([[[([[([((((([([[(([[[[(([[[[[[[[[((((([[[[[[[[[[[[((([([((([([[[([[[(([([[(((([[[((((([[[([([([(((((((([(((([[((((([([[([([[[[(([[[(([(([(((([[((([[(([[([((([((((([[([(((([(([[[([[(([([(([([([([((((((([(([([([[[[(((((([[[(((([((([[[((([[[((((([[([(([(([((([([([(([[([[[[([((([(((([(((([([[[[[[[[([(([((([[([([([[(((((([([[[[[[[(((([([[([[(([[(([[([[([(((([[([[([([(([((([[[([((((([[[([([([[([[[([[([([[([([[([([[([([([[(([[[((((((([(((([(([[[(([[(([([[[[([[((([[[([[([((((([([[[[([([([(([((([[[[(([[[(((([(([[([[[[[((([[([([([([([((([[[(([[([([([([[([[([[[(((([[(((([[([(([([[[[(([[[[[[((([[([[[[[[[[[([((([[[([([[[[([[[[([([[[(([(((([([[[(([[[[[(([([(([([[([[[[([[(([([[[[[([(((([[(([(((([[([[(([[([[[[((([[((([[([[(((([[[[[([[(([[[[(([[([[([([((([(([[([[(([[[((([[[[([(((([[[[[[([([([([[[[[[[[[(([([[[[[([([(([[[((([[[[[([([(((([[((([[((([[([[[([[[((([(([(([[((([(([[([([[[([[[(([([(([((([[([[[([[([([([([(([(([[[[([((([[[(([[([[[(([[((([(((([([[(([([[(((([[[[[(((([(((([([[[[((([([[((((((((((([[(([[[([[[[[[[(([([(([[[[([(((((([([[[(((([([(([[((([([[[(([([([[([([[(([[[([[[([([[[(([(((([([[[((([[(([[((([[[[[((([([[(([([[([[[([[([[([[[(([((((([((([[((((((((([[((([([[[(([[[[[([[[([((([([[(((([[[[([[[[([(((([[[(([((([[(([[([[(([(([((([([([[([([[[[[[([(([(([[([[[((((([[([((([((([[(([[((([([([[[([([([[[[[[([[((([[[(([((([[([[((((([[[((([([(([[[(([(([[[([[[[[([(([[[([[[([(((((([([([[([([[[([[[[([[[[(([([[[[[[[([([([([[[([([(([(((([[(([[([[([[[[(([[[([([[[[[[[([[[([((([[(([([[([([[((([[([([[[[(([[[[[[([[[(([[(([[((([(((([[[[(((([(([[((([([([[[[[[[[[((((([[(((([[([(((([[[((([[[(((([[([[[([[(([([([[([([([[([[[([(([[(((((([([([[([([[[(([[[[(([([[((([[[[[[([[[[[[[(([([[[((([([((([([(([([[(([[[[[([(([(([[[[[([([([((((([((((([[[([[(((([((([((([[[(([[([[([([([([(([([(([[[[((([[[(([(([[((([[[[([([[[[[((([[[([([[((([[[([(([([[(((([(([([[([([(([([[[[[[([([[[[[[([[(([([[[(([[(([[((((((([(([[([[[((([([[([(((([([(([[([[[([[[[[[((((([[(([[((([((([([((([[[[([([[[([[((([[([(([[((([([[[(([[[[[[[(((([[(([[[(([[[((((((([([((([[([[((([[[[(([((([(([([([(([[[[[[[((([[[[[([([([[[[[(((([[[[([[[((([[[[((([((([([[([[[((([[[([([[([(((((((([([[(([([(([[(([([((([[[[([([[((([((([[([(([(([([(([[[((((([[([(([(((([(((([[([[[([[[([(([[((([((([([([[([[(([[([((([[[(((([((([((([([[([(([([([[((((([[((([([[([(([(([(([([[[[(([([[[[((([([([[[([[[[[([([[[([([[[([([((([((([[[[[(((((((([([[[[([([[((((([([([([([([([[(((((([[[(([([([[(([[(([[[[[([[((([([[[((([([[[[[(([[([[([([(([[(((([[[[(([[(([(([[(((([[([([([([(([((([([([(([[[([([((([((([([[[[[[([[([[([[[([[(([[(((([((([[[[[[([([(([[[((([(([[[((((([[[([([[[[(([([[((([[[([[[([([[(([[([([[[[(([(([[[([([([[(([[((([(([([[(([[([([((((([[(([[[((((([[[[[(((([[(([([[([([[(([[([[([[([[[[(([[[([([[[(([[[([[([(([[[[[[([[((((((([((((([([([[[([[[([[[[(([[((((([([[([([(([[([[([[[(((((([([[[(([(((((([([(((([[[([[(([[[[((([([((([([[((([(([((([(((((((([(((([((((([(([([((([(((((([[[[[([([(((([([[(([[(([[(([([[((([(([(([[(([([[([[[[([(([([(([[([([(([[[((([(([[([((([([((([([[((((([([[(((([[([[[([[[([[((((([([[[(([[(([[([(([[[[(([[[[([((([(([[[(([[[([[(((([[([[[(([([((([(([(([[(([[[[(([[([((([[[(([([[[[[([[(([(([[(([[[[[(([(([(([((([([[((([([[([((((([[(([([[((((([(([((((([(((([[(([[[((([[(([(([[[[[[([[(([([[([(([[[[[[([([[([((([[([((((([([([[((((([[(([[(([(((([(([([[[[([[([[([(([((([(((([([((([[[[(([(([(([[([(([((([[(((((([[[([[[[([(([[[[(([[[[[[[[(((([([[[(([([((([([(([[([(((([[(([([[[[[((((([[[((((((([[([(([(([[[((([([([[[[((([[((([[[[([(([(((([[(([((((([[[[([((([([([(([[(([(([(([((((([(([(([(([[([(([[([([[(([(([[((([[[[(([[[[([[([[([[(([([([([([[[([[([([[[[[[[(([[[(((((((((([[[[[[[([([([((([([([([[([[([([[([[([[[[([([([((([[[[([[[(([[[([((((([[[(([([(([[((([([(([[([[[([([([(([([[[[[([[[([([(([((((((([([[[[[[[([[([(((([[((([(((([([[[([((((([([[[(((([[([[(((((([[[([([([(([(([(((([[([[[(([([[[[[([([[[[[([((([(([[[([[((((([([([([[([([[([([[([[([((([[((([[[[[[([([[[([((([[[[((([(([[([([[([[([(([[[[[[([[[([[[((([([(([(((([[(([[(((([([[([[([[([[[[([[((((([((((([((([[[(([[[([[[[[([(([[([(((((([(([(((([((((([[([[[[([[(([[[([[(([[(([((([((([[([[[([[[[(((([[(((([[(([(((([[([((([[[(((((([([([(([((([([((([[([[([([[[[([([([[((((([[(([(([[[([[(([[[([(([[(((([([[[[[([[[[(((([[([([[(((([[[[[((([(([[[([((([(((((([([[[([[([(([[([([([[[((([(([[[[([((([(((((((((([[([[([((((([([[((([([[[[([([[(([[[([[[[[(([[[[(([(([(([[[[((([([[(((([[[(((((([(((((([[[[([(([([[([[[((((([[(((((([[[((([[([[[[[([((([[[[((([[[((([([(([([([[(([((([[[(([[[((([[[(([(([[(([([(([[([[([(((([([[([[[[([[([[([([[((((([[[(([[[[([[[(([[[[((([[((([([(([[[([(([([([[[[[[(([[[(([([([[[[[(([[([([((([[[([([(([[(([([(((([[[[[((((([(([[([[([[(([(([[([[([([([[(((([[[([(([([[[[[(((((([[[[(([(((([[[[[((([[(([([[[((([[([(((([[[((([([[([(((((([[(([[([([([((((([[((([((([[[[[[[[[([[[[([[[[[[[(([[[([[([([([[([[([((([([[[[[((([([[([([([[([[[[([((([([[[[[([([[[(([[(([[[(([[[[[([[[[[([([((([(([(([([[[([(([[[[[([[([([([[((([[([(((((((([([[[((([[[[[((([([[((((((([[(([([(((([[((([[[([((((([[(((([([((((([[([[[([([([(((([(([[([[([[([(((([[(([[[(([([((([([([([((([[([(((([([(([((([([[([(([[([((([[[(([(([[(((([[[[[((([([[([([[[[[((([[[[([([([[[((([[(([[((([[[[[([(([([[([([[[[([[([(([([((([(([((([([([(([(([([[([[[(([[(([[(([([([[[[[[([[([[[((([[(([(((([[[[[([(([[[[[[([([[([(([[[(([(((([[([[[[([((([[[(([([((([(([(([[[([((([((([((([[[(([(((([[[(((((([([(([([([[[[((((((([([[((([([(([(([[[[[(([[((([([((([[[([[([([[(([[[[(([([[[[[[((((([[([(([([[[(([([[([([[[[[(([(([[[([[(((([((((([([(([[((([([[([[(((([[[([(([[(((([[([[(([[[[[([(([([([[(([([([[((([[([([(((([((((([([(((([((((([[[([[(([[[[(([[(((([((([([[[[(([[([[([(([[[((([[((([([[[((([[[([(((((((([([[([[(((([(([[(([[([([([[[((([(([((([[[[[[[[([[[(([([[[([[(([([([[(([[[[[(((([([[[([[[((([[((((([((([((([(([([[([((((([([[[[[[[[([((([[[[([((((([[([(([[[[[[((([(([([[(([(([[([[[([(((([(((((([([[[([(((([[((([(([(([((([(([[((((([[[[([[((((([((([((([([([((((([((((((([[(([[[((((((((([[[((([(([[([(([[[([([(((((((([[([((([[[([[([[([(([[(((((((((([([(((([(([((([[(([[((([[[(([[[([(((([(((([[((([[[[([(([[[(((([[([((([[[[[(((([((((([([([[((((([[[[([([[(([[(((([[[([[([(([[[[((([[([((([(([[(((([((([([[([[([(([[(([[[((((([[[([(([[([[[[[(([([([((((([(([([([((([(([[[([([([((([[[[([[[([[([[(([([[([[[[[([([([[([([(([[[(([[([[((((((([[((([(([[((([(((([[((([[[[[(([((([([[([[(([[(([[(([[[[((([[[[(([[([(([((([[([[[[([[[[(((([[(([((([(([[([([([[([([[(([[([(((([(([((([((((([[((([[[[[([[[[[([((([(([[[[([[((([[[(([((([[(((([(([((([[([([[([[[(([([[[([([[[(([[([[[[[(([[([(([[(([([((((([([(((((([[[[[[((((([[[[[[[([[[(((((([[(([((([[([([((([[([((([([[[[((([([[[([([([(([[[(((([(((([(([[([[([(((([(([(((((([(([[((([[([[[([[([((([((([(((([[(([[[([([([([[([[(([[([(([[((([[([(([[[[[([[[[(((([[(([([[([([([([([[[[[([(([(((((([([(([([[[[[([[(([([((((([[(((([((([[[([[[(([[(([(([[(([[((([[([([([[([[[[(([[(((([[(((((([(([([[[[([([((([(([((((([[(([[[[[((((([[((((([[[[[[[[[[([[[(((((([((([(([(([[((([(([([[([[([[([[(((([[[(([([[([[[[(([([((([[[[(((([([(([[[[([([[(([[[[[([([((([((([(((([((([[[([[((((((([[[[([[[[((([([([([([[([[[[[((([([[([[[[[(([((([[([(((([[(((([([[([[([([(([[[(([([[((([([[[(([[([[[[([([([[[([[[([[(([[[((((((([([([[[((([(([(((([[([[[[[[[[([[[[[[[([[[[([[[([([((((((([[[([(([(((([((([[[[[[[[(([([[[[([((((([[(([(([([[[[([[(([((([([(([([(((([[[[(([[[([(([([[([[([[([[([([([([[([([([([[[(([([[[[(((([(((((([[([[[(([[([(([[([(((([[([[([([(([([[[[[[(((([[[(([[[[([((([(([(([([[[(([[[([[[(([[[((([(([([([[[[([[([[([[((((([([((([[[[[[[[[[(([[[[[(([[([[((([([(([[(((([((([([([[[(([[([((((([[([(([((((([(([[([((([[([[(([([[(([[((([[[[([[(([[[[(([[[([[[([[([([[[[([(((([[[(((([[(([(([[[[[([[[((([([((([([([[[(([([[[(((([[((([([[[[([[[([((((((([[([[[([[(((((([([[([[(([([((([[([[(((([((((([[[[([([(([(([(((([[[([([([[[(([[[(([([(([[[(([([[([([([([[(((([[([[[[([(([([([[((([([((([(([[[(((((((((((([([[[(([([[[[[([[([([(([((([([[[(((([([[[([[([([[([[(([[[[[[([([[[[[(((([[((([([((((([[((([([[([[((([[[[([[[[[[((([(((((([([((([[([[[(([[[([[[[[(([([[[(([((([(([(([((([([[[[[([((([[[[[[([[[((([[([[[[[[([[(([[[(((([[([[[[([([[([[[[[([[([([(((([([[[[[[[([[(([[([[[([(([[(([(((((([[[([([[[[[([((([(((([[[((([([([([[([[([((([[(([((([[[[(([[([(([[[[([[(((([([((([((((([[([(([[[[[([([[([[(([(([([[[[[[([[[(([[[([([[[([[[([[[([[[(([([([[([([[[[([(([[[([(([(([[([[[[([[[([[[[(([[([(([(([(([[((([[[(([(([[([[[[((((([[[[[[[([[[[[[([([[([[(([(([[[([[([(((([([[((([(([([([[[[(((([[[(([[[([[[(([[[(((([[[[(([[(([[[[([[((([([([(([([([[[[[([(((([((([(((([((([[([[[([(([([([([[([(((([(([[[[([[[([[[[(((([[(([[([([[[(((([[([[(([[[[([((([[[[[[(((([([[(([((([[([[(([((([[[([[([(([[([[[(([[[[[([[[[(([(((((([(([(((([[[[((([(([([[(([[(((([(([[(([(((([[[[([((((([[[(([[([(((([[[[(([((([[[((([(([[[[[((([[[[[(([[[[[[[([([[(([(([([(((([([([(([[[([([([(((((([((([[(([(((([(([[[[(((((([[[(((([[[([([[[(([([[[(([([[(([(([(((([[([[[[(((([[[((([[([[[[[[(([[((([[[[[(((([[([((([(((([(([([(([[[([[[([([[[[([[([[[[[[[[[([[([[((([[[[(([(([[((([([[[([[[(([([[[[[(([[[[((((((((([([(([[(([[(([((([[((([[[((([(([(((([([([[(((([[(([([([[([(([[[[([[[[[(([((((([([[[(([[([[[([[[[[[(([[[[[(((([[([[[(([[(([(([([[[((((((([[([[([[[(((((([[([(([[[([[(((([(([[([[(([[((((((([([[(((([[[((([([[[((((([[([[(([[[([[([[[([((((((((([[[([([[(([[[((([[[[[[[[([[([[([((((([((([(((((([([((([([(([(([[((((([([[[(((([([[((([((([[([((([(([((([[[(((((((([[((([[[([([[([[([(([([([([[((([[([[[[[[([([[([[(([([[((([[([([(([[([[[[[[[[[(((([[[[[[([(([[[([[([[[[(([((([(([(([[[([((((([(([[[[[([((((((((([[[[([[[(([[[[[(((([[[(([([[([[(([[[([(([[[[(([([([(([[([(([[(([[[([([[[[[[(([([[([((([(([((([([[[[[([[([[[([(([[[([[(([[(((([(([((((([(([[([((((((([[(([[([([[([[([[([[[((([([((([([[[(([(([[[[((([[[[(([([[[[(([(([[[[(([([[[((((([([([(((([([([[[([[([[(([[[([[[[[[[(((([([(([[(([(((([([[[((((([[[([(([[[([[((([[(([([[([([[[([([[(((([[([[([[([[[[[([[[[[[(([[((([([[[[([([(((([([(([[[(([[[([([([[[([(([[[[([[(((([([([[([([[[[(([([[[((([[[[[([([[([([[([(((((([[[[([(([[([([[(([[([(([([[([(([([(((((((([[[[(([[(([[([[([([(((([[([([[[([[[(((((((([([[[(([([[[[[([[([[((((([([[[[(((([[((([(((([([[([[[(([([[([([[((([([[[[[[(((((([[[((([[[[([([[([[[([([[([[[([[[[[[[(([(((([([[[[[([[([[(((([[[[([(([(([[((([[[([[(([([[([[[([[([[[(([(((([([[[[([([(([([([[[(([[[(([[([[[[[[(((([(((([[([((((([([[([(([[[([[[[(([[[[(([(([(([([[(((([[([[(((((([[([[[[([[([(([[[((([(([[[((([[[[[[[([(([(([((([[([[(([([(((([([(([[[([[[[([[[[[[[[(([((([([(((([([([([[[(([[([([([([[((([[[(([((([[((((([(([[[([(([[([(((([[([(([[[([[([[([[((([(([[[(([[[[[(((([(([[([[[[([[[[[(((([([([([[[[([([([([([([[([([[([[((((([[(([(((((((([((((((((([([((([[([((((((([[((([[(([[[[[[([((([[[[(((([[([([[(([((((([([[([[[[([(([[(([[((([([[[[[[(((([(([([[[(([[((([[[([(([(((((([([([[([[[[[[[(([[[((([([(([[([([(([[[([([[((([[((([[([[[[([[[[(([[[([([[[((([[[[[((([[[[((([((([(((([([[[(([([[((([([([[([[[([([([([[[(((([[((((([[[([[([[((([[[[[((((([[((([([[([([[((((((([((([[[[[(([([[((([[[[([(((([[([[[([[([[([[([([([[[([((([[(([((((([(((([(((([((((((([(([(((((([[[[([(([((([([[([([[[[([((((([[[(([[[((([[([[[[((([[[[[(((((([[[((([([([[([[[(((([[([([(([([[((([[(([[([[((([([((((((([((([[(((([[([[[[(((((([([[([(([((([[[([[[([[[[([(([[[[[(([([[[([([([[([([([[([[[(([(([[[([[([[[(([[[(([[[([(((((((([[[[[(([(([([[([([([[[((([((([[[(([[[([(((([[([[[(([([[[[[[((([([[([[[(((([[[([[[([[[(([[(([([[[([(([([([(([[([([[[([[(([[((((([([[[[[[([[[([((([(((([[([(([([[[[([((([[[((((([(([[[((((([[[([((((([[([((([[((((([[[(((([[[(([([[((([[[(([([(([[(([[[(((([([((([[(([((([([((([([([[([([[([[(([((((([[([[[[(([[[([[([[([((((((([([[([[([(([[[[(([[((([[((([([(([[([([(([([[((([[[((([[(([[(((([([[[[[[([([(([(([[((((((([((((((([([[([[((([[([([([([[(([[[((([[([(([([(([[([([(([([[[(((([[[([[(([([[[[[([[((([(([[([([([[(([[(([(([([[([[([[((([((([([[([(([(([[([[(([[(([((([((([[[[[[[(([[([[[[[[([[([((((([([[[([([([(([([[([([(([((((([[([([(([[[[[[[[[(([(([[[((([((([((([(((([[([([[(((((([[([[(([[[[[(([[([[[[[(((([[[[(([([[[[([((([[[[[[([[(([[([[[[((((((((((([([[([((([([[(([([(([[[(((((([[[[([(([[[[[[[(((((([([[(([([[[[([[(([([(((([([(([[[[[((([[([[(([([[[[((((([[([([(([[([[[[(([[(((([(([(([[[(([[[(([([[([(([(([(([[((([([[(([(([([[(((([[([(((((([((([[([(((((((((([((((([(([[((([(([[[[([([[(([((((([([((([[(([[(([[[[(([([[[([((([(([[([([[[[[([[(([((([[[[[[[([(((((([[[[[([(([((([[([([[[(([[([([(([((((((((([[((([([[[[(([[[[[(([([(([(([(([(([([[(([[[[[(([[[((((([[[([[[(([(([((([((([(([[(([([(([(([((([[(([[(((([[[(([[[[[[([((([([[(([[((([((([[([[[[[[([[[[(((([(([([([[(([[([[([((([[(([[[[[([([(([([([[[([[[[([[([[[[[[([[([[[[((([[([(((([([((([(([[[[[((([((((([[(([([[[[([((([(((([((([(([[([[[[([((([[[(([[([([([((([([((([[[[([((([[[([[(([(([([([[[[((([[([((((((([(([(([([(((([([[([[[[[[([(([[[([[[(([([((([[[(([((((([(([([[[(([[[[((([([([([[([[[([[(([[[[[(([[([([(([[[([([[([([(([[[([(((((([([([[[[(([[[[[[[(([((([[([[[([(([[(([[[([((([([[[([[(([((([(([[[([[[([(((([[(((([([([[[(([[[([((([(([(([[([([([((((([[([(([((([[[[[((((((((([[(((([((([[[[[[[[[[(([[([([([[[[[(([(([(([([[[(((([[[([(([[([[([[[([((([[[([([([(([(([[([([[[[[(([(((([[(([[([([([[[([[[((([([[[[([([((([[[([((([((((([([[[[[[[[[([(([([((((([[([[[[[[[(((([((([([([(((([[[[([(([([((([([((((([[(([[((((([(((((([[[(([[((([([(([[[[(([(([[(([[[((([[([(([([[[[([([[[[([((([(((([(([[((((([([[([[((((((([[[([(([([[[[[([([[[[[([[(([(([[[[[([(((((([[[((([(([(([([(([[(((([[((((([[([[((([[[[((([[([([(([(([[[[[[([[(([([[[(([([[([[([((((([[([[[([[[([[([[([(([[[([[[[([([([(([[[[(([([[([[[[(([[[[[([([([([[(((([([((([[(([[[([[[(([([[[([([([[([([[[[([[[([(([[([(([((([([([[([(([[((([([[([[[[(((([([[([[([[((((([[[([([([([[(([(((([([([[[[[(([[[[(([[((([[[([([([[[[[((((([([[([([(([[[((([[([[(([[[([([([(([(((([[[([[[[(((([([[[[[([[([(((((([[[((([([(([[[(((([[([(((([[((([([[([((([[[[([[[((([([(([([([[((([([[[((([[[([[[(([[[[[[(([[[(([[[[[(([(((((([((([(([(([((([((([(([([[[[([([([([[[([[[(([[([([(((([((((([[[[[[[(([([[[[[([[[[([(([[[[[[[([(((([[[(([[[([(([([[[[(([(([[[(((((((([(([(([[([([[(([([[(([([[[[[(((([([[[((([((([[([((([([((([(([((([((((([([((([([[[[(([(((([((([[((([((([((([([(((([([(([((([[(([(([[([([[(([[[[(((((([[[[(([[((([[[((([[[([([[[[(([(((((([((([[(([[[([[([(((([[([((([[([[([([[[(([((([([((((([([([(((([(((([((([([([[([((([([[([([[([[[(([[[([([[([(([(([[(([([[[([[(([([[[[([[[(([[[(([[[([[[(([[(((((([[(([[(((([([[([([[(([(([[[[[(([(([[[[([([([[([([[[[(([[[(([(([([[[[([[[[[([[((([((([[(([[([[[([[[(((((([([[(([(((((([[[[[[[([[(([([[([([[[[([[([([[([(((([[[[([[([[(((([[(([([([(((((([[[([[(((((((([[[[[([([(([([([(((([[[[(([(([([[([[(([[[[[([[[[([[([(([[([[[([[(([([((([[([((([[([[[[[(((((([[([(([([[(([[([([[[[[([([[((((((([[[[[(([[[[[[[(([[([[[[(([((([[([([[[[[[[[[([[(((([(([(([((([[(([(([([[[[[[([([[(((([[((([[((([((([(([(([[[[[(([[[((([[[[[([[[[((([[[(([(([[(([([[[[[([(([[[[[(([(([(((([[[[([([([((([[(([(((((((((([((([(([[(((([[([((([[[([(([((([(((((([[[([(([[([[[[[(((((([[(([[([[[[[([[[[[([([((([([(([([[([([([([[[[((((([([([([((([[([((((((([(((([([(((([([((([(([[([(([[[[[[([([((([[[([([[([[(([([[([(([((([[[[[[(((([([[[([[[[[[(([[[[([[((([[[([([([(((([([[[(([[([[([(([[([[((((((([[[((([([[[([[(([[((([((([[[[(([(([([[[(((((([([[[[[[(([[(([[(((([[([[[[([(((([((([([[[[[[[(([[[([[[[[[([[[([[[(([((([[([[([(((([([[[[[([((([(([[[(([(((([[[[(([([[((((([[(([([[(([[[[[([[[(([[([[[([[(((([(([[(([([[[[(((([[[([[[([[[[[[([([[[([([([((([[[[[([(([[((([([([(([[[([([[([([([(([[(([([[(([([(((([[[[[(((([(([([([([([[[[[[[[([((([(((((([(([[[(([[(((([[[([[([[((([[([([((((([[(([[([[((([([[([[[(([[[((([[([(([((([([[[[[(([([[[[[[[[([[((([[[([[[([((([[[[[(([([(([[[[[[((([([([[(([([[[[(([([[(([([[[([([[[[([[([[[([[[([[([[[[((([([(([(([(([(([[([([(((([[[[(([([([((([(([[(([[([[[([[(([[[(([([([(([([((((([([[((([([([[((([(([[[(([[[[[([([([[[[([(([([((([([([([[[([[([[[[[([[((([(([[((([[(([((([[(([([[([[[([[([[[[[(([(([[((([[[[([(((([[(([((([((((((((([(([([([[([[[[[[[[(([(((([[[([[[[[(([(([[[([([[([([([[[([(([([((([(((([[[[[[[[[[((((([[[[(([([([[(([[([([((([[([[([[(([[(([[([[[[(((([([[([[[[[[([[[[[([[[([(((([[([([(([[((([[[[([[((([[(([[[[((((([[[[(([([[[([[[((([([[[[((([[[([(([[[(([[([[([[([(([[[[[(([[[[(([[[[[([[[[([[[(((([(([([[([[[((((([[([[[([[[([[(([[[[[([[([([([(((([([[[(((([[(((((((([([((([(([[(([((([([(([[[([[[([([[[(([((([[[[((([[[(([[[([[[([((([[[[([[[[([(([[[([[(([[[[([(((([(([[[((((([[([([(([[[[(([((([([([[[((([((([[[(([[([(([([((([[[([[[[(([[(((([[[[[((([[[([[((([(([[([((((((([[(([([(([(([([[([[(([([[([([([[([(([[([[((([(([(([(([([[([(((([[([[([((([([([([[[([([(([([[(([(([([((((([[([[[[([(([[[[([[[((((([(((([[([(([((([[[[[((([[((((((([(([[[[(([[[((([([[[[([[(((([([([[([[[[[((([[[[[([[((([([([(([[[([[[[[[[[[[([([([[([[[((([([[((([[[([[[[([[[[[[[[[[[[[(([[((([((([[[[([([(((([[[([(((([((((([[[[[[([([[[[[([[((([([(([((((((([([(([(((([[([[[([(([[([[([([(([[[([(([[(([([((([[((((([[([[[([[([[((((((([(([([(([([(([((([[([[([((([(((([(([([((([[[([[[[[[[[[[(([([[([[[[[([[[(((([[[([[[([[[[[[([[([(((([[[([([[([([((([([[[[([([[[[[[(([([[([(([([([(([[(([(([[[((([[(([([[[([(((([([([(((((([[(([(((((([[(([(([[[([[([[[([([([[[([([[([[[([((([([[([[([([[(([[[(([[(([[[([([((([((([[([[((([[[[[([((([[[([[(((((([[([(([(([[[(([[[[[[[((([((([((([((((([([[([([(([[(([(((([[[([([[[(([(((([[([[(([(([((((([[([[([((((([[[((([((([[[[(((((([([(((([[[(([([(([([[([[((((([[[((([[((((([([[((([[[(([((([[[[([[[[([[([[(([[([([([(([(([((([([([[[([[(([([((([([([((([[[[[[[([[[([[[[[[([[[(([([[[((([(([(([([[[[[([(((([[[([[([(([[[(([[[([[([(([[[[((([[(([([([(([([[[(([(([([(((((([((([([[([(([([[[([([([[([[((((([([([(([(([([[([(([[[[[[[[(((([[((([((((([([[[[([[([([([(([([[[[[(([(([[[((([([[(((((([[[[[([[[[([([(([[[(([[(((((([((([([[([[([((([[[([[[[[[((([([([[[[([[[[[[([(([[[[([([[[(([([[[((([[(((([[((([[(([[(([[[((([([[[[[[[([(([(((([([[(((((([((([((([([[[[(([[([[[((([[((([(([([[([([(((([([[[[[((([[(([(([[[([([[[([(((([([([(([([(([(([[((([[(([(([[[[[[(([[([[[((([([[(([[[[([([[(((([((([[([[(([[(((([([(((([[[([[(([([((((([[[[([(([[([(((([[([[[[((([[[[[[[[[[[([[([((([([[([(([([[([([[[[[(([[((([[[[([(([(([[[([[(([(((([(([[[(([([(([(([((([([(([[[[[([[[(([(([((([(([[[([([((([[([[([(((([[[([[([((([[[(([((((([([[[[(([[((((([[[(((([([[[(([(([(([[[[[([([[((([(([[([((([(([[[((((([[[(([([([[([([[([(([[[[((([([(([[(([[(([(([(([[[((([([(([((([[([([[[([[[(([([[([(((([([[[(([[(([([[([((([(([(([[[[[(([(((([[((([[([[[[[([[(([[(([([(([((([[[([[[((((((([([[[[[[[[[[([([([(([([([([[[([(([(([((([([[(((([[([[(([([((([([[[[[(([([([[[([(([([(([([[[[(((([(([((([[[[[[([[([[[([(((([([[(([[[[[([[([(([[[([(((([[(((([[((([[[((((([[(((([[(([[(([([((([[[[[[[(((([[([([[([([[((([[[[[[([[[[[([([[([[[[[((([(([([[[[[[(([[[(((((([([(((([[[[[([([[[[[(([(([[[[[[[[[((([([(([[((([(((((([(([([[(([[[(([([(([[(([([[((([([[([[[[([(([[[[(([(((([[([[[[(([([[([([([[[((([[([[[((((([(([[(([[([[((((([[[([[[[[[(([(((([[([[(((([[[[[([[([([[[([(([[[([[[[(([[[(([[(([[[([[(((([[((([([((([[[([[[[(((((([[(([[[((((([(((((((([([[[[(((([((((((((((([[[([[[[[([[(([(([[[[[((([([((((((((([[[([[(([(([[[[[[[([[[[(([[([([[([[(([([[[[[[((((((([((([([(([[(([((([(((([(([([([(((([[((([(((([[[(([[[[[[[(([(([[([(((([[([[([([[((((((([((((([[[[(((([[[[(([(([[[[((((([[[([([([[[[([([[[[[((((((([((([[([(([(([[(([[((([((((([([[[(([([[(([([[([[((([(([[([(([([(([([((([[[[[(([(([(([([[((([[[(((([[(([([[[[(([[[[[[[[[[([(([[[[[(([([[((([(([[([[[[([([([[[([([[[(([[[[((([([((([([[([[([(([[[([(((([(([(([([(([(((((([[([[[[[([([([((([[[[[([[[[[[(([([[([(((([([[([([[[([[[[((([([[[[[(([[(((([((([(([[[[([([[((([[[([((([[(([[(([[[[([(([[[([[[([([[([[(((([([[([[([[[[(([([[([([[[[[[([(((((([[(((([(((([((([[[[[[(([[[[([(([[[([[[(([[[([((([[[[((([[((((([([([[(([(([([[[([[(([[((([([([((((((([[((((([[([([([(([([((([(([([[([[[[([([[[([[([[[([[[([(([[[((([((([[([[([([([[([[[[((([(([(((((((([([((((([([[[[[[([[([[[([([[(([((([[([(([(([(([[[[[[(([((([(((([(([(([([[[[((([[[(([([((([[(([(([([[[([(([((([[([[([[([[[([([([((([[((((([[(([[(((([([(((([[(((([[[((([([[[[[[[((([((((([([[(([[[(([(((([([[[(([[[[(([[[([(([((([[[[[[[[(([((([([([([[[((([[([[[((([(([[[[([[[([([[[([(([[[((((([[[[[(((([[(([([((((([[(([[[[(((([[((([[([[((([[([[[[([((((([((([[((([[([([[([([[[([[([[[[[[[([[((([(([[([[([[[([(([[(([[(((([([[[[[[[([([[[[([[[(([([(([[([[[([([[[([[([[((((([((([([([[(([(([(((([[[[([[([[[[[(([[[[[([([[[(([[[[[(([[([([[([((((([([(([[[(([(([[([([((([[[[([[([[[[[(([([(([[[([([[(([([[(((([[(([[(([[((([([([[([((((([[[([([([[([([([([([[[([[([([((([((((([[[(([(([(([((((((((([[(((([[([[[((([((([[[(((([([([([[(([([(([([((([([[((([[([([((([((([[[[[[([([([[[((([[(((([([[[([[[[([[[([[[[[[[(([([[(([[([(([([((((([[([((([([([([([[[[[([([([((([([[[([[([[[([[([([[[[([((([[(([[[([(([[([[([[[(((([([((([(([((([[[((([([[([[[[([([[([([((([[(([((([[[(([[((([([((([[([(((([([([[([([([[([([([((([(((((((((([([([([[[((([[(([(([[[[[((([(((((((([([([((([((([[[([(((([(((([[((((([((([(([([[[(([([([(([([[[([(((([[[[([([(([([[[(([(([[(((([(([[((([((((([[[([[[(([([([([[([[[((([[([[[(([[[([[[((([[[(([([(([([((([(((([[[([[([([[([([((([([[([(([(([[([((((([[[[(([[[[[[[([(((([[[([([([([[[([([([(([(([((([((([([[(([[(([(([[([(([([[([[([[[[[[([[((((([((([(((([([[(([(((((([(((([(([([([[([([([(([[[(([[([[[([[([[[[([[[[(([([[(([[(([((([[[(([[[([([((((((([([[[(([([[((([((([[[[[[(([(((([([([[(([([[[[([([(([([[([[[[[((([[[([[[([([([([([[[[((([([([(([[((([[[[(((((([([[((([(([([((([[([([(([[([[([(([[((((((((([[([[[(([[[[([([[([(([[([([(([[[[(((([[[[[([[([(([((([[[([[((([(([([(([((((([([[[(([(([[([([[[(((([[[[[([[[[(((((([[([[([([[([[(([([[[([[[[[[([([[(([([[[[([([[([[[[([([[[(([([[([([[[((((([((((((((((([[[([([(([([[[[((([[[[([[([[[([([[[[[([([[[[[([[((([([[[((([[([([[(([([([[(([[([[[[[([[((([[(((([([[([([[([([([[[([((([[[[[(([([[[[([([([(([(((((([[([[[[([([([[[([([[[[(([((([[(([(((([(([[(([[[[[([[(([((([[[[[([([[[([((((([[[[[[[([([([[[[([[[(((([([((([[((([[((((([[[[([([[([([[([[([[[((([(([[[((([([([[[(([([([([([[[([([([(([[[[[[(([([([[([([([((((([[([[[([[((([[([([((((([[([(([([[[((([(([([[[[((([[[[[((([[((([((([((([[[([[[[([((([(([[(([([(([([([((([[[[[([[[([[[[([([[[(([((([(((([[[[[(([([(([([[[[[(([(([([((([([[[([([(((([([([(([([[[([[([(([[([([[[[[(([[([((([[[[([[([[(([[((((([([[[([((((([([[([[(([([(((([(((([[[[[([[([[[[[((([([[(((([[[([[[([[(([((((([([(((([((([([([((([([[[[[([([([([[([([[((([[([[([([([([([((((([(([(([(([([([([[[((([(([[(([[[(([[(([([[[[([[[[[([[(([[([[[([(([([(([[[(([[(([[[[(([[[(([[[[[[[((([[[(([[[([[[[[[(([[[[[[([((((([[[([((([[[([[[(((([[(([((([[[([[(((((([[((((([(((([[(([[(((([([[[(((((([[([[[((([([[([([([[((([[[[[([[([(((([[[(((([(([([[[([(([(([(([([[[([([[[[[(([[(([[[([[[((([[[[[(([[[(([[([(([[([([[[[([[(([[([([[(([([[([[(([([[([([[([([((([([([[[(([[([[[[[(((([((((([[[[(([[[[[[((((((((([[(([[[[([[([((([([[[((([(((((((([([(([[((([([[[[[([(([[[([[[(([[[[([(((([[[[[((([[[[[([[(([[[[[([[[((([([([[[(((([([[[[(([((([[[[[([([[([(([((([(((([[([([(((([[((([[[([[[[((((((([[[[([[[([([([((([(([[[[(([([(([(([([([[([[[(([[[[[([(([([[(([[(([[[([[[[[[([[[([(((([([[[[[([([[([([(([([(([([[[[([[([[([(([(((((((([[(([([[([((([[([[([[(([[([(([[(([([(([([(([([([[(([[[(((((([[[(([([(([[((([[([((((((((((([([[[((([([([([[[(((([((((([([[((([([(([[[(([((([[[[[[[([([[(([[[(([(([([[([[[[(([([[[([(((([(([[[([[[((([[[[[[[(((([[[[[[[[[([([([[(([[([([[(((([([[((([([((((([(((((([[[((([[[([[((([[(([[([[(([[[[[[([[[[([[[[((([(([(([[[[[[[(((([([([(([((((([[([[(((([([[[((((([([(([[[[[[(([(((([[(([([((([[([((([(([[[([([([([[[[(([[(((([([([[(([((([([[(((([[((([[(([((((([[([[((([([[([(([(([((((([[(([(([[[([[[[[(((([[(([([[[([(([[([([[([[[[[[([([([(([(([((([[((([([[[([[[((([([[[[[[[([[((([([[([((((([[([([[[[[([(([[((((([(([[[([[[[[[[([([[[[([(((([(([[([[[([[([[[[(([[([[[[[([([([[(([([[([[([([([[[[[[[([([[(([([([((((([([([[(([(((([[[(((([[[([([[[(((((([[(([[[(([([[([(([([(([[([[[[[[(([([[([([(([[[(([([[[(([[[[[([[[(((([((([(([[((([([([((((([([[((([[[[[([[[[([([[[[[([[([((([[[(([(([([([[((([[([((([[(([[(([[[(([((((([(([([([([[[([[([([([[(([([([[[([(((([(([((((([[(([[[[([(([[[[[(([(([(([((([((([[(([[([([[(([((([[[[[(((((([[((([[[[(([([([([[([(([[([([[[([((([([(((([[[[([[([[[[(([[(([((([((([[(([[[([[[((((([(([([([(((([((([(([[(((([((([[([[[([(([[([[[[(((((([[[((([([[[[((((([[[[(([([[[[([[([((([[[[[[[[[[(((([([[([[[((((((([([[([[((([(([([([[[(([((([[[[[(([[[([[([[[[[[[[[[[([[(([([[[[([(([[[([([(([[[[(([(([([[([[[([((((([[([[(((([[((([[[([(((([([(([[([[(([[(([[([(([[(([[([(((([([[[[((([((([[[[([([(([([((((((([(((([[[(([([[[([([[([[((((([[[(([([(([([[((([[[[[[([([[[(([((((((([([[[[([[[[([((((((([(([((([([[[[((([[(([[([((([[(((([([([[[[(([([[[[(([(([[[[((([(([[[[([[([[([[[(([([[[[([[[(([(([[((((([[((([([[(((([[[((([[[[[[(((((((((([[[([[[[[[(((((((((((([([[[([(((([([((((([([[[[([[[(([[((([[([([[[((((([([(([([([[[[([[([[([[([(([((((([[([[((([[[([([[[[(([((((([[[(([[(((([[(([[([(([[(([((([(([[([(([([(([(([(([((((([(([[(([([[[((([(([(([((([(((([[(([[([(([[[([((([[([(([[[(([([([[((((((([[([(((((([(((([[[([[(([((([([([(((([([(((([[((([[([([(((([((((((([[(([((((([[([[([[[[[(([[((([((([[([[[([(((([[([[(((([([((([[([[[(([[([([[[[([[((([[([((([[([([[[[(((((([([[([[([((((((([(((((((([(([[[((([[[([(([[([((([(([[([(([(([[[[[((([[[[[[(([[((((((([[([([[[[[([[[(([[((([[([([[([[([(([[([[[[(([[[[([[((((([(([[[(([[[(([[[(((([[[([([(([[(((([([[((([((([[[[(([([[((((([[[[[([[((((([[[[([[(([([([[((([([[[[[[(((((((((([[[(([[[[(((([([[([[([[[[(([(((([((([[[[([[[(([[(([[[[[[((([[[[[(([([([[([[(([([[([((([((([(([([[[([[[([(([(((([[[([((((([(([[((((([[[([(((((([((([(([[[[([([((([[([[[([[[([[[((([[[([([([[[(([[[[[([([([[([[([([[[[[([([(([((([(([([(([((([((((([([((([((([([[[[(([[([[([(((([([[[[[([[([(([[([[[[[([(([[[((((([[(([((([((([([[([[(([(([([[([([(([([([([[[[([([[((((([([[[[[[[([([(((((([([([[([[[([[[[[[((([[(([[((([(([[([[[((([[([[[[[([([[[[(([((([[(((([[((([[[[(((([(([[[[([((((((([(([(((([([([(([[[[((([(([[[[([[[((([[[[[[((((([[[[((([[[((((((((([(([([[(([[((([[(([[(((([([((([[([(((([([[[(([[[[([(([[[[(([(((([[[[[([[([(([([(((((([([(([([[(((([[[([[[[[[([(([[[[(([[[([(((([([(([(((((([[([[((([([(([[([((([([[([(([[[[([[([((([([(((([([[(([[[([[([[([([[((([[[([(([([([[[[([[[[([[((((([([[(([[[(([[[[[[[[(([[[(([[(([((([[[(([([([([[([[[((((([(([((((([[[[[([[(([[[([[(([[([([((((([[[((((([[[[(((([([[[([(([[(((([[[(([([([[([[[([[(([([[((([[((([[[((((([[((([[[[[(([([(([[[((([[([(([[[((([[[[(((([[[(((((([([([([[((([[[[([(((([[(([((([((([[[[[([[[([([([[(([(((((([(([[((((([[[[[[[([([((([((([[[[[([((((((([[[[([[(([[[[([[[[[([([[[[[(((([[([(((([([[[([[(([((([([[[[(([([(([(((([([[((([[[([([[([((([[(([[[((([([((([[([(([([(([([((([[((([([[(([(((([(((([([(([[[([(([[(((([((([(([[[[([[([[[((((([(([((([([([(((([([[[[(((([([([((((([([[([([[[[((([([(([((([([(([[([[[[(((([[([[(([[[[[((((([([(([(([([([[([[[[[(((((((([(([[[([(([(([((([[([[[[([[[[(([[([(([([[[(([(([(([((([[[(((([([[[((([([([([(([[([((((((([(([(([(([[[(([(([[(([((([(([(([[[[[([([[[([((([((([((([((((([[([((([((([[[(([[(([[[[[[([([[[([[[[([((([([[([(([(([([([([((([(([([[([[((([[[((((((([([(([([[[[(([[([((((([(([[(([([[(([[[[[[[(([(([(((([([([([[[((([(([[((([([(((([[(([([(([([[[((([[((((((([[(([(([([[[[([(([[[[([([[((([[[([([(((([[([[[([[[([[[(([[[([[[([([[[(([([([[(([[(([[([(((([[[((([[([((([[((([[(([[[([([([[[([([([[([[([[((((([[((([([[[(([([[[[[([[(([(([[([([((((((([([[[([((([((([[[(([([[[([[[[([(((([[[(([[([[((([[(([[[[[[([[((([(([[([[[[[(([((([((([[[([[([[((([(([((((([(([[([([([([(([[([([(((([([[[[[(((([[([[([[([[[([[[[[([([[((([([((((([([[[[([[([(([([(([[[[(([(([([([(([([([[([[[[[([[[((([([(([([(((([[(([[([[(([((([[((([([[[([([[((([(([[([([(([([[([[[[[([((([[[[[([[([[((([((([([([((([[(([[(([[(([([([[([(([[[([([[([([[[((([(([([[[([([[([[[(((([[[(([((([([((([([((((((((([[([[(([([[[[([[([[([([([([(([[[[(([[(([((([([((([[[[([([(([[([[([(([([([(([(((([([([((([([((([((([[[[[([([[([[[[((((((((([[([([[(([[((((((([[([([[(([[[[[[[([[([[(([((([(((([([(((([[([([[([([[[[[([([[[([([[([[[[(([((((([([(((([[[[([([([[([(([[[([[[[[[([((([((([((((((([([([[(([((([[([[[(([[((([[[[(([[(([[([[(([[(([[[(([[[[[[[([([[[([([[[([[([([[[[[([([(([[([(([([((([[([((([(([([((([[[[((([[[[[[[([[([([[[[[(([(([[[((([(([[([[([[(([(([([(([[[(((([((([[[((([[((([[([(([(([[([((([[([[([([(((([((([([([[[([[(((([[([[[[[(([[([([([[(([[[[[[[([[(([[[([[[[[([([[(([(([[([[[[[[[((([(([[[((([(((([([([([[[((((([([(([(((([((([([[[[([[([([[[[([[(([(([(((([[[(([[[[[[(((((([[(([[([([([([(((((([((([[[[[[[[(([([([((([[(([(((([[([[(((([([(([([[(((([([(([(([([[[[([[[[((([([[[((([([[([[[([([[([((([[((([(((([(([([(([[([[[([(([((((([(([[([((([([(([[[([((((([([([([[([[(([((([[(((([([[([([([([[([[[[[(((([([(([((((((([(([([[(([(((([[[[([([[[[[[([[[[[[(([[(([([[[[[(([[[(([[[[[(((([[[[([[[[([([([([[[([([[([((((([([[([((([[(((([[[[[([((((((([((([(((((((((([((([[[[[([[[(([[([([([(([[[([[[(((([((([[[[[(([((([(([(((([([[(([([[[[([[[[[([[((([([((([[(([[(([[(([(([([((([((([[([[((([([(([(([([([([[[[(([[[[[([[[(([(((([[[[([[(([((([(([[((((([[[([[(((([([((([([([([(((([([(([[([(([[((((((((([(([(([(([(((([[[[[(([[[(([(([[[(([[([[[([([((([(((([(([[[[[((((([[((([[([(([[[([([[(((([([([[[[[[([(([[(((([[((([(([((((((([(((([(((([([(((((([[[((((([([[([[([[([[(((([[((((([([(((([((([(([([([[([([[(([[([([([[[((([((((([[([[(([[(([[[[[[([([[(([[(([[[[[[[([[[[[[[([[(((((([((((([(([[[[(((([[([(([([(([[([[[[([((([((([(([[([(([[[([[[[((((((([(([([([[([(([(([[(((([[(((([([[([[[[([[([[([([([([[[[[([(([([[[(([([(((([[((([((([([([[[[([(([[[[(([([([([([((([[[[((([[[([[(((([((([([([[(([[[[[((([[([[[[[([[[[[([(([[((([[((([(([[[([[(([[([([([[(([[([([[(((([([((((([[((([[((([[[[[[(((((((([(([([[([((([(((((([(([[((([(([[[[([[(((((([[(([(([[[(([(([[([([([[([(((((((((([[(((([(([(([([([[([[[([([[([[(([([((((([[[(((([(((([[((([([[[[((([[(([[((([[([[([(([[([[((((([(((([(([([[(((([([[([[[[(([([([([((([([[[[([(([[(((((([[((([[(([[[[([[[[((((([(((([[[((([[[([[(([(([([([([([(([[((([(([[(([[[([(([[[[(((([[[(((([[((([([[([([[([[[[(((([([[[([([[(([[(([((([((((([([([(([([([([(([(([[([(((([[[(([((([[[[[([([[([([[[[[[[[([[[[([([(([([[[[([[([(([([([([(([([[[[[([([[(([[(([([[(((((([(([[[[[[[(([[(([[[(((([[[[[([[[[[[([[([[(([([([[[((([([[[[[([[([(([[([[[[(([((([[[((((([[((([[[[[[[[[[(((([(([((((([(([[(([([[([(([(([(((([[(([[[([[((((((([((([([((([[[[(((([((([[[(([[[[[[[([([((([([(((([([(([([[([([[[[(((([([[(([((([[([[(([[([[[[([([([(([[([[(([([(((((([[[[([([[[([(([((([([([[[([([[[[([[[(([[([([([[(([([[[((([[[([((([(((([[[(([([[((([[[([[[[([[[[[(([([[(([[([((([[([((([[([[(([([[((([[(([[([[[([[[[(((([[[([(([(([[((([[(([((([[(((([[([[[([[([(([[((([[[[([([(([[([(((([[[([[[[([[(((([((((([([[([([(([[[[[([(([[([[([[[([[(([([[(([(([[(([[[((([([(((((([[[[[[[[((([[((([([([[[[[([[(([[([([([([[(([([[[((((([[([[[([[[([[[[([([([[(([[[(((((([(([[([[([[((([[([(([([((([[(([[((([([[(([([([[(([[(([([((((([[[(([([[[([((([[[([(([((([([(([[[([[([[[([(((((([[([[[(((([[[([([([[([((((([[[[(([(((((([([((((([[[[[([[(([[[[[[([((((([[[((([[(([[[([[((((([[(([[[([[[([([(([[(([([[([(([(((([([[[[([([(([((([[([[([([[[([(([[(([[([(((([([((((([((([(([[[(([[[[(((([[(([(((([(((([[[[((([[(([([((((([[[(([[[(([((((([([[([[((([[[([[(([[(([((([([(((([[((([((([[[([(((([[(((([[([[([[[((([[[[[[[[[([[([[([[[([[[([[([(([((([[[(([((((([[(((((([((([[(((([[[(([((([[[[([([(((((([[(([[[([[(([([[[[(([([([(([((((([[([[[(([((([[([[[[[[[[([((([([[[[[(([(((([[([[(([[[[([[[([[((([(((([([(((([([[[([([[((([[(([[[([(([[[([([(([([(((([[(([([(([[[([[(([[([([[[[[[[[[(((([([[[[(([[[(((([[(((([[([((([([(([[[[[[[((([[([[[([((([[[([[((([([[[[[([([([[((([(([(([[[([[[((([(([((([[((((([[([[(((((([([([[[[[([[([[[((([[((((([([(([[[([[([(((([((((([(([(([((([[[[([[[[([(([[[[(([[(([((([[[[[[[[([([[([([(((((([([[[[[[([((((((([([[([((((([[([((([([([[((([[([(((([[[((([([[(([([(((([(([(([(((([((((([[[([[([[([(([([[[[(([[[[[([[(([[[[([[([[([[([[[[([([([([[([[(((([([([[((((([([(([((([(([(([[[[[[[[((([([([[[[([([([([([[[((((([(([[(([[[[([[([[[[((([[([((([(([[(([([[(((((([[([([([[([[([(([((([(([([[((([[[(([[[[[[[[(([(([((([([[[[[[[[[[(([[([[[[((([[(([([[(([([[([(([([([([[[([(([((([([[[[([[((([[[[(((((([[(((([[(([([[([[[[[[(([[(([(([([([[(([[([[[[[((([[[([((([([([([([([([((([([[(((([(((([[[([[[[[[([[([[[[[([[([[(([(([([(([[([[(([(((([[([([((([([[([(([[((([[[[([[[((((([[([[[[[[([([([[[([[[([(([((((([[((([[[((((([[[([[[((((([([[[[(((([([[[((([[(([[((([((([[[(([((([([([[[[[([([((([(((([([((([([[([(([([[([([[([[([([(([([[[[((([(((([[([[([[([[[([([[[(([[[[[[[(([[[[((((([[(([(((([(((([([[[[((([[[[(([(([(([[((([([((([([[([[(([[(([[[([([(((([[([[([[[[((([[((([[[([(([(([(([[([([[(([[([([[[([([[[(([([(((([((([[([[([([[([[(((([[([[(([[[([(([[[[[([[[[([(([([([[([(([[((([(([[[[[(([[([([[[[[((([([[[(([[[((([[([(([[((([[[([[(([[[((([([((((([[([([[([([([[[[[(([[(([[(([(([[[[((([([[[[[([[[[[[[[([[[(([([(((([((([([[((([[[[((([([[([[([([[[([[[[[([([(([(([([[[([(((([(([[((((([[([(([[[[([(([[[(([([[([([([[[[(((([([[[[([([[(([(((([(((([[[[([((([[[(([([((([[([((((([((([[[(([([([[[[([((([(((((([(([[[[[(([[([[[((((([[[[[[[[(([(([((([[[[[[([[[(([(([((([[(((([[[[(([[(((([(([[[[[[([([([[[([(((((([((((([[[([([[[(([[([([[([(([([[([(([[[[(([[(([[[((((([(([[[([(((([(([[[(([[(([[((([[((([(((([[[[[(([([(([(([[[(([((([[[[[([(([[([(([[([[(([([(([([((([([[([(([([[[(([(([[([[[(([[(([((([[(([[[((([[[[[([[((([([[(([[([[([[[([[[[((([[[[([[[([[[[[[([[[[(([[[([(([([[[([((([[([[([((([((([[([[[((((([[(([((((([((([[(([(([[[[((([(([[[[([([([([([(((([((([[[[([[[(((((([([(([([[[([(([[(([[(((([([([[([([((([([[[(([([([((([(([([((([[[[([([([[([([(([[(([(((([[[[[[[([([[[(((([[((([[[[[[([[[((((([([([[([(([[[([[(((((([[[[([[[([[[[(([(([[(((((([([[([([([(((([[([(((((([((((([[(([([(([[((((((([[(([[((([[[[[[(([[[[([(([(([[((([[([[[([([[(([[(([[([([([([(([(([([((([(([[((([([[((([[[([[(((((((([[(((([[(([([[[[([([((([((([[(([[(([[[[[[([[[[(([[(([[([[[[[([([([[[[[(([[([(([(([[[[(([[([[([[((([([((([[([([([[([[([[([([([[([[[(([(([[(([([[[(([(((([[[(((([[(((([[(((([((([(([(([((([(([(([([([(([([((((((([([((((([(([(([(([[(([([[[((([(([[(((([(([(((([([([[[((((((([(([([([([[((([([[([[[([[[[[[([[[[[(([[([((((([([([([(([[[[((([[[(((([(((([[([((((((([((([([[([[]])]])])))])))))))])]]))))]))))]]])))]]]]))])])])])))))])]]))]]]]])]]]]]])]]])]])])))]])])])]))])))))))]]])])]))))]))]))))]]))])))]]])]))]]))]))]))])))))])])))))))])]))])])]))]))])))]))]))])))]))))]]))))]]))))]]]))))]))]]])]))]]))]))]]])]])])])]])]])]])])])]])))])])))]])]])]]))]]]]))]))])]]))]]]]])])])]]]]])]]))]]))]]]])]]]]]]))]]))]])))])))])])]]]])]))]]))))]]))))))))]])]]])))]])])))]]))])))])]))]))])])])])]]))]]))]])])]]])]])))]]))]))])]]]]))]]]]]])))]]))]])))))))]]))])]))]])))))]))))))])]]))))])])])]])]))))))]]))]))]]]])]]])]]]]))))))]])]]]))])]])])])))))]]])]]]]]])))]]))))]]])])]]]]]]]))))]))]]))])])]])])])]]]])))])]))])))])])]))]]])])))])])]])])]))))]]))]]))])]]])]))])]))))))]]])]]]])))]))))])])])])])]]]]))])))]]]]))]))]])))])))))]))]])))))]]])]])))])))])]])]])))])]]])]))])]]]))]]]])]]]]]])]]])]]]])))]]]])]]])]])]]))]])])))]])]]]]])))]]]))]])))]))]]))]]])]]))]))]]])]))])]])])))])]))])]))]])]]))])]]))])]]]]])))]))]]]))]))])]))]]]]]))))])))]])))]]))]]))]]]))]))))])]]]))])))))]]]))]]))]]]]))])]])]))])]])])]]))]]])])]]])))))]))))))])]]])])])]]]]]]))]))))]]))]]]]))))]])))]))]))]]])]]]]]])))]))]))]]]]]]]])))))]]])]]))]]]]]))]))))))])))])]]]])])]))]]])))])))))])]])))])]))]]])))])]]]]))))]))))]))]])])]]]])]))))]]]])])])]])]))]]]))])]]]]))])]])))))]]))]))))])]]])]))]))])])]]]]])]]])])]])]])])))]]]])))]])])))]))))])]))]]])]]]]]]]])]]]]])])))]]]]))]))]]))]]))]]]]])])])]])])]])))))])])))]]]))]])]]])))]]))])]])))]]]))]]])])))]]]]])])]]))]]]]]))])))]]))])]])])]))])]]]])]]]]]))])]]]))]])]]))))]])]])])]])]])))]))))])]))]]])])]]])])]]))]])])]]))]))]))])]]])))]])))]]]])]])]]))))])])]]]))]]))]])]])])))])])))]]))]))]))]]]])))]]]])]))))]))))]))]])))))]]]]))]]]]]]]))]]])])]]])]])]])]]))))])))]]]])]))])])]])]])])]])]))])]])])))])]))))])))])])]]]]])])])))]))]]])))])))]]))]])))]]])]))))]]]])])))))]]])]]])))))]]])))]])))))]))])]]])]]])])])]]]]]])]])))))]]])]]]])))]]))])]])])))])])]]))))]))]])]]))])]))]))]])]])]]]]])]])]]]]]])]]]))))]))))]])])))])])])])])])])))])]]])))]]]]])]]))]])])]))]))]]))]]]]]])]])]))]]))))]]))))))]]]])))]])]]]])])))]))])]]])])])]))])]])]))]])]))]])))]]]])]]))]]]]]]]]]])])))]))]))]]]]]]]]))]]])))]])]))])))]))])]])]])])])]]))))))]])]))]]))])))])]])))]]]])]])]]]]))]]))])))))]]])])])])])]]]])])])))]]]]]]]]))]))])))]))])])))))]])])]))))]])]])])])])]]]])]])]])]])]]]]))]])]]]]]))]]]])]))])]])]])]]])))))]))))]))]))]))))])]))]])])))]]]))))])]])))]])])])))])]])))))])]])])))))))])]]]]]])]))))))])])]])])]]]]]]]])))]))]]))]]]]))])]]]])]]]])))]))]))])))))]))))])]])]]]))])])))))]])))]]])]])]]]]])])]))))))]])]])))))]])))]))])))]]])]]]))]))])))]])])])]]]]])])))]])]]])))])]]])]])))]]]]]]]))])])))])]]))))]]))))]]]))]]]])]))))]]]]]]]]])])]]))]])]]]))])]))]]))))])]))])])]]]))])]]]))]])))]])])]]])]))))])]))))])))]])]]])]]]]))]])]]))))]))]]]]])])))])]]]]]]]])]])))]))]]])]])))))]))])])]))]]]])]))]])]]]))]]))))))])])]]]])))]))]]]))))]])))]))))))]])))))]))]]])))]))])]])]]])]]])]])]])]]]]]]]]])))]]])]])]]))))]]))))])]]])))])))]]))))])])))]))]]))]])]]])))]])]])])))))]))]]]))]]])))))])]))]])))]]]]))))]))))]))]]))))]]]]))]]]))])))])))))])]))))])]]))]]))])]]])])]])]])))]))])])]]]])]))))]))])]])]))]]))])])]]])]]]))]])))))]])]]]))]])))]]])))))])]]]]]]))]])]]]]])))))])]))))))]))]]]])))))])]])])])]]]))))]]])]]))))))])]]])]])]]]))])])))]))])]]])))])]]])]))]]])))))])]))]]))]])])]))]])])))]]))]])))])]))])]])))]])]])]]))]))))))]]]))]])])])]]]])]]])]]])]])))))]]])]))]])])])])]]))]])]]]]])])])))]])))]]]]]]]]))))))])])))]]]))]]))]))]])]))]])]]])]])]]))])]]]]]))])])]])])))))]))))]])]]]])]]]))))])]]))])])]]]])))]]))])]])]]])]]))))]])))]))]])))]]))]))])]]]))))]]]])]]])]]))]])))]])]))]])]])))])]])))])]]))]])]))]]]]])]]]])]]])))]])]))]]]))))])))])]]])))]]])]))]])])])]]))]]])]]]])])]]])])])))]))])]]])])]]]]))))))])]))]])]]))])])])]]]])]]))]])]])))]))]])]))))]]]])])]])]))])]))))])])))])])]]]]]]]))]]])))]))))]]]])))])])))])))))))]])]]]))]]))))]))]))])]])]))]]))])))))]))]))))]]]]]]]]]])))]])))))]]])))]))]]]])]]))])]])]]]]])])))]]])])]))]])]])]]]]]])]]]]]))))]]]))]]))]]]]]]]))]))))))]])]))]]))]])])]]]]])]))])])])]))])]])]]]])]))])])]]]])]]]]]]]])])]])])]]]]])))]))]]]))))])]]))]))])])])]))])])])))))])))]))]]))]])])]]])]))))]]]])]])])]])])))]]))))]]]))))]]]]))])]]]))]]))])))]]))])])])])]))]))]])]]])))]]]))))])))))]]]])]]]]))]])))]]))))))]]))])]]]])])))])])])]))]]]])]])]))))]])]))]))))])))))]])]]))])]])]])))]]))]])))]]]])])))]]))))]))))]]])))))])]))]])]])])]]])]])])]))]))]))))]]))))))))))])]])])])]]))]))]]]))]))]]))))))]])]]]]))])))]]))]))))))])))])]])]))]))))))))]]]]]])))]])))]])))))])]))))]])])]]))]])])])]]))]])]]]))])))]])))]]))])]]]]])]]]]])]])))]]]]]))]])])])))]))))]])]]])))]]]])))])])])])]))]]]]))])]]]])])])))])))]]))))])]))]]])]))])]]]]])])])])]])]])]]]])]])]))))]]))))]]))]))])]])])]))])))))))]]]])]]]))])]]))])))])))])]]]])]]))])]))])]]))))]]]]))])))))]))))))]])]]]]]]])]]]]]]]))]]))]])])]]]]]]))]]))]])]])))))])))]]])])])]]))]])])]])])]))])))]))))])])))))]]))))]])]])]])]])])))))]]]))))))])]))))]))))])))))))]))])))]]))))]]))])]]]]]])])]))))]])])]]]))])]])))]])))))]]]]]))]))))])))])])]]])]]))]]]))]))]]]))]]]]]))))]))]))]))])))))))))]]))])]]))])]))))])])])])))])]))))]])]]])))))]]))])))]))]])]]]]))))]))]]])]]]]]))]]]])])])]))]))])])))]])]])))])))])]))]))]]))]]))]])))])])))]])]]]]])]]]])]))]])]))))]))])))]))]]]]])))]))))]]])]]]))])])])]]))]]])]]]]])))]))))))))))])))])))))))])]]]]]))))]])))])]])])))))])]])])]]])])])])]]]])]]]]))))]]]]]))]]]))]]]]])]))]]))]]]]]])]]]]]])])]]]]))))]))]])]))])))))))]))])]))))]]]]])]])])])])]])]))))]])))]))]])]])])])])))))])]]]))])])))])]]))])))))]))])]]])]]))])]))]))))])))]])))])]])])]]])]])])))]]])])))]]]])]]]])]))]))])]))))]])]))])]))))]])]]))))]))]])))])])]))]]]]]]]])))]))))))])])])])]]))]]))))))]]]]]]))]]]))))]))]))]])]]]])])]])]]]])])))]))))]))])])))))]]])])])]))))])))]]]))])))]]]]]]])]]))]))]])])]]]]])]]]))]])]]]]]]]))]])])])]]))]]]]])]]))))]])]]])])])))]))))])])]])]])))])]]))]))])]])))]])))]]])))]))))]]]))])]))]))]])]])]]))])))]]]))]))]]]]])])]])]]]]]]])))]]]])))])]))])))])]])))])]))])]]))])])]]]]])])]])]]])])]]])])]]]]]]]))]]]))]]))]])]]))]]))]]]])))]]))]]])]])))]))]])])])))))))])))])))])]]]]]])]]]))])]])])])]]]]))))])])))))]))]]]])]])])]]])])]]]]])])]])])]]))))])]))))])))]))]])]])]]]]]]]))]])])]])))))))]]))]])])]])))))))))]]]])]])])]]]]])))])))])])))])])]))))]))])])]))])]])]]))])])]]]])))])])))]))]]))]]]]))])])])])]])]])]]]])]))]])]])))))))))])])))])])))]))]]]))))]]])]])])]]])]))])))]]])])]])])]]]))])]])])]))]]))]]))]])))])])])))])))]])]])]]]]])))])]]]]])]])]))])])]]))])))]])])]]])])))]])))]))]])]]))]]))))])]))])])))]]])]]]]])]])])]))])])]))]))]]]]))])]))])]])]]]])])))))])])))]])])]]]]])]]])]])]])]]))))]]]]])]))))])])]]))])])])])]]))])))))]))])))]])]])]]])))])))]))]]]]])]]))])))]])]]]]]]))]])))]])]]))]]]))))])]]]])]]])]))]]])))])))])]]])])))))))])])]]))]))]])]]]]])]))]]])])))]])))))]])]])]])])])]]])])])]]]))]])))]])))])]])))]]]))))])]]))]]))]])])]))]]])])]]])]]]))]]])]]])]]])]]))))])])]]])))]])])]]]]))])]]]])]))]))]])))))))]])))]]])]))])]))]]))))])])))]]))])))]]])])])]))))]))]))]]]]]]]))]])]))]]))])))))])]]))]]]])]))])])))))))]]])))]])]])]))])))])])])]))]))])]])])))])]]]])]]])])]]]]]]))]]))]]])))])))])]])))))])))])))])))])]]])])]]]]]))]))])))]))]]))]))]]]))]))]))])))))))])]]))])])])])))]]])]))))]]])))]))]))]))]]])]))])]]))]]]])]]]])]])))]))]))])]]]))]))))))))]]]]])]])])]))]))])])))))]]]]]))]])]]))))]]]])]]))])])))]))])])))]]]])])]])])))))])])]))))]]]])]))))])])])))]))])))))]]])]])]]]]))])))]))))]]))])]]]))])]))))]))))]))]])])))]])))])]))])]))])]])))])])))]]]))]])))])]])])]]])))]])]))))]))])]))]]]])])))]))]])]]])]))))])]]))))]]]]])])]]]]])]]]]))]])]]]])))))))])]]]]])))])))])])]]]]]]])))))]]))]))))))]))]])])])]]])]]]]])))])))]))]]))))])]]]])))]])])])]))))))]]]))))]]]])))]]]))])]])))]]]))])]))]]]]])))]])))))]]])))]])))]])]))]])]]])]])])]))]]]))))]]))])]]])]))))]]]])))))]]])))))])])]]))]])]]]))]])]]]]])))))]))])))))]]])]])])])]))]]])))]))]]))]]]))]]]]]]]]))]]]))]])])))))]])]]]])]]]])])]))])]]])))]])])]])]])]]]))]])]))))])])))])]])]]]]))])]])])))])]]))])])))]])]]))))))]))])]))))])]]]))]]]]))])]]]]]])]]]))))]])]))])]))))))])]))])]])]]]]]))))]))]]]]))])]]]]))]]])]))))])]])))])]))))]]))]])))]]))]])]))])))))))))]]])))]]]])))))]]]]]])))]]])]]]]))])))]]]]))])])]))))]))])))))))])]]]]))]))))]]]])))]]))))]])))]))]]]])])]]]]])]])))]]])]]))])))]]))]])))]]]]]])]]])]])])]))))))])])]]]]]]])])))))]])])]]]])])])]))])])]])]))]))]])]])])))])))]))]])))))]]]))])]]]]])]]))])]])]]]]])]))))])]])]]))]]]])])))])))])])))))])))]))])]))])))]))])])]]]]])])]])]])])])]]]]]))]]])])])]]])))]]])]]])]]])]])))])])]]]]))])))]))))))])]]])))))]]))])))))])]]]))))]))])]]])]]])]))])))])))])]])]))]])]])])]))]]]]])))]]]]]]))]]))]]])]]]])))]))))]))]]]])]])]])]))))]]]]))]]]))))))))))]]]]]])])))]])])]))]])]]]])))))]])]]]]])))))]])]))]]]])))])))]])]))))]]))])])]]]))))]]]))]]]))]]]))])))))]])]]]]))]]]])]]))])]])]])])]])))]]))]]])]]]]])])]])))))))]]))]]]]]])))]]]]]))]))])]]))])))])]]))])]]])))]]]))]))))))))])))))))])]])]])]))))))]]]])])]])))])]])))]])]]]])])]]))]]])]])))])]))))]])]]))))])]]])]])))])))]]))]]]]])]])]])))))]))]])))))))]))))])])]])))]]))))])]))))])])])))]))]])]]]))))]))))))])]])))))))]])])]))]]]))])]])))])]]]))])]]))]]))))])))]))]))])))]]])]))]]))])))))]))]))]))])]))])]]))])))]))]]))])]]))]]))))]]))]]])))))]))]]]])])]]])))]])]])))))]))])]])]])]])]]]])])]))])])))))]]])])]])))]]))]]])]]]])])))))])]))))])]]])]))))))))))))]]]]]])]]]))))))))))]]]]]])))]]]))))]])])))]])))))]]))]))]]])]]]])]))]]])]])]])]]]]))])))]]]]))]))]]]])]))]]]])])]))))]])))])]]))]])))]]]])])))]))])))))))])]]]])]]]])])))))))]))]]])])]]]]]])))]])]))])]))]]])))))]])]])])]]])]))]]]))))])))))))])]))])])]]]])))])))]]]])]))))])]]))]]))])]]))]]))]])]]))])]))))])]]])))]]))))]])]])))))])]]])]])]))]))]]]]))])])]]]))])]]]])]))]])]]]]]]]]]]])]])]]]))]]]]])))]))]]])])]))])))]])]])])))))))]]])]])]))))]]]]]]]]]])))])]])]]]])]))]]]])))))]]]])])))]]]))))))]]]])]]))])]]])]])))]))))]]))])))]))))])])]))])))))]]])]]]))]])))])))]))]]))]]]])]])]]]]))))])])))])]]])])]]))])]])])])]))]]]])))]]))))))]]]]])))]))]])])]]))]])))])))]))]))]))]]]]]))])]]]]))]])))))]))]))))])]]])])]))]])])])]])]]])])])]))])))))]))]]]))]]))]])))])]])))]])])]))]))]]])))])]])]]]]])])]]]])]]]]])))]])])))))])])])))]]))])))]))))]]])]]]]]))]]])]))]]]))])])]])]))]]]]]])]]))])]))])]])]))]]]))]]))))))]]])])]]]))))]]]))))]))]])])])))))])])]))]])])]]]]]]])])])]])]])]))]])])])]]]]])]]))]]]])]])]]])]]))]))))])]]]])])]]]]]]])]]]))])))))]]))])]]]]])])]])))))])]])])))]])]]]]]]])])))]]])]]])])))]])))]))]))])])])]]]]]])]])])]]))])]]])]))]]))))]]]]])]]]))]))]])))))]))]))])]])])))]])]])))))]))]])))]]))))]])])))]))]])])]))))]]))]]]])])])])]]]))])))])]])))])]))]]))))]))]]]]]]))])])))))]]])]))))]])]])))))]))])])]))))]]]]]]]))]))])))]]]])]]]])]]]]]]))]])]]))]])))]])]]])))]]]))))))])))))])])))]])]))))]])])]]))]])])])]]]]]]]]]))))]]]]]]])))]]])]]]))]))))])]]])]))]]]])]])]))]))]]]))]])])]]]]]]])))]))]]]))])])))]])])))))]))))]]])])])])))]]])])))))))))))])]])))]]))])]))]]]))))))]]]))]])])]))])]))])]))]]))])]]))]])]])]])))])]])]))]]))))))))]))])]])]])]]]])]))])]))])])]])])]]]]])]))))])]]])]]]]]])]]]))]]))]])]))])]]]]]))]]])]])])]))]))])]))]]]]))])))])])])]]])]]]])))))))]]]])]]])))]]))))])])]]))))])))]))])]])])]]]]])))]))]]]])]))))]]])])])))]]])]]]]]))]])]]]]])))]]]]]))))])]]]]))]]])]]]))])]]]]])])))]]))])]))))))))])))]]])])))])]])]]]]))]])))))))))]]]]]]))]]]])))))]))))]]]]])]]))]]])])])))])])]])])]])]))]])]])]))]])])]]))]])]]]])])]]))])]]))]]]))]]]]])))]]])]]]))]]))]]]]])])]]])]))]))]))])]]])]))]))))]]]))))])]])]]]]])))]])])])]])])))]]])]]))))))]]])]))))]]))]]))))])))))]]))))))]])]]])))]))]]))))]]])]]])))])]]])))))])]]]]]]))]]]]]])]]]))]]])))]]]]]]]))]]]))]]]]))]]))]]]))])]))])]]])]]))]])]]]]])]]]])]))]]))]]]))]]))])))]]])])])]))]))]))])))))])])])])])]])]])))]])])]])])])])]]]]])])))])])])))]))))])])))))]))]])]]])]]]))))]])])))]]]]])]])]]]]]))))]))))])]))]])]])])))))])]]])])))))]]))]])]])]]]])))])]]))]]]]])])]]))])]])]]])]))])])]))))])])]]])])))])]))]))]]]]])]))])]))]]]]]))))])))]))]]])])]]]])]]])]]]]])))])])]))])]))]]))])))])]]]])]]])))])))])))]])))]]]]])))]]]])]))])))]]])]))])]])))))])])]])))]])]]])]])))))])])])]])])]))]]]]]]))])])])]]])])])])]))]]])])])))]]]))])))]]])]])]])])]])])]]]])))))]])))]])))])]))))]]])]]]])])])]]]]]]])))))])]]])])]]]]])))]))]])]]]]]))]]))]))))]))]])))]))]]]])])]]])])])]]]])]]))))))]))])])])]]]])]))]]]]])))])]]])])])]])])]])]))))]])))]])]]]]])]]))]])])]))]])])]])))]]])])))]])]]]]])])]]]]])])]]])]])]]]])))]]]])]))])])]]])))))))))))])))))]]])])]])]))]]])])]]]])]])])]]]])]))]])])]]]]]])]]])]))]])]])])]])]]))))))]]]])]]]]]))))]]])])]]))]))]]])])))))]))])]))])))]])]]])))]))])]])]]]]]))))]]]]))])])]]))])]])])]]]]))]]])]])))))))))]]))])]])]]))])])]])))])]))])))]])]))))))]]]])))]]))])])])))]]]])])])])])]]])]]])))]]]]])]])]))])])]]]])]))]])])]))))]))]]]]]])))])))]])]))]]])])))))))])])]]]))]]])))]))]]))]])]))]]]])]]]])]])]]])]]))]]]))])])])]])])]))]))))]))))))]))]])]))))])))])))))]])]]]]]])]])]])]))])]]))]))]]))]])])))])))]))]))])])])]]])])])])]]]))))])]]]]]]]))]]]])))))])]]))]))])]])])))])])]])])]])]]]))))])))])]))])]))]]])))]]])]]]))]]])]])))]]])]])])])]))]]])]]])))))])))]]))]))))]]))]))]]])]))])])]]]]))))])]]])]))])])]))]]])]))])))])))))]]))))]))))])]]])))])))])])]))))))))])))]]]]]))]))]])))]]])])])]))))))))))])))])])])]])])])]])])]))))])]])))])])))]]))]]])))]))]])))])])]])])]]]])]])])))]]])))]))])))])]))))]]])]])]]))])]]]))]])))])]]]])])]])]]])]])]]])])))])])])]]]]])])])])])))])]])))))])]))])]]))]])]))]]]]]]])]]])]]]])]]])]))))]])))]]])])])]]]]]])))])))])])]])))]])])))])]))])]))]])])])]))))]]])))])))]]])]]))))]])))))))))]))]))]))]]])))))])))])])]])]]])])])])])]])])])]]])))))])]])])])))]]))]]))]]))))]])]))]])])]]]))])]))]]]]])]])]]]])))])])]]))]))]]]))])])))))])]])])]]))]]]]]))]]])])]]]]]))]]]]])]])]]]]))))]))]))]])])])))])))))]])]])]]])])]]])]]))])]))]]])]]]])])]]]]]]])]))))]]))]]))])]]])]])]]))])))]])]]]]]]])]])]]])])]])])]])))]])))])))))])]]]])]])))]])]])))]]))))]]]]))]])))))])]))]]))))]]]]])))))]]]))])]]])])]]])]]]]))])))]]])]])))]]])])])])))]))]]]]]]]])))]))])]]]))]]]]))]]])]))))]))]]]))]])])))))])))]]]]]]])])))]]]))))]]))))])]))))]]))]])))))]])))])])])]]])]])]])]])))]))])]]])]))]))]])))])]))]]])))]]]])]))]))]))))])))]))]]]]]]))]))]))])]])))]))]])])]]])]])]]]]]])])))))])]))))))))]))])))]]]])]])])])]])]])))])))]]]))])]]])]]])]])]]])])]]]])]])]))])))])]))])])])]])))))]])))))))])])])))]]))]])]]])]))]))]])])])))))]])))]]]])))])]]]))]]])]]]))])]]]]))]]]]]])))]))))]))))]]))))))])]]]]]])])]])]))]]]])]])]])]))))]])]])])]]])]]]))])]]]]))]]))]])))])]]])))]])])]]]]))])))]))))]]))]]]]])])))]]]])]]])])]])]))))])]])]))]]]]]])]]]]])))])])])]]]]])]]))))))]))])]))]))]))))])]]]))])]])]])])))])])))]]]]))]]])])]]])])])]]]])]]))])))]])]))]]]]]))])]]]]]]]]]]))]]]])]))]]))))]]])))]])]))]))]))]]]]])))])]))])]))])]]))])))]])]])]))]])]))]]])])))))])))]]))]]))]))])]])))])))))))]]]]])])]]]])])])]]])))))]]]]))]))]]]]))))]]]])))))])))))))]])])]])]]))))])]]))]))]]]]]]]))]]]))))])))]]))))])])]))]))))])))]))]]))])])))])))))))]]]]]])]))]])]])])]]))]]]])]]]]]]]))]))]])]]])))))))))])])))]]]]]))]))]])]]]]])]]])))))))))))]))))]]]])]))))))))])))))]]]))]]))))))]]]])]]])))])])))]]))))]])]]]))]]))]]]))]]]])]]]))])]]])])]])]]]]]))))]])]]))))]))]]]]]])]]])))))]])]]))]]))])))))]]])]])))]]])])])]])]))]]]])]]))))]))]]]]))])]]]])]])])))]])]))]]))])]))]]]))]])]))]))))))])))]]))])])))]]]]]]]]]))]))]]]]])])]]]]]))))])]))))))]]]))]]]]]])]))])))]]]]])]])])]]]]])]]]]]])))]])])]])])]]))))]]]]]]])))])]))]]))]]))))]])))))]]])))]]))))]]))))])]]]))])]])]]]]]))]])]))))])]]])]])]]]]]])))]))]))))]]]])]))])]))])]]])])]))]]]]])])))])]))]])]]))))]])])))]))]))])]]])])])]))])])])]]]]]]]]]])])))))))]]])]]])))]))])]))]]))]])]]]]])]])))]]))))]))]]]]]))]))])))])]])]))]]))]]])]))))])]])]))]]])]]])])]])))]))])])))]]]))]))]))]]))]]))])])))]]]]))])]])])]])])]))]]])))))]]]))])))])]]))])))]])])]]]]]))]))]))]]])]))))]]])))))]]))]]]])])))))]))]]])))])]])]]]))))])]])]])))])])]]]))])))]))]))]]])]]]]]))])])))]))]))])]))]]]))]))))]))]])]]]))]))])]]]])))]]))]]]]])])]])]))])]])])))])]])]]]]]]]]]]])))]]]])]]))))])]]))])]]]])))))])]))]])]]]))))])]))))]]))]])]])))]))))]])])]]]]))]])])))]]])]]))]]]]]]))]))]])))]]))]))])]))])])]))))])]]])])]]]))]))]])))]]]]])]))))])])]])]))])))]])))]]])]]))]]]])])))])))]))))))]])]))))]))])]]]]]]])])))]]]))]]))]])))]]))))]])))]]])]))]]])])]]]]))])]]]]]])]]]])])])))]]]]]])]]])))])]])]])])))]))))))]]))]]]))])])]]]])]]]]]))))))]])])))]]]))]))]]]]])]))])])])]])]]]])])))))])))]]))))]]]]]]]]))])]])]))]))])])])))))]])]])])])]]])]))])]])])))]))))))])]))]))]]])]))])])]))]])))]]]]))])]])]]]))]]]))])]])]]]))))])]]]]])]))]))])))]]])]))]]])]]]]]])]]])]]]]]]])))])])])))])]))]])]]])])])))]))]))])])])]]))]])]])]]]])]]]])))]))]]])))]])])))))]])))]]])))))]])]])]))])]))]]]))))])]))))))]]]])))])))]]])))))])]])]])))))]))]))]])]]))))]))]]])])]]]))))]))]]))])])]])])))))])))])))])))]]]]]]]))]]]))]))])]]))))))]])]]])))])]]]]])))]])]])))])))])])]]]))]]))]]]))]])])]])]])])))])]]])]])])]]])])])]]])]])]]]))]))]]))))))]))]]))))))])])]))))])]]])]))]])))]]]))]))]]))])])]))])]])]))]]]]]])])]]]])])))])])]])])]]]))))])]])]]]]]])]]])]]]))))]]])]]]]])]])]))]]]]]]]]]])]]])))])]))]))))])))])]])]])))]))])]))])]))])))))))]])]])]]])]])))))]])))])]))]]))])]]]))])])]])]]))])]]])]]))))]))])])))))))]))])])))]])]]]]])])]]]]]])))))]))))])]]]))))])])]]]])))])))]]))]]]]]]]]]]]]])]]]])]]])))]])])))]]])]])])])]]]]]]]]]])]]]))])])])))]])]]]]])))]]]]])]])])]))))]])]]]])])))]]]))]]]]))])))))))]])))]]]]])))]))])]]))))])))))]]])]]]]))])]]]])]])))))])]))]))]])]))])])]]])])])])))])]])]]))))])]])]))]))]))])))]])]]))])]])])])]])]))]])]])]))]))])]))]])))))))])]]))])))]])]]])))]]]]]))))]]))]]]])]]])))])]))])]]))]]])))])))]]])])])))]))]]]]))])])]])))))]]]))]))))])]]]]))]])]]]))])]]]])]]]])))])]]])]]]))]]])))]]]])))]))]]])])]]])]]]))])])))]))]]))])))])]))))))))]]))))]]])]))))])])])]])]]]]]))]])]]])]]])]])))))]]])]])]))]))))]]])]]]])]]]]]))]]]]))]]]]]))])]])]])]]))]]]))])]]])))]]]])])))]]])]]])]))]]]])))))]]]]))]])))]])]]]])))]]))])])]]))))])]]])]]]]])]]]]]])]])]))))]]]])]]))]]))]])]])]])))])])]]))]])])]))]]]])))))]]]]]]]]]]))))])))])]))])]]])])])]])])]]]))]))]]]]])]]]))))]))]]]]]]]])]])])]))])))))))))])))]))]]))))])]]]])))]]))]))]]]]])]])]]])]])]))]])))]))]])))]]))])))]])]]]]])]])]]])])])])))])]))])]]]])])])]]]]]))]]]))])))]])])])))]])])))))])]))])])]))]]]))]])]]])]]))]]))])))])])]))]]]]))))])])]]))]))]))]))])])))]]]])]])]]])]]])]])]]]])])]]])]))]])]))]]]])]))]])])])))]]]]]]))])]))]]]]])))])]]])]]])))]])]]]]]]]])]))]]]]])])))]))])]])))]]]))]]])]])])))]])]]))]])))))])])]])))]])]])]]]))))]]))]]]))]))))))])))])]]]]]]]])])])])]))]))))]]]]]))))])]))]])]))]]))])])])]])])]]]))])])])))]]))])]]]]])))])])])]]])])]]]]]])]]])]]]))))]]]])]))]]))]))))]])]]])]]))]]])]]]]]))]])]))]])))))]])]))]]]]))))]))]]]))])))])]]]]])]))))])]])]])))]))]]])]]])]]]]]])]]]))]]]]]]])])))]))))])]]]])]]))))]]))]]))]]]]]])]))))))]]])]))]))]]]])))])))]]))]])]]])])))]]])))))))]])]]))])]])]]))]]])]))))])])])]]])))]])]]]]))]]]]]])]]])]))))]]]]]])))]))])]])]))]])]])])]]])))])])]]]]]]))])]]))])))])]))))])]))))])))))))])]])))])])])])))))]]]])])])])]])]))])])))])])]]]]])]]]]])]]))]]))))))]]]]])]]))])]]]))))))])))]))])]]])))])]]))))]]))])))]))))))))))]))]])))])])])]]]]))))]))]))]]]]]))])]]]]])]))]]))]))]]])))]]]])]]]]])))]]]))]]]]]))]))])))])))]])))]]))))]])])]]]]]])]))]))]])))]))]))]))))]])]]]]]]]]])])]])))]))]]]])]]))]]]]]]]))]]]]])))))))]])])]]]]])])]]))]])]))])]]))))))]]]]])]])))])]])))])]))]])]]])]]))])]])]]]])]]]]]))]])]])]))]))]]]]))))])])]))])])]]]]]))))))))]])]]]))))))])])]))]]))))]])]])]]]]))))])]])])]])]]]])])]])]))]])]]]]]]]))))))]))]])]))))))]]])]]])]]))]])))])))]])]]]]])]]]])]))]))]]]))]]]])])]])])])]]]]))]))]]]]]))]))]])])]])]))))]]))]]))))))]]))]]])]]]))]]]))]]])]]]])]))]])]]])]))]]))]))])]])])]]]))]]])]])])]])])))])]])])])))]))))]))))])])])))))])])))]))]]])])]])]])))])]]))))])]])]]]))]])))]))))))]))]]]])])]]])))]]])))]]))]]]]))))))]]]]))]])])]]))]))]])))]))])]))))])])))])))])))]])))]))))]))]]]])])))])])))))])))]))])))])])))])]])))])))]]])]))))]]]]])]))]])]))]])])]]))]))]))))))))]]]))]))]]]])]))])]]]))]]]))))])]]]]]]]))])]]]])]]]]])]))]]]]]]])))))]))))])])]]))]]])]]])])])])]]]])]))])))])))]))]))])))]))))))]))]]]]]))]]]))]]]]]]))]]])]]])))]]])])))]])])]))])])))]]])]]]])))])]])])))]]))))])]]))))]]]))])])))]]]))))))])]])]]]]])]))))]]]])]]]))))]))])])])]]]))]])]])))]]]))])])]])])))))]]]]])])])]]])))]]))]]]]))]]]]])])]))))]))]])])])])]]])))))]])]])]])]))))]]]])]])])))]]))])]])])])))]))])]]))])]]])]]]])])]])])])]]])]))]]])]]]))]])))])]))))]])])])])]]]]]))]]]])]])]))]]]]))])])])]]]])]]]))])]])]])]]])]]])]])))))])]])]])]))]]])]))]])]]]]]]))]))])])]])))]]]])))]])]])))))]]))))]]))])]))]))])))]]]))))))])]]]]]))]))]])]]]]])])]]]]])]))])]]])))))))]])]])])))))]]))]))))])))])]]]])])]]]])]))])]])))]]]))]]))]))]]]]))])])))]]))]]]))))))])))))]]))]])))))])])))])]))])]]]]))))])])])))]))))]]]]]]])]])))))])]))])]]]]]]]]])])))))])))])]]])))])])]]]])])))]]])]]])])])]]))]]))))]))]]]]])])]]))]))])])])]]])))])]]])]])]]))])]]]))))]]])]))]))]))]]]]])])])]]))]]]]]]]]]])))]))))]])))))))))]]]]])))]))])]])))))])])])]]))]))])))])]]]))]]])])]))))]]))))])]]])]]]))])))]))]])]]])])))])]]]))]]))])]]])]])))]))]]]]]]]))]]]])])]))))))])]]]))])])]])])]]]))])])]]))]]]]]))]])]]])]])])])])))]]]]))]]])]))])))))]))]]])))])]))]]])]]]))])]]]]]])]])]))))])]))]))])))))))])]])))]]]])])]))]))]])]]])))])]]]])))])])))])])])]]))]]])))])]]]])]]))])))]))))])))])]]]])]))]])))))])))]]]]]))])))])]))))])]])))]]]])]])]]]]]])]])]]]])]]])])]))])])]]]]]))]])))])]])]]))]])])]))]))))]]]])]]]]]])]])))])))]]))]])])))])]]]]]]))]]]))))]]))]])))]))]))])]))]]))])))])))]))]))]]])]]])))))]]]))]]]]]))]])]))]))]))]))])]))]]]]]))]]]])])))]])))))))))]))])])]]))]]])])]])))]))])]]]]]))))))])]]]]]]])))]))]])]]]]])])]]))])))])]]])]))]]]]))]]))]])))])])))))]))]])])]]]]))])))]]))])))))]))))))))))])]])))]))))))])]]))))]])]))]))]])])))]]))]))]))])]])]))]]]))]]]))]))]))))]]))]]]])]]))])])]])))))]]]])]))]])]])))]]]]]))])]))))])]))]])]]]])]))]])]))))))]]]]]]]))])]]]]))))))]]]))])]))]])])))])]])])))))))))))]]]])]]))]])]]]]]])))])]]]])]))]]]]))))]]]]])]]))]]]]]))]])]]))))))]])])]]))))])))])))])))]]]))]))]]]]]]]]]))])])]])))))]))])])]])]))])])])]]])])))))])]])]]]]]])]]))]]]]]]])))])))]))]]))]])]]))]))])]])])))])))]])]])]])]))]))]]))]])])])]]))])))]])]]]]])]))]])]]]))))]]])]))])])]]))])]))])]])))]]]))]])])])])]])))]])]])])))))))])))))))]]))]))])])]]]]]])]))))]]))]])))]]])))]])]))])])]]))])])))]])))]]))]]]]))])]])]])])))))))])]])]])]]]))]]]])]])))))]))]])]])])]])])])))])])))]))]])))])]))))]]]))]]))])]))]]])))]])]))]]]))))]]])))))]])))])]])))))])]]])))))]]]))])))))]]])))])]]]])]))])]]))))])))])]]])]]]]]])])))))]]))]])]]])])]]))])])]))])]]])]))]]))]]])]]])]]]))))]]])]])])))]]]]]])]))]]])]]))))])]]]))]]])))])))]]])])])]])]))]))]]]]]))))))))])]]]))]]]))]]])]])]]]))]))]]])]])])])]])])])]]])]))]]]]]))])]]]])]]])]]])))]))])]])]))))))]]]])]]))))]])))])))))))])])))]])]]))]])))]])]))])])]]))))]]])]])])])))]]]))))))]]]]])))]]]])]])))]]]))]]])))))])]]]])])]])])))]))])]]]]))))))]))])))))))]))))]))))])))))]))]])))])]]])])])]])]])]])]]])]]))))])]]]])))]])]))]]]]])))])))))))]])])]])])))]])))))]]]]])))]])]])]]])))))]]))))]]])])])])]]])]])])])))]])]))]]])]))))])))])))]]]])))]]]]])))]]])])]]]))]]]])]]]])]])))]])))]])])]]]))])])]]))])])))]]]))]]]]]]])]])])]))))))]))])]]])))]]))]]])]))]))))]]]]]])])))]]))]]))])]]]])]])])))))]))]])])]]))))]]]])))])]]]]]]))]])))]])))))))])]])))])])))))))))]))))))))]))]])))))]])]])])]])])])])])])]]]])])])]))))]]]]])]]]])]]))]))))]]]]]))]]]))])))]])]])]])]]]))])]]))))])]]))])]]]))])))))]])))]))]]])))]])])])])]]))]]])])])]))))])])))]))]]]]]]]])]]]])]]]))])]))))])]))]])]])))]))]))])]]]]]]])))]]]))])))]]]))])]])]]]])]]))))))]])]]))))]])]))]))]))]]]]))]]]])]]]))])]])])))))])]]))))]))))]]]]]])]]))]]]))]]])])]))])])]]]])]))))]))]]])]])]]])]])]))]])]]])))]]))]))])]]]]))))]])]])]]]]])]))))]))]]]]]]])]]])]])])]]])]])])]]]])))]]]))))))]]]]]])])))]])])]])]))]]])]])]))))])))]]))))]]]])])))))]])]])]]]]])]))]]])]))))))))]]])]]])])]]))))])])]])]]))]]))]]]]))))))))])]))])]])]))])]]))]])])]]))])]]]]))))))])]])])]])])]]]]])))]]])]))]]]])])]])])]))))]])]]]]))])]]])])])]]]))]]]))])]))))])])]]]])])))]]))]]]]]])]]]]])]])]])]]))))]])])]]])])]])]))]])))]])]]]))])]]])))))]]])]))))]))]]))])]))))]]]]]]])]]]))]])]])]]])])]))))])])])))))]]])]))]]]]))]))]]]])]))]]]])))]]]]))]))]]])])))])])))]]])]])]])]])])]]))]])))))))])]]))])))))]))]))))]]))]])]]]))])]]])]])]]]]])])))]))])))])]])]))]]]]]])])]]]))]]))])]]))])])]))]]]]))])]]]))]])]])]))]]]))))]]]]]))]]])]]]])))))))))])]]]]]))])))))])]]]))]))])))]))]]]])]])]]]))])]]]]]]))))]]]]]]]]])]]))])])]])))]])]))]])]])])]]]]]])]])))]])])])]))])]])]])])]]])))]]))))))))]]])))]))])))])]])))])))]])]))))]]])])))))]]))]))])])))])]))))))])))])))))])]])]])]]]]]]]])))]]]))]])])]]])))))))))])]]])]])]]]))]])]])))))]]])])))]]]))))]])])))))))]]))]])]]))]))))]])]]]))])]]))))))]]])]])]])))))))]]])]))]))]]))]]])]]))))]]]]]))]]]]]])]]])]]))]]])])))))]))]]]]])]]]]))])]])])]))]]))))]])])]))))]))])))]]])))]])))]))]]))]]))])])))))))))]]]]))]]]]])]))]]])]]])])))]]))]))]]]])))]])]])]]]]]]]]])]])]]]])])]]])]]]))])]))]))))])))])]]))))]]]]])))]]))]]]]]])]])))]]]))))]]]])]]))))]))]))]])]))]]])]))]]])])]]]))))]]]))))))]]]]))]))))]))]])))]))))))])])])]]]))])])]))))])]))]))]])])]]]]]]]))]]]]])))]]]]]))])))]]])))]))]]]]))))])]]))]]])))))])]]]]))))]))]]))]))))]]))]])]))])))]]]]))))]))]))))))]))]]]])]]]]]))]]])]]))])]])]]])))]))]])]])))]))]])]))))]]]]]])))])]]]]))]])]]))))]]])])]]))]]))))]]]])]]])]]]]))]))))])]])])])]))])]]])]])))]))))])))]))))])]]]]])])]))])])])))]])]]]]))]]))]]]]))))]]]))]]])]]]))]]]))))]]]])])]))])))]])]))))])]])]]]))]))]])]])])]]]]]])]]]]]]])))))]]]])]]))]))]]])))]]))]))]))])]]))]]]])]]])]]]])]]))]))])]]]))])]]]])])]])])]))]]])]]])]]])]]])])]]]))]]])]]]]]])]))]))]])]])])]]]]]))])]])))))])))])]))))]])]]]]))])]]))]]]])))]))]])))])]])]])])])])))]]]))))])))])]]]]])])]]]))))))]))]]))])]]])]]))]])]]]]]]])]))))])])]])]]]]])]])])]]]])]]))))]]]))]])]]]]]])]])))]]])]]]]]])))])]]]]])])))]))]))])))]))]]])]))]]]]])]]]))]]])]])))])]))))))])))]]]]]])]]]])))]])]])])))]])))))])])))]]))))]]]]])])]]]]]]))]])]])])]])]]])]))))]]])])))]))])])]])]]]]])]))]]])]))))))))))))]]]))])))])])))]])])]))])]]]])]]))))]])])])])]])]))]]]))])]))]]]))]]])])])]]]))))]))]))])])]]]])))))]))))]])]])))])]))]])]])]))))))]])]]])]])))))))])]]])]]]])])))]]))))]]])]))]]])])])))])])))]]])]]]]]))]))]]))))]]]))))])]]]])])]])]]])]]]))]]]]))]])]]]])))]]))]])]))]])]])))])]]))])))))]))])]])))))])]]))]]])])])))]))))]]))])])))]])]]))]]]]]))]]]]]]]]]])))])])))))]])]])]])]]]])])]))])))]]]))]]])]]]))]]])]))]))])))])]]]]))]]]))))]]]]]])]))])])]])]]))))])]]))])]]))]]])]]))))))]))))]]]])]))]]])])])])]])])])])]])]])]])]])]))])]]]))]]]]))))])]))])])))]))]])]]]])]))]))]])))))])]]]])]))]]]]]]]])))]))))]))])]]])))))))])])]]])]]]])]]]]]]])]]]]]]]])]]))))]))])))]]])])])))))))]]]))]])]]])]]])])])]]]])]]))]]])])))]])]))]]]))])])]])]])]))))]]))))])]])))]))]]]]])]])])))]]]]])]])])])])])))]]]])]]]])))))))]])]]])))]))))])))])))])])]]]]]))]])])]]]]))])]))))]]]])))])]))]]]])]])]))]]]))))]])]])]])]])]))])))]]))]))])))]))))))]]])]]]]]]]]]])))))]])))))]]]]]))]])))))]))])))])])]]]])]))]))))))]]))))]]))]]]])]])])])]])))]]))]]))]))]]))]]])]]])))]))))]])))))])]))]])]]]]])]))])]))))))]))])]]]]])])])])])]])]))]]))))]]]])]]]]]))])]])))]]))])]]))]])]])])])])]]]))]]))))])))])))])]])]]])]])))]]))]))))))]))]))))])]])]]))]))))]))))]]]))])])])]]])])))]]]])])))])]])))])])]])))]))]]))))))]]])]]]]]]])))))]]]]]]))))))])])))))])]))]]))])]]))]]]]])]]))]]])])]]])]))]]])]])])]])))]))]))))]])))]))]]])))]])]]]]))])))])]]]]])]]]]])))]])))))])))]))]))))])]]))]])])]])])])]]))])))]))]]))))]]]])]]]])]])))]))])]]))]]]])))]]]]))]]))]]))]])]])])))]))]]]]])))]]))))])))]]))])))]])))))))]])]]))]]]))])])]])])])]]]]])]])]))]])]])]]])]]]])))])])])]]]))])))])])]))])))))])])]))]]]]])]]))])]]])))))]]]))]]))])]])]])])))]))))]]))])))])]])))]]]]))])]])]]]))))]]))]])])]]]])))))]])])])))))]))))]]]]])))])]]))))]]]))])]]]])))]]))))]))))])]]]))]]])))]]))]])))]))]))))])]))))))))))]]))])]])]])]]])))])]]))))))))])])]]]))])]]))])))]]])))))))))]]]))]])))))))])))))])])])))])))])))))]])]]]])))))]]))])))]))]))])))]]))))])]]])]))))))]))))])]]])]]))]))]])]))])))]]]]]]))])]])))))])]]]])))])]]]]]]]])])))))])]])]))])))])))])))))]])))]]])]]])]))))]]]]]))]])])]))]])]]])]))]]])]]]]]]]])))]))])))]]])])])]]))]]))]))))]])]])]))))))))])]]])))]]])])))]])))]]]))])]])]]))]]]])])))]))))]]))]]]]))]])]]])))))]))))])])))))]))))])])]])))]])])]))]])])]))])]]]]]))]])]]))))]]))])]]]))))]])]])])))]]))])])))))]))))]])]]]))]))]]]]])])]])]))]]])]))])]])))))]]]]]])]))]]]]))]])])]])]]])))])])))]]))]]]]]))]))])])))]])])))))))]]]])])]))])]))))))]]]))))]))]]])))])))])))])]]]))]))])))])]))]]])))])]]]])]]))))]))]]]))])]])])]]]]]]))])]]]]]))))]))]])))]]])]])]]]]]])])]))]]))]]))]]])]])]))]))])])])))]))])))])]))])]])]]]])])]])]))])]]]]])))]]))]])))]]])])])]]]])))]]]]])])]])])))]]]]]))))]]))]))]]])))])]]))])]])])))]))])]))))])]])))])])])])))])]))]]]))]]))))])]])]])]]))]))))])])])]]])]])))))])]))))]])))))])]]])))]]))))])]))]])))))))]])])))]]]]])))]]])]))))))))])]])))]])])])]])]]]]]))])]]])]))]))])))])])]]]]])]]]]]))]]]))]]))]]])])]]]]])])))])]]]])]])])])]])])))]]]]])])))])]])]])])])]])]]]))]]]]]]])]]]])]]]]]]]]])))])))]])))))])])])]]))]]))))))])]])])))]]]))))])]])))]]])]))]])))]]]]]))))]))]]]]))))))]]]]])]))])]]]))))]])])])]])]]))]))]])]])]]))])))))]]]]]))))])]))]]))])])]]])))])])]]))]]]]])])]))]]]))]]]]]])])]))])]]]))])])))]])))]]]]))]]])]]]]))]]])))))]])])]])]])]]]])]])]))))])]])]]))])]))]]))]))]]])))]]]))]]])))]))]])])]))])])))]]])))]]]])))])]]]]])]])))]]]))))))]])))))]]])]])]))])]]]]))))))]))))))]]]))))]])])))]]]]))]))]))]]]]))]]]]])]]]))]])])]]]])])))]])])))))])]])]]))))))))))])))])]]]]))])))]]])])])]]))])]])]]])]))))))])))])]]]))])))]]]]]))))]])])]]))))]]]])]]]]])]))))]]))])]]]))]])]]]))]))]])))))]])])])]]]])])]])]])))])])))]))])])]))))))]]])))])]]))))]))]]))))]]))))]]]])]]])]])))])))]))]]))]])]]]))]])]]]])]])))))]))))]))]))))))])]]))])]]]]])]]]))]]])))])))))])))))]])]]]])]])]])]])]))))]]))]]))))]))])])))]]])]]])]]]]]]))])]])]])])]]))])))]]]])))])]]])])]]]]]])))]])))])]])]])])]])])]])])])])))))]])]]]))])))])]]]]])])]]]]])]))]]])]]))))]))]))])])])]]]))))))]])]]))))]]])])))))])]]])]))))])))]]))))])]])]]]]]]])])))))))]))])])]]])]]]]])]))])])])]]])]]))])])))]]))])]))]]])))))])]]]))]]])]]]])))])])])]]]])]])]])])]])]])])])])))])])])]]]]]]]))))))))))]]]))]]]]]]])])]])]]])])])])]))]])]])]])]]]]))]]]])))]]))]))]])])]]))])]]))]))]))])))))]))]))]))]]))])])])))])]]]])))))]))]]))))]))])]]]])))]])))]]]])])])))]]]))]))])]])))))))]]])))))]]]]])]))]]))))])]]))])])))])]))]]])]))))]]]]]]]]))]]]]))])]]]])]]]))))))]])))]))])]]))]))]))]]]])))])]))))])))]))])]])]])]]]])]))]))))]))]]))]])))))]])])])))))])]])))])]])])]]]]]]))])]])]))]])]]]]]]))]))]])))]]]))]]))))])))))]))])))))]])]))]])))))])]])])))]])])))]))]))]))]]]]]))]]))]))]])]]]]])]))]]])))])]]))]]]]))]]))]))])))])]))]]])]]))))]])]]]))]]]))])))])]]]]))]]]]))])]]))]]))]]])])))))]])]]])]]])]]))))]])])))))]])])))])])))])]]))])))]]]))])])]]))])]))])]]]])]])]))]]))]))])))]])]))]]))]]))]])]))))])])]]]]]))))))])))])]))])))))]))))]))))))))])))]))])))]])])))])])))]]]]))]])]]]))))])]))))))]))]]])]))))))]]])]])]]))])])]])])))))]]))]]]])]]])]]])])])))))])))))))]])]]]]]]))])]])]]]))]]])])]]]))]]]])]])]])]]))]])])]])]))]]))))]]]]])))))]]]))]])))))])])]]))]])]))])))]]))]])])])]]]))]))]]]])])]]))]])])]]])]]])))]])]))]]]])])]]])))))]]]))])))]]]))])])]]]]]])))]))))]]))]])]]])]])]])]]]]]])])))])))])])]]]))])])])))]))])])])])]]))))]]))]))]]))]]]]))))]]))])])]])]]))]]]]])])))]]])])))]])]]]]]))]]))]])])]))]]]))))))]])])])])])])])))))]])])]]]])]))))))))]]]]])))])))])])]]])])]]])])]]]]])]]])])])))]]]])]))]]]])]))]))]))])]])])))]])))))]])])]))])]])])))])))]))))]]])))])]]))]])]])])])))])))]]))])]]])]]])]]))))]))))]))])]])))))]]]))])]))]))])]])))])))]])])]]]])))])]))]]))])]))]])]))))))))])]])])]]])))]]])]])])))])))]]]])))]]])]]]]))))]]]]])])])]]]]])))]]]]]]]))])])]))])))]))]]]])))]])]])))])])))))))]]]))]]]))]]))))]]]]]]]))]]])])))]]))])]])))]])]]])])]]]])))])])))])))]]))]])))))]]]]]])]]])]]))])]))))])]])])))]]])]]))])))))))]]))]]))]]])]))]])]]]]]])])]]]]]])]))])])]])]))]))))]])]))])]]])))]])])]]])))]]]]])])]]]])))]]))]))]]])))]]]]))])]))])])])])]])]]))]]])))])))]))))]])]]])))))])))))])])])]]]]]))]))])]]]]]))]])]))])])))])])))]]])]))]]]]]]])]]]]]])))]])]))]]]]))]]])])]])])]))))))]]))])]]])]])])])]])])]))]])]]])]]))))]]])))]]]))))])]]))))]])))))]]]]]]]]])])])))]]))]))))]]]]))))])))]]))]]))]]])]]]]]]))]]]])])]])))]])])]])]))]])))])]]])]]]]]]])])]]]))]]]])]])]]))]]))))]))])])]]])])])])]]]]]]])]))]]]])]]]])]]])])]])])]))))))])]]])]]]))])]]]]])]]]))]))]]]))])])))]]])))))]])]])))]))]]])))]])]]]]]])])])]]])])])))]]))]])))])))])]])))))]]])]]))]))])]]]]]])])]])])])))]))]))]])]]))]])))]))]]]))))])]]]])]]]]))))]])])))])]]])]]]]]))]]])])))]])))))))))]])))])))))]))]]])]])]])]]])]])]))]])])))]]]]])))]]))]])))]]])]))))]))]]])])]]])]]]))]])])]])])]))]]])])))]]))])]))))]]])]))))))])]]]]))])]))]]]]]]])]]]))]])))))))))))]])])))]]]])]))))]))))]]]]]))))]])]))]])]))))])))]]))]]])]]))]]])))])]]]]))]))])])])])]])]]])]])))]))])]))]]])]]])])]]))])))]]))]))])))]]])]]])]])))]])))]]))))])])]]]]])))]]]))])])]]]]])]))]]]]]]]]])])])])]]]]]]))))])]]]])))]]]))]])]]))])))])])]])]]))]]]]))]])]]]]]))))]])]])))]])))]]]])]]))]])]]))))]))]]))))])]]]]])]))]])]]]])]])]))])]))]]]]]))]]])]))))]))]]])])]]]])]]]])])]]])))])]]]]]]]]])]])))]]]]]]))]]]])]))])]]))))]]))))]]])]])]])])])])]]))]]])))])])])])])]])))]]]]])]]))]))))]]]))]]]])))]))])])])]]]])])))))])]])]]])))]])]]]])]))]]))]]]))]))))])))))))]]]))]])])])]])])]])])]])])]])]]])]])])])]]])))))])]]])))]))])])]])]]))))])]])]]))]]))]])]])]))))]]]]]]])]))))))]])])])]])))]))])]]]]]]]])]))))]))))])))])]]]])]]))])])])))]))]))])]])))))]]])))]]])))]))))]]]))))))]]]])])]))])))))))])])])]))])]))]])]]]))]))))])]])))))])))])]]))]])))]]))))]))]))]]]))]]]])])]])])))))]]))))]))))))))])])])]]])))))]]]))))]])]))]]])]]])])))])])))]]]]]]]]]]]])))))]]]]]]]]]))]]]]))]])])))))])]])]]])]])])]]))]]])]]])]]))]]))))])]])])]))]]))]))]]])])])))))])])]]))]))]]]]]]))]])])])])]]))))))])))]]))]]]]])))])]]]])))]])]))))]]]]])))])]]]])]]]])]))]]])])])]]]]])))])]])))])])]]))]]]))))]]))]]])])])])]]])]]])]])]])])])]]])]])]]]]]]))])))])])))]]]])])]))]])))))])])]])])]])))])]]]])])]]])])])]))])])]]]]))))]))))])))])]]]])]]])]))))]])]))))]])]]]]])))]))]]]])])]))]]))))))])))])])]))])]])))))]]))))]]]))))]]))]]]]]]]]))]])]]]]])]]]])))])])])))]]]))))))))))))])))]))]))])])])]])])]))))])))])]]))])))]])]))])))))]]]]))]])))])]])]]]))]])))]]]]])))]]]]]]]])])]]])]))))))]])])]]])]])]])])]]]]]]]]]]]))])]]]]]]))])))]]]])])]]])))))]])])]])]]]]]]])]]]))))]]])))]]))))]])]]))]])]])]]]])]]]]]))])]))])])]])))])]]])])])]])))))]]))]]]))]))]))]]))])))]]))]))])]))]))]]]]]]])]])]])])])]]]]))]]))]))])])])]]))]])]])]])))])]]))]]]])]])]])])])]]]))])))]]))]))]]]]]])]))]))))]))))])]]]]]]]])))]]])])]]])))])))]])]]])]])])]]]))])))))]])]]])]])))])]]))))))]])])])])])])]])))))]])])))))]])]]]])]]]]]])])])))]])])])])]))])]]]))])]])])])))]])]))))]))])]]))])])]])))]]]]]))))))])]]))))])]])))]]]]]]))))]))])])]]]])))])]]))))]]])])]]]]]]]])]]))]]])]]])]]]]))))]])))]])))]]])]])]]]))))]))))]])))]]]])])]]]]]])))]))])]))])]))]]]))))])]])]))))))]]]))]]]))))]]]))]]]]])]))]])]))]]))]])]])]]])))])]])]]]))]))]]])]))]]]])))]]])]]))]))))]])))]]])])])]]])))])])))]])])]]]]]]])])))])))]]]))]))))]])]]))]))))]])]])]]]]])]))]])]])))]))))]))]])])]]))]])))]))])])])]]))])])])]))])]])]]))])]]]))))]]))))]]))])]))]))))])]]))]]]]])])]))]])]))))]]]])))])])])))])])))]]]]))]))))]]]))]])]]))])]])]])]]])))))])]]))))]]))]])])]))]]))]]]])])]]])]]])))])]])))))]]])]])])])])]])]])]]]]]]]]]]])]]]]))])]]])))])))]])))]])]]]))])]])]]])]))]])])))])])))))]]])))))]]))]])]])])])]]]]))))]))))))]))])]]])]])])]]])]]])])))]]))]]])]]]]]))])))]]]))])))]])])]]])])]]]]))))))]])]]))]]]]))])])))))]))))]]))])])]])))]]]))]])])))]))])]]])]]))]]])))])]]])))])]]])]])]])]]]])))]]))]]]]]]]])]]])]])]]])]]]]])))])])]]]))))]))))])))]])]]))))]])]))])]])]]])]]])]]])])]]]))]))))])))]))]]]))))]]]]]))]]])])))]])))])])]])]]]]]))])))))))]])])]]))]]))]]))])]))))]]]])))]])))])]])])]]]])]))]))]))]))]])]))])))]]))])]])]])))]))])]]])])))]]]))])])]))]])]])]])))])])]))])]))]]])])]))]])))))]]]))])))))]]])))]]]]]]))])]))]]]])])))]]]])))))]])])]])]))])])]]]))))]]]]]]])]]]]))])]]]]]])]]]))))])))))])])]))]))]]]])]]]]]))])))]]])]))])])])]]))]]))]))))]))]])]])]))]])])]))]]]])]]))]]]])]]]]]]])]]]])])]))])]]]))]])])]))]]]]])))))])]))]))])))]])))))])]]])]]]]])]))))]]]]]]))))]))]))]]))]])))))]])))])])])))])]]])])))]]]]]])])))]))))))]]]]])))]])]))))])))]))]]))])))))])])))]))])))))))))]))])])]]])))))))]))))])])]]]])]]))])]])])]])])])))]])])))]]])))])]))]))]]]])]]]]))])])])))))))])]]])])))))))]])))])])])]))]]]]]]]])]]]]))]]])]))])))]]])])])]])]]]]]]]]]]]))]]])]))))])))])]])))))))]]))]]))))))]])])))]])))]]])]]]]])]]]]]))]]))]])))]))))]))]])]))]])]]])]])])))]]]]))]))))]])]])))]])))]]])))])])]])])])]])]))]))]]))]))])))]]]))]])]]]]])]]]])))])]))])])]])])]]])]])]))]))])])))]])))))]]))]]]))]])))))]))]]]))])]])]]]]))]])])])])]]]]]]]]])])))]))]]]]))))]]]))]]]))])])]))])]))])])])]))]]))))))]]))]]])])]]]]]))]))))])))]]]]]]]]]]]]])])]))))))]))]]])))))]]])]]])])]]]]]]))]])]))]))))])]])]))]]]]]))])]]]])]])))))]]]]))])]))))]])])]]])))])]))])))))]]))])]]])]])]]])))))])))))]]]]]]]]]])))]]))]))]]))))))))]]))]))]])]])]))])]])))))]))))))))]))))]]])])]]]]]))]))))]])]])]]]]]]])])]])]]]))]]])))]]]]]))]]])]]])))]]))])]))))))]])))))]))]])))))]])]])]]))]]))])))))]]))]]]]]))]]])))]])))))))))))]))]]])])])]]]])])]]])]]))))]]]))))]]]])])])])))]]])])]]]]))))])])]]]]]))]]])])])]]))]))))])]])])))]])]]))]])]]]])])))]]]]])])])))))]))]])))])])]]))]]]]))]))])))]])))]])])]]]])])))))])]]])])]))))]]])))]))]))])])]]]]]]))])]])]))]))]])))))])]]]]])]]])]])]])))]]]))]]]])]))]]])))]))])))])))]])]))]]))]])])]])))]])])]))])]]])]]))]]])]))])])))])])))]]]]]])))]]]]]]])]]))]])))))]]]]])]]]])]]])])]])])]))]]]]))])]]])])])]])))])))])]]]]]]]))]))))))))]]]]])])]]]]))]]])))]]]))]))])))]]]]])]]])])])]]]))])])]]]]]]))))]))))])])]])]]]]))))))]]])])]))])])]])]))])])))]]]))]))])])])]]]))]]])]]]]]]))]])]]]))]))])]]]]))))])])])])]))])]])]]))])]])]]]])]]])))])))]]]]))))]])]]]))]])]])])])))))]]))]))]))))]))]])])]])]]]))])]))]]]]])]]]]])))]))]]]]])]]])]))]])]]])]]])]]]]]]))]]])]])]]]]))]])]])))])]]]])])])]))))))))]]))))]]]]]]))])])))))]]])])))]))])]]]))]))]]])]]]))]]])]])])]])]]]))]]]))])))])]]])]]])]))])]))]))])]])]))])]])))]])])]]])]])]])])))]]))])]])])]])]))))))])]])))]]]]))))]))]))]]])])]]]])]])]))]]])]])])])])]))]])]]))]]))])))]))]]]]]]))]]]))])]]]])]]]]))]])])))]))]))]]])]])])])))])])])])))))])])]))])]]))))]]))]]]))])]))])])]))]])]))]]]))))]))]]]]]]))])])))))))]]]))])])))])]))]])])]]))))]])])])])))))]))])))])))])]]]]]]]]])]])))))))]]]))]])))))]]))]]]]]]]]]]))]]))])]])]]])]]]]])]]))))]]])]]]]]]))]))))))]))]]])])]]))]])))])]]]))]]]]))]]]]]]]]])]))]])]]]])]]]])]))))]))]]))]])]])])))])]]]]]])))])))]])])]])]])]]]))]])]]]]])])))])]]]]])]]))))))])))])))])]]]))])]))))]]]))]]]))])]]]]))])])]))])]]])]))])]))]]]]])))])))]))]])]]]))]))]])))]]]])]])]]))]]]]]])])]]]))])])]])))]]]]]])]]])]]))])])])])))]])])])]])])]]])]])))])))])))]))])])])))])]])]))]]]]))]]])]))))))))]])]]))))))]]]])]])])))]])])])))))])]]))])))]))]]])]]))]))))])])])]]]]])]))]]])))])])))))])])))]]])]]]])]]]]])])])]]))]]]]))])]])))])]])])]))])))]]]])]]]])]]])))])])])])]]))]])])])]))]]))]]]]]]))))))]])]]))]])))]]]]))])])]]])]]])]])])]]])])]))))])]])])]]]]]]]))))])))]]]))]])]))))]))]]]))])]])])))))]))])]]])])]]])]]])]])])]))))]])]]))])])]]]))]))))]])]])]))))]))])]]))])])]])))))]]]]]]))])]]]]]))]]]]))]])))))])]])]))]]]]))])])]])]]))))])]]))]])]]))])]]]]))))]]]))]))]]]]]))]]]]])))))])]]]))))]])])))]])]]]])))]])]])))]))])))])]]))]))]))]]))]])))]]))]]]]))))))))]]]])])])))])]))])))))))]])]]]])])]]])])]))]]]]))]])]])))]]))))))]]]))))))]]])))]))]]]))])))]))])]]])])]))])))]]]])])))]))])))]]]])]])]])]]])]]])])))]]])]]]]]]]]])]))])))]]])]])]])])]]]]])]))])]))))]]]))])))))]))))))]]]]))])]]))])]))))])))])]])])]]))))))])])])]])]])]]])))]))]]]]))]]])]])])])]])])))]]]))]]))]))]]))]])]]))]))]))))])))))))]])]])))))])))])])]]])])))]]]]])]))]]))]])]]]]))))])])]])]])]]]]]])]]]]]]]])]])))))]]]))))]))]))]]))))])))]]]]]]]]]]]])])))]]]]]])]))]])])])]])]))])]]]])))]]]]]))]]]))]]]]]))])])]]))]])]])])]])]]))))]])])]])])))])]))]))]]])]]]]])))]]])]))]])))]))))]])]])]]]))]]))]]]))))]]]]))])))]])))])]))]]]]))]])]])]])))]])))])]]]))]]])])]]))))))))]]]))]))))]]])]))]))])))))])]]]]])]]]]]]]]]])])))])])])]))]])]]])))))]]))]])])]])]]]]])]]))])])])]])])]]]])]]]])])]]])])]]])]]]])]]))])))]]])))))]]]]])])]]])))]]])]]])]]))]])])])))]]]]]]))))])]]))])])]])))))]]]]]])]])]))]))))])]))]]))]]])]))]])]]]]]))])))]]]]]])])]))])])]))]]]))]))))]]])]]))])))]])))]]))]])])]])])))))])]))]])]])))])))))]])])])])]])))))])))])))))]]]]]))))]])))]]])]))])])]]])]])])]])]))))]]])]]))]])]))]])))])]]]))))])))])))])]]])))]]])]]))))]))])))]]])]]]])]]]]))]]]]])])])])]))]]))]]])))]]])]])]]])])])))))])]]))]]]]]])))])]])]])]]))]]))]]))))])]]])]]))))))]))]]))))))])])]]))))])])]]))]))])]]])))]]])]])]])]]]]]]])])]))])])))])])]])))])])]]]))]])]]]]])])]]]]])]])))]])])))]])])))])]])))]]])))]]]]])])]]]))])]])]])])]))))))))))]]]]])]]))]))])]])]))))]]]])))]]]]))]]))]]])]]))]]])]]])]]]]]))]]))])])))])]))])]])])]]))]]]]]]])]))]))]]]]])])))))])))))]])])]])]]]))])]])]]]])]])))]))))))))]]))))]])])]]]))]])])]))]]))]]]])])))])])]))]])])]]])])))])])]])]])))]])))))))))))]])]])]))))])])]])])]]))))))))))]]])]])))])))))]]])]])]]]])))])]])]]))))))])])))))])])])]])])]]))]]]))))])))]]]]]])))]])))))))])]]]))]])]]]])])])]]])])])])))]]]))])]]]))))])])))]))]])))]]])))]]])])))]]])))])]])]]))))])]]]))])])]])))])]))]])]]])))))))]]]])]]]))]]])])))])))]]]])])))))])]]))]]))])))))))])]])))]]))]])]))))]]]]])]]]]]])]))]))])])))]]]]]]]])]]])))]]])))])))))])]]])]]))])]])]))])])]]]]]])))]])]))]))]))]]))]])]]])]))))))])])]))]])]]]]))))]]]))])))])])])))])]]]]])]]]]]]]]]]]]))]))]]]]))))))])]]]))])])])))])])))]])]]))))]]))]))))]]]]]]]])]])]]]]))]]]]]]]]]]]))))])))))]]))])])])])))])))))])])]))]))])]))]]])))))]]))]]]]])]]]))])]]])]))]])])])]))))))]]])))))])]])]])]])]]]))))]]]))))]])]])))])]])])]])]])])])))))]])]])]]]]])]))])))]]]]]]]))]])]]])])]))]]])]])]]]]]]))])])))])))]))))))]])))]]])])))]]])))]]])))])))])]))))]))]])])])]]]]]]])]))])])]]]]]])]])]])]]]]))])])]])]])]])]))))]])))]]])))]]))])))]]]]]])))])]])))]]))])]))]]])))]])]]])))]))])))])))])]]])]])]))]]]]]])))])]]]]]))))))])])]))))]))])]])]]]]]))))])))]])]))))))))]])]]))))]])]]))]]]]))]]))])]]]]]]])))))])])]))])])]))]]])])]])))]))))])])))]]))]]])])))]]]))))))))])])))))]))])]]]))])]]]))]]))])]]]])])]])))]]])])))))))]))))]]))))]])])))])))]))))])]]]])])])]]])]]]])]]]]])]])]))]))))]]]]]))]])))]]))))]])))])]]])]])]]]])))]]])]))])]]))))])))]]))]))]])]])]))])]))))]]]]])]]]))))))]]]]]]))])]))))))]]))])))))]]]])]]]]]]])]])))))]])])))]]])]]]]]])]])]])])])]]]))]]))))]])))]]))))]])]))]))))]])]))]]))]))))]]]]]]])]]]))]])]))]))])]]])]))])]])]))]]]))])])])])]]))))]]))]]]]]]])])]])]]))])]]))]))])))))])]])])]]])))])]]])])])))])])))))]]))]))]))]]))])]))])]]))]))]]]])))]]]])))]])))])])]]])])))])]))))]])])))]]]]]))]))]))]]))]]))])]])]))]]]))]])])]]))))])])]]]))]))))]]]])])]])))))]]]]]]])]]]]]))]]]])])]))])))]))))]]]]]))])])])]])])]])))])])]])]]]))]])])])]]))]]))])]]))))]])]))])]]]])))]])))))])])]])))))])))]]))))]]]]]]]]))))]])]))])])])])]]]]))))]))]]))))])])]]]))])])]]))))])]]])))]]]))])]))))]))])))]])]))))))))]]))]]))]]]])]))]))])))))]])])])))])]])]]]])))])])]]]]]]))))))]))])]]])))])))))]]])])]]]]))])]))]]]])]]])]]])))])]]))]]]]]])]))))])])]]]]))))]])]))])])))))))]])]]))]]]]]]])))]])]]))))))]]])])]]]])])]))]])]]])))])]])]]])]])]]]])))]]])]])]])]]])))]]))])]]])]))]]]]))])]]])]]]])])]])))]]]])])))])])]]]]])))]]])])))]]]))]])])])))]))]])]])])]])]]))])]]))]])))))]]]))))])))]]]]))))])])]]])]]])]]]))))]]]])]]]]))]])]]]]]])]])])]]]]))]]]]]])])]])])])]))]]))))]]]])]])]]))]))])]))))]]))))]))])])])])))]]]]])])])])])])])))]]))]))))]]])]]]))]]])])])))))])))]]])))])]]))))))])))]])])])]])])]]]]])]]]]]]))]])])]))])])))])))))))]]])])])]))])])))))])))]])]]]]]))))]])]]]))]]]]]])]))]]]))])))])]))))))]]))))]))])))))])]])))))]]])])]]]))]]))))])))])]]]]]]))))))])]]]])))))))]]]])]])]))])])]))))]))])]))))])]]))]])]]]]])])]))]])]]]])]]))]]]])]])])]]])])]]]))]]])])]]]]])))))])]])])]))])])))])]])]]))]))))))]))]]])]))]])]])]]]]]]])]])])))))]))]]))))))]]))]]]])]]])]))]]]]]))]]]]]]]]))])))]]])]))])])])))]]]]]))))))))]])]))]])])])]]]]]]]]])))))]))))))]]]]]]])])))]])]])))))]]])))))])]]))))]]))))])))]))])])]]]]]]]]]]]))]))]]]]]])))]]))]]]]])])]]]))))])))]])])]]]))]))])]])]]])]]])))]]])))))]]]]])]]]))])]]]))])]]))]))]]]]]])]])])))])]))]]])])]]]])]])])])]]])])))]]]]]]))]]))]))])])]]))])]]]]])))]]])]))]]]))])]]]]]]]]])))]]])]]))]]]]]]]))))]])]]])))))])]]]])]])))]]])]]]])]])]]])]]]]))]]])))]]))))]])]]]))]]]]]])])))))]])]])))])]]]])])))]]]))]]]])]]]])))])))])))]))]]])]]]))))]))]]]])]]])]]]]]])])]]]])]]]]]])))))])]))]]])))))]))])])])])]])]]]])])]])])))))]])]]])]))])]))]))]]])])]))))))))]]]]))]]]]])])]]])])]))]]))]]]))]])))]]))))]]))]))]]])])]])])])]]])]))]]]])))))]))]))]]))))))]])]])))]]]]]))]))]))])))]]]))]]]])])))))]])])])]])))]))])]]))]])])]]))]]))])))]]])))))))])]))]))]])]]))]])]])]])]]])]])]))])])]]]))]]]))]]]])))]]]]]))]])]])))]]]]]))]])))])))])]))]]])])]))]]))))]))]])])]])]])))]]])]]]]])]])]]]]]]))))]]))]])))]]))]])))])))))]])]]))]))]))]]))]])))])])]]])])])))))]])]])]]))))])])])]])))))))))])))]))]))]]])])]))))]])]]))))]])])]])]])]]])))])))])))]])]]])])])]]))]])]))))]]]))]))]]])]))]])])))))])]))))]]]]))])]]))))])]))))))]]])))]]])))]]])]))])]))]]]]))))]))))]))]))))))]])]]]]])]]]]]])])))))))]))))))]]))))))]])]])])])]))]))])]])))]])))]]]])))))))]))]))]))]]))))]]]]))))]))])]])])]]])]])))])])))]))])]]])]])]])]])]))]]])]]))])]))]]]))]]]])])))))))]])]]]]])]]]))])]]]]))]]]]))]]])]]]])))]]]]))))))])])])]]]]])]])]]]])]]])])]])])))]]]])]))]]]))])])]]])))]]))])]]))]]])])]]]])))]]]])])])]]])]]))))]])])]))])]]]])]])))])]]]))]))))))])]))]])))])))]]])])])))))]])]]]]]])]]]]]]))))]]))))]))))]]]]])])))]])]]])]]])]))])]]])]))]))]]])])]]]])]])]])]])])])))])])]]]))))]]]]))]]))])]]]])]])]]]))]))]))])])])]]]])]))])]))))]]])]]]]])])]))))))))))]]]]]]]])]])]]]])]]))]]]]])]])]))))))]]))]]))])]]])]]])]))])]]]]])]))]]]]))]]))))]])))])]))]])])))))))))))]]]])))))])])])])]]]]])))]])]))))))]]])))]))]]))]])])]]))]])])]]]]]])))]))]]])))])]]))])))]]))))])))))]))])))]))]])]))))))])]])))])]])]))))]))])))]])]))]]]))]]]]]]])]))]]]))]))]]])))])))]]])))])]]])])]]]]]]]])]))]])]))]])]])]]])]))]])))]]]])]]]))])]]))])]]])]]])])]))))]]))]])])]])))]]))))]]]])))]))]]]]])))]]]]]))))]]]))])])]))])]]])))]]]))])])))]])]]))]]])])]])))])]])])))]]]]]]])]])])]]])])))])]))]])])])]])))])]))])]]))]))]))])]]])])])]]))))))]]]]])])])]))]]]])]]]]]))]])))]]])]]]])))])]])))]]]]])))]))]]]])]]]))]]))])]]]]]]]]])]))))]]]])]]])]]])]]])))))]))]]))))]]]])]]))]]]]]]]))]]))]])])))]))]))])))))))]))]])]])]])]]])]])])]))]]]))])])))]])])]]])))))))]]))]]])])))]))]]))]])]]]]]])]))]))))])]))]]]]]])])]))]]])]]]]])]]))])))))))]]])]))]))]])]]]])]]]])]]]])))))]])))))]]]]]]]]])]))))))]]]]]]])]])))))]]]))))]]]]]])]]])))]])])])]]]))]]]))]))]])])]))))]))))]]]]])])]]]]])]])))])]]]]])]])])]))])))])))))]]))]]]]))]]])])))]]])]]))])]))]]]])])))]])))]))))])]]])])])))])))]))]))])]]]]])))]]])]]])]]]))]]]]]]]])])])]])]))]]]])]))])])])]]])])]])]]]]]]]]])))])])]]])]]]])]])]])))])])]]))]]))]])])])])]])]))]]])])))]))]]])]])])]))]]))]]])]]))])))]]]]])]]]]]]]]]])]))]]))]]])))]]])])])))]])])]))])]]))))]])])]))])]]))))]]])])))]]])))])))])]))))]])]]]]))))))))]))]])))))))]]]))))]))])])])))])]]])]])]))]])))]))]]])]]))])])]))]])))])))))]]]])])])))])]])]])]]]]))))]]))])))]]]])]]]]]]))]]]))])]])))]])))]]))]]))))]]))])]]]]]))]]])])))))]]]))))]]])]))))))]]))]))]])]]))]]]]])])]])))]])])]))]]))]]))])])])))]]))]]]]])]))])]))]]]]])]))]))])])])]))))]))])])))))]]]))]])]))])))]]]))]]]]]))))]]]]])])])]]])))]])]]))]]]))]]]])]])]))])]))))]]]))])])]))])])))))]])])]]])])))])]])]))]])]))))]]]]]]]])))]]])]]])))])))))])]]]]))))]]])))])])))])])]]])]]])]])])))]))))))])]]]]]]]])]])))]]]]])))]]]))])))))])]]]]))])])]))))]))]))))))]]])]]]]])))))]]]))]]]]))]]]]))))])]])]])]))])]])])]))]]))]]))]]])])))]))))])])])]])])]))]))]))))]]])))]]])))]))])))])]))]))))])]]]])]])]]]])]))))])))]]]])))]])]]])]])]]])]]])]))]]]]]]))))]]])))]]))]]]])))]])]])]])]))))])))]]])]])))))]])]]))]))))]]])))))]])]])))]]]]]])))]]]])]])]]]]]])])]])))))]]]])]]])))]])))))))]]]))]))])]]]]]))]])]])]]])]])]]])])])]]]))]]]]))]])])]])])])))])])])]])]])))]))]]))]])]))])]]]])))]])]]))))]))])]]))])]))])])))))]])]])])]]])))))]]))]])]))))]]))))))))))]]]])]]]))])])]))]]))])])])]))))))))]])))]]))]))])]]]])]]]]])]]]])])]))))])])]])])]])))]]]]])))))]]]])]]]]))])]])]])]]]])))]]])]]])])]]])))]))]])]]])]]]]])]]))]]]]])]])))]))))]])))))))]]]]))]])])]))))]])]]]]])))])])]]]])]))])]]]]]))))]]]])])])))]]]))]))])]))]])]]]))]]))]]])]]))]))]])])]]]))]])]]))])])))]))))])))]]]])]])])]])]))]])])]])])])]])]]))))))]]]))]))]]]])))))]])))])]])]]))))])]]])])))]])])))]])])))]]]]])]])]])]))])))]))]]]]]]])))]]])))])])])])]])]])])]])))])]]])))))]]]]]))]))])]]]])))]])])]])]]]))]))]]))]]])]])])]])]]]))])))]]))])]))]]))]])])])))]))]]]])]]]))]]]))]])))))))))]]])]]))))]])])])))]])))]]]])])]]]]))))))]))]])))])))]]]]])])])]]]]]))])]))]]])]])]]]))]]))])])]]]])))])])))])]])))]])))]]])]))]]))))]))])]]))]))))]))]]])))))])))))))]]]]))))))))])])])])]]])]])])])])]]]])])]])]])]))])]]]]]])))]]]))])])))])]]]]))))]])))]))])]))])]))]))])))))))))]))]]]))))))])]]]))])))])]]])))]]]]])))])]])])])))]]])]]))]])))])]]]]))]]]])))])]]]]))]]]))]]))])]]]))))))))]]))])))]))))])]]])]]]))]]])])])]))))))]]])]]))]])])])]]]])]]])])))]])]]])]]]]]]))]))))]))))]])))]]]])])]]]])]))]]]))])))])]]))]))]])]])])]]))]])))))])))]])))]]))]]))]]])))]])])])]])])])]]]])]])))]])]])])]]))]]))]]]])]))]]]]])])])]]])]]]]])))]]])))))))])))]]]]))]))))]]]]))])])])))))))]))]]]]])]]]))]])))])))))))])))))]]]]]))))))])])))])))]]))))))))))]))])])])]))]]))]))])])]]))])])))]]))]])]])])]]]]))]])])]]]]))]))]]])]]))))]]]]])])]])])])]]]]))])]]])))]]])))]]]]]]]]])))])])]]]))))]))])])]]]])))))]]])])]))])])])))))]]])]]))]])]))))))]]]))))]]]]))])]))))])]])))))]))])]))))]]))]]))]]]])])])]])))]]]))])]]]]))]))))))))))]))]]])])])))]]]))]]] ()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]