([(())])[] ) ( [ ] (( ([ [) [(]) [])[]) (([][()])) ()[][])()( [)()(][][] ([()[]()[] [][][][][] ()[]()[]() (((([])))) (((([]))) ((([])))) [[[[[]]]]] [[[[[[[[[[ ]]]]]]]]]] [[[[[[]]]] ([([()])]())()[][]([()([[]][()])]([])[][])[][][[]]()[]()([]([])([([][])]))(()[])()[[][[(())[]](())]] )([[[][]](([]))])[]([()[]])((()))()([][[][[([()])()[[([[[[](())][]][]()()]([()()(()()()())]))]]]]])( ()[]()([([])]()[]()()[[]][])[]()[[)[](()[([]([()[]]([])(()())((]))([][]()[()]))[([][()[]][([])])]])] [[(()[][])()()[[[[[[]]]]()]][]()()([[][(()[])]])(()()()(([[][]])()[[][]][([[()](()[])])][][]()))([]) [(([]]]](([])[))][]][[()[[)]](]([(((([()([([(([]))[[(]])[]]][([[[]([))([[[]([(][[]]]](][][]([[(]][]) (((([((([(([[[[[[[[([[[[[[([(([([((([[[([[[(([[[[[]]]]]))]]])]]])))])]))])]]]]]])]]]]]]]]))])))])))) ([[([[([((([[[[[[[(([[[[[(([((((([([[[(((((((([[[(([[([[([((([[[[[[[(([[[[[(([((((([([[[(((((((([[[( ))))))]]])))))]]])])))]))]]])))]))])))]]))))])]]])))))))]]])))))]]])])))]))]]])))]))])))]]))))])]]]) ([[[[[([((([[([([(([((([([([(([[(([[[((((([[[(([((()))]))]]])))))]]]))]]))])])])))]))])])]])))])]]]] [[[((((([[(([([[([([(([(([(([[([([((((((((([(([(([]))]))])))))))))])])]]))]))]))])])]])]))]]))))]]]) [(([[[(([[[[([(([[[([([[[(([(([([([([((([(([[[[[[()]]]]]]))])))])])])]))]))]]])])]]]))])]]]]))]]])]) [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ ]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] ()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()() [][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][] ()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[] [([[[][]](()())][]())[][[()()]()[(()[()][[]])[()]]()]()][]([[()[()]]])[]()[][[()([])][([[](())[[]]([])()([][()])])][()](())([[[()]([[([])[[((([][[]]())))[][([])][()][][]()[()[[[]]]]]]]](([(([[]])(())([()[]([])[]]((([][[[[][](([]))]]]))[()[[(()[]([([])[()()]])[[]][][]()([[]])[][][[[([[(())]])]]])([[][]][[[[[]([[][]()][[[][]][]()])](())[][[]]((()))]()]][])]()[[()[]]]][([])][()[[][[()]]]]]()([[][]][[[()][](([]))]][]))(([[[[[()][([[[]][]])][()]([][[[]()]()][()][]()(()()[(()[][][[]])]))([([][](()))])[]][[()]][](()[])]]])[[[]]][()[[()]]][()])))[]()([])])[][]))]][][[]])[()()[()]([()[]])(()())[]([([]([([]()[][((([((([])()))[](([])((()(())[][][[]])()()))])))[](([[[]()(())]]))[](()())]()())[[[][]]](()())()(([[]]))()()()])[[][()]]((([]((([()])[[]((()([(([])[([()][][][][][([()](()()))()])][([][])[]])](()))))(()()[](()()[])[([])[[][[][]]]])])[([]()[](()()))]))([][[[]]][][]))([]))()[(([[([(([([()])[]]()))()[][]]())]])[])[][[()]()][]([](((((()(()[[[]([()][]([((()())())()])[])][()]]))))[][[]])))][][[]])])]()([][])[]([])]()[((())())][][][[]][[[]]]()[()()(())][]()[[([][])]]([])(())[[][[]]][][()]()([()])()([][()([([][][[]])((()[]()))([(())])[]])])[][][[]]()[(()[()])][([[]()()()[]]()[((()[](()[[]])))[][(([([][(([][])()[][[]([([])]()())])]([()[()()((([][([]([([]()(())())]((())([])(()))[][]))][][])([]()([]())())[]([[]([]())()[()]][](()[])([()()][((()))()])()))(())[[]])[[][]]]])[()()[]]())])[()()][]())][]](()))][()](([()])([]()([]())()))[]()()[()]()[][([[()[][]][()()[]([[]([])][()]())][()[]([](()[([[[]([()[([()[()[]()([([][][])[[((([]()))(())([]))[]]]()]()(((([[]]))[([[]][]())()][([([])[[([])()[[](([((()[]([][[]]()())()[(())][])[][[]][()])[]]([]()()())))([](()())[]())]]]])[((()[[[][[[()(())]]([[][[]]])()((([][]([]()[]())))())]]]()[][]()[](([]())[[[]]]()(([])()[[](([]()()))])))([][][(()()[](()[[([]([(([]([()]()[]([()()]()[]()[()])[])[()][[()]][[]]))([])([])([])])())(())]]))[()][(()[])](()[([([[]])()]()(()()[]))]([([])][]))[[([()((()[]))[([])][][[]]])][]][[(())]]])()[])[[]]]]())()[])([[()()]][[]()()]))()([[()]([])])]]([])[[()]]()())][]][])([((()))])[]]([([])[]()([])((([[][]]()))((())(())([])[(())](([[([])][()][]])[()[][]][()([()])])()[][])()([()]))[]](([])(([()[[([])()([([]())[][()]])(([]())([([])()]))(())]]()()()[[][[]][([][][([[]()])()(())])()([])]()][[]]]([][][])[[]]))))[]][]([[]()[()]][()[]][()][([[[([()()])]]][](([(()[](()))([])(([])[([(([])()[([()(()())[([([]()[])[()[]]])]]())(()()([([])()[([])[()([()([]())[[()]()]])]]][[[]]])[(())[([[]][][((()))[]][])]])[[[([()[][[()([()])([]([[()]][([])[]()][[]()([]()(())[])[]()()([])]((([])[](([]))()([[()]]))(([()[][](())()()[[]]](([]))())())())))[]][()]]][])(())][()(([(())][()])()()[])[]()]]()[][[]()][()[()](()[](()[([[][[]()(()())(((()(([]))()([](()(([])[])))[])([][])[(()())](()[[[([])]]])(())))]]([[]][([])]()))]))]][()]])])][[()]][])([])][(([]))]()(()))))]))])(()))()()]])[[]][]]()[][]()()([])[][][()()][(()[]())]()[][][[](())]()()[]([][][[[[[]][[([((())())(()(()))([[][[[][]()][]]](([[[]][[[(()(([])[[]]))]([][])](([[]]))]]))[[[()()][]]()][])])[]]]()][([][])]][][](([(([])([]))[[]]](()([([[(([][[][]]))[][]](()[])][[[[[]]]()][](()()[()])])(()(()))[]()[()]([([])](())([]))[[[[[()]]]]]][()][]))())()[[[[]]]])[][[]]])[[][](()())(([()][][([][([[]((())())][()[][]](()[][])(())())])[[]]](([][(([]))]()[]))[]([()[([(([]))])()(((([]())())[()()()(())]([])([])))]([[]])()[]])[[(([]))][]][])()()([()([[]][])]([]()))[])]()([[(())[[]][][]([(([]))][])]()])()[][()[]][]([][[][]([((([[]])[[[]]])[]())])()])[[]]([])([()()](([()])[])[])()[([])[]](()(())[])[][]()[][][[[(([[[]]()][[()[]([((([[][]])())[()])(([][]()()))]())([([(([[[[][]([([](()[][[[]][[]]][[()[()](([]()[()([][])[((()()))]]()([[]]))()[])]][]))])(((()()))[[[]([[]](()()([])))]][([][(((()()[[[]]()])([]))[()[()([()][()]([()[][[]]][(()[[()[([])]][]])()()()(()[[()][]])](())))]()[]])][([[]])([]()[]([()[()][]])()[][[]][])[([][[(())[(([]))]()(())]((()[([([[[()]]])([()])][[([]([[([])]][])()[(()[](()))])]][](([()](()[]))))]([[]]))[])])[()[()[((()))]]][](()[()]()())(()[()()])[(()[[]]([(())()]))]]][[([](([])[()]()))]()][((([([(())[]]())[[[]][]()](((((([]([]()([][])()))))(()))()(())[[][]])(([])[]))]())))])]())[[(([[([][])([])()]]()[][[]()]()))[[[()[([()()((([])()))(())[[([()[[][]][()](((()[[][[()][()[]]][[[([(([(([()[(())(([][])[()][(()(([])[()]))][[(()())]()][()[]])]()]((())([])[]([])((()[])()([[]])))()))][()]([]))([(([])([](([[[((([])))][]((([]())()()[])[][])(())][()(()[])[]]]())[]))[()[(((([])))[][()])][()[]]][][][])[]]()[[]][()]((((()))[()()[][]][[]])[])[]))(())])]]()][]])((())(([]))([[[]((()([[(()[[([[][]()()]([]))]()[]][]([[(()()[]([])[][([[[(([([]()([([()])][])()(([]([][(([([[][]][()])[(()[])()]([()([()(())](()()))])][][[[()]()][]()(((())[]())()()[()()((()([(())]()(([[](((([[([][]((()[])())[()(([[]()(())])[])])[]]])([()([])][]))())[[[]]([][])])])))()()(((([[]()[()(()[(([]()[[][()]()])([][])([]))[[[()]]]]((((([[([[]])]][[()][([()][])][()()([(())[]])][]()[]]))()[()[][]][([])])()[[]])))]([][][][([][[][]])]())()()()(())])[]))()([()[][]])))[])]()()[])(())][([])]))][[[]]([(())])][()[][([])]()])())[[[](()[[]][[[]()]((()())[]()()[([()()(())])[]()][[][]]([[]])[])][]()([([])[][][]])[()((()[[[]()]()([][][]())()[[[[[()]()]]]([[(([[]((([])))[()([][([()([()()][[][][]()][[]])[]][])][[]])]()]()))()]([[[]((()[[[]]([[([])]([])(()[()][()([[]])[]][()])][[]()([]()[]()()[])][][])](())))]])()()])()((()))]][]([([([((()))[][]])(([]([()[()[]]]))()[[[]()()]])()()]([(())])())[([][]())]()])[])[])((()[][]())([][])()[[]([][(()()[[][[[[]]][][][[([][[[](([[]]())[]()((([[](())(())])(())[(()[])])[]()[][]))()[][([]())][]]]())]((([()([])])(([])([((([[()(())]][])[]))][[([()])][[[()][]()][]][[[((([([()])[[][[([])[]]()(())](([])()())(()())]]()()([([]())()()]())(((([()])[][])()[[()[]](((())[]([[]]([()][]))[]))(((([[((([]))[]()[]()[][])()]])))[([]()[()()([])[][[[[([]([][])[[[]]])[[(()())]][((()))[([])(((([[()([[()((()[][]))]()[[()[]]][[]]])]])([])[(())])))()()]]()[[]][[([])]()]]()]()]()]][])([()][])])([][[()]]([()[]]((())))())(([][])(()))](([][])[])[](())[])()[(()[[[](())[][[[]]]([][[]]()()())[[[]]]]([([((()))]()()())((([]))((()))[[[][(())][][](([][](()()()[]))[()(((()[])))][()])]()()[][([])][[[([][([[]([()()()((())())][[]()])[][]()()()][])])[][]][]]][][][][]([])()])()])])[()[()]][[[([[[]((([])))([()[][[([]()[])[[(([()]([])))[]]()()[]]][][[]([]())(([]))]]])()]])()]][[()((())[()(()[[]])[]])][]]]()])[([])[([[[][](()[])(())((()([[][][]]()[])[[]]))][[]([](([((([]())))])([[[]]]()))[[]])]]())()[](()()())()([])]([])[(())]])([()(((())))]))[()])()[](()[])]([[]][]([])[[][([[][[[()()]]]][])]][][[(())]])][]()()[[]]]]))))[]][[]([[]])]][][(())[[[[]]](())[][(([()[][([][][])][](([]()[[[]((()))[()]][]()[(()[()])]]())()[])]()[([[[[()[[]][[]]](()[()([()])])]]])(()[[[]()]][]())][[]()][(())]))]]((([]()()([()])[(())])))[]()[]][((((())())[]()[[][][][][]][]))][][][((()()()))()][()]()]())()()][(()((()[]([[()]])())[]))][[]([[]])])])][[](())])]]((())[]))([([])][]))[()]]()))[](())]]][])[()]])]]([])([[(())[](([][[]()[]]([()[([])([[()][]])]]))[](()[[[]]]))[[][](()[((()))][][][[](()[])()][(()[])])]]]()[])))]]))()[[([])(())]])([([[()]])])][]]())))[([])[(()[()[[]([]())]])]]()())][[]]())()][(()[[[(()[])][[(([]())[()])()]((()))()()()[[()][()]](()())]()]])[([(())][])[]]()]([])[[[[]]]]([((()([[()]])[][[]()]))[[]()[]][[][]]])]][()]())([]([])[][][[(([]))][[((()(())()()()))[[]]](())[](([][([]())]))()[[((()))]]]][][])[()[]()]]((()[()])()[()()(())[]])]]]([])([])]][]]]])([(((([([])][]()[]()())()(()([()(()[][]())]([]([])[][[[(([([][[[](())]])]([])[]))][[][[]]]]][]))))()[[][[()]][]][]))[((()[()][])()())]])[])])](()[[([][[]])]]))][][()[[(()()()())()[](())()]([(()())[[]][]])([])]]]))[]]([]())]()][]([])([](()[])[([[]])])()(([[](()[[()()[][]][[[][]]]()()])]))()[][()][()[]([])[](())]([[[]]][[][([(([([])()()[()()[[(([[]()[[([([[][]][()[()][]([[()([(())()([][])()])]])])])(([[([(())()][])([])[(([[(([[]()])()([]))[]]()[][((()[]()()))]]([])[]([]()[])[])[])[]]]](()[][(([([])])([[]][]))])())[])]]]))]][[][][[[()[]]](())]][()]]][][()][][]))[[()([[[[]][[]]]][[([[]()()])()()][][]][][][(([][]()))])(()[([][([])])([])])]]][][(()([])[[()]([[]])]([[]]([[]])))])]]()[])(())(()[[(()[[[]]([[([])()]][(([[[]]([()[]()[]][][()])()([])[]()[]]))])(((())))[[()]][][]][]([[([()()[]])]])(([]))[([[]])])]()[()]]([[[]()[]([])]([]())[][[([()])()()[(()())(()[])](())[][()](([]([])[[]([()()][[]])]()[][()[]][]())((())[][[]][[]()[]])[[]][[]]([(())]([][])(())))][]()]()()[[]()()]])(()([([])]))(((())())[()()[]]))[[]]([][()[((())[])[[[]][([[]([([]([])[])][]((()(([])[[]()]))([([()()])[][[[[]]]]]([()])([])))()(()[[[[[][((())[][][])]][([((([][()[]((([([()[[[[][[]()]()[[[([])[]]]]]]([])[](())]]([[[]]])[(())[]][])((()[()]()))[]][]()())))]))[(()[](([](()[]())[]()[()]())[])((())[([[((()([])[][])()())][(([()()([[()(([])(()(())[[]()[[()([([])])][]][]])()[][][()[]][])]])]))]])()([[()[(([][[[]][]([]([[[]()[()(()[]())()[()[[()()]]()()[(((())[()[[[[()[]]]]]()][[]([][[]])[()]])[(())[]])][]]][[(([]))([[[][]]](([[]])())[[]])]](())([]())[]]]))]([](()())())))()]][]()])])[[][][]([[[][]]](()()())[([()(()[])[]][])()()]()()([])([[(())(()[()(([])[])[]])][]]))]())][(())][][])[([]((()))[()])][]][])([])][]]][([])(()[])]()[(((()[[([][][(([])[[]((([][[][]([][]())[[[]]]][([])])))])[][[[]][[(([(([[[[[([])[[[[((()))]]()]]]][[]()([][[[]]][][()][(()[])][]()())[](()())]]]([[()]])(([(([]))]))[]]))()]([][]))[])[[([](()))[((()))]()]]]]][]()[[[()][]]][[]][]]([][()([()][()[()([][([])]([()][][]))]([])])(())]))]([][]([]([])))])()()))][]]))()[]])()[[[][]][]][][(([([([()]())[[]]])](())[])[])([[[[[(()((([[([(([][][][]()([][][()[]()][[][]([])]([[][([]()())]((([])[([[[[]](([()[()]()])[(()(()())[])(()()())[]]()[])]])[()[]][]]))]([[()]]())[(([]))][])[[]][])))])]][](())[()[[]()](([(()[](([([])][]([])[[[([])[]]](())(())[([[]])[[[]][[[]]]()((()))]][][]([()[][]])[]]))())][[[(()[[([])[[][[[]]]((()[][][(()[])]))]]][[()[()]]])][]][(()[([])]()[][])[()]()[((())[(()[[][[(()([([])][])(()[][])([]))[]()[[()]]]()]([])])])[[]]]][[]()[]][]()])([][((())[][()]())[()[()([]((([])))[][][][[[[[()[[]()][[]]]]()[]](())]][[]])]][][]]))()()])([[]((()))()]))[]([](()[([(([])([]()))])[[][[]]]])()(()[[[[][[()(()[([[][[]([](()))[[]]()[](((([()([[[]]()])])))[]())[][](([]()()())[][[][[][()]](([([([](([[()[[][(()(([()([])()[]])(([([()()][()])(()([]))]())[][](([[]()[[]][()]][[][(([])[([()])([]()())])]])))([]()[[][()][[](())]([([[(()[]([([])][(([()(())((()([])()))[]]()))(()(([])[])([[]]))][[](())()][[()((()))]])[])]]()())[]])][][[]])))([])(([[[]]((()))[]()])[]())]]]]))())[[[][(())]][[]((())(()([()[]][()])((([[]]))[([[(())]])][])))]]])]()[()([][()[]])][[[]([]()()[[[]][]])()[[]][]]][])()[])[]])()]][((())())(()[[]([])(([]))])([]()([]))[[([][([][]([]))[]])]][]])][[][][]])[()]]]]][][]])())[](([()()]((()[]()[()[[[()][]]()]])[[()]])(())()))))()][]]()[]][[]]]()()[]][[]([][]())])[]]]][]][]()][((()(()((([[[][()[]]()[()[([](()())(((((()[]))(())[[][]])(([([][[([([[(((()[]([((()))][([(())](()())[([(([[]])())()(())][[]])]()([]))])[]))[])[()]]](([[]([][()(())][(([])(()))])])[][])[([[]([])([]())((())(()([((([([])][][[((())[])]])([])()))]([(())([()][][[]()(())()([])[[]][[[][][[][()]()]]([]()())][()]])][])[][][()([])][][[][[]][][]])[]())()((([[]][[[()((()()[[()]][()]))](((([(())[][]()[()()]()[[][[][]()][[][[][]([])(([[]][]()))]]]])[[][]])()[])[])]]())))())[[]][[]]])][])])()]])()[]])))[])(()))]][][[][][()()[]]][]]][()[]([]()[])]))))())[()][()]((()[](()()[]()[[[]][]])())[()]([[([()])]])([]()))[])])()[][]()()[[[]()][()]()][]()(([]))()([][()[]])()[[[]]([])()]()[()](())(()()(()[]))((([[][]]))[][])()[([])[][]][][[]][[][(())[()](())]()[[[(([()[][][]][[]])[()[][]])][([(())[]])(()([]))()([()(([])([()()]())([]))][]([[[]]([()()[]][](()()[[[]]])())[]]((()))([]()[]([(())])((([][()(())]()[]((())[[[[()(()())[]([(()()[][]([[()[](()([[]])[()[]])[()([])(()[])]()]([])]))()])(())((())([[]]))[]](()((([][(()()())[[]][[][(([]))]]]))()[]()[]())[][])([[]])[[]]]][]([[]()()])(())])())))[()]()))[[([[][]])()[]]])[]]][][[[][]]][[()][]()](([](([]([[]()](([()]()[[[[]]]()])(())[]([][()([][((()[]([])[()])[(([][]))][]()([][][([[][]()][](([()()()][[((([()]()()[])[()]))[][]][[]]]))())][]([(()())[[]]][[]]()))()[])(([]()()[]()))])]))([[[([])]((()[][][])()[()[]])]][]([][()[]]([[]](()))))))[]()[][()[[([])][[]]([])]]))(()([()]()[][]()[]))[])]][][()][[[][](([]))[]]([])][[()()[]]][(()[[]([][()])][()])(([][[()]([])]))()]()([()()])(()[])()([[]][])[]([])[](([[[][[]][]]()([][])])((([]()([[[]()()([]())[]]][]([])[])([([])()()])()()[[]])[])))(([[][[[(())([[]()[]][()[][[]]([[[]]()([[]]([[[]]])[(())[]]()[()][][(([])[()()()])()])(([[([])(())[[([])]]()(())[]][()]])[[[()](([]))]])[]]([][])())()[]]())][([])]]([]([])[(())]())([()]())]]([[][]()([][()([])])[]([[]((()[[]][[][[]][]([(()())]())([]())]))])[][]][])[][([])[]()]()))(()[][])[]((()))[()()[]]()(())[][]()[[[][]]]()()[](())([])[][](()[])()([()()[]])()([])[]()[[()[]()][[]([])]][]([])((([([])[[([])](())]()]))[(()[[]]()(())[([[()()][][(()[]()[])](())][][][()()([]())])][()])(())()]())()()()[]()[([])[[]][]][](())()[[()(([()[][][[]]])())]][]()([])()([[(())(()[[()()([])]][])][[]]])[()][]()[][([][()](()()[()[[()]]]())())[[[]([])](()())][[()([([([[([()[()(())]]()(()))]]()[]()((())[()[()()][]])[])][[([])[][[()]]]([[]()((([][[][][]([[[[()()(((()))())[][]()]()]]])]()))()[])(()()[()[]][((()))][[[][([])([[[[][[([])()]](()[[]][]([()[()[]]([])()]))][()()]]][])][]]]([])[()][])])[][([([()((([[]])))])[][]][[][[()][]][][[([()[][](([]))])][()]()()()()[[([(([()][[]])[[][()[()]()]()])([])[]]())(())]]()]][(())])[(((([][()()][])[])[][([()][[]()])]())([()][]))((()[]))]]])][[][((()))[](([[][]]))][[(())[[[()][]][()]()]]]])()]()[]()]([()([[()]()()])])[][[()(([]()([]))[])[()()]]]][[[]]()[]()]([([])])([[()(()[((([()])()()))](())())][]]([]))[[[]]()[[()[[()]()[]()][[]][((([()][][[[[[()[](())]]()]([])]][()([()]()[][][[][]([[[]([]())([][[]])]])[()]]()[([[][([()[][]()]()())[]]([[]](()))([])])])]())(()[[]]())()))[]()][()[]([])()][([])]]]](())[()][][]([]())[]()[][(()[()][]()([])())]()[()][]((())[])()[][][[[]][(()[])[[[([(([])())()([][][[]]())])][([]([[([[[]]([])][][()]([[]([])[([])]]()[(([(())[]])[])]))[][][]([([()[]]([[[][]][(([([[]])()[]()[]()][()[][([](()[[()[()([])[]]]([][()][][[]]([((()))])[([][])()][])([(()(())()())][[]][]([[][]()])[()()()]((()[()[][]([]())]())[]))[([])[[()[()[()]]]]([])()(())[](())][[[][[()()()()([[]([[[]]([[[[][][(([()[([[][](()(()()))[][[]][]][][[[()][]((([(((())[[[[[((([]))((([[]([(()[[([])]][]([](()[]([])[])()))]())[]([[][]]([]))()](())[()]([[][[[()[]]]((())[])][[(()[][([()[]])[]([[]])]()([[([[[][][][([()[[][[()[][](()())]][()]([([])[(())[[][]]]()[[()[]()][[[][]]]()()]])]][(([]()[][][]()))()])]()]([]())()])()[()()]][][](())](([][(([])())])(([](()(([[](())()][[]][][[[[]][(())[[()]]]([](([([()]()(([[[]]()()]())()[[]]))](([](()))[])()([()[]()[[][]][[[]([])]]][])([[]][])()(()[])()[[]][]))[])([[][][]]())()]]))[]()(([()(()([]))])))[][[]])))[([[][()[[([])][]([[]][][])[][[]]()]]()[(())]][](()[[([])[](([[[()]()(()(())[])](())([]()())][]((()))[][]))][]]([][[[[[()][()](([]))]()](([])())[]]])))][([])]))([])(()([(()([][]))[[]]()][]))]][][([])][][]]()))[][]([])([(((([])[]((([([])[]])[])))))]((((([]()())))(())[[([([([[(([])()(()(())([[[]]()[]](()))([][]([][]()(()()[[([]([[][]()[][]][](([][])()))[[]([])]()()[])]()()[]()(((()))[(([()()]))[()]])]())()([][()](())()(())())()[[()(([[()(([()]()(()[])[]))([])(([[[(())()()[([[]])][()]][[][()]]][][]]))]]([()([([]([()])())])])([]))[[]])]()][][])[[][]]([]((()([][[(())[[((()))([])](([([[](()()[][])])]([][])))(()[([[][]][][][])[((([([[]])])[]))]()((([[[][]()]])))][])][]([[]])(()[])[][([])[]]][](()([])()([]))()])()()))[[]]))()))[]][([](()()[]()[(([(())()][]))[[](())[[[()][]()](()[(())(([]))])([])(())()][((([[]])))(())()([][()]()()[][[]]([[[]]])(())[]([([][()[(([[[((()([([]()[]())])[][[]][][])[])]][]](()(([[](())][[()]([]())]())[]()[]))[()[]])[[]](((()))))([])[((()[])())]]][]([[[][(([()()[]()]))]]]([])))([((()))([[][[]]()])[([])[[(())[]]([[]])]()]])][([][])]((()))[[][]])[][])([[()([(((()[])()))[]]([(()[[[]()]][][])](()[(([(())()()[()([[[()()()][]][]([])])((()))[()][]]]))][][[(()[[]([[(([[(()[])(([[[][[]([()[()]]([()]))([][([])])][]]])[][()[[]]()][])[]()[]]](()[[]]))([]())[][()])](([[()()]])[])])])[(())[[()()][([[]])[(((()))[[(()())[]]])][][]]][[([[[[]]]])]]]]][[]((()()[])())[[][]]])))()]](()(([([][])()]))))]][]])(())([]))()]][()][()]())][])]())][[[[[]()][]]][]([]())][[]][]([])[][[()][]]]))())[])[()()][]))]][(())(()(([([[]])][(())[]])()[([][()[]()()][][()([][]((()[(())])[])()[]()[])(())])(()()((([][][(((([[[([[]([[()][]([()(()())]()[()[()]])])[[[[][(([[]]))[]]][(()())]]()]])]]][]((((((()())))[[]]((()(([][]))[](())([])()(())[][][])[]))))[[(([((())[([()])])])())]])()())[[[](())(([][])[])]]))]([]))(([(())]([])[]))[([()][[[[(([])(()))[([](())(()))[(()[][]([[(())]()]))[]]]]()]()()[[]]](([][]))[]()][()()])[((([][()()[](([[]])([()([[(()[()][[][[]]])]][]()[])[[()[][]]([])]]))()][])([][[[()[]][]][]][()])[](()((())([][]()[[[[]]([])]])[][]((()[()[()()][]()()](()))[])[][()])(())[](())[[][([])]])()))]])([])((([[()([(([([()])()]()()[([])[][()](())()([[[]][[[][][]]]])[()(()(([][])))]()])[[(()())([][][()])]][[]]([])((()[]())[])((()[][][][[(([()[[[()[[]]([()])[][][()(())]]([([])])]]]))][]])(()))[[][][(())][][]([])([])])]())()(())]()[][]])([]))())))]()))]([()()[]])]]]))[[()]]]))(((()([[[]][][()]])))[([[]])[]()([])][[[]]([((()(())))[()(([([[]])])[[]](([])))]]())()]))[([([[[]]][()])()][])][]()]][])](()()(()[((([](([[[[](())]]])))))[[](([[]()[([])][]][])(()))][][[]]()][()](()))[([])[[[]]]]([]))(([]))[[(()[])]([][])][]](()))[()([](([[]]()[]))[]()((())[[][([][][[[[]][()][]][]][()[([])]([[()[([]()[]()([]))[([[]][[]()[()]])]()]][]()])()])]][][()](())()[()([[[((([])()([])))[()]]]])][[[()[()(([])[])]]][()()[[]]()]]()))()([]()())](((((()[])()[[][]]))[])()))[[]]][()]]]()()]()[][][]([][][])()(((([]([])[]())([[()]]))(())()(([(())]()))))[])])])[][()]()]]([][()([](()([[([[]])[([])[]([()[([(([[[(([]()[()([])[]((([]()))[])]([]()([([[]][()]())])[(([(([])[]([(([]))[]])[()[]()])]))[([()][()][[]][[]()()]()[][(()()[])])]]()())))[]]]()]))[[(())][]](()([[]((())[()][[[[][[][]]](((([()][])())(()))[[[]][]][])]([][])([][])][][])([])])[])[()[[]]()][()]]()(()())[()][[([]())]])]]())][[]()]()[]([][]())[][[][]][]][([][[[[]]()()]])[]()]()])[()[][][]][]))[][([[]][][[]][][[[[()](())](([([((()(()[([]()(([][()](()()[[]]))[][](()(([(())([((((((((()[](())()[]))))))())(()))(([]([])[][]())[])([[][()()(([([(())]())]))]])[]][])])((()))))[][]))])(())[]))([])()[]][()[[[[()((()[])[])][[]()][]]((()()[[](())]))()[([[[(())[]](([]))]][][])()([])[([([])][[]][[(([][(()[])][[]][[][[[()[([([[([()]([(([]))]))[([])][][]()][]])()][])]]][]([[]])((((()()[(())]()([])))()([[]])([[]([]())()(())])[[[]](()(()[]))()]))(()[(([[]][]()))])]([]()())][])[]([]))]])]][[]][]([()()])][([])]]([])])])[][][]([[[]([([[]])][()[([()][[]])()()()]])[([[]]([()]([][[][([[[]][][]([()[[](([])()((())((()[[]][][(([[][[]([[([])]])(()()())]]))[]][]([()()[()]()]))([[]([[((()()))]([()((()))[]][][([[[]]]())])(()(()()[()]))()]([])()((([][][])[][()()(())[[][]()[[][()[(())]][]([][[]])()][]][]])()[]))()[]()(([[[(([[]])[([]())])[]]]]()))[[[[[]](()[])]]]([([])((((()))))]()[[()([][][()])][]][[([]())]])](()[][]())()[[]])[])(()[])))][]])])]][]()([][()])())[])())]]]))()]][([(((())(()())([[]])[])(()([]))(()))])])]])()]]()()[([]((([]())()[[[]]][])))]][][]))]])()[])]])(([[][()[]([])]][[([((()[([][[]()])()()])[[(())][[[]]]()[()[]]()[()[][()][[][]()((())[()])()([()][][[]()])]()()]]()())][][])][()[]()]])))()()])]]))[]([])]()[[[]]]]](([]))()[]([((()([])[][])[[]]((([[(()[][()])]]([[(())([])][][()([()([[(([]())[]())]][(())][])][[[[][[()]]()]]][([]()[(()())[(())]]()())([[[][]]])])][[][]()][[]]()(())((()))]))([[[[[][](()()([]))[](()[])[[]]]([(())])]()][]])[]))())])]][[]][](()((()))([[]])())[](()([[]()[]])[()()(([[]][])([()]))()[()]][[(())](()())])[[]]()[[](([[]()][][]))[[]((([](([])()[]))()([[[[]]]([][[([])]])()[[]][[[[[([])]]([[]([])[()[]](()[[]][])])[]]([[]()([][(())][])[]])]]][()][[()()]][][][([()][])(()([]()[])[][][()((([[[]()()[]][]])))[]()])[[][([])([()[[[([((([])([])([(())]((()[([[][][()()]])(((()([][([[[][()]]])()(())()]))[])()())][()()()()](()((([()][[](()())([][])])[][(([]([(())][])))])()))[[]])[([][[([[]])]]([(()[[]([[()()[[[]]][]([[]]())]])()[]]()([[]])(([([()])])()[]))()(([]())([[()[()]()()][](([][][[]()(())])()([]([[]]))()[]())][(())(([[([])([([([][][[]])([()])()[(()[]())()][[]()]]([()[[][[]]]])[[[]]((()))[][]]([[[([()[](([()](()[[(()())]][[([])][()()[]]]([[]])(()[[[[]]]()()])))[[]])[[][]([[()]])]()[[((([()()()[[][]]([[[[([])]][([])[]]()[[]]][][[][][[]]]([[][[][]]((()([][][]())((([(((([[]][[[](())]()]))[(())]))[()]])()()()()[](())(()))()())[[[([([[]]([][]))])[()]((())()())]]]())[[]][[]()][(())])[](([]([([()([])][])]([][][[]][])()[]()[[[]]()[]])[]))[[]]])][[([[][]([[[]][()()]])[][]])]]())[]][[]](([([()](())[][])]()[]()[([])([[][[[]((([][[[]]]()()())[[[(()(()([[[][()]]]))[()(([][][])[([([()[]])])])[][]()][()][](()[()](([])[](()))()[[[]]][[()()]])(()[()]))(())[[]]][][[]][()()]](()[[[[(()[()])[][]([[]][][]()(()([()()(([[]]))[()([][](()[]()))]][])[()][])(()((())([]()([])[[]]))))(())]]][]()()[((()))]])[()[]()]](())()()[])(([]()[]([[()]([])][][])()(()()(()([[]]([[]][()[(())([()[]])]])))))[(())([][([])])[]()(())]()))()([()])(([[](([[()][(([]()))]][()]())[[][]][][][]([[]]()())[()[()(())[]()[]([])[[()([()([])()[]])()]]]][()]([])[()]()[][(())][][()[[[()()]][[]]][[][][()]][[[([])()]()]][[]()]])[()[][()()][[((([])))[]]]]])(([[]()][([])])))[[][]()]]()]()]())])))))[([[]][[]][])]]()[([]([(([])([[]]()[[[][([()])[]]]([((([]))([]()[][(())(()([()])[](()([([[]]())][()][()]()[]()(((())[[[[][([])]]]])()[]))[])()()[[]])])([(())][[]]))()])][[[]([[]][[()([][]()[]())]]()(())([]))]]()()[])())()[(()[[]](((()[()]))(()[(()[])][[()()()][[()]]])[]))]()[]]([()[[](()[[[()[][(()[([]()[])[()[[()][[]]([][([[([[[()]([]()[])[[]()()]]])]])](()))]]]((()[][][[([][][])()][]]))[[]])]][][]]]()[])([([()])[()[]([()[[[]()]]]())[[]()]()()]](())[][])][()]()])[])[]()())()](())]](()[[[]]]([][[][]])())[][])]][(())[]([[()([[]])]][[]])]][([()]()()[[[()]]])][]([][([])(())()](([[]((([([[]])[[()[[(()([()()()([]()())]))]](())][]][][]]))())[()()()[(([([]([(()[([])()[[]]()]([[][[]]][[]([])[[]][[]]])([][([]([[[[[([][][[[](()()[]()[[]([]()[([([]()[[[[][]([])(())][()([])([()()][])]]()]())][])]((([[()]()(())])))()(([])(((([[][]])[]()[[[[]()][]()()]]()()))()[]()[([])])[[]]))][]()(([])))()()[]][]]())[[]]]]]][(((()()())()))[]][]])(([][])[](()([(())]))[[]([((()([])))][()[]][])()]))[[()[()]()]]]))][()()([()[(())]])][](([()]))()[[[[(()[[]])]]]])[])][[]])(())[[()]]([([])([(())(())]())]))][()][()][]]])[([()[][]])([(([])()[][()]([]())(()[[][][]]))])[][]](([(([([]()(([[[[[()]]][[[]][]]([((()))(()[])])]])[[]]))]()[[]]))([]()(([]))(()([]()[])()()(())))]))(([[]]))))[[()[[()[]]]][]])[([[[]]([]())])()]()[])([])][](()())[])][(())]])[]()((([[((())[()])()][([[[()()]]()()])[(())(()([][])[[]])]()()]]()))))()()][]()[](())())())][][[(()()(()))([[[[][]][(())([])]][((())[()])]])()[[[()[[]]()[]][]()]]()](()()[])(()(()([[]()[([[[([])([]())[]()]]])][]]))(()))])())]))(([[(()())[][]]])(([])[[[([][(()[[()]])[[]()]](([])[([()])[][][]([([()])][]()())][][[]]))]]((())([][]([()()[(())()[]()[[](([]()())[]()[()]())()]]()[]])[][[[]()[]]([[[]()]((([[[]]])[((()))()()][][]))][([()]([])[][][[][]])])]))]))[()][])[[[]([[[((([][])[]()[][](([])()()([]))()))[][]([])[(()[][])([(())])[](())]((()[])[])[()([])[()]]]]([[]])])](()[[]][[]][])()]())[()]])][()]]]()[[]]()])]([])(([]()[([]())][(())(([(([]))][[]]))](([]()()[(((())))[[][([(())])][[[[[[[()]][[]()[]()((())((()())))]]([()()])]][[()([]((([]([()]()[]())(([]))(()([][]())[([[]([][]((([[([])[[()()[[(())]]][[][()][]([()][])[([]([]())[])]]((([][])([[]])[]()()))]][]()]())))([([])][[[[][]([]()[[][(()[])[[][][](([]())([([[[][[]][]([[((()[])[]())(([([[[[[]([([[((()[([][])]))[[]]([])()()][()][()([][])]][[[]]()]([]([([][[()]()([[]]([][[]][][(())[[()([[([[[]]()]())[[()(()()())]]]]()()()(([]([]())))[()[]])]]])[])](()))((((((()[]))[][]()[()[][[([][])[]][(())]([](()()[]()[](((([][])())()[([([][()]()[()])][][][()[]])()]())))()())][]])([(([[]]([])))()]())))()())()()[[[[[]]]]]])))][[](([][]))(([(([])[][][[]])[]([])])(()([])([](())))())]()(()([][]))[])[(())]()()]]]([][[(((()))(())[([])]()())()][([]())][]]([(([[([])]])[()[]][((()))[[([])]]]([([])[]]))[[(([]([(())()(()([[[()]]])[])[][]](()))()[]))((()[])(()[]())[([[][][(([])(((([])([()]()()[()]([]((([]()()()[])(()[]))))([][][]())[((())[]()[])[(([[][]][([[()[[]()([])](([([][[]([])[[]]([()]())]()([]))])[])]([])([][[()[[]][[([])[][[]](()()(([])[(()())]()))]()]][()]()][])(([][]())[]()([()])(([][()]())[]()())())][[[[[[]([](()))](())()]]([])][][][(())([])][()][[[()]][[](([()(()([[]()]()([]((([][[()[]](())])[[][]])))))[(([]()[][]([[([]())][([])[][][]()]][])()([]()(()()[][])))[[[[]]()]][[()][][]()[]]([([])()][()()][])())[()()()]][]]())[])(([[]]()()[])(([([])])))(([([([][])](()))][]))[[]]([[([[](((([[][][]()]([])))))([[]]())])()(())]([()])[(())]([])]((([]())[()])([[][]](([])[()]))(([[[][][]][()[()]]]))))[()][[]][][()]](())([][([[]])[]([]((())[[][]][]))])(([]([]())(([])[])[]([])[[([][])()]][(()())])[](())[([(())])])()()]((()()))([]([()(())()([](())[[]]())[]]([[[(([()(())]))]]])))])]))[()[[][()]((()))]((([((())(()())()[][][])()][])[][()])())[]]][]]([])(()))([]))[]([])))[])]]()()()[[[]([][([])][[]])[]][[()[][]([][][[()](())][(())()()](([]()[()])[]())()[])([])[][]([])]]][])[[]]((([])))()[]][[()](([]((([()()[[][[]][]]]([][])))))[])[]][]()((()))[])]]]((())[][])[()[]][()[[]()[][(()())(([][([])()[]])(()))(([()[](()[()([([(())])[()]])[()[]]()](()))])[])()](((())([])()[]())[[()][[[[]()([[]][][[][][][[[(([()]))[]([]())][[][]][]()(()([[()]()])()[][])()(([([[]])][[(())()[()[]]]][(()[[]([([()]())]()(([]((()[]))))()[([][])](()()()[])[[()[](((([]))))(([([])[]])[])(())[()[][]]]((((([]()))))[])])])()][][][[[]()([(()(([[]])))])]])()(()))]()]])]][[]]][]])()[(())][[]]]][])[[]]())]([[]])[])])())[([[]])]]()])()][[]]()[[([[][[][][]]])[]]][[[]()]]]())(())])[])(([[[][]()[]][()]](([][(())[]]())(()())(((([][([])][[]((([()()][]))(())[])()((()[][[]((())([])())]))([[()]][])(())][()]))())))[[]]))[([])[([[]]([[]]()()))][[]]]]]((([([])]))[[[][()]([])[[][()()][[([()])]()()[]][][()](([]))[[([[[][]]])][]]]]])[]((([])()()))])([][()][[][]])()]([][])][[[]]][]()])(()([((([()])))((([((((()[[]]))))]())([[[[]()]](()[])]()[])()))])))])]())))[][[[][]][][]([()]())]()))][([])][[[([][])]]]()]]()[([([][(([[](()[])()[[()]]([])][[][]])()[[]()])()])]([])[]([()[][[]]][][])[][]()(([][])[][([[[[[][([(((())[][[[]([([]())[]][(())()][])]()()([])])([[[][[]]]])[[][[()]]])])[]][[[[]((([])))]][]]([][])[][]][]][()]][]])()]))[()[]]][()]]([()[]])(([][]))][[][()(())]()][[[([](()())[])([])]][]]()[]])(((()[]()[(([]))]((())()[[][([])()](()(([]))[[]])[([[()[[]]]]())[]()]]())))()))[]))][(()[])]]))[([[]][]())])][(()(()[]()([][])))][(()[()()(()())])]([]())()(()[])]([])[[([])]][()()][[][]]([][[()]][[]][]([][([]()[])()]((([[](()()()([[]()]([]()([])[([])([][]((([()(([][[]])()([]))[[][[[(([]()))]]]]])[][()][[][]])()))[]]()()([[][]][[()[([][()])((()[]))][()]]][])))()())[]])((([])([[()[[]]]])())[[()[[][()][]()]][]])[[][]]))))()[][][[([([(())[[]]][][])((()))]())()[()[]]]][([][])([[[]([](()))[]][]])][][[][]()(()[])(())][[[][(((())([[][][[()([])][[(())(([]()[[]]))][((())[])(((([()]()))(()[()]()([]()))()[]()([(())])[[[[[[]([]()[][([])]([])([[[]]])[]((([](([]()))([([])]((())))))))()[]]()]][()]](([])[([[][[]]])][])]()))]([]([][()]))()()()[()]]()()][([()][])((())[])]])))][(()[[][]()()][([(([][[]([[]])[()[]][[[()]][()()]]])([[][()[][[]([]([]))]]]))][[]](([](([[(())(()()[[[()]()]][])()]([]([][[]][])[[]()()])])))[[][]]))])[(([[]])([][[]]))]](()()((())(([(())]))[])[])[[]]()]()]()()[][[(([()])([[]()[]]([][]))[]((()[[]])))](())]([[][]([]()[()])])[(())]([])[][[]][][][()([])([][()((([()])())[(()([[([[][()[]]()[[()][]()[][][]][[]][]][](([[]][]([]([](([]())))()))[])[])()]()](()))()([[]])()([])[])[[]]])](([[[]([[[]()]][[][]][()()(([[]()[][]()])[][]()[])[]][[][]()])]()(())()]))([()]))()]([][][[]()])()[][]()[[()][]]()(([]())[]()())[[(([()[][](()((())[([])()][][[]])(()[][])[](([()]())()((()([][]))[()()][]([]()))()[[[]()[()][[[]]]][[][]]()]))]))()([(()[])])()]()[]()][()][()[[]]][[([([])][])]][][][]([((([([])[][()]])()())())[]])[][[[]()][]](()[])((([]()())[[]]()([])))()[]([])()([]())([]((([]))))()()[]()[(()[][()])[()()]][([[]][[][]])[][[]()]](())[[]([(())([])](()()[])[[(())[]()]])][][()][((()[()]()))[][(()[[]([](()()))[]])[]([])([])[()()[]()[[[]]]]](([]()))][][[[]][(()[()])()][[()]()[][]]]([][(())([])()[]])[]([][([[[]]][(([(()())(()[][()])]()()[[]])())])])[]()[](())()(([]()((([])[[[[][[[[()()][][()[[()[()]]][(([])([((([]())))])([])())][[([()]([]())[])()]()()()()()[[()()()([])]]]][]](()([[]((()))[]([[]([(([]))()]()(())([(([])())])()())])([[[]][]()])([([])])])())][()[([]()()(()[][][]))()][](((()()))([[][[]]]([[]([]([[]]()([][[([])][]]()[])))])(())[()])[(([])([]()()))([()](())())][([]())](()))[]]]]]])()[])[([[()]][]([]()))()]))[[(()()([])(((()))(([][])))())]][[(()[]()())[][]()()]()](([]))(()[][(())]()()([[()]])()((()([[[[]()]]][]))))((([(([[]]([])())[])]))())()[[][()[][]()[([]()[[([[]])(())()]([]((([[](([[]]))()[[(())[[[[]]]()][()()[()()]()()](([([]())[(()[][[[]]]()())]][])()[[([](([[][]][[]]))()[](([])))[([])[()[()[]()()]()][[[][()]]]([[[][(()(()[](()[]())())[[()()()(()(()[]))]]((([()])(([])))(()[])[(([]()))]())()[]())()]()]](([()[[(([])[()[]][][]()(()))()(([])(())[][])][]][]]))[((()(())())())])([])][]][][[]]])[][][()[[()]]]()][[[][[()()]()[]()()[]([](())([()[]([])[]()[]])[()])[[](())([])()]]]]](((())[([])()]))]))[[()]]))[()]]())][[]][[][[]]([([[(())([])][[()[([()[][][]]())()[[[([(())])[]]]][()][][][]][[]]]]])])([([[][]][])()[[(())][]]])()]()]()()([()[()[()((()[]()))][(())]]((([[()[]][]()][()[[([]()[()[()]])]][([][([[[]()[(()[]()([()](())[[(()[][[]])()[]([[]()][(([]()))][[]](()))[([](()((([[([][])(())]])([]()))[]))[()][])()]]]))(()[][])]]])()])]([[[][][]][[]]][()])[][[]]])))[][][()]][[()]()][([(())][[[([[[()[]]][]][[]][])[()[]]]]((((()([])[][](()))([()][][]()))(())[()[[](([()[(()[(())([](((()()[((()[]))]))))]())]][][]()[][[]])([()[[]]][[]])[()[[(([(()()(((()[(([][[]([]([])(()))])())]))(()))[()])])[()([()]())[(([(([(([[[(([[]()]))[]]()][()][]]))]))([])()])((())[[]][(([]))([])[[]()[[]]][[(()[[]])]]()()](([][]))[[]](([()()]))([([[([]()([]([(()[])()]))(()))[][[[((([])))][][]][()]][]][](([]([[([](()[]()[])((()())))([])]()([])])())()[])]())])[][[[()([([()])[]])][()]]()])()([][]))][][]()()[]])()]()([])(()()[[[]]])]]()[[([[][][][[][[]](())((()[(([[]()]()([]([()][[[[](([])(()))]]][]))))[]()()(())[()[]([[[]]])([])([]())]()[()([[[][([[[(())()(([])(()))(())]]])(())]()]])]][](([])[][(((((((([][((()()()(([])()(([](([([[[[][]([])()(([((([()]([]()())[[][]])[][[]]))]([][])[(())[]]))]()[[][]]([])[()]][]])])[[][([[]])([][[[]][([[]([])()[[]]])[()[[]]]()][[][]()()()]])[]]][[[[[]][[[]([][()((([[]][()]([[][(())[()(()[()])]][]()])([][[]()()[[](())]()()[()]][])()()()[]())[()][]()))((()[]()))])][((())[])[[]()[](())[]]]]]()]]()([][([])[]])([()([]((())(()[[[]]])))][[](())](()[]))[[([][])()]()]((())([[]()()(()[[]][()][[[][[]]]()])][([(()[()]())])([()[()([][])[][[(()[])[(()()())[]][[[[[[()()()]](())(((()))(()[][()([](([()(())[()]][([()[[]]]([])([]())[][](((([[]([()])()][][][][][])))[()([[()]])(([])[])][]([[()]()]))(()([])))[]]())))[[][][[][](())]]][][[]][]()))()()()][[[]([[([][])](())([](()(()))[])[[()[]]()(())][]])]]][(()(([][[[[[[[]]((())([(([[[()]][[]]]))([()])()])([()]))[](([]())[([([()[()((([[]][])(())))][[()[()()()[][([[]([()[(()[[]][[((()[]))]])[]]([]()())])[]])]()]]]]([[[[()()]]]][]()()[]))])])][][[][(()((()[()])[[][(())[]][]()][(())])[[[[][][[[]][][[]]()()][][]()]]])[(([]()[]([[]]))()[][(())[[]]]())]]](())[[()[]][]]([[]])]](()([]()[()()[()[(([])([][]))()]]()]([[()(())][(())[[()]][][]]])[][[][()][[]]]))]()([(()(()))[([()[([]())]])[[()[][]]()[[][[()]]]]([[[[]]]][()([[[()][[]]]()]()[])()[()[][[][(([()[(([]))[][]][((())(([](()[([])[([()][()][]()([[]]))()]([[]][])[][[][[[]](([((()[][([](()))]([()]([((())[][([[][[[([((()))[[][]]([()[][][(())()[]][[][]]](()()(([([]())[[][(()())[]]]])[[]((([]))(()(([]())[]()[])([]([]))))[[]]](())[])([[][[[(()()([])([]))]()]]](()))[([]())](([(())()[[([([()])]([()[]]))]](((([][(()()([]))])))[])][([])][()()]))()[[()[()[]]](()()[])([[]()[([([[[[]()()[]][][([]()()[[][[[]][()()[()[]()][()[]((([][][[[]()[(([][[]()]))]([()])]])[]))][]]]()([])])(((()))[[[((())[]()[])]]][[]])]][[]()[[]([])]]])[]])()]])])([]))]()(()[])[()]([][[]]))][]]([()][]()(()[[]]((([[()]]([()[()]([])(([][][][[](()[()()[]([()[(()[])[[]][((()(([]))[][(()[])[()][]][(())[[(())](())([[]((())()[([]()(()())[])()()])])[((([]))())[]]()]()][[]]([]([[][[]()[[]][[()]][[]][][[]][]]])[]))[]())[]()][[]][]]]()([[(()[](())[()()])[][]][]])[[]])[]]()())()((([])([[][]()([])()[()]])))[]]))])([])))()[()(([]))[[[(()[]([]))]]()(()())[]]]())((((([][()]()([[[[]][[()[]()(()())]()[()()[][]]]()][[][][()]][]]())()[[[[][()]](([]()([()()[[([[][]][[]])()](((()(((())))[([])([][[]()[[([([()])[]][][([]())([()[(()[]([[[([[((()))()()()]])]()()[()]()]]))][][[][][]()[]]])[()[][(((((([([[]([()])()][[[][]]((()[]([]))[()()][])][[][()()[([])[]([])]]()]()()()(([(())[([[]][()()(([()])[([])][][([[[][()()]]([])]())](())([[][](([()])[]())]))])[[]()]()][]])(((([])([])([()][]))())[][[]])()))][])[()()]())[[]()[[]][](())])[[()[]()]])))]([[][][]][([][][[()()[[[]]]]])[]][])()]()()])]][((([()((()))]))([])(()())()[[]])][[[][]][](([()(())]))]([])])[()][[]()[[[[([[][]])]()]()]()]]])))]][()])([[]])[[][]([])])[[()]]((())()()[([[]])])[]((())))]][][]((([][]))[[][]()])[[]])[[]]()[])[((()[])(([([])][([(([][([[][()([]())(([[(()[()][[()[[]((([[]])[[[(()([])[[]]())](()[])([[](([]))[(([][]((())())[[[]]]([((([]))[]()[([[](()()[])()()([[]])])[]])(([[()]][])[])][][][][])))]][()]([])[(()[][[()[()()]()()]()[]([()](([(()([])(())[])])[])[[[[]((([]((()()())([])[]))[]))]()]])])])]()()]))[][]]][]])]])[()])][[()[[][()(()()(()()))([])([((())[[]])]()()([[(()())]][][])(([][()]()())))[]([])([])]](())[(())[][]]]]()(())[]][()()()])]()[()][([([][]())]())][()[()[[][()((()[[()]([][][[]()])[()]()])[[()()((()))[[()()]](()()(())[((()([[][]](())[]))()[]())]([(()[[([]([]())[(())])]])(([][]())()())])(()))()](([][()][[()](([[[([[]](([][][])[]))(()[][()]())([[[[]]()[()]()(([]))][()[](()[])][][]]())[[]][[[]()]()][[]([]()[[]])()[]()()()]]]]())[][]([[]]))(([((()))]))[[((([([]())])()()()))]](([((())()())[[][()[]]][]][[]][][()(())][([([])[[]([])([])()][(([[]][()][[()[]]][])([[[[]]][()[[(())()[]]][[(())]][()][[]]]][])())][]()()[()(([]([[]][()]([][])))[()])()([])([[[[][]([[][[(([])[[](((()))(()([])))])]([([[()][[]()()[(())][]]])[]])]])][]]((()[()]))([()()][[]])[()([](([[]((()[]((())[(([()()]))][()[()[(()())]]([])[][]]))(())()[[([])]][][])[()]])))[()()[]]()]])][]()]())][][])((()()()[[[[][[][][]]][]](())[(())]][])))])(([([]()[])[[[[]]()]][()]](([](()([[[()]]([[[[]](())]])]))[][][])[()[]()][])))())()])][(([((()()))]([])([()()]()[[[]()](())]))[](((([])[])(()()()([])[]))())()[][])()[][[][]([([]((()[()[[]][]([])][]([]([([][]((([()](((([])()(()))[[[[]][][]()[()()((([]))[][])((([][([()])])))]]][])[[][]]()[])))))(((()(()[]()[](()[[]]))()[])))])))))])]]]()]([[][]])[]]))])]([[[]([][][][[[()(()[((()))[[[()]([[([])]()[[]]][])][[()[[[]]]](([[[()]]](())[])())]]])][[(((([][]))))(())[[[()[[[[]](())]()()][]][]]]]]]()][])[]()]()](()()((()))(([()])))))()()((([[]]))[][]()())))][]([([(())])()[[][(([]())())][[[]][]()()([[[]]]([]((()))[]()[[[()([[]()()])]]][[()]()()()()])(())((((()((([]))([[[][]([([][[[()][[]]([((()((()[]))))[[([](((()))[[]([[[[[[[[][]]][][(()[([[[]][[][()[]([(())[]])]]()()[]][])[]([])(())])[]]([]((())[[]]()))[][[][(([[([[]]()[[]()])()]()()])())([])]]([]()[])[[]]()((([((()[()[]]()[[][]])()(()[()([(()[])]([()]()))([])[]]()()))()(()[]([(()([])[][](()))()])[()[]]())]()(()))))[([([[(())]])])([])]]()]]()(())[(([(([()][]))[]((([])[[](()([][()[]()]((([][([(())(())]())([[]()()])][]))[][]((()(()))[]([])[])([([])[()[][]]])[[][]])))[]]()[]))]()(([])[(())[(())]])[]()[]))]]])]))(())][]]])][()](([()([]())][]))])][])[]()]])(()))(()[]))[]))[()[]]([])[[][]](()))[[()[]]])[]([[()]])[]]](()[][()])()[()][[]()]])())(()()[]))))[][](()[((()()([][([])[()][(()([]))[()()]]([][])[[()()()]]]()([])[[[(())()([[]]())][]][]])))(()(()))]()[()()[[[([[[(())[]](())]][][])]]][([[][(([([])]))()]])[][(()(()[][[]()]))]([(())])]](()[])[]())[()[()]])]])[[]][()][][()()](([(()[](([][](()(()())[]))()[[][]][])())[(()[])]()]())(())()()[])])])(()[([])])[])))][()][[]]))([[([][[()]])[][]]])][((([])))()[]]]](())([]()[]))(([])[]([])(())())[])))[][]][[]][([([()])([[[](())((([]))[()])]][])][(()())[]])(())[([])]](())][[([()]())([])[[]([[[[[]()[()]((())[][]([[]]))][][()]([])]][]()])[[]]([[]])][[][]]]](()([()()()([[[[]]]])()]))))[()]]()][[()[]][()][[][([])[]()[][()[][]()]]]]()]]())(([]()))[(()(([])[](()([[][[]([]((([((()[]))[[([[]])()][[]()][(()[[]](()))][][][[]][]][]()([([[]()])])])))[][()()])][][]()]))[])())[[()()([]([]()[[]][])())][]][][[]]()[]]((()[[][[][[]([([]()())][[[[]]][[]()]][()])()]][((()([[]](()[[]]([[([][])()([()]())]]))))[()])][()[]()[]][[][[]]]([[[]([])](()([][])([([[]([]())])()])[()[([][[[]](([()([])]([])))]())][[][[][]]]][])[]])()]))(([()[][()(()[][[[][][()([]())]([(()((())([]([]()))[(([]([(([][])[]()[[]])[]()[[]]()()[(([][]())()())]])[](([([[][][][][][]])]))))(()([([[()[[]][](([]))()]])]()))()[[[]]()]][])[()(())][[(([][]()()(()))([])[()(())()[]])](((()[]())[[][(([([[][[]]([][][(()())])][])]([]([[]()]()([[][][[[[[]]][]]][]])))()))]]([])()))])])]()][()][[(([](([])))([][]()))([[[[([])]]]][])[([])()[]]]]())]][([]([][[]]))][[][[()()[]([[]][])()[]([[]([])])]()][]()[()[]([()(()[])])[()[]][]()[]]([((([]([[][()()]])[]))([()]))()][])])[[]][]())][[[[]()][]]([[([])()[(()[])]][[((([[()]()()[]])))[[]]]][](([[][]()]))][]([][])[([][[]])[[]][[[[(([]([[(([[([]([][[([[([](())()()[])()([()[()]]())()()(()[][()()()()(([])[([](([]()[[[[[[]][]([(())[](())[[[][[[]([])[]][]][[[]][[]([(()[[][[[(())[[]()()]]][][][([])]]][[]]([]))][](()))[]()]][]][]]])([[[](([])()())]()])]]]]([[][]])))[])]()[])([])])]])]][])()())]()]()()))]]))()(()))]]()]()]])[][]]()()([()](()(([]()(())())([][]))[[]][[](([]))][[()]][])[()()][[[()[(())[]()]]([()()])()]][])]())([[([()[](())])][](((((())(([])()(([([()])()[]()]))()[]()))[])([()](()([][]([((()[[]])())])[([[()]])]([()[[[][[][]][]](())][(()([]()[])[()])[[()]][[[]()]][(())][()()][]][]][[[][[()][]()[((([][])([]([]())))[[]()()])]()()[]][][(([()[][[(())[]()]]][])((())))][[]](()[[]]())[[[(()[[([][[[]]][([][](([][(())]())([]))[])()()[(([])())]])]([]()()[([])]([]()))])]]]()()[](([()[]]())([]())[[([](()()()(())))(()[][[][][]])]]())[[]([([][()])()()])([([])[[()(([()])[])(())][][]]])][]][[]][]][(()()())]()))[])(((()))[])))(()))])]()()()([])([][([]())([[()][[([]()(((([[][]]))()))[[][[]()[](())[[]]([[]])][][()[]()](((())(())))(())])[][([][]())][[()()][()]]()[([][][][(())()[[[]]][][]([[][]]([()][]))[(())(())([([()])[[[][]([((([][()()]))[])][][()([[[[()]]([])(([])(()))][([()[[()(([(([][()](())()(()))[])][](([]))([()])[(()[])[]([][()])[]][]))()](((())([])))[]()[[(([[](()[])]([[](([()(()((()[()])[])[[][[]]][[[](([()]()[([])]))]()[[([[][()()][]()])[]]]][(()[][]())[][[[]][()([([[][][]][])()][()((([])[[()]]()[[]((([[]([]([(((((([()([])(())])([])[]()[()()[[]][]])())([]))[]))]([[[]](())])[()]([[[][()[]]()[[]((()))[]([[]]([])[])](())[([()]([]))][]((()))](())[]()][])()))[[()](([()])([]([[]((())()(([[][([()[][[]]])[][[]]]([[]])][(()(()[([()])(([]()[])[(()[][])])][][((()[][]))](([[[(()([]()[]([]()))[([][()[(((()()()[][()][])))()]])])(())[][(())]][()]][]](()))())[([()])[][((()())()()([]))()]])())()])()([][[[[]]()[][][[()[[]]((())[[]]()[])][[(())]([]([([]([[]]))[]][()[[]]])([([]())]()())())()][[[([[[]]](([[][[]]([(([]()(((([])((())[]))([]))[(()[])][()()][]))[(()([])([]())[()])]())()][()])]())))([()]())]]][][[(()(()(((()())())([()[[]]][]())[])))[]]]][]]()()][]))(()))()()[][[]]][]()[])))]][[][[[[[[][()()]](()())]][((()([[]()[][]]()))[][()()[]][[(([[()]([][([[[]()[]]])()()[]()])][()]))[([()()][[]()()([()])()[]][])[[[[]()(()[]([([]([])[])([])([]([][([()[()()][]()[[]]()])((([[][[][[]]]([[(()[][([()([[()()][]()[([()[]])[]]])[][[((([])))([][[[[([([][([][()])])])[]()[]()]](([[]])[(([[]]()(([(([[()[]]]([([[][()[]]]([()()]()[][]()))([[()][[([])][()[[([]()[()[]][]())]]]]()](())())[([]())][]][])(())([()][(())])[]))]))[([][[]][])]))([[]([])])[()()][[[](([][([[([](()))[[[[]([[]](((([(()()([[[[[[()(())(())((([])[][[[[]]]]([]()((((())[])()())()))([([][])[]])(([][])()([]())()[]))[]())]]([[[]]])[[[[[][]]()]([[[]][[[]][[]]]()[[]][()]][()])()[]([()])[[]()()[]()[[()](())([[(())()]])[[[(()())](()()())[][[([])]([()()([])])][[[]]][[]]][()[(()[()])()((()(((([]))[])))()[]()[()()()])(()()())]]]]]]]()]]]][[()[([])]([()(())][[[(())[()([]([]([][([()[[[[]]][(((([((([(())[]]([])([])[[[[()()]][(())[()()]]]()])()()[][][()][[]])(()[][()]))][][[[][[][()]()[]((([[](())][][])(([]))()[(()())]()[])())[]]]([[]][()]([])())][]()))[](((()[])[]([()([][[]][[[()]](()[])])])[]))))]][][([][()[]]())]](()))()](()())(([[]([((()))](()[(())[()][]()[]((([]))[([][][]()())[[][]]])][][[[][]][([[]()()()[]])][]][][((([]))[()])]))]()[])())))()(([])()))[[[]([[[]]([][()[][[[][[][([])][]]]([[]][[(())]][][])[]([])]][][[(([([](()[[][[[[]()([])[()]]]]]()))([[]((([][])))()[([]())()][()[()]]]())[(()[](([[]()])[([[[][]]](()))()[([()([((()))[[()]][()[[](((()[][[([]()())[[([])(())]]][]])))][[([()[[]]][][[]()][[][([](()))]])[]]][][]](([((()([()][(())]([][[]([]()[[[]]])[]][])()())[][])[]([[[[([])]()]()((())(()[]([])())())](([[]([([[]()])][]([[[(()[])()]][(()())[(([[]][])([]))][([])]][][[[]]]([][()[]][])[]])[][()]()([[]]))([](())((((([])[]))[])))[[]()]]))(([()])((([]()))))()[]][()]([])))]))[[()][]([(()(([][[]][](())(())(()()))))[([([](([]))[[][((())[([()](()[[[[(())[][[]][][[]]((()))]]]])[])][[()]])()[]][]])()[]()[]])[]]])][()]])()])]]([])[][(([[]((([[((([[[]()[([][[]])(([]()((([])()[]([([[(())]])][[][]([([][])[([[]][[]]())][((()())[[][[]]]([[]()][()[]]))(())[][][][]]([][][][((([([(((()))(()))((())[][[]]()[])]()[]())]()([]())))(([[]([][[]])()(())[]()[][[[]()()([()([(([[][][[[]][](()(())[]()[][]([]()))]])([](())[()]()))])()[]([][]()(()())[[]])])]]()]([]()[])))()())[][()(([]))[]]]()[[][]])([()([[()]][[]][])][]())()])[()([([[]]([][([])])[](()[[]](([()]))[]()[])[[]()[][[][][(((()[()[([()[[(())[]]][]]())]]()[[()]]))[][[][()]]([]([]())))[]][][[[]([()])[[((([()])([()]()))()())]]]]]]()[[][]][[][][]()[((())[][(([([[[[([((())[])()[[][[(([]()))[]][]]]()][([])]([])[[[]][]()[]])](())]()]][]([(()[]()()[()][]([[]()]))[[]][(([]))[]][([[[(([(([]([][][]((()[][])([]))[]()()[[][]]())))([][](())[][])()]([(()([[]](((())))()))(([(()[()[]([])]()[]()[[][]])]((([]())[])[[]()[[]][([])[[[]]()]]]([](([[]][]([[([()])([([()][][][][]())()((())())[][((([])[]([]))([][()]))()([][[]((()))][])](((([])))(()([()](([()])[]())))()[[][[]]()[[]]][](()()([][()([])[[()]]()][[]])[][(()[([]([]())[](()))[()[()]]()[(()[]())]])[]])())])[]]][(([]))](()))))()[[(())([[[[[][()(())]]([])[((()[]((([](()()[[](()(([][[]()((()[][][[]])((([])())))][])(()([][()[()[[]][][][]]]([()]())))()))][()()][])))[[][][][()(((()[()[(())()][]])[](()))())][]][()[]])))]()((()[]))[]([([[]][([([])([]())][])[[()(([]()()()()[[]])[])()[][]]][(()[])]]()())]())][]([])()]()[]()]([()()]))()[()()()][][][]()]](([[]]))())())))])())[](((([])[[[][]]()][])[()(([[(())][()]()[[[()([])()]]([([]()[([()][[][][[][]]])()])[]][])]]()))()[[(()[[[][]()]][[[[]()[]]]])][()](([])[])]()()])()[]))[[][][][[[]][()][][]]][]()(([][([[[[(([]))][([])]]][]][([(())[][()]()])(())][]())[[]]]([])(()))([[]])[])]][]])(([])[(([[]()[]]))(([()()()()]))()(())[]]())([[[]([[][]]()([]))]])([[]]([(())()]))]]))]((()[[[]]][])())[[()[[[[]]]]]])([[[]][[][]([[]()()]())[()]]]))()])]([(())]()[])][](()()()[[]()[][]]((([][][][][()[([((([[()[]]]))()[()][])(([])([[([([][[]]([()()])[[][]])])([])([]()())][][([]([()()(()[][]((())((()))))([]())[]])[][[](())[]()][[[]()([[]][(([[]]([]([[[[]()]][[]](()[])]))))([][]([]())[(()[])][[]])(([([([])]([][[[][[[]]]]][()][()()])([][]()))]([()][])([]))())][]()[]()[[()[()]]])]][()[([][[]])]([[[([]([])[])()](()[()[[]][]([][])([([()()(()[])][]())()]())([]([])[(()[[([[]])]][](())[])[[([](([[]][[()][]][])(()()[[]]()[])))[][]]()]])[]]())[()[]([([([[]])[()]]())])](())][[()[]([])][([[]][])(([]))[[][]][](([([][[[[]]]][])])[])[][](())()[[([](([])[])())[]][]]][[][[[](([][()]()()))([()])([])]([()()[[()][][]]])(())()][]([][[]([](()[][])(()[((()))]())()((([()])(([()(())[]])[[]()]()))))[[][[()]([[()][[[()()((()))((()(())())[]((([[][()]])())))]][[][][][[]([])[][]][[[[][][[[]]]]]][([](()())[](())((((())[]))()([]()))((()(())))[([][](()))])][][]][][]([[[]]])]](([][][]))())]][]([(())]((()()[]())[])([()])((((([()]()[([(())][(()[])()])][[]]))[]))[][]))((((([])()[][][]))(()[([]()()[])([])]([]))(()))([()])[[[[([(())[([[[]()()]]([]))[]]]([][]()()()))[[]]]]](())]((())[]())[])[]])([])]][[()()[][]([])[]][]][]])])]()()[((([][[([()][()])]()][[][[([])]()[]]()()(((()[([][])]((())())[])([]()[]))[](([])[]())[((([])))[]((())[])[(())]][])(([(([[[[]]]](()[](()))[()((())([[([[]]()[[]])([[([()]([[[]][]([[[[](()[([((()[]([])()[[()]()]))[([][])()]()()[]])[[]()()]])][[]]][()]()])[]])())[]([][]([([([[]][])[()([(()()[])][])[]()][]])[()[[]][[]]]((([])[()]))[[[([]()[([])])][[][([(()())([][([(()[])])[[][(())][][]()(()())]][()])[()([[()(()(()))]()])()]]()[])]()()][([([][][])])()]]]])[]((()(())[[[()]]]))[])[()[()]][[()([[]])[]()]]()]])(()(()))]](()))[[([])([])]])()])([]()))()[[[]]](([])[()][])][][]([[[[]]]])))])))]((())())()()]))][](([])[[[]]]([([]()[[()[()]]]())()])))][]][(()[()()])[]][[]()([])])))([()][])[()]))](([()[]])[()()]))[]][]()])))))]([]())]]()[])[([[][[][()][][[[][[][][](()[])][()][][]()][]][][]]])()])[])(((((([[([()[]([[([][()]())[]](()([])[([][[]])()][])])[][]]((()[][])([()]([])[])))[[](()((([[()([(((()((())))[](([])[][[][]][])())(([([])](())([[((()(())))[(([]([[(())[]]]()()[[]()[([])()]])))]]([]([])[])]()[()][()])(()[][][][]([]())())())((())))()((()[][])[(()[])]()(((()()()(([([])([])[[[][()()](([([[][][][][][()[][([((()())(([])))])[][]]]])])[])]()]])([([])]))([][](([[([()])[]]])([()]))[(([((([][[]]))([]))][])[])]))))))()])]][][([[()]])](()(([]))[])))))[()]]][[]]]([()[][[[](([])[[()[()(([(())(())])((((([()])()[]((([[(()())[([]([][]))]]])[])(()(([])))())))))([][](([]))))[()[]]()]()]])(([][()](((()[[()[[][][]]()](()([]))[()(()[])]()])[])[])[]())[[[]]()][])[]([(([])())][][])[]()()(())]]([])[]]))[[][][]]((([][][]))()))(((()()()())(([[[][[[((([[]]))(()()))]]]()]]()())([]()))))()(((([[]()])))()[([][[]([()[]])[(()([()[[[][()()]]([][()([[()([])(()[])()[[][[[((([[([]())[()]]])))]]([()[][]][()[()]])][][]()](()())]])((([[]])([][((([()][])[]([])))(()[])[]()]))((())))][])]()[]][(())[[]]])[()()()])()]])]))[()])()))][[][][[]([])][]]]())))[()()]])[[][]][()[()]()(())((()))[]])(([])([()[]][])[()])()][[([][])()[()[][]([][])[]]](()([([][])[]]))]()))()()[[][]]]]))()[[(())([()])[][()[][]][][]((([(([]))]))(()))]]((())())(()())]()])])][[]()(((()([[]()()[](()[]((()()())[]))](([[]](()[])[[([[][[]]])[[]][[]()]]([])([[()[]()]])]())())))()))]]]([[(()(())()[](([()](())([])()(([()([(())[([][()])((()([])()[]()))]][([[]])([[[([])([])]()]()])]()())(()(([[([(())][[[][(())[[()()()[()[][][()]]]()]()([[[][()[]]]])]]])(()[()])[](([(())()]()([()[[()]([])]][()[]]([([[()][[()]](()[]())])([]())]))()(())[])[()][[[([[]])]]][()()([])][[][(())][][]][]([(())][(()[]([([][][()])[(())]()])[()])]))[]][](((([]([[]][]())[]))[]))[]()[](()()[])][()([[]])[()][](()()())[][][]()[][]])))[]]))()([(())(([(([])(([((()))])[][[](())][])()(())[])(([]))])([])[[]])[(())]()()]()[()([[][]()])])[]())())[[][[[([([[]])][])[[()][]][](()([[]]()(()))[[[]]][][[]()[[[[[][((())[[[]][[[([])()[]][()([])([[([]()[[]])](()[])])][()()]][[[]]()]()((()))][]()[[][[[[][[]([]()([[]()]())([()](()[]))[])]][[]()]()([[()([]())([([[]]([()()()[[]()]][]))()[(((([()[[]]()()[([]([][]()[]))[]][[[]]]][[]]))[[(()[[][[[[[]][[()(())[([][[]([()([][][]([]))])()][]())]]]((())((())[()[]])[([()])[[]([])]()][[]()[((((()())[()(()[(()())[]]()[][[[]()]])]([[]])[][((([()]((([(([[([[([][]([])())]()()]([([])[()](())()])())[]][]])[])()[]][])[()(([]))]([()]))([][[[()][][([][()])]][[([([([]()()((((()))[()[()[((()((()))))]]][])))])[[]]()])([])()[[(()([[][[]][((()[]))()][][]]((([(()[][])[]])[][[]])[([][()])])())[]())[[][[[[]][()]]]()][([])]]]()]]]()()([[]([()()])][])(())())[])[])(())))(()[][])[][[]][]]([])))[][[()[]]]([])([]()))()]]((()))[][()[]([]([][][()]))()](())(()((())[(())()[][()]][[()[()]][[][]()](()[((([])())())([(())][]()[]()[(())][()[]])][](()))[][([])]()[]()][()][](((())()())())[][])())([(()()(()))][]()()())[[(()(()()[[([[()][]()[]][[][][]])]]))(()(()[()([][][[[[()](())]]])((([]([])[[]])()([([](()[]())[[()]([]([([])(())]())[])])[]])((([()()()])()([()[()[([[()[()]()[(()[][[]]())]([])]]())[([])]]][([]([]()))](([](([]()))))])[][()][])[][[]][([([]())[([][[]()][])]][](()))])[](()[]))())(([([(())[()]])(([[()()]([([()])][()])(([[][()]([][][])]))][][])[])[]][]))][[]()][]))[[[[()][]()[()]([()][(()(([()]([(([(([][[]])())])())((([(())]))[[]][(([([[](([[()](([])[])[](([[]]([[()()]()])[[[(()[[]()()(([[[]]][]()))(())]()(())[()][])()([])()][[[][]][([[[][]]()])]]([[]])][([()]())[]]]))[]])(()[][]))])][()]()))])[[]()]([])]))))[][(()())]])]][]]]])()[()](())[]]][([([])()][(()([([(())])(()[])[](()[]())][[][[](())()]()]))[]])]()()]][(([][()(([][((()))[][]])[[]([()(())])[[()(([[]])((())))([[]]([((()([][[]])[]([[]][[[(())][]][]([])[]]()((([((([[]])(()[]))())((()[]()))()])()))(()[()([()][[([[[][([()[][()()()]])([[]])]][]()[]]())]([(([[[[]][[([]([])[[][]])(())[[()](()()(()))]()]()]]]))[[]]])()(()())]([]))])))([](([([]())]([])((((()(()())))()[[([])]]))[])()))[]((([][[]]()))))[((([((()))(([((()([])(([[[]]([][]([[[[][][[(([])[([(()(((([][[][([])[[[[[]]()]][(()())()[][[[[]][]][]()]((()[]))()()([]())]]]])))([[[][(())(()[]()[][([[([]())[]()][][[]()((((([()[]])))))][()]])(()(()))[][]])]]])[[]()])[]([]))])((()))()])[[]]]]][()]()()[()]]()[[[][[([])([[][()][]])][]()()]()]](())][[][]])[(())]([()()[][]][([()([[]])((()[][([][[]][])]([])()))][])][()])[][[]][[()][[[[][[[[[]][[()]]]()[]()][[]]()]]][][[[]][]]]]()()([]))[][([(()[[[]]()](())()[][(())[][[][]]()])][[[]([])][[[]]]])]()])()[][()])))](()([])[([[()(([()])([]))]][])])()[[][]([][])]()))][])[]([]))())[(())]()[([[([()])]]((())[]))[]()]()][]()]))][()]]]([]((())[()[]])())([[]][])(([]))([[[()[]]()](([[(()[()][[]])][]]([]))[[(((())))[(([()][[]])([]))]()[()]()([[]()][]()[((([][](([([[()]](([][[]()()]((()[])([(((()(([[]]())))))[((()(([[]])[[][]()][][[]])()[()()()[]])[])[]]]))()([((()))][][[]][][](([[]][][(())()]([([][][()])[]]())()()())[([][()])[]][]())))))])([(([[]]))[[][()([[()[[]()]]])[]][[]]]])[[()[[]]][[]]])([[[(([]))[]][()[([(()(([]()()[]([]))()()))])[][[[[][()()[[()][[[]]]()[]]]][[](()(())[])([][])]][][[[(([[]([[]])][[[]()(([])[[]]()[])[]()()()]]())[][]()(([()])[([[]]()[](()(([([[()()([[]])]])[]]))[]))]()))][]]]]([(())[]()([][[[[()[][()]()]()]()()]])[[][]]][]())]]]][])[[]([[(())()]])[[]]]())))])[()[]()]]])]))(())()])[][][(([[[]]]())[])])][(((()()[[[]([()])()()([])]()]([][()[()()][]][([([])[]])([][(())([()[]([()[]])])])])([])[[]])[()[[[[][][]]()[()[()()[()()[()]]]]]()[]()]()[[[[][()][]()([])()]()]([]()((([]())())))[][()[([])[(())[([[()[[[([][])()[[[]][]]][[]]([]()([([[[()]]([[]([])()][()(())[([][()([()]())])[[][][[]([[]])[[[][]]]([]([([][[()][]])[[()[[]]([])]]]()(()()))[[]])[]]]][][[()][()[(())]]]]([](()())))[[]]][(())]([])[])])[[(())()[((())()([])([[]]))]()([][][[]][()](())[[]])[[([])]]()()]][[]])]()][][][()[][]]]])][[]][[][[[][][]][(())](([[]][]))[]]]]][]]()[]]])[])])]]))][[]][]])]()][])]()]][[[((())[][()]()([])[[[[()()]]][()]])]]]])[]]][[]([[]()])()[]([[]()])]()(()())][[][]][[[]]()][]]()[]]](()))[[(()[[]])([])](()[]())][([])][][()]][()[]]()[]]]])]])]]()()])][()(()[()([])[([()])[][]]()[[]]([[][][]()[[]]])]([]())())]](()))()()([([]([(([]()()()()))][][])()[[](([])[(([]))[](())([()][[[]]])[[]][(())]][])()()()[[][[]][][[][[[]()]]]]()(())[][[]([][()])]]())][]()()((([])()))))[][]([][()[([[]][[(()[])[(())]([([[[]]])])]()][()[]()][])([]()()[][(())[]]()[[]](()(([[][()(()[(([])()[()][])()()([])[]])][([])][(()[[[]]()])]])))((()()[]([()[][]][(())]))()))((()))]])([])]([][])()()()[][][]()[(())])[[][]])())[]))()[]([[[[][[([([[]()(()[](([()]))())][[()][[[]()[[]]([])()[[]]]]]((()()([]))))([])])]][()([[]])]][][]][]][()])(()()[][]())]([[][([([])]()[[(((()))[])[]()[][]][[[()][[()]]]()[][]](([]([])))()][][][])[]]]())[]]](([])[][()])([()][]()(()[]()()))()[][]([])]])[][()][(()([()]([([])])([])))([()[]][([][((())())])([[](()[[]][[]])[](()([])())([[]])()(()[]())])()])]()[()[]]])()[][])[([()](()))([](([([[](())]((())([[]()])))[[()]][[[]][[][][]((()))]]()]([](([[()]]))[])(([[(((()))()([]()))]()[((([[][]](([]()(()()[]()[([()]())()()[][][((((([]())()[]([()](()))))(()([]([()(()()[()])(()([]))]())))()()))()]]((([]([](())))[][()])(()(())))[()][](([][]))))[[[()[([][[]])]][]]])(([])[])[][][][[][((()))((()[]([]())([][([][[[]][([]([()()]))]]()[][])[()()[(([(())])[()()][])][]][[[(([][(()(())([][[]])[])([[]][](((()()))[[[[]]]]()))])()(([[()][]]((()(([][]()()[]))()[[]([]([[()[]][]][()()]()))])))[][])[()])[()()]()]]()][]][()])[()()[(())]]))[[][()]]]()([])]))[])]])([])))([[][()[[[]][][([][(()[]())()])()[][[][()[[()[[[[()]][()()][[]]]()()[]][[]]()[([])([[]])([[]()()][[()[](((())))]])()((()[([][()[]](()[[[(()[])[(([(()[])]())()[])()]]]()][])[(())])[([])]][()()]))()][[[]]()[][]][]]]]]]]((()()[()][])[()]([[[[()[()()()]][]()[[]][]]][][]]))][[][]]]()[])))[][]]][([(([([(([([(([]))()]([(([[()()((()))]()])[][]([(())([])][]([])()))()])([[]][([][[]([]()(()[]([[]]())()())()[]([([()[][]]())])[])][([()([()[]([])])([[]([()[[[]]]])][][])()[[]]((()))[[[]]]()[([([[]])[[[()]]][]][()([](()[]()[[[(((()(((([()](()[(()([[()(([()][[([](([[][[()()]]()[][][]][])[][[]]()()())([][])()[][])]()()[(([()([])]))([([]())[]]()([[()[]][]][([]()())]([])(()[[]][(())[]])[]()[][][()]))((([]([]([](()))))[])[][]()())[]()]][[]()])()[((()[[]()]))[()][][([][[](([][[]][]()([])))][[]()(([[[]]])()([[][]][()]()))])([[[[()]]]()[()[([]())()][][][(())()[[]][][()()[[]([((([[](([][[()]])[[]])()()[()[]]]))()[]((()([]))))])()[]][[]]]][]][]]()(()[][]((((()[()()][](())(([[()]([]()())()[]()[]][])(([([[](())()[][[()][]()[(()[[]()[[]][[[([()([([])])(([]))(())])[]]([[][[](())[[][([][]([][([])]()([])[()][]))]][(())]((()()))[[]]]]([()[]]([([[()]][][][[(())([](())[][[([])]()[()[]]])(())([])[](([[[()()][[][()()]()]()]]()([[()]()])[])())]])])))](())]]([])[(())]([[]([[(([[][][()]])([]))]])][[][(([][]))[(([[]((((()))[]())[])([[](())])]([](([]))))()())]][]]))]]](()))()](([])([(())]())[][[][(())]]([[[][]][[([])][()[][[]][]][]]])(()))))))(()(()))())))[][[]])[])((())[[]](())(()()[(())]))[]([[][[()()[()]()]]([()][([][[()]][])[[([[]][][(())])][[]]]]()[][])[[]]([[](([[()]()]([([][[][]])[[[][[[]([])]][][[]]]]]([[][()][]])([[()]][[][()([[([[]][()(()[](()[[[]]](()((())[[[][()]][()()[]]]()[[[]][()[[[]][]][](([[]()([[()([]())][]][](([](()[]()[]())))())][]))([[]])]]))[][])([([([()([]([()[]][[(()())]()][]))()][])[]([])][[([])]][[[]]][[][(()[[[]]])]](())(([]))[()[]()[()]])[((([[[]]]))(()))]][])([])(())()(()[][][]))([()]())])[]()[([][[([]([[([[[()]]])[()]]])[])]](([[]][])()(()(([]))))[(([[][[[]]]()()[([[]])[]][(([[()((([[[]([]([(()[[()]])]((())[])()[[[[]()()()[[][[()]()([]()([[(()[]())[]][]][[]()]()[]))](()[]((([]))[([][])([([[[]()]])[[[[([])[]()()[]][]]]]])])[([[]]((([[][][][[()((())()[(([[][]][[][]])()[(([[(([]([])[](()[[]([[([((()()))]([[]])[[()]])[()()][]][]](()))][])[[][]]))]])[][]()[[[]()()]])[]])]([][]))]([][])]](())()[([][(((())[[]]()(())([()[()]([])])()()))[]])][(())]()))[()()[]][][()]([[]])([()([()])]))[[]])()()()[([][])([[]])]])]]]][[]])[])[]][]])()([])([[(((())()([(()()[][[()]()])(()([()(()())()])(())[])[[]][]])))]][]))[[]][])][]]))][]][]))](()([[]][][[[[[]][[[[][]()[]()][][]]]][][][(([([])]))[()[]][[[]]]]([])()]()]))()())]][]])[]()(())]()[[[]()[[][[[]][]([(())])([]()([()])(()))(())()]([])[([()[((([][])([()[[((()[]()())([])[][[]]()[[([[]](([]([(([])[[]])[[][()(()(()))]]](([]()[])(([()]()))[()[]][])))))]](()[]))()][]](([]())[[[]]])](([([[][]][])])(([])[([][][])(([[[[((()()[]()))[]]]]])[])([(())]([()[]]))]))(()[[(())()][]()]([]))))[](())(()[]))][[]()(([][])[[]])]()])]]][[[][]](([](())))()][[]]][[[][([()])][]]()]]()))))()])()[]][][][[]][[([[][]([][([])]()()[])])]][])]]())]][(([()()[]((())())[]()[]][[][(()(()[()()]))[[([[]]()[][]())][][([[([[[]()]]()[]([([])()][]))[[](())]][()([][][][()][][()[]([])()]([])([[][]])[]()[(()([[]([])][])()[(([]([][]))([[()]]([[()]][]))[])][])[[()((([[][()]])[[[]]])[])[]]][()]]())()]][])()]][][][[]()][]][[[[]()([][[][(()[()][[[]()][()[[()][[][([](((([][(())]))[([][])])))]]]]()][(())[[]]][])][][()]([[[([[((([([])])[[][]([])]))]])[][([](([]([]))[][]()[][][][][([((([])[][]))()()](()))])[(())])]]]])])()[][((()[]))]]()(()[])]([])([])]()][[]][()]([([(())(()())[([])[][((()([])))]]][][()((()()())())])[[[][([([([[[][]]])[[()[[()(()[[[]]])]()]]]][[][](())()][(([()][]([()])))])]([][(()[([][][])])[](()())((([([[[][([([])])([([(())])](()([]()()))([]))(([])()()[][(())][([])()][[]]())][]]])])))()]))]][[][[]([[()]])[]]]]])[]))[()(([[]]))()][]((()[[](()[[([()](()[])[]([()()([[((([()][[]]()()(()()[[[[]][()]][()()]()[]()()()]())))(()[([[[]]()[][](())()][[]()])()])()[][])([[((()))]()][])][]]()[()][]()[(()[]([()()()])[[]])][])][()[]]))]()([])])(()())[](())][[[]][()]])(([]))([([()([(([[]]))(()[[]][[]])])()])]))])[[][][]([[]([()[([][][[][]])()[[]][][]]])][[()]])(()[[]]([[()([]()(()))[]][[[[]]]()()[]]()([])][[[]()()([[][[]]])()[[]]]])[])])])))())[[(()[]())]([()][][])])())))]]]()(())))][])]][][[]][]())[()()[](())]])]()[][][[()][()]([(())])(())][][][]))])[[]][][[]])](([]))())])[])][()()](([([])]))()([(()(()))[]])[])[][()[]]]()]]([])[])]()(())[][[]]][])]][][[(([[]])[]()[]([()]()(()))[])[[]([[([])]])(())()[](()(([[][][]([])])[()])[()[[][][[]][[(((())((())([]))((()(([()()()(()[[[]]()]([])[]([()[]]))])[([])])))))]()[]]](([()(()[[](([()[]](()(()()())([]()(([((()))[[([]()())[]]]]())[](([])[]([]([()])[[]])([[]])()))[]))[[[]]]()))()][[]((()))(())()])(()[][((([]))()[])[]()[()](())])([()]())][[[]]]()))((()))[([()])]])[()(()[()])[]]]][()()[]][](())]][][])()])][()](([]))[]([])])[]])()())())]))[][[]]][[[][()]]()]))]]]][(((([[([])]][]))()[][]())([](([[][[]]])))[[]]()[[[]()[[]](()()((([()])))()(()))[[[][()(([()]))[]]]]]][([[][[](())([])()]])(()()((([]))))]())((([][]))[][][]()())][]()][]])]([])()(()[])[]]]][][()]([])[]()))())([][()[][[([()([[[][]([[][](()(())[()([[]](([][])([[][[]]])))[(()[[]][()])[]][][[[()][]]]([[]()][[(())][]]((()([]())(([(([]))()][([[()]]()[]())[[]][([][[][]])]]))[][]())(([[][[]()()][]]))))([(([[]()(()())[[]]][][])()(([[][[]]]()[][][((())()[([()([][]())])]([])[()])]((()[()[]][[(()())]()()()]([]))()))[()]))][][[()](())()])][([])[]][])([((()[]())[]())[]]([[[]][[[()[][]]()()()(([]))([[[][][]]])()]](([][()][()]))]))[]])]])])(((([[[]]])[[](()[[]()][(())([][(([]()([[][][]()()]))[()](()([[]((())[[[()()[]]([]()([(([()]))]))]])])[[]()]))()][])((([[[[[][()[()][[]([()[[[[]][[([(()[][()(())[]])[([][])][()(()[][])]])()()()]()]]([])[]()]][])()[]([([([][[]])])()()][()])]([((([[]]()))()[[](([[[]]][[([][()](([][(([][[][]])()([[[[()][()[[[]()]][()]]((([([][][()])](())[()])()[])[[][]])(())[]](()[()[()][]][]()[])()](([](())))][([([]())])]()(([((((())[]())[])[[()()]])][])[()])))[][[[][]]]])))]])()[])][(([()()[([](()([()[]()])([](()([[][()]])[])[][])(())(()[()[]])())[[[]][[][[]]](()[([])()[]]()[[]])[[]]])]])[](()))(())]()[()()])([[(([[][([(())])]]))]])[]]([](())))]]()][()[]()[]()[[]([[(())]])]][([[]([][()])])([])]]])([])[][([])[[][]]([])]())([()])[()[]][]([([[((()[]))()(()[]([()()[()]])())[()()[][()()([])]]([()[]]()()()(((([]())[(())])(()[(())[]]([[]])[[()]][])(()(())[]()))[]([[([([()()])[]])[[[()]]]()]])[[]]([(())[]][[]((()([])()[]()()((([]()[])()))()[()[()]]))(())[][[][()]](([[]]()))])[])[])]([()])]([]))[(())([[()]][([])][()[()]])(([[[()(())][]][[([[]][])]]])())[[][[]]]()[([((([]))())](([](()))([[([][][[([])()([])][()]]())()]])))[]]]]))([])[[()[][()([[[]]()]([()()][[([])]((())([][]))]()))]()[()]][()[]]]()[[]][]][[]([])]([])())]()[()])[]([()[([])]][[()()()]]))[]([][]()[]([()][()()([[]])[]]))[])][[]][[(())]]([[]]([[(()[(()[[]])]()[]()[()(()[(([]()[()[]()[]([]())[]])())])(())()])[]()()(([[]][([][[]][(((()[])()[])[])[[()]]])([])()[()([]())[[[(([][]()([])[])[((())[]()())[]][[]([[]])()][()((([()]()()()))([[()]])())][()][()]([[]]([]([[][()]][([()][][][])]([(([()[]][](()()()))()[[](())])][()()])((()[]([([])()[](())(([[][[[]]()]]()))()[]][][[][][[]][()]])([([](([]([])[[()][(((()[]()))([]))[]([])[(())()()]][()([[]][[][]()[]()[]])]()][[]([]()[])[](((())[]()[(()()()()(()[]()[]((()([[][[[()]]]()]([[]])())))()))])[[][]])()[()]()[()]])))()][])([])()[])())[(()[(([]))([[([])[([])[]()[[[]((())())(([])[()()])((())[])(([]()))]]()]]]([()][[]][()[[[]]]])([]()))()[[[]]]])])))()[()][([]())([])](((())))[])][(())[][()(()()())]((()[()][]))][([()])((()[])[[]])[][]()[]([[()]])]]()][(([](())[](([]))[])[([()[]][]()[])()(()(([()()(())][[[]]][()]))[(([])([([])]))(()((())[[()[]()()]([[]()][()()])()]([])(())))])])]]]((()[][])()()[]()()[][[()[]]]))[[[[((()))[[]([]())(()()[(([[[()]]]))[][[][[](()())()]([[]][]()(()()([[[([](())[]()[[()]])][[][]](())]]()(([][[()[[]]]](()[(()())]))))))]()()][[[]([[](())[]()][])()[()]]]()[])[]]]]]])([])([()[](([])(()))])[]]([])[[]]]))][][[[]][][[[]]]([[[[[[]]]]()[[()][[[[]]]]]]])[()](()[])[[[[]()][][[[([(()[[[]()]()[[]][()]])]())[[][()]()[(()[])([])[][[((()))[]()]](([[]([()[]([])][])]())[][[([()[][()]([()]()([([()(())](()()(([])))[])[[()]]])[(()([()]))()][[]][])])()[[[][[][[]][]([[]])[([()([]([()]()(([(())()[()][[(())](([]()[()()()([[]])()][(([[][([(([])[([]())[]](([()[]]()[()()](()())))[([()[[](())]()])[()(())[[][][[[]]]]]](()[[]](([][]())))[]())][[]]([()]([[][()()]()[[[[]()][[()]]()]([[]][][])[]]](()[([()(([()()[[][[[]]](((()))()[[(()())]])][][()]]))[[[][]]]]([([[]()[([])()]])[(([()(([[[]]]()(()))[][][]((()))([]()[(()([]()))()])[[()][]])[]][][]))]][]))()([]((()[[(())]])[[[][()[]()]]]))(([][()]))]([()()]())()))())())([])()][][([][]())(([()[[()]][([[][[]]][[(())(()[([][]([([][[][][((([])))()]()()]()())]([[[([])()]]([])]()())[][]))()])()(([][]))[][]]])(())()[[[([[]])[[()]()](([()[[]][(()[[]()])]]((()))))((()()))((()([](([]))[[][[]]][([()][]([[[]]([[[[()()[()][][()]([(()[]([]([([[][](()(()()([][([([])[()((([])[](((()[])))()))()[]]([[()]][([])[[][](()[])([[]()])]])()[]()]())])))[]()([])([][[([[[([])[][][[()]()()]]]()])][[]()[[[]][]]](([]))])]()[])])[]()[]))][[][[][([[[]]()])[]()[][][][]]][[]]()][])]][()[][]]][]])]()()()))[]][])()[[][[][](()[])()]][][()][][][([])]())(())()([([([[[(())]([()][()((()[[][([][]()[[]][]()())]([[()([[]([])][()][()])[((()[])[])][]][][]((())[])])]())([])()([][])(([])))[](([])[]([()])[[()()]])[]()[(())[]([([])(()[()([()][])()()[]][[[]][(([()()]()((())([]))(()))[])()]][])][[()]])]]()()(()()))()](([((([()]))[](((()[(())])()))([])[]([[[][[([[][]([])])]]()]()[[]()[](()[]())()(()[])[][]([])]][([[([[]])]([])])[][][]()()[((()()[[]]))]]([])))]))[]])](()))()])[[][][([][])]]())()((()()())())]][]([][])]][(([][([])[(([([()()])([])[[([[]([])(())[][()][[][[]](())[]]()]([]((()[([()])[(()((()()[])))]()([([(()([](())))])])(()([()][()]))]))[]()))[]]([()])]]))()[[]()]()(())]()]))[(([[]])()())]]()()[[[()[]([[][[([[]](()))()()[]]]])[][[][]([]([(()[()()()((()))]()[])[]][]()(())))][[][]()(())][]][[([()][[][]])]][([()()])([](([(()()[])[(()[(()[()][][[]]()())[]])]([][[(()[])()]][[[()]][]()])()[]()])([](()[[]])[[[((()([(([([()()]())][][()[[][]()[]]()(([[]])((()[]()(())[[([])([(()[]())[]])[[]()[([])[([([()][()()][])](()()[])((([[][[][[[]()][([]())[](()())[]][[]]]]]())))[][[[([])[]([[]]()[]()()[([()])])[][](([]))[[]]]((([[]]([])()[([]()()([]((()))()[()()][[][()(([(())[]]))[[[]]]]]))]([()])))(()((())[])))[([[[](()()[]([])[((())())([][][()()()([(()(([[((())())]])(())))])[]])[[[][]()]][][[[[]]][()[[][()[]]((()[]([])[([]())]))][()(()[[[(([[()]][(()[])]([](()))((([]())[[][][[([([([][[]][])])])]]()[[[[(())]]]()[[([([()]()())([])][](([([[()[]]][[([[]]())[][([[]])[][[][(()[])[[]][]][]]]([])]])](()()))))[([])]([])]()][]]]([()[[]]()(([[()][(())()]((())[])])[[()]][[[()([(([()]))[[()]]][((([[[]()]])[()]))])[]()]][]][[[]][[]([])[]]])[[]]][][]()([]([[(((([()]()([[[()]][]][[()]()]))))(()([])))][[[[[(())]](())]]]])))[()])[]))(([][()])[(((()())[]))()]))((([][])[])[][])]]]())](([]))]()]((()))()]())()()]()([([()[([][([[[([](((()(()())())([]))([])[((()[()](()()))(())())()][]([]()[][][[]]([()[][(())([[]])[[()]][]()()]][([()[[]()[[]]]][][])()(([]))][[][]()]([[([[()[([[()]])[]]()]][])()([[[()][][]][]][])()[((([][([[[]()([][[]][]([()[]][()()()([[((()))(([()()]()))([][])()]])[()][]]())[]()()([]()[][(()(()())([[()]])[()])[[]]()(()([[]((()))()]()(([[]][()])[]()())))])(())[([([])])[]](([][[]][[[()[][]()(())[]]][]()[[]((())[[[[]]][(([]([]())[()([()])[[[]()()()[][[([()[]])[([])([][]())[[]][]]()](([[[]]](([[]()[((())()([](()(()[])()[[]]))([][()[[][]]][[]()])())]()][]))))([][])]]()([([[[()[[[[]]]](())[][[]]][[[[][[]][()([][()([])])]()[]([])()()]]]]])(()[][][]([((((())[])[])())()]()(()[])))]())]][]([()][[()](()[((())[][()])])]([[[][(([][()([(([])())]())()((()()()[][[([[]([])])([[](([(()[([](()))[]][()]()[])][])()[][][]())])[][()]]]))[](()[]())]))([[]])]]()])()())()))]()[]()(())](())(([])[[()(([])([]))]((([][])))]))]][[[([[][]]())]]])([]())[]))()]()[][][[()]]][[[[([([[(([[[]]([][[()][][[]([]()())()][]])]()())([]()))]][()])[[]([(([]([(())][](([[][[]]][][[([])][]([[]()](([](()((()))(()))()[])))]))[()])()([(())()[][[[](()(([[(([([[]])])[([]())])()[((()))[]]]([(()())])](())[[]]()))()[[([]([[][]]()((([])([]))(())([(([])()[[[[]()([][])([([])])]]]())[(())()]]))()[[()[][]]]()()()()[[()][]([])([][([][]())([])])]())())]()]()())]]])))])]])]]]()])(((())[]))[]]([]([][[][()(([])[][])]]))([[][]])()))()[()([()][[([])]])((()[])[[[][[((((()))([()][][()]([[[[]][][]][()]]))))[([])(())[[((()[(([(()[]())(())()[()[[()[]][[]]()[]([(([(([]))[()[]([()[([])()()[[[()()(())()([[[]()]])]()]([][])]]])]])[(([()]))])][])]]])[][()()[()][[[[(())][([])]([][()])]]]]()[[][()[][][][()[]([()])]()]])()])[][][[()[(())[([])]][[]][][()[][[[]]]]][[[]]][[[([([(())])]([])(()))][][][]()[][]()([[()]])](()())([()])]()][()()]())][(())][][]](()[[[()]][()][]()([[]]()()[()(((()[(())[[[]()([[[]]][([]([]))[]](())([()()()(())()()[([]()[])[]][[([]((()())[[[][[()()[][[[]]([[[][]([()])(()())()]][][][][][][])]](()([[]][[]](()[][[(()([]([](()))(())[()[]()[(())][]]))]([])])())[[[[[[[]()(())]([])()[]([()](([](([[]]())))()[()])(([])[]()())())[[[[]()[(([(()[])[][][][][](()())][]))([()](()))[(()[[]])]()](()[()[]])]]]([()][[[][[]][]]([]([])([[[[(([])[[](())()])[(())][[]]]((([]([[()()]]()()))()(()[[]]([][](((()[(()(()((())[([[[][]]]([][]))])[()][[()]]([()[]()()[[]]][[][]((()([[[([()[]][])][[]([([])][()]())](())]])))()]))[])([])])([[]()]))[])([](()[][[]]))))())())]([]()[([])()])[()]]]))]())(()([])((([])))()([([()]())](()([()])((())[[][[([](())[[[]]][(())[[]]([])[()(([][(((()[()[()(([(()[([[]()()([[]](([])()[]))])]())]))]]()[[()(([[][()()[()[()()([([])[()]([][]()[[([[]([[[[(([[]][]([]))[[][[[[]]][[]]][]]()[])()[]]]]][((([()][([][[(()()[])[]()([])[([][]())()()()[]]()()[(([](())()([])))()]]][[]([])])](((()())([[[][()]](([]())[])[][]]((()))))())(()(()([([])])((()()))((()))[]()))))[[()][()]][])()[[[][()]][]]()]()[[[()]][([][()()()[]])]()(())[[]]]([()][][])([([])((()[[]]))[()[()]][]((([[[()([([()][()[()(()())]])])()]]](()()))))][][()]))])]])][])][()[[[]]](())]][([[]((()())()[][]([])[])(())[]])()]]]))][[]][()()[][]][[[()[]]()][[]][]][[][(())]]][()[[()]]])[][][]))[[][]]]()()[((())[()]()()()[[][[]][][][]][][])([])[[]]][]()[[]()][])())]])]()()]()(([])[[()][]]()[])])(())())(())()[[]]))](([])([])[][(([[]][[]])(()([][()])))][]()[[][[]]][()])[]([[][]])((())[[[[][]]([])()][]][[]([(([()]))[()()]][[]])()]([][])[][([(([])(([[([[](()[([[[[[]][][[]]]][]](()()())[][((([[]()][])()([[][]()])((()))))](((())))[[]][])][])]([]))([])]([()()])]([])[[]][][])())[()][[]][([][])(([][]))])][[]()][[[][][]([(([([([[]]()[()[(())][()()(())(([][[][(()[])([([]()[()[(((()([([()[[][]()[]([])([]())]()])])))[[[[[](()([]()()()()[])(())[]())[[[][[[[]()]()]()]()[[]]]()]][]()]]])[[((()))][([](([])))([][][[][()]()][()])]]]])()()[[]]])]])()[])()]]())])[([])]](([])([]())())[[()(([()][(()[]())]))()[([()][])([])]]]()(((()())))))])((()()))[]]()])][[[()[(([][([][]()[])]))]][[]]()]()[]()[[]((()()[()[]([]()())()()(())(())]([][[[][()([[[][()[]][]()(([][(([]))([[]])[]]([])))]()[]][])]()[()[([][][])[[]][[]()(()[][])]((([])))([[][[[]]][][[[()][[]([][()][])[()]([])]([([([[[[([])]][][]][][[][[()[][]]()[]]([][(()()([]()))])[]([[]])]([])(())]([]))()])(([][([(()(()))])]))()()[]])[()()([])][]]]](()())([]))(([]))]][(([]))]((()[])([][]))]([()])[[[]]]([([[]][])])])))]])[]]]]()][])]]][][()]()()))]([][])]][(())([[([])[]][]][([][][[[][()][[]]]([]()()[][[]()])((()(()([])))[([[][]][()()[]])]())([][(([()[()]]())[])])])])]())[][]()[()][()[][()[][[][[][[[()[([](([][([])(()[[()][]])]))[])]]]][[]()()]]]]](()()[[][][][[]][]]))()]]][][[]]()([])[])))](()[][])()()[][]([]))(())])()][()()[][]()]]]][][][([([])(())[]])[()[][(([])())]]][[][()]()(()([[]]([][()]([]))())([[]([])[]])[])(([[][[()][]][[][(([([[][[[[[()](()())()()[]][]]()][([][(()[])][][][])][]()](()())][])()])(()[[[[[]()()][]]()]][][]))()]]](()[[]])))]]())[(())][]()[][]()()])]]][()])()))()[()]()[[[()([][()][])]((([])))]]))]]()[[]][]][])])[][[([])]]]])[]])])][()(()[])][][()][]]([])])]()(()[[(())()][()()()][[[[()[[]()[[]]]][()]]][[]]]])([])]]](())[][([])][](()[[()]()([])()])]([](())))[])[[]][(([((((()([](([[(())][([])()]]))))))())]((([[]])[[][]])()())(([()]))))[]])]))[()(((())()[[[](([()]))]([])]))]])))]][()][()][[]()[([])][[([[]][[](([])[][][]())])][(([]()[]))]]]])[]()))[[]]()()]][[]]()]]))(())][[]()[]([])([][])]]()((()())[(())(([]))]([[(()()())[]]])[[][]()[([([][()])])()[]][]()])(())[()[()([(([([[[]]])]([[[]]])[([])])[[[[[]]]](()())]())])[]([])[]]]))()[](([([])(())]())()[[]][()])((([])([]()()[[[(()[])[()[][]][()][]]](())]()()))[])]))[]]])[()])))])]][([])[[()[[[[[]]][()()()[]]][]([()])][((()))](())]]]][][([])]]][][]][[][]()][][()()[(()[][][([])[()(([](()()))[(()(()[()[(([][])((([()]([]()[[[[[]]]((([]))[[]])]](()))))))]]())([]))()][])]([][(())]([()()()()][([[]](()[[(()[][])]([])()([])])()())])(()[]))[]])]])[()[([])[]([()][[()()][]][()][[[]]])()[]()[(())[]]]]]([(())]([])()([])())[]]]()]][]][]]()()]]())])[[([])][()[([](()[[]((([]([][][]))))([][])]())())[()][][][][]]([]())]][[]([]([]))[()()[]()](([])(()))([])][[]]()(()[][]([]([()()[]])(()())()(())((([][]))))[][()])[[()[[]]]((()([([])])))]([][]())[])[][]()]([]))]]][[]](()[[()([[]])[()]()([]())(())(())[([[]()])]()]]))[]]()([][]))(())([[][][[(()[()()][][][()()(()[]([[()]()][()])[])[]((()[[]](((()))[][()][[](([][])(()))][[()()(())(())[]]]))([]))]()(([]([[()[[()[][([[]])([])[]]]()[]([(()[()()][]([()[]]((()(())())[]()())()))])(([]))[()]()]()[()[[]][[]][]]()(()([[]]))]((([][[[][](()[][()[[()]()]([[]()()]([([()])[()[][]][]()[]][([()[]])(([]))[]][(())(())])()[()][[(())()]]()(([[]])[][]))])[][]]][[([([])[][[]([([()[]()()(())][(()(()[[]([[[][][[]]()[][(([]))()][()]]()([])])(())]([][[]()])[]))[]](()([])()))(()[][])()()])]]([]())[])[]([([]([](()[][[[][]]()()[][]([])][]))(()))([])])[[][]()(([(()([]([])[()])())][[[][[]([()])]]]([()][[[]][()((()()[]))]])))]([])]]()))(())(([][()]))[]()[[([()[[()]()(()[()[][]])](())[()[]][[]]])]])([(()[[]][[]])[[]][][([]([[[]]([()])]()([])))[[][]]]])])))()())[(()([([[[[[][[[()]([()((())())])()]([])()()](([](()[((()[(()[([]()[])[[]]])(([]))[]][[[]](())()()[]]))([])][](()()[[](((()()[]))[])[]]()()))[(([][[[()][]]()[]]))[]][[()[[]]]([]())([])()])[][])[[](([([()([[(()[()]((()()(()())[[](())][[[][()]][[]]])))][[]][](([])())](([]()((([[(()()(([(())][]))[])()([])[[][([]([]))]][][]]([][]())()((()))])[()]))))()[[]]((()()[]()[]))[][()([[][]([([][])])]([][[][()]])([])())([[()]])][][])])()]()))[]]]]][[()()]]])([][])[][]])(([])[]()[[[(([][[()()[()[([]([[()]()[[]]]))[]]][]()([[()[()()]]([[](())]()()[(())([][])]()(((((())(()))[]()(()()[()][()()][()]()))))([[([[(()[[[]][(([()()[([()]()[](([]([()[]][[([[[]]([])])][]([[(())()((()))[[]][][[][()]]]][()])](()(()()([]((())([(())]([[]]([[()]]()[]))[[([])()()]()])())(()()))([])()))))[]()[()]))[[]]()[]]][[]()()(())()]([()([]())([])()])()))]])[]]][][]())]][[()()]]))])(())][[()]](()[]())])[])[(([()]))][]]][[([[]])[]]]])([][((((())[[[[[]][()]][[]()]()()]](([](([[][()][]()()]))))[])))])(([[][([]()[][()()(()([][(()()[])(([]([][][[([])]]([]))())[[]([]()([]()((([]))(([])[][[]]()()(()([[]]([[]()][[]])[([()])[]]()[()])[]))()[])())())][[((([]())))[]][[]][[()][]]]()[[[]][()[][[[[]]]()[](([(())[]()]()))((([]()()))[])[]]]])([[]])][([])[]](())[()])[]([([()((()[]([[]](())[()(([[]][]())[[((()()))][[]]][[][()]([(([[[][()[[[]]]][(([[[[][()(())][]()[((()([([][()[[]]][]([()][])()[][])(()([]))](()))())[(()(([])[][()((())[(([]))](()))][])[[()[]]][])]([()])(()))()][]]]](([(())(())]()()))[]))][[][][(()()[][[]()(()())()[]][(((())[]))(([][[(()()[[([])[[[()()[]]]]]][][][])([[]][[]])][]()]))])()[]]]]][]))[]]()[])[[()((())[])()][][]]((((()([()[]]))[])))]()())()][[][()]](()))[])())[(())]])])[[(()())([([[[][()]()]()])[()[[([]([[]]([[[[[[((()))][([()[]])]][([[[][[][][(([][[][()][()[]]])[()][[()]([])][]()())[[()[][[([[[[]]()]])()]][()][[()][]((([()()()([])(([[]])[]([[]][(()()())](())[()[[]]()[(()(())([([])])())()([()]([][][()[[]]](())[]))]])[])]()))(([[]])[[()()][[][()]]])[[]])[][]([]()[[][()]])[]]](()())()()[[]()][]([])]]]]([(()[[()[[([([][])()()()[()()()([[]]())]]([[]])[()][]([()([])]((())()([](()[[[[()]]]([])[]][]()))[])[[]]))]]]])[]((([]([])[]([[[(([()()][[[[][[][()[([]()([][]))][()](([([](()[(()())(())[][[]]][])(()[()][((([[(()[][[([[]()[]])[](([][(())](()())[[]()][][]))][]][[()([()](()()())[][[()][[()()([()])]()[]()[]()[]]]()()[()])]((()()())()[])])][[]([[[()[[[][()]]]][][]]][])]]()[(()[])[[][]]]))[])]))]((()())))[])([()]([]))][][]]()[()]()[(()()(((()(()([()](()[])))()[[[]]([([]([]))([(()[[([][]([[]][()]))]])]([][]))])][[][([](()(()()[]))([]))()]][])))[]((())[])())()]()]]][([](([][()[]])(([])[])()[])[])[()()[[([])()]([[]](())()())()]]([[]])[]()()[][][][][(([[([][][()[[]((()())[[][]][])[][([[]]()[[]])()][]((((())([]())[])(([])())(()([[[]]]([([[[][]]])][[]](((()((((()(()(()(([([[]](()((())([((([()]))[[]])](([()]()()[])([])[()][()])()())[[]]())[[()()]][][][[()[]]](([(()[[[]]][()])])(([([()][((()))])])[()])))(()[[]([])()][[][]()[]()][]))])))())[]))))))[()](()()[[]])))([()(()[()])]()())(([[]()])())[([]())([])]()))))[][[[[[]]][[]]()]]()]]()(()([][[[][]]()])))([][])][[]()]([(())[[([([]([(([][()[]]))])((()[][])))]([[()[][[(()(()(()()))(())([([][[][([()[]()])][[(())[]]](()(()))(())[](()[]()[]()())])]))[]](())]]](()())([[]][]())())[])]]])()]())[]((([])))[]()[[(([[]]))[()((()(())[[](((())[]))[[([])]()]])[](()))]()]()][])()[]]]))()[]]]()[[[([])](())([[()()[[()()]()()]]]())[](())[]][]]][()])([(([[[][(())([()(())][[]])[][]]][[()][[]]()]][]))]([]([[][]([])]())())(())[]))(([()[]][])))[][[[[[((([[(()()([()][][]([()])())()(())())]]))[[]()]()[])[]]][]()][[][]]]])][])][[]()[]])(()(()()()([])))]](()())]](()[[][]])(([]))]([][][]()))(()())())[])]]]][[[()]][]][(())])]])[][[()]]])[]]])()[][]([])))]]]()(()[])][]))]()(()(()[])[[[()]][[([(()((()()(())))()([]))][[]])][]](([[[(())[([[[]]])]]]]))])()([]()([]))())[()[[][[]](([[]])(()))](([](()[()]([[]]()[[[]][]]))[()()([[[]][[()[[[[[]()[][]][](([]()())([(()[]([][])[][()])])()[])]]][[]]]]][])]()))]((()())[([])]))[]())][[]([[()[[]][]]])()]]()()[][([]())][]][](((()))[[[][[]]][][[((()))([])()]]()()()]())()]())]][][]())()([[]((()[])[(([(()()[])])[([([[()[][][]]])])()][][]([[]([[]][](()[](()[[]][[]]))[[()]()]()())])[([()])([])]()[])([[]])])](([[[]][()]]())[])[](()))[()]][])[]]()[(()[])]](())[[]([])[]][]])[[()]()]]]()()[([][]((())))]([[](()[]((([])()[[]][]))())()][]))][(())]([][])[()()]]]][()[]()][](()[([[()]([](()))])[[]()]][][()][]()[])[][]()(())(([])))]()))(([]))[]([]))[[([][])]])()[(()(((()[[]()])))()[[]]())()(())]]]]]]]])((([()])))]))[[[()]]()]))[(())[[]]()[]]()())[][[()(([][(([()(([]))([])([[[][](())(([])())()]])])[[()]()()](()[])()[])]))]][])()))(()[[]([])])][[]]()[][]()[[]][()][])[[(([])[[[]((())[[[[][(())()()]()]([])([])(())[][]()]]())][()]]([[]()]))][[]]])))[[]][][[]([[()]])]))[()][])()[(([][[]])()(()))[[([[]][][[]])[([])][[]]][]]])]))[][()[()[[]][[]]][]][[[(())]]][(([][]([][]()[])[]())[])(()()()([]))])]])([][()([([])([(([](()[])))]()[(()()[[()[[]]]][[][]][]([[[([[[(()())][]]([((()))]([]([]()(()[])[])[[][[][[[[]]()]][]][()]]))([(())][[]])[[](())[()]()(([]()((()[()[()]]([]))([()[]][[[()[[(([[][]()])[][()])[[[()][][([]()[[]()[(()([[()]]([]([])[]))(()[]))]])[][[][]][]][()[()]]()[[[]][]]][]()[[]](())([[](([[[([[](((([([])]))(()[])())())])]]((()))]()[](([[[[]]][]])())()))[()[]]])]]()([])]]]](()))[[([[]](()[]()()))[][]([(([]))(([][]()()))[][((()()())()[][]())()]]((()[]()[])))](([[][][][][(([[[[]()]]])[][]()((()[()][([[[()()([])][]]])]))[()()])]()([()(())[][]]([[()[[[()]([[()[[][()]][]]]([]([])))]([]()[[][((([[[]](())]))([]))]]([[()()()([]((())))[()[([]([]((([[]]([([][])(()[[]])]([([[]([()])][()()([[()[([[][()()([[]])]()])(()())]]][])()])[()[()()]]]([]()))(()[((([])))])))[[[]()[][[[]]]]][[[][[](()([][][]()()[]([][]))[(()[[]])[[]]][[[([][()([]([[]])[[]()](([[()]])))[]])]]])]([])]()][][[([[(([()][()])[[]][[[][([[]()[][]][][[]][][][][()])](())]])]()[[()][((())(())[]())][[]([[()]][])[]]]][])([])]][][(([](())[][]))([])[[[[()][][]]([[][][[]][]])(())][]]()]()[][]([([])(()[([][[]()][((([]([()()()[(()[[]])][]([[]]()()[(())(([()][[[[][([])()(())[]((()[][(([]))()[(([](()()[])(([]))))]]([][[]][([][])()]))([((([])[][[()]][](([]))[((([][])))]))[]][])[[((([[]()([]([]))])([])))(((()[([])[]]([[[]()]][]))[()[([]()(()()([[](()[[[]](()[[][][]][])()([([](([([]([])[[[()()[][]](([]))[([[([](())())[[[[()[][]][([](())[[][][][[]][][]([]()([][])[()()([[([([])])]()[][]]()[[]()[]][()])][])()])[[[]()()([])]]([()])]][([][])]((()()()))[[][()]]]([])]][[]]()])[]]()]([])](())()((()))(()()))()])[[]()[[()]][]])[])[()][]])])[]()[(())((())[[[]][[]]][()])]])))([()]([]))]([(()()[(()([[]])())][[[]]]()(()[()])[])])[()]()([])][()]))][([[[][[[]]]]])]])[[]]]()]()[][][]]])([]()[(()((()()[()]())))]([[]()])[[()[([])()()]]]()))])]([]()[()][[[]([([])][()][])](())])[]()()[])(())([]()))()))])()])][])))))(())[][[][(([]([](()[[([]()(([])))(()[]()[[[]][()]]())]([()]()[(((()))[()])]()[[]([])([])])[[[[([][[[]][]])[](((())[[()[]]])())[([][])[][]]]()(((([])[[(([()](([([[[]()[]]])()([][])[(([()()])[]([][[[(([()[]])[])]]]))](())][()[(([][()][()][])(([()]))()([]))[][[]]([][][])]]())()[[]]())))[(([()[()[]]([]())[]]()[](([([][](()([])(([[]]([])[([()([(((())(()(())(())[[([])]]))[][][()])[()(((())([][[]])))]]())[[][[[]()](([([()][()([(([[[([])]][][[]]])[][[()()()]])]([[[[[][][]][()()[([]()[()()]([])[(()[])])][]][]()([()([()])(())(())])([([[]([[]][[]]([][([()[][([[[]][]()])][()([(())])][]]((()(((()([[[()[[()]]]]][]([[()]]([(())][][])[()[[[[]][][[([][[[][[[]()[]]()]]]()[((()())()[(((([[[[(())][]][][()(())]][[[[(())][]]]]])))(([])))()()])])()([[[[]]]]([])[])][()[()]][][]][((([[]()])[]([[]][()])[]()[][]))(()())]](())]]([][[][][[[[[][]()]([()])[()]]][][((()))(([((())()()[(([[[]]]))[(()(()[()[[]][[]]()])[][])]])])([[[][](((([](([()(()())][][[[[]][]](([[[](())([()[[][[](()(()))]()[([][][(())[(([()][]))]])[]()][[[[]]]]([][[][]([])][](([])[])[])[[(()[])]]()][[[][](([[]][[]]))[[[]]]()]()]]())[[[]([([])[([])]][[]((()))])]](())(([][]))[][][([])[([])[]]]]()()]))])())))[][[][([()[]()])[()](()[(([])[])([]()())[()](([()[(()([()([][])]))[[][[()]([()])](())][[(()[]((([[()]]([]))[]()(([[][(())[(()(()[]))(()([()][][][]))]]])))())(([])(()[()](((()()))[]))()))[]]()]()(([][[()[]]]))]])())]())()[[][]()][[]]]][[[](()[])[()((()[]()()[]()()[()(())()])((()(()))[][]((((([])())[][[()][()[][[]][[(()()(())((())(())))]()]][[]()[]][][(())]([])]))(()))[[(([()()][]))([[][](()())])]]))[[](())()(()[()]())]([()([])[[[]([])([[[]][]])][]][[[][](())]]]())]()]][]))][]][][([[[][]]()[[]()]])][[[]()[]]([])[[()]]]))][[[][]]]()[]([([])])]]))))()[[()]()[([()][()])]]())(())[])))[[][((()))]]())][()])((([()()])[]())[([])][[]][][](([[[]((()[[]]))[]]]))[()([]())])(((()()))()[()]))]()[])[][]])][([])[(([][()]()[])([[]]))]]]]))[]][()][])])[([][][[()([][])]()(())[]]((()))([])[][])])]()[]]]()[])(()())])[]))()())()]))()))]]()()]((()((()[([])]))()(())[(())[[]([[]()])[[][()]][[([([])])[([[]((([()()()([])])()[][]))])]][][[(()[[][]()])]](([])[[[[()[()]()([()](()))]()[(())]][[]][]()](((())(())))(()[()][[]()][[][(()([])[([])])]])])]]])[])[[[]([]([]((()[]))([]))[([()[]([()()])][])(()([])[])()[(())][(())[]]])](()()[()[]()()])]))[[]][()]([]())([])([]))(()()[]([])())()][]()]]][()])()))[])[([][([])[]]()[])]]]()[]]][]]()][[]()]))[]([(([[(())]])([[][]()()[]])())()])[()[[[(()(())[])([()])]][][][]]]][()[][[(([]))[([][][])(()([([](()())((())[(())])[[][][()[][()]][()[[][(([]))[[](()()(())((([]([]))[()()(()[[]])][[]]()[][]))()[])(())]][][[()(()[])][]]]](([]([][]([(([([[[]]([])](()([])[]()([()[]])))(()[[()[[]()[]][]]])]))])()))(()))()])([[]])([[]()][()][()[]([])][[[()]]][[[]()]])[[[][([(())][[][]()]()([()])[])]]]][[[]][()[][()()]()[][()[(())([(())()[[][[](([]))[]](([[[([[((()()[]()[])())(([[][()[([(()())([(()()[][[]]([()([])[]]))[[]]])]()())](([])(([([(()()([]))()])])[]())[][]([(())]())[]([][[]]))]])()())[][[([])[]]()[]]]])]([[[[][]()()([([]([[][()[[]]][[][]]([]([[([])[[(([][]()))]](([()])[()][[[]()][[()]]()])[[()[]][]][[[]]][[]]()]][])[(())])][]))[]])]]][[]])][]]))][[()]]])[]((())(()(([[()()([[][()[[]()[[()][[[[[()]()]]()]]]]()]((([][][])([(()())])(()())()(()[[[()]]][[]()]))[([])()()])][](([])()))[[[()[()[]][]]([[]])([[]()[]])[()]][]()][()[[][]]]]([[[]](())[[[]]()]()([])][[()()[[[()([]())](([[]]))]][](([][[[]][]()]([])[()[()]])[()]())([])]][])]))([]))[][()(()())()][])]([]())[[(([]([])(())([])()))()][][[([[]([][]()[()])((()[[()]][[([[][()][]])[][[]()[][][][]]]([[()]])]())())(()[[]()])[][]()])()[]()]()[()]][]]][]]])[])((()[][[]]([])))][]]]([()](())[][])]][()]()([][()([()][[()](()[[[()[[][[]][]]][[()[][[][]()((()[[](())])()())()]]]]((())(((()(([][[]()()]([()])))()())(())(()((()))))([[[]][]])()))])])][[[([[]](()))]]]())()]([][])([])))]))()])())([](()[](([()]()[][[()]]))()[[[()(()())]]((()[]))[]()][(())][()[[[[][]]]]])[()][[[([[(()[(())][]())]])]()()]][([[]][(([]))][]([]))](()(([(((())[(([])[()((([])))][])[]][][]()[[[([[[([[[[]][[][([[]][])((([[[((()))]][(()[([])()[[([]([]))]]])((())(()((([()()])([(()())]))[][[]]))([](([]))([][]))[])[]]][()])))][]](())]])[()(())[()]]][[]]([][[[[]]]([][])[]])()()()]()]([[]])(()))][]]()][[[[]]](())[(()((()([](([]))(()[]))([][()][]()([([][])]([])[[([[](()[][])][[((()([()])))[]][][[]()[]][(()[])]][()]())()([]([[][]()][[]][[[]]()][[]()([[[([]([]))(())](())[([])]][([()])[][][[(()([(()[[(())]][()])[(())](()[][()][[]()(())])]))][](([[]()][(([])[])()[]][])[([[()]()[]][](()[])[((())()([[(())[]]])[]((())))][(()([][[[()()]]]())[]())[][]])([])()])[]]]()]()())[(([])([()][[[[[[()]](())[]]()()()]](()[[()[]]]()())][[[]][[[()[(())]]]]])(()([[]([])])))([(()()([[()[][()]]([([])][][])[(([([][]([[]])()[()])[][][]]()[]))[[()][]([[]()([((([]))[](()([])(([(()[([])]())([()])][([()])]))[])([[[()]()]][])([[]]([]([]())([([][][[](([[]])[([]([]([])))])])([[([([])()][][[]()])([]()())(()(()()(()[[]])))[]([[()][[]]])([])()()[]]()((())((()[])[]))])([[([])]])()[][()]]([][]()())))((([()])()()))[()([[][()[[()][]]]])[([(())()[()[([])]()()]]())([()][])]([][]([])[][[[]]]()(()())([]((()))()))])[])][(([])[][[[(([[][(([()[][[[](()[[[[[][()]]][[]][]][][]]()())]]][])[()])]()]))]]][[()]]())])])]()][[(())]]][([][][[][(())]])[]()([]((((([()[]]))))[])[](())((()([](([(((()[[[()]]]([()])[])()()()()[[][()]][]))(([]())([(([[()[()[]]][([](([()()()([])][(()[])[[][][]()(())[[][()]]()]][()](()[]))()([()([[[()()]]])]([](())[]))))[]](([])(()[][[][[[[()]()([][])()][]([()[]])][]]()][]))((())()()())]))])[])[]([])[[(((([]()[[[][]()]])[([]([(()[()][[][]([[()[][()[()][]]][][[]][]()(())(()[])][])][])[](([]))[]][])[(((()[()][()]([()()[]([[]()][])()()[][]])[][]([([])]))()))[][([[[(([[]]((())))()(([(()[])][[(())[]]])([])[])([[[]]]()))]]])]])[[]][[][][[[]]([])()()]]()([((()))])])[]([])(([])())))]](())()()[]()])[][()([])([[]][[()](([()[[()[]]](()([]))]()))([((()(((()[]))()([]))[[]])[][[]]())(())()][(([]))[](())[[(()([[((([])[])())([]()([]([])))[][][(((())[()[()()]]([[[][()((((()))[]())[[]])][[[][]([[([])][]])([[][[[](())(()[]([()](())[[[[[]]]()[]]()()]))][[()[()]]][()[]()]]][(((([][[]([()()])[][()[()[]]][()][]]()())))[[]][]([]()([([(([[]()()[][[]][]])(()))([()])[()]])][](())))[])()])[[]]]]]][])[[(([[[(([()[][][]])[([()])])()](()(())(()()))[([([]()())[[][[]]()[][[]([[]][])]][]])[]]()]([()[]]((([()][()[[][([()])[()][([][([])[[]]()])]](())()()]][])[][()[[]][([]([])(()))]]()((())[](()))())[]))][]([])(()(([]))()[])[[()]()()][([([(()())][[[()[[]([[]])]()()[(([(())([])][[]([])[()]][([[][][]()[([][]())]()[]])]))][]](())[]]()])([(([[]][()()]))(()[])()([]())(()[])[(([]))]([[]]())][[]])[][]()[]])]))]])[[]])(())]][]]))]()[]()[][()()]](())([]()[])[[([]())]([()[]][]([[]][(([()[([((((([][])[])(([])[[]()[][]]))))])[]][()]][]((((([[]])(())[])[])()))([()[()([[][]])]]()))(())(([()([])][][([])(()[])([()]([(()[(())()]([]))[]][]((([][[([])][[]]([([])[[]()]]()[[(([()[]])())](()[])]([]([])[][(())][()([[][](())[(([])[(())])][([]([[(()())([]([]([]((()([[][]])[([[][[]()](())()([])[]([[]][]()([]))[([([[][][]])[][][]][(([([()[[[[()()]]]()[[([][][][([][[]])]())]][]]])()()[]()[]]()))][[(([][](([][(())()]([]())())()())))][][]()])]()])])()[])[[[[()]]]])))][([()[]])()]]))[()][(()())([])][]][[]][[[(([])[]([]([([]())])((())[[[[[][(((()([])([]))[([]())[]][][][][])[[]([[(([]())[[[[]((())[])()]][]][](([]))(()))[([][()()(())[[()]]]())[[[([(([]()()))])]]([][][])(([])())][][]](()[[][]([]()[(()[][([[()[()[[[([()]((())([()((()))])(())))]((([[()][]]))[(()[])])[[]]][[][[]]][]][]()]]][((())())])[[[][][][([][])](()[])(([(()()())(([]()[][])[]((([])[])))(()[[[[]][]]()(([])()([()()][[[]()]()]()))])](()[[()[]]])[(([]([[[[[(()([[]]))[]]()([[]()][[[]([[]()([[[]([(()[]())])]][](()))[[]](()([])())])]])][()[](((())))([()[]([([(()((()[[()][()([][([([])[[]]()()()])](([[()[([([()])]()()[])]]]([])([]))()(()[][]((())))(([()[]([()][][])]))))]]))(()))]()()([[]((([()])))(([([[]])]()[]))[](()[()])()((([]()[()]())()))()]))[[]]])[[]](([][[]]())[[]])]([[]]))]]]]([[(([]([][()])[[[]][[]]()[]]()[([])[]][([])][]))]]))[])([[[[[]()[]()([[()[()()]]()])]]]]()))])([[][()](())([][])])[()]())()][]]])]((([((())()[[]]([][][()][])([](()())[]))])([()[]][][][[()()]])))[])[[]([][([[]]())]())]([])])[][([][])]][[()[(([()[][[]]](()[][[]()([()](())(()[]()))])()()((())))()[()[[][()[(()[]())]]]]())]()(())(())][][][][]]])])([()()])()()([])]()]]][]])[()])[])[]][]][][][][(())[]()]()()[]]])([()()([])[[]]])]()()[([](([]())))(()()[()[]])]()))((([]()()(([][[(()()((((())[])))()())]])()[][([[[[]]([[()]]()()())([][])]]([[[()[][[]]]]()()][][])[()()()[()[[][]]]][][[]])(()()()())]))))]()()[()[]([])[()()()[][()][]][][([][]())[()]]([[]][([])])[((()))(([[]][[()[[]]]([()[[()[()()([])]]()()(([][](())())())]][][])][]([()]([]))[[[[]]]][]()()[][][[][]])((([([([()([[]][])[(()(()(()[[]([])[[]]][()[][][(()[[(())([])][]][]([]))(()[(()[])]())]([](()([]()(([[]])))))])[]([()][])[][]))[]()()[([][][[][]])]((([([][()])]()())(([])(()))))]()](([[[][()[[()[]]]]][([[]]()[[]])[]][[][[][([[()]])]]]][[]][()[]][[]]())))[]]([([(()[[[]]](()))()()(([[]]))]([[]((([][([[[]()]()()])]([])[[()[](([]))()[()][()][()()](()([([[]][[[]((([[](()[]([])[[[[[]][()]()][]]()()[([[[([][][])()]][]]())[[]]]][()])]()()[[()()]][][()])[])[])]][])]())[])[([]([[[](()[[][]()][]()[][]()[])]]())())][](()()[([[(())]()])()][]()[[]()[[[](())[(((()[])[]))]](()[[[[[]][(((()[()])())())]]()]][]([([[()]()](([(()[[]])[]]([]()))[[]]))]))]](())(()()))[][][[][()[]]][][][]]()([[()][[[(())([])[]()[()]]]()]])()[()](()[])](([[()()]([[]][]())[]])[]())))[[]]()[()])([[]([]())[]][]())][()](([[]()[(([()()]()[]))][(())[]][[([])[(()[[[]][](([][(())][[()]])()([(([])()[([]())[[][[]]]([])()[][[()()()()[(()()())[]]][]]([[][]](([()](()((([]([]()()))[[]]))([[]()[]]))(())(()())([[][()[([(([[[([(([][[]]))[(((()))()[])]()]([][][][([()[[]](()[[][[[([()]([]))][()]](()([[[[[]]()()][[[]]]]])[[()([](((([]))))[][][])]][[][](([([()(([([[([]()[[[(())]]])]([[([])()]])])]()()[[[[[][()()()][[]([[][[]()][([])()(()([([()][[[[([][])(())[](()[[([][])()(())]()])([])][()]()]]])([])](()())))]])][]()[[([][][([(()([[()]])())[[]([]((())))]][()()[]])([][()()])[][[]]]([])[[[]()[()][()]][]][]([]))()()[]]]()[[]]]]]()](([])()())[[[]()[[][([()][])()[]]]()()[]]](())())[][])])])[])[[((([[][](()[(()([()[][]()](([()[()[[[(([]()))[[][(((([][[]()[]])[[]]))([([](([])()[]))[]])((([](([[]()(([][[[([[(()()([[][()]])[[[([[][(()([]()[()])[][[[[[[]]()[[[]]]]([()][])()]([[]]([][[(())[][[()(()())][[[[]]]()(()([][])((()[[]])(((()[[[]([([([][[()][]]()[()()]())()]()(()))][][])()([])][]][][])))(())[()]))()()[[()([([()][])]((()[]))()[(()[])][[]][[]][()[](()[[]()[]]((())([][([][])])))([[[[[]][()[]()[(()[])()]([[((()))]]())()][]()]()]])][([][[][()]]())])[(()())][][[[]]]]]](()[[()[[]]]]()[][][[]][]()[])]]()(([[]]))][])[[][[[([]()(()[[[]]()])()[[]])()]]][]])](([]()()()([[]((()(()([](([])))[])[[(([[](()([]()((())))[][])])[[(()[((()()([]))((())))][])]])]]()))[]()](())[[][[[[()]][()]]][()](([()])[[(()((([])))())[[[()()](())()[]()][][[]]]([(([[[([])(([][()()])([[]((())[()][[()[]]([])((())([]()))]())]))[]]]][()([])[]][])()[[]])()])[]]()([[[][]]([[]])][][])()([()([([()][])([()[()][[]]][][([])[()([(())]([]))()()]()(())([][[][][]()])()()])]())][][](()[][][((()[[[]()(())[[][]]]()])([]))()][[]]))()([][[][]((([][][]([((([][()][[[[][()([([[]()([][])()]())])]]()(())]()][])[]([([][])[[]()]])[[(()[[[][]]]())]([()])()]()[[[[]]([()[()([])]])[[[[(())]([[(([[[[][]][]]()]()))]][[][]]())]]][][[][[[[]]()[]]([])()([[]()])]]]()])())()[]][[][][(()[()[[[]([()()[[[]]]][[[]([])][([()][]())[()[[[[()[]]][[]][[]()]][[]]][()](([[]]))]]()(([([])()][])([]([[[][([[[]]][()[[]()][[]]])]()([[()[()]([[()]])]])]()][[([(((()())))][])([](([])))][()][[(())[()()]]]])[][()([])[][[()]([[()](())])](())][([][()][()][(((())[]))[]])]))[[]][][[]]])[]][[]]]()][])]](()()()([[[]]])[][[]]))[()[]](()([[][]]))([[]][[[][(()())]((()))]])[])[([])]))(([]([[][[]]][])))[[[()]]][[]]()[[[()()][][]([])[]]]](()[])[])[][(()[()])]]()([](((()()[()([[[[][]]][][[]]])])([][])(())))())[[[][][([])[][[]]((((())([]))[]((()([][])))([[]([]()[()])[]]())([])([[()][]][][[]])([()[]]())[(())()()]))[(()((())))][]]()[()]]])()()])))[]()][()]())[](()[])[]([])]])[[[]][(([]))([]([])()[][]()[][()])[]((())([[]]))[]]([])][][]]()]()((()))]([[()]()()]([][[[]]()])([(())()])))]()()])]]()]))()])))))[][(((([]())))())([[()]((([]()))())([()()()]())][])])]()[()][([()])]]]()]]]()[]()])()())))[]](([][](([[()]])))(([[[()]()]]))))]([]))([(())[]]()[])(())))]][()]()()[[[]]]]())]]()[[[]((([[()()[[]]()()][[]]]))()[])]][()]()[[()[()]]([[]])([[]([[[][]([][][([][[]])][()](()[[[][((()[[[[]()]]([][[]])()])[([[[()]]()]()(())())])]]][()()([])[[]][](())]([])())())]][])]([[()([]())][()()]()[[]][]][]))[]()()][])([][[([[()[()()[[]]([]())[[]]]]])]()[[[()]([[]()]()(()))]][][([]())]])][][])][]))[[][]]()]]]))][()])()([])]][]((())[])]))()))[]()]([[(())[[((()))][]]]]())[(([[[]]][]()([()])(()[[(([[](())[]]))()]][[()][]](([()[([[][[]()]])]][])[]((((([(())(()[([])])()]([])([])([(())])(()()())[[([](([((([]))(([]))[[](()[]()([[][(([()(([[()](([[]]))[]([[([()()][[([])[][[()()]][]([()[(([[]])[])][]])][](([(([[(())]([][(())]()()()[])][()])[])])[[]])])]]([]))][()]))()])[][[]])[]][(())((((()()[]()((())))[]())([][(()[(())]())]([][])[]))[[]([()][])()][[]]())[()()()]()]()][[][([((()))()]([([(((([]()[(())](()))[[()[[([()])]]]][([([[(([[()[[[[]]]()]]]))][][]]())()])()[[[]()[([])]()]([])]])[()]))])]())(()))]])()(()(())([([]()[()[[[[]()]]][([[()][[][(())]]()[]][]())[(([]((()[[][[]()][[](((([([][](()([][[][]]()()[])[([][[([])[]()]]())][()]()))((()()([[][(()())()[]]])))[[][]()]()])))([([])]())(()))[()][()]]([[[][][]][]()])([])]()[([][]((())))])([]))([()])))][(()[])()[]](())][]]()(())[][[()[]()]]())()[]()((([])))])))])]))()[])[][([])]]([][])()](([[][((()[()]))[][]([[[()]]])()[]([])]((([])))[[()()[]()[[][]]]()][]][][])[[]()][])()())[[]()((()([[]()][])([][(())]()([])[][[]])[][()[[][(([(())][([[[]][]([][[([](()))][[()[]](([(())[(())((())[](()[(()()[[[]]])]()[([][]()(([[]()()((((((()[[()[([])[]][[(())][()[[][]]]]]()((()))])[[[[]][[()][[[([][])][](())[([][()])]()]]][[]][(()()[[](([])[])]())]]([][[]])])[()]()[((()()))[]][([])]())())((([()()[[]()[(()()([()()](((())[]([[[]][]]))(())))())()](()()[[[()()][]]][[]()[()]]()[][[[]([])][()((([])[][[][][]]([[]][[]]([][])()())))[]([])()]]()(()[]))][[[()[()[]](([[([[][]]([](()()[([])()])([])()[[[[][(([]))]](()[]([([])])[][][([()])[]((([])([])[])[[(([]))]()]((()))([][[][[][()()]]]))]()()[][[]]()[(()())()]([])[])[(([[[][[[[]]()[]()()[(((((([([])[]]())())[]([([([[](((()[]))[[](()[[()]()][]())([])()])](())[([])(()[()(())]((()[])))]((()(((())))[])))])])))()((())))[[[[]]]()]([]([])[()()[[]([][][[]])[]][[]]][]()()[])())][]()[]]](([([[](()[])[]])[[]]]))]]))(())][[]][]]()[]()])[([[((()))]]((())))])]([[(()(([]()()())))][]]()())]()(()[][[([])]]))()()[()[](([])(()[[[]][[]][[([][][[[()]]](()))]][]()])(()[(([[[([[[[]((((())())[()])[])]]])(()[]()(((())))([[]()][()][()][(())(()((()))[[]()([[[]]])]()())[]][[()]([])[[]]((([()(()([()]))[[()]()((()(([(())(()[[]][()[()]])()()()]))))[]]])([])[()()][](()[])[][(((([])))[]([]))])())[()(([]([([][()((()))(())([([()])])[][]]())[[]([[([])]][[]()(([]))[][()][[][][]]])]()][((([[]([[[]]]()[()]([(([]))[[([]())([[]])(()[[[[][]][][[]()()]][]][((([])[[[()[([]([])[()[]])][([](()))[[[(((())))][][][[[]][()[][][()](([[[[[()]([])](([([()][[]][(()[[[]([]([([])([()(([()][(()[[[]([[]()(())[()][()]()])[]([[()[[]][]]])]][]()[]()(([[[]()]]()[]))(([][([][[[]]()][][]())(())(((([[()][]])[[[]]])([(()[[()]])][()[[[([[[]([](((()[()[(()[][(([([([][[][]])(()())([[][[]][[[([[()()[]]])](((()[[()[]]()][[]])[][[[]([](([[()]])()))(())()]]))][[()([])()((()))()(([]))][][[[]]]]]]()()[[[()](([([]()()[[[(()[()])[[()]](((()))[()(()[[][[][]]][[]])((([()])([[[]()]])()()))])()[]][]][[()()]()(([](()([])))(()))][[[()]](())()](()())])]((()))()))]][])]((()[[()]][(())()([[]][]()[[[](())]]([][[()]])[()])]((()(()()[]())())[(()(([[]][((([]())(())))([][[]()])([][][[(()[()[]()]((())[[]((([]))()(((())[(([][[[()]]]))])([()([[]][][[]]([][()[][([()[[()]]])]])[])])([][[][][]])([][])[[[[()][][]](([[][[([([])]())([])[]]()]]))]()])((([[][([][[[]]][])[([[()][[]]])[[][()[]]()]][[]]([[][]([])[()]])[]]][([[()][][]()()](([]([[]]))()))][][([][][][[()][([[(([((([][][]()[()[][[]]([[]([()[][((()[()[([[]])]()[()]]))]])(([]())[[[(()[])]([()]([][][[]]))]][][]()()((()())(()[[()[[(([])([])[])()[[][[([])()]]][][()()]([[[[(([()][[([]((([[()]()]())))[()[]])[]()()[]]]()))[()[[[[[(([(())[](())[([])](())][]))][[][]][(()()[([])])(()())]]([()(()())]([])()(()[])[])]()]()[()]]]]][]]()])]][]]]([([[]][]())[[[[]]]]()]())())()))][])]()[])))]))[]]])]]([[(())]]))[]()[]][]())[[](([[]]))([()()]()[[]](([]))[[[][](())([()]((([[(())]]))[]([([])[]])[]))[[[][]()][[[][([]())][]]]]]]())()][[][[()]][][][([(())[[]]])]])))]))]])[()]]())[][()](())[[]])[()([[[]]]())(([](([][][[]])[][()[]][([[]](()())[(())()[]][][()([][([[][()]][]([[[][[]]](()())][](([][][()[((([[]])()))()]])[[()()[]()]()])))](()))])]))()[[[]][][]]())()][([])])[[([][])][](([[[(())([])[()[][()[[[[]]]]]]][]][][]])[])][()][]][])()[[(())[]([()])]](())())([][]))[])])([[([][[]()]())][(())()[]][[[]]]()(([])[])]))[[]]])[[[[()]]]]]])(()[]))))][]]()(((()))))([])][()[]]([][]([][()[][([])]])[])((()(()))(([[][]][()(())[]]())))]([[[]()]([][])[]]([]()[])[((()[([([][]()()()[()]([([])()([][(())()[]][([]((([])(()[])[[][]]([[[()]([])]()[]]([([]([()()]))[]]((()))[[](()[[]](())[()][])[[()([()(([][]([])(()([()([])][]())[])[[([()[()][[()]]][])([[]])]]()[][][(((())([[](([][()][][(())[[[[]]()[([])]]()([](()))[([()][])([[]])]]])[[]])][][[]([[[]([([][][]())[(())][[]()]([[][]])[]][[()]()])[()([(([()])[])[[]](([([()([[]([])[]()()])])()([]())])())]([[()]][]())())]]([()])](([[]([][[[]]])([]()([]()))[]][()][[]([])]()()))()[][[()([])][]()][]([][[([[()([])()(([][(())[]]))()[([[[[][]]]])[]][]]]()[])][[()]]()[[][](())[[]()][]()]])[()][[][]])[]]()[[()(()()[[][()][][(())]]([()]()[])(([[[[]()([()[[[]()]()]][])[][]]]([])])[[][][]((())())[]()]()()))]])))][[]([[[](([[]])[([])([[](())])[]([])()][[[([])[[[[][[]]]()[]][[]][([[]])()][[][]][][][([([]()[]([](())(())[[]])[]()[])][(())([([][()()[]])])[()(())]([(([][()]))[][]()]()()()[[]])[[(()([]()[])[(()[]())][]([])[][[][[[()]()[()]]]])]]])](())(()((([]))[])[][[()]])]]](([])[[]])()])][]][]()[(()())][])])[][][()((([[]]))(([[[[([])]]]])[[]]()[][[]()])[]())()[]][(()[[(())[]]])]([][[]][[]](())()[[]][]()[()(())([[[]]])]))[]([[]])([(([[(((()())))(())][[]()[]]()()])()[])()](())[])[]])]()]()()()]))((())[()([]())][]))))][])[(((())[][](())[])[])()]([[()()]]()[[()([])[]()()]][[][()][[][[]][[]]]])])[[][[[()([]()[([][[]][[][[]][()](()()()([()([[(([()[[([[()(())][][()([[]([[]][()][()]()()[[[][[()()]]([[]])[][((()[]([()][])))]]()])[()[]]])[]]])[]]()[(([[[]()]][]()[])[][])]][]([](()()[])())]))][[]](()([[][[(([]))]()]()][]))][])](())[[()]][[]]))([]()[])[(([[(((()))(((()[])([[][]()](()[])[[[()][]][](([][]())[[[(())[]()](())]([[][[]()]]()()[(()[[[][]]()()])[(())[[]]]]([[()]()][((()((((()[][[()([][[[][[[]()]][]][][]])()](()[]())()([()()])[]()[]])[])))(()([]()[]))([([])[]()[]][[()[]]]([[[]()]]())([[[[]([])]]])([][])([[]]()()[][[][]][])([])[[()[]([]())([]([])[])((()[[[]]][[[][[[()(()[][[]()])]][]()]()]][]()(())))(())]]()[]()())()([][])(())(()()[()(([[[]()][[[[[]]]][]]]))()][][[[[[[]](()())]](()[][[[][[()][]][[][()][]]]()])]]())))])[[()][[]]])[][(()(()[]))][(())()]])([[]])()()[]]))[](())))[[]]][][()]]))]()()][()[[]]]([]())())])()(([])[]())([][[]])(())()()()]([([[]]([]))]())(())()]]])])]))[][]()]()())]([[]][][]((())))])()[]()[[]]()))])))[]]))([]([][[][][(([[[]]])[()])((()[[()][([(([])(([][]())())[]([])([(())[][((((()))))]]))])](()(()[[]()((((([]([](())[])(([])[(([[()]][][][]))]()[])))))([][[]()[](([[([][])[[(()[][][])[]()][[(()[])(())(()[])(((((([][])))[]([([][()([[]][][][])[]]([[][[]]]([[()[[]((([]()(([()])))))]][][]](())))[[[[()(())[]]]()][(())[()([()(([][(()([]()[](()())))])([]())[(())[()[()[]()]]])[[[[]]]][][]]()()[[()][][][]([]())()][[[[]()]]])[]]()]]()(()()[([][()]([])[][])]))])([])([(())()](())())[()()])()()[]))]]](([([]())][[][]]))][](())][][]))[()()[[][([[]][])]]([]([]))]]))]())[]())[]]))[([])()[]]]][()]())[()])]([[]](())[()])(()[((([[][[]][]][[()][([(([[(())(([[][[([()[([][[](()[[()[()[(()[])]]][[(())[([[[]()([][([()()])][[]()])[]]])]()][]]([()[[]](((((()[(()(()([()]))[](()[]))()(()[[]])[([])[([]())]()]()[()([[]()])()]])()))[(([([[[][[[()]][()[[[()][[[[]][([]())[([][])(()([])()()()((([])([][])))()[(()[()([[([])][[()][([[][([](()[]))[]](()([()[]((()))]()[([])((()))][][])[])][]())][]](())][][(())[[]](()[])])])(([[]((((())[[[[()]][]()]([()][[[()[()]]][()]]()[][]([((()()))])((())([[[][]][]]((([[()]])[([[()[]]]()()[[]]()()[[[]]][[][]][()([[]])])[][[[]()[]]][()]])))()(()[[[][[]][]]([](([((()))])[[[(([[(([]))][[[]()](())]][[][[[[]](())((()((()[]))())([][]))[][[]()[()()]]()()][([][])]]][]()))]()()](())[[(())()()]]])(((()))))[]])(())[]))[[]]]))([[()([]([])[(())](())(())[])([][])([][[()]()[]])]]))[]]))][])(([((()))]())()()()[[()[[()([])([[[[]]]()][[]])]][([][]())[()()()()]]]])][[]][]]()]()]]([([[()[[()]([(())]([[[[]]()][[()[()][()[][[()()(()()[])][[][[](())[(())[(())[]][]]]]]]]]([])[[[](([[]]())[])]](([])[][[[]]])[[()()([])]]]([[([[[]](()[][([[]])[]([([])])]()())][])[[]]]][]))[[]][])(([]([])()()))(([])((())()()[]))][[]][[]]]])][])[[[[[]][][[][]]()()()()][([[]()])([])()([()]()[][])[[()]]]([[[][()][]([(())[](()(([()][(()[])([])]()([][[[([()[[]()](())[[([[[((([[][]]))[[][()[()[(()[([])])[](((()))[[]][((())()(())())])]]]()[][]()()])[][(([([[]])[](())[()[()]]()[[([()][()])][([()[([[]])]()()][[][([])]()()[]](()([(()[[]][()])])[]))()]]])[])([])[][][]([[][]])]()]()(([[((()(()[]((()))))[]())[]]]()))][([[[]()]])()()[()]()]()]([([([[()]])()()][[(([[[[]][]]][][[]()])[()][])()]][(([])(()))([])([][])][[][(())][][]][()])])[])]]])()]]]))))])[](())()[[][(())[][]()[]][]]]]()[()[]])][][[]]()([])([([])][[]])[]]()][((()())(()())(())[[]()][]()[][[]()[]()]()[()]())[][]][[[(()[])][[()[]()()]][]()]]()[]((())([[]][([[[]([[]](([[][]])[])[])]([][()()([][(([[][]]))][])()()])][(())])[]()()]))]]]()[]])((())[])[]](())()()[([[][]]((()[[()]()[]]))[])]([]([][])[][()[[[(()([][()[()]](()[((())[])[([(([]([[]()][([[]])[()()][[()]]([][])])))[](([([])]())[[][()()[[]()([()(()[()])])(()[[[[]]](([]()[[]]()))])]]([((([]()))())])[]][])])()]()]()()[])[])([(([](()[]())[]))][]))]]]][][][()()[]]())))()(())][][][]))()([[[[()([([]([[][()()[](())[]((([])()[[]]()(([[](()[][[[[]][(())]]([[][[]][]])[]])([])[[[[]()]]]]))())([]))]](())())()[([()[]])[[(()[][][([]())]())[]][[]]]()[]([([[]()])[[][]]])()[]][])()(()())([[](([()]()))()])(([[]]))]())]]([()[[[[][()]()[]]]](((((()[][()][])[])())[][][])((([][([[]()(())[][][][][][([[()]][]([[()[][]]])()[[[]][((()()))()[()(())]()()]])]])][]))))][][[[[[]]][]([([()])([])[]][])]][])]([()([([](()()))])[()[]]])])()()()])[()]]([])((()())[])[]()())][])]()[]()])([([][()])([]())])]([()])]]))]]))])]])))]))]))]])])]))]]]))]]]]]]]]))])]]]))])))])))]]))]]]))]))])]]]])))))])))]))]]))]])])]))]]]))]))))))))])]))])]]]]))))]))]))))]])))))])))]))]])])])))))]))])]]))]])))))]]))])))))]])]]]))])])])]])]]))])])] ()[][][[]](()[([[[()[][]]]][])[][[]][]][(((()()()))([][([()][()][[]])][][][[]]()[()][][[]](())[](([][][[[]]](((([(())][])([()])))[])))[]()[]()([]))[[[([(([()[]()])()[]()[(()([]())([()](()()))[])[[][()()]][]][(()[])])])]()([[[()([[]])]()]])]()]([])[])[][(())]](()([]))()[][])[()[][[](([[[](()[[[(()([([[]])]))][[[()][]]]([](())())[([])(())[]]][[[]](()(()))]()][])(())()]]()))()][][(()()[])[[()]]([(())()[]])](()([[()][][[][][]]])[()]()([()()]()(([][()]()(()[][()])))[[]][[]]([(([][]))]())([(())(())]()[([[][][([][([][])][()(())][])(()()())]([])[[([[](([(([([])[]()]))[]][[](())]))[()]][])[][[]]]]]()[])]())))([]([[([][[(([()[]]))]()])[[]][()][]][][[][([()])()]()(())][[][]]])[([[[[]()]()]()[[]([])([([][[]()])])[()([[[]]([(())])[]([(()(())[[([[()]()])]])])])]]])])])()()[([][()[[([][][])]][(([]))[]]])][]([][])[](())()([()])[]()[][][][][[[(([[]][]))[[[][[][[[[]]](()([[]]))(())[[(())]()]]][([[]])]]][([]())()]]()]][()][((([])())(()())())()][[]][[(()[])]()[]][([][()()[](()[([])()])(()[])[(()[()[(((()))())((()))[]][]]([(())([()]())[()]]))()]()]([]))]()([[[([])[]()((()(()()[])[()])()())()]()]][[]])[][[[()[[]]((([(([][()()][]()[[()]]())[])()]((()))(()))))][(()[][])[[][[(()[])][[][[[][()]]]]((()()))()(((([[][()()]()[][]]))[])[])[([[()]]())[]]()[(())]([])([][()([([[[][[]()[]][]]])][[][()]])][([([()[()]])()()][])(()())(())([][][][])])[][]]()][][]()[[][][[][]]][][[]()(([[](()[[]]((([[][]]()))))[]][])[()])()[(((()[]([[([[[[][[]]]()[[(([]([][][([[][[][()(()[()((())[])([[(())][[[][][]]]][])(())[][]])([[][][([[]])]()])][[()()]()]]])[]()[(((())[]([[]])))][[][](([]()[]))()((([[([])]](([()[[()(((())()()[][][[][]]()(())[[()([]([()]))()]([(()()[])][])](([][]()()([]([](())))))[][](())))[()[](()())[]]][[]]()]()])[([])]))(([[]])[])[[()((([][])()))(()[[][()[[[(()[[]])[(()[[[[([])([]())](()(((((((()([]())))[][[[]]]()[[]])[()])[]))))([])](([[()[][]][][][[(([]()()[[[((()))]]])(()[]))]()()()]]())[[][([])()]()[([[]][[[][()]]])((([[((([()]))(()([()])))()]([[]()][])][([[()[]]()][[][([])]][][])[()]]([](())([][][])[][[]([()()[[()]([[[(())]]](()())()[[()()()[[]([(())])([[]()][[]])(([]))]]])]()((([([()[]([][])][])]))[(()[()]([(()[])])())]()([][]))([()([((([()()(()([((()))]()()(())))()]))[])])()])[]])[]]([])[][()]()([()[[][[]]]])[[()]([][()])])[()((([[][]()[][[[](())]()[[()][[()(()(([])[[]()])(([]()()()[]))([([[]][]())]([])[][]((((())))))(()[()[][[]()]([])[()][]()[](([]))][[]()()])())]()()][][]]()][[[]]]])[])()[])]([[[()[()]][]()]]((())[]))[])(([][(((([([[[()]]][(())])][[(()())]()]))([[]((([])(()())[([[]([])[[[[]([])]]([[()[()]](()())()])](())])()[[[[]][[]]]][([])]](((()([]()))())[[]]))([()()]())[])]))[])[[]()()]][[[]([])]()]))[[]])[[][]]())]])[[[]]](())[[()((())[][]()((()))())[([[]])[][()()(())]][]]()](()()())[[](())(()[])]][][()](())()()[[[][]][]][([])([[[()[](([[]])[()[]()]([[][]()[[[]]((())[[]]()())(())]()[]((())([[[]](((()))(())[()[()([][[(()[][][][])[()]]()]([]))[()[]()](())[][]](([]()))])([])])((()([[[()][]()()()]]([][[((())(((()[])[()[][([])((()[[]]))([[()]])]][[[]]][][[]((()[([(([])(()))]([])())()][(())][][[]]))[](())]))[[][]()[][](([][])[()()[()](([][]))][])]([]))((())[()][()]([]))[]]][]))[][]))([]))(()[][(((([()])((()())(()([(([()]([[]]))(()))()]))[[[]()(()(([[[(([](([()[((([[()][]()[]][()[()]]()[][()])([()]))([]))([()([([][[]()])][])[(())]((()[[][[]][[]]([]())()])(()))][(()()()()()[[]])[][]]([][]([]))())]([[(([]([[]][]()[[([(())()[][[][][()]](()[[]([])])]())[]]])[([]())][[]([((([[[[[]]()]([[]()[()][()][[()]([[]])][]])]][[]])[()]()()()([([[][]][])]()[()[]][[(()[])][[[]]()[[[]([]())]]][[]]([])]()())))])()()][]()))[]][]])]([][]))((([])[[[]][[([][])]]])))))()()(([](([[]])[[]]))[][])([()])[]]][()([])([[][]][])]()(())][]))([(((()(([[][]]([([])]))())([])[]))())()()][()][]))]][])[[]()[[[[[[[]()(()[([[()()][()(([][([[[][[][[][([[][]])(()[][][()()[]()])()()][()]]()()()]][([[]])(()([[[([](()[[]((([]([[]])))[([])]())([(()())[()]])[()(()(([[]]())[](([()()[]]))[[([]([[[(([])(((([([[[[]()][[[](()[]([](()[]))[][[[]()]()[][][([])]](()[]())[])][[[()[]()[]][]][[]]([()])]([])]()((()))()]])])[()]()))[]))()][](()[()[[[[([()]())]([(()())([])()[]])][]()[[[[]()]()](()()[[]()[](())[[()]]()][()])]([[]](())())]()[()()]]([][(()[])[[[]]]]([()[[]][[]]([])[]]))](()))]]([()[]()(([]([])))][]()(())))([([[[]][()()()][]([])][])()]))][()()]])[])](([]([](()())[[]])[()](((([[[()][]]])[(([])())]))())[][[[]]][]())[](([][]))())[][]()]([]()[])))]]])[])([](()((([]())))([[[([])]]][])[[]([][()()[[()[()](())[([()])]](((())))]()()()()]()[])()([][[((())[([()])[][[]]])[]([()]([[][[]]]))[[](()([][][][[][]][])((([])[]()[])([]()()()()[][([[]][])])))[[[([[[[()(())()[[][]]]((([([([(())[]][()[()]]([[[][[[]][[()[]]]]]])())][]())[]]))())[]]](())[]])]]([])]]]])])[[([[(()())]()[()]][]()([()[]][[]]([]))[])([[[]((()(())))()]()][[[]]()([])(()()[()])()()()[([])]])[]]()([])([[()()[()](()((())([[([()([([()])[[([])]([[[[[][]()]]()]])]((())[](([()()[]()[][[[]][()([[][](((([][[][[]][([([()()((()))])])(())]])[][[((()([([[][[[()]]][]][(()()()[][])([()])])([[]][][()()][]([])()()[][()[]()])])))]]()()[[[[()[]()((()))()[][[[][[[()()]()[([()][])][()[[][()(([]))]](()(([()][[[([[[]]()][][[([])[]([]([[[[][()[[[([])(())]]()][[[][[]]]()((()[[[[][()[[]]()]]]])(()[])[])(())](([]))][()()]][]]]))]])]()()]]))[])[[[][[]]((()))()([])][]][]([[]])]]([])]]][][(((([]())[]())))((()()([])))][([]()[])()[(())[]][]]]]]])())((())[][]()([[()([])[[]]][]()])()))]())()]][()()]]))())[()]]()[]()[][[()]](()))()()[([]([]))]]([](()[][()])[([()])][[]()((()))][]()[]))]][][][()[([()()[([])][[([][[]](()([]))()[][([]([]([(()(((()()[])[]()))())](()[][])))[][])[()]()][])]][][]][()])[[([](()))]()(())()[()]]]](([][])[])[[]([](([[[]][]](()()()[[([[]]([][[]()([[[([])(())[()]][][()]]])]))][]])[[[[[[]]]()(([()])[])][[([[[[()](())][]([])[]([])]()][])]()()][((()[()]))()]]([[][[][[[][]]]]])]([](([][()]([[]([])[][([][]())][[(()())()([()])[([])][]](([()[[[]]]]()[([[]]()[([([]())])(())()]((())[()][(([][([[]()[]([[][()]])])()])[[[]][([])]()](()))]))]))[]]][]))([][])())()())))()[[]][()][()[][]][([()[][[[[]]()((([])([[(([[](([[[]][[]([[[[]()[[]]]][](((()[()[()([])][]]()))([]))])([[[([][()([][][])()])()()]](([((()))[[][[[]]]]([]())()])[]()[])][()()()]()[()])]]()))][][([[()()]()]())()](())))[]]][]))[])[]]()[]]()[[[([()]())[()[[]]]]](([]))([[[([([[]()[]([([(()()[](()))()([])])])](()[([[[]()[[]][](()([[[][[]()(([]((()()))[]))][(([()[[((()([(())([[[][]]]()[()])]()))(([])())[])]]([[()()[][[[]][()[]]][()[[][()[[]()]]][[()[][[[][()()]][([([[(())]])](([]))[])]][[]]][[()([[[([](([()()]([][](())))()[[]]))][()]]()[[]()][]](([[[[[()]]][[]]]([[()][]()[[]()[]]]()())([](()[][[((([]))([[][()([()[][][()[]]])()][]]()))[]]]()[])[[]]()()[([])])]())))[[[()[][][](()[[]([()])]())]]][[([][]())]]()](())[]()]](((())())[]())]][()]])][[()[([[()][(([]))()()(((())))()((()[()[][([]())](())]))()()]][][])]([])]]))]][]]))][]([](()))()[[()]]]((()[()])((()))))]))])()([((()[[]]([[]([]())])()([(())]([])()())()()[][])()[])]())]]])][[]]]())])][][()][](([[][[([[()()(([]))[]]]([()[(())]]()))][]]])()[][([])](()[]([][([(((([]()[[[(())(())]][[([()[]](())([]()))()]()[]][][]])[]()))([](([]())())))])]))()[]()([()][][]())))([([])]))[][([[[](())]](([])[][]))([[][()](())])(()[])[]])(())([])][][]][]([[[[[]]]()]])((()(()[]))()()[]()[[](((()))())([[]])])(()[[]([()[[]][[][][[()]][((([]((()())))))[(([]([[[[[]][]]]()[[]][()[]]])[]))]]]()[]()][()[[(()[([[]()()]((([[]()[()()]]())))[()])])[((([()()][]([]()()([])[])))[][])]([[(([]()([]()())())())[]()[][]]][([([(([[]]))()[]([[()[]]()[(())[[][][()]([])([[]][[]][][[]][][[]][])][()]]])([[[]][[[]]][[()([]())][[[]]][()([()()][][[][[]]][[[[]()(((()))[]())]([])]])](()())]][])][][])[()()]])(([[]][()[]]()))]([()[[([[()[([()][()()[[]]][][[]][[]])]]]([([[]()[][[[[[][[(()[((()))]())()[[()()]]()]]([[][([]())[]]])[]][([()])]()(([[]]))]][](())()[()](()[])]([[]][()])[][]])()]()))()([[[[]]]])()][[(([[()]]))]]()()([])[][(()[])[]][][]]][]))[][]]]][])][])()()([[([[]][()()])]([[()(([[()[]]]))(())([])[[][[()][[[(())[()]][[[]]][([[]][[]])()]]()[]][[]]]][([])]]([[][()]])[][[]()(()()[()]())]([]())](((()[]([][]))[]()(())[][]))[])[()][][][][[([[][]])[][]([()[[()]]()])()[()[]][[[()()][[][()[]([])([])][][([]()[[]])][][([[()(([([[()[]()][]])])(()))([])()]])][]([]()())][[][]]([[][[[()([()]([])[][]())[()[]()[()([])[[]]([]())(([[]]))]]][[()]][]]]][[]()(()()[])[]])]][[[[]][([(([[]]()())[])])]]]()(()([][(([][()()(()[])])[[]])()()])((([[[([]())][[[[([[()]])]]()[]][(([][()][])[()])([[[()[](([]([][()()])()(()()[]()[])))]](()())()[()()([][][([]()()(([][][]([()()()]())(())))())([](()())(()))])](([][]())[])()(()(())[[][]][])([([[()[(((()[])[[]]()[])()()[[[()]](())()][])[]()]]]())(([[[([[]][()[[[]]]((([]))((([][][[]()()([][](()))][])((()[](()[[[]][([[]()(([[()]])[()][[[[]([[[[([]()())]]][]])(())[([(())(([][([[[()][([[[]][]][()()])([]())[]()()[[]]]]])[]])[[]()(([])()[([]()((())()[](())()[][]))]((())()(())))][])][[[[[]]()]([])]()]([]()[()([]())()]([]))[](()))([[]])]]][[[]]]()])[[][][][]](([][()]))]((([([([()[()]((()((())[][[()]]((()()[[]([[][([])]])])(())[][])())())())][()])])]([[(([][][]))]([[][][[]]])[]]()))[][([[](()(())[()][([][][]()(([]()[])[()]())((()))()()[])((())([][](())())())][])])()][]()[[]]()[])))[[[([])][]()[[([])][()](()([]([])))[]][][]]]]]()[[][][[()][][()]]])[])[[]]([][])([[]]()([][[[]]]))())[][[]()][([])[][[]]])[([[]([[]]())((()[[][()()][[]([[([[]()()]())([])([][([()](()[][()()([])](([[]]))())[])])]()(([(())[]](())[()][(()(([]))([((())[[]][])](((([]))))))[[[]][](()())[([[()[()()(([][])[])[()]([[[][]()([()][[()([]())]])()]])]()[[([[[()[](()[([()])][()[[]]]()(()(())))[()[([])[]]]][()[]]][](([[(([](([][]))[]())[[[][[((()[[[[]([])]()]]))[([])]()]()[()[]][()][]]][]()[[()][]]()])][]][])())][[[]]][[()()](()(()()))([[][]])]((())))()((()[[]])[])][()][()]]]])](())[[]]]()[()]])[]())])(())](([()()])[[]()([()])])])[][])[]])[]](()))[])][][]())[[()()][][(())[]()[][]][][[][[]]][]][]]]([([([][])][]([][]))][[((())[(())()()[[][]]]([([((((([[[]]][[][[](()[(())]())()]()])(())[]))))(()[[]()[]])([])])])[])]])[(())[]]()]))])][])[()][(()([(())]([([()[([([])])[([()])][][()]([()()][()]([()](())))]]([()[]()]([[]][()[]()])()))][][()(((()[()[]]()[])[][](()))())][[[[([[()([]([()][][[()[]][](((()[][]))[][([[()()[()(([])([()([][])]))[][]]]])])[(([([]())][][([[[[]][]]([]())([()])[][]])]())([()[[([])][[]]]])[()][[]([][])])]()[[][[]()()()((())[])]]]))([]()[()[]]()[()])(()())]])()]][[][[(()[[([[()][[[][]][(([]))]]])[[()]]()[(()(((())()[]())))]]])[()]()[()(()[()[()]()](()[[]]([])))(())](()[[()[[][[]]]()([()([])][((()))(([(((([]()))()[])[])([[]])]()(())[(((()))([][]()[])[([])[][([[[][]]()])][[[]]()]][()]((())))]))])]()([][()]()[])])[]]][()()[()]([])[[(([][]((([()()[]((((([](([[]]))))())))[]]())([]))((([[[][[[]([([][])]([]))()()]][[[]]]]][][]))((()))()))))[]][]][][]()((([]))(())[[[][()[]](())[]][]()]([()[](())([])()([[]])([[[[][()[](([([])()[][(()([][[][]][(([]()(([(([][()([]())])()((()[([][[((([((()([]))[][[[([((([[[[]()]]()[[][]([()]([[()]()()[]([][]()[[]]()[])()(()()([][])[(())][])][]([([([()([][]())][])(())[]])()]))[[[][()[](([[]]))][]][]][()[]])][[[[][]()[[[]](()[[]])()[[[[][([][])[]]]][][]][([([([()][])[([[()()](())[[]]][[]()])][(())][[]]]())()[]()([[((((()(()))))[[[][][[]]]])][[]]][])])[[()]]]]]]]])))[]()[[[]](()[([][][[][[[()][]([]([[[]([[]]([[[]](()())()(((())[]()(()[()])[([(())[]][])((()[][])[()])[()(([]())[[(([()()]))[([])[][]]]()])]](())[([[([]([([[[()[]]([[[]([])()][()]][()])[][[()]]][]][()[[]]])])[][](([])))()(()[[[]()([][][][])[[[([(()[((([()])))][]()[[]])]([][][]()))[]][([()])][](([])[])][]]()][[()][()[][][]([()()[()][[()]][[[()[][]][][](([[([]())[][]()]()[]((([[(())()]()])[(())])[[]()])()([([[(())][]()][[]])]())]())[])]][][()]])]][]][[[[][(())]]()][]][[[][((([]()())[()(([]()[][[[([])()]]]))]))([][[]()[[]]]()()[]()[((((())[](()()[()]()[])[(()())(())([])()][][][][]))([[(())([])()]][]))])][(())]]([][([([])])()[]])[]()]()[()])]])]))])[()][()])]]))][][()][((([[[[([])]()()]][[]]()[][]]))[][])[[[]][()[]]][]]]])()[()][]()()]([()][([]()(([]))())]()))]](()))][()]()[]][()[]][]][])]))[][()[][]][])]([](([]))[()])][])[[[[]][]()[[[[[((((()())[()][])[][(())[]((()[])(())[]())][][])(([])[[]])[]()[[([])](()())])]([])[([]()[[[([][[]()])]]])][[][]()[]]]][][((()[(())])[[][]])()]()()()(())]]([])()([])][]][]])))][()]))[()]))[]]([]())))]][[[[][]]()[][[()]()()[[]][]](([]))]([()](([(())[]()])()()))(()([]([]()[]()[([[]()[(()([[]]))][]])]()[]()))())][]()[()()(([(()([[[][][][[]]][]()][]()[][(())()[[[[[]][]]]]])[])[[][](())]][])[[[([][]()[[][[]]])[]]]([])][([])[[()]()([])][(([([])]))[[[]()]]]][[()(()()([[]])[()((()()([()])))][[]])][([()[(()[]([][])[][]())]])[]]])[]])[[][[][]]])]([(([][][]())(())[()[]][])(([]))[]][])]]]()[])[([[][]([]())[[([[[[(()(()()()((())))[])([])[]([[]](()))]][]()]]((()[])[]))()[]]]])()[][([])]]]))][[]]][[]]][]])[][()()])[])][]][()()([[[([][][]())][][]][[](())(())][][[()(())[]()[[]()]]()(([[]([((())[][][[]()]())[[()](())(()[])]])]()))]()]())[([(())])][]]()()]]()[[](())]])))[])]()([[]])]][[]][]()[()])[([])[]](([])(())))]([][][])[][[][(()[])][]()[((([])(())))([(([[[]()]([[([[]])(())]][]([([[[][]()](()[([])[][]]([([(()(((()[[]][]([[]][()]()[]))))[[](())])([])[[]]])()]))[[(([()])(()())()[])][]][()[]([(((([][]))([([])][])))])()[[]()[[(()[()(([((()[((()))]()))][()][()[[]([[[[()][[[]([](([][[(()[][[[]][]][][[[]([()][][()])[[([(([[]()[][()[][()[()[[][]]]([]()(([()][()()]))()[])]]][][]))[[[()[[([[]](()())([])[[[]]])()[]](()([]))]](())(((()[[][]])))[]()]][]](()[][[[]]()]()((([])))([]()[(([]((()))[](([[][[()[]][]()[]]]))))((()()))])([]((())))()))]](([[(())][]()][])([[[][[()][]([[((())(()))([](([[([([])][(()([][][](((([])[(())])[[([[[]()]])]()[][][(([[]])[[](([[[([[([[[]][[(([]))][][]](())[[]([]())](((([[[]]][[]])))[[]](()))]())]()[][]()][])()[[(()((()[()])[][])()[()()([[]])](()())(([])[])[])](((())))]]](([[[()()][[]]]()])[])]))])]])[()][([])])([(()[(())(())[]()])([][[[]]()[]()()])[()]]()()[])([][]())))[[]]][][()(())([([]([]))[][][[[](())([()][]((()(())))()[([()])][])]]]())([][[]][[[()]](([()])()[](((()))))])]())[[]([][()])]]][][[][[]]()[]][]))[([][[[[]](())()[((()()(((()([[]])[[]]([[][]()[][]][(()[()()][[[(())]]((([()()[[((([[[]]][(())[][[(([[[[][(((())))][[][([]()())]([()[]])]()([])]][]]))()]]])[(([]))])(()))]][[]]][]())(())[]()()[]))[][]][[]])[[]][]])[][[([])((()())(([[][][[]]()][])))](()[])])[[]](()[(()([])(()))]())[[[]([])][[[[[[()]([]([][([][])]))[][]]]][]][](()([])[][][[[]()]])]])(())))[(()[[()([([]([[]][()()[()()[()([[][[][[([[[[([((([])[(()[(())])]([])))()]()([][[]()[[]]])[]())]()](())[[(())]([([[()(()[])]()[]([]([[([]()([])[])()[]][()][]]))]([()]()[[]](())))[][[()][[](())([([([])])([])])][]([][[]]()()()(()[])())]([([[][((([[[(()())[]]]([]([][(()())])())])))()]])()])][][]([[([])]])([[]][]([[][()]])[]))]]](()(((())))()())(()()((([(())()][]()(([()(())]([()()])()))[]))[[]()]([[]])))()[]([[][[]]([([]())()])[]])[([()][()])][(([]([][]([])[()])))])[(()[([[]])(())](([]))(([][])()()))]]]][][([[()][]][]())]()])(())[][][[]]([](([](()))))](([])())[([])]]]))](([])))[()]((())[])()[()]][()]](()))[[()]]])[([]()([([()()][])]([()(([][]))()])()))[]()()[][()]][[[()]]]([])[()([]([[[([]())]([])[]][]]([(([()]))][]))()([])(()))][()][]()][]][[]]()([()][][()[[(([][])())[[]](()(([[]][[([[()((([[[()[[]][(()[])()]][()()()[()]][()]]])()))()()([])[([([([][]([]))][[]()](())[[[]]])])()]([(()()(()[()(())[]]))])]])()]](((())()([][()]())()))[([([()])[]()][])[((([][[()][()[][[]]()((((())(([])))()[])()[][[()()()]][])()[]([])[()]]([((()))[]])])))()[[]]]()]()([[](()(((()))[([]([]())())]))([(([()][([[[[]]](())])]))[][]])])([]))))]]()[]])[]])[(([][()[[[][]](())()[()[]]]([()](()())()[])]))[]][()][(())()][]()((([((((()[])[])(([[]([((()())[]())])])[([])](())[])[[()]]([()[]]))[][[()[([]([[][[()([])]]]))]]([]([])([])[[[()[][((([()(()(([()[[[[[()[[]][](((()))([][[][]((((()[[[[[]]]([]((()()[()]())[])([[][][()(()[])]()])[[]])()()[[[[[[()]]]()[](([]))]]][]([[[](()[]()[])()][]((()[]))()][])][][()]])())[]()))()[]]()[[(()[])[([([([]([](([[()(([[()(())]][(()[[()]])])[()([][()([][]([]))(())[(()())((())[][][])[[([(())])][[](([([()[]])(())])(((()(()())[])))[])]]]()]([[([][[[]]])]((()[][(())()]))[]()]))[]])[]][]])[][(((())))([[][(())[[]([])]]][])][[[]][][[][([[[(([[()([][]([[]][()][(((()([([][(()([])[()()[[()([](()))()()]]]())()([[([][[[[([])()((()(()()))[])[][()()]()](())[]](()[])[((([[]])([][[()]])(([]))[([])]([][])[()([]([[([[([])()](((()[])[([([])][])]())())](([][[][([]())][]][])([[()]((()[]))[()][]([()()[()]])][([]([][]))([]())()[]])[([])[][]]())())]][]))[]()(()([[[[[]][[]()]]][[]]][][[[]][()]]))[]([[[(([[([])()((()))()]][])([][])[[()[]]()])[]](([]((()[][[(([[]]))()](([()(())][[]])[])])))()[[]()[]([[][()]()([(([[()]()]))[()[[]]]])[[(([]))]]])][]([][()[([][])([])()][]][[((()))([()])[(())([])[[[]](([((([][[][[]]]()[]())))()][]()((()))[[()(([]))]]))(([[][]()])[])()]][]][(())([])()[]()[][()()[]]]]))][]])]((()())[])(([()][[[()([()][])][][](())]][][[][[]()()][][[[[][[][][]][]][()][()]]]([([](()))[]])[]][]()))))[]]]])[()]]]()())][()]([][[([])]]))[][([])((()([]([[[]]([()]([])([]([[][()()((()(([[()[[[][([[()][]([]([](()()(([[()[(())]()]]))))[]([])[[]()])[[[]](())()]])][]](()(()(([[][()]])))[])()]][((()))]])[][]))[[[[[[]()]][()]]()[][](([]()([])[()])()(()(()[])[[[]()][][()[[]][]([])[]]])[])([]([]([[()][([[]])]])))][(([])[](()[()]([[]])))()][]])]()]([(())[]]))[([]()([]))()()[[[[][[]]([[(()([[][[]]]([])))(()[[]])]][])[()[]]]](())[([()[([][([(())]([]))()])]((()([[()()[[]][]][]])([])))()[][]]())[]](())]]()[[]]))[[([])([])]](())[[(()())]]()]()(([][()[((())[])][](()[][]()())()]())()()[]))((()([[[[([])]](())()][]][[][()]]())([]))))[][[()][[]()[[[([[[]]()(())()][[][]()[]])[[]]]]]]][[[()[]()(()([][])()[[]()])[[[[[[()]][[[[][[]]]([])[]]]][]]]]]][]]))]][][[]][][([]()[])()()[]]()[[]][[()[]]]()[[(()([]()[])([](()[[]]()([]))()()((([([[[]()]])])([[][()[[((([()[][()()(([((([[()(([[([][][]()(([[][][][[]]()]))[([][[]()[()()]]())[[](()[])]])[]]]))]][[]()[]])))]))]]([]))(()))([[[](()[][[][]([(()[[[((([()]())))]]]([[([])][[[[]([()(([()[]]()[()[[]]][]))[][]()([([()[]])][[][]])[((((((([()])[])))[()[]]())))][][[(())[]]]](())[[]][])]]([[((([]()))[][]()[[[[((([])))()]()]]]())(())[(([()[(((([]))[](()[]()))()(())[[](()[])][[]][[()[]][()()()([[]([])]())()(())]][[]]()[([[(([]))](()([])())])()][((()))[[[([])()]]][]])]]((())(())()([[]]())[[[]]((()[]))[]]))()([])[[()[[()]]([])[][]]()]())][()([]([]())[[]([[[]]()[([])((()[]))[][[[](()[([()][])[]])[]()]]]])])][((([][[]()()[]][]()([[()][]]()()))[()])())]]])]][][][()((())(([]))([][][]))[[[](())]]][]))()][][])])()][][]])[[][()][[][[[](([]()))]][([()][][])]]]())[]][[([])[()]]()()[[[[(())]][]]([[[]][]]()([][])[][])[()[][]]]](((())))[][[[[][]](())[[]][]][]]()()()(())]]([[[][](([]()[[]]))]](()([])))[([][[[]]])]]))[]()[]))[][[]()[[[()]]]([])])(())]([[]][]([()])[]((()())(((()[][])()(())())([(()())[[]]][]))[()([][()]())])()(()()(()[[()[]][]]())[]))])(()([]))(()())()))[])]()())())]]()[]([]()()[]([])[]))[])]()]])][((())()[()])][]]((([])[])[(([])[])]())[](())()])))[[()]]](([[()()](())])([[]])()()[[]])([][(([])[()()])][[]([[]])[(())]()()]([]())()[[()]])[])[()]])]]]))]()][()[[][[([][([[]()()[]([[][[][()[]()]()[]]])])](([([][])[()([()[]()[]])]()])([((()())[]([][([][[[][()]([][(()([]()[]())(()()())[][])([]()([(())((([([[]]()[])]))[(([[[]]]))[([([()[]])(()[][])[()][(())[(()[])[(((([]()))()))[[()]][[](([]()[]()()()()[]))]]([][][][[(()[([(([])(())()[])][])]([[[[][]()(([]())()[])]]()])([[[]]][][]))[([])]][([]([])[([[]][])])()]]())()([()])]]])(()([[]([]()([](([()]))()))()])([[]](()([[]()][[()]()])))[()()])[([[]][(())[[(([]))]][]][[]]()[()]())](())]][[]]())()[]([][(([(()([()]))[([()[]((()))](()))]]))])[]]((([[[[]]()[[[]]]]][])()(([](()))[](())())[[[]]()]))[[[[[]()]]]])[])])][]])([][])][([])]))])[[[()]]][()([[][][[]()(()[])]](([][]))[()][[()[]]])])[][[]])]()[]](()[])()]]]]]])))])[]))]][][]]()([(([])([()][[[(())()()[]]]])((())))])]()()[])][[(()())]])])[()(()(())()[([[[()]]][](())[])])()[][]]([])[[]()]()(())()((([][]))[])())(())([(()[])()][((([([[][[[](())][([()])]](()()([([]()[])])[])([[]()])[]]((([][(((([[]](()[(([()[]])([]))[[]]](()))[[([][]()()())]()()(([][[[[][][()()]()[][(())][[([]((())))[]]]()]]])[([])[(([]([])()))]][()])[[()[]()]()]]([([[([[(([()][])[[[]]()[[]]]()())]][([[[()(()[])[]]][[()([])][(()[]([]))]([][][][](([([])[][]][]))(()))([[]([()][()[]])[]([([()][][]((()[[]()])[])[[()]][((([](()[(([])[][]())][()][]))()))]())()[]()])][][][((()[[]]()([]())[](([[][]]()[(([[[]()]]())())[[]]])[()])([[()(()()())]([])]))())](())()[])]])([]((())[[((((())[]))[][])()[]]()[]((([][]())))()()]()[]))[]])([[][[][[()][([[((())((()))[(()(([[]()]()))((()))([]))][[][[()()]][]()])][()]][()])]([](([][([][]()()())[]]([()[]]([][])[()])())[[[()()([][()(((()((()())[]((())))[][])()[(()([]))]()[]()[()([]([()]))])([]))][]([][()[()[][[]()][](())[]()]()[([[[[]]()[[[][[]](()[([[([[()()[([])][]]()[][]]())]((()[([]())][]))[][]])[()(()[[()][]])]])()]]](())[[[]()][]][]()[[[]]()((()([()[([()()()])[()[()]()]]])))(())]])[[]]][([])[[[[()(())]()]]]]]([(())][][]()()[])[][[()()](()[[][]()])[[()]()]([()])])[[([][]([(([][()()]()[]))])[((()()[[]]([]))()())]()())[[]](()[()[]]()([[(())]]))][[][]()](()()[][][])[([[([])[]]])[[()[[(([[()][]][]()))]]][([[]][()][]([]))[][]([](()))]]]()(()([])(()))[]](())[][()][()[]()])[((()(()[]))())](())]][[]]()[(([]))[][[]]]])[[()()]](((([(()())([])])))[[][()][[][((())([])())][][][][[([([()(()((()(()[(()(()))][(())()]))[()][]))][](([()]))())()(([([][])])())((([[()]])))])[][]]][(((()))[])]()[()()(((()[])))][]](([(([[[]]][]()[(()([])())()][([[[()[()[(([()()[]])()[()])][]]][[()[]([]()(())[])(([()]))()][]](([])())[]][]])(([]((([[()[[](())([[[([[()[[](()())[(()()[])([[([[[]([[]][]()()[])]])[]]]())[][](([])())]][[[][]([[]][][()]([[([[[[[[](([]([]()())))([()])][][]()]]]([]([])(()[][[[]][[[[[([](([([[]])][])()[])[])[([])[]]]()[[([][([[([(()[()])[()]([]())[][]])]][[]()[(([()]()))[[()(([][]()[][]))()]()]][(()[([])])[][][]][]()][](())()[])[()()[]]()[]]())[][[[]([]([])[]())((()()())[])]]][]([[([()]()[[[([])]]]((([(()[[]])][][]))))[[[()]][[()[()[([]((()()))[][[]()(()([]()[]))(())[((([()[()]()])[(())][]))][([][])]()]()()[]()()[])]]([([[][([])]][])[(()[][()]()[()[[[[((()[(()([]()))[()]([[][[]]]()[])()()[[]]]([])[([])[[][[[]]()]]]))][([(([([()])])[[]()])][[]()([()[([(()[(([])(([[()][][]][])))])[()()()]([])[]](()([]())))]((()))])])]((()(([([]((()))[])]())))()[(([][]))[]][][][])[[[][]][[(()()[])[]]()]]()[[[[()(()[[(([()][](())[()([[()[]]])[](([()]))([]()())][](())[[[[[][[]][(([])[])([[]][[[[][]]]]())]]][](()[]()([]))]]()()))[]]()[()([])([]())(([[]]())([([])()()[([])]])[([([][[][][[][()[()[[[(())[][([(([[()]])()()())][][[[[][()()]](()(()))()[][]]()()[]()[(())()]()]([[]](()()))((([][((()()[[[([(([][]))])()([])]()](([([[][()[][[](())](()[][])][]()[]][()[]])[][([][])]]()))[[][]]][]))]))))()()][[]]]]((()([([][])](()[[[][](()()())][][][][]([[]][[()]])[][(()())]()[[]((()))[]][][]]()))))(())][[[(([]()))[(([[](([]()(()([[]][]())))[])()[]()(()())()])(())())[[[([][[]()[]]())]]([][](()))]([([[][[][]]()][])]())[][((())([()([[]])][()]([][]))(()()))[[]]([[[]]])(([(())])()(([])()[()][][][[[[]([]([])[([]()[][()[][()]][])()])][]][(([])())(())([[][()[[]()()(()())][[][]()[][][[]]]()(()()([[([])]]([])))(())][([()[[[(()(()())[])](())]][[([[([[[]]]()((((([])())((()()(([[()()[[()][]()[]][[]][]()][]]))()(())(())[([][()()])()])[()[]])[])))[(())([()])]())]((()[()])([]()()[[](()())]))])[[]]]][]])[()()([])[()[]][]]]]([([(((()[[]([()])[[([()])()((([])()[[][]()])[])[[([])[]]]]]()[]]))[()(())](([]))())()](()[(([])[]()[((((())()))([[]]((())))[(())[([([()])][[([()]()[][([])[[([]())[]]]][[]]())(())((())([](()))[])]()])][]]([][])[][[[[]][()]()]])]([][[[]]])[[]])][[]]()()[()]()[(())[[]]]))[[()()()[][()][]]]])()[[]])]]([[]]([](()[])()[][(())])))[()])]][]()]]]]()[(()[[((()))[()(())()]]][]()[]([]))](([[[]]]()()(()([]()))()(())[[[]]()(()[[[]][()]()][[((()[][]))]])[][()]][](())[])[[()[()[[]]]]][()[]([()()]([[[[[]]]((([()])[]))][]()[]]))[()[]]][[]()[]]())]](()([][][[]][[]])())([([(([]))]([()[()[[((()))]]([])(())]]))])][])[()()]])])]][]([][])())([([][()[]][([])((()()[[](())([([])])([()])[[][]]]))](([][])[[[[]][([[]](((([]()([(())()](([[()[()[]]]][]))[])[()][]))[[]])([])))[()[]][]]()(())[[]][([](()()()()))[()[([][]([]())[])[][[]()[[[[]]]][[][][[()]][]]](()())(([()]))][]](())[]()]]]([(([[]]))[]([[]([]())](())[][])([])([]([][]))]()[])[]))][][][])]]][]]([])][]][[([])][]]]([]())])(())]()[[()()]]][[]][])]]()]](()([]))])(())]](([()][()[()][]])(())[])(()[[[([[()][([()][()[[()]][((()))(())[()][()([])()]()[(()[])()]]])][]([][])[]][([](([]))[([([](())[([])]([[](()()[]([][]))][([][])([()(())([([[]()[(([()[([[]([](([(())[]])))])[]([])]]))[((()[])[])][[()[]]]]]([()]())[[][[[][][](([][]()(()[])[][][])((())[[][]([])[][([]()(([([[[()]([][[(([])[()][()](([])[]))()][[([])][][]]][])[[[(([]))[[((()()[]([]([()][])())))]]][[]([()][][])]][([])]][((([]())))]]([[]()[][([])]])]()())()][]([()][])()[])[])[[]])([()])[[]]][[()()]()]()])())]]][][][[]()]()())()][])([[]]())])([[][](())[]])[]()])(()))][])[]](()[]))][[[[()][[]]([])]][[([()])]([[[([][[([])[(()[(())]([])([[]][[][][[]]][]([]))()())][][]]])]]][[][]()[[]]([([])])])]])[[([])][[[[()][]()]][]]]]](([[]([])[()]()()[()]((()[][[[[[()[]][[([([]())])]]]]][([][][[][()[((([[]])))[[][]][[(()())](()[()])[]()]]][[]]])([]([[]](())[[](())[([])([[()[[]]][([])(([][[][([])[[]]]]([[]()][]()))[]())()[]][]](()))]([[]])][()]))]]))])[[()]()[[]()]][][])])[][(())[()()[]()][][]]]][[()][](())()]()](()[])]([](())([]()([][]()[[[]][[[]()[]]]])[]))([(([][]))][()[][]][()([([]())[[][([])]]])][()]()([])[])([[]()])[])[[[]]([([()([]()()[]([][])[][][])])][])()(())][[](())])])[(([[(())]([[([])]])])(()())([[][]()[]([](()()[([])][]([([()[][[[(()[]()()([](())))[[][[]()[()[([[]])(())]()][][]]([])][][]]]]])])[([[][]()()])]))[]()][[[[]]]])[])]]]()))([((()(([]))([])(([([]([][]))[]])[]))())][])]()()[[]((()[((((([()][[][]()]))([[[[()]]]](()[([])(())])))))[()]]()[][[[]]([[]()[([][])()[()]][[[][]((()[[()]([])])[[()[]]()])[([])()(([[]()][[((([][()][[[]]])[][()][[]((([[[()]()]]([[]][[][([(()()[])()][])((())[][([[[[[]][[][]][(())]][][]]])][])()()[]()]]))[[[]]][]))]))([])()[[]()[()][]][[[[[()[([[]])](()([])[[[[]]]([([[([()[((([]([]))()()()))[(((()((())([[]()(())][[([[[[[]][]]()[[]]()]])[]]([][((()())([(([()])[]())]())([[(([([][]())][]()[()])[()[()]][])]](()([()([()]([][])())([][])([][(())([()])([[()][(([[]][]()[()[[]()][](([[()][([()()(()[]([[][()[]()[(((()[][()])[])[([(()([]))[[]]])](()))[[](())]]()]]))][])]])[[[([])()(())()][[]]]([()[][]])])(()())[]([[()][[]][](())()[[][()]][[[]]]([([[][(([(())[()[(([[]]))()(([(())][()]))]]])[])(())]][()](([]()))(()([])(())))()])(())])([[]()][()([])[[()]()[[[[[][]]()]()[()]][[[]]()[]]]]][([])])()([()()()])][[][][[[]]()][[]][]])[(([]())[()()]()[(([][()()])(()(())(([[][()[][()(([]([][()])))]][][](())[]][[][][((()()[()])[][])[()[]]]([[]][])[((())[()]()()[[][](([[]][[()[]]([[]]([()[]][]()[[]])[])])[()])])()]([[([[]][[]()([][[((([([])([([[]])][])[]][])[])([][]([]))([]())(((()(())[])[][[]()()(())])()()))]])])][([][[]])[()[[]]]][[]]])([[]()()])()[(()[][[]])]()]([()[[()](())[]](([][])[])()])[])[[]]))([[]((([([[]()[]][([()](((()()())[][[]][](([])[[]]))[][([])([]([[]]((()))))[][(([[()]]()))]((([()[]([()][[([][[()]](()))()]][]()[([[]])]((()([[][([()()[]][()])(()([]))]()[][]])[])))([([()()][([[]])]()()(()))])[[[(())[]([(((()))[])]()([[]])())[]([])[(([[()]]()(((([[[]]](()))[(([]))]()([[]()[]])[[]([()[[[[][[()()]([[]([()])])][]][]([])]][]]((((((([])))(()))[]))))])[[]()([[()][()]([[]][((()[([(()()(())([[[]]]()[]))]([()()][[(([][[[[[[[]]([[][]][(())([[]])()[[]]]([])[])][]()]()([[]])([[]]()([()](([]())))([[]][()]()))()]][([])]]())[[]]())]]())(()))[]])()(()()))()([])][])][()]([()[]]([][]((())[])[]([]))()()))[[][]]])[()])(()))([])())]]]][]])[[]]))[[()[([])][[]]([])(())][][]()]()[[]]])())][])][[[()[]([[][]()()()([]())[](())])[[][]()]]]])))]())[()][()(()())])])[([]())]][[]()][()])()[][](()[])[([])]][][[[][[]](()(([[[([[](([[[[][](()(())[(([([()](([]((([]))))[]))()]([([])()]())()))()])()[([[][]()()([[()[]()[(())([([[[][()([([()]()[]([([[]()[][]()[([])[[]()]]()()[]([])][](())[()[][([])[[][(()[()][([(())])()([])])()([])[[][]]([()[(()([[][][][]][[()]]()))()]])(())[][[()]][](()[](())[]())[[[[]][]([])(()[([[[[][]([()()()[([([][])][])][(())(([(()([(())[]()[](())]((()([](()[(())[[]]])()))[])))]([((()[][[[]()]]((()([[([][]([([])([]([[(())]][][([])])(([]()))())])([([](([]))(()(([])[][()]([[]()][]()()[][])(([])[][])[(([([])([()])])()())])))])()[()]()[])((([])()))]]))())())[][])][[([])[()(([]()))]]]))([]()))][]])()]][][([][])[](((())[()]))]])[[](((())[])(())[((()[]()))])]])(([][][](([[()()[[][()]]]])))())][]]][]]()]])]))[()][]][][])][()]]][][((([][[]])(([]))))])])[][]][()]]])[[][([])][()()[](()()()([[(())]]))]]][(())()[()]])]]([[]([][()]()([([]([()](()))(([()]()()([]()))(()))(([()][[(()([()]))[][([[([[()[]]])][([])]]()[[([][][]([][])()[][[()]])][]]())]]((([()()])))([(())])[]()])()()))()])[[[[[(([[((())(()[[[[()()([])]][[]]]()()()])())]()([[][]]())[]]()[]())[((()))([][()])]([()])()())(())][]][]]][[[]][(([[[]]]([(()())])))]][[[][()(([])[[][[[[]](([])((())(()())[()])[]())[][(())[]]][][]()]])][][]()]]]([[[]][]]([([()()()()]()[[]()][](([])[[]][]))[[][][(()(()))[][][]]]]([])(()))[])[[]()][[]][()()[[][[][][]()]][][[()([[]])()([[([]([])[][])]])[([][][][]())]]]]([[[](()[[([()()([])[()((()))()((([])(([[[()]](()[]())][]))[]()())()[[()]])[]([])()[](())]])]()[]])]]()()[()]))[][[()]()]()])]()[][[](())][]][(())(())[[][]]]))](()[[[[()()[[[][](([])[][]([])())]()[]][(([]([[]])(())))]]()](([])[()(([([([()][]())][][()])[]][[[]]]))])(([([[]][])[[[[(([[]]()([]))())][[]]][]]]][]()[]()()(((([]([()]()))(()()(([])[()][]))([])([()][])))[])[[]][[[]]])(([[][[][([][(()[(()[])[([()])]])()])[][]()]]][[()[[()[]]]]]([()()]))))]][[(([]()[[((()(())))][((([])(()[()][[]]([[[[(([[[()]]]))](()(()[()]))[()[[([(([(((([(([]()[][]()))[()]()]))[][]()([[()[]]([[][]]())([][(()()())])[[[()]([]()[()])[]](()())][]](([]([]([])[])([])()([][]([][][][][]))())(())))()[[]([[[]]()]())]))][[()]]))[]([][()[][]][])])[]][((([(()[(()()(()))()][(())][([])[][(())[]((([]))([])[])(())][(([]([]([]()())[()[[]]()]))[()()])(()[[]])(([])()[])()[]()]])])()()[()]()()[()()][[]]))()[()([[()[[[][[]]]][()][]][]])][()][[([])]](([[]()[][[()((())[][]())(()[(())((()))])]]]))[()]]]][[()([[]]([(()()([][]))([])])(()([](((((()))(()))(()([](()([()[(()()())[][(()()[([[][]])[]])]()()()[][]([])]()[(())]()()]))[[]][])))[[[]](())][](((()[()()](()))[][[][()[]()]([][]())])))(()))[])([[]]))]([])]]]][])))([[]]())(())()()[][[()](([]([]([][][[](()[][])]()))(()((()[](())([])()()([((([])(())))(())()[[()([]())()][]([[[[[]]]([]([(())[]()[]]([[]])())[][([]())])]])[]](([]()))[[[[([()[([([[()([(()[[]](([][([([[[](()())]])()[()[][]([]())((())[[]][])]][]()())[([[()[][]]])[]()][]])[]()))[[[]][[]]]]()[][[]])][]])]()())[][]]])()([()](()[]))(()[()](())[][])][[[[]][[([](([[][[[(([[()(()(()))]]))][()[]][()][][]]]()(()[[][]((((()[])[])[[()[]()[]][[]]]([])[[]]))[()[()()](([]))]])[]])))[][]][]]]][[]()]()]((()([()[]][][()()][[]([()][[](()([]))])()([()[]])()[][[]][([()(()())]())[([]())()([](()([][])[]([][[]])([[][[[[]]]()]]))()[])[]([])]()][(())[(([[]])(([()]()())))[[](())[][](()[])][]][]]([[][[]()]])]))[])()]]]))[()[]])([][[][([()()])[[()]]]][])))[[][][][][[]](([]))[]()])])]]))(()([]())[([()()])[]]()()[()([[]([()])][][[]])([[[][]]]()[([])[[]][]])[]()[([()]([]))]])]()()(())[][[]()]()]([()[]()[[((([][]((()[][][[[][[]]]()([()[][][[[][()][]]()[[]()]]])])()([[()][]])(([[[(()[()()()])]([[()]])][]()]((((([][()[[]][][]()](()([]))([[](()([][[[(()()[[[([])]()]])([(()[([])][([([[(()())()[][[]]]])][][])[]]())()(())[]])[]]][]])[])][[]][])()(()[(([()()()[]([])])[([])[[()([])()]]])][][(()[()][][][])]))[]([][])[])[()[]][]()([])[]))()[[[]]]([](())[](()()))(())([[[][]([]())]([])]())([[[]]](()[[()([()[()[[]]][]]())(([(())][([][(([])()([()[[]][()()]](()(()())[[]])))][][](([][[][[[()[]]([])]()([[[(([]()[[([()])()]])()[])]]][[[][]]])][][[([()()()(())])([])]](([])[][])](([])[[[]]])[[[[([])]()]]])[[]]))()[()]]))[[]][]]])([]())()())([[]]))[[]()]([][])[][[]])([])([[[[[[[][[[()[]()][]][]]]]]]()]]()[([])[[]]]()))[]())((()[[]])[(())[][()]]())))[])[()()[][]]([([]()[()][])[[]()(()[[[]]])]()])(())][]([[]])[([][[[[]]()()[(())(())][[][]]((([])[][(([]))([()][])])[])]])(())[][]]][][]])[]))]][]][[][[]((())())]]))[])]()[(())]([[]][[][()]])[]]])()[]][][[](())](([]([[][]])[])))()[]])))([][(()[()]()([]()[()[[()]](())([])[]][[([])(()()[([[()[][[[[]()()[]]()][][[]()[]]]][](([()])()[])])])][]](()[]))()[[]()[]]([[[[][([][([[][[]([][])[[[]]](([[(())]()])[])]])][()][][]())]()]](()[([(()(()[][]()[[]](()))()(([]))())[](([])[][]([()()[]][[([][])]]([])())()[(((([])[]))())()]()(()()([([[][]()])]))[[](([][()[[[]]]][[][[]][[[][]]([])](())]([[()[]()[()]([([()][[]][[([()[[([([])()()[]][(())][([[()[[][]()]()[][[][(([[()[[[]]]]]))[]]]()]([][()((([])([[[()]]([][]()[()][])]())[]))[]])[[([]())[()[]]][]()[([([[(([][][]))(([]([]([()[((()([[[[]]]][]))(())[])][]()()](())[])()())[[]]))]()][]())])[]]]()][])[][[]()][[([[[]]])]()]][])]][]][()[()](())]()())]][][])[(()(([]))([]))([[[][]][[[]][[[(()[])((([[()]()])([[[]]()]([][][](()))[][[[]]]))[[]])]][][][()()]][](([]))]])[()[([[]][][[][[][][]](()[[]])])[[]][(([]((()[][[()()][[()[]]]()]((([[]])[])[([()((()(([[]]))(([[[((()[])([][])(([]([[]()[[[]]((((()()([((()))]))[][[()][][[([((())(([])))])]()[()[]]](()()[](()(((())[[[](()[()[]])]])(()())((()()[]()))[(())[()[][]]]())[()]))])))[][][[]]]()])[]))[[]])[]()()()()]([])][[[[[[]]]]][]][[[][][]]()()]][(()())]())()(()))[(())([([()])[]()][[[]][]()[()][][]]())]()))(([]))])([])()])(([[([()()(()())])[]()()[(([[][([()][](()[])()[[[]]([()[()[][[]]([()]()(()([([([()(()(()[])[[[[]]][]()[(([()[[][]](())]()()))]][()][[]])][[()[()]]][][[][]([])()(([[]([]())])[[]](()()(()[[]][])(([][])()))[])](([])((((()[][][(()([(()[])](())))][[](()())][[[[((([][][]())[[]])[([][()])[]])[]]]][[[[]()][]()]]([()()])]))[][]([[[[]]([]([])[[]]())][[()()([(([[]]))([[]][(([[[[]()]]][][(())([])[][((()(())[])()())()]()[()][]()][()]))])][[[]][[]]](()[]))][]([][][])]([])][()][()]([()()][]))))))]())[(()[])(()([[]](()()()[[][]][])))[(([]))]][]])))]()])([()()]([()]))[]([()[[()]]])])]()]))]]])[](([((()[])[()[([[](([])(([])[][()])())([[]])([])[][]][()][])]][[][[[[[[[()([()])[[]][[]]()]]]][(())()]][[(()(()([[([[]()((()([[]][]))[([][])([()][]())]()())()[[()]]])]])())[])[[]]()[]]]]][]([])[]])[][]][()[][]])())([[(([()])[[](())][])[]]])[])[](([[([()()])][][]]()(()[()])(([((([]([][([[()]([])]()[()[[]()]])()])(([]))[][])[]))[]]))([][[[][()]]]))))[[]()[[(((()[()[[[]([[[][]]][])]]]))())]]()(())]))()())][](())][][]]]])][][](()[(())])[](()[[[]]])])))]())])([[[]][]])[([])]])()([][])]))[][([][[]([]())][])[]()]()])())])][])[[()([[]])()()]])[()](([[[]][()]][])))))()]]])]](())[[()([])(([]()[]([]))[])]()([(([(()(([([([(())([])])()][]())](([[[]]][[[]()()(([])((()[]()))())]()()][([()])[]]))())[()][(([])[])]())(()())(()))(()[(([][[[[]]]])[][])()](([])))[[[[]]]]]))])])[[][[][]]]()])()])[]](()([])()[][])]()]][]][]]])[])()]]][()[[([]()[(())[][]][([])[]([[([])[]]])]()[])((((())([[][]][()[()]][])[]((([][])))[[[]]])([]([[]([][()[]])][[()(()()[][[(())((()[]([][([][([()()][]()(([[][](([((()[]))])()[])][]))()[][])]())[][[]]][])))()]])([])[][]](())[]])[][()(()([]))[]((([])()((([]))[[[[][](()[][((()))][[[(()[[[[]]]()(()())])[[[(((()([[()]][])([(((([()]()([]))[]))()[[([([][])(([[[]]][]([][][]))([])[])][])]()(())[]](([([])(())[()]])(([[]()])))())])()[]))[()([([]()([])[()])[([()(()([]))([]([]))()][][(())]())]]()[[(())]()((())())][])([[([](()[[[([]())][][[]([]()[][()[(()[][][]())]][][])]][]][])()[])][]]())[[[]()[]]]()]()[[()]([])])[[][[]]]]()((()))((([[(()())]][[(()[[[]()]]())][]])[()]()[])())]][()(([][]))]][]]()][[[[]]]])()[()[(([()()]))()[[]]]]((([()[]])[][]()))[[[()[]][(())()([(([[]](()()(([])[[](())])[][[([](()[]()[]())((()[](()((()))([][()[]]()[()[]()]())))[[][][][([[[]]])([](()))[[(())]][]](([][]([]))((()(([]))[((()))()()])())())])(()[[][]]))([][])()[][]((()))()]]))[])()([])]([][])()((())[])[]())]]()]()]()]()(())])[]))]))([][](()[]())))()[(())[[(()()([([])[()]](()(([][([()])][[[]][][[()[(())(())][(([])((()(()[](()(()[]))[]))()))()[][[]]]]][]][[[]([[]()]([][()(())[]][[[[]]]][]()[(())]())[])()[(())()]((()[]))][][()[][]](([][]))()()]()))(([()][()][]()[]()(([()()]))))))())](())[]][][[][]]([([][[[](([[]][][()])()[([(((()()[])))(([[(([]()[[[]()]([[[]()][](([()][()()()[]])([]))])]))](([()()][[[()]]()]()[(((([[[]((()[[]]((()))))[]([()])[((([])))[[()]()][[][][[][((())[]([])()[][()[([][]([][([]([]))()])([[[]()]()[()([])]][]))]()])]]]([[([])[]][()]])]]]())[]()([]))))])[](())((()[][]())(())))])[])[]])])[]][]][][])[]]()()[()][])]()][]]]][][][[[[][[[]]]()[]]]][[[][()]]])[(())[]]]()(()[])))(()([()[]][()]()[[](())()][])[])()[]]]]([[]])][[][]])[][]][]]][[()([])]][[]([]())](())()([((()[][]([()[][[[[][][[][][()[(())(()(()(())))]][[]]]][]()]()]]))((((())()()(())))))]([()((()))[()](()((([])[])))[]])))[]][[]][[]]][(()())()[()([()])([][])[]([[][[]]])][([])[[[](([(()[()()[[([])]()]()][[]()])][[][][]](())))]]][(([][])[[][(((()))[[[]((()[]))()]])(())[[()()()[([]([((((())([]()))))][[[]](())]))[[[][]]]][[([[][([])][]()]())(()()()([]))]]([](())[()(()[([()])])[][[[[]]]([][])[]]])]]]([])]()[])[]()[[]]](()[([][])[()]])[]]([()(()[][[]])[]])(([][[]])())]([]))))()[([][]((())()[])()[][])()]))[(()())]]))([[]((()))][[()[]][]([()[]()][[]()]([()])((([()][()][(([(()[[]])][[]]([([()()][([])(([[[(()()[[]([(([]()(([(())]))))])])()][]()[]][]()([([([[[]][[[[](([[[]][[(()()()[])]]()()][[([[[][]][]()[(((())[][][[]([[]])][]()[]()[])[]())(((([][][](()[])())[([][]()())([])()([])([]())()][((()[])[(())])()]([](()))[[()()[()[][[]((([])))[](()[])[]]][]]][[]]([][])[[](())](([]()))((()()()))[][]()((([]))))[[[[](([([[()][[[[](()([][]))]]()]])[[]()[]]([][[()[][()]][([[[()][()[(())]]][][()][()][]()()])([])]])]([])))([])][([()[[[]]()[[]([[([][])]()])]]][[[]][]])[]]]()(()[][])[]()][]()))]][]([[[]]]([[]([()]())(())])))[()]]()[]()][]))([])[[[()]()][[]][]]]]()][[]]]()([])[()[][()([()][[]][][[][[[([][[]])()([][[[[[()][]([[]][[]])][([]()([[[]][]([[([])[[]](()(([]()[][])))]][()])()][])(([][][([][](()))()])([][()]))([][[][]][])())[]](()(()[([]()[()()([][]()[()[((()([[]])[])[[[([[[]]])]][[]]])]([[()([])[]]](()([[]])(([[()]([([[()()[[]([()]()(([]))[(())([]([]([])[]()(())[](()))[]())][]())[]]][()[]()[]()][]])][])])[]([]([[([][()[(())][[](([()[[()[]][[]]()]])((([][([[()[[()[()[()([[]])(([])([()([])]([[[[[]()[][[[[()()[]((()[([])()()])[]())]](()()[[][()][[[][]([(()())[]()])()][[[]([([[]([[]([()([][(())[]]())][([[]])()])[()]])][[][]])()[([[]()]([][([[[]]([]())])[()[[]]]]))[[()[([([[()[[]([])(([([()][()[][[[][]]([]()[][()()()[][()]][])[[()(([]()[()][])[]([]([][][(()()[])(([[]()[([[()[[([]()[])[[()]]]][[()([[[[[[]](([(((()))[[[(((([][[]]))))][](([]))[[][]]]][([[][]]())(())[][][]][]())])[[][[[](())[[][()][[]]]]][[[()[]([(([]([[](([]))[]](([])))([](())())())(())([]()))][[[]([])]])()()()]]()]])[()]()][([[()((())())()[(([])())[]]][[]]])()]()[[()(()([[]]))[[]((((([](()[]))))())([]())([([]()(())(()[[([][(()([()[[[]][]]][]()[[([[]][[[]]()])[[()][]()]]]()[(([]([][])(()()))()[[]][])])[[[]]][][(()[[[()]][]](())[()][[[()[[[]]()[(()[[()(((()))[[]()](()))()][]])][]][][([])[[[]]()]([[]][][]())]]]])]((())()()))])()[[[[]()()()()][([()[]()(()[()][])[[()[]()]([](([])())[]()[][()](()[]))[]][][]])[([[][(()([][]))[[[]([]([][(([()][[]((((([[()([((()())()([()[]]))[]([()[]()([()([()[]][]((())(()[[()[[]()][([])()][]()](([()([][()()()][(([][[((())[](()))]])([]))()])]))]([[()[]]([])()]))()([()](())([[()](([()[[][]()[[[(()[])]]][[()][()[]()]]([]([([][]([[()]])([]()([]))([])[[]][[]])()][])([][[]([()])[]](())))]])((([(())[]()()])())))([()[()[]](())])()(()()[][[()]])])[])))()[]]())[]])])[]()]])))()))][]))((([()]()[()])[]))()[]](())(()())(())())([(())([]())]()(()[[[[[()]][(())]((()[()[]]))[[[[[]][[][[[]]]]]][][(())[]][]]()()([])]()[]][][[][[[()]([])][][[()([])][]([[[]()][]]())([]())(())]]([][][([]([[([[[][]((()(())))()[[[[]()][](([]))[[]]]]]])(()[])]()](())())()([])[][]())[]()(())][])]()]))()([[(()([()()()[]]))[]]([[[[][(()[]()[[()()]()])[(([]([]([[]][]))[]((()([[[]]()[()[()[]()]()]])()))[([][][])()]()))]][]]]][([])])[](()[[][]][][](())([()]))[][[[]][[[]]]()(()())]])[])]()]]])][](())[()]]](()[]())]]()[()[[]()]()]][])()([()]()))()](()))([])[][(([]())(())(())([[[[][][()]][]()][]([]([])([])())[[][[(())]]][[]][[]]]([])))[[([][][()[]()])[][]][([][()])([])(([][([[()]]()((([(())])[[[][([]((()[])))][[[()[][]([]())[[]][]]]]]()([[]()(([]))][]())])(()[[[][][()()][][()][]]()]))(([([[]()])]((([]())[[]])))))(([(([()])(([[][][][]([((([[[[](([[]([]()()[])]))[()()()]([[()]([[]]((()[](()[]([()[[[][[][]([][[]()[]])()]](())()]][((()()[])()()[])[](([()[([()])()]])([])[[()]][][[[((()([[()]()])[][([([])])([])([[[[]]([])[][]][][[]]])]))]]((()[])[[]])]((([()])([[]]()([[][]]([()(())][]))()[]))))[[]()()]([[[]]])[[]()]])[][()[][]])()[([])[(()())]()([]([]))()[][][][()]()[()]]))())[[()[]][]]])(())()([])]]])(((()([])))[])))])[(([]()[]))[][[]()][[]([[()[]]])[]]](())[]()])(()((())))()))]))[(())][[]]]())([])([(([](()))[[]])]((()[]()[](()[[[]([])[][]]]))[][])))[([])]]]()()][[][]()]([[[]]([[[[]]]][[]()][](((())[](((([[[[]([()[]]([]()))][[[[]]]]][()]](()[])([][]())()[[()]])()))[()]()))(()[][]()[()[[]()([()][()])(())()]]))([](([][][]))[][])[])()[](()()()(()))])[[[[][(([])([]()[]((()[])))[]([][[]()(()())]))((([(((())()()[([[((()([])[][[]][][]()([]))[])][][[]]])[[](())()][]()]))[()[[[][[]()[]]]]]][])))[[]]]([](()[[][]])([()[]()][[([()])[[[]]()[()([][([([][([()(()[()]([()[[[[([(()())][([]()(([](()()[[]])()[()([[[()][]]][])[[[[[][[[([])]][]]]]]()()]()]))(([[]])([([](())[()][]([[][((([])))]]))[][][[([][])([[]])[()[]()]([[]([([][([][([()])])((())[][()[][]])][()]()([()(([])[[]][][[[[()[[]](()[(())((()()[]()[][][]([][])()[[[[[([[]][[([()][()[([])]])([])]()[]()([[]]([]([][][[]][]))((()(())[]([()]))))[()[()([]()[[](()[[[]([(([(()[])][[]])[[]][[][]][])])][[][(())]]()([[(([][]()([(((()()))[[[[]]]])]))[])[]]()[([()])][[][[]]]])])])]([([])()])]])([(())][([])([(())])]())([[()[]()]]()[]([[][()]()()[()()][]]))]]]]]))((())())])([]((([(()())[]]([]()(()([]))()())))[]))[[()][([])]]]](())[()]]])])[()]())])][])]][]][[[[]]()]][][[[([][])]][[()]]][])[]))])([])][]]()]((([()[][[[()][[]((([()()])))]([()]())[]([([])])][[[]()]][]]([[]]())])[([()])()[[][]]]))]()])())[][[]][]][])])[][]](()()[][]()[][[[][][((()[]([[][()]()[(()[(())()[[[]()()[(([()[][[[(()[(([])()([]))])[([][()[()]]()())[]([]([[[()[]()]([[[[[](([]()([[]])))()]([()([]()[][])[]]())[]()[[()[]]](([()])[()][]([[()[][[]]([((([]()([[([])][]([([[()[()[[()][[]][[]]]([]()[[]])]][][[]]()])[]][[[]()(()([()])[])][]][([](([(()()()(())()())[()(([()])[()][])[](())()[]([([(([[]])()[[]])]())([()](())(([[]]()((((()())))[]([()]()[(([()](([]([][()(([]))][])[]))))])([[()[]()()((()([]()[[]])))](([][])[])])[]))))[]]())][]]))([[([][])]])[()()]()(([][])()))(((())[()[()()]()]))])([(()()())[]((())(()([]([])[]())))([]())(()[])])[(())[[][]][]]](()()[[()()()[]()]()][[]]))))([[()()]()])([()()[()()]()([(()([](([[[[[]()[[]]][]]()]([[[(()[[[()([()((()[])([]))()][()(()())]())]]]((([[[]]])(([])))))[]()(((()[])))()[]([]()([[[()][]]([])([([])()][])][()]())[])][]]()])[]()()][](())()(([()()[]]()[][])[])[]())))(()[[[]()][]])[])[][[([])][[()[[][]][([][[([])]])[](([]([[]])))]](()([]((())(([[[[][[[][([(()[[[]]])(([]))[[[[][[][()]([][(([([][()([[([()]([(((()[]([[([][[((()[])())((([]())))(())()]()[][]])[()([()])([])[]([[]()])()([][][])]]]()[](([])(()))())[[](()[[]])]())[([][])][(()())[([][[][][]])][]](([])()[[]()([])][])()))][()()][]())[])]])]())])())][])([][])([[]][[()]][()[()[]()][]()[][([[]])()()]](()[()[(()[])[[][]]]][]))]]([]((([]()))[()()[()]]()[()[([])[(()[][()(()())([][[][[[()]]]][[](([][[]][()][][[[][]()[][[]][]]]))])])]]([()()[()]])]))]]([])([(((([[[([(()[])[]()])]()()([])]]([[]]()[()()([])]()(([][[[]]])[]((([][()()][][])))[((()[[[([])[]]][]][]()))])))()[][](([([]()()()[])(([()]())[][((([()])))([[]]()())[]()])(()[]([]))()])))(()[]))[((()))[[([()][([()()(()([()]))][[][((()[](())))]])])[][]]()]])])[]()(())([([][]()[(())[][([()]([[(([[]]))[]][][[()(())][](())]([(([([[]]([([])([])])())()[]][]))()[[([][[][((([]())))]])]()(([]()([])()))]][()((()[[]()](([][[]])([()])([([][[[]()((())[]())]])[](()([]))[[]]])[([[]((()[][[][[[()[](())[]][]]][()]][])[[()([[]])[[][]][[[]][()]]][]()[()](()[])[][][(())]])])]))([[[]]]([[]]([(()[])[]]())([][()()][[()[()][[][([][][()])[[][][]()]([]([[]()]))(([()][[[[]][]][([][[[]][[]]][()][])()([(([[()(()[[[()()(()[])]]()][()[[(())]()()[]][]])]([[()]()[][()()[]]()][(()())]([(([[]])[[[]]])([(())])[()[(([()]))][[[]]]]]((()[[[([[[()]([[](([])[[]][[[[([](((([])))))]]([]([()()(())]))]]())][[][[]]])()()(()[][][()])][]])(()([])())([])]]](()((())))[(([(())()][])[])([[][]])]()())[[[]()](()())])))([])([])]))](((([[]]))(()[[]])))([()()[()]][](([()]()(([])[](()[]))([])))))([]([])([]))](())][])()()[][[](()(()([(()())()][])()([]()())[[([][])[()][][]]][(([][]))])()[][[]([][])[[]([]())[]]][([[][([[]])[(()([()])[([[](()()[][[[]]]()([[][][][]]))])[[()]]][[[]()()[]([[()(()[])][[[]]([])]][])]([](()[()]))[()]])()[[([])][]]][][((()([]))[])](([](())[[][]][]))()]])[()](())]()(([]())(([]))()))[(([()[((()()[()([])[(([])([]([]))())[[]()[()][]()]]])[]()(([]()))()()[]()[][[]][])[()]][][[()]()[[[[()[][(())(()([][])()[[]](()[][])()[]()[(())][])][([])]]()[][([][()[[([](()))][(())]()([][()])()()]()(()(())((())()))])[][][]()]]][[()][(()[]([[]])())([()[]]()[]()(())(((([][(([]))][][()])()()[]))[])())()]((()))([][[()]]([()([])()()[]](()))())][][[[]]((([([])[(())]])((()(())(()(()))()()[]([][])([]))(())))[])]]]][]))][]][()[]])]]]](()))[[(()(())[](())[((([][][()([[()()]](()))()((()[]))[]()()][[()[()[[][[[](()(()))]()[[]][][[]]()()]]()](()[[][[()[]()][[[[[([(()[]())][[]])[[](()(()))]()[]]]()]]()][[]]([[[]]])()(())]][]([[]()((([])[]))]()([])))][[]][([[([[[]][[][([()][][]()[()]()[[[]][[]]])()[()]][[[[()()[()]((()([](()()()()()[]())())()[([([[]])()[](([][]()[][([])]))])][[[[][()[[]()]]][][]][]]))()[([])([])][]]][][]]]]][[]]())][[(()([[[]]][(()(([()()(()(())())]())[]))([](([(()[([][(([()])([(([[][()()][[][]]][[](()(()())()((([[][()([([[]])][](()))([[(()([(([()]))]))]])[()][[][]][[[]][(()([[()]](())))[(([([[]][[][[][()][]()]]())()(((()))[]()[()[]][])]([])))[[([[]](()(((()[]([]([([])[]])[[[([[]([[]()](()[()]))[()[[]()([](()))([[(([][[]](((([][([(())]((())([(()())()([()[]])]()[]))[()])[[[()[]()][]]](())])())()))[]))[]]([])])]()[]][]])()]()[]](()(([][])[()][]))](()[()([])([])]([])[])()()[()[]]))))[](()())[][()[][[()[()[[]((()())[[]([])([[[()[]][]][][]]())[]][])[]()[]]]]][()[]]])[[]])[[[(([]()))]][[]][[[][]][[[()[]][([]()[](()))[][]][][][[]]()(())]][()][]][]([][(()())[()([])]])[]][([])]]][[]]][](())]]]])[](([[[()]][]][((([])(([()(()[]()[()])[[]()[[[()]]]]][][]([][]))[()[]()]))(([]()(([][[()]][()][][][([[]])[]([[(()())]]())][])))([](()(([]())[])()[])())[(())[((())[([()])(([[()[([])]]]()[()[]()()([[()[][]][][]][])[[]](())[]]))()()])[]]])[()[[(())]][()[[]]()][][[]]()[]][(())[][][][[]()]([()])])[][()]]()))))[][](((([][](()([[(([])(([]))([])([[][]()]((([])))))]]())))))))])[[()()]()])([])()]())())([])][(([(())]))]())])]))()()[[[()()][([])]()]])[]]))]]]([]()()([[([][]())]]))[(()(([][[]([])])))][])[([]((())[[()[[]()[()[]][]([])()]]])(()))]][](([([[[(([[()]][()[(())([([])])([][])]]()()()))[]]()[]]([([[]]()())()])]([])[[]][((([([[]]())][])[]))])])([()([[[]]][]([]))]()[][[]()[][]([()([[[(()[(([()()()]))][][[(([()](()[]([[]])))[])]])[]]()()([[[]][[][([])([[]][()[[]]][((())([(()()[])[([](((()()[]))([(())[([])[(([[((([])))([[]])]]))()()[]]()([]()[([[([()[][]([][([])]()[](()[()()[][()()([])[]((()[]))[[((()[][[][()][](()[[]])([([][()()]([[][[()]][([()[][]])]([])])())])(([][])[](([]))([()]))]([][][[]])[[]()[[]()](()())[[()[][([][[]()])]](([[[]([[()[[[()[](([[]])[[[(()[][[][[]][](([(([]))])[[]])()])]()[][]]])]][()([])([()](()[[](())()[()]()][()]))()]]](())[()[][]([[[[][()((([()])[]))([[][]])]][]([(())(()([](()[[](()[])]))(())([()([[()[]]()()([[([](((((()[])()()[()](())[((()()[[[]]])[[]][([(()[[]([][[]](())[][[]][[]])][])[]]()())()()])[()((()[])((()[[()][([])()][][()[]]](([(([[]])[])()]))[[]])))()([])]])[][][[]]))()[]((()((()([(([]))][](((([()[][()][[[()]]]([()])[()]]()())))[][])[]))[()()(())((()[()[[]([()][])]][](()))[[()[]()][]([[]]()[()])[]])]([[[]]][])[[]]()))([[]])))())]](())[()])[([[()]])]()])[]])[])([()][])]())][][]][[]])]()[]()()][()][])][()]][]))()(()())]()])[()(()[]())]()()()()())[]][][[][][][[[]([(([[([]())()()]][[([])][]]))[()]])]]]]]]))()[[]]()[]((())[[]]((([])))())()([](()))[[]]][])()()]])][([[([()()()][[[]]]([[]]))((([][[]()()](([])))[(())[][[()[([]())]]()]()[]()((())([()[([]()[()[]]())]()]))()[[][[]][][]]]))]]())]())([])]]()(([](()())[[()((([([()]()(())[([[]()]())](((([((())())])[()([(()()[])]())]([])))[(([[]])())[(([][((()()()[((()[]()[[]])[()[]](([])[])([][]([()((()()[]))])[()])()()((())([([()]((([([(())]())(([])[[[[[]()]]()[]()][[[][[[[([][])[[(()[])[][[]]]]]]([])]((()(([]))((()[[]])[[]])[()(())])([()])[]([]()(()((()())))))[([([]()([[[]]])())])]](()[])[()]()][][(((()))[])[]]]])])[()][][()][])[(()[[()]()()][[([])()]()])])([[[[[[]][]()][]]][[(([[]]()(([])[])()))[([](([][[]([](())[()[][()[]()[(([[]])()[([](()[([][])][][]))[]][](([[]][([((((([]()[([]()[([])](())()[(()[](([]))[])]())]([[][()[][[([])[]](([]()))]()]])))))[])])[()]])))[[]]][]]])[]((()[]))])()[]([]([()()]))))][()[]([[]])]]]][]))])[])[(())]([(())[[][][]]])(([()()])[[]](([])()([]((())[][][[]][]())[[(())]][][[]]([](()))([][])))))]))[[]][([][((()[][[[[]][][()([][][]([[]([][[][()]]()[()])]([[([[()]()()])](((())[])([]()[]([(())][[[[(())]]]])))]([][()[([])][]][]()))())[][()])(([[]])[((()))[[](([])())]()])]]([])])[][])[()[()(())][[[][[]()]](([]))]][[]]](([]()[([[([])[]()](((()([]())))(([(()[()(())]([[]]))[[][[[][[]]()]()]]])()[]([([([])(()()[(([](([[](())()()((())())])()[])[]())())[([][(([(())[[[][([][()()[[]]]()[][([])])([()[([])[[]]][(())]()][])][][][(((()[])))[[]]([[()]](())[](((())[]()[]([()]))([][(())])[])[])[([[]])]]([])]]]))](())(((()([])[]))[])([([()([])((()))(([[(([]()()))(())(([[]([])][()[][[]]]([][]))[([]()())[[]][]][([[([[]()()](((([([[()][][()][([])][]])][[]][][][[(())(())()][]][()((([]()[()()][][()][()][]()(()[]([][][()][])[()[()]]()))[])[((())[](([]())[()[]()]))](([]()[()([])[([])[]][()]][([[[([[]])(())[][]]][]([[][][([])]])])([])([]()()[]([][]()(([(()([]([])[]))(())]))[][[][]]()))]))())])))([[[]]])(((()[]))[])[()[[[][[]][()]()(()[][[]()()][])]][()[()[]]]()]))]])])()][]()]))()[]]()[()])[][]])([[]])(((())))([[[]]]))][]()])[]][[()][()]])[]((()[()])[])([()[][][]](([])))])))])])([][((([()])()))])()())[])]([])()])()[])[]]]([][]([]))))])[]()[][()]([(()[([([])[]()([[]([][[()(()[])()()]()])])[[[()][()[]()]()[][()([(([()](())())()((())([[[[[((())())()()]()[()]][((())(()())()())]][]]]))[]([])()[[]])])]][[][([])][]]]()])])])))[]][]([()[[[]]]])()(((([][][[][]][()[]()((()(([[][()[]]])())(((([[]])[([])]()())()[[]()]))[]))()])([([])][[([[[]][[[()]()[(())]][[()]][]](()[])()[]])[[]([])]([()((())()[][]((()[])(([[()[(([([][][([[()][]])[]])]))((())(())[[[]]()([])]()(((([])))()[]))(((()))())(())]]]()([]))[])))()][([[()()]]())]([[][[][]][][]])[[[()][]](([]))]([])(()(()[][]))[][][])]])([][]([]())))([(()(()[[[]()((([][([()([])[()([()()[[[]((())((()))())[]][()[][]]([]()[]())]])[[()([])]][[]]]]())])(()[()([()][[([])([(([()(([]((()([(([([(([][][]()()))]()()[([()])[[(())][()[()][(([[]]()[(())(()[([][((()))])[]([()()]((())))([](())[]([]())(()[]))])(()())](([]((()[]([]([[]][[()()]])(([]()((([([([()])()[()([][])]])][][(([])()())]))(()))))))()()[()]()[]())([[[[(()[])(()([][[[[][(()())]][([])[[][]][]]](()([][]))[[][[]]][(([()]))]]))()(())([[[(([([(([[[][]]()]([[()][]()]))((()(()([[[]]]())()(()(()(()))()[([]())[]])[]))()))]([])([])([[[((([]())[()[[][]][]][()[[](())]]))()()]]([])()([(([])[(())](())([][])(())()())()]())(([][]([]()))[[([])]])]([]()((()()))))[][(())])(())]()[]))(([])[])()([[(([](())))([(([])[[]([[()]])][[]()[(())]])])()]()(([[[[(([[[[[]]][]()]])[])()]([])[[([[()[](([][(()[])[()](([[[]([])]()(())]())(([]))[()[]()()()[]()()])]((()())[])[]([]()()(()[[]])[[[]][]][[]()]))([[](([[][[(([([][()]([[[][]]]()))()]))]]])()())]))()][]()][()[(()([]))]])(([[]]()())((()))[])[([[]](([[]]))[])][]]([[[][[([[]][])()]]()]])[()]([()])[]][]]()()]]))])]][[](([])[])[([][(([[][]((()))(()[[()(()[][([(()[](()))([[([])]([([[][[[]]](())()[()][[][[(()[]()()((((([(())][])))()))())([[()]]([])[([])[]([][])(([][]()[]))()(()[][(())[()[[[]()](([[][]]))]](()(()[]([[][]])[[](()(([[([](()[][]((([]((())))[([[]])()()([])[]]()))()))[]]]()[(())])))]))()])()][])(())()][][]]()]((()())[()[(([[[][[[([[][][]()])([([[[([])]][[[]][(())][]()(([])[])([][[]()])](()[[([()[([()()][])](((())([]()((()[[]([])](((((())[()][][([[]()[()]][])])[()[]]))[[]]())))([[()][((()()[]()))([])[()[()(())]]([][()])][()[]([])[[[][(([[]]()())([(([[[()]]()])[])][[][]]))]]]]](()[][(())[]([]())])([]))([][()][()]([[[[][([])][[()]][]]([[]()][[]()][([[][]]()()(()))])]])))[((([()()]()([]()))(())))][]))[()]])]([[]][][]([[]][]()))[]([[]([[()[]]])])()])]()[])]([][][(()([])())([[[()]([][])]][[]()])]([])))[][]]]()([(())(([])[])][]()()(()[])(())())()()[()[([]([]))](())][[]]()]]][[[()([][[]])[(()[()])([[[(()())]]((())()([]()[[]][()][][]))])]]][[[()[](())]]][[]]])[(()[])()][[]]())[][]((([])()[([]()[()][()])]))]][[][[[()[[()()]](())][([[[([])]]()][][]((()()(()[]))[])[][[]]())[[[][][]]]]][((([])([(([[[[[()](())][[()()]()[]](())]]()][(([]([]()))[]()()[[]])](()[]()[()]()[[]][])))()])))[(())[([])[][()[[][[][]()]]]]()]]()]()(()([]))])[][](([[][()(([](()())()[[]])[[]][(([])[([()])]([[()]]))])]()]))[]])()])()][[][()([])[[]]()[]]])[[[]()()][[][]]()]][])[[[](())()][[[][([[(([]))(()[][])([((()))])]()])()](([]))(([]())[[[][]]])]]]])]][[]])][][](([]()[])[[]]([]))[]([[]]()[(([]))(([(([][])[[]][])]()))([]()())([][[]([((()([[[()(((([()[[]((())[])]()]()(())([]())[])()[]())))([[[](())[()([()])()][[]()][]()][]]())][]]])())([]([[][]()][()[]])[][[]][]))[]]()[[]][]((([]))))()[[[]()][][()][[()]]][([()])[[[(([])([((()[()()]))])(())[])([])]][]()[]([()])([])()]]][])][])()(([()]()([])([([((()()()[((()))[][]]))(())][]()[][])[[()]]([[[[[(([(((()([]([([[]])([]()[][][]()()[([](())([[(()[(()[])])][]]))[][]])]()()[()([[][[]][]()([])()][[[(())[][]([([]())][([])])]]][()][])[()]()]))([][])))())()((())(([[]])[]))]())[]([[[([])][([]([])()[]([[]()])())]][([]((())([[[]]()([])[]]()[(())])))([])[(([]())(([]))((())))([([[()(([])(([[[]()[[()]]]])))][]()[]()[]])][()[]])]]][](())()))[()()[()](([()]))][[[][][()()][][]]()]][]]]()[(())()[]]]()[[()((())(([(())[([])()[[([()])]]][]()(())][]())())(()))((([(([[]([])()]()[([])]))(())])[()(())]))]]([])([]())])([([()([([](()((()(((((())[[[()[](())((()[()])()[])[][[[(()[()])(())(())][([])[]]]]]]])[])[][[]]()))[]))[]))(([]))][()](())[](([])))[][]]([][][]())[((()[][[[()][]([][[][]])[]]][[]]))])([]())])([[(())()[((()))()([()[[[[[][][[]()[]][]]]()[]]]])]]([]())()()[][[]]])[[][]](([()]))][[()([()[]])[]][]][])[[[]]([]()([[()]][]))][]([]()))[][][])))(()()[[]((([[[]()]](((((()[([])[((())(())[][])[[([([][[]])][[]([])])][][()]][][]]([(()()())]()[[]((()()))])(([]()))])([[(()())]]([][[]])[[(()[([[()]])()])]]([([(((()))[[()[()()(())([[][]()])]][]]())][[][]([[[([([])(())[][]])]]])[[]]])]())())(()()[(((([[([([])[()(([][][[[((())((()[[][]]()[()((([([[]])()][()()])[][()((())([[[][](((()(((([]([([]()[][()])]))([([][])([()[()]()](([[[()[[([()[[[()][]]]()][[[()]][]][([(([[]])(([])))])]()[])[[][]()]][()(([][])[(([(())]))](()[])())]]([])[][([()[]]())()]]](())][])[()([()]())()()[][()([(())]([])[])(())]][()]()[[]()(((())))]))])(([[[[]()]][[([[(([[][((([][()]())))]][[[[(()[[]()][][[[([]())](()[](()[(())(([()][]))][[]([]())])[[[]]][([])][()[([])([][[]((()))()](([[][]])[()[]])(()[[]]()))]])][]][])[[([][][][])[[]][]()[[[]()][][][]((()[((([(())][[[]]([])])[][()])()[(()()([[][[[[]]][]][]]()[[]])[([]())][[[()]][()[]]])])][[]()])(()[]))]]]][]]]([][[(([[()]])(([[[]()]]))())]])]()[[]]))()()]])]()][]]))[(())()][()])()))[])(())[]))([])][]]()()))[()]]())[[]](()()))])))[]([[()][]])()[]]]]([()()[]][])()()[[()[[([][[]])[[]]()[][][]]([([[][([()][()[[[][]()][][()()[]([][]((()))(([]))([((([([[][[[[[]][]][](()([[](())]))[[[[](())]]]]]()][][(())])])))]())[(())()[[[]]][]([(())][()]([([()[]](())[]([][([][])()[]])((([])[()])))])[()()(()(([][]()))()())([[[([(([(())()[([]([()[[[()[([()][])][][(()[[[][()([[][]()([[[]][()][]])()()[]])([])()(())]]][]()()[])]][[]]]]]))[][]()]([])([[([])](())][[()()[[]]()([])()][][(()()())]])]()))][(()(()[][][()]))]())(()[[[(((()[])))()[]](([()]))]]([[()(()[])[([()])[()[]]]([])()[()]()][][]]()()))()]]()((())())([])()][]()[][()[()[]()]][[]])()]([[][()()]()])[]()[[([])]])])][][]]][([[][]][]([([]([]()))()()][[]])[([([()[][()[]](([]))])[][([])][](()([][[]]))()[[[([]()[])]]]]([[[[()]]()]]([]))[[][[[((()[[](())]((())))(()))()]([()])()][()][]()]()]())])])]]([][[(()())[[()[]][]][[()[]()[][]][()()[[]]]()]()[]]]))])][]((()[][]))]][]))](()[[[][]((())[])][[[]]][()](())[[]]])([][])[[([[]])][]]][((([[]][]))[[]][()()])[[](([])())]][[[]][][()[]]])(())]()]))[([()])()][][])()[(()()()[]())[][]])[()]]([][])([]([][])([([])()()[]([()])][[()()]][][()(())][]()[])[[()][]])))())[])[[]()][()((([()][][])[[[()(()[(())])(())(()[][[]([]())[[()[]]]()()([[]()[[](())]])()][()]([][(())])()())([]((()([()[]()()])()[])))][]()(())]()(([[]]))[([]())]()]())()([()]())[])()[][][(([([])([])[[()[](())][[[(([]()[]))]]()]([])[]]]()))]]))())[[([])]][[]()()]())([][[][](())[][[()()()[]()()[[[]][]][][(()())()]()][][][[][[()([[()]()(([]()))]()[()()()])((()()()))](()([()()][()()]))()[]](())[[[]()]][([][])]]()(([][]())[]()())]()][()[[([][])][(())]()]][]())])[][[[]()[([(())[()][()][()]])]](()())]()[]]([][[][][]()(([[()][[]][][]])[()[[[]]([]()[]((())(())))[][][]()[[]]]])[[([]([])[[[](([()()(())]))[]()]])()]][()]([((()))])])([(()[[]])()])[[()[[]]([()])]()([(()[]()[[()[][[]]()([[]])[[[[]()([][])[]][()(((()))()())[[()][()()][[(())[]()()][()[()]]()]]][[][[[]][[()]][]()]]]()[[][([])[]]()(([]))]]][][([]())[[]()[]((()[[[][]([[[]]])][[]()](()()())]()))][[]]][]()][[[]][[]]])])])[]](()())[[]][]]])[[()]](()[((([]())))])(())()[[]]]](()[([][][][])()]([]))()]()]()))()()[(())[]][()][(([]))([][[()][()[][(([()[]]))][]([()[]])][]][][])(([[[]][][][[]]]((()[(())]))))])))()]()()()][]()]])]())([](())[[]]())[()]([])[][])][]))[(()([]))]))[])]))(())[]]((()())()()))(([][]([])(())([]()[[]])))[]()[]([])[]]][[[[[]][]]]])][()([()])])(()[])()()()[])([(([[]][])[])]([()][[]]()()((()[()[]()[]]))[]([(()([]))([[([(())[[]][][[()][(())()]]])][([[]])()][()(([([()[]])]))()][]])()]))[]))[(([]))]][]()[]]()[()()]))(()())[]()][])[]()()([[]([[]()()]([(()())(()()[()[][[][()]]])()([]())])())()]([]()()))([][[]((([([]([]))[]((()[[()][()]])[(([]))][](()))[[]]([[([()([])[([([](())[()])])()[[](())][[[]]([])]]][([([(())])[[]]][])([[([[()[]]])]([()])([(([([[](([])[]([][]))[[](()[()[[[]()[()][]]][([[]([[[][[[][[(([]()[]()[(((()))[][][])])[([(())])(())])]([[[]]()()])]()][(([]))][]]]])()][[[]][]]()()())([][[([[]][(([]))])]()([])[]])](([]))([((()))])([])]()()([])(()[]))]()([])[]])()]))])])])][]]([])()[()[][]]()()[])[([[[[[()[((())[[][]])([[(())[[]]]][()()]()[][([])()[[([(())])][()[]][([[]()])]]()(())([])][]([](((())()([()]))[]))[(())]()[]())](()()())]]]]][][([[]()])[]])[]([[]()()])[[()]]](([][[]](()([]))))(([[()][](([[[]](([])[()()])[()()[[([(()[()][](((()[((([[][()(([[[]]()])[][])]][][])(()[()])[()((()))[()[[][]]][](([()()()[][()]()[[]]][])[([([])()])])]))[[]]][][([][[]])]([]))()([[([[][[(()()[()][][])()][(([][()])())]][]])()[]()([[]])]]()[]([[]][[]][])))))])]]](([([()([(()[])])]()[])])(([[[()]](([[](([()[]](([](()[]()[[]](()))((([](())((([(())([](([])))([[][]])]))[])()))[[][[[][](())([][][])]()(([]))]])[](()))))([[]])())]))()[[()[]]()]()]))([][()[()()()]]([[((([()]))())[[[]]][[[][][]()](())][]]](())))[[(())([()])]][()]())][])[[[]]])[[](()([](([[[()[[]()]]]([][])])[()])()[][[]([(())])]([[]])[])[])][[]][([((([][]([(()())()()([[][([])]()([()[[[]][[[[[]]][]()([])()]][][]][[][([])]]])]())][[[][]]])))(()))[([()])][]])][([[[[]][][[]]]([([])[[[[]]]][[()([[[]()][]([[(()([]))()]()][[](([])()[[([[]])]([])()[]]()[][]()())([[([()([][])()])]()[()]])])()(()()[()[]]())()(([(()([()][]))])[])[]])]()()]]())[[([()][[[]]([[][][][][[[]]]])()])[[]]()[]]()]]())][][](())])())([])])[([][][[[]]])()]))][])([[][[]]])())[][]()[([[[]()](([()]()([()[()()[([]())[]]()[(([]([][[([()([][])]([]))][[[]]]])))](())][]]))[])()])])]())[[]]))()[][][[][]][[[]()]]))[]]]))[][]][]())()([()[]((([][[]()[]()]()()))([[]]))[()]])(([][]()[][]))]]][[]])[[]]](()[]([[]()]()()))][])()()])[[[[([()])][](()()()[((()))([])()([[[]]()])])[]()()][]]([()])[]]]()()())[()]((([(([[]()][[]]))(()[[]][(()[])][](()[])())[][]][()])([[()]][])))[])[[[[]()[()([])()([([]()[[([]()())[]()([](()[()()]()((([])))[]()[][[]((([()])))]))[[[][[]]]([[[[[]()[]][][[]][](()([[[()[]]]][]))[[[[]()[][()]]][]][[[]()([]((([[()][]()[][()]])(([])))[[[]](([]()[[]])[]())[()][[][]]([]()[[[[()][]](())]])])[][([[]]([]()()()())()()[[([()])()[(())([][([])][([][[]([(((()()([[[]]]))))])[(([[][][([][([[][[([[[[]]()[]][[]]][[[[[]]](())][]()[]][([]([[()]][[([[]()()])[]]]))](([()]))()())(([]))]()[(())[()()]]()]])[][[]][][][](())()[[()()](()[([][])()])]])[([([])[]])]]()(())][(((([()()[][]][]()[()][(([([])[([][([[]])]([[()]][]))]])([((()[][]()((()((()[([()][])][[]])()()[[[()()]()][]])()))()()))]()()())(([[]][][])))])[][]())))][((()[](())[]))]))]][()][]()[])()]([([(())[[[]()]][][]([])()([])](((()[()]))[[[]][[()][()()]]])())[]()])[]()[((()[][])()[])])]([[[[()(())()]]([([[[()[]]]()](([[([[()]](())(([[([[[]]][([([([])((()([]())([]([[]])()[[([[()][]([(()[])[(([(([][()(([]))][()]))]))]])])()()()([])[[]]]][]))[[]])])[]])([]()()())[()([(())])]])]()][])))()(([]))]([])])[]))((()[[]])([]))])]()])][(([[][(([([[[]]][[[[(()[()])]]]])])[()[[]]()][(())([(()[])([[][][][[]]()])[[]]])]()(([]())(())[][()]))]([])()]()))]])([][()][][])])(((([]()(())[()()[()]][]))))[()()]((()))]]]][[](([([[([[[[[()]()([[[]][][([()()]()()[()])]][[[]([[[]]()])[(()())([])]]()]([]()[]))]]()[]]()()]())()([]([])[])][]]())]))](()[[]([])()][])][[][]()][([][[]]((((([()()[[()]()]]()[[]]))((([]())[]([])))[]))([])([](([]))([[]]))([()()[()]])()[]([])[()()([[[]](([]()()[[[[][[]([][()[(([]((()[[()[([[[[][[]]()()]()][][[]][()(())[[()()[(()()[])]][]]][]])]()(()[[][][[([]())()]][]])]]))))]])]()()][]([[]([][][])]([]))](())[[](())()]])[])][])[]()])[])][(())[]([](([]()))(([]([]())[[]([][]([]))])))()][]((([])()[]([()([((([([])[]([][]()(())([][]))])(([])((()([[(())()()[[][]()][([[()[(())[[([[]])]]][([])]([[([])]()])[(([[]]([][]))([])(()[](([]([])[])[[]])[[]]))]][]])]][]](()[()[[[]]]])))[()]))))[()[()]([])]])()(()([[]][((())([]))(([[[]]](((())))))(())[]]([])([()()[[]]])[(())([[]]([[][([])([((()[])[[()]]()[[[]()()]])[()][[[]]]]())([])]]))])[]([[[()][()]]]))[]()[][[]][(()([[]][[][(()[((([()])[]))])[]][]([][()][])[([[[]][[[([([])(()([])[()][](([[([[]]())][[[()]]]([[([()()[][[(()[[()[][][[]]][][([()()])]])]]])(())[[([])][]][[](()([]))]][[()[]]()]][]([([[[([]())[]]]]([[][]]))]))]))(()(([([])[()]])()[])[][()][()([()(([()][([[[(((()[(())]))(()))]()[]]][][])]))](()[]([[[]()()[[](())]([][[()]](()))()]])()))][]))([[[]]])][][[[]]])([]([[()[()(((([([][[(()[]((()[(()[])])(([[][()](()[]())()([[[[()[]()[]][([])[(()[])]][]]][(()(()))([])]])[([[]][()(())][(())[]]())[]([[]([])](()))[]]()][[(()([]([[[(()[[][([()])]()[](()[])[([[()](([([()])])[](())([]()))][[]][](()())())()]])()]](((()[]([[(()[])]])))[()[[]]])[[]((([()]((()(([()]()[[]()((()))([()([[([]())]])(())][])[]()()]())[]([][()][[[][([]()[]())]()][[]]([[[][]](())][]())])))()[])()[[]][])[](()([][])([([])()][]())(())[][()()][])())(()))()]]())[[[][[]()]]]([[[]][[]]([][](((()))))[][]()][])))[[]]()[]]][([[(([[([([[]])]((()[[][[]]][]()[])))]([]([[[]([])[([[][]][([][])][]([()][(([])(()))()[(([[][(((())([][][[]][]))([]))()[]([]())]][[]][][](([][[]]([[][()[([])[][[()]]([()]()[])]]][()]))([]))))()][()]])(([])[])([([][][[]()]([](()[])))()(()[()])[[]][(())([])[[]][[[[[]][][](()[([]())][])]([()(()()[][]())(([])([()([])[]][()])(()[[]]))])[[]()]()()()][][()([])][[]]][][][]]()][]([(([[[[]](()((()))((()()[[]])))](()[])([()][[]]())](()[[()[[[()]([][()(([(([]))[()]]))([([])(([([[()([()][[][]])[][[([])[([]())()]][([()[]()()])[()]()[[](((())[[][()[[[[[[[(([][]))]]][]((([])[])[])(()(([()((()))()])()[]()(()))[])]()[[][([[[[([])]]]](()[[]][][[[[]()[([[((([[]()[]()]))())]]()[([])[[[](())]][[]]](()[][]))[[][[]]][]]([()[][]])]]]()))()]][((()[[]][()()([(()[(([])[])])[()]](()()[]()))[[](([]))]][](()())[()])()[()([])([][]()([]()[][[]]))[((()(()(([]())()))()))[]()][]])][[[(()[[]][])[][([(())[[[]]()([])([])()]()[][]()][]())]([[()]])[[[[]]]()]()[]]]()]]()][]][]()]([[()][]])])())[]([[[](([(((())(())[]([]))())[]()](([[][[](()()([])()[])](()())][([])]()[][]())(()()()[()]([][()[[[[]][([])()]([()[[[()[]()()()]]][]][][])[()[()]]()]]([(())](((()[[]()]))())[])(())]))([])[]([]))()[([]()[[[[()]]]]([][[([()])[][]()([][])]]()))])([[[[]](()([[[()[]]]]))()(()[])][[]()]]()))[[[()][]]]][]()[()]][])]()][()()(())]][]]()[((()[[]][([])]))]]([((()))(())]))])[])()[([()])[([])()[[]()]][]]()])])()[[]]((()[][])[])]([][[]([])()[]])()]()]()[]][](([[[[]()(()[[[()[([([])[]][[[[[()(([([])]))(([[([[]])]]))[()][[]()[[[[()]]]]][]]()](([(([])[])]))[[]()[][][]](()[])][[([])]()][][][]][[]()]])]()](())]])]]]()))())[[((())())[]](()(([](([[]][([])[]][][[]]([[()][][]]))()))(([][][[]][])())[[[]]]())()[[[][]]]([]))])[])][()()]))())[(()()([[([[(()((([[][]]))))][[[[]][][][]([]([(())][]))([([[([])]][])[]]([]))]([[]]())]()][])]])(([]([[]()]([(([([[]])])[]([]([])[[]([()])[[(())[(())[[][]]]]]][][](())))]([][()]))((())[[](()())]())))[]())())][(([[([])]()]([])())(([((()([][[]][()]())))()])()()[][])([[]]))][[]()[](()[])()((()((([][]([(([])[[[[()]()[]]][[]()]])])([][[()]][[]()][[([](())(([]()[()])[([()[]([[]])])()[[]]([[()]]((((()))[[]()()[]()([[]]()())(()[])[]()])()(()(([()[[()[]][][]((()))([])]]))))())[[([[]][](()))[][][]([]())][]][[]([])](()())]())(([])[[][[]]][]))([[]])]]([][][])[]([][()[()]])[[][(([][[]][]))]]())[][()])[()])))([](()))()[([()][][[[]]]([][()][](())[([][()[()]])]()))])]](([([])[[()]()][]]([()])()[][]))]])[[[[[[([][][(())[]])]]()]]][]])[]()]))]][[]][[[([]([()()](())[])([[]]()[()]([(())([][[](())(((()[])(()(())))())])]([][()[[]([])]](()()[()]((()))(()()[])))))[])[]][[]][[]]]([[[[][[()([])([])]()()][]]]][][()])[[]][[[]][[]][]][]])])[[[][[]]]]))()()[]())][][](([])()[][((()([])())[][])[]])][])[[]((()[[[]()]([[][][]](()())[([])(([[]()([])[][()()[]]])())[([][])]]((()[])[])[[([(()(([])[]()()))[[()(()([(())]))([((([]()([]((([])[[][]()()[]][()]))[[][]]))[()()])[])]())(())]]])[(([([])[]()()()])([]))()([][()])]()]])[]([](([[[[[(())[]]]()([(()[](())[[([[[()]][[[]]]][(())()([]()([])([][])[])[([])[[[((()[[()((([(([][]))([])]()[])[][])())()()]]())()()[()[]])][([[]]([(()[])]))]][[][(()(()[[[[()]]]]([[][()][]]()([]()[[]])([()])()))[][])[]]]]]])[[[]]]()]])])]([])]([()]([](([()()([(())])][(([[[[([([]()())[]()][]())][][[[(())[](()[])()()]][[[][[()]]]()[(()()[[]()()()][[]])]]]()()()]([])]])[][()[()[][]]])][])([]))[()()][(()[])](())(()[()]))([])()()())])()))]))[]()]])[][])[]([()])(())))]][]])([]))]][[][]][[]]]([])](([][](())())))()()](([([]([[]]))][]))[]]))[][[][()]]]]))()([[]])()[]()([][])([](((()()())([])())()[[]]())[][()[[[][[[([][(([[[(()[[()[[[(())[][]()]]([[]][])(((()))(([]())([])()[[][[()()[]](()[])]][][(()(())[()][((()[]))()()][])]()(([][]((((()))))))))[()]]]])[()]]]]))]())]]][[]]]][([]([])()[](()[])())([][][([][][()(([]))]((()()[][][])))[()([])]()][([([[][[]][]()][])()]()()[[]]()[([()][()][])][([[()]])()][[][([[]][])[()]]()]([([]([[[([]())]]][[[][[[[][]((()[][]()))]]()]]]))]))(())[[][[]][][][]]])()][]()][()((()))[[[(([])()[()][])][][()]]()[][([])[][([]()[][[]][[][[]]])[]]((()[[[]([](())[])()]])[])]]])()[][])[](()[]([[()([]([]([])))]][[]()[]](()))()))]]]())[[][()]]])]][(())]([[]([([()[[]()]])[](())[[]][([([][[]])[((([][[]()][[][][]]))())[[[]]]([][]()[[][]][]([]([[(((())))][([]((([()()]())[][])[][(()())[](()[[]]([[][]])()[([[(()[])(([()])[]())[]]]([]((([][])[([][[]]()[(())([([()])()()(()[]())])]()()([][(((([()][])())[]))[]][[](([]))()([()])][][()[](()[])[]])([[]](()[((([[]()(()[]()[()[]])[[][][]]](([][])(([([([]())[[]]])[[()([()])((()(()))())]]][]))[]()[]))([])([[]()][])))[[]]][])))()[[()[[]([[()]])[]]([([[([[[][]]()(([])([[()[]](())()][()]))[()][]])][]([])[]])[]([])[[()[]]([][][][([]())])[([[(([])[])]][]([[][]([[]])])[[]])(())]][([](()([]((([][][])[[](())[[()[]]][()[()([])]][()[()]]][[][()[]][][]])[]()())[])([[(())[[[]()[][[]]()]()]][((())[[][]()([[[()]]]())])([[](()[[([][(())[(()([]([[[()()][]([[([])[]]][])[[][][([[[]()][]]([[(([])[])](()(()[]))[(()([])()[[[(())[()]]]()])((()()))]][()(()([()[[()[]()((([(([]))])()))()()]([((([][()()[]])([[[[]]]][][]([]))[])())[(([](([()]))[[]]())[]()[])(())()()([])][]]()[]())]]))(([[(())()([[[]([](([[][][[(()())]]()((()[((([]())[]([[[]][[()()([])][[]][(([]()[()][])[])((()[(())()][]))]]]))[]()()[[]]([([]()[]()()[])])()[[]][[[]]])]))()[()[[[]]([])][][](()[[]][(()[][])[][]]())]][]))[])]])([[()[[]]()(([][]()))]])()[]([()])][]]))]()))()()[()]][[]]]]()][])[[[(())]()[]([[][]][])](()()[][[]][[]([([]([()][]))][[]][()]())][][[]((())[(())][]([[][[()]]]))]([(([][][()][[][[]([][([(([[()[[]]()[]((()))[([[([(())]())[[]]]][([][()]()[((()))])()[[]]][](([]))[([][()])][[]()[]]()()())][[][][[]]][][][[]]()][(()())][][[]()][]][(())]))()])(([]))[][]][((([]()([][()[]()][]()))))])[[()()([])(())[]()[][][][(([])[([([]())])])[]][]]][]()]]([[[]]])[][][]))][[[([((([])([[[([[[()]]][()][])([])()()]()]])()()))[]](()[[(()[([]()())])]][])())(([]))[([()][()([[[[]]]])([[()]]()([][][[]]()([])))]()(())[])]]()[[][][][[]]()[][]][](([[]()][[]((([()][()][[]([([])])((((())[])([[]])(()[[(())[[]]]][])(())[[][][][]]())[()](([])[((()[][]))[[([([[]]())])][]]()]()))[[]()(())[([])[[]]]][[(())]]([[[]]])])()[()])[()]())[]]()()()))(([][]())([][()[]]))]([])]))]([[[][][[]][]]()]())()[]([]))(((([((()[([[[]]])]))([()])]))((())[][[([[()]()[()[]]][]()())]()]()))()))]]())][]()])([([][])])[]()])()([([][(([][]))])[[]([][[]]([]))]])]]))[]()())()]][])]]][[([()([[[()]([[]][[[][[]()][]([()])]()][[]][]()[]([([])][[[]][[][(())[][([])][]][[[]]][]([])[][][[()](([([][][])[([]([[()]([([([])][[([])[][][[[[][([([])][](([[][[]](([][]))][])())())()]]()[]()[]][]]()]][])[[[([])(()[()[]][]([]))][[((([][])([[([])([][]()[[](([][][]))(())][]()[[([]()[][])]](())[])]]))[[([[]]()[])[[[()[(()[])]]()]]()]]()[])((()))[]][()]]]]()][])[[]]]()()(()[[[]]]))())]]))([])(()[])]]][]))[[][]]()((()))()]][][])()((()[])((())))])()]][]))))][[]])(())[[[((()((((()))))[[[()[]][][]()]([])](())()[(([()]))][])([()][()()()])[](())(([][]()())[][]))[]]([][]())[][]]]]))[][[]([()])([[]()[]]([()[([])[(([][([([()[[[()]][[[][([([[()]])][()][[()(()[])]])]]][[]](()([[]([([(([]))[[()]]]()()[][][][][[][[[][](()()())()[](([[[](())]]))]()([[]([()()[()]][[[()[[]([]([](())())[[][]([])[]]()())]()][]((()([])())(()()[[]][](()))[](([[()[]]])())())()[()()()[()[(([])[][][]([([([[()[]]][][]([((()[]())())([]())]))[()[()[]]]][[]])])([[]][(()())])[()(())()][([()([[[]][[[()[[[]][]([])()]]]][][]])](()))[()]()]()()(([]))[])[][(((((()))()[[[()([])][[[[([])]]]][]([])()[][[()()[]]](())]])()))()]]]]][]])[([[]]()[([[()]](()[]))[(([[[(()[])][]()]()]))][(())[()[][]]([()]()[[]])()[[[[]]()[()]]]()[][]]])]])][[[][[]]]]]()([]()))]())][(())][][]([()])[]))[[][[[][()(())[([][(([][][[[[]](()[])[]]]))])]]([](((((([[(([[(())[[[[([[]][]()[(([](())(([[()](()()()()[])])[]()()[])[()])[[()][(())[([](())([]()(((()))(()[]()[[([])](())[]()[[([][[]()[]][]()[[][[([][](())[])][]][(([()()])([])[([][[[][[]([[]])]]])])[()]]][((((([()][])(()([[]]())[[[]()][]([])]()(([[]][[([[]()(())])]]())(([[]])([[[()[()][([[()]])]][][[[()((()(()[])))(())][][[][]()]([][(())(((()))[[[([()][][((())[])[((()())[([])(([(([]))][]([()])[])()([][]))])[()][][()(())()]([([[[[[[[]]]()(())[][][][]]]()]()])()[()](())]()[](()[[[]][[()][]()]][])()[])()]])[](()[()][[]])]][]][[[([]()[])[](([])([]))]]()])][])[[()()]()]][][()]]][[][([[][]])](()[()])[(())][(()[()[[[[]([])([][()])](())()](([]()))[[[]]]]])(([][()()[]]()[][])[[(()[]([][[]]([])([])[[]])(()))][[]]([[()[]]])])]]()])))))[(([()[]]))[([]([][[([()[]])(()())]])(())[([])[]][][([][][])]([[]]))][[[][]()]([][()])]]())[[]]))]()[])[]]([])]]([[]][]()()(()[])))))[()()])]]([])[[((()))[]](([]))]][[[]]])[][]]())()()][()][([]()[(()([][[[]]]))][][]([][[]][()(())[([[[()]([(()[])((())[][]([]()))(()()())])]()])]([])()][([]()()[])][[()]()]))]([[]()](([([(([])(((([[[()]]([[]])]))[])()))[]](([()][[()](((()[([])([])][]))()())]([][])))([[([])]()[[[]][]][(((())[])[])[[([[]])[]]]([])][]][()[][][]()]([[((()))[][[()]([][])()(())]]]))[(())([])]())]))[][[][]](((())[]((([[[[][()][][[[][]][[([])[]]][]]]]()[[]()[](()([][[]]([[()]([([[][[(())]]])])[[((((()())))())]()][]])[([[]]([()]()))()][([])()[]()[]])[][()][])][[()()]()][[]()][][]])())())[[[]((()))][()()([[]][(())])][][][[][]]])(([]([([][[]][[]]())])((())))()())[(())[([])[][()(())]][]](([]([][][[]()[[]()()][]]))[((([][[[]]](()(())()))))[[]][[]]()][((()))])))]()][([[]])](()[])([[[()]()[[()]]]])[()[][[]]]]]()(())][([]((([[[][()]][[]]][(()([]([[]()])))([[[]]](()()()()))])[[]]([])[])))()[][]][])([()((([()[[[]]][][()()([()[()]]()[])][]])(()))[[]([][](()[]))[]][[]([(([])([[()][()]()([[]]()())]))]()[]()[])](())()(([](([])([(([()])[]())[([(())([()])])()()[]]]()(([()([()()])(()[])]()((([[][][()[]]([][][[[]()]]([(([([()()]()[][])()])[()[]][])[[(()[[(()())(()[]()[])][]])[[[](([](([(())[]])([]()[][]))()()))([([[]])()]()(()([]([[(())[()]([]()())[]]()]))))[[]]]][]][]]][][()])())[]])[()]))))))))[[]]())[[]()]()]))()[]][]()[]])(()([][]([[[]]])())[[[[]]]]))([]))(()))[])()()[((()))()])[])]]]([()]([][][[][]()([()([]()[])](()))(())[[[]][][]][()[][[]]][[[[]]((())())]]][]()))]]([()]))][][][])])[]())](([])()[])][]]((([((([[[[[[([])]](()[])]]]]((([])[[()][[(()[[[][]()(()[[[]([])][[[]]()]])]][([(([()][[][()()[()(([])())]][()]]([[][]])(())))])][([()])([]()(()[][()()([()])]))][[]()(()[(())[][(([]))][()[[[[[[()]]]]]]()[]]()(()[()[([[]()()])()[]][[[()]]]()])])][[][]((([()])[()[]][]))])([])[]]]([])][](()))(()()[[]()()[]]())))))(([(())[[]([][]()([]()))[][([])]]])[([])])[[]((()))]()])))[()[[]]](([[]])[][])()[]))[]]]][][]([]))))]()((()[[]][[]](((([]()[([][][])])([([]()(())([()][]()))[][]][[[[]]]]([])[])((([([(([()]))][([[[][]]()])][])()])())[[([()](())()[][[[]]][][[[](())[[]][()([([[]]([])(([[]](([[]()])))()[]))])()[()][[]()(([][()[]][]))]()]]][])[][]]][[]])()[]([])))[])))(()[()]())()][[][][()]])](([[[([[]]()([]()[]()[]([])(()[])(()(([]([[]](([(((())))]())([[([[][][]][]([(()[][(([(()([((([[](([]())[]()()[][[]()()])[[][]][]])))[][[][][][([[][][]])][()[]][]]])[()()])][]()()[](())[[()[((()))(())]]]([])[])()([(((())))]))[[()][]()[]][]]())])())]])(([]))))[[]])[]([][])))(()([(([[]](([]))([])[[(([][[[[]()((()()()))]]]))(()[[]])()[([(())])]([])[][()]][]][([[[](()())]()](()[]))](())))])[])()()([[]([[[()][[]][()]]])[][([[][(())()[]]][[[((())([[()][[]]]()))]]])](([[]]())[[[]][][]])])[][][()([(()())(((([(())](([]()())[])[][([[[([()][[()]])[][]][]](())])]))[(()([[][][](())[[[()]]]]))]))[](((()([()(())[]])[([[(([(()[()[[]]])][()([(([]())([][][]((()()((()(()())[()])[[[()()]]]))([])[[]])))[][]()])()][([][[()][]])]))()]]()[()](((([()]())))([][](())([[][[()]]()[]]))(()[]))([])([]([](())[])(())[]))(())[](([][[]]))([[()[]][]][])[[]]([([([][]([()])([][]))(([](()(([][[]()]))([()([]([[][][[]][[(([()][][[()()]])(()[([])]))[]]]()](([])(([])([])))))]))[(((()))[()()[[]()([][][])]][])[(([[]]))[]][(()[()(([][]))])[]([[(([]))[(())]][()][[[]]][()[[][][][([[[[([]([])[])]][]()[[]()()[]]]])]]]([[[][][][][[][][]]][]([([])()[()(()[](()[[][]]([])()()()[()[()([]([()]))][]](())[][()([[()[(()[]())][[[([([]()(()))])]][]()]][]()](()[]))([]([]))[]([[[[((()()))[[]]]](()(())()()()(([()]()[])()))][[]([[]()()([([]()[]()[[][]])](()))])()()][()]]())()[(([([]()())()[()()()]][]()(())[]))]([]()())[[([[(([]))][()[]]])[([()()([])][])[(([[][]]))()([]())]]](()[]()[()[[[]]][()][][[][]][[()][[([])][[[()[[[()](())([(((())))][[][[]][][]])](([[[]]])[(())([[]([])()])[]][()()[(())()]()[([[[[]]()]]()())[([])]()[[]([])[][]]][][[()][]][()]]([])([]))[[][]][()]][][[(()[])]][[]()[]([][(()()([[][[[[][()]][[]]]]][]())([[]()([][](())())([])[[]][][]][[[][]]][[(([[([[]])()[[()]][([([])[]](()))[][]][]]](([][]))[]))](())()[][](([]))])[])])]](([]))[]]]]][[]][[()[[[]][]([])]][][[]()][]]])]]))()()[()]([[]][])]]([]))])()()][([[]]())])([]([(()()())(()((()[(([[[]]()[]][[]])[()])])()[[[]][[([([](()[][()]()()[()][[]]))(([]))][[[]]([(([]))][([])[](())(())](()()[[][]])()[()]([][]))[[]]]([][([]([](([[[][[[()([])]([[]([])])]]()]][[[]([](()))][()]])[()](())([]()[[[]][[]]([()()()](())(([][[]])((()[])[]())([()[[][]]()[](()[]()([][])())[[](()(())[[]][])]]([()([([([(([]))]())()[][[[]]()][][(()(()([[(([])[()[][]](([[]()])[[]((([])([[[(())]][]])((())))[[()([][[][()]][])()([])]][])([])[]][([][][([]())[]([()[]]()[]([]()[][]))])[]])[])](([][(())[()][[()()]]])())][]()))([(())[[]][()([((([]))[([[][[([[][()]])]]([[()(((())))()[()((()[[]])([([])][][((()[[([((())())])()](()[])(([]()())([[][]])()()[])]()[([()])(()(()))]()))]((())))[[[][()[([])]]][()]])]]])])()](([[[[[]()[(([()[[]](())][[][[[]][[]]]]()()[[]][]))][]((())[]())[]([])()()][()[]]([[[][]()(()[()()([])])]()[[[]]([](()))][((([][[]])[[[]()]]([][([([]([[]()]([[][[(()(()()))]]()])([[]([])])()[[]()(())]))][[((())([[]](()()([]([()]))(())()([[()(([((())[[([])()(())[]]])[][]()])(()[][])()[](([])[]([])())[])((()(([]()()[]([[([[]])]([])]))[()])))][][][]])([][([])()]))))]])])(([()]))()()()()()))(([[][]])[][]())([])(()[[()(()[][()()[]])([(())[([([([])[((()[(()[])]))][()[]]()(((()[]([[[][]()[]]()[]([[[]()([])[]([])][(())]](())[([])])]))()[([[]]()[[[][(([]))][[(()(([][()[]][]())))([[[][]]]())[(((([[[[[()([]())(())[(([(()[])([]()()()()([()(([[([][])]()]()([[]][]()([])((([[(([]))][()]]()[])()[])((()))()[[]][[[()][]](())]()[])([]))[]()()))([])])())][[]][[[([])]()[[[]]]]])())[]]][(([([])]))]][[]][(())[([]())[[]]]]][[[]][]][]][][[[([()()()]([()][[]][(([[()][]]())[([()])[()()]][()]())()])())()[]()]([(((((())))))][]()[][[([][[]([(()(())[[[]()[][([][[]])]()[](()(()[]([[(([][()[([])((()))]])()[[[[]][][[()][()]][([][])][]()]()]()([]))()[[]]()]](([[]])[()[]])[][][[([][])]])))]][[[][][(([]))]]][[][[]]([][(([[[]][[[]]]]))])[[]]()][])])[(())]][][([][[[[[]]][]()][[()]()][]((([()]))[[][[][()[]]([(())][[[]]()[](([])([()((([([]([][([(())([[([(())[[[[]()]()]](()(()(()))(())[])])[]()[][[()][](()([])[[]]())()]]()()])])[([[]([[]])])]()])([()(((([([[()(())([()[][[]][]])[][]()]][([()][((([])))[]])])[](([]))[()[()][]]](([[]()])[])))()[]))])[[][]()[[()[]]]])[][]][[]]))())]))][][[()[([])[[()]]()]]][][(()()(([(())][()[][][]])()())([(([[]][[[()[()][[()]([()[]]([]()))]([][()])(())[([])](()())[()][()]]]]))([])][([[()()]][][]()()()(()[]()(()))[])[](())[[[([]())]]()][]()[]])[(([[[[[]()]][([])]]][][[()]]))(()([])[[]][])][][()][[[]][[()[([])[([(((([()[[(())]][]])[()]([[[][(()())(())]]()]([]()((()()))))))())])([[][()[]()]])(([]))]]]()]])](()([])[])[])]][[]()])((([]()[])[]())[])]()[[[()][]](()(([([][[][]]([]((([[]])()[])([([][([])])[](()(()([])))]([[([])]]())[()[()]]((()[()])())))()([()[()][]][])[()]([]()([()][][]))())[()[()]][[]]())[][][]]))[[]])([[()(([[]([])()(([[[]([[()[]][[()]]]())](())[][]]))])[][])]])])[]])]])][]()([()()])]]))))]]((()([()()](())(()))()()[]))]]])]()))])([()[()][[([][()]())[()()[]]()()][[]]([[[]([])]][])]([[]][])])]()())[]()]([()])][[]])]]([][[]()]([(())[()][]]())()[()](())([][]))[(())][[]][[([()])[([]()[][])]((()())(()()(()))[()[[()]()]][])][][([([]())[][[[]][[]()]][]])]])]])(())][]](()())])[][[]])())][])]()])([]))][]]()[](()(((()))[])))[]])])[])[[]])[[([]([()[()()[]([])[()()()]]]))()]()([])]()([]([[]])([()](([[]]))([()([([]()())])])))[]()([][]()))])())[[][]][][()([])]([][[][][]])[(((([[][[][(())([][([[()]][])[][()[]]])]][]])([([([(([])[(()())(())])(()[((()))])()(([]())(()))()(()([(([]))]([])(()())))][[]()])[([])]()()[]])])))([])()[([[][]([])[]][((()[]()))]()[[()][][[][(()(([[[(()[([[]([([])[]()])([(([]))[(())[[[]]([[[]()[]()]][]())(())[[]]()]]][][])[[][][]][()][[]()]([])])])[][]]][()([[][([(([[]]()))])]()[(()()[[]])[]][][](()[()()(())(([])([()]()))()])])[()]([[]]()()()[])(([[[[(([]()(([][][])[()()([])[[([])[]][[[([[]()])()]]]]])([])))]([][([][]()[])[()]([[][[[]]]])](([])[]))]([[]([[]()])()][])[]((())([])())(())]][[][]]()([[]()]((())[([()])][])))[][((()))])]]))()[])]]])]([[]((([([()[[]][]()()])((([][][][()]())[][()][([]((([()])[([(()[(()()[((())[])([[][((()[[]()][()(())]()))[()[]]([[()]])[][()]]])][([[((()[[[([])]]]())[])(([])[])()()[[()]]]])][])])](()()(())))][]))[(())[]][])[[[]]()()[[([((()))]())[[]]()][]]()[]][]][[]]))][()[[]][]]))[[([])[()]]][]())[[[][()]()][[[[]][][]]()]]]))][](()[]))[][])][])[])()[](())[()][]()]]]))]()()))][[[(([[](()())]))][[()]]]]][]([])([])()[([])]()))])])[()]])[]))][])])[])()]][]([()[]])]()))]())([()(())])[]])][]]()]([[(()[])[][]]][[][]])[][][]())())([]))])()]()])[])[]([](())))[]])])(()([]([(())(()[[([[][()[[]]][]])]()])]))))[]([[([][()([])[]][])]()])[(())]]][[]])])])][]][()][()]]([[]]())]((()[][]))]()()((([])()()[](([][[[]]]))))(())[([[([[][]])]])]])[]([](()))())))[[]][])]()][[[()([[[]]])(()(()))()]]]])])[])](()[][[]]((()()[[((()[][[[][]]()[()]])([]()[])[])][[]]()(([[][()[]()]()])())[([])]])[][])()[][((([([([]())[(())]]()[](()))]))[[[()][([]([(())]())())[[([[]])[[(())][[[]]]()]([[]]()[(()[[[[]]()[][[][()]][[]]]][]())[]]((())()[([([])[]]([()([[([()])()[][([[][()[[[]]([[]])[][(()())([[[[]([[]]())()[[]][[[([])(()[[()[]]])()]]][]]][()]](([[[([()])[(([]))()](([[(((())))[()]([](())[[()()[(([]))[[]][()]()([[]()[][][]]()(()))()(()[(()(()[([[[([])()]][[([[]([])][()([[[]()]]((()[(([]()))][]))[][[[[(()[(([][]())([]))[]([(())()])()()()])()(((()[])([])))]()]([[[]]]((()[]([([(())()[][()]][[]()[][([]([][])())()]])([][[[([]((()[[()()]])[][()]))[((())[]())()]()()][]]][(()([()](())[]))][[[([])]()]])()][])))(()[])[[]])[()][[]][([][[[][()[]()]()]])()()[([])]([][][][][[()][(((()[][])[()])[])][()](()[])((([])[]))[[]][]]()(()([])([()])))]][[][()()([[[]](([(())[[]][]])([])())[][[]][](()([]))[]])]][]])[()(())[]]][])][]]()])[]][(())()][([[]])[]]()([((()[()][])[[([])(())[()[([]())]()][()()([]()[][[]])]]][()][()([([()(())][])[](())[[((((()))))[][[()]]()][(()())[]([][][][]())]]]())[()[[()[]()[((()([([(()(()([][])()))[]([][(([[](([()[][][[([(()[])])(()[()()[([](())[[]])][]()([[][][[]()]])])][](()(()()))[()()]]][])[()()])][]))[]])(()[])[[][]([])()((([][[[][]]()]([][[[]]][][()([])[[][]][][()][][]]((()([(())][[][[([][[()]](([(([]))()])[]))][]]])[[((()))[[]]((())(([()]()([([()[[()]]][]([])([([[]])[([[[[[[]()]([()(([[][]])(()))](())[])()[([(())[[](([([()])]))]]())()([(()[[()()]])])]()]]]])](())]()))][(())])((())[]([[[[]([()[(((([[()([()(())][()[]])()[]][]]()(()[[([[[](([][[([()[()]()])]]))]])[]][]([]([][()([()][[][()](())])()([][][()][()][]()(((())()[[][[]]]))[])]()()[]([]()([((()[((([(([()()])([(([]))])[[](()[([()[]()][(()((()[()][]()()[](([[]]())[]))[([]())()[][[()]][]]))])([([(())])](()[([[([(((((((()[[]])[][()][[]]()())())(())[]())[]))([([[]][]()[][]()())]()())[])][([](([[][]]([][]))[(())]))[]])[(()([(([()(())[]]()[]((()()))[]))[]]))]()[([])[][][]()[[[(([([[]()[]([]()([[]][[()[][]]]))[]])]))[[]][[]][]]][]]]]])[[([[]])]]()()()])(((())((([][][][][[]((())[[]][()][](()())[[]]([([()][[]()[()[([])[]][][]([[][]((())[])([[[]][]]((())[](())()[][]))])]][[[[]][[]]]])])([[]]()))]))))(()[(())][()([])]))[]([[]][()]()[[[]][[[([([])[]])([]([][]))][()[()()]]]()[]]])[]()[]())()])()[]])])[]))]))[[[[]([])([(()[])[]()[()](([()[[([()[((([]))(([]())())[])][[]](([[((()()[])[]()(())([((([][([([])])][[]()])[()[]])[[(()[[]])]][[[()]()[](([[]()[[([][[(([()()[][][][]])()([](([[]]()()()(((([[]](((()[()(()[()])]([])()([[()()]]()[[]])))()([()[]])))))(([[(([]))]])[[]][]())[()[]()])(()[]))[])[]([])))[][([()]()()([[[]][[[]][][()([[]()[[[[]()]]][([()[[]][][]])]][(())]()([[(([([][])[(()[[([][()][[]])()][]])()]]))]()[[]][[([])((([([][][][([][][][])[]])]()([]))))]][]()()]))][[()[[()(())]]]][](())]][][[[([]([[]]))]()[]()][[[]()]([][[()()][]()])()[[[[(((((())))[[]][(()[[]][])]))][()]]()()()[][]]]]][(())](()))[])]]]()([[]()([(()[([])[([])([]((((()([[]][][[]])()))[([](([][[]()[]]))[])[()[[(())[][][[]](()[][]([]))][]][]](((()[[]()]())(()[(((())))]()))[])])))[][]]()][[([()()[]()(([]()))(())[]()][])(()[](((([][]((()[()])[])[[][[[]()]]]))())[[[]][()()]]))]])])][])([])([])())[][]()][[[[]]([()])()]]]]))()]([([()()[((([([(()([[]])()[]())]((()[[[]]([])[]]()([])[]([])[][][()[]]()[])[[[[[]()]()()]]](()[]([])([][]([][[()]]())))[()[[]()[[[()]([])]()[[][([[]()(([][]([[]([[]])][[]])([()][()])))](([[()[[]]]])[][([])](([]))))[[((()([]))[[]([[[[([])]]()][([])]([])])[]])]][]]][[([(([])()[()][[[()([[()](()([[([[[](())(()[[]])()[[(()())]][]][[[()][[[](()[()([])[[][()[[(())]][][(()[(()([()][](()(()))()[](()))()[])([()[([])]])[[]][]])]]()[([[[[([]([()[()]][(()(())[][]([[([])([])][][()]][[]][[]([[([()][[[[()()][[][()][[]]([])(())]]][]([[]()[]])[]]()([(([[[[]]]()]))(())()]))(([[]]))[]()]])[]()()[]](())))[[([()([((()[[[[([()[]](())()[()])]]()]]((()[[]([(()[]())](())([](()([[()[]]])[[()([])][[]()()(([[]]()([[[[](())[]()]][][][[]]][[[()]][]()][(()())]))(([([])()][](()([])()()())())))[]([][])([][])]])))[()]()((())([]([])[()[[[[[](())([])[](())[([])](()(()())())]()]]]]))])([]()[])))[(())])])[][]]()(((([([][][]([](())))])[[]]))()[][]))](([[[][]][[[()()][][[[((()))]][(([]))]]()[]](([]))(([])([()([()[]][[(([]))]])[]]))()((((()[][()])())([]())()[((([]()()[][]))(([]())))])((())()()))]])()(([[([[(())()]])(((())))(()())[](([][][([])([])][[]]()[()[]][[]()])()[])()[]][()]]))([()(([()()])[])][]))]]()()([])[](())([][[[[]](())[[]]]])))[][[]][[]()]]]()([([()()([])])(())])](([(())(())()][()()][](()()[[()[]][[]([][()][])][[]((())[])[[][[][]][]]]]()))([][([](()[][]))(([]())[(()(()))](()))]))(())[]][]([]((())[](())[[]]()))[])[][]([][])](([]([])[()])[])()]][()()]([]([]))[[]])()[]]]][]()][([[[]()[()]()[][[()]]][]][])[](([([[[]]([((([][()()[()]])))][])][([([])][()][[[[(())[[]()][[][[]()[]()()](()[[]][])][[]]](()()[]([()[[[[]((([(([[[(()[[][[][[]]]()[(([([[[]()]][][[]()(())][]([]))[][[]]()[]])(()))[]()[[[]]][]]()()()]()()())([()](([][]())()(([](())))))]([()[]])]]))])[[[()[[[[[[(([[[(()[()([]()[[()([[]()][]([][[[]]][[[]]]())[][()])[[]][][[][]][[](()([()[(([]))([]([](()))[]([()()[()]]))](([])(()())([(([](()[]()))()[]([](()[][]([](())[[()()]([()()[[]]])]()[][]))[]))[[]([(())][[]])](())])())[[[]]]])[])]]][[][]][])(()(()))()])[]]]][])())]]]([[[[[]]()()]]])][](([[]][][]))[[[()]([])()(((([[]])[])((([])[()]))()))][]]]()][[[]]][()([](()))]()()]]]))[][[(())([])()]]](([()()]())([][[][]]([[[[([])[]]]]][(()([[][]([((()[]()))])]))[][(()([[][()(([][]([])[[[()]]]))[([])[[]][]]]()]))]]))(())[])()[([]()[[]])[[[()[]]()]]()[]()()]][[](([[([(()((())[][[()]])[()[][](())(()[[]])]([])())])[[][]][][][[]]]()]([([])][()][]([[()()()]][()([])()[](()([])([]))]))[[()[()]([]()([[]()()]))]][[]][]))()][[(()(()))]()()[[[][]]][(())[([][[()]])]]()]()[[(([])(())([()()[[][]]]))][]()]](()[()])[()][[]]](())))][[()(((([[([[]])[][]]](())()()())[][][][[]])))()](([()[]][]([[]])[]))]](([]))][()(([]))[]]())[][]])[()]][]()(([[][[[][]([])]][()]]()[])))[][])][([()][[](([[][()([][])][]([])()][()])[])[[[[[()][()]([[]][([][()()[()()()]])])[][()[[(()([()()][]))]()]]()]][([[]]()(()[](([]())((((()[])[][((([])[])[]([[][(())]][[]]))[][]]()()(([]((()())[([()][()[](([])())[([(((()(([])([[[[]][()([()[[]]]((()))(()[()(())[][[()]](((([]))))])(()))]]][[()[[]]]]()[][()([])]([])))(())[[][]][]([])[[[[][]][]]()[]])[([[]])]))])]])[[]]]))()))))))([][[]()])()[((()(()[][][[][()()][()()][[]](()[(())()]())([][[[][]([()][][][[][([()([][]((([[]()()]))[])[([])[()]][[]]())[]])]][])]([])()[][]][])][([])()[([](())[()[(()(([()])((()((([[[[]]][](((([][([]()[]()[()(())[([([])[([][([[[[[][]()[((()[[]]))()(([]()[](([]()))))[(()[])][][((([()])))[()(())[]([()][((()[]))]())()[]()]]()]]]()][()]])]())([[]]()()(([][]))[(())]()(())(()))()]]([]))][[]()]](()))()[]]))[()]()([[[]]()])))][[[[([([((()())[[()]])([][()(()[])])][()[]][])([](((())(()[]())()[])))()](()[][])[]([[]]))]([()[[][[]]()[]()]])()]]]()()[(([[([]()([]([[]](())((())([])[]))))]])(((()((([[[[]]]([[]])[[()][()[]](((()[[]()])([][]([][])())))][([])[(([()[([((([()[](())][[]][])))[]([])(())(([]([]))[()][]([][[]]))]()()([]((((((([()][[()]()]))(())(([][])[][()][[]()[]]()([([])((([[]()]))[])[[[]][[]]([])][]]([])))[([[()([])[][]([()([]([([(()(()()()))()])()[][[[]()(()()[[(())]]([][]())[])(()(()[[][]][][[](([]))]))[()()[]()]()]]()[]][[()][[]()[(([[([])([])[([][(())[][]]())[[(())[[([([])](()[])([[][[]][()[(((()()()())(()))()([[()[()]()]]))[(()([])()([]))]]]][])[[][]([])])[]]]()()([])[()]]][]](([()]())())][](())([[]]())])[])(([]))[]()]]()[()][]()])()[()])]())[[]][()[]()()]]]())][[()]]()[()([[]([][[[]]]()([(([[[([(([[[[[(([([([]()(([()])[(()((([[((())[()[[][][[]]]][])]])))[[((())[[[[([])(())]]][[]([][()([[(())]])[([()[](()[])([[()[]]()()][])]())[[[[]]]][([]([]))[][]()][]]()([((()(([()(([](()(())([][([])[(())([])[]([]([[]]))[[[][[][]]()](()[[[]()]])()[(([]([][]([]()[()[](([()][])[[]()()])[(())()[][[]]([]([][](([()[](([][[][[[([])[((()([][[[]]](()[[[]]([([[]]([])[()[][(([])[((()[(([[]])[][][[()(([][()][][[]()[[]]()[([])()()([(((()[][[()[()((()))()()](()())([[((([])))][]])]])))]()()())()]]())())()][[[[[]]]]([])]][[][([[[]]])]][()]())][]))](()[([[]]())][(())][][[][][][[()([]((()(())[][[([]())[]]])[]))]]][]))]]()(()([])())(())[][])()[]])()[((())[[]](()()[()][][([])[]()[[]][([(([[()([()[]][([()()[[]()]](()))[][[]][][[()]]]([])[])(()[]())]]())[([[]])]([][[[][]()(()()())]])(())([]))()])[]]()[]])[[]][[([[()[[](([]))[][]]][]()[[]([]([(())()[][(([](((()))())[][(()[][[][()]])([])(())([()[[]][()([])]])()]()[](([]))[][]))(([()([[[]([]([[([])]([()][()([[][]](()[()]([()])([[[(((([][]))[](()([[]][(())[([][][])[[]](()[[[][()(((([]))[[]]))[(([]()(([]))([(())[[[[([][[]]()([()])([()]))()]]]((((())[][()]([])[]))()[][[[[[([]([()]()[[]][][([[(([([])[]([][]()[][])([[]][](()[])([](())[]([][()]()()[[][][]])[()[][([[[]([([[]]([()][[]])())(())([][[][][[[()()]]()(())][][]])]((((([[][][](())()()[](())])()[][()]()))((()))[])))]][])([[](()[])](()[[(((([()][[]])))()())]]))()]])()()()([(([([]([]))]())(()))]()))[][[]][]([[]([[][[[([])][()((((([])))([([()(([][((()))()](()))[([()[]][[[()]]]()[[([])(([[]]))[]()[[](()([()]))[]](([])[()][[[]]][])](([[][]()[]][()][()]()))[]()([]()())([])])[]])[]]()[])]((()([]()[[()]()](([[[]][]()()()]))(([()]))((([(())([])()][()])[[()][]])[])()()([][])[]()([]))()))[]())()))[]([][])()[][]]()[](()[](([][()[([(()[(([[[][([()[]](()[()])[([][][[[()]([[][]])[[]()[([]([]))][]()][[]]]()[]])()])[]]()[][()([][])]]]))()()]()[((()([][][()]([]()[][][((()))]()[(([])[])[()]([][([[]()([[()]()[]][][()[]()])])[]()([]([[[]]][()((([()[()[[]((()()))][][][]]][])(([]())[[[]]()]))(([]))[])]))[][]])[[()]]([][](([()()]))[(()[][()]([([[()[]]])])[(((([](([[]]))(()((([][]))())[]))()[]()(()[])))[])[[]()]]()[[[]]](([])())[[()][[]]]()()[[]([][[][()]([])[[]()()]])])]()[])[]]()))([([])](()((([[]((([(()(()))]))[[][]])]))))())[][()][]())[()])])])]()()()])(()(([([[][()][(())()[][]]]()[]())])[(([]))])[()[()()]])))]([][]())()[()()[]]()][]](()[([()][][()([])[()[]]]([(()[][[[]()[][[]()[]()]((([])[][()]))]][])[[[]][]][[]]()[]()])[(()[][((((()[[()[[]]](())]([()]()()[[[[[]]]]](()[]))())()([])))())[()()]])[[()]][(()())[]]([][][()(([[]()][]))[]()[[[[]()[()]][()([([])][]()([((()[])[](())([]([((([](([([([][](())[[[([])[]]]][[[[()]([]()((((([[[()[[]][[[]]]]([])([])()]][[[((()))()]][[]]]))[]))))()]]][[](()[][]()[])[([[[[[][]][]][]()]]()([])(()[()]))[()]]]()([[][()]]([]))([]))])[(([])[[][()]])([[[]]])]])))[[[[][([]([])()())]]]][[]]()))])[]))]))[]()]()][()]]]())])[[]](([])[]()()()(()[[[]()][()(()[])]][]())[()])(())[]]))])[][()[]]][()][[[()]](()()()[][[]()()()([])]([]))])([[][](())][()][[]]))()]()[]()((()[()]))[[][[][[[]][][()]]][][]([[((())([[]]))(())]])()]])]))[]][[[()[]][([]()[[]][])[]]](())(([]))]([])[]]]]][([][]()()()(()()))()()()]())]])())(()))]]()][]()][[([][])]()])([[[()]()[()]()][[([])()][()]][]]())]([()()])][])))(()[])[[[()(((([]())[[](())])))()[[[[[]()]]]]][(())]]]()[[][]])(())][]]([]()()[[[]][[]](())](())(()(()))[()])()])(()[()(())][([]()([][])()([()]()((()()[((((([[]])))))][[[][()]][[]([[()]()[[]]])((([]()[]([])[])()()[[[]]]()[]))]]))([]()()(()))))])))()[]])[()][[()(()[(()[])[][(([]()(()(()))(()))()[]([](((((([]))())([]()()))()))))(()(([([](()()())[])][])()[]))]])]]]))[]]])()]))]][][])([()][[]][])([]([([[()]]()[[]][](([[]]()())))()[([])[]]()][()[][]])))([[()(()())[[][(([]([[[[]()[]]][]]()[()[(())()][[[][()]]]])))[]]][[][]]()]((()())[[]([]()()[][])[][([])]]()[])(()[][][[][]])[]([[()]][]([[(([][[]]()[(()([]))([])([](()))((([(([](()[[()]][][[[]]][])[([])()()]((()))))]())()[()[[][][]]([]([[([])[[]][[[[]]]((([()]))()())()]](())])()[](([[()][][]]))(()))()]))[()]]))[][[][((()))(([[]](()[()()[]()[]])))()][]]]()]()))((()))][[]((()()([])(([()])))[[](([]))[]([[]])[]][()])])][()]()])([()([][])()])]])]][(()([[][]][]))]))()))[]()]][(()()()((())[]())[()])]][]]])[])()[][](([]([][])))([()])]))())[([]()[(())][]()(([[]]))((()()))())])]][[]][])))([[[][[][()[]([()][(()([]([][[](([]())()()()(()[(()[]([][([[][][([])]()[([()[[](([([])[]]([[[][]](())]())))]]([])(()[()]))]])([(())][[](())()])[()]()([][[](())])[()][[][]([()]()[][(([]))][[[([[]][][](()[[[][()()]]][[]][[][]([]([]([])[[]([][][])[()[(([[()]])(()((())[[(([()])[][])[]][][(())[[]]()]][][])([])))]][[(())]]()()])[]([[]]([()[](()[([](())[[][]][[[]]])]([])[[]()][[]()[]]())()][[]]())([][[]([[]()]())])))(())])[])(())[()[][()[][][][][[[]]][][][[[]([][[[]][()[([([])][])]]()()([][](((()))))]()([]()[]()[])[()][][[]])]()(()())()]]]]]()])()[]()][]()([[]])][()()][([()][])([]((()([(()[])[]])())()()))][([[[]]])[]()]([]))()()([()][]()[][[[()[[]][]()]([][[[(())]()]()])]][[()]][[]])()[])()])[((()))][]((()[([([([])][][[][([()][()[()[]][[()([][])][[()[][][[([()[[]][[((([][(()[([])][[(((([]()))))]([()])[[[]()]]])][[]][()]())()))](([][][](([])([()]))[[]][[]()[[]((()[()[()]]))][]])[[]()])][]])[[][]()([])](()[][()([])(())([][[[[]()[]]([()[()((()))()]])[]]()])[()]()]([](([](()[]))))([][([[[([][])]()([])]()])[]([])]))]][[()([[]])[(([(()([[]][][([])()([][])(())([](()))[]][][[](()()()[][])()[]]))((([[]])[(())[][([](())[][[[]]]())()()]([()([])])][])[()((((([[]]()[()[[(([]()[(([]))(())]))]][[[][]()[[(([[[]][[]]]()))]]]]][()])[][][][][])()[][[]])([][])())[])][])])()([])[])[(()[]())[[(()()[[([[()([[([[]()])]][]()[[]()]((()()))([]))][[][[([([][((()([])))[(([[[[]]()([()])]]))(()[][(([]([((()(()())))[][]([])])([][]([])[()]([[[]]])()()[]([](([[[[]]]()()((([]())([]))(([])[(()[])]([([]())([][])[[([()])]][](()((())())())])))[[]]]))()()()()(([()])(([]())())[[(()[])([([[[]()]][][])([])])]]()))))[])]()([]([][[(())]][]()())[()()][][]))]()])])]((()))()]](())()([([[[()[()]]][[[]([()][[][([[]])][][([][])][[]]][()([])][]()[])]][(([()]))[()[[[[()][()]][([][[()]])][]()]]()]]][](()()[()]))()][(([()][]))])])](([]))[](([[][[[]][]]([])][[()([][[([[]]())([[][()]]())()()][[]]])[()()(())][]][[[(()[]())()]([[]][()[]][])]]()]())())[]][])]]()]]]]][[[(([()]))][]]([]())()]]](()[])[[[[]][[]]][()[[[(([([[[[][(())][[]][][]()][[()[][][([][]([[][][]](([])))[([][([[]([[()()][]]()[[([[]()]()()[[(()[(()[]())]()[[]])(())[]]]([()(()[])((()[()])())]))[[[]()]()[()][]([[[][[[][[()()[()[[[(()())((()[()()([])()[([[()][](([][[]])[])[()[[]]()()]])]](([()])[])[[]([(()([[()]]))]()[])([[()][][]([])][[()]])(()()([][[]][[()]()[([(([()[]])[[]])][])]])(()[]()([]))([()][](([[()]]((()()[(([][])()[()])[[]()]])([][])([()[[[]]]][()]([])(()[])[()](()([(((())([])[][]())[]())[][()]()]([((()))[]][][((([[[[[]][]]][()[]()]])))](([(([][][()]))[]]))())))))(()))()[])))[()][]()])[]())]([])((([])([[]])))]]](()())[]][](((([[]]))[])(()(()[]())()))]((())([][])(()[])[][[]])]([])(((()([(([]([(()([[]]())([[]]))()])[(())()[(([])([[()[[(()[[[[]]([])]()][])[]()[]]]]([][])])(()[([([])[(())]([()[][[()[]]]])([]()(())[])])][[()[()([][])[()]()][[][(()[()[]]([[()]][[[][][]][(()(()))()]]()[()][])([()][]))]]]](([[][][]])())))()()[]]][]))[[([[][]][][])]][]]))[[]]()([[][]]))(())[]([][([([][[]][][])[(([()]()()))]])(()[[]()])([]()[[]]())[]()]))([][]([()()[][]]()(([]()()))[](([(())][]))))[][((()([[()[]([([[()()([][(((())))])]]())[][]])[()](())()]([[([]())()]])[]()][])[]))[([[]()]([()])())]][]]([][[]])(()(()[()]()[()()][(())][]))(()()[])]])()[[][()[]]]][][]()][()]][])][[()]][([])[[][](([][(([]))((())())[]])([][[][]][()]())([](([][[[()]][]][][[[()[]()]]])([()[]([])()][[]()([[[]][]][])[][([])]([])[[]([])[()([]())]]][]))[])[][()([(())])[[]]])[]]([][()()][]())([[([[]][][[]][[()]])(()[[()((([()]()[()()[[([[((()))[[[([])()()]]]]((((([][][][[][()]([[][](([][])(())[]())][[][[(([]))((([([])[()[(()[])(([(())]((()))))(())]][]()][()([][[[[[()((()(())[]())[])[]]][]]][[]][()]][][]()())()])[[]()([])]()[((())())])[()[[()]]((([][])))([[][()(())][[()[]]]]([[((()([()()([([([[]])[]])]()[]()[(())()][()[]()]())([])])[()()[()]](([])[()][]))[([[]([(()([[]]))](([[]][]()(([]))((())(()())()([[[]()[]][()()[]]])(()()[][][(([]()[()[[][][][]()]][()[]([[[]()][([[[()]()]()[]])]][])[()]((())[()([])()[]])]()[()[][[]]]))[]][(([][])((((()))[[()[[(([[(([][]))[]()[]()](()([]()())())]))()]((()([[]])))[]()]][]]())[([[[]]((([]([]))([]))[])[[()[][]([[]])[[[]()([[()][]]())[]]][][]]()][()]](()))()[]()[()[()[]]][]])[])])([[([][][()[]([](())(()[[]](())(()([][][[][[]]])())[][][(([](([[][()(()())[(()[[[]]()[[]]()])[]](())([[]((([][][[]((())[[()]](()[](())())(()([[]]))())[]()[()]]))()[])])]])[([[]][()(())()[()[]]]()()())][()])[(()())[[()]([[][[](([()()[]])[]((([()()[[]][]][]))[]))][[]()][[[[]]]]()])]()]))]))]([[][]]))]]()))(([](([[]]([[][]][]([])[([])][()][([][[]()])[]([([])]()())][()(())()][])[()[]]())[](([[()][]])[()[[]][[]]]))[[]](()))))(([[](((()()()))())()]))[[]]))()]([][(())])())])]()]()[[][([])[()[([])]]][[[](([])())]([()[]]())]]))()[]]()())[[[]][()]()]]][]()([]())[](([(())()()])[][])])]())))[]([]()())))][])](())]]([[()()][[[[(([[()([])()][()()[()[][]]([])([][[()]]())]])())[([[]()]())]]]][()]()()]]()()[(()[][]())]))))]()(([[()][]])[[([[]])]][]()()[][[]()])])([([[]]([](())[(()[])])[()()[[[([([[]])](([[(([][])([[()(()())[]]]))]]()())()[][][([][[[]]()])][][([])])()[][])][[][]]]()[[][]]][]])([][]([()[[[]]]])[])([([])[][][]()[[][][]()[([])]]]([[([[[]][[[]]]]())()][]()]()[((([[]]))()([([[((()))]()()[()()][]([](()))][])][[]])(([])([]))())][]()[[]])[[]])[[[]()()()]([[[[[][[[]]](([[]]))[]]]]](())[]([([([()])][])[()[[([[(([](([()]())[])))()]][[()[]]()[[]()]()])]([]()[][()[[]()[[]]]]([])([])([]()))][([][])]]][()([[()]()])]()))([()][])[]]([[[[]()]()([])()]()][])](()))[()]]])]())[(([][]()[()()]()))[][[][][]()]([(((()()[])))]([]))[()(())]]][(())][()])()])]]((()))][()([(([([])([])()])[[][[([])][([[()]][[]()][(()[[]()]([(([(([][]))([[[]](((())()[[](())[[[[()()]]()[[()()(([]))[()][][]]([(())])()[]][([]())([])[]()[]][]]][]([][])[]()[[[([[()]][][[[[]]((()))][(()[[][]][[()]([][](()((())))()[([[[]][()[[(([[]])())[]()()[[][()()()]]][]][(([]))](()[()])][]()()])()])])]])()([](())[][()][])()][][]][][]]][([])]))]([]))([[[]([][[()]])]])[][][]()][[]([]()())])[([]()[])])[]()]()))](([()()])[([(([]))[()]][]((())))])[])]((()()))[][()()][]([][]([()]))]()][()()()[[](([[(())([(([(([]()(()()))()[[[][]]([])](([]()([])))[]([()([])([])[(()([]()))[][]()[]]]))(([[[()]]][[[[][[[]([(())([]()[]((([]))())([([([])])])[[(()[()][[]][[()[()]][][][(())[[][()](()()[(())[([[]])]]([][[][()((()))[[][][]([])]]()[]])(([()([()(())[[]]][][[()]([(([][][])[()[]])((([([][[([([])[]][[[[]]]])]]())])))()])])][]())[(())](([])[[([[]]()[])][[()][]()[[]]]([[[[[(())()()()][](([()])([()]))]](()(()[([][][()]([()]))][])([]([([])])))[[]]]])[](([[()]]))(())])(()())[]([()][][()(()([[[(([]))[[()[][]](()[()][])]][[()]()]()][]])()())[[(([][]())(()))[]]]]())())[]((([]))))[()]][[]][][](([()[]])[()]([]))]()[][[[()][()]]]([]())([(([([])([(([(())[]]([])([])[]()[][]([]())))][()])])[]())](([])((([])))([()]([][()[]])[])()))]())(())[[]]]][][][()[]()][()]()(()[[]][](()(([](()()()[]))[][(()())()])[[][()()]][][[[([[]][[([][])][[]][()]])[[]([((())([][()]()[]([(()()[])][[[]()][]])[]()))])()(([][()]()()))()()]]()()[][[](()())][][([])]([][])]()(([][]([]))(()))()[[]][[(()[()])[]]]])))])([()((()))[]])]]]]()([])])[])]))(()()[]([()[(([][()])([])([])([[[]]]))()]([]([]()))[[()]][()([()([()]([[]()][])((()()()([]()[[]])[])(()))[]()(()(())))](([])[]())([]())[])]][][])(([[]]))[[[]()]([])])][][[]])[]]]()(()[()[][[]][]()[[]([[]()()])[]([()([([[]])])[()[][[([(()(([])()()()[()[[]][](()((())()())[([])]()(())()(())[](())()())()()([]([])[])()][][][()()()()[(()[[]()([(()[[]()])])]())[(([[][]([])][(((([][[[][([][]()[[[](([]))][(([[]]))]()])]()(((())())([][])[()])]((()))()][])())((()([])[])))[[()]])()(()())[[]]][]))[](()[[]])]][[[]][()]]]()[[[([[()][][[([()])]][][[[]()(()[])([[]])]]][])](())]][])[])()])]]]]()[])[((()))]]])([][[](()[])]))(([][])))[()[]]()]](()))[]([])[[]]])]]]()[[(([[]()]())([[()][]((()(()))([]))]))]][([][])[[[][][()()()]][][[[]][]]()][]])]))]]]]]])]])])])))])))])]]]]))]]]]))))]))))])])]])]])]))])]))]]]]]))])]]]))]))])])))))))]]))]]])))))))])))))))]])]])))])]]]])]])]]))])]]])])]]]]]))])))]])])])]))]]))])]]]))])]]]]))))])))))]])]]])))))]]))))))]])])))]]]]])])))])]]])]]))]]])))]]]])]]])]))]))]]]]])]))]]))]]])]]))]]]]]))]]]])]])))]]]))])]]]]))]]])]]]]]])]]]])]]))])))]]]])]))]]])])]]]]])]]]])]]]]]])))]]]]]])]))))]])]])))))])])]))]]])]]]])]])])])]))])])))]))))])]))]))]]])]])])))))]))))])))]))])]])]]]))]])]])))]]]]])]]))])]]]]])]))]))])]])]])]))]])])]]]]]]])))])]))]]])]])]]]]]])]]))]])))]]]])]]))))]]]]]( [()]([])()()(())()()[((()()))([([][[((()()(())(([]))(()))[[]](()())())][]]()[]([()(()[()])[(([[[]]][])[([[([[]])[](([])()())]]()())(()(()[]([]()([])))[])])[[[[]()]][]]]])()[][]([]))])(([])()((()))())()][(([[]]))[()([(())][()[][[]][([])[]()]()])[()()]]([][(()[([[][()[]([()])]()])])()[](())])]([][](([])([(()[([]())])[]]))())[[[]]()[()()()([[]]((([()])([(()[[]()]())(([]))][([()[[[]]([](([][])))[]([[[()][[]]([[[[]()()()[]([][()])][(())]]][]([]((([()])[]))))[]][()()]][[]()[]]([[]([([[()]])][[[]]])]()(())()[])[][[()](())[[((((([][]))())()))]]][])[[()()]()]]()][]((()))()()[][(([()]()[[][()]()]))]()[[[()][[]](()[[()([[](()()())([[([[()]][[[]](([()[]]((()))(([[(())()(((()([]))))][]])())))]()()()()[()][(((((()[]())))[[]][])()[][[()[][[]][([]([]))[()]()]]])[(([[]]()()))[]][[[]][([][]())[[]([][])]]]]()[])][[([()[]][()]((([[[][[[()([][[[]](()[(()[[][()]])]())])()]][[()[()]()][]][]]]()]()))(([([([][][])[[]]()]())[[]()[]]]))))]][[[]]]])[][[][]](([()[]]))])[([()][][[[[([[(())]][]())]]([][(()[](()()()))([]()[])([[]])]()[[[()]]])[[[]]]([(())])[]]()]()[[[]][]()])][]]])]])]()))[])([([[][([][])()()[]()]])][[()[[()([][])]]]][][][][]))[[][][]][]][]]()[]()([[]]())[][]([]([([([()])[]][])]))[]([][()[()]][(((()))())])(((()[])()[]))[([([])()[]((()([[]][]))[[[[((([]())))](()[][[(([])[[]()[()]([([[[][]]()[][][[]()]])])])[[(())][[][]([]([[]])([[()][]][([][[[][][()([()][([([])]((([])))([[][]][][((())[(([]()()()))])[]][][(([])([])[[]])]())[()]())()])(([]))[]]][]()[]])][[([()])][]][()]))[()[]]([][][](()[][[[[[][[(([(())][[]])(()()))]]()[[][]][[()]][()((([](())())[])(()([]([][]))[()[]]))]]]]()()()][]()[](())))]][[]]()[[]][]]])()[[()]]][(()())[[()[][()[()([])]([[(())[[[[]]][][[()]](())]]])]()()]([()([()[](())][[]])(())()[(([[()()]()()()(([()([()[]]()[])])[[]])]))][[]]])]]][()]]()[[][][[()[](())[[]][[]](()()())](()([]))((((())))[[]()(()([]))][]()[])]()[[([[([([(())])()([])[][]])()]])]]])[([[[[[[]]]()]]])[([][[]])[()]]]][[[]]()])()][][()]()[]()(())()([([]()((()[([])(([][]))[]][]([][((()))(()[([[]])[[([](()[])[[]])()]]])[]()])))[])()][])[()][((()))[]][]()[]()[][[[]][[()(()())[((([(())[][[[([()[()()]][])(())]]]])()(((((()(([]()[][[]])())))()())[]))))][[]]([[[([[[()[()([]())[]]]]])][]]()][()][[[[[]]]]])][[](([([[]][([])]([])[[][()(())[[](()())[()]([[[][]]]([][][][]()([(()[][((([[()]])))([((()[()()]([])))])]()())]))[])()[[]]()][]((()))[]][]])[([]((())))]])[()]()[])(())]()][](())(()()[[]][][()(([]()[])(([]))()(([([()[]])])[]())[[][()[]]][]())][]([]))](([]))[](()()(((()()()))))()[()][((()()[]))][()()][()(([[]()][][])[(())])()][][[[][[]]]([][][][])][()](())()[][][]()()[]()[(([][])[[[[]([])][(([[[[][][]][]](())([[]])][[[()[([[]](())[[()][[]]][()()]()()[(())])]]]([](())[][([])()[(([]()))]][][(([]()[()[]][][[[[[]]]]]()[][]))()])[[]]([]())[][](([][()[]])(()(([()[]])((([[][[[[[][[()]][]][]]][[[[((([([([])[][()()](([]))]()[([[]]([[[[]]][]()]))])]())))]()[][]]()((()[[([][[[[]()[]()()([(()[])])(()[](())[(([([]())])([][])[])])[]][()][[[()[()]()][][]()()]]][]]([()()([]([()[()(())((())()[][][])]]()))]([()][]))[])()]])())[]]]]])(([][])))[(()[])[([][]()[])](([]))])((([]))))[(())]))](()()(([])[])))(()[()[]([])[(((())))[](())]]([[]])([])))]]])]()[[()(()(([])))][]](((()(()())))[])[()][[]()([[[]()](()[])][[()][([])[[][]]]()[([])][]]())[[]]][()[([[[()([([[[]]])])]()[]]])[[]]()[]][]][()([()[][[[]([])][[([])]]]])](([[]][[()]]))()([()[[]((())())]])[][[()]()][]()[[]]()()([]([[]](((([]))))[[][[([([()[]][[](([][][[]]()[()[[([])]]()([()][[][]][[]()])])[])()](()))][])](())]]))()[[]]()[[[[[((())[[]])]]([[]([]())[[][]()()][]()[]()[]]([((([[]]([[[][[]]]][()]()))[])())()[[[[[([(()()())([][[]])])]]]]]])[]()[[]])[]()()()][((())[][])()]]()([][[[]]()]())]()[][][()][]([]([][][[]])[()])[[[]((()(([]))))[()]][][]][]([])[][]()[][][][][[](([[]([])[[(())]]([()()[]])()()][[()]])[()()[()]][[()[()]]()[]])][[]()[]][][][]()[[]()]([(([()][][]([])))(())]((()))[][[]][][[((([[]])))[](([([]([][]))]()))([])]]())()[([])]()[]([[][[]](()[[][][]()][])()((([](([[]([])][][[[][][[]([[[]]]())]()()[()]]]([[]])(()[])([]))))[]))][]()(()[]([()])))[]()[(([[][][()]()][[([])[[()](()()([]))]]]((()[][(((())[[]])())()]()))[](())([][]))())](()()[[([[]][])[][[]]([][[]])[[[]][][([])]()[()]]()[]][(([[[()]]][])()()[(())([[(()())]]()([()[][][]][])[])][[]][()])()]([[]])])()([[(())][]()[]])[][][](()()[[]()[][[]]([]((()()[[]][])([([][[()][]((([[[]]][[[()]]])[()])())](())([()[](())()]([([])]([[[]]()()((()(())[]))[[(([])[()])][([([([](([][()][](([([[]])])[[([]()())]()][])[]()([[([])][[[]][([([()([()])[]])])()][]]])[()][])))()][][[()]])][(()[()[(())[](()([([((()(([()]))))(([()[][[([][[]()])]]]))[]()()[([]()())]])]()([[][[[](()[])]][()]()])[])[])]()((()))])[]](()([][])()()))][]]()[](()()[()([[[]]()([])[]])])([([](()[([()])[[]([])[[]([][((()))([])])([])]]()[]])())][[[][[[((([][[[]]])))[]][(()[][][])][[]]([]([])())[([]())]]]]])(([][()])()[(())][()]())][]))[()]()[])([]))[[]()]][(()[][]([[][]]))[[[(())[]()[(([([([([])]())[][][]][])[(((())))()()]]))]]][][[[][[[]](()()([]([][][([]()([()][[((()))]([])]())(()[[()]])[]())([()[]]())]()[]())[]()())(())()([[]][][(()[])]))]((())()[[](())([])([()])](()[][([(()())])][][()]([]()))()[[[()[]]][[]()]])()()]([][((([[]()[][]]))(()))[()][[()]()][()]()])[][[]()]]]()](()()((()))))[()[[]([])([])()([])(()[](([])[[]][]((())[([[([()])]([()[[[][[[[(())]()]()[][]][]]()(()[])]([]()(([])()[[]][()([[]])[]]))][][]]()[[[([])[[]([[]][]([]()()[[()()][]])[][])]([])[]([[]][[()]])()(()[()()[]()])([([])[]()])[[]][]]()[]]]((()([()]())[()])([][()])[([])]())(([]))[]([]()())[])[]])]((([](([][][][])[]))()))[()()()]([()[]](())([([(())()]()()()()())[()([()((())[])()])]])[[]])())))]][[(([]))]()][[]()]))]())()[]([])([]())[][(()[()[]([])()[[]((([])([])()((([[[()()]](([()([][[()][]])]))[][()][](())(([]()()))[]([])[[()(([]))]]][[][]([(()[[]])[]]()[])()[]()]))()[]([(())]()[([()(()()[])()[]([])])])[])[()])()[([[]()][()(()([[[[[]]][][]]()])([]))()])]([][[[()([[(())]])]()]()]))]()])[]([()]()([()[]])[]((()))[])()]([])[][]([()([]([]))][][])([])[][()([])]()[]()(()())()(([][]))[[[[[([])]]()]]][[][]][(())[]((()[]()[[]])[[[]]][][][[[]]])([][](()[()]([()[[()[]]]()[]][()(([[]][[()]]))]()([()])))(()[[]][[(()[][[([](()(()[]))[[]])([[]]([()][](()[[]]()))([])[]([][]))][]([][([()][][[]][([()[][[]]])[[]()([()(([((([](()[]()[]()[]([()]())()([][][()]()[]))))[])](()[[]([()[]])]))[[()([](((((([])[])))([([][[([(()(())[])][([[]]([[][[]][[[][]]]()[[[()]]]](())[[[()[()[]()][[][[(([](([]))))]](([[]([][])]))[][]]([[]])[]([][][]([[](([][])())[]])())([()])([][]([()]))(()(([(())()([][])][()]((()))[()]())([])))]]()()[]]()))()()[([])]()()])]]()([((()([][[]])))]))[]()])()))()([(((([][])([[]]([][()])()[[()[]][]][()]))[[]]))[[(())(([[]()()[()]()]([([()]()()(([()(()[][()][])()()([])()]())()[]))()]()())[[(([](())[[]]()))((([[]((())[])][([[]][]())]))[][]()([])([([[]()[][()]]()())][]))]]([])[]))()]]]))]])[]([])[(((((([]((())()[]))[])[]))))[[[]]]()]][])[]]])][]()()(()))()]([([](([()()])[])([](([](([][][][][]))()))))()[]([]([()][()][](([[()]]()(((())(())(()([[]]))[]([[([][(())[]])()[][[()]]]([])])))()([()[(([])[[([][][([(()())([])]())[]][])]])[()[]([[]()]()[][[]]())]]])()))[][[]])[])[[()()]([()[[]]])[(([(((()))[[](()[])()[][[]([(()())])[]][]][]()[]([])[([][[[[[][()()[(())[([[[]]([()])])]()[]][()]][]]][()[][[][]][()(([(())])[])[]](()[([[(())]()[][(([(([([[][()[([[]])]]])[(([[[()()]]][(())]))]()(()([(()())]))](()()[]))[[[]]])]([])[()][])((()()(([])))[[()()()((()))()]()[((([][][[[]][[][[[((())()[][]()([[(())][[](()[()])(()[]())()([((((())()((([[(())((([[](([()]))[]][([(([][])()[([(())][])])(())[][()][[]()][(([]))[]][[()()]]])[]]())))][(([]))]](()()[])((()[[((()()))()[[[][[[([])]]()][]][[()([][]([][]()))[]]][(([()()][([()[(()[[()[[][()([()()()()[[]]][])[([])]]()]]]())[[]([[([([((())[[[]]()])()[][[()()[]][[[[]]][]]]][])]([]([])[[[([[](())]())][([]())]()]]))]][]([]))]](())[()]])[]][(())[[[]]][[][]]([([[(())](())]([][])[])]())([]([[]()]))])())][]]]]))[]))())))(([]([[]][[()]][[][[[]([[[]]])]()([([(())()(()([[]])())](()[][()[]]))[](([()])[[(()[()(([][(([]))()]()))]())[([][([]()[[()[(([])()(([][])[])[[]])()[(())([[][]()]())(()[[()][[]()]()]([]))](()[])()[[]]()]]][])])()][[]([][[]()()()]([][[]]))][([]([([()[]])]())([[]](()()((([]))()[()[[[[[[]]][[](([()()[([])]()][])([([])])[])]][][]()][][][]]()][])()[]([[[[]][([]())]()[]]])))[])]()][]()]())[][][[]()(()[(()[][[([(()[(())[([][][[]][]())(())]][()[([([(()[])][][])[]](()))()]](()))(())]()[][[([])][]]([()([()((([(())()][][])(([]()([[][[()][()()[](([][](([]([]))[]()[[[]((()))([[[][()[][]]]])()([][[][(())([])]()]()())[[[[[[()[[[][[()]()([][])([]())[]]]([])][]][]([[]])()()[][()([()()])]]]()()]]]]])))[]]()]()[[][][]][]]))(())[]())))])])[()[[]]()((()(([[]()[([]([])[[][]()][])[]]])[[()]])(([])()[(())()([](()))])[]()()))])(([(([]()))]))]((()([]()))[][()])])()[[[]][]][]])[[]]]()()])]]()([()[[]([[(())()([](([][])))[[[](([[[][[]][()[(())[]]]]([][[]]([]))](())([]())))[]]]]()]())()(()[[]](([]()))([()(()[])(())])[[]]())][]]))[()()])[]([])(()[]))()([[([])[][(([]))]][]])[])](((()))))[[][]][()[[][[]][[[[]]([()(())(([][][]()[]([]))()(([(([[(())[((())()[()])[(((([]([()[][]])[][()][])())[[]]))[[](()())([](((()[[()([[[]()]]())[]((([][])([[]()[]])))][]])[][](()[][][]([]()([[][()]()[]([])([[][][[][]][]()()]()[])][][[][[(())[](([[]()]([]())([](([[][]]([](([[([[]])(((())())()[()])[([])]]][[]]))()([][])(()[]))()[]([])[[[]][]][][([[[([((())[]()([([]([[][][([])][][[](()()[[]][[]][][[]])([]())]()])()[])][])[()][[][]()])[[[[[][][]][[]]]]]()])]]])][[]])[[[[()[((([][])[()][]))(([[(((([[(())[][]]][])))([[([()]([(())]([])())()[[([])[]]])[[[][]()(([[[[(((([])([([([[]])[]()[[]][]])[]((())[(([])()([]()))(([[]][][][][]))[[]](())((()[]))[]])()][()[]][]))([]()[])))][[][[([()])[(([(())])[][[]])]]]](())[]]]()][])[[](([[][]])[([])()((()()()([])[[]][]()[()[()]()][](()[]))())][]()([[]]([()]))[(())[[]]])[[]]][([[()(([([])]))[[([[[[][()]][()[()][([]())[[]()()()]]([][])()[[]([])][][[]((([[[([[()][([][[()()()]](())[])[([])()()]]])]]()])[[]()[[][][()[[]]][([([])([[[(())]]])[]((()[(())][[()]([])[]][]()))()])([][()][()[[[]]][]([])([][])])()]]()])([()([[]][])]))]([[]])]()][([()][()()][[]])()]()][()[]][][[][[]]])()]]]])]([[]()[[][()[]()()]][](((()[])))][]))[]]]][[]]][])())(()[[[]]])][]]))][[()[[[]][](([[][]][[[[[]]]([])]]()))]][]]]([(()[()[]])[]([[]]()())]([(()())()]()))(())][]][([][[()()[](()[()()][])()(())]]([(((()[]()))[])])(()[(()([][[(([()])[([])(([](([])[()])))([])][])](()[[][()[]]](([][(([][])())(())()][])))[()]](())[]()[]))[]()]))]()]())[])))][()()][[()()[([[[()()[()]()]]]((()([])([]()))))][[[()()[(((())()))]()(())[([[][[[[([])([])[([()])][[]([])([[]()])[]]]]]([()([])[]][])()[]]][])()()]]][()]][]][]()[]()]][(())]()[([[[[[([()])]]([()[](([(()[]())()[]]()[])())[(()(())())]([][([])(())]())])]]])(()[([[([])[[[[]](()[[()][([])][]])][([(([[]]))[()]()[[][]][()[]([[]()][])()]][()])[]][]](()())][]]([[]]))(([[][]()][])[]()([[((()()(())[[[[]]]([()](()))()]))]()]))[]])((()[[]][[()](([(([](([])))([[]()][[(((())(())[[[[(()[[]]([[[]]]([][])([[[()[]]]])(()))()[][(([()]()))]([[[]()(([]()()()([()][]([])))(([]))(()[])()([]))]]([][]))[][([(([[([][()()[]](()[[()](())]([]())()()()[])[(()[[][()]((())(()))[()]([()([]()[][])])[[]]()[]])])()]][[][[][]([])][[][()][]()]()]))[]()[([])]()[(([]([[]][])()))[()([])]]()]()[([][])])[]])[(([((()(()))(([][]([([])]))))])(()([][[()[[]]]()])))()]]([][[]])([([[]][])[[]]](()(()[([()[]][](([])()))])([])))()]]([]())()()([()[]()[[]()[]]])]()))[(())()[]]](((())()()([(()[[]])[]]()[]((([(())(([[[([(([([])]))()][([]()[])[()()([[]])]])]((()[][[()[]]][][])[][][([[]][[[]][(())()]][[][[][()][]([])]])](([])))]([[][]])()()()])[])])())[()])[([])])[[()]][()])(()))]()))(()())[]])([(([]())[[](([][])([([(([(()[]([[][()][[[[()[]([]()(([])))()()][[]][][][]]]]][([[]()[]])][]((()))()()[()])([][])[]([]))([])]())())[][]])][])(()([])()))])]))()][](([()]()()([[]]([(())])))[][][()[(())]])([])()[])[[()[[[[[[][[][]]()]()][[][[()][[][[][[]()]][]()](())]]]]][]()][([])]][]())][[([])()]]]))[(([][][]))()])()[[([[[()()]]()])[]]])))()]()]]()]])[()()([][[]]()())](()[]))])[]()[][()[((()))([])[()]]][]()[]))([][()[()()()](([]))])([]([]))](()))]]]()()]()]])())[[(())()()]]]]][([()][[]])]]]))(()([([])[()()]()]((())[()([])]))(()))[[[[[][([])[([][()[[[][](())[]]]])][]]([])]][(([[[]][]([[]([()])][][][()[()()]])[]](((())[([][]()[])[][[]()()()]]))())())]]])(()[]([[(())]]))()]]([]))[[]])()()]])])[[]]()]]()()()()[([[]][[]])]])[[]]]()[[[[]([](([](([(([]))])))()[()][])[])()][][([]([])[][[]()[]]())([()[([][[[]](())][])()]])][]]])[]])((()))([[]()[][]]))[](()[](()())()()[[][()][[]]])]((([][]([])))[()]([]((())()))()(([])()[[](()())[((())[((())[([([]()(()()))[()[]()([])()(()[])([([])])[()[()][]()]([])()]])])][[]])]]))]]()))[]]]))([[[]()[]()()][]])][][[][([([[]()[(())]])[]([()()[()()]][])()])([](([[()[]]()])))[]]]()[]([(()[[]][([[](())]((())))(()[[()[[[[][[[]]]([][[]]([[]()][][()])()[[][][][][(()[]()()[][(()()([][][][(()()()([[]]))]))])[]()]])]]]]()(([()])([])())[[()][([][]()[()[[[()][()()][(())][][]()]()]()(((([][[]]))[]))][()])]]])[[([[]][]())]()]])()][[([[][([][][[]])[]([])[]()]])()]()]()[])[][](())(([[[([([][][()]())[()][][()]][])()]()]()]))[]()[](()[[[[](()[]())](()(()[([])(()(())[][])([])]([([(([()]))]())])[]))]])[[](([[](()[[]][][()[()](())()(([()]))])(()()())(()([([([[]](([([])(()[[][(())([])]()])]([])))[]()([][[]()()[[]()([[([()])([])]]((()[]()(()))))((([[[]][()[[()((([[[(())(([()[]])())]]][()()[]([[[]]()])])(([[]]))([][])[[([[[()]]][][()()]())][]]()))[[]()()][[]][]]([][][][][]())[()]]]()])(()[[[[((()[])(([[]]()(()[([][])][][][()[](([])[]([])[])]))()[]()([])))]][][(())()[][]]([[][]][[[][()][(([([[[[][()]()(())][][][[][(()()([]((())())[]))[[[[]()][()]]]([])]][]](()([()]))[]]([([])[][]])[])()(())((([[]])))[[()]]])[])][[]]]()([()][][][[]()])[]()]())][]])()([])([()[((())()())[][]]][]())))]]([]([])[([])([[]]([()])())])[]))])[][([([])([][()](()[])())]())][[([[()[[[[([])[(([][([][][[[[[]](()([]()))[][][]()[]]()](([][]))([[[[][()((()()[([([[[[][[]]]]][]()[])[]][(([])([()]()))]()[([])()(([])[(()[()[]([])[[[]]]])])]())]))]]]([]()[(())()([])[]](([])))])][([[[][[]]]])(()[])[()]()()[]])[]()[]][]([]))())([[()()[()]]([]((()))[])])()()(())]]()(()[([])][]([[]][]))[([][]())][[()[([()](([[[[[()]]][]]]))()())[]]]]()][][][()]]]]])([])()([]()[])]()][[([[]])][]([])]])())]))][]([([[]()]()[([][][[()([])]])()[([](([])))]]())]()[(())])([])()[[]][][()[][()]([])[[]]][]()[][()]([[](([[](([[[]]]))]))])()()()[]()(()())()()[][]([(()[[]])[[]([])([])](()()[][[()[[()((()()[])())][]]()]()[()[]][]()[]][()([[]])()((())[][[][(((()[(([([[[[]][]]([[]])[]])])())])[])([](()()(())[[()()]([()()])()([(())](([[[]()([]())[[]][][([])[]](())([(()[[]()()[(([]))(()(())())(()(()[[]]())[[(())]([[]])]((()[])()()))]])[]])][]((((([]([]())))[]))[]())[]]))[])])([])[()[()]])[[[]]]((()[])))]]()([])()([[](())](()[])(()[[]]()(([(([])((((()[[]][[()((((()()[]())[()]([[()[[[]]([])]()]()][])))(())()[])[()[]][[[[]()]][]]]()][(((())[(()[()])([([[[[[[[]()[][(()()(()[[[([])]()](())][](())([([])])))]][(([[][]]([]))()[((()))](([]))([][]))([](()([]())))()[[[(())](([]))]]]()]][[]](([]()[]((())[][()])[][[(((()[]))((()()([])[])())[])[([()[([][][(())])](([([()()[[(([]))[()[]]]]])]))()])[](([([][()]())])(()))]]])(((())())[([][[]]([()[()[]]][][[]([][]())][][[[([()][][][])]()(()[[()[]]][])(((()[[()()()()]][([([])]()[()])()()()][]())[[]])()[[[((((([](())))[([[[[][[][][(()[(())][][])]]]][[(()[])]()][[][()]]([[][]][])([[]()]()(()[]))][])])(([([[]([]())([[[](([[]])()[])]](([]))((([[()]][])[]))([[[[[[][][(([([[([])[([[]](()))]()]]()())]))(())([]([()][[]])(()[]))]][]()]]]]()()[][])()[])]())()[(())()](()([]())()[])][[[]]][(([[[]()][]()[[](([[()[]([]([(()()(())[[()[][([(()[[(([()][]()))]](((([])([[[[[((()(([(())([[][]([()(()((([([])])))([][[[[()(())]]]][])[][()[[[[([[[]]()(())])([[]][])]]][[()[]]]]])])](([])))()(([]))](((()[])))))((())[[(()())()]][])()[(())[[()[()[([])]([()]())]([]([](())[()[]](((())[[](([[[][]([]([((([()[]])))[[[]]([[][]])]])[()()()(())](([[]()()][([((()([()[]])[][()])[[][[][([])[[[[]]]()]][()[[[]]][()((([([]([][][()()][]))[]][](()))[[([()()()][])[[()()(([]))][()]]][[[]][]()[]]()()()](()[]()))[])[]]]]]()[])](()))[()[]]]))())[]]])([([])][]))[[]]]()([][[]])()(()[()([][])[()]])())())([]())))[][[]]]]])[])([[]()(([])[([])]())]((()((()[[[]](([((()[]))([[]]())]))()()()]))(([]((()[]([]([]))()))[][][([][]()(())())[]]()[[([])()]]()[])()[(()[])([])[((()))[]([[([])[]()]]([]([([[()[][()]]((()))])]()([][([([(((())([]((([(())[][[]]()]()([]))))))(()[([])]))])([()()[]])])])))[[[[[[()()()]]()(())[]([()(([][[]])[(((()))(()())[])([])[][]]([])()[[[()[[([[[]](()[[(((([]))[([][[[]]][][[]()[[]][[]]()()]([])[])[[[]()(([()][(())])([])()(([][(())](()[[]][])))())[][[]()]][][((()))()]]])[[()]])[[]([[[]][(((())))()][[]()](([]((()[]))[[()]]))]((([[]()][[[]][[()[]]]()[()[[]][]]])[][()()])[]))[](())([])[]()()]]((([]())[])[])(())((())[(()[])((()([]((([])()[()])))))[]])[[(([]))[[[]]](()([][])[])]([]()[])]])]([](()))[][]([(()([((()))[]][]([]))[[[]]([[((()))[()][[()([][])][]](()[(()([][[()]([])]([][])()(()))[[]()])[]([]()[([(()[()][[(()())]])])]())()][[()[([][()[[]]])][]([])][][]])]()])[((([[[]]])()()[[[]]]))]([[][[[[()(((([()[][[]]]())([()[]]()[])[]))(()(((()())))())([(())()][([]()[(())(())[[][[]]][[]()][]][](()))]))[(([[][]]))[()((([]([()][])[([])((()())[[]][[]]()[])])[]))[[((())[](([()[]]))[])[()(()([()])())[]](())[]]]]]]]]]])[()()]][[]][])])([[]]([]))((()))((()([()][(([()((()))[(()(([([()]()[[([][[[]]()[]([()])])([])([(([]))][[()()][]]([(())]))[()((([]())))]()[()][]]]((())))[[][[[([[(()[][][][[]([()][([](()([[]()])[(()()[])]([]()()))())][(())(([]))][[](())][()](()))][](()))](())[[]]()])[]]]]]][])()()))]][([])[][[()][([[()][[[(())[[][()]([](()))()](((()))[([])][][[(([]()))]][()()[()]][][([(([(())][]([])[[([])[[[[](([][]([][()])))[]([](()[()]))[][(([])[])]]]]([()]([([])[]()[]]))(([[[][][[()][[][[]()]]]]()]))([()])(([](()[[[]]]))()([()[([])[][()()[]]]([])()[]])()([[]])()()((([](())(()[]([[][[][]][[]]])[[]])[])())()[()]))]])[])])((()[(([()([]()(())[([([()[[]]])[[([()[[](([]))[](()()[])([[[[]][]]([[]][()[]][([()][][([][[()()()][[]]])](([(([([])]()(())[([])[([])()[()][]]](([][])()(([]()[]())))((([[]((([()([()])([()[][([])]][]()[[][()]([[]][][([])(()((())([[()]])[][[()()](()()[([])()]([[]()])([[([[]][])][[]]][][])[])(([]()[]()(([[]][[]](((())[[][]]))[([][])()])[]))(((()))[()][()(())()](()([([[()]()])[]][[([]())]])))[])]()([[(()[])[][[][]]]])[[[]]][])[(()(([])()[])(([]())())(((()[[()[][[]()(())()]()[()[([[][[]([](([]([[(([]([]()))()()()([]))[[([[()][]])]]]][(([][]))])([]))))]()()[]][])[([()[[]()()([()][](([()])))()]])[][]][]][]([()]())(()([[()((([]))()[[[]]])]([[()([]()[])][]])[][()]])([])(()([][[][]()])))[[]]]()]()](()(([])[])[[[][()]([][]())[[[]]]]]))([[]][[(()(()())(())())[]([][[][[]][]()[()]])](((()[[]]()()[([][[]])])[][][][]()()()())())[]]))()(())[([()[]([])])])[](())[()([])])][]([()()])(((([])))))([])[()[()]()]][()[([([(())])[[()](([[]]))[[[[[][((()()([([]([[][]]))[(([[[]]])[[]])][]])[[]][[]](()[[([][])]]()())(([[()()][]])[])[][]([()[[]()()]]))([])()[])]()([])]([(()(())[([()])(()())[]][])]())][]](()[])]][[[[](()())]]]])]()()[]](()()())()([](())))])][]))())(())]()))()))[][][[()[]([]([[()()]])())[(([]))]][]][])[()(()[()([])[[[]]((())[])()[[]][()][](([]()[][])()(((())()()[]))())[][]]][([((((([[([[][]([[[]([[[]([([[][][]([]()[])])[]])](([]))()])[()]()[[[[()](([[][(())]])()[([[[([()(()[][])([][][])[[()][](([[]([])])[()]([([])(([][()]))]))][(([]))](([([]([()()]([[()]])([[[]][][][(([]))]()[][]]([()[]([][(()())][](([]))[()])([()([])[[[](())[][]]()]])])())))]))])][[((()[])[])[[[[][[([(())]([]))[[]()()]][()]]()([](()()()))][]]][[][()][([([[[([][][[([[][]])]])[]]]])[[][](())[[]()([])()]]]())]]()][[([([])]((([][])[[[([()]((([(())]))()))][[]([])](([([()()])[[(())[[[[([]()[])]]]()[]][[](())](())]]([()][])]))[([[()]()]())][][][[]][](((()))([[]()(())][]))([[]])[]][[[]]]][])[[()]])[([[]][][])])((()))]]](([[()[()()]][[[[](()[]([()[](())]()()()))][][]][[][](())]([][])((())[([[][(([()[]()]))][()([](())([](()))[])]]()[()[](()[])[()()][()[]]()[]])])]]))]])([])])[]()[(())([[]])()[[()]]][[][][[]()()][((()))()[[[]][()]]]([])[(()([()])[[([])[]]])](([[](()([][])[]([]))([()()[(((())))]])][][()])()(()())[])][[]](()[])]]([[[]]][[([])]]()()()[]([[]][]([[]][[][]]))(([[([])]])[[]][](([[[]()((())[[]])(([][]()()))]]()[][])[])()))]]([[]()([()[]][][((()))(())]()()((()[][])([]()(()[][[((([([])[[[]]([[]])[]()]](())[[][]()]([])[([()[]][[]])])([(([])[([[]])[]])]([[](())()[([()])[[][]()[]][[]([]((())[]))][][][]()](([][]))([([])]((([[[]]]))[[(([[][]](([][[([])()][(((((([(()([]()()[])[][]())[[](((()[[][][]()[([(())](()[][([[][]()])][]()))][[[[][]][()]]]]([]())[]())[]))()]()])()([[[][[]](([]()))]][[(((()[[[][][][]([()(()[()([(([](()[]())))[((((([])[[[]][()]]))))[[()]]]])[][][[(()[])][]]])][][(()()[]())])(())[()()]([][()])]]()()([[][]()]((([]))))[([][]()(()))][([]([[(())][()(([]))[]][]]))])()))()]()[][()]])[([][])[][]()(([(())]([[[[(([]()[[()[[[]]()[][]()[]]([]())]()[]]()[[()()]]))([([([][]()())]())[(())[]([]()[([()([()()([()[]])][[]][])[]([])][](())[((([[[[()][]][[()]()()][()(()[])]]])[()])())])[([])(([]))()[()[[(()[][][])][]]()][]()][[[[][[]]][]][][]()]])][]][()()(())()]([])([])[[]])]]]]))[[]][][[[[]()[[]]]()]])]))())([[][][[[]()]()]](())()())()))()[()([])[([])(([]))[()()]]][[]]]]))[]))]])()()(())[][[]])])[([]()[])])))()()]]([[(()((()()()()(()())())[[[[][]]([])[]((())[([[]]())([])[]][[([][[[()[]]]]())]([])()[]])()]])[])[[()[]]((()[]))[]([])]]()(()()[[((([[()[()]]])))][([[][([][()]()()[[[]]])()([([()][[][()]([])[()]]())])[](([()[]()])(()))][]()])()]]()()()())]([][([][]([[](()((())[])[(([(()([]))[(())]])([])[()[][]]())][([()])][[()[]]])([()()])([][([[](())[]])])(([()]()[][(())()(()[[[([])[(())[[]][[]][]]]]((()))([][[[([([][()()[()][]])][])[()(())[([])()(()[()((([])([[[[()]]([]([()((([])([]()[][[]([])]))(([]([](([][()([]()[])()[[][]]([()][[[([(())][]())]()((())[[(())(()[])]][])[[[[]]]]()(()(()()))[([([(())]((((([]([()()][[]([])])))(())()([])[([])(()(([()]()([[]()[()][][[[][]]]()[]][[]]))([]()()[([])[]()][()[]]))())][([])(()([]))()][][])[[(((([[]])))(()[])())]](())))([()]()))()][()()]()[])[](())(([()](()[(())()])()([]())))()(()[])[]]([[](((([](()))(([[[]]])([][](()[]()())))([]))()))])[((([()(()[([])[[()[][()([][[()]()]()())[]]()[[[]][(([[()[[([()]()([]))][[][][[]]()][]]]()])())[[()]]][][[[][]()][]][]]]][[][()][][][]()]]())((([()[][()]])())[])()](())[()]((([]))))([]()))[()])]()](())]([]))[][](()([]))([(())[[()]]][][])()][([[[[[()()]]([])[[]([()()([()[]()[](()())][[(()[])((([([(())])])[[()()][[]]]))[]][][[][(())]]])])]]]()((()(()[()()][][()[([][][[]]([]()()[[[[()[]][[[[[[()]][()]([][[]])(()[])]]()[](())]]]][]])[[[]([])()[]]()()[([[]])]()][()[((()[]))[]]]())[[[]]]]]())([][()[]]())))[]]([[(((([]([[[](([[(()(([()([]([]([])[()]))])()(()(([][[]][])(([][](())[])(()[[()]()]))))[[]]))](([][]()[]([[]][(()[[()][(([]))]][])](((([][()][]))[]([])[()([])[[](()()[[]])([])]]([][]))((()))[])[])())[()[]])[](([(()())])[][()][()[]()][[]](([()()[(())]])[])[](()[([([()[]])])([[(([()]())[][[[[](())()][()][][]]][(((()()[[[[([((([[[()()]]])))()()][])]([(([[][]]))()]())][()]]])))])]])])([[][[([(((([[[()()(())]]])[(()()[][[][([[]][])()](()()[[[(((([][]))[((((()))(()()[]()()()))()[()[()()][]])]))()([()[[]]]())[]]()[()]]])])([(())])])()))])][[]([([([()(())]()[])([[]()()[()[](()[])]([([]([])([][()]))[((())[[]])[((()))]]()]([[([])[]][]()([])()[]])([[]](([[]])([[]()[([()][((([()()])()))()[]()])()()()]]))))[][]]())(([[[[]]]([[](())][[]])[]](())[]))][[()(())][(())]]())][])][()([[[([][[](())])]()()()[[]]()[[[]]]]((()[(())()][()[()]]()[(())])[[[[]([])[([])]][[[(([()([[]][][]()())]()))][[()]]]]()[][([()][])[](()())[]]()()()()]])()[][[]]][[[]()]])[]][()([()[[()][]()[[]][]][]])[]]()[[][]]]()]([[]])))][[()]((([])(([[](([]))()[[]]])[]()[]))(([])()))[[]]][[()[[[]][[()[]]]]]]))](([][][()]))[[]()]()[([][([][])[][]](([([()]([[()()([[()][]])([])[[]](()([])[](()([((((())[(([](([[]]))([([](([][]([](()()(([(())][[()]]))()(())[()])()((()())))[])[])[[(()[[()][]])()(())][[]()][(()[][[([][[[()[]]]()])()()([]()[])[[]][()()]]](()[[]]))]])]()[]()()[()([](()))[[]]])()()(([][]))[])())()]())))()()([][[]])[]([[]](()()))[]])[][]))]][([])]))[]]))([[][]]))(())[][]]])[[()][([])[]]]))))]]()(()[[]])[]))([])(())[][]])[])[]))(())(((()()[((())())[]([[[][][([[][[[][[()[[]]]][](()()((()[(([]([]()))()(()[[()[]]([])]()[[()]][][][[()][][][]]([([(())[[][][()](([[[]]])[([[[(([([]([]([()][()[][[]]])))]))]((()()[()[][(((()([()]))(([(((())([()])(()())[]))])[[[()][]()()]]((()))([[(([()])([]))]]))[()[]](([[]][][[]])[(()[[]]([()]()(()()[(([]))]((([([])([([]())[[]][]][([]((([()(([])[])(())]([()]()))[()]()()[]))()(()))])[()[(())]][][][[][([][[()]((()[]()))])()[[]()]](())[]]])[][((()[()])([[]]())[]()())[[(()((([](()))[]))([][])()(()))([()[[]]][])][]]])))[()()()()][[][()[]][(())([][([])])]])([()[([][])]][]))]([[(())][]]([[[](()[[][]()(([][(((([]))())[()][][(())([])][([])][[][[()[[()]]([][])[]]]])[()]()][][])[()(()()[[]]())[(([()()])[()([()])()]([()](()))())[()][]()]()]([])(()(([]))()))()([(()())()((())[[[]([()][(()(())())(([[([]([[[]]](([]()[[[()([()(([]))]([][]))[]([][()][][][][][()])()]][()()]])[])[])()())()][[]()[[[[]()[][(()()(()))(([()()]))[](())][][][((()()[])(()()[(()[]())][]))]]]]]])[]([[()]()()()])(()()[(()())]))(([][[()[]()[]()]][]))()])][([])()]()(())])])][])]()])[])()()())))(([]))[]][][(()[]())][]])[]())][(([]))[([[(([[[[][][]]][]])([])(([])())[])]]()(()[()][]([]([]([[]][]()([]))[[([]()[]()[[][[]][]][])([((())[()]()[][]())([()()[()[([([[](([[]]))])][[(()())]](()))()][()]([()(([]([])[])())()])[]]])[()]()]())([()]([])[][([[([()()([([])[]]()([][](())([()()])[[][][]]))])]])[]()][([()(())][(([()]()(()))([])([[]]()[])[[][()]])])[]])]((([[([])][]([])[[]([[][]])]()[][(()[][()[[[[()](((()())([[]][][]([(()[](()[[[]([[()]()][[][]()])()][][[[][]]]]))[]()]([[[[[]]]]]))[[[](([])())]][(()[()]()([]())([()[[([[[()]([()[[[][(())][](()[[]][])()((([])[]([[]([])[]])((())[])()))][]()][[[]()[]]][]]([[[]()]])[](([][[]()[[]][[()([(()[()[]]())[(([]))[()(())[][[]]][()([([([()])[]]([])[[][[((()[]))](((([]))()))][]([(())[[]]]([]()[]()))])()])[]]]([]()[]([[[[()()]]]((([[[[]]]]()))(([[[()[[]][][((()))]][][][(()())][]]()()])()([])[[()]])[[]([])[]])[]])([](())[([[([(()[()[[]()[]]()[][][]][])([[(()((([]))))[]]]([]([[]]()))[[]([])[[]][(([]()[])(()[()]))]])[]])]])(())]))[]])][[()()]()]]]))[][][[]])[][()[(())]][([])()]([([])[][[(()(()))][()()]]])[][[][][]()[[[([])[([()])[()]]([[[([])]()([([[]])[(())]][]())[]]][(((())[][((([])))([][[]((([])))]()[](()(())[][])[])]()))([[]()()(())]([[[][][(()[])[][]](([()([()([[]])[()]])[(([]))[[]]]])[[[[[[][][()]()]()]]]])]][]))([]()())((()))[([])][]])]]][([](([[()]])))]]]](([([])](()))[]()[()([]()([[[][]()][]])[[]]())][()]))][[]][][()]]]))[]](()))))]]]])][()][]])))[()]][][[]][[]]))[][()])[(())(())[[[(())][]]][]()]([[[()[]][](([])[[()(([]))]])()]][(())]))([[]])][]()]][[[([[]][])]((()([])()[[]][]))][]()])])]([])])[][]([])][[[]]][][]))([]([])[([]())](())([()()[]][])))])[[][]]))][]]])[][[((())()(([[]])[](([[(()([[][[]()[]]])([]))][]]()))[]))[][()]]()](([]()[]))]]][([][])([[([[[[()[]][()(([]))]][]][(())()[()][]([(((()[[(([]))[()([()[(())]])()]([])]()((()()))](())([]))[])[()][])[[]]][[()[](())][]])()][()][()[()]]][])][[[][]()]]])])][()][](()[([])]())[[()]([(())[](()()([][((())[]()())]([((()[[]])()((()[]))([]()[][(([(())][][])[]()[])])(([[]()][[[]()]][]())[][])[][])[]][()()]))()([([(())]())]())())[]])[]])))[]))]))((())()[([[()[[][[]]]]()()])])]]((()())))))][]())[][]][[]]](())((([[]](())()())))][[(([()[]])[[(())(()[[]((()())())([((())[])[[()]()()()](([[]])[[]([([[]]((()(([](([][])[][(())([[[]][([([()()(())()]((([[[]]]))))][[()[[]]((()[[()][]][()])[[[]]()([[]()([][[(()([()]))]][[[]]()[]])()][])([([()[]][]())[(((()))[([]()([[]]))()])[(((())[])[[[]]][]()())([])]([([]([((([])))[][][()[]]]))])][[]][]](()))[()[[]][][]]][])]()()[([]()()()(()([][[]])[[]]()))][[]([][])]][[()]()][[][][()]]())()]][(())()()(([])([][])[([][([[][][([])[][()]]][[]()(())]())[]]()[((()))]())()]())]()[()()[[[][([])[]][]()()](([])(()([[[[([[([[]][]()[()])]][()(())])](([[][[]()](()())([[]()]()[[]])(((()([][((())[[][[][](()(())([][[()(([][][])((([([(()[]()([]))])][()])[])))[[]]]][])[()()])]]())])[[]()]))[[]()]())([[]][(()[[][([][[][]])]])])][])[()][[[([])[][[([[]][[][[()((([[]((()[]())())()][]))())[][]]()]][(())])]]()](())[]]]()(([])[([])])([]([(()[]([[[(())][[([][][[[]]][]([(())()]))()[[]()]][([()[]][])](([][[([[[](([]))][][[([()])[][][([()(()())[]])]][[]([[[]([]()()())]](()))()]][(()[])]])](()[[]]())][]((())())[]([((()((([[([[]])]()][])[()[([[()][[]()[][([][]([(([][][])()()[])])[[()([[]])]])[]]]])]])([][]([](()))()([][[][()][()][()[]([])]]((())))[(([]()()([]())[()[()]])([]))]))))([])[([][([])[]][()])]](()())()())[[[]](()(([]())()))[]]))]()]()([])](()[][][[]])([][()](()[])[])[](([([][()])][])([[()]][])[]())((())()[])([[]])))(())][][])))]()[]]([])]))((()()))([[]]))[([(()())][]([[][][]][])[([][()]())([()])]([]())(([()]))([[()[]()[]()]]()))]]([[[[[]]][()()][()()([][])()]()([][])]()[]])[([])]][((([(())]())[[]])((())[()](()())[](([()([[]][])[]()[[](())]][][][])))()())[]]([[]]([[][][]([][[()()[]][[][([])]()[([[([[]()((()[(()[()[](()())][][][][])()]))()[][]][[]])([((())[])()])()((())())](())])]()(()()(()))[[[[]]]][[()[()](()())]]]])()])[[()()[[]]]])[][])()[]])[][[][()[[[([]()())][([])]()](()[])]()[()][][[[[]][]][[()(([]()([][])))[[]]()]][[[]]()[(())]()]]()[](())[([](())[[()[(()([()[]]())[()()()[][](((()(([]))()))([[([])]])([]))()()[()[((([((((([([[()[(())[[]]][((([()][][])))][([(()[[[]]()]([]([]()))())[]()[]])()()()(((()()))((())[()]([([()()()(())]()[[(([[[(()[[]](([()()](([(([][]))]()))[[]]))()())]()]]))[](()[[]])](([][[()[]]][()([])([])]([[]]([[]][[]([][])[[]]]()([(([()[]]()[])())(([])([[[()([[[]]])]([])[[]]()]([]())])[[][[]]()([()][(()[(())][[]])[]()()[]])])]))[[][([([[]])][(()[][[[][([()[([]()[]((()[][[]()()([[]][]()[[]()[]]())[[()[][()()]()[]][]]])))]()][()()][]()[][])]()]])][()()])][[([(()[[]])])[]]][()(())()]])[((([([()])]()))[()([](([[]([(()())])()[]])))])[((()))][]]))([[]])([][[[][][]]])]()())])))]]])]([][[[]]]((()))))))))]()([((([[]])()))])))(([(([()]))[]]))[[[][()]]][[[][[]][]]()](()[]))[][]][(())]()]])[[()]][]]]]())]]])[])))[[]()[()[()][][()][([])][(()[][[]()])[]][[]][][][[()([][(([])[(()[])[]]()())[()]()]())]][]()][()]()]()())(()())][]())()[][[]][]()][])([])])[[[()]([])]([][][(([][])())()(())])](()([](())[[]([])[]()](()[(([])[])])))[]])]()])]([[[[()]][](())]])()][[]([])([])()[[[][][()]][][][(()((()())()[]))((([][])))][[][][][()]][][[[[()(())](([([])([[()]([](()))[([][[()]()][])]])])[])()]][]][][]]()]]([])[[[(([[]()])()())()][]][][()][](())][[([()][][()]())[[()()]()((()))[[()[]()][()([()()[](())][]([()]()()))]]]]]][[]][()[]])[(())]][()])[[([])]][[[([])[]]()[][[(()[[]])]]][[]]]([][()(())[](()[])[]([(())(()((([](()([(()[[][([()[]])[(([])[()])]][]]()[])](()(()()[])()(()([])[[[]][]([[()()[]]][]()([]))(()())]())))))[[[()()([]())()[[](([[]][][(((()))())][]))][]()()]]]()[[][()][(([]))([])[]](()[([[]()])(())])])))]()[[([]())()[()][]()[]]][([])()][[]](()[((((([()])[[][[][]][]()]))()))])[(([])[[()[]](())])])[]])[(()[])[]([([][](((([]))[][]))[([[][[([[()]][([]([][]()()[]()))([()(())[]()]())])]]()])][[[]]][])()]())[][][[][]]]])([]([()()])[()[()]][])[])]())[])]())[]()((()[]([]))[])))())))([][[]]()())])[]])])([[[]][][]]())(([][])()()[][]()[()()[[]]])[][(())][[()()]]]([])[([()((((()[][])[][[[()[()]]]])))(())](([]([[]()()[]])()[[]()[(())]()]())[[]])[][([][(()([[()([()])]])()[])[[]]][][[[]()[([](()))()][][]()]][([]()[])][])])]((()[][]))()](([])())[[]()[]()]))()))())]((((()())((([][[()][[][]]][]([[][[]][][][]]())()[]((([[]]())[[]]([()()[()]([]()(([[][]]))())()[]])())())))(([])())()())))))][]([([([[]][](([])))]())])[(([[]][]((()[])([])(([]()))(()([[[]()([]((((((())))())[][][][]()[()])[]))]][()()()([]([](()))((([][()()]))))([])[([[]()()[][()(([]))]])[]([])[()[()][[][(()[])]][[]([()]())]]]])())[[][]]([])([]))[[]][[][((()[]()((())))[()[][()]])]])()[([])()[]()](([])))()[[[]]]][([]([])(()(()[[]])))])([([]([()()][][(())[([])[]]()([][()])[]][])(([[([][()()][[]]()()[([(()()()(([(())])())()[]()[[]])])()[()()()[]](([([[[]]])[]][[()[([[]([]()())()]()[[][]((()[]))][([[]])[]])]][]()(())[]](()[[]][]([])[][])))[]][()](([(([]))]()[[([[][]])]][]))[([[]()])][])]()]()[()()])[([()])])())()]((()))()[()][()[()]([])])][]][])))])]()[]()())[[]()[[][(())][([[]])[][][(())]][()][[[]][[][[](((()[(())])()))](()[]([]()))(()[][])[]()[]()]][][]](([[[][([])]]]))]][]()([][()][]()[(()())])[][[]]]())[]]]()]((()[[][[]][]]))(())())[]])[]]())[()[[[[()]()][]]][]])([(()[])])((()([([][]((([])(()[])((())())[][[]]))())()[[][(()())]([])[[]][]]]()(())(([]([([[]][][])])()[]([])))([()]())()[()])(([((()))]()[((()))[]]([])()))))[][][]]))])]()]()][([])([[][()(())[()[]][[[()()][(([]))][][(([()]))][[((()))][]]][[((()[((([()])))[[()]()[]]])()()[[][([(()[[][]])]((())))()()[]]]())][]]]](()[])])[]]])][]]([])()]))][])[()])([](([]))()))[[([])]])]()[[()[[][[()]()]()[[[]]]()[[[[[]][][](([][]))(([(()[[]][[]])])[()])][[((()[]))][([])]][][]()]]]][]]]]]]()[])]())[][([][([]()[()[]()([([(()[]([])[])][[()[]((()()[])([](()[()])()))[]()]][][()][][]())][][])[]](()[])[][[[][[[]()[()][]][[()]((([]))([]([]))(()))]]]])][])][[][](()()[])[]][([])]]()]([][])[()]()]()])]]))))]][]]]])()))))])]]()])][([[[()(())]([(([])[[]][(()())(()[][()[](())])[]])])]()([])()]()[])[()([]([]))]])[(())[[]][[][]()([()])]]())]]))]][]))[][]]))(()())))()[]((([[[]()[[]]]]([[([()])()[]]([()]())[][([][()](([([]())[[]()[([()]())(())][[[[]]][]]][]])[([](()[]))[[()[][[]]]]]))]([()()[]])])[[]])([])[][]))[(())]]]][[][()]])][[]]()()[[[[()][[()([[][]])()]([])[](()[[]()[[()]()][()]((([])))()])]([()][][])]()()][(())][(((())))][](([()])[]([]())(([[[[([])[([])([])]]][[()(([()[[]([])[][]][]][(()[(()[[][[]][[[[](()())()(()())][[][[]][()(([]))[[]([([])([])()[][](([([]())]))]())[(())[[[]]]]]]]()]()]])](()[]()[][][[][]]))](())[[](())[[][[]]][[]()][[]]][]))[]()]([[][[]][]][[()(())][[([])[()]([[[()]()()]][])][([([](()[]([[][(()(())([([[]])]))(([()])())()]([()()])])))(([])[()([]())])])]]])([[]([[[]([]())]])][])]]]([]))))]][]))([][[[]][[][]][(()())()]()[](([()[]]()))[[[][([](()))[[[]]][()]]]]()]())[([[()[[]([(())[()[]([]()[][[[[(([])())([][(())])]][[([[]]())()]]]][])[[]([][])]]([])][])]]([][])][[[[[([()[()([]())()[]([([[[()([()])[]([(([])[[([][][])([(()(([][])[])[[[]()(((()[[[[([[()][][][]](()[])([])())[[]]()[]]]][[]()()]](([][()][]))()))())[][]]]())][[((()))()]]()[[]]([]))][[[[([])[]()]]([][][])([(())][()])([([[]][])()])[]]](()[[[[]][[(()()()()[]([]()()))()]][][][]][]])(([(())([]()[[][]](((()([[([]((())()([])))]()[[]][([])]([(())[(()[[[]](()())([()])])(())[]()([]([[[][(())()[(()([]()))[](()[])[]]][]][([(()[])])()[((()))[[]][](())]]]())[])[][]]])[]]()([]))(()([[]][[()(([(())(()[[][[]][]]([()]))[[()]]]))]])([()][[()[()]][[]()]([[()]])][[()]()]()(([]))))((([(((([]([]))()([](())[]()(((()[()[[]]][](([(())](())[[()(())][(()()[])()]][]))))())()()[[]]([([()[][[]]()[]()])](()[()((()))]([]()[[]])()()))[])()))([]()()[[[[((()))[()[][][()()[]][[(((())[(((()[]())(([])())[([[]])])[][()(()([]))[[(())]([][])](([((()(()[[]]())[]()([][(())[]([[[(())]([]([()]))[]()]])(())()])()))(([]))[][]]()()[[[[[([()])][](([()[(([]()[([])([]([][][([[([()()])]])[()]])()()[])])[])][]]))[(()()([]))]]](()(()))]][][()][(([]))])[](()[([]((((([[(()())]]))[()([])()])))[(([])[[]][])[[]][([]()[[()]()[][]])][]])]))])([])])()())([]([][])[])([[[]]()](())(())[])][][[(())]]]((()))(([()][])())([[]][])]][]]([[](())])()][]])[][[([([])[][]([[[][[]()]]]())()][[[[()]]][[[]][[[[]]]()()[]()[[]([[()]])()]([[[[([()(())])]]]]([[(()())][]]())[([])])]][[]][[[]]]])(([()([[]])][()[[[]][()([])[([])()][]][[(()[])]](((()))(())())]]([[[][()([([()](((()))[])[[()[[]]()[]()][()(())][[]()]]([]()[]))[[[[[]((([[[([](()([(([]()[])(([(()([[]()()])[][])]))[])[(())[()[]][[[(()()[])]]()](()[](()[][]))]((([[[[[]([[]])(((())[([()])][](([]))[([])])(([[]]()))())(()[](()[])()[([[((()))()[()()]]()[[]()((()()([]()[][]()(())[])()[]))()()[]]])])]][]]]())))()[[]([])[][([[[][([][[()[[(())[]]]]()()()][]())]()[([])]][[]()](([([][()()()])()]([([()()])])[]))]([[[[][]][([]())()(())()]]]([])()))()][[[][([])]]]()()]]()())((([])[[][()(([])())[][][((()[][[[()]]]())[][()()]([][][])()[([][(())[][]()[]([]([](()([(()(())[])(())]))()((()(([[][[(([]([[]])((()[])[])))]()()]()[()]]))[[][()[()]]()]()([]((()((([()[(())([])](()([()[]()[([([[]]([](())))((()()())[[]])]())[[]]()()[[([][][[]][[()[]]()[[[][]]]])()()[]]]][(([])[])]][[]()][]))[[]][[()]]])()[[][[[[]]]([])]])[]))))))))()])])]()[]()[]][[[][][][[]([]([[[([()[]])][]]][])[[][[]()]])[]]()][]]][[((()))([]([([[]])[([])]][()()()[[]](())([])[][][]]))]()]))(([[]()])()[()][[]])([()[]]()[()]()[][[[()()]()](()()[]([]()([[]])[([][([][[]]())]())](([[([])]](()[])()))[]))]((([])[][]()([[]])())[[([(([[]]())(([][(((()[[[()()([[()]])[()()([])][([[[[[]][][(())][(((()([])([[]]()()[][]())[([](([[]])(([])()))[][(([]([[()]]))()[]([]))])[[()[]([])]][()()]]([[]]())[()])()[[]]()))]([[](([])()[[([])()]](()[[([]([()(())]))]][])[[]])])[]]][]])[]]]]]()())))](()))([]([((()([([[()[][]]()]()[][]([([])][]))()[]]))[])()[([][])]]))))[]]())]]))))]()()]])()[([])(()[])([]([((([])))][[]]))][[]()(([][[]]())[[()]][]([((())([])([[([([][][](([()])((())))()[])])()[()[][]]([()])]]())())](([])()([]))[[]]))(()[(([][[[()]][((()([])())[[[()]][]][]((())[[([][][[[(()()[[()]()(([]))][()(([(()([(()[()])[()([([])])]][][][[[()()[([[[]]][[]])](([[]][[]]))()[[]]]()][]])[])(([([])()()][()])[])[[][(([])[()]())[()[]]()(()())[]](([(()())]))]])[]((()[])))[[[[[]]()(([([])])()())[()()]]()]]()()[(()[()])][([])[[]][](())][[[(([])[])([()][]([])((()[])[]))()[[[[[()][][()([]([[]([[(()[[][]][[]])()[]()][]])])())[][]]()(())]][]]]()]][[][()][(())(())()()[]]]]])[]]]]()()()(()()[][([]())][])([]))[]()[()]][[[]([([()[[(([[()[[[[()][]][(())][]]]()][](((())))[[((()[][()([(([]))])[()(())[]]])())[[[(([]([(()[[[][]()(())[([])([]([()[]][()])()())]()]()(()[[[[()[][()[()]()]]][[([]([][]()))]]][]])[(())[]]][])()[()()]])([][][]())))][]]]]](()[]()())][][[([([[()[]()][]])[]([[]()(((()[()][[]([])[][]]))([][()])[])(())]([])(((()())())([])))([])()[][](())])([])([][[()[]]]((()[[]()])))]][[]((((([])))[]()[][][([]()[()](())[[()]])])()[])])[])][[]()]]][])()])([()()])([])[]()(()[([])[[[]]]]((())[])[][([]([])[]())]())[][[[()]]]]][[]]()[][(((())(()))([]))]][][])()[[()][[()[]]]([][()(()[][[]()])])][([[[[][[[][()[][[()]]]]([()([])[([])]([[[[[]([(([()(()[]())(()[[(())([])][][(([]))[[]]()[]]])(()()()()[][[()][][][]][])()()]))][(())][])[]][]]][][]]()[]([([(()(())[][([][][()([])])[]])[[]]](()([][][()]))()()([])[][[[[][]([])()]]()][])]()[](())[([[]][()(([[[]]](()[][])))](()))])((())(()))())]())()[][]][()()[]((())()([]))(())]()]]]())])[][]((()))]()]))[()[[][()]()][([][[([[]](()[](([][]((((()[]((([][[](()[(()[()[([])]()[]()]()[[[]]])([]([[()[[()][][][([()()])()[]][][][][][(())]()]()()[[[]]]]][[[[()((()[][][[]])()[((()[()])[(())]([])())](())[(())[()([][([(())[[[[()[()][[]]][]()][[[]]()[([()[[][(()())[(([()[[][[]][()[[[]([][])[][]][][]()][](()([[][][]]))][][()][[([[]]([]))]][][((((()[()[[([]())]]]()))))([])]]()])(([([()])[]])()(([()()][]))))[]]]][[]]])]()][[]]]]](([[]])))])]])]][((()[]([[[[]][]()][(()([])[([[([()])][][]()[][[]][](())]()[(()[])[((()()()))()[]()()]])])[[]]]()[[[()[]][()]]()(()[][[((()()[[]])[])]()()])]][(()((()[([()[[]((([][]()([[()[()[[[][]]([])]]]][(()[])])((([[]])[[]])[][[]]([][]()[(())()][])(()))(([][][[([])[()[]]]]))()([][]([[][([[[()((()))]]])]][()[[([(()()())[([][[]([[]([([()[]()][])(())]())((()[])([[]([()()])]))]())([[([])()([([[]()][[[][[]]][[()](()[])([[[[][[]][[][((([]())()())()[][]()[])([(((()[[[(()()()[])]][((()[()[()([])]()]()([])))]])[]([][]()[]([[][][]((([][][([])]))()[])()])[[((()))[]]])()[(([][[]][[]])[]())])([][][[(())]]))]())]]][]]])()[((()[(())]())()([()[[]()]([][])]))[[()()]([])[]]]]([[[]]]()[][[(()(([]()[])))]])][[[[]()[[[[[]([])(()()[((([()])[]()(()())[]))()[]])()([])[]([[()]](()))((([()])[()]([](()[[][()][][(()[()[()[()](([][(([]))[]]))][]][[][()[]]]())[[()[]](()([])[])]]([])()[[[(()()[][[[(())][]][()()()]]()())([][][]())]([][]([[](())])[([][[()]][])])[][[()]][[][][()]]([][])]][]][]))))[]]]][()](([[[([[]][()[([]([]((()[])[]([[([(())][()]((()[()[]]))(()[[()([()])[()()][([[()]])()][([[([][[][]](())[[]][()][]()[(((())))[[]()[()[]]]])]])]]])[][[]()([[([()()])()]][()]((()[][()[[([()[[]][[[][([])[((())[[]])]]([]())[][[(([]([()[[[][]]]][][[][][][()[]]]))[[[][](([])[][[[]][]]([]()())[][()][])]])]]()[[(([(([]))[[()[]]]]())[])]()][]]]])]()]])[[()][(())]()[[]]][]))])]]()[]([]()))[][]((())))))]][][]()())()[]([[]][((([][([])()])[])(()([])()([[]([])(()[][]([([()]([]))()[]](())()()))]((()))))[])])]()[[(()())]]]][[]]())(([[[](([()[[]][][]]()[])[[(()([])())][()()]][])[]][](())])[])())]]]]())])()(())([[]])][()]()](()()()[]()()([])[((())[[[[]()(([][])[()[]]())[(([[]])[()])][][[()]]]]([[(()(())[()[[]()([][[(()[]()()[])[]()[][]]])()()(([[[](())([[]])]])[])](())[]])]])])][]([((([(())])([()])[](([[]][()[]][[()]][]))()[]))[]][][]()))[][()][][])[()]])[]]])]]])[()()(([[[]]]))][([](())([][[]]))()[]()[[][([[([])]])]()((()))]][()(([[[[]()[]]][]]))[[]]](((()))())())))[])((([()][][((()))])[]))]](([([](()(()))[])][]()([()]())[]))())((()[][[[(([]))[]]][][()()][()[]()[([[[([[]][[[(()[(([((([])[(([()[()]([])]))([([([[]([])][[][(())()([])](())()][[]](([([()])[()[[][([])][[()[]]]([[][[]([](((()))())())]])]]])[[[]][]]())[])]())()[]]())([]([])()[])(())[()[[][((([([][])][]))([()]())[][]([[[(()())[[]][[][()](([]))]]]]))]((()[([[]]([]((()()))([([()]())()]()[][]))())][([])[[][[]][[](())](())((([]))[][()[[[][[([(()[])(()[]([()()])(([])))[([])((([[[][(())]([((([])))]()())]([([[]()[[]()]()])]()((()([]()())[]()()[()]([][[]])[][])[])())[]]((()[])(()[[([][([])])]]))))((([[][()]][[[]]()()]))()[([])])[]())]])(())[(([[]((()))()]))]()]][]][][()[][][[][()][[]()]()([([])])[][](([]()[(()())]))[[]]()]()()[]()(())]()][(([[]])[])]()(()()[][()(())])])]()(())[[]()[()((()([[][([[]]())]()[()[][[]]([](()))()][[[[[()[]([])()]][[()]()[]([[[([][()[[()]]](([][]([]))[]))[(()[])]()()()]]])](()()(())()()(()[][])([])[]([(()(()))([]((())))])([])(()()))[][]]([[([[]][])]()][[()]()[(()[()]())[[]][]]])]][]]))(()))](()()())[()]([()[[()[]][[()]][(()[[]](([])[])()(()[[()()]()]))[]]]()()])]()]))][]]([]())])())[]()[()]]([][(([])()[[][()]])](())[])[](((()((())[[]](())[[([(()())[[()]]([])][][]([(())[[]][()()([][([((([(()()[()[[[]][]]](((([[][]()]))[[]](()[([])([((()))])][]()((())[([()][][])[]][][])[](((([()])[][][[]](())())))[]()[()[[(([()()()()[](((([]())([])[]))()[(())([[()[]]][()])[()](([([([]())]([]))][]))][][()][])()([([[]()[]]([]())[][[(()[])([()])][]]())[()]][])[(([[[()]][]])[][[]]((())()(([[()([](())([][]))]][()]))())()())[[]]]][]))([()])]()[[[]]][][()[()()[()()[][]]]()]()][]])[]))[([])()])([])])))]()([[[([()((())([[]()[()([[[[()[]]([[([][])]])]()[([][(([(())])[[[()][][[()()[][]][]]][]]()()[[]])]())[]]()]])]]()[])[(())][])])([])()[()[]()][][]]]][[([()])]])([[([])](())]()))()[([])([[]])[]([()])()]][([])[][()([][])]()])][[[[]([()[([][[]][](((())))[()][([])][]([]()))][][()([]()([[]][])[[]][[]]())[()[][[()([][()]((()))[[[[[([[[][]]()[]])]]()()][[]]]([[](())]([([[([])][[([])]](()[])[()]][[([])]()]((())))[([([[]][][]()[[][][][]][[]])][]())]])[()([()]())[()[((()))()]]])][[[][]]])]]][][]][]([][])()[]])]]()()[[]]()]][])())][[]]([[([])[[[]()]()[()]]]])][([]()([])()[((()[(())()[]]([][][[((((())[()][()](())()[])[]))]][([])])))])]))[[()]()[]][()][([[([](([]()[]([][[]]))([[([])()]()[[[][]]([][(()())[()[]()((()))[[][]][]()]])[()][](()((()))[](()))][()()([])]()(([]()))[](([]))()])))]])([(())[]][[]([][][][([()][]()[])])[]()][]())][])())))[()([()])[(()[[()]][])]][()]](([])))()([]())]][][][((()[][](()(())[]([][[]([()([][[[](()[])]()[()()[][((()))[[]()[([])()]]]()][](()[][(([()()][()[]]([]([([])[([[]])]()])[]())[[]][()[]][([])[[[(()(()))[]][[]]]]()])(([]([]()))()[[]]([]))[((()))[][()]()])[][[]([][])](())])[[[][()(()([[[]()][]])[](([])))]()[]]]])([()])((()))])()[[(())[(()([[()(()[])()()]]((())[][()])())())]]]](()))))([[[[][((([][([]([([[][]()([[]()][])((([](([[()]])))()[()]))[[]]([]([]())[([(((())()(()(()()))[])())])[](([()[]])()()([])(([([[([]())(())][]])[]][][([]()())((([])[[][](())])())[[]()()]])[])()())])[()]()])])([]()))][])[]([[]][])(([[]]))(()()[][]())([[()()()([(([]))])]])))[[]][]()]]]]))()[(([])[[[]([]())][]]()[([])]([]())[[]]([][[]]))[](((()))[[[][]]][]()(([])[]))()]][]()[][][[][]][(())][][]])]][[[]]][]])]]()])[]())][])))[[]]][[]]()()))[(())])(([](([[]][()])[([][])]()(()))()[[()(([][()][])([]))]]()[]))[()[]]([()])]()]])((()))()[])((()[][[([[()][[([[][[]()]((([(([]))]))[]()([()(())])[([])])][])[[]](())[][]]][[()()[]][()[[][]]]([])]][][][[[[[([]()[]([][[]]))[]]]]]])()([()(())[]((([])[[]]))[[]()[](())()]])]([[[(([])[()][[[][[[]]](()([[]]))()]((()()[[]]((()[])[])))])[][()][]]]])]))])])[]))))))()))[]([]()()([])))[][[[]]([([][()][])][])[][][](()())])][]()[]()])][]][]])])(()[()([[()[([][()[[]]()])]([[()]][]())][]][][])[][[()[]]]([])]))[(()[]())]]][()()]()]]])()][][]()]])))([()[()[]]([][[[[()[](([([[()[]][](([])[[[[[[][]]]][]()]()()()[](((([]))([[([])]]))[][[()]])])[]([]()[()])[]])[[[]][()]]]))]]]])][[[]([[]]()[[]()()])][]][])][]()])][][[()][][(())]()(()())][[[]]][])())[([])[]]))[])[[[]]]))(([[[[]]](([][[]]()()[[]][][()[]()[((()[]((()[])(([[]])([[](([[()()(([[[]]]))()]][])()[[]](([[][](()(()()([](())))()[])()](()()[])[()])))]))[][])))[](([]((([][])[[]()()]())([][([]([[[[((()())[])()]()]]]))][[]][]))))[[([])](()[][](())()[])]]]))])(()())([([])][]))[]()](()())()))[]])()](([])[])[][()])]][()]])[()[]]([()])()()][][[[]([[[[]()([[]])()()[]]]]((()))[])]()][])[[[([[]](([]([[]]((([]))))([[(())]][]()[]([][[]])[])))[[[()]()[([]([[]][[][()]]))()[[]()][]()]]][[()[[[[]]]([[]])]]()([()([([[]]([])[()]([([[([]())[][[]()[]]][]][()])()])[[()]()])((()([][(())][[[]]])))[]()[][]()])()])[([()[]](([(()[()[]])])[[([][][])([()])]()()[][[][][[[]]()[]]]](())[()]))[((((([()()(()[]()()[])]))([])[[]])[(([])([])[(([]))])])[])]]([]())])[(()([]))][]()]]]()]])[]][()]]]]()[]])()][[]()]]()))()(([(((())[])(()()[[(()[([][(()[]())[([[[][([]())]][]]())]([[([])]()][()]()[][])()(())([])][[]])[[][]]][][])][[([])]][](()[])()][][[[[][[]]]]([][][()[[([][])]]])]()))[]][()[[]][]][]))]([])]]((([])[])[])(()()[[[[]]]()()][]))[[(([][](([])[])()())()[[]]()(([[][][(([[]]()[]))[((([[](()())(((([]())[[()(())](()[()])[()()[][[][[]]]]]())((()[[[]][]()])([[[](())[]]()])))())[[()(())[[[]]]][()((([][]())(()[(([()[]]))])[[]][][])()[]([(([])())])()[])]][[][]()](())]))()()()[[]([])])[[]]]()[]]])[]))(())]][]]()([]()[])()([[([]())](())()[][[]((([[[][[]]]])()))]]())[](()()[]))]))[]()[[[]]][(()()[()][][[]])[[[]](([()[][()(([([]([[[]([(()[]()([[[[][]()[]]]()])[[]])])()[]](([[]](([[]])()[]([[([[[()[]]]])]]([]()()))[([(())])]([(([([[]]()[]([[]]()))[[(()[(([])())])][(())[]()]][][][()[]([])]()()()]()([])()[])(())[[[()[[((([](())([][][([]((()[()])[])[])()[]])()[[][][]][])()([()][])))(([()][](()[]([[[([[()]([]())]([[(()()(()(()))())()[]((([])))]]([[]][]))()()()(()[[[]][([([[([])]])[]])]])((([]()))))()[[([[[[]][()](()[][[]]()()()[][([(([]))])()()][((([][][])[[()()]]))]([][][[]()[]])([[()]][](()[]))(()[]()[(())[](()[]()())][]([]([[][]])()())()))[([])]]((([][[][[]]()][][[[[]]](()()[]())[]()()()()])([([]())[][[][]][[]]()[]])[])[][])(()[]()([][])([]))])]()]]]][([][])()()](()))())))[][]]()(())((())(()))(())[][()()(([((()(([])))(()()(([])([(([]))([])(([][()(())]))])(())[][]))())]))()]][()]]]((())[(()[()[()]([([([]([])(()[]))[[]]][([()][[]])[[]]][](())[](())[()]()[])][][(()[])[]]())()()()[[[()]]()]([[()[][()[[]][[]]()][()[[[][]]]()]][][][]]((()[()()()]([(((())[])[[]])()[]]))(()())()))([[()]()()])([][()])][(([((()))]))])])([])][][[()]([])([()](([[]])[])([]((([][][()])[])([][])[[]])()())[][])])])(([(())[]][]))[[(())[[((())([[()[([])[]]][[(())()]()([[][[]]([])()])][]]((()))(([()[]()()[]])[()]))[[[([]()[(())](()[][[(())[[[]]]()]])())[]]]][(([][])[[][([[[[]]]()[]])[[]([[([()()][[]])([](()[[([])([([()]())[]()(([(())])[[]])][()()]([[]][][[[[][[[]][][[][]]()][]]][()[([])[]]()](([[()](())()]()[()[[()]]()[()]()([][])(()())[]()])[[()][()]()[]])()[[]](()[[[]]][])(()()([[]()])(((()[])()[[()[][[[][[()]()[][()[([[()(([][][]))[]][[[(((())(())[[]]([](())[])))([[([[[[][[][][]]]()([[]][(([]))])[]]])(((()((()[[()[][]()([(()[()])[([(([][[([]()([][])()([(())]()[]))[][[([[[][[]][][()[]]([]([]))][[]([[([[]](([()[][[()[]()[]]]])([[]])))][](()())])[]]][])]]]([()])()([((()[](())())()()()[(())][][]())(()())()][[[((())()(())[])[]([])[[[()]]]]]([([[(([[](()[([[([()][])]()(()([]))((([])))(())][[](())[][]])])])(([][[][]])()()))]][])])])[[([][])[[][]()([()[]][[][][]])((()([([]([])[]())[][[][(()([[[[]]([])]([[]])[(([][])[](((())[[]()])))()]])()(())[([[[()[[([])[[]]][]](()([])())]([])]]([(([]))[]([])]())([[(()[[][]]([])())]([]([][])[()([]())]()[])[[[]()(()[])][]][[]]])[]([][]))]()[])]][[[][[[]][([][[]])[([])]()][]()][][[]()[]]((())()((()(()()([[()]]))))[])()[([([([]([])(([][]))[()])[[]([])][(([]([[]]()))[()](()))(()()[]([](([[[]]]([[]]([])[])((()()())[[[][([])()[]]][[(()([])[()[]]())]]]()[])[])[()((((()[]))()()()))()[][[](()([]))]]())))()]]())()](()))]()[[]]]()][()]()](()[[[[]][[]]][[]][][]([[((()[((()[]((([(()[(([]()[])[][][(([[[[[[()]]]]]()()([()][[([()][](([[([]())]]))[[][]([])][()]([]())())()]])()([[[[][[[[[[[[][][]]]]][]()[()](()(()[()]()))]([()[]]())([((()[[[[]]((())(()[][]([])([(())]))(()()([]))[])[][[(())()]]][[]][]([]())[]()])([((()(())))])[][[([])][[][[(([((())[()][[](())][[(([[]]))]])[]]())[])[()]()]][()(())[]][()((())[()][[[]]])]]][])[[]]][[([[]])[[()([([])[[]][[]][]][]()(()[()][[]][]([[][][([(([]))])()]()()()(())][])((([[[]()]((()([]([][]()[[]])))[]()([]))()()([])((()))])[])(([()][][[([[()[]([[()]])[(([][[]([[()]][[]][[]])([[]])[][]]))][[]]]])]][[]]()))[][](()[][]()()()())[][])[[[()[]]()]])(([]())()())[([[[()(()[[]()][([][])][])()[]][]](((())))][][[]](()())(())()[()]())])()]([]())][](([][(())]((((([])[][](()[([([((())[[[]][[([]())]]])])()[]])][[[[]]()]])[])))[([[]])[]])[([][[()[]]])])[]())()][][]])[](())]][[]()]]([[()[(()())]([])()[][]]]()[[([][][](())()[]()())()((()[])[][()(()[((()())[][[[]()]]()[]()[(([]([([[[][[]][()[()][([[()]([]([()[][[]]]()))[]])[]][][[]]([()()[]])][(())]()]()])((([][()]()[[(((([(())[]([])((([])))[]]([()[()]]))[[][[]]]()((())[([[][[[]]()][()]]([(()(([][[()[(()[]())()]()]][()[()](())[(([])[]()[])([]([]))[()]]([[()[]()[[[[]()[[[][][]()()()]][[]()][]()][[][()[][][((()[[([()])]([(([]())[[][]][([])])]()[]())])[()])([][()]())]]]][][((()))]][([(())])]]])([](())[][()()])]))()[])()][]))])[])([]))[][](([]([][()()[(((([][]))))][][(())([[(()(()))][]()]()([])[[[[]]]])()][]]))([])[([]())][((()[]()))]()))()]][[[[(([[]([()[][([[[]()()()([[](())(())[][[]][][]])[()]()][]()[[[]()([()][](()[[()]()[[]]()][]))()[]()[()[[(())()][([(([]))([][()[[]]][][][])]()[][(())]()[[[][[]][(())]]][[([])[]()][]]((())[()()]))([[(())((()())([])[()])[()[]([][]())(())[((()([()[]][])))[()]](())[]]]][])((([][]))(([])()[()[(())[][([][])][([[][[]]])][[[]()([])[()[()(([])[((([[][]((([[]][()]([[[[[()()[()[[]]](())]][]]]()])[]()()[])))])[][[[][]](((())[[((()[])[[]])(((())))]]()[()])[][()([])()]()()()[][()])](()())))][]([][])[])[]]]([][()[][[[[()][[()(())[]()()[([])()([[]]([([]((()()())))][])()((([]))))]]]][()[]]]][([([[]])])][]()[][]]())[[]][[(((([]([])())))())()[]]][[]][[()]]]]][()][()]([][]())([])])())]()([]()())()]()[[][[(()(()())()()[]()()[]())[]][()([[()[()[]]]([])[()]])()[]][]]([])][[(())(()([])())]]]]][[([])()()]([[(()[])]])[]]][])][[([[[][([])]][[()(((([](()))()()())()[[]]()))][[]]]](()[[]](([])())())[[[[[]][([][])[]]]]][[[]()(()([])[])]]([[()]()][][()]))]()]]())][]))][]]([])[()][()[]][]]]())[])()()(()[[()[]([()[()[()]]][[]])[][][(()()([][]))][][][[[()]]][](()[])()()(()[(())]())[][(([])[()][[(([]()[]))]][]()[[]([]([])([][])()([]())(()[[](())(()(()))[]]))][])]][()]][[]][(()())(()()[])((([[](())](())((()(((([][(([]([])))])[]()())))[][[]]))()))([[]()]))])[]([])[()](([()([([[([][[[]]])][[()]]()()([[()()([[]](((([(()([()]))][()[]]))(())())()))]]([[]]))])[][[][()[()(()[][])()][([[]])[][([([([]())((()([][]([[]])[]))((([([])]))[])[(()[]())[[(()[][][])]]]()(([]()()()[[]()[](()()()[(()())()()]())][[[[([])]()]][]])))][[()(())([])][]](()[()[[]([](()))()[]][[[]]([[()((()))]][][]((())))([[[()(()())(())][][]]()][])()]]()))[]])]]]]][])()])))])[][()][]))][[]([]([[[][]]()]))[][([]())]]([])([]()[])[])([([])[]([][(())])[()]])])])[]]][])([])[]]][[]](())([()])([]))][][()]))()])][([][()[]()](()))[][][(([])([()()()()()]))][(([[]([])](()))()[[[[()()]]]([](()))])(()[]([[]]))]()])])(())(()))[[(()[()([]()[])[[]][]][])()()[][(([]))([[][((()))[[]([][]())[[()]](([])(([[[]]][[[([[([])]][])]()](())])))][()]]])(()[[][[]][]][])[(()[][()()(((()()([(())])))[[]])[[]]])()][()[][[()]][(()[((([](((())))))(([])[()[]])((([])[[][([])()()([][])()]]()))[])]()[][][]()(([()()[]][()[]])[[[[](()((())[][])[[[([](()(([([][])()])))[])()]]([])][](([()([])]()[[()(())][[((([][](()))())[(([]))])]()]]([[]][])))([()[[[(())][]][()](())([[]([]())[[()]][]])]][][][[](())[()][]]()))]]])(([[]([]())[()[]]])[()]))][()(()[][[[]]])]]]][]([]()[[]])()[[]]()([][([()][[]][[()([[()([[]]())][]][]()[][])][()](([]())())[[][][()]][]][[][[()]][()]])([(())[[]]][[][][()()()]()]())[()][]])()[](()()[])(())([](()[])[((()[(()([]))[[]]([]())([])])()([()()()[][()]][[[[()][()()()[[()()()][]()[[[[]]([([])]([()][])[[[()[][]()[[]([])]]]()[[]][([])([[()[()]][][[]]])]([[[()]]()])[]])][]()([][[](([()][()][([(([]))][])]())())(()[(())])])[][([[]])[[]()]([])([][])]]][[]()()[]]]]]]))([()][])[][[]]()([[]])]())()])[()[(([[]()[]](()(([]))))[[()]](())())(())[]]])[]([][[]])[()[][]][])][[]([])[]()()([[]()])]))][]()]())](())[]))))([])]]([][])]((((([])())(()[])([(([[([])]]))[]]))[([][])])()([][()]((())[[[]()]]((([][[[[[[[([(()()(([[()[((([])))]]]))()[])](())())()[(())]]([()((()))()]())[()[((((([()[()[][]()]()][(()())]))(()[([])()]))))](((()))()[[[]]][[()]]())][]][[()((()(()[][](())()[([()][])(())()()]))[()][[][][][]])][[]][]]]()]]][[[(()())()[([[()]([])()][[[]]](([(([([((([((([([][])[]][([[()][]()][[([][][])]][])])))()([[][([()[[[(([](())))[[[]([(()[])][[]])]][[()]]()]()()]()((()([]())[](())[]))([])[]([()][[]][[()((()))[([][][][][()]([[]([[]])])[][])]]][])]])](()[()[]()(())[][()[[()[[[[]([[([]([][][])()())()()]])[(())][]([((()[][]))()])][]()(([[()][]()[]](((()()))))[(([[][]]))]()()([])[[(([]))]])]](([[]])[][[]()[()[][]]()(())[[]]()[()()]()]()([[]][][]()))()[]]()(()[[([])[]][()][[](()[[[()([])[([])([][[]()][(((())[])())(([[][[]][][]][]()(()[][])(()))[[()()][]][]())])[([()])][[]()([[](())]()()(([])[])[])()[][]][]]]][([]()([]))[]][]()])(()[[]]())[()]]])]()]][[()((([][()[[([()])][[[([][[()([])(())()][]()([[()]][])][(()())])]()][]((()[][])[[[[]]]][])()[]]]()(()[[]]())][])(())()[[[([(([])([][]))[]])[][](())]]][][((((()[[[]][]](())()[[()]])[(())[[]]][][]))()()[])])()[])(()[]()[])]([]([][([]([]([])[[]()]))])[()][]())[(()())]])[]()[[([[]][[()]][])][][]]()][][([[]][[[([]([([][])[[]([])[]()]][()])[])]]])(())])][]))([])((((()[()[]()])[[([[][([])]]())[](())]()][]))[])[])][])][]))]))())()[][][]]]]]([][]((())))[()(((())()[()[([()(((()[])[])([][][]([]([[]])))())[][()]]())()[[][([])[[[]]()([()])(([[]])[][[]]())[](()()[])][()[([(())[]])][]]()[([]())()()[][]()][]][[()[([[]][([])(())][([()]()(()[])())])]]]()()()]([][[]()[]()[][]])[[()][[()]()]]()](([((())((())[[]([][[()[[()]]()]]([((((())(()(()([])([])[])[]()))))])())[((()())[]([([[][()[[]()[]]()(([]))[]()]]())()])())]])([]))])([]))[[()]]]()))][][]])([[[[]][()]()]([[]])[()]]([[()[[[]](()[([])])([]())]]][[[][()[]][[[][]]]()]][[[[[][][([])()[[[]]][[]][](())]][([][])]]]([])]))[()[]]))(([])()[[]](()[()((()(())()[()[([])][[]]][]))])[]()[]))))[]]([()[(()[[][[()[][[][]]]()]])]()]())))()][]([([][]([][()()]))][()[]])(()()[][]))][]])]([()][[[()]][(()[()[[]]()[]])(())()[[()]]]()][])]()))([][])()))()[]()[([[]]([[]][(([[]]()))]))[]((((()[()])[[]()]([]()[[()](())[()()]][])))(((()[]))[]))])[[[][()]][()]][[]](()()[][][])[]]()[()()]]())([]([]))[]][](())[]()]]]([()][(()[])]([[]][])))][]([[]])[[]](([[]([])[(((())))]][[()]([])][(([](()[][]))()[])][[]]))]][][]]()]()[][[]([])]][][]((((([[]()][]()[][[](())])[[[]()]]([[]]))())[]))])[()()[]([(([()((()([(())(()([[(([]))][[[]]][([([((()))])[()[][(()[])[()()][()[]()]]([()()[[]]()])[[(())]](())[](([]))]])]][]))[()(([])[]()())][]])))[]]([][(()((((()))()()([[]]))))]([]))[])([()])[((())([([])](([[[][]]]()))[[]]()))[()]][])])(()([])(([(([[]]))[]](())))(())[])][](([()])))[[][]([])[]])][(()[()])][][])()((((([]()([])))(())[]([][])[])()())[()]()))()[](())]][][[]()](()()[])[([])][][([([])()][])[()([])][()]()([])]))[[]][(())[]()[]][[[]][]]()][[]][]])][]]])])]][][]]]))())]()))[]]))][[[]][]][((()[([](()[]))[]])[()]([[][[]][[][][(((())))]()]][][](())[])())]]))][]]]()[[()]()](())))())([]([][]()()[][]))))[([(((([]))))()]())[()()()]]])[])[][()[[]()]])([[]([][()][])]))()[])])((([(([]))[]()[]])([])()))[]])([])(()())[]((([[()]])((()[])))[()()]()((()))[])()()()([][])[[]][([([[]])[]][])[[]][[[]][]]]()[]()()[]([(())][()][([])(([[[][]]]))][([])][[]([[][[[()[]]()]]][()][](())(()))[]()]()()([]())(([])[[()[]]]))[]()[]((([][])))[][()[[]][][]()]()[][([([])]()[])()][][][]([][[([]())][][[[]]]])(([]()))()[]()()[[][]][[](([])[])][][[]][][[]][[][[(())()[()[]([[([])]((())[]())[][(())[((([])(()()())))]]()[]][[][][()()([])[]][[[]][[]][[[[][[()[][()[([[][([[]([][()][([]([()][()()][]()()))]())[[()(([[][][]()]([]))[([[][()()[]]([])])(()[](()[[]])(([](([])[]))[()])[])(([])[[[]()][]()([](((()))(())))[]][][[()](((())))[]]())])]]([([[]([([(())(()[([[[][([[()[([]([][([])((([()])))(())()]))()()(([]()))()]]])((([])[]))]()][]()[]]())]()[[]](()()))]())(()[][[]])])])([][([[[]]]())][][()])[]()]((())))][])][()[[(([])([()]))[][]()([][(())()][])]]]])[]([[]])]][]]]][][[(()[()]()[[[]]][])[()[]()([])][][][(([]()[[]()]()[][[(([]))()]]()))[]][[()]()]][]()][]]()][]]()()](()))]]]()]([([[](([[[[[([([][(([](()[()[]](((())[()()]))()))())]()[(())])])()]][((([]()))()(())[[[](())]]())[]()][[[[()[]][[[()]()()[]()(([]()[]))]][][[]]]][][[(())]()[]([()[[[[[[]]][]][]([()((([](((()[([])]))[][[][]])[]())(())())([[][][]][][([[][[]]()[([()()[()((([]())))()([]())]()[]()])]])[[]](()((([([[](([][](())))((()))](()))][[][[[][]](()([]))][[]((([()[[()]]])[()]))][]](([()[]()[[()]][]])))))([]([()](()[]()[][][][][[]((()[][()])[[[[()[((([[[[[]]]]])))]][[[[]]([()[[[][][]]][]]())]]][][]]])]))))]))])]]])]][()]()]()()]][(())[]])[][((([()])()))][][[([[]([])])([(()([]()([[([()][[]])()[]]()]())()()()())[()])]())]](([]())()))])])[([[[()][[()()]([]([[()](([[][][]][][[([[[([[(())()[](())(([[]()[]][])[[]][][[]][[[][]]]([]))]([])][]((())))]()()]][(()[(()[[[(())][[[()()](())([([])])([()[](([]()[(()())[[]()]])([[()[()]][]][])([(()[[]()]()[[]]([][()[()]([])])()()())][]))][])[]][[(()())([(())[[]]()[]()][][])][[]]()]]]])[](())](([])[]([[()()][]]()[])([[[]]]()(([()])[[[([[]])[][[([][][([])[]])][[[[[()()[][]]([][[][[][[()[[]([()])]]()]]][])()()](((()[]()[([[]][[][]](()()(())()()))]))())[[]]](())][]][]]]([][][[()[]]]())]([[]])[[[[]][[[(([]))()(([](((()[])))())[([][(([[]]))()[][]])()])]]]([]()[])]]][]([][])([([[()]][])](()[[][(([]))[]]][])())[])[][[(((()))()[[][]][])[()]][[]][()](())])()))])]])[])[][()(())][[(([[][[]]]([][]))()[((()))]()[[]][]())]]()]([])()[(()(()))([][[]]((()())([][[]])[(([(())][[][[([[][[[()]]]()()])()]()][]]))[]]()))([])[]([])((([]([[][]()]()[[()]])[]))[])][]))(([]))]]])]()[][[][[[(([][[][[]()][]])[])]]][][[]]]([])()()[([][(()[[]((())[()][[][]])]())[()[()]]()])[[]([[](())[]((()))[]])(()())]](([][]([]([[()][(([]()()))][]]))([]()[][]))[()]())[[()]][((([][]))[])]()[](([])[])[]()(()((())[]))()()[][[]]((()[[]]([[()]]))[])[(([[][]]([]()))[]())]([()[][]])[][]([])()()(())[][]([[(())]])(((())[([][][[[()[(())][[()]]]()][]([]()[()[[]()(()(()[])[][][])](())()]([](())[(()(())()()[[((()[[](()[](([]))[][()][[([[]][(())[]][[]((([])()))][])]])[()][[]]([][[]])]))]()()()[]([])[]]([[[[()][[[]]][][]][((())[][[][]()[]]())][]]])[[]()[]])[()[][][](([[()[[()[]](())][[]][][[]][[()]([][()[[]]][()[]])[][][[]()([[]][][[()]([[((([])(()()[[()[]()][]]([]([[()()][([]()[[()]])]])[[]])())[]))[](((())[[[]()]]()))[[[][()[([[()([((([()][](())())())()[[()][]]())[]()([])])[][]][[][([][[[()][]([])][([]()([][][])[()((()([]))[])[(([]()()[(()(()[()[]])[]()[(()()())[]]())[]][([][][[[]()]])][][][][]))]()[]()]())]])[]()]()(([]))()]])[][()]][][()]]][]()]]])()[(([][][]()()))][[()]][[]][][[[]]]([])][()()([])[][][([[][[]]()][((((())[((([([][][[][([])[(())][]]([()[([]()([[()()()]][(((()[()][[]][](())))[[[[[]]]]]([[[()]]()](([([])])(()()())))())[](([[()]]((()()))))([])[(()())]()((([](()()())[])))([])()([])((())[])(())[[()][[]][[([()]()[((()))[[]((()((())([]()[()[]][]()()[(([]([[]][[(([([()])()()]))][[]]])([][[[(([]))]][()[[]]()][()]]())([])(((())))[])())(()())[[[]()]]()[]()[][]][])))()([])[()])([])]])()]([][((()))])]]]))[]]()](())[][])])([[((()))]][])][[(()()()[()][()(()[])])]([])([[]][()(([]()[[](()[()])[]]()))])[(()(()([([[[[()]]]])])[[[([([]())])][]]]))[[][()(()())]([])(())]]()])[[]][[]])()[])])((([()[[](()()([[]]))]()][])()[](((()[[([([][()[]([(())][[[]]][([[]])()[]])]([]))])][]()][]))))[([[]])[]](())()(()(([])))))()())]()()(([()[[]][][[][]()]()[()]()([][[]((([[]])))][[()]([][()()]()[[]])()([]())()])])))(())]])((()([()(())][])))[[]][][]()[[([[[]]])()[]]]][]]]()[[]([[([])[()()]][[]]()([])()]((())))]])[()])()]()[]]())(())[][])][[([])]()((()))])][(([][]([])))][[[][()[[]]][]](([[()[]([[[]]])[][(([]))[[]]()([])()]]]))][[]])[]([][()]()[[]][]([[()[[][]([]())[]]]][[][(([()[]]))([[][[([(())[()]]())][][[]]((([])(()([]()))))[]]])[]()]][[](())()()])))[[()]][[]([(())([][]()())])[()([[()(())()()()([(()()()[][(((([])))(())())])][[]](()[])[([])])]])[][](([([()([(()[()([][([[][()]])[[[]]()]])])[((()[[]]))]][])][][()()](()[([()[()()[[][]]((([]((([[()]()])[]))[()[[[]]][(()[[]])][](([[][[()([[]((())[]()([])(([])([()])[[]][[][]]))(([](([][][[]()[]]))())())()])()[()](())[([]((()))()([[()]()]))]]]]))](([[[()[]([([(([[][([][](()([])()))()[]](())][][][])())[[]]()][(())(((()[[[[]]]]()[[]()[][[]]]([([[]]()[[]])])([[][]]))([][()][]()[]())))][][])[[]()()(())()]]()(()()()))][]]([])()][]))(()()))[(())][][]())[])[][]][][([]([]((()))[()]))]((((([])[][])[(([])()([]))()])()))[][]][])([])[][]]())([][]([()])[[()][][]])(())())][([()([])])()[()()[]([(())][])]](([]))[])())]][]()([[]()[(([(()[])][][])(()[]([]())))()(()[]()()())()[]]])[]([][]())[][]()()()[[[[[()][]](([]()))[(([()[]([()])][](())[()]))]]]()[]]()[[()]()[[([]())]()()()()]][]((()))((()))[][][][][()[]][()([])]([()()[[[]][]]([([])](())[](()(()))[][()[[]()]()[]])(()(([[([][]([[([])]][]))[][][[][[((([]))([[]]()[[]])[]([()]))()]][]][]]])))])[][]([][[][[[()]]][([]([()]()[((([[]([[][](()[[[][()[][]]][]([[]()])[]]()([]))([][][([])]())][])()])())([]))]([]([])))((()))[]([()([[]](()))([[][]()])]))]])(()[][[]][[()]])[]([[()][()]()[][[(((([()[[][](())][()]()])))([])([[](([](())))]))[[[([]()[][[(()[])[]()]][()[]])]]()]][][[[][]]()([[]])()][[][](([]))[()]](((())))]]([])[]([][]))([([[(([([])((())[([[[]]()[[[][()()]]]][]()()()[])[][][()()[]([(()())]()[(())][])][]()](()[]())[[[[[]][]()(())[]]]])[([()((([]([([(([()()])(())([][([()([])([]())[]])[()[]([][]([]([[([])]()([]([]))][]()([(()[]()([])()[(((())))])][(([][]())[]([()[(())([(([]))[]])](([]))()])[()])()()]())()))[])[]][][()[]]])((())(())([][()()[([[[]]])]([])]))()[[]()()][]()([]())[][])[()]])[()][]])[[()][]])))][[]])]]((([])))[()]()[])[([[]])][][[()]]([]))][][]([[()]([()][]())][])[]()([][][[()([[[[][][[()[](()[][(()([()([])]))[([((()([])))[[]]])[]]])[][]]()(())](([])[])()][()]]][])[]][](([[]]))()([[[[]]()]((()([]()[()()])))])(([((())[(())()[]()[([[[]][]()(([()([[[][]][[(([][](([])(()[[([()([[[]]][])][[[][[]([])]](()[](([()]([()])()())[]))[]])]()[[[]]]]([])(([](((([])[]()[][([[]()[]()[]][]()[()])])[()()[()][]](()([[](())]()())[(()[]((([()](((((([()()[]]()())([([[()]])][]))[][(((()))[])()[]]())))[])[][[(([]([]((()([][((()()())[()()])][[((()([])))[](()([]))((()))(([()()()]()()[()(())])[[]][()((((())(([()(()([[]]()()([[]][()])))[[]]])()[()](())[[[]([(([]()))[]][]())(())[()]]]()))[]))[(((([]())[]))()[])]])][([()][(((()))()([]()))([])[((([()]()()([])[]()[[]([][]())][])()))]]([]))()()]]()())))([(())]))()([([][([][[]]([()[]])[][[[](((([][](()))))[])(())]()[]])])]())()[])[[][](()()([][(())[([]())(([][[]][()][]([()[][[][()]]([]()((()[][()[[[][][][]][]]([[]])[]]))[()])]))[](([][(([])[][[[][]][[]]](()))][[]()[]]))(()))]])(()([[]]))[])])(()[])[][[]()(((()[[()][(()[()[]](()()[[]][][][()]())())[()([])[][()()(([[]](([([[][][([[[]][[()([()[][[](())[]]((([])))[[[()]][[]](()[[]])[]]]())()[([][((([[([[()()]])](([((()(())))]())[]([(()[])]()([[]][()[[[[]([])()[](([]()()))][][()][[](([(([()()])[()][])[][]()][[[][(()[][([])()(()[](())[][()][([[()]])][][])[]])()([()])]]])([])())[[()()()((())[(([([][([][])()[()][]])[[[]]]([[][()[]((()))[()[()[(()()[()])]]]()][]][[((()[]))]()])([(([][[]][]()((())))(([[[]]]())[][])([]))]()([[]]([]))[])[(()[[]][])([[][[[((([[(()(()))][[[[[(())[([([])]()())[[]]()][][]]()]()]()[]][][][()][()]]]([[()][[()][[]()[](([])[]([()[[([[[]][[[][][]]]])()]][]()[][[()[[([(())()])()((([()(((([([][])()[][]]())(()(([]()[])[[]()([[]])][[([()()][[[()[][[[([[]([[]((([(())])[(())][]))()])])][[()[]]()[(())]]](())]]]([]())([][[[][]()]])])]([]((()([[[][]]])))())[]][]))([])))((())))])))[[(())()[[][()[]()[()]]]][]]]]]]([()[[]]((())[[]][((()))[]])][][((()(())([[]])))()[([])()]][()([]())((()[])())[]]())][](())))(()[])]([[(()[(()())])]])]][[]]))[]((((()(([()]([])[])[]()([]([[()][]([(([(()[])[][]](()))()(())(()[()[[]()][(()([(([[[()]]([][[[]][]]())][()[[]](((())())[]()[[[][()]]][][(()[[[()]([])(())[()(()[]([()][()](()(()(([[[]][[([[[]([[[][()[][()[()][[](()())[][]]()[([[[]([[[[([]([])[[]()[()]])]][[()()]()]()(()()[()])]])()[]][[()]]([[[][]([()]()()[]())]])]()())]][]]]][]())[]]]()[[()((())())]()(((()[])[]())())])]]()[([(()([()]))])()[][[]([[]][[([[[]()][()]])[]]((())[[[]((()[[]]([][])[])((())()()()()))][]]())])()]][(([([[][][(())]()])[][]]))[][([[]][])[()]][]()[](([[[(())()()[()[]]()]][[]()[][][[[]][]]()[]]])([()]()(())[()[([[][]])][]][]()()[]))]]))))[][]))]][[][]]]([]))]([[()()()()[]]]))]([[]])()))]()(([]((([])[[][(()()[])][]]([()])))[[]]()(([[]()()([[]])][[][[()[]([()[]])]]][])[()])([()()])(())[()()[()]]))()((())(()([[()]()][][][][])[])[()][]))[])][((()[[[][]()]()([])[]()][()][[]])(()))]])()[]()[][(([]))][]([[([[]])]()][([(([([][[]])()()()[]])[])[()]([()[]][])[([()][((()[])[[]()][[()]])][])(((()))(([]))[])[]]])]))()[](())[]])([()()([])])[]([])[()]]((([]()[[[([])][[[]()()()[]]]][]([][([([([])])([[[]]()])]((([([])()()])[()])([[]])))()]())()][])))[[([[]()()()()()])]])[])([]))))[])[([])(([][()])(()()([[]()[[][[[]]]](())](()[()]()([(([][[]()])[])])))))])(()))[][](([()])((((()))[[]])([][()])[()([()()()])[]])([]))[(())[]])()(([[]])[((()[[[(([])[[][[()()[]]()[][][(([([(((()([[]]))[])[()])])][])[][((()([[]]()[[]([()])][])())[[][[][[]([][[]][([])]())](()[([()]()[])])]])])](([][]))[()[]]]](()([()])))[]((([][([[(([[][](([]))]))()[]]][])])(([[[[[([])(([][]))]()[][[]][]]]]])[[]([][()[([])()(([[][()]](()[[()]])))()][()[]([])()]([(())])](()))])))](()([]))][]])([]))][]()[([])[][]])]]]])]])(([()[([[()]])(([]()())())[[]][]([])[]()]][[]][])(([[]]()[[(([])(())())[[]]()](((([()]()()[[()[]()(())][]()]())()))[()][()])]))()())[[][]][[]()()][(([]))]([[]]()()([()([([])]([][[]([][])]))()([](()[][()][])([])())[([])()([][][])]]())))[(())][]])[()[(())]](([])(([])))](())[(([()(([]()[])[()]([][()()()()]))()[]])())]]()()]]]](()[])))()())]()([[]()([()()]()[]()())]([[[]][()]()](([])))([()]([])[])(()))[][]())[]))][[[([(((([]))))()([][[]]())][])(()[]([[(([])[(()())()()([])[[][(([][][])[()])]()]][]())()([(())])[][()([[(((())([[[]]()])())[])]][[([[]()][](([])))][[(([()]))]]])][[[()]]][]]]([]))())[]](()())()](([()(()[([]())](()[][(()())[]([()])]))()([])[][()(()[[][][]]()()()[[]](()()[][[()]])([]))]][()][(([])[])]))([[[][([[](([])(((([([][[[[]()][()][[([])(())](())]]])()](())[([])((()[((([[]])[([()])])(()[]((()[][[]])[])))[]]([([[[()[[(()[]([])([[][[[]]]][([][])]))(((([()[]])([[[]]][]))))()]((()[]()[][])[](()[])(()(([]))[][]([(()[](([[[]]])))])))[][]]]()[[]][[][][()[[[]()[[]]]((([](()))()[(()((([(([][]))][((([])))([][][][((()(()([])[(()[])(())[]]()[][])([([[()[[]([])]](()([][[][][]()[()()[[[]()][]]][]([(())]([](())))][][([()()]())[[()[[]()[()]][]][]][]]))[]()[]([[]])][[]][][])([])]))[])][[][]]()([[]][()[[][]][[]()[][](())[](()[[[[]]]][])]][(([])()[([()[([]()[[()]])]([][])([])])()([()[([])[]()()]])()([])[[(([])(())[[][()[]]])]]]()[()[]()([])][]()[])]))()[[][[][][][()][]()]()(())]]()())([])([[((([()()]))[])]()]))()))()]()(([()][]([]([((()))(()[()()]()[[([])][[]]][[][[]]()[()()]][(([[]()[((([[]])[[[((())[])]([])[[]]()(()()())][]]))]([]())[()]]()))[([[]([[]])[]])[]()[]()(())][((()(((()[])())()(()[[[]([][])()][]])[()](()[]))[]()()))]]([()][()]()))[[]]])())))([[()()()[[][]]()]]())[[][]]))[[[(())[[]]][()()(()())[([][])()([([[][()]()]([[[[[[()]()[][]([[()]])()][([]([[()[()[]]][(([()]))]][(())()()])()([])[()])[]()[([[]][[]()][])([([][])()[[]]()][[]([[]])])]][(())[][()[]]]]()]][][]]))]()())[[[][[]]((())([])[()][((()))])][()]((([](())[[([()()(()())([()])()])]([])()])()[(())][[[[]]([()[()]])]])()[]([](()))(([](())[])())[]()[]([([[()()[((()[()[([][[()]])([])]])[(()[]([][])[])()])()]((()[]))]()()()]([[]]([])[[]([][][][]()[])][()[[]]]()[])(([][[]][()[]([[]])()[[]]((()(((((())))[([(([])[((()())[])][][[()](())])([[[][]()[[([](([][][]()))[()[(([]())[]([(()[()((([]))[](()[][[][[]([])()([])]()[]](([][][[]])[]()[][[]])()))[]()](()([[([]()(([()[]([[]])[][([[]][][])([])()]()()][][(([])()[])[[]]])([][[[]]()][[][()[()]([][(())[[][[]][]][]([(((()))[[]])])[(())]])()]][])[][][]))]])(([])))[[([]([][]))]((()())([][([])()][([])(([])()[]()[(()()[()])])([()[[([[(([[][[[(()()[][()[()()()]()()][[(())()]]())]]]][()](([]))()[()[](((())()[()]())([((()))]))([]((())))]([()()()([])][()[[([[][]]())[]]]()(()([]))()]))()[])()[]]])([][()[]]([[()(())[[]]]]))]]][[]()[()()]][])]([([])()[]][[[][()[[()[](()[[([(())(()()())]([[]][])([()])[][[]](()[]))]])[]][[[[]]]][[]]]()[()][[()]]][]()]]))(((())[])()))[]()][((()))][([[][[][][](()[[([](()[[[]][]]))]])[][]()[][]([(()[[([[[(()[[[[]]]((()((()[([()]()())([])]()()(())[])))()[]([()][([][[][[][([[[][[([])]([[()]()[[]][[[(()[])]]][]()[(((())))][]()]([[]()][]))]][[]]()()]()()([][()()])[][[[()[][]]][([[()(())][]()]()(()()([[()(()([[[][]()]]))([])([][([][[]()])]([[]]))][][()][]]())))]][[()()[[([((())([]))[[[[]][()]]][]((()()[[[]]()])())])[](()[()(()()((()[][](()[])([([][()])()[]]))()[])(()[[]][]()[][]()()((([[]](()))()((((()[[]]())())))([])))))()][[(([](())))]][])][()[][][]([()][[]])]()()[]]][[]]][[[]([])()]])]]]()[[][[([])]([[](()([([])(()[[]()[([[]])]](([][])[])()()[([][[[[[]][]]]][])])()[]])[][])[][][]][])]][])[]])(([])[][]()[][][])([(()([]))][][](()[()[]]))[[][()]])][][])]]])()()]])[]]()[][])][]()])[[]()()]()][[]([(()()[][[][]])[[][]]()][((([()])[(())[[()][][]]](()[]()))()[][([[]][[][]][])][[]])[]([])][[][([])[()]][[([](()[()]))]]]()()(()[()(((([])))(()))[]]())()(([((()[([(()[[]([[][()[]]](()([(([[[((())[()])]()()]([([[()()]][[()]])()])()][])[])](())[]()[()]))[])()][[[[][][()()]][[]]][]()])((([(()[[](([])[[([()])[[]](()())]])[[[[[]][]]]]])[][][]])))()[[[[(())][]]()[()](())()([()]([][()()([])]))]]([()[]()()]([([()]())([()([])])()()]))]())()[]](()([[([()[]()][[()](([])(()))][])]][]))()())[])[][]])[()(([]()))[()]]()([()[]][[[[]]]([[]])()])))(([[([[]][([[]]()[])])][]([][])([()()[[]]]([[[]]]()[][[][[]]]))][([()[]([][])((())[]()([[()]](()[])))][](()))]([][][])[(([[[]]]))()[]()()[[()[(()[])([[[[][([](()))]()]](())([])][[(([]))()[[]]]])[]]]]([][])][]([][])))([[[]]]()[[(((())))[][[[]()[[[]]([[][](())]([((([]))[(())])[[]]][()[[][][][]]][])[()[(())][]])(())([][[]])]]]][[][[([()()[]()]((()())[]([()[]][[](()()([][])([[([([()()[][][]][][])[[][()()(())()[[()][]]()]([])()(([]))[[[]](((()([[[[][]((([]))(())((()()())[]()))]][][()(())][]([](([[()]](((()(())))[][()]))[[]][][([[]()])[()][()]][()[][(()[[([])()([([]()[])])[]]])()()]])())]([()])[[]([[[[]]][][()]()][(())(()([(())][[]][])[])])][(())][[()]([])()]))[[]]([([])]([][()])))([](([[]([[]])()()])()))(()))]][]([(())](((())))[])])]()()(())[[]][]()[]])[])])(()(())))[]()())(([([[]]([[([[()[]]][()])]]([((()[[[][[[]]][]]()[[](([()])())]]))[[([()[]()])]]][]))())([])][[]()][[()]([[[]]][](()))([])()([[([([([])])([[()()]])])([()])]][](([(((((()[()()]([])[[]])[][])([])())[]))])[]))([](()))]([()]()))[(())])]]]]([()])[])])[[]]][]))[]()]])[[][()]]][][]]](()[])([]()[][])()])()[][]])])))([])[]()[])][[()[[](([](())[()]([][[]]((())[([](()()()[])([]))])([]()))()))][()()[]()[()]]]])))][[]]())[[]])]()]][(())()[][[]()()()]]]]](()([()[[[]]]]()))(()[])]([[]])[]()()[[]]]]])(())()(()[(()[[([])][]][[]])])])[[()]][[[[()[()](()([]())()[])]][]]()(())[]]()))])[]()())))[()([])()]())()][[()[[]()()]]](([]))[[]])(())([[[[([([[()]])])[[[]][[()[][]]][([[[(())]]])]]]][[[]()][]()[][]]]([([]()()(()[]))[]([])[[]]]())][()[([(([(())((()[((()[]([[]])((())[(([(([([])][]()[(([]))]))[(()[[(()())[][()](()[[]])][[()]]](()))]([([(())(()([()]([]))())])]()[])()])([[]])())])([][][])))]))]))])]]())][(([([[[]]][])]([])[((())(()([[]])([[()([]([])[])]]))[])][[][[[[]([([][()()(([])[])][(([(())])[()])([])(())])]()())][]([]())[]]]([](())[()[]()][][]()()())([])(())[](())[]])[][])[][]]](([[][]])[[]([](([(())]()[]([[[[]](())]()]([([])]()[[][][][()([[]][(())][(([][[]]()()))][])]()[[([][()]()([])()[])]]][[()]]())))))][()([]([])([]))][([](())[[]()])[(()[][()])(()())]])([][[][]])][[]()][][[()()((()()()[[()]]))((()[([])([][]()([[]]()[]()))[]([]())([])[]()])()([]())[([])[]])([][()][[]])[]](([][([][([(([][((()()))[([[[[]]([])([((())([]))][[][()([()(()()[])])]])((()[()[][]][[][[]][][([])()(([]()))][](())][]))((([]))[]())]]()())([])]]))])]())([]()[])[()]])(())[()[]])(((([][()[([[][()[]]])(([]))]]))()[(([()]))])[]([([([(([[][(())[][()()]]]))][[]()[]]())()(())])()()()([])[(()[])]((()))]))])[[][([][[[]][]][[]][([]())]())]]])]]][()(())]][]()[[]])][[]]]([][])[[]()()(()[])]([()])(()))]))()[])[][])()]]]])))]]])()[[][]])[()()[([][])][(()[])]()])(()(())(()))((())))])[[[[]][]()()][[[()]()([]()[])()[()][[]()[[()][[([][()[([])([])((()[([][(())[][()([]()())[[]]][()()()]])]()))[(((()((([]))[[][()[[()]([])][[]([])][]]])())[[([]()[()[][([[][]][(())])[]]])]][()]((()[(()([])((([()][([])][[]][]))))])([()[]]()[])[[]][])))]]])([](())[[[]][][]])[[]()([[(([][[()][][][]()][][]())[()]()[])()[][([][[(([])[()])][()]])()]]])[]([]())[[]]]][][()]]]]()]]][([][[()][]][][[[[[[[()[]()]]([([])()[[(()())]()[][[[([])]][([[()]]())[]]]]]())(()(()([[[()[][()[[]]([]()[[]([[[][]([])[[][()[[[()][[[]]]()]]]]]][])[()[[]([()()])[]][[]]]][([])](()[[[][]]()]()))[]]]()][(())[]()[([])][[[[[]]]()[]][()(())((()[[]]))]([[]][])[(([()[]](([])))[[]()]((()[[]([])])(([()()][[[][]()]](()([])))[[[([[()(()[((([[]])[])[])()[([][()(([[(([]([[[]]][[()[]]])[([](([][])[]([[]]()[[[](())]([[]][][][])[[]()[[(()([(([]))]([]()()[][](((()[]))))))([[]]())[[[()][()][[(([]())([]([]))[[()[([()[][(()[(([]))][][][[[][]][]][([])])[[]][(()())][]]])[()][]][]]])[]()[]()()][]()]]]]]]][[](([]))[]()[]()][][(()[]())]))[[[[][[]](()())(([]()(([])[])[[]]()[(())[(()()())[([()[]][])((())[([])](())[[(()[(())[[]][(())[]](((()[([][[]][]([])[]((([][])[][[]][[]]())([])[][]))]()[])[][][]))])]])]]]()[]))]]([])([[][()[(()()())]([][]()[][[()[([[][()([[]([()[]]()())[()]])([])]][])][]]])]()](()[]))[](([])(()))][]([]()[()[]](()([()(())])))((()()()(([][]))[])()))]())[])(()[[[][]]])[]]])())][]()([[][]]()([])[][[(([[]]()()(())[][]))[]][()()()]])([]))(())]])[[[][[[][]([])(())()[]()(([])()[[([][])()[(()([]))[]]()[]()](())[]])()()]][[([])[[[](())()()[]()]]()([][])][[[((()([()[[]]](()([])))))()[]()()]][[]()]][()][]()][()()]]]]]([][][]))]((([[()()(()[([(([(()())]())[(()[])])(()[](())[][[([[]([])])]]()[(([([]([([]())[]]()[[[()]][][]])())(([][][]))][()([(([][](())[[((())[]()[])(()()[])]]))])((()))[][[()][[[]([][]([])[])((()))([([[[()([()[]((()))()])(([((()[])((([](()[()[([]()[])()]][]()())(())))([(([]()))[][[()]([])]][[]])()(()(()[[][[(()()[])]]()])))[][[[]]([[[[[[[]]]]][((()))][]][]()](()))([])[]][])]([()][[(([[]]((()[]([]()((())(())[(())])))[((([[]](([[]])[][[()](([](([()[]]))([]))[])()]))))])[[][[]](([[]]()[()]))])[()])([]()[(())((()))][[][[[()]()[[()()[[([[()()]()]([]()))[][]()(([][[[]][]](()))[][])[]][]]]][]()](())]])(()(())([])([[(())[](())]]))]])()[[[][()][](([(([()[]([]())[]][[]])[()[]])[][][[[[[]]][[]([[()([[]]((([][[([]([]((()[][][(([][])())[]()[]()]))))][()([])]]))[([]([][]()))]))[[[()][][[]()()]](()()[([[(()[])[]]][()])[()]()][][(([]))()])][]()(([][])[[]([[]])()[]]()()[](([[]])[[()][]]())[()()](()[])([][()]))(())[]()]][()]([[[][]][][]]))]]][[([([[[(()[[]])()()[()]]()]]())])][]][]()()(((()((()((()([])([[[[]]([(((()[][[[()]]][[[[[([[()][[()(([]))[]()][([(([((()()()[()[[]]]()[][]()())(([[([()])]()[]]([]()))[()])[])])[[][]](([([])])))])([[][(()()[]())(()([][][[][][]()]))(([()[]])[[()][]][(([])()[])[[]()][]])[(()([([])[]]))][]]]())]([()(([]))[]([])(())([([])([])][()[()()]()()][][([[(([()[[][]]((()[]([([[][[]]][([][((([[]])()[[[][](([](([][]()[][()])))[]([[[()][]]][]())[(())]())]][]))][]([][])()[[(()())([][()()[[]]][[[[()]]]])]][((([])[][]))(())])()[([][((()))[]]())()[[()]]][()]([(()[])])])])()()[])())]))]])])]()[[]])[()[]()]()]])()[]()][]([[[()]([])((()[])[[([[][]])]()])()]][](()()[[([[[()]]]())((())()[])[]()]]))((([]()[][]([](()(([][]))[])[]([[]][(())[(())()]([[[]]()()][[()[[]][]()[]((([[[[]]]()])[][](()[[[]()[]()]][])[(()(()))(([((())()()[][[]]((([]))))()]))()][])([][][])[[()](()(((()([[]])()[[]][]))())[])]((([[[]]])()(())))[])()()][]])])))(()))[[()]])()()]]()()()][([[()([([])((()))])]])][()][]])))])]((()([]))()[(()([(())[([()]()[])[]][()[]()()([]([()]))]][][])[[[()[()()]][]]])]())[]]()[[]][[[]][]][]()))[])([([])[]])[])[([][])[([][]((())())[])][[()()][]]])[()((()))](()))()(()[][](()))))([[]]()[([][([([](([])(())[][][]())())])()])()])]())(()))[]][]])()(([([]([](()))(())())]))())]]][][])()])]][](([][()[]]))][()()]])([])([]))[]][])])[]])()[[[][][([][])]]()][]][(())]([])[]]()))())]()])())[[]])([()[[[][([][](()[[()]][()[(([]())([[]][]())(())(()))]]))[]][]()((((([]()))[]))([]([]())))()][]([])]][])[([])]]()[[(()((((([[()[]]()([])[[(((([[[]]]))[([[][][]]())]()))[][[][([])([]())]]]()[[]()()]]()]))([][])[]))[[]]))[()[[][[([]([]([]((())()[])[()])()))[((([[]()[[][[]]([[][((([()[]]()[[][[]()[[[[([]()()[[()](([[][]])[[][()](([])[[]][[][](()())])(([([])]))()][[[()[((()()()))(())]()[([[([[([[]()[()]])()][][(()[[(())(()(([[][()]][])))[]]()])[]()][]]()[])][]][()([][[(([])[][](())[]()([(((())()))]))][]])])()()][]]]])]([]))][(()[()[]([]([]))])]()[[]()]()]([([])])[][[]][()(()()([][]())(()([][]([([[()]][]([][][[[[](()[()])][][(((())()[]()[()][]([])[]))()[]]]()[]])((())())(()[([][[]])[]]))])()))(()))[()][]][[[]()()[]([])]](([()]([(()[][((()[()()()[](()[])[](()[[[()[[]([])[]][]([()])]([])]()])(())])[][[]])[[[[([]([()])[(([]()[]())([[]]))([()])]())()]]()[[]()()[]()]([])([[]][[]])]][[][(())]()]])[()[][()[]]]][[[()]]()][])()()())[])([]()()[([]()())()])((((())[[[[[]()]][]()(())((([]([()](([]()([[][][[[]()]]]([]([][()[[]](()()(([[]()()[[[]]]][][])))])((()[]()[])[[()]][[[()]([][][[()]][[][][]()[([([][[]])])(()([[]]))[]][]([()((())([[][()]])[[(())]]())[]])()(())((([([][()][()](((())([]()[][()([](()()[]([(())[([()()][][[]][()([()][()]())[[]][()()]])[][][[()([][([][()])])([[]])[([](()))()]]]([])]])([[()[[]([()()])()]]])[[[[][][(([[][()](())[]]([[]]))([[()([]([[]])[][])]]()[][][[([](()([[[]][[[([([][()])])([][])]([]()([([]())]([])[])[][])()]()[][(())[[[][[(()[])]]]]]]([()[]]())](())())()())[]())[][[][]([(())])]([()])[[()]([[(()[])()][[[]]]](()))]()[]][[]()][]][()][]))]](([[[]([()(())])]]())[]((())[[[][([[][[][][()]((()([()[()]]()[([((())()[])])][]())[][[][][()]()][](([])))[])]])[]](([[[(())[([[(([]()))[]]]()([])[]((())[([([[()[][][]]([])])](([[[]()](()())]()()()[[[()[][]]]]()([()([[()]])]())))[()([])])(())]()[][])[(([()(([][()])(()))[]]()))()[]][()]()()([()][]([](()(()[(())][[[[[]][[](()()[][[(((()([[]()]())))[()()[]]())[]()]]())]]]])(()))))[][()[]](()))]](()([])([[([()[()]]())][([()])]([[][]][][[]])])([()()[([()()]()())()]])[][])[][(())][[()[]]([][])]]])[()[((()))[(()())(())]()]])]]))][[]]()()[[[([][[]()()][])](([[([[]][])()]()])()(()(([])))([][])[])][[[([[]][])()()]()]()(())]]()()[[[(())]][()([[[[]][[]([])(([[][[()]((())[][([[]])][])()[]()[]]](([[()](())]((()([()][])[]))((()[]([](([[]([][]()[])][]((([]))(([[[]]][]([])()[])[([[[]][](([]))])])))[])((([([][]())]))[][]))(())))[]))))]](([]))[][(([]))[][]()[[]]]])()[]()]]()])[()]([([])](()()()())())())[]]()()[][()[(()()())(()(()[[[()[][][]((([][][()])[[]([[()[[()]]()()()](([()([((()[[]][[]]())(()([]()))[][[[([(())[]][(()())(()([]))(([])[[[[]]()([[][[()]]]()[[[]](())])][[()][[(()()[[]]([])()())(([[([()[[][][[()]][([][[()(([])())]((())[([([])])][])[[[()[[[()((([()])[[](([([[][[()()]([]([])()[][][](([]((((()[()([][])]))[])))))([])()](())])])[]())]())())()(()[[[]][[[]]][[[[[[][()]]]]]][[[]()[][]([])]][[]]])()()]]()][([](())[[[()]][]](()))()]([]()())()]][([])]][]])[]]()]])[][][]][(())([](()))][]([[]()])][[[]]]))][(()[](([]([](([][[[(()[()][]())(([()]()[]))()()]()]][](([])()()))[][[]][[()[[][]]][]]))([])([()])((([[[()()]([(([](()()((()()())())[[[()]]([])()[()[[[[(()[[([[([[]])]])([([[()][[([]([([])[]]))[]()()()[][()]()][()[()()()]]][]][[()[]()[]([])]((())([])([([][[]](()())()([]()[]([])[])(())[])()])()[(()[]()(((()[][])())[()]))([([])[]])[[[](([((()([][])))])([()()[]((([][])))[]])()[[()[()]()]])[]][]([][][[[(())()[]]]]([]))]([])(())]())()])()([()()])]()[[()[[]][]]](()(()[[(([([])]([])())(([[(()[[[][]([])()()][]])[()((()(([()[][]]))[()]))]]])(()[]))())()()][][[][][][()[]()]((())())[([][]())][]]][]([[(()[()])[][]]]))(((())))[()])[][[()]([[]])][[]][[()()[[(())([([[]()[]][][()])])][()[]]][]][[]]]([]))]])()](())][[([]()[])([])()[()][]]]((()(([[()]]()))))[][]][[]]]()[][]](([((([])))])[])()]))())(([])([])[])()[]([]((()[[]])[(()[([()][()])((())())([()()])[]])[][[]]](())))])([[]])()][[]]][][[([([]())[]()])[[][[]]([[][[()[][(([[](([[([(())])([(()()([]))])][][]]([()()[()()]([])[](())][([])([([[]]())[]()()])]())([][]))[()([][[[([])(())([([[[()[]]]][])[]()()])(()())][[[](())[][]](([[()](())[()()]])([][]))(())]([[]][([()([[]])()[]]([[([[][]])()]]))[]()[][[]](()[((())[()][]()(([[[[([])]]]])))])])[(((()([]())[[(()())]])()[]))][[[[]()(()(([])[[]]([[]([[][(([])())]([[][[][]([([[][][[()[[()[[(([(([])[][][])[]()([([])()()()[(())()(()[])][()((())(()[][[]]))][]()()()([([[]([[]](())()())()][[]()])(([])()(([]))())[]])][([]())[]()()]())[([[]])]])()([(())]))[[]]]][]][[()[]][([](([]))[])]]]]][[()(())(())[](()())([])]]([])((([()[[][[]]([[([[]])][((((())())))(()[]())(([]))]()([[][]([](()[]))](())[])])]])))(()(()([()()]()))())])[[]][][][()]()])]])]([][()[]()[([])][[([[]])()((()(())))()[][(([]))[()([[[][]]()[]])[][(((())))[()[([](([()]([][(([][[]][][()(()[])][])())()])[[[[[[[]]]([[[(())()()][]](([]([](())())))](()[]))]]]][]((()()))[])[][()])())()][()][]()[()[[]]([])]]]][]]]()]][[()][([[()(()([[()]])()[()[]])]]())]]))](())(())())))]]]([[[][()[(())((()))[[]][]]]([[][][](())])]]([()()])())([([[][([()]())()()]][])()])]]())[]])()[(([[]()[][()][]()()(())])[([][])([])]()([(()(([()[()]][[(()(()[((([([][][]()()[()()()]())]()))[(([])[([])[()]][])](()())[[]][][(())]([[]])())]()[()]))()()][][(()())]])([[]])))[]])(()([[()()][[()]]])([[[([])([[][]()])]([])]]))[]()([[]]))]][([[]])]())[[([[]]([()]))[]()]][[()][()]]())](())[()]][[]()[]]]])]]([[[[[()(()[][()(([]((()[[()[[]()]]]))[])())()][(([()])[])()])]()]]]([]([([][]())]([])[])()((()))[[[[][[]()]()]()]([]()[])])[][]])(([[]([][](([]()()[()([[][]])([][[][[]]][](()))][])))])())[][[()][[([][](([[][][][[[((([])())[[[[[[(([])[[]])]]][[()]]][[((()))([](()[])[])][]]]()[]()])]()()][]()[][]([()]([])())[](((([][(())]))))[][]()[]]]((([()([][(()[(()[])[]])][])][]))[](([](()(([[]]())([][]())))[()])))[([][()()([([[()]([[()][](([[(())[]]()]([]())[]([]()()(((([()[[[]()][[([]())[()(())([[[]][]])]](()[([])[][]][][[][[[]][][]]])([])[[][]()]()]([(())][][]([[()]]))][(([])[])][(([])[[()(())[()]]()()])]][])[[]]([()[([])()]][]))([][[[([][][([[()][()]][])[()]])()]([])()]]((([([()]([()][]()[(()()())]())((()[]([](())))))])[]))[[]])))[[](([[[[]]()]()(())()]()))]))([()(([])([])[])()([[()[[()(([]()))()()]]]])[]][][][]))]([[[]]()[][]((()[[[((())[()])]]]))])[]([][]()[][[[[[()][][][[]][]()]]()][]]()))])])[](())])]))(()[[]][()])(([][()]()([])()[[]]()[])[[([[([[]()])[[[]]([[]])]]]([]()[[]([[[][]]])])())()]]()[])([()])()(()))[]([])][]]([()](([()[]()])))]()])[](((()()(()(([])[])()[]()([][()][][]))()(()[()()])[]))[[()()][((([[]][[][][]]))((()))()[[([[]()[([([[]])][])]][])()[]()][]])]]((((([]())([](()[([()[][]([()])[()]])])))))[])))()([]())(())(()))()((([][[]][][[()[[()][[]]()[[((())())[][]()]()][(()(()[[([()[]])][](([]))])((())))()]]]])()())())(([]))(()))[[]])())][(([])[])([]()([(()([]()))[]])([])[[((([][])[]))](([[[[]]][](([(()(([][][[]])))[[()]]()[()]]([])))()[]][()[]()][])()[])()[(()(([]))[[[([[]][()][][(([]()([])))[][][][]()([][[(())([(())((())()()[]([][][([([](([()([][(())[()()]])[[[][][[([][])]]]]])())[()]()[][()[[][(())[]]]](()[][[]([]((())))])(([])[[([][])[][][()]][]])[][][][[]]())](()))()]))()][([(([]())([]))])][][])][]][](([()[]])))][])[]][([][[][]()])]]]()([]())[(())])[[()(([([()(([]()(()[])[()]))[][[]][]])((((([[]()[][([[()[][()][()[[[[](())]][[([][][])]]]][]()]])[[][][(([([[[]]])(((())([][])[(()[[()[]]][]()())()([(([[]])(()[[]])[])])[]][])[][[]])]))]()[]]][[]][()()[[]][]]])))([])))[]]))(()[])[][[]]]([()])]]])[[([([])[()([[](()())][(()()[]()(([[[]([])]]())[(()()[[[([])]()([[]([([[]])([])(()[])][]())(()[])()])]])[[()]]()[()(([[()[][()[]()[]]][]()()([]())[[]][[](((()([()()[()[]]]([()()])()))[][]))]]))[([(([([[]()])([[[]()(())[[[()]([])()]]([[([][[][][[]([])([][][]([[][()[][(([[()]])()([([](()([([])()[]][])))()][]))[()[[()()]](([()]([])))([])([[()()][()]])]][][]][]]([[(()([()[([[([])((()(())[]))[[[()](())[]]()[]]][([[([])()[][]()[[][[([])]]]]([()[]()]()[[[[()[]][()()]]]([])[[[[][()()(()())]]]](([][][[]()])()[])()]())][]([])(([[][[(((([][]([()][[][]]))[][])([[([[]][])][[]()][][((())([[][]])(([])))([([][]())[]()[()(())]]())]])[[[]]][[]])[]()[[]()()]([][()([](([(([[][](((([(([()[][([[](())[(()([])[][][]()[[]])]()(([[[]](()[]()[](([])[()](())[([][()][()]())]((()()[])([])))[][])()]()))(([[]][])[[[[()[]]([()([[]]())][][()]([]))]](()[([][])]([]())([])[][]((([()]))[]))()])])(()[(()[()]())])([([])[]()][[[[[[(()[][([]([])()([])((()))(([])[][]))])]()][[[[[]]()()]][][]]([()([]())])[]()]([()[([()][])([[]()[]][]())][()[[[[][[]()]]][[](([]))[[[[]([[[[]()[]]]])[]][()]()]]((([([]([[([[]][()])][[]]()])())][[()[]]()[]((([[][][]])())())[]()([[()()[][[][][](())]]])]))[[]()])]][]]]((()()()([]))[(([]))()][][()()(([][])([()]()()))]))[[[[]]]]()]()[()()]((([[([](([[](([])())()][][[][]][]))(([[]()[]][]())([[()()]]([[](())][()([[()([])[][]()()](())][[([])]]()[[]]())]))))()]])())[])(())[]]][()])]][]))][]([[]()][])[]))))[()[()]([]([]))]]))][])[[()(()[((([])[[()([[([][(([]))[[[][]()[]]()()()]([([()[[][]]()])[]])()][[(()[[]])[][]]([])([])[[]()]()()()][[()](([]))()])]](()())()(([])))(()[][[[([][])]][](([[()()]]()[()])[][((()[[]]))][[[()[][([([([()][]()())([(([])[[[()[]()]][][][][()](())[]((())[])])])[][)(())()][[[][()()()]]]())[][]](())())((()(()([]))([()(([]))](()()())([[[]]])())[()])[[([((()()()[][((())[])])(((()([[][()]])())[[([])[([(([[([])]])[](([][()[]]()[]))([]()))])]]])))[]]())]])][()]][[(([]))]]]()([([])][](([])())())][([(([]))[(()[[]()](()[()[]()][]))]](()))])])]])[()])()[()][[()]]][()((()))[]]())[[][]]()]]))]()[]))([]()())[]([[][[]()][([[[()()][[[[((()()()))([]()([]()()))]][[[[[[(()[])]()]][][()[]][]]()][(([[]])[]([][]())(()(()[])(())))]()([][()])([](()(()))())([[([][[[][[]][][]][()]([])()[]()[(())]])()](([]))[]])][]]]([]()[])]])]()])(([(())]()()))[[]]]]()[[]]][[]()]))[][])[]]])]][]))]])(()))())]][][(()[])([])][([[][]()])]([[][]]([]))()(()([][]))[]([()([[()]][])[]]))]])[]]([])([])()]()()[[([()[[]][]])([][[(([])(()))[][[](([[()][][](()()[])][]([])[][()]))()[]][]][][[][[(([][]))((()()[[]]))]]]])][]()()])]()))(([[[]()]()]))][[]]())[]([][(())][])]]()])([][()]()))[()]]())]([[([()[]]())]((()([(())]()[])(()()[()]()[][])(([]()[])))[()[[]](())])])]((()[[[]]]())[]([[]])))]]]][]()(([])())()](()[()[][]])])])][]()][]()[](())[]]()()()()((()[][[]][[](([]))][[((([[]](())()()[])[()([][([([[][[()[()[]([[]]([()[[[[[]([()])[[][([[](((((([[]]))[[()()][[]()(()[])]][]([]))()()(())[(())]))[]())])]]][][[]]()[](()[][()])((())(()([][])([[]])((([])[]))))]]]]))](([](([[[[][][]]]((([])[])[()()])]()([])())([]))()))[]][]]]())]([]))[[[[([[]])]()(()[])[]][][]()[]()]]])()]([[[]]])())[([])])]([][][])])()[([[[()]]][[[()]]][[[()]]])]()(([])))[()()])()]([()[([[][()(()(([([[]()()][(([()])())])]((())[[[]]][]))))[()]]]()(([[]]()))[][][])[]]]())(([[][()](([[()]][[][([])[[]()](()[])([])[]][]])(())[()()]()[])([[[]]])](())(()(([])())))[])([]))]([]))[])]())][[]([])][])[[]])(())]((()))()][[[([]([]([])((()[(()([][])([]))]([][])[[][()][([()])[]][[]]]))[[[]]]))[[[[()(())]](()()([][(())]([]()()(([([])])[[[(()())()][]()()]()]())[(([[]()])()())](())()))()()[]()[]())][()([((()[()[()]]))])]]]]]]))][][([][])[()[](()[[]()[]()(([()]())[]())[((()(([]((()()((([((((()())()))(()[(([])[][])()]))](())[]())[()])))([[]([][])(([])[()](())())()()](())()[])[[]()[([()[]])([])()]]([]))(([])[]))[[()]][]))[()[()]])]()(()([]([[[]([])[]()()((([(())][[]][]))())]])[][]))])([]([[[(())]]([][]()[][]())[[(())][]([(()[([((()()(()[[]]())[]))])()])][](()))(())([([][])[]()(())]())]]()([[]([])]))([()(()()()[[]]())[][]][]))][][[][]][]][]]([])[[]]))[])[][])][])))[[(([[[[]]]][]))]]([[[[([[()][()](([](([[[[[[]]]]]](()[][([][[[][[]()]]])[()]])()[[]])[]()()[[(([()([][])[]][])[]()[])]][[()()(())]()[[]()(())(()[(()[()])[]()]())[[()][()[[]()]([()[()(([[][]]))()[()[]]]()])]]([[[([[]])]]])[(())()()[[]]][]]()](([])[]())[[]](()[[]](([](())(([[]])[()[(()[][][(()[][][]()()()[])[]([((([()()()]))[(())()])()][([[[]]])][()]([])[]([](()[][[[]]]([])[[]([[[(())]]])()[([])][(([([[[()()[([[()[[[]]][[()]([((((([()])))(((([](((()[[]])(()([])))[[[]]])[][(()[[](())][](())([()()([])]))]))[])())([()[[()[](())[[()[]([])][((()))()(([]))[]]]()]]([[[]]])()](()[]())))())][[[]]]())((()))[[()]]]]([])[[][]()][[(())]]])]][(()(([()]))[([])][([])[()]((([])[[[(([](()[]()()[[(())]]))[])[()]][]][]()[]])(([])[()((()))[[][]][][](([[]])[]()[[[[()]()](()(([[[]]]([][]))[]()()))]])[][]])())]())]()]][][([()()[]])])()](())))[]]()[][]][]([[[[]]()]][[]]))))()][](()(())(())[[[[([([][])[][][[]]][(()((()[][[][]()])([()])))[()[]]][])]([()])[([])[()]][](()([])())([[]([])()]()())(([[]][[()][]()()[(([][()[[[[]]](([]))()]()]))][[([][[]])[[]][][((()))][()[]]([][]())[]()]][()]])[])][][[]][[(())[]][()()[([][][()])[][[]]](())]]]])())]()[]([])]([][[()][]])()))))[])(())()[]))]([][[]])[]()[](()()))]][]]()[(()[]()())]])[([]())((())[[()]](()))]])]]))(())))[[()[[]]][](()[[]([[[]()[]]])()((([()]())))])])()))([][][()])[](([[[([][([[(()[])[]][([()[][[(([[[[(()()(([(())()([])]())([])))]]]]((()(()))()[])))([()(()[])[[([]()(()([][])))()()]]](())[]([()()()]()[]())[])][]](([[[[[]()][[][]]()[([([[[]]]([((()))]))()([()()[(([(()[[]()()])]()[])[](()))]]()([[]([[][]()[]][[]])[[()([])()(())[()[]][()(((()())))[]]]]([])])()[()])])]]][]](()[])()[[()]])([[]](()(())([[()]([[]([[()]]())()]()[[([()])[[][]](([][]))]][][])])(())))()())])]])]([]))([[[]][]][()])[[]]([]([]))([][][[[[[()]([[([[]])()[]]])]([()])[[[][]()([][])]]]([[]])]])()]](([]([[][][]])))()()()][]))[[]])[][])]]((([]()[][]()[[()][]]))))))][[][]]]]([])((()()[()]()())[][])(((([[]])()))[((()))])]([]([(()[[][(([]()))[()[((()())[])[]]]]]()[[(())][]()()([([[]()[[]]()[][()(())]]((([[]][[()[]]([][([[][][([[]])][()[]]](())([][()[]]()))(())()()]([[([])((())())([])]][(())[]([[]()]([[]]))[]])[])][[[[[[]]][()[[]()()[[]]]()[()][]()][][][][][][][]]][]]))[][(([])[])])[()([])][])[[([][[[]([]())]([])[[][]][([][[]])[]]])()[[[()]][[(()[](([[([])[][[]]](()([]))()[[[]](()[])][]]([[(())[]]])()([((())[()()()()[][(())][()[]()]])((([](()())))()[])[]]()))))]][()]][()[(())()][][(()[]([])())]([(([()()])()((())[()]()))[]()()((([]([([[()([])]])[[]]](()[(((()))[([])[]])()](([])))))(([](()))())[()](())(([](([()[]]))([[][]([()][][()([][][[([([([()[]()][()()])])()[[([[([((()[]))])]])[]([])][[][[([]())()([[]])](([[[()[]][][]]])((([])()))[]()[[]])(())]](([]()[])(((())()))[]([]))][([[]])[()][][]()[[()[([])]()]][((([]))(())(([][])[()][])(([])[][][])([[]]([]()[])[]))]([(((()[[]]))[])[]][])]()][][][])((([]([[[[[]][][]]]]([])[])())[()][[]]([][])[((()()))(())(()())([][(([])()([()]()))])()[()]([[]])()[()][()]((()[])()[])]))([([])])]()])]([]))][([[]([[()]([[][]((()))][()([([]()([()][])())[[()]]])([]()()(([])([[]])))[][]]())[][][[(())][]][[]][]])])])())([]))))][])()()[[]()([([[]][[(()[([]())()((())())][][]([](()((()(()([]([])[])))[[][[][(())[]([][][[]][([((([(())])))[]][][]()())])([[([()])()][([([])()[]([][][(())[](())][([()()])([()[()()()(()())][(())][[(()())]()[[]][[]()][([](()())(([()][[]()][(()[[(()[])[()()[[]](()(()[[]()[()]])[]()()[[[[][(([]))[[][]][[](([]()))[]]]]]()[][][]])()()[][()]]]])[](()()[])])[[]([[()[[]([([()])][])]]]([[]([[[[]]][[([])]]()]([][][][(([(())]()))])[]()([[][]][][][[]]))])()[([]())([])()](()))]))]]])])[]])[]]])(())]]]))))]]()[[[]((()[]()([])))([])]])])]]][](([[]]))[[](()[][](())([[]]))]]][[[]](((())[])(())([]([]))[]())()[()([][]())]][(())])[[](([])[][][])[[[]][]]()[()][]([][])[[[]()][]][(())](())]])[][][]((()))])()[]([]))()))())]]())()[()()[()([((()))[]([[[]]])])]]()]])())(()[](([[([])[][]]]())))[][[]][(())[[]()[][(()())]][]((()([[[[][]]]()]())[]))(())][])]]]]()]]()()()(())[[]]()]]]()[(()[()(()()[]([]())[]([[][]])[]()([][[]]()))]([]))]()()]())()))]]]]]())()[][]([(())]([])(([(()[[[]([]()())]([[]])](([()]))[(())[]][])]))[([]())])[[()][[](())()]]]))())([])))([][()()[()][[]][[]()[]]])[]))())][][]]()(())()[((([])))[]]])])[]()[](([])()())([([])][]))([][][])])]]([][[]])[()[()[]([])[]]()[()[]][[()(())]]])()]()([()([()])][]()([()[[[(())()](([([[][][][()]][()])]))]]()])[()][])()))](([[()[(((())([[]([[[[]][]][()]][([]()[()()()[]([[][][[][][[][()([])[]()]]]()[]])([])[]([][][]([]))][])[([(())](((()))()()[][[((()((()([])(((([[[][[]][][][()[[()]](()[])]]()][((()()[[]][]))]))[][[()]][[]])[]))[]([[]([[]])][[(()([[[]]]))[([]()())]]])()))([(()([]((())[])[])()[][])([[()[]([[]]()[[[]](())()[]()])[([[]])()[[]((()[[]])[])]]]][])]))]]))]][])(([([][])]()[[](()[[]])])())[((([()[()](())([[[]([[()]([][()()][])((((())[])))])]()])()([[[([]())]](([([([[]]((()))[[][[]]])])])[])([])])()]()())))[]()]()()[[]]()]())))[(())]](())([()])[]]])[])[])]()())])[][[([(()())[[()]]])]][([])((([()])[](())))[]]()([])[][]()[]([][][[][[]]][][([])])[[]][([]())][(()[])[]]()()[][[]](())[]((()[([[(([[([])[[]([])]]()[()]]))]]()[])]()()[][[](())][([])]([][])((([([][()])([])()](([])((()))())))[])))[][()()](([]([[[]]])([][()[]()[]][()[]][])(()[])[[[([[]]())()][]]][]))[[]]()()(())(()[][[[[]]]])()[][][()][((()[([(()(([[((())([]([[([](()[()]()[])[[[]][]()([([[][]](([])[][[][][]][](())))[[]]])()][[()][()]]())]]()((([()]([][()([])]([][()][])[[](()()[]()([([[]([()])()()])]))][[]][[]([[()[](())()[]][]([()])])]())))[]()[[[([[]](()()[](([]()()[[()()]()(()(()[(([[]()])([()]))[[[]][]]][[]]))()[([[([[]][])()](((([([[()()]])][[[([][[()]]()[][[[]]()()()])]]](()([](()[][(()[])])[()][])))[[[](([[[(()[])]([([][])]()[])]]))]][]()[(())])))])]][()](())[()([][][()()((())[([][])[[[[((([[][[([()][([(()([]))()])[]][[[]]])]]]))[()()])]]]()]]()(()))]())((()[][]))])[][()([]((((()))[[(()[]())[()]]()])[][[]()]((()[]([]()[]([]())((()))()[([]())][([])]()()[]))(([([()])[[]][]]()))))[[([][[]])](([])[][[]([()][(())()[()[(()[][[()(()([()]))][]]()[[[[]]]()]())]()]([([])()[([[(()[])]][[]()[]])()][[][]](()[](()(()([])))()[])])])((([()(())()[][[(())]()()[()[]([])([()()]([((([()[((([[()([([][])])()()]][([()([()]([])[[]])((((([]))[])[])(()[]))[[][(()[])()]()]([][()])]([]))])([][[]])[])(()))()[(()[([][()])])][]][][]][]()))())()]())[[]])[()]()[]([()[][]][[]]((([]([([])[]()(([[[[[]]]()[[(([])[])]]([])([[([])[[][[([]([([][[(()[[](([[[]()]]((()))[][[][[[[([[][(()(([][([]()()()[])](([]([[([])()[]()[]]([()]()[[[]][]()])[]][[][[]()()(()[()][[]])]][])))[])(([()])[]))[[[()((((()([][])[]))))()(()[[[[]]]])]()](())]()[()()][][([[][()([[]][[()[]()]()][])[]][()][[]]][()(([][]))])]([]))([][[](((()())())([]()()))])]])[](())()()]]]][][]([()][])](([][()]))))([[[]]]((([[][]])([([[]()](()((([()[]()[([[()[()[]]()()[()]]])([])]()()(())](()([([]())](())))(()[[]]()()(())))))[]([])))]())()[[[]]])[()]))[([])][[]][()]](([])(([()[]()[[[([[[]]()][([])[]])(()[][])()](([])[[]([[[()]][[[][[[]]][([([[[[([])(())][]]()]()]([([][]())])[()][])][][](())(([([[[[](([[[([]()[(())[()]()]([])())]]]())())][]]]()[[[()]]])])))][()]()]]])()])]][()]][])[[]])([[(())]])))([([])()])[[]]]])]))]([])]][((())[([()(()[[][[]]]()[])[[([][])((()))(([()[()([])[()()[][([([([])([[[([[((()[((([][[][[[[]][()((()[()])([()()]))[[[[()][[]]]]]]]]()()(()[]([]()))])))[[[][()]([()[()()[](())]])[][[()[()[]]]]]]]([]([]([])))))]][[[]]()])]]()])]()()[[[[([])]]](())])])([[][]]([])[([][()][][[]([()()]())([()[]])]([]))[(())]])[[]]([][[]()][[][][]])]]][()[[[(([][]))((([])))][]([[()()()()[]][]()])([()[[]()[]]([])][(([[([[()]](()))()]()[][][()[]][[()()[[[()]]]]()]()((([](()(()[]))))([]))[][]]))]()[])[]]()]()[][[(()(())[])][[()[[[][](((())))][][]]]]]]]))[()(()[][][][()]([](()))[[]][()[()()([])]])]]]](([()])))])]]]([]))]()[[()]()[[]]]()][(())()([[]]())([])[[[[([]()[]())]]]]([()])]))]()[]([]()))))())[][[((([]))([][[[](()[]()[[]])]])(())([]))()][](([]([]())[]))])([[()]])()]]][([[()[([(())])(())([])]]])](([[()]][])))[])())[(()([])[][(())()](((([[]]()))[]((())((()[[]](()()))([(([[(([]()[()[([])]]([]))(())()[])]()[][][[[([])()]([[()]])([()]()(()[()()]()([(())()]())))()([])[](()()[[([])]])]]()[()]]))])([][()][(([][])[]()[()[][]]()[[()][(([])[][][])]])(()(([()])([[[]([[[]]([([][]([][()])[])](()[[[([])[()()[()[]]]][]]()]))[(([])[[]]())([][][]())]](([][[]])))[[]]][[]]]())(()[]))[([][()([[[()[[][]]][]]]())[[]][[][[]()([])[][[[]]]()]]()])][[[(())[()][]]][()][(([]))()]((()[()[]]([])[])())()])()])(((())(()())[([([])])]))[(())]((()[[([])]()()[]]()[[][[()[[[[]]]()[]]]]](()()(())([]()([]()))())[[]]))))([(([([([])([])[]])([[]][((()[[][()([])()]][])[[([()][])]][])][])(())]))[([])]])[])[[]]([])()))](([]))]([]())())])][()[[]]])())[])([][[]([[[]]])()])[(())][]]]][])())[]()[](()[[]()][]()[]([]())))([[][()(())[[](([]))]()]][]([[]])))()(((()()[[[]()[]]])()[()]([])))(()([()[[[]]]]))]][()(())[()[]]][]()))[[()[]([[]()()])]][][[[][()]()]])(()[](())[][](())())])]))][()]()()()(())[[[]([[]][[]([[]])](()[([][]()(()[]))][()])[[[()[](((([[][()][]]))))]]([[]])]([][][[]][([([][](()(()[[][][()([])]])))[[]][()[((([[]](()))))]()[][[]]]])](([[([](()))][[[[[]]]]][[[([([([][[(([[[()(([([])[][][([[]][])()]()]()))]]])([]()[]))([]([]))([])()]](()()[][[()((([[(([]([])))]])[[[[]](()[])()]()]))][][[()]]])[]()()())])[]])[([])][]]]([(((()(())[[]]([(()(([])[[[]]])[][])(()[[]([])[[]]]([((([[](())()[](())()][][()])))[[([[]][][])(([]))[()][[()([([()][])])]]()]]()()]([([()([()])[]](()[])[()])]()[[()]]))[[[]]]()[]()[])[[]]])())))()])]])(()[](((()[[][][[()][(((([](()([][])[([()]()())()[(()[])[]([()])]])))))]][[[()]]([])]])[]))([()][[]]()())))([()[]([])])[(([]([((()))][])[()[()]((()(((()([][])[][()[[]](())][()()[[[[[([])]][[]]]()][]()][]](()([()][[]()[]][[]()[([(())])]()[][][()]][(()([])[[](())](()))][([](())([[[[([[(()[[[]]])[[][[]]]()]])]]]])[()()[]()([((())[()][()])][()(())[][([()])[[]]][()]([(()([]()))]())])]()[])][])))[])))[()()([](([[][][]()][(())(((([])((([()[]]))[])[()])([])))]))[[][[]]][[]])]()([()]))()]))]()))]][]()([])(())[[(()[][])[[[[(([][]))((([]())))()[[]]]((()[]))([()()()[[[()(())()[]]]]][([[[]]][[[]]])])]]]]]()[][[][]]([])[([(()[()[[(())()]]])[]][(()[])][])]((()))[]()(((())())[()[]])[]()()[]((()))[()](([[([[()[()]]]()(([][])))()()]]))()[[]][](((()())[])(([()()]))()([][])[])([])[(([]))][(()[])[[]()]]()()[[((())(())())]][]([])([()][])[[([(())](()([(([][]))[()(([()](([]([()[]])())[][[]()])([])[[](([]))()]))][(())(())]()])))[][(())()([[[]]])]]][[][[]([])]([]([()][([]([])([])[[[]]([])])[[(()(((((()())[][(()[])[[]([])()]])([]))[][][]()))())]]])[()])()([()])]([[()[()[((([][]((()[][])(()([[()]])())))[()])(()()))[]()(([()()[((([(()()(()()())()())][])[]([][()])))()[()]([])()[]]][[[]]][()[()[(([][])())]([()()[]]((()[()])))]])[])[]]([]())]()]])[([][][()])]()()[]()[][()([])]((())(()))([[]])()()[(())][][][]([])()()()()([([][])([[]])[[]]([[(())()]])])[([[[]([()])][][]])[]([])[]()[(([][]())[])()]()()[()(())([](([[([[]]([])[]())]]([()()]))((([([[]])]())))([])))((()()([()[([[][][]]())]]()())))]()[][]][][][][()](())[()()][]([(([])(()))](([()])([]())(())))[][()()][()]()[][([])[()]][()]()[((()[(([[]][((([()(())])))]()[](())))]()()[[]])(()))][()[()][[[]()]]][][][(()(()[([()[[[()]()](())]](()()[()])[()]()[[[[[[][](([]()[])[(()[]([()][][([])([][[]])(())][])[])((()[][()]))[][()]()([[[[]]()()]])](())[([()[([]())]])][][([])])][]]]]])]))[[]((())()[][[[]]])]][][[(())]]()[[](())([])()()](())([])()[()(()())][[()]][](()[])[][[[[([[[()()](([()]()(()()()[[]()])))()[]]]())()()]](([][][[](([]))]([][[[]]()])))([](()([])()))(()[[]])[[[[((([([][][[(]()[][][()([][()()]()[[]])()([])[[[[()]]][[[][]][[(())][]]]]()()()]([][([])(()(([])[[]](()())()[])[()(())][][[[]()([]([()()][[[()][]]])([](([[()]][])())[]))]])([][][()])()([(([([]((()[])))]))()[]]()([])[()])])]])[(([[()]]))[()]()(())()]]()(()))[]))]]]([()[]])]]()]([][()]())((()())[])[(())([[]]()[()()])[][]()(((([[]()[()([][])()(())]()]))))] ([(([]))()[]()((((()[()((())[[[(()[[()]([])[]]((())()))]]])]))([])[]))(([]))[][](((([[([(())()[(((()()[]([()])()[[()][]][[[]]([])(([])())()[]])))]()](())(()))[]]][()()[]]()[[]])[(([()()[[]]([[([])([](((([[]]([]()([(([])[()(())])[]]))[]))([()]()(()([[]])[((([]))[])]))()()((([()])[([][])((((((())[[]])())())()())([[[]]])([])[][][]([]())())[(()[])]])[][()][([]())]))(((((())[[][]]()([()])[[]])[])()))[]))()[]]])])[])])[(())[[]]()][[[[(())]]([()()])()]]()[[(([][(())[[][]]()()(()[][()])[][[[]]]()()])()()[[([[]()[][([[]](([][()]))[])[(((())))[[()([[[[([[][]()[]])()[[]()][[][]()[]][]][[[[]([]()([[[()()[(())[](((()(())[([][][])]))[[][]]()())[](([()][()][]))[]()[]([])][]]]][][()[(([])[])()]]([[](())][(())()]))()()[[]()()]()([()(([]))()()([()][])][][[[()][]]][]))]()[]]([((([])(([]))[[[][[[[()[[][][()((()[][]([[()[]]][[]][](([[][]()][[([]()(()([]([]()[][[][[][([[]][]([]))[([[]])()[][][()(())]]]]]()(())[][]))[((()[][(())][[[[(([()[][(())][([][[[[]]]()(())[(([][[()()([()][]())]([()]()([()()[]][()[]]))]))[]][()]])([((([])[][][([]([((())[][])[[(())[][()]([][][][()((((())()())(((()(([([()([[]])[()]([[]]([()]))](()(([[](([[]])())(((())))([])((()())[]())([[()[()]]()[()[[[[[[]]()][][]]][[]()][][](()[][([([[]([])][]()())])[()][[]((()()))[]]][()[[(([][]([])))]][]])()]][]])[[]()()()[]]]([[][]]())(([])[()]((()[[[[]((()()))()][()()[]]][()()][()][(([][][]()((())))())]](([]((([()[]]))[]([(()[([])()][(([][[]]))[([]())[][]()][(([]((())))(([]))())][]()]([()][])[([[]([]())])]([])())]()([[[()]][[]]]))))())))())))))]))))[(([]([[]()[[]]])[(())[[[[](([]))][[][[([][[]][(())()[[][()]]])]][]]][[(([][[[(()[[[(([](([[[(())[[]]()]([((([][(()(())[[[()]]])[]][][[[[]]((((()()[[]][[[[]][]]][[[[]][][()][(())([])]]]())[]))(([[]]))[()(())](()))[[]]()[][[[]()(([][])[])]([](()))[[(()[](()))]()]()]]([][][[](([[]()][]))][(([()[()(([([(()[()[]()[]]())()()]()[[[[]][(()[()][][]())]()]]((())())([])[[]([()]())[]])]))()]][([][()][])])()[])()[[(())]]()])()((([()])())[()](()[]([[][()]([])[()]]())[]))()]))[[[([(([]))])[]]]])])]][])([][])[][([[()()([(()[([]())([[]]())])()[[([[]][(()()[[](([()((([[()]]()))([])[][])]))()][[[[((([]))([][(()[[]]([][][(()(([]))())(([()[]][]))([])][]([]()())[]))]()[])[[([[[][[()([]()()[()()(())]()((()))())][]]]([[]()])])[([]())][()][([()[]]([[]()]())([])()(()[()]([](()[([])[]][])())()((([][[[[[]]]]])[(())][]))())[])[]]]][](()))]]()][()][((()((()[][()](()))[(())[[][[][()([(())])][](([]())[])()]()()]])))]])]([([([()][()([(())[]])][(([()[([][]()[]()())]()[(())[([])][]]])[])][()[[]]()])[]()([([])(())[][()[[[][(([][()(()(())[])][]((()))))[[][]]]]][]([()][([()])[([[[](()([()]()))(()([[]]))]()()()])][][[]]][[][[([()[]]([]()([][]))[][]())()[[[][()]([[][[]]])([[[]][[([[()]()]()()([[[([()][])][([(([()][])[()[[()(()[[]]([])[()])[[]]][([(([([([[(([][][]))[()]()][()[[()]][()[][]]()[[(()[[]][][][[]][[]]([()][][]([][([])[][]([((([()[[]]]())[]([(())])))])[()]([]())]))[[[()]([])]([[](([([[()]()])][](((())))[]))([]([]))])[][]()][()([()][])[][]()[]([]()[])[()[[[](()()())[](([]))]()]](([[(([])((()[][([][](([][()[][][(())[]]]))[])()[](())[[]][([()][()[[()]]])]([[](())])()[][][]()[][]])())[()[](())])][()()]]())[[[][][][]()]([[](())()]()([])([()[[[][]([])]()()([]([()][([([])][[[]([(([()[]][()(())]))[[((((([[]()])()()))))[]()()]][]]([][([])][(()[][][()][]()[()[[]]][[][][[[[]]]]][]()()(([]))[])]))][[]]])[]][()])()())()]])([()])[][[][[]([])]([][[()[]([[]])]])([[[]][()[[((())()(()))()()][][[]([]())(())[]([[]])[[([()][(())])]][]]][()][([[]])(((())[])()[])(())[[]]((()()[[]][]([][[[][(()()((([])))[[]])[[[(()())][[[()]([])]][]()]([[(())](([([])[][](())[[([])]]])[()])([][])[()][]])]]]])())[])()](())]])(()[])[]([()][])][[[()((([[(()[[][[[(()([]))[[]([])[[[]([[()()]]([][()][])([(()((())())([][[[()]]])()[[]])])(()()[[(())][](()(((()[][([[]])]([][[[][[]][[]()]]]()()[()[][][()()]][])()))))[](())]())())]]((([][()]))()[[()[()[()]()()()]]()]()(()))][[()][([]())]]]]((()[]))([(([]))]([[[[][([][])][[]]]][[[[()[([])([][])]]([])]]](()((()()()[])[[][[()[[]]]]()])[(([[[]()(())]()]())[])])([()])][[][]])([][]))]]())][([[[([])[][]](()(()))](())[((()()))[]]])[()][[][]][()([(([[[]][][]])())])[]][]]])[()()[]]()[()][()[([]())[]][]()(()[])[()()(([[[][]]([()()][])[][](()([()][][()[]((()[[]]))][](([])([[()[()][[()]][][[[]]][]([][()])]]))([])))()])[])]][([(()(()[](()[(([]))])(())([[[]]()(())[]][][](()[])([])[[]](([[(())][(([][]))[]]]))(([]))))[()][])()[]()])[([[[]]])()[]()][]][]))[[][]]()]]])])])]]()]][([][((([])[][([][([()][[()]([](([([[[[](([]))]]]((())()[([])([])()][[]]([()()[]()]))()[()]([])[])]())((()[])[]))[])]([]()[([][])[[[[()]]]]()[()]]))[][][][[[]]][[][([()][])]][]](()()))([()[]()()])(()()([]))])(()[[][](()([([][[[][](([]((()([()[]]([()]))())(()[][](([]))[[]]()[])(([])((((())[][]))))[([][((([][][[(([()])[[](((()(()())()))[]())[()()]][[()([()[()][](())]())]])(((()))[])(()()[])[][[]][][()[]]]])()(([(())][])(()[()()[]()[[()[]]](([[[[[(((([][](()[[][]]))([[()()]][](())))(([((([][])[()()])[])(([][[]()])[][[(([]()))()[((([[]])))]((()[(())])[[]][])][()([([])]()[([(())()[[()[]]]()][()([(())[[()][]]])]())][([()])()])[]()]()[]])([()([][])])](()))[[][](([[(([[]][][])[[(([]))(([])[](([[][]]([]))))]([]([[([])([((((([][[[[[[([[]()[([[]([[]]())(())]()()([])[[()]((()))()()(())[]])]][])(([][[[][()]]]()([]))()())()][[()]][[]]()([])][]][]]]]([[][()[][([])()[]((([])()))]][][]()](()[](()[[(())]()[]()]()[[[]()][]([])[[(()(()[([]([][][])())](([][()()][][])([]([[]()]))))())]()([][()][()[]()([()]([[][]]))])]])(())))()([[][]]))([]))[][])))([])[()(([[[]][]]([]())()))]])[[]]()((()()()))()][]]))[][]])]((())[][][])([]([][[]]([[()[]][][][(())](())((()(())((()[]([]))([]([])))))][])()([]())))([])([][[([][])]([])])])(((()()[][])[()()[]])))]()[(((())[][[]]()(())([[]])))[]][]))[])[]]]](()()([[[]]][()]([][])))][][()]](())))]))[[[]][()]]()))][(([][[]])[])](()))])[]()[]))]]()[([])()(())][][][][[([[[]]()()])([()[][]])[]][([([])])]]()([[]()])((()[[[]]])((()[(()[[()()()()[(())[(([[[()[](()()()())]]])[](()[[()]][(()[][()[]])[]([])][[[[[[()[]]]]]()][[()]]()]))([[][[][][[[[][[()[[]([](([]()))()[((()([(([](())))()()()][](()())()([])[()])[])())])[[()]()[]]]][([()([[([])]][])][()([[](((()[])()([])[[[[]]][][[[]][[]]()]]))][])]()[()()()][[[]][][]][()])()](([[]][[]]()))[()][]]()()]]]([([])[][]()()[([[()][](())]()()[])]()])][][]]())][]([][][(())])()()[()()]]([[]()[[[]([[[][]][]](()))(()([[]])())]()][]])][]([])][]())(())()[]]))))]))]([[][((()))][[(())]][][]((())())[]]([])[([][]()[[[]][[[([()])[()]]]]][[]([])])])))])])])[]]()))[[[]()[][([][()]()([]))[]]]((())())[[]][()]]][(([()])[[]])(([[([[]][([])()])][]]()(([])))())](([[(()[]())[]()]][])())[])[((([[]()()([[]])(((([]((()())([])()))[]())))[()]([()()]()()()[(([[()]()[][][]()]))()()])[[]]](())[(()[])[]]()[[(())][]])())())]]()([])()](())])][()])[]]()[[([][[[][()]()[]][()][]()])]()[[(([]))]()]]][[()(([]))][[()()()]()]]][](([]))()))[[[]]]]][]()[()()]]([[[]][()([([](())[])([][]())()(())()])[][]]][()])[]()())(()(())[[]()([]())[[]((()[]))[[]([])](([([(())])([]([])[(())()[[][[[((([]))[[][]]()[()]())]][(()())([[()[[[]][()()]()]]]([[[[[([[]])]()[[[](((([()][])[[[((())()[])[][](())]][]]))())([](()[]))[[[()[]()[()]]]](()[[()()()([([((())[()])[()]()()[][(())](()()[]([([()][()()])])()()([](())[[]])([]([[[()]]])()()()))][[]])][]())]()[][(()(()(()[()((()()))]))((())))([][()[]()[]]())[()]][][]])[[(())][([]())][]()[()(([]((([])())[][]([]()))))((([]))[[]][])]((())([]))]]()]()()][([([][[()([]((())))([[[]]]())]](()(([])[([([([])(()[()[]])])][])]))[])])](())()()(([])())][()][](()(([(())]))[])]([()][][][]([])[((([[[[[]]()(())]][]([()]())((([][()][])(())())([()][]([([]()([][]))][()[]][[]][()](([](()([[]][[([[]]()()[([([[]])()])()]()[[()(((((()))[])))((()())()([()]))]])[][]]])[()])()())(([](())()[()[]([[]]()([[[[[[]]]]]()][()]))()()]()(((())))(([[]()[](([]()([()])[[]([([])])]))])([()[((()))]([]()[[]][[[([][])[]]([])()](([])([[]]()))])()])())))[]()))[[[[]()]]([][(())](())[[][()[]]]([()])[])]))()])(((([])[][])[])))(()))]()())])[()()[]])][[[[[]]]]]]([[()][[]]])[()]()][[([[()((()(((([][[]]))[[][[][[()[[([])()]]]()(([(()()[[[()([()])]]([([[((([][][])()()(())[]([()][()]))([((()([[(([(()()[()][][])])[[]])]][()])))]()))]])])()]([([[[(())[[]]]([([[]()[][[(((()[]())[([][[][()()](([]())[((())[[]][[()()][((()(()())[]))()[[([]()([([[]][][])]())()(((()))))[([])[]]]][][]]])[[][[]][()()()][]]])]((([])[()])(([[](([((())((()[[[()][]]]()(([([])()]([][])[])()())[][][])))()[()[()][]]((([]([]))))[][[]()]][])[][](([[][]()])))()][])()()[][])[()]()[]))]))()]()()([]())[[]]][[][[]][]()()][[([](()[])())]](())][])[]()(([()[[][]][()[]][][]]()))()][[]()(([]))()])][]])][()[]]([([()](()[()[[]()()()][(()[[]])]][][[]])[][]()(()[]))][]))())][])())([])]][[[]()][]()]])([[[][][()[()]]]][(())[]](([([])[[()()()]]((()))[]()[][([[()]()][]())]()[]][][])(((([]))))([[[()([[]()][])]]()[[][]][]])()())(()()()))[][])[([[][][]](([()()[]][])))]()[[]][]))][[()[]([[]()[]()[[]][]])()([[[]]][])]()][](([[[(()()([[]][[]])[[()]]())]][((((([][])())()))[(([]([])(()[[()]][][[]](())[])))[][[[[][()]()((()))()]]]([]()([[]][[()]][]([])))[([[]])]][][([][([(())[[()]]])])[]()][](([[[(()[])]()(())[]()]]([]())))([[]])[[[]][()[[()]()[[]]((()[(())([](())[])]))][]]])]])[[](())[]]()()())])(([]))]([](()))((()[[(()())](([]())[[]])])([([[][([]([]))][(([[(([][][()]))[]()]]()([]()[][]())))(([])[(()[])])]])][]()(())[][]))][([])]][(()(([][]([[][[]]][][()][][]()())()()[])))])][]))]])]](())()([])][]]](([](((()[()[][()]](([][[]()])))))[][])([])[[]][][]()((()()))))[[][[]][(()([][])[][([[[]()[[]()]]][])()])()[()]()[][[[]]]](([]()()[()][()](([]())[][()([[[(())[][]]([])[[[]]]()(()([[[]][()]][][()])())()]])])))]]])][][][[()]]())])[])()]]][])](((())[]))[()](())[]][])[(([][[]()])[])]]()))()[])()((())[])]][()()[()[[][([]()())[[[([])[[[()()][]][]([])[([][[]])]([])][[]]]]()()[([][])([]())[][]]]()()[([]()[])][][]]]][][]]])[]()[]]()][]](()()[][((([][[()]([][([[()([[(()[])]]([()([(()()())])(([()[]()](()))[])]))]()])])]())[](()(()))))([])])[()]((()[([])][])([][[]])[])(([[([][([()])()])]])(()([][])))))]][]][[]][()()[[[]]]]([])])([[]])([(((()[[]])))])())(([]))])())[][])]())[][[[(())]()(())[[]]]][]()][()[()][[()(())([](([]([]([][[][[[()()]]][][((())[()[]])[()][]()][[](())]]([(([]([(([[[(([[]()]))[]()]]()][])[[][((()[])[][[([][[[]]()])([[]](([])))]])[]](())][])])))])[()])())))[(())][])]]]]])([][[][]()](()))([]()[][[]])(([])))])())[()[([](([[](([]()[()()]))()[]][[[][()]]([])[][]]())())([([])][[[]]]()))]][[]]][(())][][([])])]]([]())([[[][]][[[]([[][([([])])]]([](([[([])][()()([])()()]]))))]]][[]][([])()([])[]][])[[([[]])()]()[([()[[([])]()]])[]]]))()]][([])]](([()]))][])())(())]))[]()[()][()]][][]])(()[])))))][]]]]]]()()[[[]]]]]([])(((()))([[]])))[[((()(()))[][]([]))()(())()[]][][[(()[]()(())(()(())))]()]])])[][()()[](()()[])]()]]([[[]()][]]())]][])]]]()][]][][]()[[[]]]())[()]([])][[()()[[()]]]([])]][][]()())[]]()][]([([[([][])]])])))()[][([])(([[[]]]))[(()([[][]([([(())[[][()([])]]]((())))()]())[[()()]]][[[](([]())(([][([])]))([][[](())((())())(([]))([])[]]))[[]]()]()[()[[]]([](([][]))(()[([])])[])[]][][](([]))][[]()][]()[[]])())]][()(())()([[]()]())][()(()[])()](([]))[(([]))[]]()[](((())(()))([[][([][])]][]))[[([])]][][([()])([][]()())[[]]][()[((())()[])]][]()()()[][][[]()([])]([])([])[]()(()[[]]())[][](()[])[][[()[([]([][[([][()])][[]()[[()[]]](([[[[][[[(((()[][(([])[])[]]))[[(()[(())([()()()[[(([()])[]())()[()]]]])]())]]([[[[[[()[()[()][]][()]([[][()]()[]][[]])([])]]]]]]()[]))[[][]()[]([][])]][[]]][[[([][]([])[](()(([[()]])[][]([]))()[][()]()[([][[[][[]][][[]([[][[][][[[[()][([()()]())([])[](()(())([][()[]]))][([])[][](()(([])())[[]][][])()]]]([()][[([[([][()()][][()[[[]]]]([[[]]])[])]])][]()[][([(())()][])]])[]([()([]())[]()][([])([])][(())]()[](([()[]])())[()()((()([]())()[[]()[][]]))])]]])]]])])([[]]))()]()(()[][])([([[]]())])()[[]][[[]([()])[]]]]](()())]()[]]]][[]])([]()[]([])[[][]])(([[]]([])))())]]))([()](())())]([])[]()[[[][[]][([[]()][]()[[()[]]])]][][](())]()(()[[()()]([()[[[]]()]])]((()[()[(()[])[[()()]()]]])[()[[([()()([([])()[()([])]][])])]]]())[([()][(((()[]([]))))()[]])])]][[]][()][][[[][]][[][[[]]]]][(([][]))][]([])()[[]]()[][[(()()[()])()][[]()[[()[]()[]]][]]]()([])[](([(([]))])())[(())](())[]()(()())[[([])]()[]([](([[]()][]))([(()[[]()[([][()]([]())()([[()]][])(()([[]])[[()]][[][]]))]]([][][][[[]]()]))([][[]([[[]]]())][]()())()])(()[]))[]](((()[][])[((([]())[([])[[()]]()[][[[][][()[[]](()[[([]()()[()()([((()))](()((()))())[])[[()]]()])][]()[(([])[[[]]][][()[]][])([[[([][])]](([[([])(([][[](())()()()[[]]()[]][()]))]]()()[((()())(((()()))())()())])([])[])([()[]][(()[])[][]()][]()[[[]()][()]][])[([]())[[]]([][])]][][[[((([]())[]))][][]]])(()[][])]])]]][][]]))[]]()[[][()]]))()[][((()[()]))()]((())[[]()][()][])[[]][][]((()[()[()]][]))[][](())[()][[[]()](()[][[[([[]()[([[(([]()((()(()[()([[[[]][[()[](([]))]]]])()])()[])(()[([()])([[()(([[[[[]]()[]([]([()]))]][[]()](()[])]))()]])])))[])][()][]])()]()])()(([()()[]]([]))([])([()][][[[()]]])[])([])[[([([]())([](([][])([])(())))[]([[]]())]()[])]]((()))([(())[()][](()()[][])]()[()()[]([[][()(([[]])()[][])]]())()])[[[([([])]()()((())())(([][]())))[()([](([()]())[()][])[[][](([()[[][[[((((()))[[](()())[]()[][]]))]()[]](([])[()])(([((()[()]))]([[([([])])]][])[]))][]]][()])[][])()()])()([])[[()]][[][[[](())]][()][]]()[()]][]][][][[(())([[][(()())]()(()())[][]()])[](())[](()[[]]())]][()]([([])](()[[]()[]][]))([](()([[]][()()([][])((()))]))())[]]][]]([])[()()()]][(([][[][]([([[(())()()([[[[]()]()()][[]][]])]][][][([]([[[[]]][][[[[][][][[()([])[(([[()]])())[][][]()]()[()[()()[([][])]()()((()))[[]([][])]][[()(())]]]]](((()())[]))]][(())()()[](())()]]()]))][]()([[]]))[]])]))]]()[])][][](())()[]()(([(())[]][()([[]([])(([[(()[]([][]([[][]([()])[[([])][]][[][][([][([[]](()()[((()[])((()()[][])))]))[][[(()[])]][[]]][])]]()[[[]]([])]]()([]()[])[])))()][(()[](()[(())])[])]([][([][(()())[][[]]])[]][][()])[][()]]((())[[[()][()([()[][]])[][][](([]))[]()([])(())]]()((([]))((([])[]())[])[]()[])]())[]))])(()([])[])()][()[([]([][()](([[][](()([[([])]([[][()]])[([](([()[]()][])[](()[]()(())))[])]]())[([])][][([])()][[[]](())[]][](()))]()[[]])[][]((([([]([[[([[]](()))[((([]))())]()()]]][()])(([])(()))(([()])(()))()[()()])[[]]]))))[]())(([[[()][]]()]()))[[[]()][]])]])[][])[]([](()[]))[][[][][][][[()][[][]]]]([[]()()[]])[((()[])[])[]]()[[](()[[][]][()()]([])[()])()((((()([[[]()]([[]()([(())])()][(([[[]][]]))[([[()]]())(([([][[[]]][])([][](()[[]]))([[]()((())()())][()()()(()()[])()[[[((()))][[[(())](([[()[[]]]()[[]]][][])[])(([][()][([])[()]])(([[]]([]))[][])([(([][([])]))()[([([()([][][([[[()[]([])]]([[][]])]([][])())]())]())])][]])()[[()[]()[][()]((([][([()[[[][][]][]]])[]])[]))]()])]]([](()[([])])(([(([((()[[]]))[]]))((()(())[]())(()))[]]))([[()][()[([])]]][][]))]]])[[[[[([])]](()(([][]))()[])()][]]]([()()])][[]]))]])]())(()()()()[][()]()[()()][([[[()()]()()]]())][()[[(())]]][([])()[]])))()))()][](([()[]((()(([])[[]]((([][()[[[()]][]](()[([][[]][])])][(([][]()([](([])[[][]([])]))[[[]((([[]()()](([]))))(()()))[]][()][()()]((()))])())[[([])]]](())))[][]()[[[[]]()[()()]][[[([([[[()](([]())([][]()[[(()([[[][]]][])()(([])[])[[([])[][]]])]()]())[[[]][()()()(([])(([()[([])()]()[][()]]([]())([[]])([]))))()]])()[(())[]](())()]])])[[]]()()()]]]]([][()[((())()[[[[]][[][][()][[[]][]]][()][]]()[[[[()[[[[]()]]]]]]]][[][(((((()()))[()()])()()[()[()()]]()(()))((()([]))))]])[()]([([]()[[()]])][[]][][[]]()[][])([][[[]()()[()][[([]()()([()]([()(()[([[]()()[([])]][[][(()())[]][]])])])()([])((()))))[[]()[]][]()]]]])]([])[]]())([[[((())[[[]]][([[][][[]()()[]]()]())]()(()([()[]([[][([])]][()])(())([[()]][([])[]]())][((())([])([]))[][]])[()]([[[][][]]()][[]])()[][(()(())[[((()([][])[]))]])](())[]()()))]]((())([[]]))()()]([[[](())]]())(()))())([])(()[])([()()[][[]()]]()([()()]([]()[]))(()[])[(([[[]((()))][]][[]])())])))[](()))][[]][()()]())())[[]][([][]()[])()[]]([])[[]][()(([[]()()[([])]]))][()][[]]([()])()()[[]][[][(([]))][[[]()([[]])][][[]][]()((()[][][()([[(())[]()()]]())[]]))]][()]()[](([])(()[(()[][([[[[[][]()()(((([]()))))()((([([()])()]())))]]]][])[][]()[]]([[[]][]]))(())]([])()))([])[()][][((()))[[][()()][[]]]][]()([][]()[()])[](())([]())[](())([[]()(())[]])()[(()[])(((())[(()[][[]][([()()])]([]))[]()[][[()[][[]]](((([()]([([])()()]))([])(()()))[])([([()][])]))()][][]()[]]))]([()]()()(()[[[][()]](((()[[[()][([[[]][([][])[]]][][]())][((((()))([(((([[](()([]([])[][[(([[]]))]])()[[[(()[])[[][]()()[()]][[]((([][])([()][()()([][()[]([])[](())[]])]((())([])))))]][()()[]][()()[[](())]]]])][[[]]])(([][[[[]]][]]))[][()]([([])(())()(()[][[[[[]]([[(())]()()][()])[[][[()][]][]]()]()[]][]()][])]())[])[[([()[]])()()(())()[()]()]()]))]((())[][])))([])[[((((([]([])[][][[()([][])()]()]))([])((([]([()]((()[[]][()((([]))())][[()]][[([[(())[[]()()[(()([]()[()([([]()[])])]()))]][][][]()][]]()[])[](([[[]()][[([])[][](()([][[]])[()()[]])(()())]][[]]])(([]())[[[()()([(())])]()[][[([[]()()])[]]]]()[()][([])]][]))]][()[[(([][][()]))([()]([((())(([]()[])[]))((()))]()))]()([][[]])[()]()]])))()))[([(())]()())[]]))((()()(()[()()])())))([]()[][]))]]())[]]][()[[]]]][])())()()[])]())[[([[([[]()[([()()[](())([])[()((()))()]])[][][]]((()))[([((())()())]([()]))]])][]()(())])[(()([()]))]][]((()[]))])[[()]()(((()[])())(())((()()[()[]])()[])())[()]]()[([[]]([]()(()[])([[()]](()()())()))()[])][[]]()([])[[]][][[[]]][((()()))[](())()(())](([[][]()][(()[(([()]()())[][])]([][[][][[[([])(([[[]()()()]]))[]]]]])[])][()(()[][([])()])(()[]())])[()])()[]()[([[(())((())[])]([()(([(()[])()]))][([[]([[]()])][[[]]()][])[()]])[()][[]]])[[([](())[]()())](()[])]([[([][](())()(()[]))]()])][](())[()]()([][])[][]()(([()]))([][]([[(([()][]()[]))]]))[](()[()()(()())([][]((([[]])[])))(()[])][()])[][][[]()[](()[[]()])([])()][[]]()(([])()[[([()]()[])()[[]()](([])([])((()())((([[]][(())])[](([()()]()))))[[][[()[]][]([][])][((((([[[()]]]()([]))(([]())(())[])[[()()()()]([])[](())([](([[[([[]])()]()]])))]))[()])[])[()]]()][()][((()[]()))([])(()[[()]]())])[([][])[]][(())(())[[[[][][([])[][(())][[[][[]()]([])([][])]]][]]]]][](()))]()()[()[]((())[()][][([()()(()[()[]][()[[]([][]())()[]]]([]()))()])[]])[[[([[][][()()]]([((()())[()([](()[[[[][][]]]])[(()[([])[](((()[()](([][][](([()]()()))([]())))[()()[[[]()][]]([])()[([][[[[([()(([])[((()()))[[]]])([][][][([])]()(((([][()([]()[])][[](())][][])[]([])))((([([[]][][])])[(([(())()([])]))]))[]))])[[()[]]()([])]]()]][]])][]()[[]]])(()(([(())][[[[[()([])]]()[]([()]())][[]]]]))((())()[]([]))))()()[(()(([][[]]([[]](()))))([[([()])]][[[(([])((()[(()())]()[])[([[((([()])[[()[]([])]()[]]))[(())]][]][])]))()([]([][[([][((()))]())][][]([])])())]]([([][()([])][]()())]([])[]()[[]([[][[(())]]])][])()])[[[[()[][[]]][](())()][](([[][]]))]][[[]]]([[[[]([])][(()((())(()())(())((())[]([[]])[[()[[[][]][(([]))]]()()]()](([][[]])))))[()()]]]])()(())()[[[]()]])][])()[]][][[]([([][]())]((())([])())[]()[[]()([[]])([(()[][[()([[(())()][([](()()()([()][])([()][()]())[])()[](())[[[]]][](()))](()[[]])[][]()[()]])[()][][][]([][()[()(([]()()[]()(()))([()][]))[]][[](())][[([(([[[[][]([(()[]((([[]])))[[][[[]](()([[]])[[]])]]())]([])[[]]())[](())](())]()]))]())([])[[[(([[()]][[]]))]]]]]([((()())[][])])])]][[]()[][]([[()][]()[[()][[][]]]]())][[]])])][])]())])([][(())])]([(())[[([]())]]])[[[]]])([](()(()[[()]])))[()([(()[()([](([][[([][()])]]((())())))[[([]())]]()[([[]])()]()[[]()]()())]()[(()([[[][([([[]])])([[()[()(()[][])]()()[[][]]]][])]]])[])[[]]])])]]))]]][()]]()])()()()([(([[[]]()](()))[]())]()[])([(()[([()()]([[]()](([]()[([]())[][[]([]()())]]))([()[[][()[]]]()])))([()]([]([()((()))])))()])][[]])[[([])][[[()[()()][][]][[[[](())[[]([])]]]]]](())][[[[[]()(())()()]()]]][]()()[((()[][([(([]))])([]())()()])()([([](([[[([][])]]]))())()][][[][]])[[][()][(())]]()([[]][])())][[([])([()])](()([[[]]])[][[(()[])([])()][()(()([()])[]())][((())())]](())()[(([([(([][]))()[[[]][[]]()[[[](()())[]]()][[(())[[[]([])([])]]][([])[]]()[()[]()][[[(()())[]([](()([[]][]))())][[(()([]))]](())]]]([[]])]])]))[]()][])()(())]()()([([][[[()[(()[[[]([](()))][][](())])[([([[]][]())])][()]][((([([])[[]()()[[]()]]()]()))[([[]]([([])[]([])]([()]()))()(()()([])[][[[[()[()[]]((((())(()[](())())))([][[]]([[]](()[])([])[]))()(())[])]][][[]][]]]))]()[])][]]()[()]][]([])]())])[[[[]()](([]([])))]]([][])(([]))([][[][]])([][()(([()]))[]()[][]()[[]()()()[([[([[]()[][([[[[[()]]]](([[[()[][]][][]]()][[]()([])]))][])](([]))()[]()[]()([((([]())))][]([][([[(([[[]]](()[([][[]])[()]()][])))[]]([]())])((()())[[[]()()][[][[[]][()]][][]]]([])()[[]([()[]])()()])((([][]))([([])])[([])[[()][](())]])[]]([[[](())[]][(([[][]()()(())[][][]]))((()))(((()())[([(()[])])[[[[[][](())(()[][[(()[][]([])(()(([[()()[[]]()[]]])[][][()()()[(())][]])[[]()[([])[][([][[]](((([][](())))[[[]]([[[]](([[]])()([][])[](())[][][[()]]([[]][]([[[[((())[](()()(())[]))[[]([([])])]()]]([(())()[]]([][[][][]])([([[][][]]([([([])][])[[]()]()[]]))[[(((())[[]]))()[()[][][][]]()]()][[[()()][[[](([])[[[([(())[()]])]]()])]]()]](())[[]]((([()()[[[[[()([[]])()()]](()[])]]([[(()[()()](()[[]])[()])](()())([()]())([(())][]())()[()][]]([][]()()[()(([]()))([[]])]([][])))((([](())(([()()([()])][((())[[[()]([[]])()]([][[]()((()[]()())[][][[]()])(())([])([([[((()()[[()][][]][][])[()[[[()()]([][])]][([])((())[]())]])]])][[]])])])[[]]()])[[()]]))())[[()[[([])[[(([()(()[(([]))]([]))[]()][(())[]]()[(())((([])(([]))[[([()])[][[[([]())]]([][(()())[]()([])()[()[()()[([()[([()([[]][[[][]]])]())]()()])][[][]]](([()()])[]())[]([[]]())[]][[]]][])()]]([][]((([(())][([][]()[])]))))][()])[[()[[]]]])])[])[[][[][][[]]][]]]]][[[]]([](([])()())())[()([((())())()][])]]()]][([[()]])]][]())][[]]])())[][][][][]())](()()[[][([](())([]([])))[[()[][]][][()]()([()([()][([][])[[][][]]](())[][]()[[()][]()]((()[([])])[](([])([([])]))())())])]()[()]]([])])[])()()[[([([[]]()[[([(([([[[[[(([()]()()(())))]]()]][[][()]()]])]))][(()())()])[][[([[]])()][]]][][()[(([])())([])[([]([])[]((([])()[]())[]))]]()]][[(()((())))[[[((([](()[]))))][()()]()[[((())(([]([(()[])])()((())[][([([][])()([])[]])]))[[()[()[][[[[]]]([[][][]])[()]]([])]]()]))]]()[([()[[]()((()[])([])[])]])()]]][[()(())()]()](())][[][]()[][[]]()]][[]])])[]](([()]()[])[])((()[])()[[]]())([][([][(()([]()))][])[[([[]])]]][]([[[]()(()(()())(([(()[])([])[](()[])[()][]])(([])))[[((()(([([[][]()][[[]]()[]()])]))[](([]([]()([()][]))[[]]())[])[[()[([[]])]]][][]))][(([]))[]]])([])([][])][(([[(([]()[]))([([[([])]]())][]()())[()(())()][[[]][]()(([][])[()][][()()[]])]()]()])[[[()]()[]](()((([]))[[][((((([]))[[()]]([]()))))[][][]]]()(()[[]][])))()](()(())()([([[[]][]()[[](()())]])])))](([][(())])[[]()[[[][]]]])])[[]][][])])]][]()[])))(()[])][]()()([]))])())[])[[][[][(([((()([(([])(([]))[[[[]]]]([(([[()][([]())]]))])[])][][([((())[]()()[()])[]])](([()(([][][[]][])[((([()(()[[[]]([[][]])[[]()](([]))[()()[]]])[[]]]()(()(()())([][()]()[][[[(([[]])()())[[[()]([])[()][[()]][][]][[([[]([()])])](([]()[()(())]()[[][][]]))([()]([]([][[((()))][]]))()(((()())))[])[[][()]([[][][][()()()[]]])]([][()])[]][][][[[]()[(([]))([[()]([[()][([][[([(([]))])[][[((()([[[((()()()))]]][])([[]()[([[]()()][((()[[[]]](()((()[[]][]()()([[([(())[]])]]))[[][[][([](([](([])(()([])))))(([][[(())]]([[()]()])[[]]()([([()])][](((()))([[[][(([][([([([[[]][]])([()(([[()][]](()[()]))[](()(([([]())(())[[]](()[[[]]()()[]()](())[])])[]())[])()[]()[]()[()(()[])([[]][[([()[]()[][(([[]][[][]][]())((([()])[[[()[[[][]]()]()][[[]][]][(()()())]()([[[([[][]]()()(()[]))]([])[()]()](()[])][][()])][]])([(([[][]])[([()])])[][]])[()])()[([])][]([((())()()(())([[()[]][]]))[[]]()[]][[]([([])])[(([]())[()][[][()]])(()[()[([[[[]()[]]()]](([][[()([(())])[]]][][]())[]()()))]])]]))[[[[[]]]]]]])[]]]())][][()[()[()]]([][](([(()())(((()()((()())[([[]][][(()[])(()[()]())[]][])]))([[]](()()))()((([()[[]()[[]](([](()[[]()])[][][[][][][]]([[[][()(((())[((())()())[]][]([[]][]))([]))[]]([()()][[][]])]]))([[([][[]])][]]))][(())(((()[][(([](()[][][(([([([([]([()[][]()[([]()[[[]][]((())[[()[]()(()(()[(()[[([])][[()[](()()[])]]])()])([]))]([()[[[[][](()[[[]]][])[][][]]]]]())[([]())]]([[()]()(([]))]([[([[][][[[][[]()]()]]()[([]()[[[]][]()][[(())]([]()()[])[[[][]]]][[([][]()[])][[]]][([([()[]])]([[]]))])(())]])([])]]()[]()([[]]))[[[([][])][[][(([][]()))[]]]]])()([][]()()))[]][[]])]][][]))])])[]](([([])][])([])()()))[])])(([][[()[]]][()([](())[])]()[[][(())[]]])((())))(()([()]))([]))())](([[[]][]]([]())())))[](())[][][()][]))(()([([])])())]]))[[]][()()()()]([()]((()[(()(()))([[()][[[([(())])]([][()[[()][()[]([](()))([(()()([()][][()()]))([[(())](())()[()(()([][])())]]()[][])])[[][]]()[()]]][]][])(())[[[(())()[]()]]]][][[]]()]]())()[]][]))[])())([][]()([]))))][[[()]]][])()[][][])[[()]])([[(())]][[()[(([([(()[])])(())[]([]()[])[()[[()[[[[[]([]([]()[][]()[])()[])]][[[()[]]]()(()())(((([](()[])))[])([]())[[]()()][[]])][]([[[([[]([])]())[]]][]]([]))[]()([])]]()]]](([]))[]][]))([([])]()())([()](([])([(((()[[([([])])][][[[()[[[]](())][][()([])]()]]]]()))[]())])(((())())[[()[[](())]]()])[[]])([()([[](([][](()[]([[[[[]()[([[[]]])]]]([()][](()))]]((([][((()()[])((([])[([()])]))[])()]([[]][]))[]([])[[]()][()[[()](([((([])()()[(()[][([([((())([](([[][()][[]((([])[]))[((([()]([()(([[[[][]()]]()[]((()[]([][]([(())])))[(()[[((([]))[])[(([[]([][()(())])])(()()))()]()()][()]])])()([])][([()])])()()((())([[(()())[]](()([]))])))([]([][([][])][([][[()]][[()]][[]()(([]([()]([]))((([()[()]]()(([[((()(()(([[]([[]](([[][[([])[[[]][][([](())()()([()[()(())][()]]))]([])]()]]([])()[(()[()[[]()()]])[[][[]([(())])((([()])))]][]()[[[([])()[[]](()[]())[]](())()]][()]]](()))))][]()))[][])[]))[([(()()[([[[[()](())]()][]][[]][]()[])]()()[])()])[()]([[]])[[]]()]]]([([[[]]([])])[]][((()))()[][([[([[[(((([[[[]]]()()])))[[[]]](()))]]]()[[([((()()(((()())()()[])[(())][])(()[])((([[[[]]()()[]][[()]]([()]()())])[()](())))[]())[[()](())[]()()])[([(([](()[[[[()(())]([[]])][[()][[[[]()][]]([][[][]][(()[([])])([])[]]())](())[]]()[[][()(([][][]))]]()[([[[]]](())[[]][][][[((()[()][[[]]][(()[[]])([(([]))]([(()()())[][]][()]))[[()]]()]))[]]][[](()([()])()[])])([()]([[](()[]((([[]])()[]())()()[]())(()))]())[()])]()](([([][])])(()[([])])()(([]))([[[()][[[]][[]]([][[()[][]](((((()[]))[]()(()()))[])())]([](([])()))[()])]]]))(())()])))[]((([])(()[()[][]()])([]())[[[()][][[()]][]]][]()(()[()]()[]))[[()][(()())[][][][](([(())][]([])[][[][]])[]([]()[[](([[]][]))[[]]]))][]()][[(()())[[(())]][[]()[]]][()]]())([](()))]())[[()]]]]()[(())][])]]()[(())])[]]][][]())([])[]]]()([([()])])[[]]))))[()[[]()][[()]]([][])(([]())())])))([(()(()))][(()())]))[]])(()())[[(([]))[]]][(())[]()((())[]((()[()])[])())]([])]())())[[[]][[]()()]([([(((([][[]()][][()[]()])[])))](()[()[]])(()))[[[][]()]()]][][([[]][[()[]()](([(()()[]([][])()())()](((([]([[[([[[([]([()[([]()()[]())()][[]]]))[]]([])([][[([[]])]])()()]])]][[]][()]]))))))[()][[][]])][[]][][[]]([])[[[[([[][]])]]]])])][][]]))[])(([]())))][]]]([])()([[[]([]()[[()]()]())[()]]([])])))))((()[]()))])[[(()[(([[]([[]])[]([][[]])()][()])[][[[[()()[][]]([[[()[]][[[(())][][]][[]][]()(([()]))][()[((()())[[]([]())][[]]([(())]()))][[([])][[[][]]]]]]([[]]((([[]])))[]()([]())())()])][()[()][[]]][()]][[][[]()]()([])([[][[]][([[[][[[]]]()]][()[([[]([])([[]])([])])](([(()())()])[])])]])]([][[][[[]]()][([])[]]]([]()))()])][]([(()[(([[]()]()(()[[]]([])())))][(())])()][()])[[[]()]][])]]])])]()[])([])[])]))][[]]])([()][()]()))))[()])[[](())])[((((([]))[][((()[((([]))([[[]]([])]))])([[]][[][]]))][]())[(())()()()]())[()])]][([[([]())(()()([][])[[()()[][(([]))](()()[()((()))][])([(())(([[]([()]((()))[[[[[()]()[]][]]]])][[]][([])[]])[])])][()()]]())]][[()(()())()()[[]]][]]())][])()[()[([()[([[()[()]][]]()())]])[[]]([([[[()]][(()(([]))(([()()([(())])])))]()]([[[((((()[][][]()([])[()]()[([(()[][([[[[[()(())[([[()[][([])]()[[]][()]()()]()([()]()[]()[(((()))[()]())]([[[]]][(([[]([](()(([]))))]))([][()]())])[]()([][[]])()[([()[]])([(()([()()]([]))())[([][()(([][]())())[[()][]]])[(()((([])([[([][[()[](()[(([][[][](())]())([][[][]]()()()))])]])(((()())))]]([[[][][][]][[()]]((([()]((()()[])[][]))[()][[]])[()][[]]([(([])((())[][()](())))[()]()]))[[([]())]()()[]]](())()[]))([]([])[]))[[][()]]))()[][([]((((())())()))([]))[]]]]()[(()[][[((())[[]()])([[]])[]]])()]()])([(()([][]))](()))[()]])[]]())[()()][(()()[[[]]])()()]]]()[()()([[()()]()[]])]()()]]][[]]([])])]([]))])[()]]))))](()[[][()[[]][[[][]]]()]()()[][[()]((([])()()[][])[])()((()(()())()()[([]([[()([]([]([][[]])[()][()]())[()][])([])[](()([()()][()([]()[])])[]([]))[[()[()][]([[()()]])()]]]]))][[]]))]](([()()][]()[]))[](()[()])(()[[()((()()))[[[]]]][[]]]))]][]))([][])])][[[()[[]]]()]()(()()([](()[])([][()[]][()]())))[]]][]][[()][[()]]()[]])[]())()[]]][[[]]]])])(()())([])(()[])])])])[][]]()))[]]()[()[]()()][]]]))[[[]][]()][][][](([((([(()())()][()](())[](()())))[](([[]])([([([])][])])[[([](()((()[[()]][])((([][]()))([])()()))))]])[][([[][]((()[]))])(()[])[][([])()][[]]][()])]()[()][](([]()()[()][]))()[]()()([[]()([])]))))(())[][][])[[][[]][[]]])()([](()))())]]]))))[][([][])]]())]()()((([[[([][[]])][][()]]()()()[[()[]]]([()][]()([]())[])]([()()](())([()])[])[([]())(((([[](()[()[][[]()([()])][[([]([][][][][]))([])][]]][[]])[][[([])]()()][][]()[]])()[[((([()()])([]())))]]()([[[]()]])([]))[][][[](())[((()))[[([()])]([]([[]]()()))[[][]][[([][[]()])[][()[([[][[]]])]]()]]()][]]]([[]()[([](([[([][][()])]()[][([[[[][((()))([])(([]()[])[])]]]])]][]([()])[]([])))[[](()[])[()]([][[][[(()[]([()])(()([[]]))()[])[][[([])[][]]][]]()]])][])]][][])))])))([]())(()[](()[([][(([](())))])[([()[]()[()[(([][])())]]])]])(()[()()[][([([((()))()()]([]))][[][()[(([]))]]()[([[][]][][()]()[][([[]][()[[]][][]][[[][()]]])()([()([])(()()[])][])])[]]((()()))()])(())]([][])[[][]][]][])[])()]()()[()][](([[]()][[[]][][][()][()]](()(()(([()()]))([]))))))(())()))]]((()(())[]))()][]])]])([[](([([][])(())()])()([(([([][([(([[]])())([()][])][(([()[]][[((()(((([[](())][][([[([])]]([()])[][([()])[[]]][([])])])[[[[]([[]][])](()[][[()[]]])[][[][]]((()([[][()(()()[]([][([]()([])([])[][](())[])[]][][[()][]()()]))]])((())([()])[()[([([[[]()(([(([]([()(([][]()[[]])(([][[()][][](([()[([[]])]()[]][][]([])))])[]([()[]])))][])))(()()())[[([[][]])()](((([]))))[][[()]]]]))[[][([](()))([[]][[][()[[][[]]](([]()))()[((()[][[][()]][][]()[[[[([()[()]](()()()))]][][][(((()))((())))([][([()[[[[]]((()[([])[[()[(([([](([]))[[][]]())()([(()())](()))][([()])][]([][[]])()[[([[()](())])]()()](([][])))[]())([])]]][][][]][[[][]()]])())]]])()])([[]])][()[]]]]))()()[]]([()[()]()([[[([[][[]([[]])]()(())])[]()][[(()[[([])]()]([([])(())[]()][][[[](())](()([][[][()][]][()])[()])][])[])[]]]()[[((())([])())[][]]][[[(((([]))))]()]]][]][][[[()][]]]([]())[(()[])](((()[])[()([][()[]])][]()[])))])][()]([])])][[][]]]](([][()()([](()[()[([[]([][[]()()])()[]])[()]()][]]()[(()[])]))([])()])())])()()[]])]](()()))([[[[]][]](([()([])((())[])([]()[[[[][]()](([])[](([])[])((()[]())[][])([][]))(((([[[()][()](()[(([]))()[[()()]()()()]])][()]])[])([][])[([()[]]())[]][[]][]))][[([[][]])([[][]])]((([]))([](())))[]]()([](([[[[]][][()]]])[])([()[[[[()()[]()[]]((([[[[()]]()[[][[][][]](([(()[()[()[[[[((()([[](([])[[[]()][([[]])]])])))][]]]([])]]])])()())[(())()[]][[]]]]][][])[]))][[[(([])([[][[()]](((([[()[[]]()(())[[[]([[]][((())((())())([[([])]])(())[([[]()[()[][(([[[([[()[()(([]))]]])]]])[[][[[[](([]()())([])())]([]([][]()[][[[()[(())[[]]][[][]()]]][()]][[]][()])[])[]][[]][]]()]()[[()()][[[][[[[]]]][]]()()([])]]())[]]]()]()(()))])[]])[]([])([()][()[]([([[][[()[]]][]])])][])()[]][([])]]](())][([]())[(((([(([[([]([])[][][[][()()[][(())()][]]])]])[[[][[]]][()[[]]([[[]([])]]())]()()(([]([()])[[[]]])[()[]()()[]]([[]])[])]())])[][]()())))()]]()([[[()[]][]([[]](()))]()])))))[]])[][()][][[]()()([]())()((()(())))]([])[[]()[]])]([]()([()[][]()]))[]]][[()]()]][([[]])]]()])(())[()[()]])])][]))])))][()]([])])))()[][[]]([]()()([[][]][[()]])(()())[[(()[])[[](()[()(()[((())([](()[]()())[()([(([[([]()())[[[([()(()[()])])[](())]]]]][])()([[[()]]([])[[()[[]][]([]())]]])())][[]]()[][[](())(()([]()(())()))])([]([](()))()(())[()(([]))()])[([([]([[([])(()[])([(([()[[()[[[()][([]())]]]](()(()[([[]][]([])())[]]()[]))]]([()[]])[][][][([]()((()[])[])()())([])((()[][()])([]([(()[])()]))(())[[()]([]()[[]()()()[]][()[[()]](())(())()])][])[()()]([]()(()))][()][([][])[[()([((([([()[()()()()]()][])[][]()])))])]()][][([()])](([([(()([[](((([]())[]()([][([])]))[][][()])[])][[][]([])()()()]))][])](())))[[][(([][()][[]]))[()]]()[[()()()[()]([][[]][]((([()]))))]([([]()[()])()[()([](())(([[[]]()]()[][])((([(()[[]])[()([[][]()([[][((()()))]])][()[[]]][]()[[]])]([][()()])[][((([]()[](((())))))[])][]((([()[]][])([[]])))()][[[[[]]][]]][[()()[(([[]]))]]])))))][([])[]]([])(([][()])[]([])[])[(())(())]()()])][]][]]))[](())[([(())()][[(([][()]))]])[]]()()[]][[](([][](()()[(())]()()(()(())[()]()))))([][()[[][[()]]((())[][][])]][[[()]]])][])[[]]](())]))[[([]())((()))()(([([][()[([])[[[]][()()[]()()]]][]])]())[[][[]()([][](()))](())](()))]](())()][])]]())[][][[([[()][][[]]()][])][]()](((()(()))[[([])][[()]([[]])]([])[][]][((([][()]([]((([()[()[]]()[]()]((()[[([[()()](())()])[][[]()[]]][()]])))([]))[]))[()(([[][]][](())))])()))[()]][]))[])]())(([][()][[[](([[()[[]]][]][()()][]([[]([][][[][]([]([[([([])])[[()]()]][(([]()[()[([()])]()][])[[]])](([[]]([[]()][[()][]])[[]][[]([]()())][()])[]([][[]()([[[[](())[][[]()([()])((())[([]())()[]])]]]][]([][(()([[(([(()([][]([()]))[((([([[][(()[[[[([])]][[[()]]]]])()]()]([])[])(()[]())][()()[]])[[][][((()(())([]([])[][(([[]])(()[()[][()]]))]))(((([][[]](([([()]()[])][]))[])[([]())(()()[[]()][[(()()(([])())[])]()][[]()][])]))))([][]([]()(((()())(()[]))([([()[[]([[][]]([]))]])[[]([][])([])]][[()]([()])()([([()])]())]))())([[(())[]]]))(())]()]))])]([[[()([])((())[()[(()([(()[])[]](()()[[(()(()()()[()[()[([])]]])[][])]])()[]))]][()()])]()]([]()[[[](([[][]])()[]()[])]()])])))([])]]))[()][([[[](()())](()(()))[()[[()()][([((()[])[()])][](()[][](([][([[][()][[[()]]()[((())[])][([()][])][]]])][[](())[[]]]()(())))))]()]]]()(())[()()]()[])[()][]]][()]()))]))][[()]]))[][[][]]()]())([()[[][]][]()]([([[(()[])]((()[[][()[([]()[])()][]]])([()[]]))([[[]]][][]([]))()[]])])())[(()[])][[([([])]([]))]()[()()]][()[]()[()()[[][()[[[[[()[[[][()]][[()](())[[[]]][]]()][][[][[][][]]][]([][]())[]([]([]))]]]][[]]]()()]](())[]]]()])))]([][[([()][[(())()[([])][]]][]()[(([]))()][])()]])[(()(())[])([])]])([(()[[()][]()[([])][[(([[](()([]))[]](())()[]))([][][()()[[]][()]([(([])())([]()()[([])(([[()]]))[][()]([])])])()()[][[]][[(([])())()]]])()[[]]]]()])]()[]()))()()[]][()])()[]([(()[()]())])][]()]][[]])[()]))([])()]]()[]))([()])])]())[]]((()[]()()()([]())))))[]][])[([(())][]()())([]())][][][][])([])])])]([][([()((([])))]())()([[[](())()]](()))])((()))]]](([[]](([(()([])[((([([[()]])]([[[()]]][([()()][(())](()[]()))])([()[]()]())())(([]()))[([[]([][])[][[()]]()[]])]()([](([]()()))))[()])])])[([][([])])(())]))())][]][]]))(([([][[][()]()]()[])[]()((([][]()([]([()(()()([[[]](([()][[]()()()([()()](()[[(())][][]()]()(([])[[]])))([][](([][()([()]()[([[][]])((()))])[[]][]()([((()[]([()([][](()())())[[[[([()])]]([(())[()]][]()[[[]][[[]()()]]][](()([([(()(([()][[][]][][()[()]()[()]][]))[()][()[]])][[([]()()()[])]](())[()([[[][]]()])])()][]))[([][])([[][]()](())[])()])([[]][[((()[])[])]])[]([][])]]()]([])[])))])])))]))(([]))()])()[[([[]])]][[]][[[]]()()([])[]](()(((([][][])()))))([]()[()])(()))])))(()(([])[])(()))))])()))))(()[]()[])])()][][])[[[]]]))))[()]])()[()()])[[][][([])[()]][]]()]]]]][[[[()]]][[[[]]][[[()]()][[]]]([][[([([][[()[([[()]])]]][([[](([()[][]()][[[][[](([][](())))]()]()]([[][([(([]))((()[([][[[(())][[][]]]][])()])[][()()[][[[[][]()()()()()()][]]()[][]]()]())])]()])())[])()]()()()[])])(([([][([[[(([([](((([((()[][])[])[()]])((()[]))))))])[[](())])]()[[]][[]]]])[([])[[]]]()[()[]](()[()])[([]())[[][][[[[[]()[]]()()][[]]]](())[]][]][][()]((()[])[])])()]))])]])]()([()]()())()]](())))([[]()][])]][]())]()([])[()()][[[[[]]]()][[]()([][])]()[]()(([[][()[((())[[[]()]][([])[]([[]][[]][[]])([]()[])])[]]]]([]([[[][[(())][[[[]](())[[()([()])](()[([[]])](()))]]]()[][[[([])[()[]]([])]()][]][][]][][]]][[](()[])][[([])]])(([][]([])()(()[])(()[()(([[[([][[]][])]]()()][[()][][]])[[[[([(([[]]))[]()()()()]())[]]()][[[[[]]()]][][[]()([([][])()]()[]())]][()[]]]][[]([(([][([(()())[]]())])[()[[[]([])][[[()([])]][]]][()[]]][[]])(())])])([][[[][[]][]([(((([(())]()[()([][([[()]][])])](()[[]]))[](()[][[]])())([[[]][[()([((([[]][[]])))()])]]][[]()]())))])]])]))))([]))([()])[()]()[])[[()]()()()([])][()][]]]]]()[([()[]([[([])[[]][][((()[[]]))[[[([()])((()[][(()[[()[[[][]]]]][[()]][]([]))]))]((((())))[[]]([](())())())()]][[[(()([][[][(())][()()([[]])]])()())]][]]]]])]([]([])[][])[][]())][[[]()([[]][()][]()([][()])([()([[(([])([][])([()()]))][][[[(()()[])[()]]]]][][[]])]([(()[])()()][][[[[]][]()]][[()[[][]]]])))()]]][[]()(())]()())(())[([])([][][[(([][()()[]][()[]]))]][](([][])[]()))])]]))(([[]([][])])))[(()[[]])()][]])([()][](()([[[()][()(())]]()[[[]((((()))([])[])()()[()]())]]]())()[(()(())[([])[]([()][[[([]())][]]])[]])[][[]]()[[][]]][()((([[]()](())()[()()][]))[])]))]([[([]())]])])[()]]]][]()[[[[()((()()))[(())[[]((()()()([])))()[[()([[]])]](([[]()[((([])([])))[([()])[()]([])(((([[[]]][[]((()))()])((()()))())([[([()][[]])]])))((()))]]])[(()[()[]])(()()((([])()(((()))[()]))()([])()[([])[](([]((()())[]))([[]()]())())]([]()[]))[])])]]]][][(()[])[()([[[]]]())()[]](())[(([([[[[]([](([[[[]]([()])()[[]]()[]()()]]))[([])()()([()([])[()([((())[[()([][])([[][]]((([((([()]))(([[]])))()[][(([]))()[]]()([()][((((()))([[]]))[()])])[]][]([[](())((()))]([[()]]([][[]]((()))()[[([])]([()][(()[])[[()(([])[][[]])]]([[(())[(())]][[()([])(()[]()())]((([[]]()(((())([][()])))[[]](())[[]([[]])])()([([((()))([(((([(())])(((()[[([[][[]()]])[[([(((()[[()[()[[()[[]]([[[()(()[])]]])()()()]([])]]([])([])]])))])[(([][[[([]([])())][]]]([]([][](()[](((([[([()])]])([()]())[([()])]))))[()([()])()]))))]]()][[[[]]]()](()[(())()(()([()[][[][[](()()([]))[]]]([([[(([][[]])())()][[]]])([][]([]))((()()[][])[](()[([])][([]((()))[])][(())]))]((([][[[]([()])]()()]([]))))()[[]])][[]]))][])[[]]]][]([[]]()((((()())())((()()[])())([((()[[]]()[[[]()]])[(()()())()([[]])()][[[([])]([])]()()][])]))([()])[](([[][[]]][()([[]][][]([])())((([[]()([])[[]]()])[()]))[([][]())]][][[](([[([])((([]))[][()[[]]]()[]())]()((((([[]]()[][[]][]()((())[]()[[]()])[][([])]))()[](([][][(([][[[[][()[[[[]]]][]()[][[([([[()[()]]][(([]))][[][]]()((()([](()()[[]([])[([])()[[[]([])][]]()][(())]()[(()([()])())[]]()[[[(())][][]()]()]])()[]))([](()()))(()((([][[]](()[])[[]](()[][()([][])][([])])[[][][]]))))))])]]]]][()]]))][[([][[]]())][]])(()[]())[([((()))[([])]])])((()([(()[((())[][])()()]()[[]([((()[]))]()[[([](()()([])[([[]])()[]()])())]([][][])[]])](()[][[]()])()[])([[()[(())([])()]]()[[[][][()]()]]][[]])][])()[[]]()())()(())([[()()]])[()(([([[]])()]))][]))))])[][[[]][]])[][()([([[]][]())(([()]([])[[]()[([])([[(()[[()[([[]][[[[[[]]((())[][])][()[]]][]]][][(()[])(([()(([]))()])[])]()())[[()[[]]]](())](([[(()[([]()()(()[]))[]()])]])[()])][]]()([]))[]()[]()[]]])]]))[]])]])[]()))[[]]))()()[[[[]]](())([][])([([[()[]()]])([()[[[(([]()))][]()[]()]]])])()[][[(()())[([])((()[][]([][][()]()([])[([]((([[][]]))[(([]))[]()[(([]()[]))[[[]()]()(())][]]])([[]][])([][]))[[[[([([(([([])]))]())([])][])]()([([()](()))])[]]](())]])([])))][[]]]]]()[(((())))[]]([]())[](([()]()[[([])(())]])))())[]([[[]()]]))))()][])])])[[(())[[]]][[]([][(((())))][])()()()((([])([][()][[()]][])))]]))[[[]]][]][[[[][((()[]))][([][[(())(())[]]()])[((()()([]())()))]]][[][()()[]()[()]]()][][]](())(([]([])[[]()]))[]]])()])[[]]()]())[])([()])(([(())])[])))[[()][]](()[[]])()()[[([][(([]))])][([][]())]]()([]))))(([([()][()()([][[[[][()]]][]()])])[[[]()([][[][]])]]([[[[]]]])][])([[][]]())[][()[[(())][([][]([((([([[](())])][(()[])][][[]])))[]][])[])()]([[]()])]]()[[]][])[(())]]])])](([[]])()[])[]])[]()[]])]()()]()][][]()((()[])[][][](()))[](([()[[[]([])[]([][([[]]([]()([])))[(([[()]]))]]()[()][])([[()(()()([]())[(())([[]])[[]()[(([()((((())[([][[([])]])][[()]])())[[[()]]])()](((([([((()))[]]([][]))(([]()([[]])))]))))([])))][()[[[](()[][[[()()][]]](()[]()[([([[()][([](([()][[]][][])([][]))()[()(([([[]])([[]])[()]([])]([()])))]([()]()))([])]()][])()][()([])][[()]])]([[][][()()]])))(([])[([([]())()[()([][([](([]))(()))[[()]()[()[]]]()](()[][[((([([])([()][])([]()()[]([[[[()](())]]([(())([])][])()()([][[]][([[[[[[][()]]][()()[()]]]()[][()]]])][([()][][])[[[[]]]][(())(())[()][][()()]([([])[()()(())]])[]()][[()]([][()])()][]]())]))()()]()))((([]))(([][[()]([[]]())[[]]])[][(()[])])()))]][][[]][[][]])[][([[][]][])()]())[[](()[(())[]()])]][][]])()[[()][][]][[[()[[[]](())]]()](())]])[]][]((([[][]]())[()][[([[]]([][[]]))[([[[[]]][]][])[]()([]())]()]])())]]]]()([([()()()][])]()))([[]]())][](())][]())[[]]]][]()])[])())][]())[()([[[]()()]](())(([])([()][]()(()))))[][]][](([[](((()([])[[()]([](()[][(()[[[](()([]))]([])])]()[][[()(()()[[]][])](())[()()[()]]]()[()[()()(()[()])]]([]()[](())))())()()[]][])(([([])()()][[()][[]][[(())()]]])[]))((()))[[()[]]])])))()([]()[])([])]]()]][])[(([]))[]](()()())(()())()[[()]()]()([]([(())](()))[([][][][][[[[][]][]]([[]])[[]([(((()(()[[][]]()[[][((()())([[][]()]())[])[]]]))))()()])(([([()]([]([[[]()][[()]]()()]))()[()][])][([[()[[]([[][[]][]])]()(())[[]()[[]((()))]()]][]])[][]()])()())[[]([][[]][()[[[]][[(((()([()()(()()[[]][[[(()[[()][]])[()][]][]][]])][[()()(())[]]]))[[[][]]][([([[[[]]([][()][])[](()()()(([])()[[][()]()]()[])()[][])][(())[]]([])[(()(([][]))[[([])[[][]][]][]][[]])[[][([])][]([][][([()]([(()[])([((())([[()[[()]]()((([][[][](())[()[]]]()[[()]])))(())()]])((([[(([]))(())]])(()((()((()))()[()()]))[][][[([](([])[()()[]][[[[[][]([])[][(()(()[])()[[]][[]([[]()])])][]]]()]]))]](()([()()])[[]])[[([]())[][]][]])))(())(()))()[[[()]]([[]([]())]()())][[()()(()()[][])([[][]][([((())[]()())])([]())()]([][])()())()]((())[][[([[([]())[]][[[]]]]()[])][]][([])])[([()[()]][][((()[[[]()][()()][[]()[([()[[](())][]()()][])()(())]][[]][[[][]]]()[[]]])[[()()]([[[[]][((()))((([][[()]]()[])))(()(()([]))((()[]))())[[]][][()[[(())()[]([[][]()()([[][[]]([]()[])[]]()(()))()])][[]()()][[]][(())[([]())](()())([[]()()])]][]]]]])(()())()()][()])[]([[()][[]][[][[[[[()(())]()]]]()]]])[]])]][]()]())(()[[()[](()[[]][])[][][[]][][[[]]]]])])([]([[([[(()[]()([()([[[[(([[[(()[])((())(([]()[()])()(([[[()](()()[(()[])]([()])())()[[]]]])))[(())[]])[]]()()][][]()[[[[[()()()]()]()]]]](((())[()]())[])[])[][([][[][(([][][]))]][()](()([])([]([()][]))[((([([](())[(())([])](())[])[[(())[()]()]]][])())[])])[(())()()(()[][][[[][(()[])](())(()()[[(([()(())()(()([((([[]]()[[]([([][][[[[[]()][]]]][])])()][([[[][]([()])[(()()[])]]])()(()(([()[]][[]()[[][]()][][]]))()(([((([()][][()])[[(([(()[[]]()(()()[][])((())))[([][[[[]][]([])()[]()[[]]]()()])([()]()([])())[]([][]()[][[()][[]]])][]([])])[[](())])][[]]([[(()[])]])[]])[[]])()([])])([]))()[])(()[[[()[][[[()()]]]()]]])(([])([]))]([[]][][()])[[[]]([([][[]()])][])]))()[])([])])()[[][[()]][()()]])][()[([[[]([](([()[[[][]]]])))]()([()()[]]())])[([][[(())][][][]()[[]]([[]])[()]])]]]()[][])[[()]()]())]])]()][])[][]])]([]()())[()[][]][[()]][])]]][[()[]][]()][[([()[()[[((()[])(()))[]()[]]]()[()]]])[()]]()()]][(((([()]([])()[()([])][[[()][()[]][]]([()])])[[[()([(()[[(()[])]])])]]]())[]))][([()([][]())[()]])()[][([])(([([[()]][])([[]][])([][](()([()([(())[(())[()[[]](())]]][])])())[])][])([][()()]()))](([[][]])[()])()])][([[[[([[[()][]]][[([])[()]][]()[[[]]]()](((([[]]))[[]([((()))])]))(()()())())]]]])[[[](()(()())[][][[][([[[[]][]]])][]])]][](([()[(())[][]()][[()](())[]](([][()()](())([()][][[]()([([[]][])])][((())()[][[][]([((([]()[]))[])(())])])]()()()(([])(()([])(((([]([[[()[][]]]]))[][]()))))))[]))((()()))]))[[[]][()]]((((([([[[]][[]()[]][][]()[([][][]())]])]))))(([]((([()(((()))()[[((()))]()]()())]))(()))(([(()[()(([([]())][[(((()[()]))())()[([()[]((()[]))()[][]][]([[()()(([[]][(()())])([(())]))]]())[[()()[(()([[]])()(())([])[])(()[]())]()[()]]])[[[][()([]()([((([])([])))()])[[()]])][]]]]]]()[])(([()])))()])])[][([[][()()()[()(([[()][[]]]))[[(([(([(()([(())]))()])(())[])](()()[[]])[[()[]([[[]]])((()())[]()[])[][[][()(([]))([[()][(())]][()[]][])]]][[[[(()())[][[](([[][([()[]()()](())((([]([])))()[[([[()()]])]()(([[([])((())([]())(()))()[]]])())[[([[][]][])][]()()()][()[]]])[()])([(([])[()[]][]()[[]]([]))][]())[]]()]))][][][]([[]()([[()]])([]()(([[]]()[][])(()()))()[()[]])[[[()()[]]]][()][]][]([][][((()(()([](([])[[(()[])]]))([])(()([[][[]][[]][()]])(()[[]][][][[(([][]()[]([])))[[]]([]())[([]([()]))]]()][])))()))]))[[]()][[[()]]][()[[[(([])[]([()])())[]]][][]][][()[()]([([]())(()(()()))()[([]()()()(([()]()())[([[]])()[]])[[]][(())]([])[]())]])[()][]()()]]][][][]([](([([][]())])(())[](()[][]()([()()[]]()[[[[][()[]]]]](()())[])))[[][][]([][]([[]()[[((((()(([()(((((()((()[])([[]()]))[]))[])(([()][()(([]([](()()(([][()]))()([][](()[])))[])))][([])]([[(())[](())[][][]()[]]([])])[()][][]([(([])()[])]((()[(()[([[]()])][])][])[][((([()(())][()]([[]][[]][()[]])[[]]))[])][])[()([]())()([][])[[]()()(()[([][]([])[(([()](()()([][]))([])))[]]())])(())]][[()]])[[][[[[[()[([([])[([()(()[()[][[(())](())(()[]()([])())()()]]([]()[]()[])[()])])]([([(()()[()])[()([](([[][[][][(()[[()][]((()))])]]][[(()())([()()][[((([]([[[[][]]()[[]]]()()[[]]])[[()[[[][[()()[[]][(([])())(([])()[][])]]]]()()(())[]()[[([[]](([])[[()()[]([(()()())][([])][[][[](([][]))()]])]][](([[]][]()[[](([()([])[][]][]()(()))()[([[()][(()[([[[]][]])])][(())[()]]()[[]()]([()()](()([([])[]()[][]]()((()[[]]()[]([][[]([[][()]([()[(([][]))]])]()[])()]))())[()]()))())])])[][()]])([[]])()([])[])([((((()[[]([[]])])))[][])()()[]()()])()[]()))][[]](([])[])][]]()()]()(((())))[]][]()([]([[][]]([()][])[]))[([[]][(())])[()]])([[()()()[[()]()]]])(())))][]()])]]([][[[]]])))[[][()([([[()]])])()][]]()[((([][[([])[]]]()))[])(([][]()))]())]])])]()(()((((())[()[[[]]()()[([()][]([])([][])[])()[[]]]]()])))((([[[([[[]([][()])]](([])()([][((([((()[()()]())[()])[]])(([()]())[([()][[[[[[()]([((()[[[[()](([])[])[](([[][()[]][[([(()([(())]))[]])][]([[(()[])]])]([])[([((([][][[]])(([])[()((()))[]][])()[[(([(())][]([[]])()(()))[])][][[]()[][[][][[]()(([]()))([][][[]][][[([]()())][]][[[]()[]()]()()([])])]]]][]))[][]]()[])[([]([()](([()[[[([(()([][[]]))[()][([])()]])()()[[[]][[[]()()][[]]]]]]([()([[[]()[]]([])]([[][[[]][]]()[([][])[]([()][])([])([]()[()][(([])(())[])])]()][][[]](())((([[]])()[][(([]()))])[()[[()[(())()[]]]][]]))()[])]())((()[[]])())[[[]]]]()])[]([])()[][[]([])((()(())(())()([])[]([[(((())[])[]())]]()()[])))()[[[([()(())]([]([[[]()]])[]))[]]]]([()])]())())[])[][[()][(([])()[[[]]])][[[]()()[][[(()()()[()])[([[(()[()][()((((())))[])[]][])]])]]][]][[]]][()((()[()]))[[]]([])]]]]][[]]()[])[])]]([[([()])][][[([]())][]](()[])][])])()[()])[[][][]][]])][]([[()]])][[()][(()()[]()())]]][()][]()]]()[((()))][[[]]]()[[[][]][]]())[][(())][([([][])]()())(([][()()()()])([[][]]()[]))()]()][[[]][[]]](([])[])[]([[([])]][[]([[]])]([()([][()[[[([()(()()())([][[[][([()])([])]()](([]()[(())((([[[]()]]()(())())))])[])[()][]][()[()]]([][(())[]]))()[]()[[()()]()[]][([])][](([(()())()((()()()))][]()(())([](())[])[([()]()[])([[]])[[][[[]]]([]())[]()][]][]))[((()[(())])((([()[(()[])()[]][][()][[][]](([[](([([][][()([])])]))()]))])()[]))([()]))]][([])])]()([]())[(()()()([[[]]])([[]][()]()()([[(())[]]]))()[][()[]([()])])]](()()[[]]()(())[]([]))][]()]())]))[]([][][]()))()))](()))([]()[(([]))(()(()))[]][])()[[[[()]][]][]]()[](()[][][()()][])))[]]((()))]][()]))())(())()()))]([(())])(()())[[]]([()])(())](([()]())(()))]][]()][]([[[]()]([])])]])([]()[])[[([[][][((([[]][[()()]])))(([]([[]]())(([(([([][([[[()()](())]()][((()))])])(([]))])[])((()[]))]))))]]()()()[])((([])))]()[]]())))]))))[][(()[()])][(([]))])(([][]([][](([[]])(([]([][(([[[[[()]()([[[()][]([])]([[]()](()[][]))][[][()]])[]][([[[]]]([(([(()[([](((((([](())))))[[][()(()()[][()()()[][()]])(([[][()][][([[]][][])(())]]))]][][()()[[(([])[()(([]([[([(())[]])]])()))()(())((()[[][([][()](())())[([])[]]]]()[][()])[](([]))()[])[()]])([[[]]()])((([])[][])[][[((()[(())]()))()]]())([[()]][()])]]][])[()]))()([[]()()])][(())]()[])[[]]][[]()]()(())))]))][]][[]()][]]][[]][()][[[([[]([[([][])[]()[]]][][(()([[()][][][[()]]])[[[]][]([[()]]())[]])][[[]()]]())](())[])]([]([(()[(([[]]()[[[][[][([[[]]])[](()()[][][][(([()[((())(([[]](()[[]])(([][[[][()(([][()])[[]([([])][])[[([])]()[(([](([][(()(()[([()[]])]))]))))]()[]]])]]](()[])))))[((())[])](())())()]([[]([][[([(())]())][]([[]]())[([([])][[](()[()]())()()()]([()([]())]))]])]()(())[(()()[])()]([])()())[[[[(((()(((())([()])[])((())([[[((((()))))()[()]()[][()[]]()[[]]((()[[()]])())()]()]]()[]()())))[]()()()[][()[[][]](([[]]))]))[][[][]]()())]()[()()()[]][][]()()][]][((()()))]]()]()))])(())[]([]([[]](([[[()[]]]()]())[([()()([])]()(([[([])(([])())]([[[]([()[]][()[[]]([](()())()())])]([[]()])[]])[][]])[()]))()][([[[([])()][]]]([][])([()([(())])])[[]()])[]([](([([](([[[]]])[][()]([])[][([][[]][][[[()][]]])])[()[][[[(()[])][]]]])[()]()([([]([[]]))[()]]())])()()([([(())(())])[](())])[]()))((()))[[()]]][([][])][])()[()[()](()[([()][[][()]()([][()])]()(()[][])[])([])([])[[((()))(())[]]]()])(())(()([[]([[()[]()]])([(((()())([[]()]()[][()()()]([[]()])()[[(([])[[]])[]]]))[[()]][]([][](()()()[[[([[[([()][[()]])(([][([](()[]))[[((()()))()()([]()[][([([[[((()[[]()][[][]]))]([])()[[()]()()(()(()))]]])]([]))])][[(([()[([])()[]()]])[([()]())(()[][])](([]))(())[([[()][()((()[]))][(([]))()]])[]()[][]])]][](()[(([()])[[()]()[][]])[]]())]]))[()()]()([])[[]]]][]()][])[]([][])]()]((())([[[]]()]))])))[[][[([[]])()]]][]][[[][()[([])][[[(()[][])([])()()([()(([])[()])])]((([][[]]()[()][]())[][])(([()[][](([]()[]))[[[()[()[][()[[[[]]]()]][(()[])]][]([])]]](()()())]([])[]))([][]))]([[[][][()([])[[[]]][()]([()])()]]])]([[()()[]]][[][][[[]]]])]()]])(())]))()])[])]]([[]])](([[[()]][]()])[][([[()()]]([(())]()))][]([()([])[[()()]]()])()[])]([()()][]()()([[]])[]))(()))[]])][()[[[]]]][])()()[])[](((())[]))[()][[((([][]))[[(([][[]][(((((()[][]([()][[][()[]]][[[[]]]]()(([()]()[][][])))([][]))))))][]))[[]()]]()])([([[]])])]]][]])([()[]])([[]](()[[]])[()]))])[]))(([]()))[]())))[](([][[()]]))()([[]][(())[]]([][()](((()(()[[]][][]))()[]))[[((([()][])([(())][([[]()][[][]]())[][()][()][([])][]])[]))[[]()(()([][()]))()][[()]([])[[]][[()]()[](())][]]][]]()(([][[[[]]]])))([[[()[]]]([]([()][([])[]()[]()([([[[()[([])[()([])]]]()]()][])(()()([(()([]))[]]))[[[()((([]))()())[][]]]][()]](([()][[[]()][(([[[]()([])[()[]()[]]]])[[[]]([](([[[[[]]][[]]][]](())[([][[((((())([()[][[][]][]][]([(()([]))[][()]([])[()(())]][[[()()[([()]())()[()][[][]][]()[[]()]]()[()]()(([][]((([()])))(([[[()]]][[[]([[([[]])]][](([[[]]]())))]])[[]])(()[][[[][[()([][](()()[][[[]()]]))]]]([[]()]())][(([])([(()[[][]]((([]))()()[])[[()]()])]))]()[()[[]]][[][()[]]][]()(()))()[[[]][]](())))]]][[(([[]([[[()[[([])[[][[(()([][[]()][[]()()()[[]][]][(())()[]]()(()(([(())[](([][]))]))([](()[])())[[]][()[]][[[]()(())]]))[()]([([[[((()))]]][[[[][]][[[(([[[]]]()))(()[])][([[]])]]][]][[]()]])([(()())])([][])(())][[[[(()[])]]]()[]([()()[()]])][]))([][()[()[]][()()[()]][]])]]((()[]))[(()(()((([](())()[(())[]])([][([][]([()([[]]())[]()[()[[]]()]]))][[]]()([[([[]][([(()(()[]))[]()]([])[(([[[[()][()](())[]]]]()))])[()]()[([])]]())](([])([[[([]()[])[()]](())]()[]][()][][])([]())[[]])]([][]()[]))))))(([]))())][([[]])([[()](([][][])(((((()())))))[(())[[]([(()(())([]))[[]]])]][[[][[](())()()]]]()((()[[](([]))()(())]((([(())])([[][]]))([])[()]))(([])((()))))[[[[]][()()[]]]])[]][()[()(()[][]())]])[]][]]]](()[()]([]))()][][[]]]()])[]]))]](())[]))[[()[[([](()))][][]([])][](([[()]()])[[]][([()[]][])()()[[[]]]])[]([][[((()))[]]])((()((()))[[][]]))[(())()]]()])())[])]]([]))])[[][](())[][][]]([][[(())][](((()))[](()([(()[([[][(()[])()][[]][]][]([]((((()))))))[(()[()]()[]()(())[][[][]([]((())[])[][[([[]])([])()]])([])()()[[[([]())[]][[[()([(([[]()]))])[]]]()]]][]])]])([[[([[]][])][[()]()[]]]][]([()][])(()))]((()[[[][[[[]([][([]()())])()[[](()[])()[]]]](([[][]][]))]]()])[])())(()(())[([[[]([[]][(())])]])[[]]])))([]([[(((([][()])))[])]]()()))]))[()[()]])(([()[(((()[][](()()[[]]))))(()()())][]][][])())])[]]()[][]][])[()])((()[()[[]]](([()([][[[]]])])()[()(()[]((()[]))(([[]]))())][]([[][[]([[()]()][])][([][])([()])[([])[[[][][]][[]()[][]]]]][([])[((())[][]())(()[[[]]()])([])()][]([])]]([])[]))))([(([[]]))])(([(()([[]()[](([]()[]([[]()()])[[]]))])[][[]][()])[]][([[]()[][]])]))([]))()])[[][()[]()()][[()]]])](((())[]))))()()[]))]([()])]][[[[][]]][][]][]))()()(())])]()]](((()()[]()())[]()(([][()([(()(())[])]([]([[(()())][]()[[]](())])[(())(())]()[()()][])[][[][[]]][]())])))[()()(()[[][[()[]]]])][]()([]))][([[(([]()))()][]])]((())))[][[][[]][[[()([[]()[]])]([]())[[]][(([][()()][]))[]](())]([([[][[()[]]][]()([[][[]][([([][][[][]((()[[[()]((([])))]]([([][[()[]]]())[]][()]))[])]([][]))[([])][]])]()()]()[])[]]()[])]()([][[[[]]([([[()]()[()]()[]]()[]())])]()]()([])[]))[]]])[[]][][()]][]]()]]((()([(())()][[][]]))[])([[][[][[]]([]())][]([][]())])()]()((())[][]())[()(([((((()))))()()[][()]()]))][()])][([[[()[([]())()[[]()]]]][()()]])][]()(()))[]))[][[](()([])[(((([[[([[]][[()[]][[[((())[[[]][((([]))(()()(()[])))]()((()))[][[[[][[()][]][[]()()]]()][]]])()[][[]]]()()()[[[[([])[][]]([][()()()()()([](()[()[](()()[[]][])[[]][(([(([]([()]))[][[][][]]()[[]()[([()](()([]()()[[][][][]([[]])[]])()))]])[]]))[()[][]([](()[[[()]]])[([[()]()[[][]]])[][](([()([])]))][][[]]([]())[])([]()[])]()([])]][]()[]))])(()([(())[]])[])]]((((([][([])[]()][][([()([()[]])()[]([(())])[]([()[]()])])])))([[]()([][])([])()][[[]]()]([])()[[]([]())])[]((([([(([])(()([][])))]())[]][()])([((([([])]))[](([()[][()[()]()]]))[])[[]][()[]][([[]][[](())]((())()()(()[[()[[()]]()((()(([[[(([]([()](())([[][]]()()))))[]]]][()[[[()([]())()]]]])([([(()([[]])()[[]])[]]())([][(((())()([[][]]([]()(([][[[]]]())[()]))[()])([]())))[[]]])]))[]))()]][])([([[()]][])]()[])[]))]](()())(()([])[]([[[[][][][[[]]][(())()]]]][])())()))[([])()()[[[[[]]]([(())()]([]))[]()()[]]]][(([](([()()][]))()[][(([][]()))])())[]])()([[[()()[]][]]])))]]]])()]()]])([])))[()[][[((()((()(([])()[]))())))()]]([]()((()[[][]()[[()[(([()])[()])]()[[]][]][]]])))])])([]()[()[()][][]])[]][[[[]()[[][]]]]][()[[]]]())]))(())]][[[([[]])[()((([](()[])[])))]()[]()]([])()]])([[[[[][][[]]()((([][([[[]]])()[]]([]))[]))]][]][[]]])]]()))[[[[][[([[[(((()))([])[((()([]([()[][([]()[]([]))]()][]())[(([]))][][])[[]][])[])[([][])[][()[(()([])[])]]()()][][()]])]]])][()]]()]]()][][])])]((([](([])))))(([([][[]()])]([()][])[])(()))()([()[[[]][()[[]([[(()(([])())(([][]())))[()][([]())[][[[([[()[[]()()]()((()([])()[]())())][[[][[[]][][[][]]]([])(([](()())())[[][]]([[()]])())[[]]]()(((([[]]))))][]])([][])](()[[](()[][([])])][])()][]][[]()[[]][()[[]][][[()]()]][()][()]([]([([][[([()])]][])])((([[]][]))))]([])()]]()[][[[[[[[]]]]]]]][[[[(([]))[()[]]]()]]](()))]]([([]([][])(()[()[]((()[(()[][][])(([]()(()))[[]])][]()[([](([[]])[()][()](([])(([[][]])([(())]((([][]))(([([(([]([](()()()))))[[[]]([[()]([])[[]()[[[][]]][][[[([(()[[]()[]])[(((()[][[]([([](()))][])])()(()[])[]))]][[()[([][])[]]][([[]](())[()[]]())((()[[[][]]]([](([])))([()()])()([]([()()(([[]()[]()]))[(()[][[(())()(()[([[[()([])]()[][((())())]][[][]]])([()[]([[]()[]]()[[]((([]()[[]])[()]()))]()[()[][[[][()]]([]([()(([(()())]())[[]])]()))[()[(()()())]((([]))(([([])]())[[(()()[[()]])[](([]()))([])]]))[]]]()[]()[]((()))[[]]])()][(()()([[[]([]((()))([][(()[(())()])])()[(()()())][[]])]])())][[([])[([()[](([([()[]])][]()))]([()]))()][][]([]()())]()([]([][]))[]])][])[[[()[()]][]()[][]][]()]]()])[[[]]][()[[]]](()[()])[([](()[()([])][]()()))[([]([][]))[][()[]]]][][]()((()))][]([])])[()[]()[]])))]()])]]]]]([][([[()][][]][[]])[]][])()([]))[(()([]()))]][[([[[]]])]](([]))([()[(((()[(([]))()]()()[][[]]())()))[[()]][()[()[()]()[]()()[]][([][(([([])]((())[((()[[([][[([]())([[[][[]((()))()]]])[][]]([])[()]()])[[][[]((()[[]()()][])()()(([])[[()]]()(()))[(([[]](())))([][][[][]()[]]([]))])]]]()]()))()]))[]([[[][]([])]]([]))()((())((())[[[[]([()[[([[]](([])(([]([[[[(())]()[([][[()][][()]])][[]([[]()[[()]()][[(([])[[[(())]][]][])]]]())]]][](([])[[]])])[[]])[])))][(())()]]])()]]]))[][[]][(())])])]][][[]]([(())([][][])])()[]]]([]([])[]))])]([])())))(([()][([]()[[]]([][[][]][]())([]))])[[]])[])[()])[[]][]))[[]])[[()]]]()))][](()()))([][]))])()()[[()([]()(()()[]))[[][()(())]]]][[(()())[]([[((([](([[[[]((()[])())[([])()[()]()[[([][()]())[]]((()[]))()()]]]][(())]()[][]])[[[]()([])()[]]()][(()[])][]([])[])((([[[]]][((([][(()([]))])))])[][]([[]()][[]])[][([()](([])()))])))))[]]][()][])](([(([[[][]([([])])[((([][[][([])([(([]))]([])([]))[()()]]()[]](([((()())([]))]))([[[[][[[][]]([][](((([][()][]))[])[])[([[()]](()())[((()))([[][][[]]()][()]())()([]())[[[]()][((()[][]))[][[[([[]()])]][([][][](([])(((())[()()(()([([])]()()())()(([])()[])[])()]()(()([([()])[(([([]())[[]]]))]()[[]([])()()()([][])]([[]([([]())[[]]([])])([])])])[][])[][[]([(([()]))][])(()())[]()[]()()(([[[[(((([]())([[]]([(())][()(())[][]][()[[[]][[](([[](()[])([])]([][]))())](([]()))[()()()]]])[][][()]()[]([]([(((()[([]([]))([]())()]))[()])[]])(([([])[[]](([](())))]))())[]))(()))([][[[[[[[[()][()]]()(()[()])]](()[]([])[])[([][()][([[]])()([])](([][()]()([]())())))([])][][]]]()((([])(([]))))[()()[]()]]([][()[]()[[[]]][]])[[([([[([])]]()([]))])][[[]]([])[]]]])([]))()(([()[[([[[]]])]]()[()]]()[[[()()](()()())()]]))[[]()[](([])([]()([([][])]))[][[]()[][]()](()()(([([][][[][()]])](([][])[()]))[][]))[((()([]()()))())][[()][()]][]()(()([(((([]))[[(())]()()][]())[([[]()[[[[]]()[[]]]()]]([][][])[])])])()))[()]]](([][][[[()[][(([[()]()[]()((([(([])[()[]][])]([()][][()]))[((((())[][]([[()][[([[]]())]([[]])][([][][([[]])])[]]])((([[([][()([()[(()[][()([[[]]]([][])()[((([([[()]])[][()[]([])]([[]]((()((()))()(()))))[(())]])()[[[]]()]))])]()(()[[]()[]][(()())]()([[]][([()(()[[](()([][([](()))]))])([[(()(()))]([([()])()])[()][()][]([])]([[()][][]]))][])][]([]))[])())(([][][()][[][][[[]][()]()]][()]))([])()()([()()[]])]][[]])([[([[[([])]()([])]()()][[]](([][(())([])[[]]])()()[()[]][])([([])])[()])()([[[]](([]))])(([]))][[]()][]])()]([[()]][]))][][([]()())]])[][])))(([]([]([()(([[]]))[([]([[()([[[]([()([])[]])][][[]()][[[][([]()(()))([])]()([[][([])[()][([((())(()))([[[]]])])][][[]()[[]][[[[]]][]]]][]][][(([()][([]())][]))()()])]()([])][]]()[()[[][]]][([])][](())((())[[]]()))[][]]()()(())])([()()]()([()][])))[[]]([][])(())][]](())))()))()(()))[()])[([]([()(()((([[([()[[]]()()][(()[])()])][]]([]))()[()][[]()[()]]([]))[]([])))])[(())])()[[]]()[]][]]))[]])[]([[(())[()[([])()()]]([[]][(()[([()[[[]][[[][[()]]][[[()]](())][[[]](())]]()[][[]]()([[()]([[[[][()]()[[[][(())()][]([()]([()([[]])]))[]()[]][()]][([])][()()[]](())[][]([])]][[](()(()[][()((()(()([][[]]([]))()([]([]())[[[[]]()()((([])[]((()))([([()[()]([[[()([][])]([[]]()(())[][[][()][[]([])(([()[](([([](([])[](())))][]))([](()[([(())])[[]]()][])[[][((()))]])()[]]))]]())]([()[[[()]]][]])()()[]])])])()([]))(()[[[][[]][]()]()])([(([[()[[([])[([]()[])]]([()]())()](([()[][]()]))]]))[]][]()())([()()])()[][])()[[][][()[[()]]][][[]]][]([[[[()[[]]]]]]([](()([[((())[])(())[]()][][]]))([])()[[[[][]]][([()])]()])()())]]([(([]))[[()[[]][[()()]][[()[()]()]]]](())]([])((([]([()[(())[((()))(()[([])[[][[]][]][][]])]]])[])()))(()(([]))(([[]][()([][()((()[][])[])])()])([(((([()])((())))))]))))()([]()))([])(()[[]]))))]([(()[[]])])[][[[]][[]][]]))]]()[()[[]]])[[(()(()[[][][]((()([([[]][[([])[[()[()((((([([[]])])([])))()[])(([(([]))(()[()])])[()[()()]]))()]]]([])((([[][][()][]])()[[[()][([][((([][](())[])))([([])[(()((()(()))[(([()(()())][()[([([][])[](())([]()()[[[()[[]]](())]()[[[]]]])])([])]])([])[])](())[[][]](()[])[[[[](()[])[[()]][[]][()][([[([([])([]()[][([]())(([][((()))][]()))][()(())])[]][[]])()]])[][()](()[[]])([[]])][()][[()]]([])[()[]][[([[()[[()[()][[]()](()[][][()])((([])))]][]()[](()()([(())])()()()[[]])[()()([])[]][][()[[]]]]]([])())[]][]][([(())()([()[()]((())([]))][]([()(())([][[]([]())()]([][()]()))])[()[]])[][[]]()[[]](([[[[[[]][[]([])][]](()([][[([][[][(()[[]()([])[]()[][][]()[(()([[]]))](()(()[])[])[[([()])()([[][((()[[]])[()])]])]()]])(([()[[[()]]()]]()()()))]])][][([[[]()]][[][](()(([([][[[][]]()[(()())]()([[](([]))[()[][]]])])([()])])))])]])()()[])]](((()))[](([])[]))]))()]())[()()][[]]][[([]([[]])[])[]()(()[()][])][[(()[[(()[(())])]][[]][([[([([]([])()())([](()[(([])[][[[]][][[[]]]]())]))])[(()[])([])[()][()]()]([()])[]()[[[[()](()(([(()[])[([()])()(()(([()[][](()()()())[]])))]]))())]()][[()([]())]()((([][((())()[][])[[][([][]())([((()))][()][]()[[][][](()[][]()[()][[()[([]()(())[(()[[]]())])[]((([([][])[]][])[[][]])(([([[()][]])[]][])[])[[[][][]()][]()][])()(())]]])])(()())]]][()])))](())]([]())[]]()[[()]()[()(()[])]()[]([(())[[[][[(([()()])(()[([[([]()[])]()[][][]])]))]][[()][[]]][[[]](())[[[]]]]]()][(()([[[[]][]()((()())[])[()][]][([])[[(()()[[[]]()[[[]]][]])(([]))]]]])[])]][])()]])[([])][()]][])([])()[][[[(())[][[][([])(([[()[]][([]()())][]])[])([])[][(()(([()]))[()]())]][]]]]][[](()[[([][](()())[])[()]()]])]()][][[]][]]([[]])]((()))]()]][[([[[()]]]())[[()()(([][([()([]([()(((()[](()))))[]]))])][]()))()[()]]]]])())]][])][[]](([])))][][()[]()()]()](())]))]]([])[()[]])]))[[[]][]]()[[]](()[][([()])])[])()([])[[()]]]))([[([][])[]()][]]()[])[]]]()[[(([(())[[]]([])][])[()][[[[]]]]((()())()))][()()][((()[]()[][()[]]()[()]))(()()([()[][]()]([][]()))()()[]()(()))][]]])([])][]([])][])()[[]]([[]([][[]])]()()(([[((([][]))()[])[((()(())))]]])(())[[[]([[][][[]]]([(()([()([][])][][])[])[[]](((()))[])(([()([((([][]([])([[][[][([])]][]()])))[[()]]([[[[[]]]([()]())]][()]))([(([[[([[(())][()]][[]])()]]][][[][[]]]()))[[]]])])[()[][]]][])[][][])([][][])][])[])]])[][][])][][([[][][]()[()]((()())[][])][](()))([[][]][[()(([[()[](([][]()[][][[()]][(())](([[[[]]([]()[])][]]))[][(()()[[]])([][])][](([]()([](())([]())())([]))))()[[]][])]([](((())[])[])([]))]))[()([(((([])()(([]()[]))()[]())()[[()[[[][()()([]())[]()()()][[]]]()]]]((())(()))[()()]()))()[](())(([]([()])(([([[[](())]()](([([])])[])[](([])[()]))])[]())))])]((())(()[])(([]())((([[][]([()](()))][(())()])))[])()([]([([[]])])))]](([]()())[]()(([([([([()][[()]]()())([[]][([][][[][]])[]()]([()[][][]()][]))[]()][()])[]]()[[[]][][((())[()[]])][[()]()](())()[[]((([(()[])]([][][[[()]]]))())[])(())()[][[]()]][()](()(([][(([]))]()[]())[])((()))[((()))[][([[([()[][(([([]((())([[][()[()]][(([])([[]](((([()[][[((([[[[]][[[()()](())]]][]([](()())[[]]())](()())()()())[]))][([])()]][]([([])[]])](()[([[]])[]][])[]()[])[])))))[([[]])]()()()[]]()([][[[]]]())[()]()([][])()][]()()[()]()[]()()))[([[]]())([[][()[]][[]]])([[]][[][[[(([()[([[()][]])([])]]))([[[[(())]()]][][[(([](())((()[][][]))))]][(([()]))][][[]]])]]]])])]))]])][]()[[]([(([][]())()[[][(())()((())([()]))]])[]])()]])]])([])[][()()[[[[(()[()])]]][[]([])][]]]][])()][][])))[])]([([])[]]([[](())()()[()][]()[[[]([])][[]]]]))[]())][]([]))]([[][[]][([](([])(())[[[[([[]][])][]](())]([[]]()())[()]]))[[([])]([])(())][]]])((()([([])[[[([([]([[[[]]](()[[]()])[[[()([[[]]()][])][[]][[[]]]][]()]]))((())()([][][([((()))([(())][])[[][]]][[[[()[()]][[](())]()(()()[[([(()[])[]])]()[][[(((()[])[[()([[()[][[]()]](()[][])])()()[]][]])[]()())(((([][]()[])())(([([[[]][()]])()()(([([[[]]][[(([[][]][()]())(()[[][][[]][([]((()))([[]]))]]()))]][])()][])[])[[()([](()))]]((([[]])[]()([])([])[[(([([])]()(()))[[][[](([]())[](()[[]])()([]()))][]]((())[[]]()()([()][[()()[(([[]][][[()[([((()[])[])[]()]())()[()[()[][]]]([][])][]()]]()([[]][])))]]]()[](()[]))))][()]]()[]()[][]))][[()][(())[([])[]([][])[][[][]((([(([]([])[([(([(([()(())()][]()))([[[]()]]([][][([([]()())][][][([(())[](())]())])][[([()][([]([(()(()[[][]]()[])[])[](())](())[]))][[]()[([][[[]]])[]]()[[[[]][]](()[])]]([]))([((())[[]()])])]]()[]))])[])(())[]])[][]])[])()][])))]()[[[[[[][(())]]]]]()]]][()](())()][[](()(()[[[]([])]([][])([([])[[]]([(([[]()][[[][()[()([]())]][]]]))([[]()[[]()]([][()()]()())][]()()())(()[[][([](()))](())()])])[()[]]][([()]())](([()([])([]())[]])))]))(()[[()[]]][()[[]]])()(([])[])[]][()]())()(([][()((()[]([(([[()][[[](())([])()](()[])][]])([]())[]())[]])))]()((())))()[])[]())))][[]()()[][((([(([])[()][])]))[[([][]((([]())[]())[[][](())][]()))[][[]]]]())[[()]]][[][[()]](()(())()([])[([[]()])(()()([]))[]])]([])([])][()]()()()]()])]]])[][()[]]()]())()([]))[]()][]()())](([](()[])[]([()()[[]]])))]](([][()][[[][]][][[]()()]([()([])()([[]])][])()][(([][[][](())(())])(((()())[()()])[[([])]()[[][()[([([][])[]()()][[]([][([])])][])[][][]]()([])]]([[]([()])])[(()[([])[[]]()[]()][])]]))((([])()))()(([])()[(())][[[[()([[][][]([[((([][]([()])[]())))[][][()()((([][[]]))())()()][[[()[()][(([(())[]][()](([[]([])]))))]]()][]][][](()[[]][()])]()[]][[]])]([[]][[][[]()(())[]]]))[][][()][[([[]][(([])[])])[](([()][][]()()()(())[][()()]))][]]][]]]][])[[((([])))[(()[]()((()[]([][](())(()()[])))(())[[]]([([][]([]))[[(()())][]([])()]]()()))([((()))()])[([()()])][([[][([][()[]][][()])][[[]]]([])[([()][][][[][]]())[]()][[]]])])[][]]([])[]([][[]()[][([][[[]][[[()()[]()[]][][([][])()]([([()[()[()](()[])]])(((())))])](())][]][])()]([()[]()])])[]()]][[]([[]([[[]()()[]]][()][[((()))](()[][])[(()())[]]][[]()]([](()))[][])()[[]((()[()[[]]()[]][])())()]])(((()())))()((([[[[][]]][]](())[]((()))[[[][]()([]((([[](()()[])((([])))()])[]))(())((()([[]()][((([][[()[]][[[]]]])())())]))[])[[]]((()())[]([]([])[]))[[[]([[[][()()[]]][()()()]][(()[()([([[(([][][]([])))[]]]([])([(()[])[()]][([[][]][]([]))[]]))[[(())][]]()][]())(())])()])[((())[()[([[]])()[][]()][[()]]])]]()[[[]()[()()][]]]([[()[]](()())[[[][][]]]])][][])]])[][[[][][()]]])(()())[])([])][]][][][(()[]())()]))])[(()()[])[]])([]([])))[]([[][([]([]))]])]))](())]]]))[]]]([[][]])]))]())[])))()[]][[()]]()()][[[()]]][]()]()()[](())()]])])]]]][()])[])([]))[])]](([([])[](())()[[()][[([](())(())[[]][])]([][]()([]([(())[]((()()())[](()[()]([]()[[]]()()))(())[][])([][]())]))[][])[]()[][([()])[([([[(([()[]](())[])((()))[][()](()[]))]()(([][[]()])())[][[([])[[]]]]()[][[]]()])][][])]]]][]]([]([(())]))))[][]](((((())(((()()(([[][]](([([])]))())()()(([[[[(()((()[]())))]]]([](()))[]([][]()()())]())([][()()()]()())))[((()))]))[([[([]([]()))()([])([]())[([[[]]([]((([])(()))()))()([])][][][])]]()])])[]))))))])()[][])[]]()()]][][[]()(([[()]]))])(([](([](()())()(([][])()[[]()()()[]([]()[])])[]))[][][])(([](()[()])(()))()))]][])()()][])[]()[][[]()()]()[][]])())()[([](()(()[[]](()[[]()[][[[[[][(()([[]][([])](([[]()[]([[(()([])[([])[](([[]((())[][][[]])[()([([[]][](((((([()()([](()(()(()([[](()[](()[(((()[]([]((()()()))))[()]))[]]([[([][()()])[(())]([(())])([]()(())((()[])))]])[])())])[][[[()][[]()]][[](())(([()])[[][]])[]]])[])))]))([]))))([[]]([[[][]]][][])()))()[([([[[][[]][[]][][[]][](())([()()(()[[]])]((([]()[]))())([]()[][()(()[()[]])]))][[[()](())]]][()])])])]())]])([]))()]()())]]()[][[][]()])()[]([])]())[])[][[]]))[]]][([][])]][]][[[]]][][]([(()()([()([])]))(()())][])[][]]][[]()][][()])()[]())(())((()([[[[[([])]()]([[[]]](()[]))[]([](((([[]([(([][[][[]][[][()[([([])((())([[]][]((())[([](([]()))()([(([])[])[]([])])([([]())([([][][]()()[])][][][[[((()))]](())])]))])([])))[]])([((()[(())[]()]))[((()))]](([]()[])))[()[]][[(([])[[][([[]]((()[])))([])]([][]())()[][[[]]()]])][]]]()][[]()]]()])[()[()[[()()][]((()()()())[[()]()][[](()([][[[()][]][([])[]]]([][[([])[(()[(())])[](()[])](())]])[[]])([]))])]([()[]]()())(()([[]][()()[]]))]([[(([][[[([([()([[()[]]()()[]](()))]())])[][((())((())[[]])(()[]())[([[[][[](([[](())(()([][]))])[([][](()[[(([[]][][([(()[])()([][[]](()([])))[([]([([[()((([])))]]())()][]()[]()()))][][[[(([(()(([()()])[[]]))][])((([([[[[[]()]]]](([]()[[[]()]]))[])()][[()[[]]()]]))(())))]][()[]([](([]()()[]))(([][])[(([][][[][]]))()[[]()()]]))(([()]([(([])[])]))(([]()[]()[])[][([[[]]()]())[]()[][]])[((([[](()())[(([][[()[][[[][]][[]][]]]()[][][]])[]())][([()]((()[[(([[[]][[[[]()()(((()))()[])]]](())(())][])())][(())]][])[[()]]([(([]))[[]]()(([][[()]()([]([]))](()[(([]([()])[])(()()))][[(([[()][[[[]()]]]][])[][[][]]())]])[])(()(())))[]])))([[][]])[]]([()()[][][(())(())]()[]][]()[[]](()[([[]](())[()][[]](())())[]]))])))][[]])][[]]]()()([()[]()][])])]()))((([([[[][[()]]]]([([][[(([]))[]()[]][()([]()())]]()[])()])([((())[([])()]([]([][[]()][()]))([[][(()[()][])][()[]]]))]([([]([[]()()]((([][()([[]])]()[(()[]([]))]))(())([[[]][([])]](()))())))])[]))[][[[]]]]())()([([[[](([]))][()]])]([])[()]([[[]](((([][])[()()[[()((()[((([][[]])()[]()))])[][])[]]]([][([()])][[()]([])]())]()[]((()))(([[]]))[])))])()))()[])([[]()])[(((()([[][]]())[[()()[]][[(()()[((([[[][()][]][((([])()))()]]))(([][])[[][()([([][[][]])[[][][()]]()][])]][]()))])[()]]([])[()()]]]([]))[[(())[]()]][()](()[])[[][[][[][[[]]][()(()[]()())]()()][]]()])())]]()([][])()[]])()[()(([(())][])[([(()[])][])][][]()(()())[[((((())[][[]])[]))(([[]](([])((((()([[([([]([])[[]((()[[]()]((([])))([]))([][]([]())()))()([][])([]()([](([([[[]]])])[([()()[][([]()[([([[((((())(()(()))(()))))][[[]]]([][[]])][(()[()([([]())][])])[]][])])])][()[]]])]))[()])[]([[[]]])])])]])))[([()([]())((([]()))(()[[]](((((()[([][(([[[]()]])[]([]))])[([()])(([[]]))(()[]()([((([()(([()])([[[]]])[[]])([[[][]()([])]]([()]))])[]))][][[]])[()]()()((()[]()[()()()[()[]]([[][][([])]])]()))()())]][[([()()][][(([]))([])[[][(())()((())[[]][][[]])([][]([[()[]]()])[()][])]]([][])(())]((()[][()]())[])()([]))][]()()]))))[()[(([[]][[]]())(([][][])))]][]([()([(()[])[](()[])])]))))[]])()]))))[[[][[[]]]]])[[()]]()][([]([((()[](()[][(()((()[])()[][])([]))](()[()](()(()[((()()[[([(()())][()((()))(())(((([]))())())[]]()[([()(()([([][[[[]]]](()(()))())]))]()[[[]]()()]()([][])([]))[(()())(())([])]])][()(()(([([[([]([([[[]][]](()))])([][([[[]][]])[[][[()([()([[]][[[][][]]])])()((((()))[]))]]][()[[[]((())([][[]][()([[](([[[]]([[()][][]()]()([()]))(()[()[]()()]([][()[]]))])[()])][])][()()(())[]([])[[()]][()([][(())])]][([]([][[()]]))]))()]]]()()])[])[[()()([]())(([()[]()]))]()]()([][])][]]())(()[[]])[((())[])]])[[[[([[[[[[[]][]]]([()([[[[]][([(([]))][][[][]([]((())))]([]))([(()(([])(()))(([[]])[[]([][])[]][()]))[[[]]]])]([[]])[]]])])]][][[]([]())[]]()[]])][()]]][[[]]()]][]))](()([[]]()([[]()((([][[]]))[]([[]()([][[([[[[]][[][[][()[]()([()][])[[]]][][][[(([]()))[(()[[[[[[]]]]()()()]()])[][][]][]([[[()[()][]([])()]][](())(([((()[[][[[[()[]]]([])()]][]]))([])[([([[[([])]]](())[(()[])[]([])](([][()[]])))])]]))[][]])]][]]]([[(())]])[[]]][]][([()[]()])])]([()[[]][][]]([()]()))([])[[]()[((((()))[]))[[]]]()()]])]))]))()()()[()]())[[[][]][]]])[()[]])[]]()[][[]]()([])()[([][(([][]))(([[][]((()())[])])([]([])[[]][]))]([])())[]()[]]))[[]()[]])()(())[[]][]()())))][()[()]]))]()])()()()])[[]()[()(()(()[[]]))]]]())](()[([()()[[][(()[[[([][])[()][]([[[[[[][]([[[][([()(([[]()])[])[()]][])[[][]][([()])]]()(([((((()(([()])))()())))[]()](())()([()][])()))]][((([()]))[[[]]])][[]][][])]]]()][([[[]]][]())]]((()[]))[()((()()))])([[][([])([])][]])[([()()()()](([()([[][((([[][()[]]][([[][[][[[[]][()][][][[]()][[]()([([()])]([])()[](()()))]()([][]()(((())[([])]([[]]))))[]]]][[[[()[[()]]]()]([([()])]())]((()))(())]()][])]())()))]()]([([][]([][][((())[[()()[(([[()[][[]()]]()]()[][]()[[](()()([]([(()[][([][][()]()[()])([][()]([][()])[])()][()[()(()([][[()[]][][([]())[][]](())[(()[([])])[[]([(()()()(())())(([])([][[]]([][][][[]]([])())))[]((()[](([]()[][[]]()(()[[][()]()][])()[]))[]))[]])[()][[[]()()]]]][]]))[()][([()[](()())()(((()())))()[][]((([()()[]()])))])()][]]()[]()]()[])[]]()))())([]([][])()())[]((()()))][[]([])([]()([()[[]]])[])][()][]()[[((()[][[]]()))[][[[()[]()]]()][]]]))([()]())][][(())][()[[[()]]()[]]]][()[]][]](()([([()](()()([])[])([]([][])([]()())))[][][(()()(())(())[]((()()()()(()()[(([][]([])((([[]([])[][][]])())())))()(())](([[][([][](([][()]()))[]())[[(([]))]]()([()(())])]]))(()[[([][])((([()])))]]))()[]))())()][((()[]))]][[]([[]])[][[]]])))])(([])))]))([][])]())([])))]]]][[]([][](()()())[[]][])][[][][[]][[[]]]([(())]())])[[[[[](())()[[[]([()()[]])]]][[()(([]))([(([])[])()])]][([[]((())())(([]))](([][]))[[()()][()]](([[[]]()[[]([]([[]])[(())]()[()[]([[(([(([]))][([[][]([()](([[]]()))[])])()([])[[]]]))]([])[]()])]()())]((([])(())))](()[()[]([][[]()[[]][]]([](([[]]((())(([]))()[][]))[]([][]()))))[]][]))())()[[[]][()[]]()])[()]]][]([()])[()][]]()(()()[]([])([((())(([()[[[][[]()([][][])(([[]][[(())()][()[](([[]])()())[]]([([][()])])[]]([][][])))[]()[]()([[]()([[]][][])])([([()([])])](([()])[[]]([][][])[[][]([(())[()]]())()()](()())[[[(())]]][()])()[[]][[[](([[][([[[]]][]([])([[[]][(([])())]]))]([[]][([])])](([[()]]([]([])([()[([()])(([])[])]]())()[()[]]([])))()))[([][](())[[]])()[()[[](()[])([([[[[]]]])]()()([()((([()[]()[[()()(([]))[[]((()))]][([[]])()]]([]([[((([]())[[][][]]))]][[]]))])[([]()[][]())()[]]())())[]])())[()[]()[]]][()][][]()][]([][(()[][])[]([])]((()())[((()()()())([])()()[])[]]()[]([[]()()()][((())[])][])))])([])()()((()))][()]])]]]])))[][]][()][[[[([]([([[[()[[()][][]][()]]][[()]]][]())()])[])()()]][]][][[[]][]]()]))[(())[[([[[()](()[()]([]))([]())[]([]([[]([](()([(()(())()(())())]()()))[([])]([])[])])(())())]]()[([])[()[[[]][((())(()[][()()[]]))](()[[(())]][])[]][[([][[](()[[][[[][]]]((()(()([]))))[[][[]]([[]((([[]]))[])([[[]][(([][])[()])[[(([])())][[[](()())[[[]][([]()[(()())][([])]())]][[(())]](())[()][[][()[[][]()][](()[[]([][([]((([[](([[[]][(())((()(([]([])))))(([])(([])()))][]]()(([][]))[](()[])())[()([[[][()()()()]([(([[]][()([][[()]([()[]][][([([[[]]])])(([]([()()][])[()]))([()]([])[])])[]]())[]()(())()[((([][[(()[[]][(([]))]())](())[([])()()[]]([])([[()[[](()())]]])])[])[[]])[]]][()])(((([(())][()[][][][](([])[]((([([][[]]())])))[])[]][[()][(((([][](()[[]]([]))[]((([()[([[(())]([])])]()[[]]])())[]()[[[][]][[[]]][[]([]((()(()))))]][[([()()[]][[](())])][]]([])[]))())(()([][[([(([[[()][][]][[(()[[]][(())][[][()]([([])][[][]])()])()[]]]]))][])]()]([([([[[][]]][()])[()][]()[][((([][]()[[]])()[]))]()])][])(()([][(()())]())[()]))[])))[((([])))]][([])][()]((([()](()()[][[()[][()()[][[](())[]]]]()()()])[])())[]()[]())[([[][]])((())[()[](()[[[[]]]])])][]]())()[[]]))))([]())][[]]([[]()([])([](())[[[[]()[[]()]][]([[]](([](([[[]]]())[((([[][][[]]][(()[[][[][]()](([]))()([[([][()])([]())]])[((())(())()[[[()()]()]]())]()()([])](([[()[()]]()])[[]]))(()[][[()]])[](())()]()((()))[([()])]())))(())(([[[([[()](([])()())])]][][[]]([()([])([])][()[]]())((([[[(())([([](()))[[]]](()))[]()[[()]](())[(()(()[()()(((())[[][][(([][]([[]()][[]](([])(()())[]())[]))([[[(([])()[[]])]]][[(())]]()))]])[()])()[](()([(())[(([](()())([]()[((()[[](()[][][])])(())[]())[()[]]]))[]([](([()]))))[]][[[[]]]([([](([[]][()[()([()])][[[((()))]()[]([])()()(()[(([()])[](([]))())](([[(()[](([[]]))([][[]])([][[]()][](()()())()[()]))]])([([])][()]((([()[([])]]()[(()[[(([]()([][(([][([([[[(()[()]([([])][])[])[[[][()([](()))]()]]]]])][][[(([[()]])())]])[()([][])([][[()](()([]))][](()()))]])[][])]([])[[][]]())))]([]()()[([[[]]([[]]([])([]))[]][()][[](([([[[((()([]((()[])[])((())))[]))][[]][][][[][]]]])()]()[()][](()))([])[()])])])()()((()))]())][]()))[[(([[(((()[([()[([[[]]()]())[[[]]]][((()))]])](())[][][]))((())[]())[][()])([[]]([[]])([][([()()(())]()())]()))[([])()]]([([[[(((()))((()[])())(()()([]())[]()[[][](())])()(([]()[()[([()[[]()][[[]([]([()]()[]))[[]]]]](()()[]))()[][(()([()[][[]()(([[[]]]())())()[]]()][]))]]]([][])[])))(([[][()([][])(())][](()[((([])[()]()[[][[]()]]))])[]]([])(())))()]][][[]]([[]])()]())])[[((([((()())[[]((([]())[])[[][()]])]((()[]()))[()])[]][[]][][][])()(([()[][]][[[][]]]()[][()([][][([[[][(([([]([[][([][([[[]]][]())][[[]]([()[]])])][()[]]])[])()])([([](([])([][([])[()]]([[](()(()()))])))())[]][])())[]]]][])][])[([][()[][]])((()))]([])[(([][][][]([][][[[]][([(([])()[])[]][])(())[()]()]])[(())[([])()]])())][[[]([()(())])][()([[][]([]([()[]([]((([()[](())]))[](()))())]))[()()]]([()([(())()()])()][]([])[[[]]()]([][[([([])]()[([][])](()()[([][[[(()[()])([][][([])][])[([][][(([]()))[]])]()]]][])[()[(())[([[](()())()()]([()][([])()[(([[()](())][()])([([()()][][[]()[][()[[(([((()()[])[])[]]))]]](()[])])][])((([[]([])[](((()))(()[]))[]((())[])])(([[()[]](()[])()(()([[()[[][()[[[()]()]][]]][]()](([]))])([][])[[[][([[[]]][]([][[](()[](()[])([][[][][[]]]))([[(())]]())]))]()[]]])[]([][]())[]][(([]))([])()])[]))()))([([][()][][()](()([][[[]()[[[()]]]()()][]]))[]((())[()([[((([()]())([[()](()([[][[()[()()([]([]))]]]][[]()[]][])[])]()(([()[]()(())](()()([()[((())[()][[[[]([])()]([[]([(())[[]()(()(())(([][][])[[][[[]]]((()))])()()())]][([()(([()][])()())])])[[]]()[]()[]])[]]()[]]())[()[]]]])))[][([[][[]]()])()[[]][][]([])()][(())[][(())()]][](([[]])()())()()[()][])[()](()[]))[][()](([][])())[[()((()))]()][[][(()[([])[]]([][])()[()()[][]])([[]([])[[]][]])][(([(([][]))[()]()]([][[[]]()[]][][[[[()][[()]()[()]]]][[[()[[]]]][([[((()())([][][][]()[()](())))]])][[((()))]]]][][]())([])))]][()([([(())[]([[][]()()([[[(()(()))]][[[()]][]]])()])[](([()]))])([()([[]([][([])[]()])[]]())[([][]()[]((((([[][]][]))[()(())]())())([()])[[]][]))]([[()]][][])()[(())()]])()[]((()[][(()[()()][([])[[][[]()([])][[](())]][]])](([]((([][((([()]([][]))))[]][]))(()[()][[()]([()[]][[()[[]]]()])][])())(((())([[[][()]]]()())([]))((())))))))()])([[[[[()]]]]][([])()([[][()]])][]()[]((())[](([(())])()))[])]))]()(())()(()[[]()()])()])[()[][]]])(([([][])])[]))]())()][]][[(())][]])[])]]([()][[[[][]()]([])[[]()]]][]([]))](([()[(())]]()())((())())()[])]()([]))())]]))[[[]]]())()((()[()()]())[])]](([]))]))[])[[]])()([[][()[[]()][]([][[[[()([])]][]]]([[]])([]))()]()][()(()()())])]][()]()([[[()]]])([][])]([[][][()]([])([]([]([(([])[()])[]])[()][[()]](()())))][[[]]()[[]]]([[]][()]))(([]()((()))))[]))]()()])))[()])(())]()][([]())]](((([[]])[][])([()[[][][([])()([()])]]])((((()))))()))([][[()]][(()())])([])())))()])]((()[][][([]()([()])[]()())])[][]())[]]([])))]))()[[()[][[[([][[]([[(())]()((([])))[(([]))()][([]())()([])]((([[]](([[[()()]]]))[()]()()))[])([(([]))])(())])[()()[]]][([()[]()()(([])[[[]]([[()][](())][(())])(()[][][]())]()([]((([][][(((())()[])())](())([]()())((()[][]))([()()])()))[()][])))])[]]())]]](([[]]))[()][()()([](()[[[[()]]]])([]))[()[][[()]]([[][]][()])]([][])[]]([([])[][][][[]()[]()](([[]]))]([]))][()]]]()]]]()[])([][])))(())]()[[()[[]]]]))(([])[(())]()((()([[]]()[[]])(()()(([])([[()()()(([()[][(())]]))()([[()[]][]]())][[]][](([])([(())[[[]]]([])[((())()[])(((((())[]()[(())()]())))((()())))([])]()[[()[(())]]]][[]](()[])))])()[]([]))[]))([[[[[]]]([([[(()[[()([])]([])(())()][[][()]][])]])[(())]][([[][[][()[]]]([([([]())])])][(()()[([[][[()[[]]]]])([()[[][]([]())()[[]]]]([([[]])][[]]))])])])]][(()([])((()))[])()][][]()))())]()()()))[[][](()[]())()]([])))][([[][]()][][[][()](([[][([()[[()]][[]]])][]]))([][][])[((()))[([])()]]()][][()[]()]())]])[[([]([])[])]]][]()[((([][(([][[(([()[][()][[()]]](())[[]]([[([])]](()(()([([[()][()()][][]]([]()[][]))]))([()(([[][]])[][][[[()]]])][]))[[]()]())))()][[[]][[[()()[]()[[[]]]]][]][[[([()]())][[[[[]()]()()[[][]]]][][((())[][])]]()((()[(()([]))[]][[[[([[][[([()])]()[(())()[][]()[]()]]][][])]]]])[[[([][([()[]()])(())[]])[]()]][[()[][]]]]())]]][[]()(([]))()()[]()]][]([([])])[][()][]())[()]([][][]()()))]))[])()[]()[[]([(()[([][])([])[[[][][((([])))]]]])])][[][]][[]]][])())]]([]([][])))([])()[][[]]]())[[([([])[()]])]]([(([[]])[])((([])))])[[]]])())))])])[]((()[[][][()][[()]]([[()[[][(()[()]([]))][[()([])]]]][]])[([([()][])()([]())[()][]][()]()[((([[][]](()))))])]])([[[((()))][][([])[]]](([[]])([[]](())))][[([][])][]]))]][([(())](()))(()[]([]()()([]))(()))][]]()[((([][[]([[()[]]])()]))[])[][](([[][][()]([([])][]([]))])())]](()[])()]][]])][()])([][]())]()[([(([])([]))([(()[]([[]]))][])][])]()][(())[([[(())()]][[]([[][([()][[]])][([()([[[[]][[[]]([])[]][]()[]]((())[[[]()()](()(([()()](()[][[[]]][])()([]))))[[]()[[]]]][][([()])])]([])[(()[[[]]][[][(()())()]]()[[([])]()[][[]](([])([()]))(())[[]][][()([])()]]()[(()())[[[[()[()()]]()(([][])[([()])])[()]][[[()()]]]]()][()]()()()])()](([])[[]([])]))[[]]])()]][[[][]()()]])][][()[]()])()]])[()()]])]([][][])][[]]()]]())][]]]]()]]](())[])()[]]())[][]]])[[][[[[[]()[()[]]]]()()][[(())]]]]])]][]][[[()()[[]()]]]]])())[[]([[()]])()]](()(()))]()())][[[[][]]()()[[]]]]()[])])()[][]()]))())[()[]][[[]]]))([][])[[]]()]]()])(()[]([]))))[])(())[][(())[]()])]()([(()[][[][()(((([[[()[](()[][]([([]()[])][[()][((())[])([[()]])()[()([[]])][]()[()]()]]))]]])[[[][[]()][]]]()[(((([])[()([()()[(())()()[][()[]]()[](()[()([((()()[][]()))][()][]()())])[[]][][]]])])()(([])()))[])()[]()]()([]))([[[][([][])]]])[()(()[()[([])()[[]][]][]]((()[()[][]])[]()[])(())[](()[]())()())][()[()][()]](())[]))]])][[(()([]()[[((((()(()(()([]))([]())[])[]())[([(()[[[([[[()(()()()[])][](())[()[]([])]()[]][(())[]]])(([[[[]]]([]()()[((([])())(([()])[()([](()[])([]()))((([()()[]][[]])[([[[][]]]((([][[]][]([][][][])[])())((())()())([()([]())])[][]()[[[][[[]]]]])()[]())[]])()(((())[])[[]])(([][[([()])[]][()([(([[[]([])][][]]())((())))])][][]()]))[[]][[]][([[[[()[][]]][][][((())())()]]]()[[][][(()())][([])][(([[(())][]]))([])()][[]([])](((()())[]))])[[]]()[()]]())[][[[[[]][][]]]([]([]))([])[[][]][]]()((([]([()()][()[][([])[][][[()](()([[]()]()()(()[[[(()[])][][()[]][][()]]]))([]))]()]][()[]()]))))()][][])(()))[[[](())[]([])][[([[][]])[()]()][][((()()()))]][[()]([][[[[][[][][](())]](([[][]])[[[[][]()][((())[((())[][[()]])[([([][[[[[][]]()[]()]((()[()][((()[()])((()))[([[(()[][]([]))]()[]][]())])([][[]][(()[([]())])])[[[][][]()()[[]](())(()())]][]])[][])()[]()]][])()([[]])[]])()([[]()[[]]])()[[][()([[]]())()]([()][])]([[]](()[])[()(()[[]]()()[(()((([()()][[[]][([])[[[(([()]))()(([]))([]())]([])[[[[[]](()[()][]()()[()])]]][]([([][()[][][()([[]]()[[]])]([]()[][]()[])[[][]]()[([][][(([])())])]])(([])()[[()[]][]])]([[]]))[()()()()]()()][][([(((()([]())())((()[[()][]])[()])[]))][[()([]())[([[][]])]]]())[((()[]()([([])][([()[]](()()[[]])()[][[[[[[][]((([])))]]]]()])()]()[(((()))[([()()[]])[]][()])[()[()[[]]()([()()])]][[[]]([]())([([[[]]([()[[((([][([](()))])[][()([]())][[]][()(()([][[]]()()))()](())))]()]][][[]][(())](((()[][()]([](()))([()()[]])))))([()[(([([()()[[[[[]()[]]([])][]]][()]][][]()[(()[])()])])()(()(()[])([](([()[][()([]()[])]])))))]()])((()())())[()[]]](()[][[]]())()[])])][][([[]])][(([()][[()([(([]))])]])())[]]()][[][]][([[[][(()[]()(([])))[](([[]])[]([](((()()[])[]()(()()(())[()[]][][([][]())[]()][])))())()([][[]][])([][[(()[()][][])][[][()([])]]([]()(()[([])])[[[][]]()])[([([()]())()(()())()]([]([](())))[][[]][])][]]((((()[[]]()(()()))[()()((((()[]))))][()])[]))[()([])[()][]]([][[[[()]][((([])()[(())]()))([])]]([[]()[]])[()([]([])()([((([]((([([])])))[]))[[]]((()[[[]][]([](()[(())(()(([][((([()][[][]][()[()[()()([([])[[[[]][[]]()]][[([[[]([(()[()[([])]])(()[]())]())]()][[]])[([][][((()))][])(())]](()())((())[])[]]])[([]())((()))]][[]()]([]([([])])())]])([][])))[]][]())))([]([()[][[[]((([[(()(()))]])([[[][[[]]()[()()[][()][]([[([])]][[]([])])]]([[]])()[]([()[]])][]])[()]()[]))()][(([[[[[]]([]([][(())])([]()))]()[]([]([[[[]()]]])())()]][][[]][](([]))(()(((([([]()())[](())]))[]())[((([])))[[[][]]][[[][([[[((())()[])]]])(([[[][()][[]]][][][(())[]]]([[][[]]([[[]]])[[[][[]([])(([(()((([[[]]][]))(()[([](())(()))](()[()[]])()([])))[(()[([[[()[()([])]]]]([])[()])(()[])])])()][][](([]()))[])[(())][])][[]()[[]][][([])]([[][()]()()][]()[([([][[[][]](()[[][()][][]]())()])][([])]([[][[((())[()])]]]())[])[[]((()[()()[][[[[[](()[[(())]][])()()]()[][[][(([()][])[])[[]]()](())][][[][[]][()]][[][[[]]](())()]][]](([[[[]]([[]]())]()[]]))[]][]])([])())()[[[]]][]]])]](([]()([]))(()))]]))[[]][[([[[[()[]](())[[()]]]]([[]])])((([]))([[]]))[[[]]]()[]([[()][]][[](())])[[([[[]][[]()(())]])[]()]]]]((()))[])](()[])]][((()[](()))([[[]()([]())]([()[]()])]())[])]])[])()()))][]()][][[][][]][]][[][[]]])()[([[[]]])])])([]()))(()[])])((()))))][])[[][]]())[][[]][()[[[]]][]][()][[()][[[[]]()][[([]())](()(()))][([[[[([][[][]]()[()])[]()]([(())])][][(())()](())][]])]()[](()[[][[()()]][[]]])]()]]]))())]]])()((()))][(([[[]]][[]]()()[(([])())][][]))[]()][[[]]]())))[][(([])[](()[([][[[[[]([]([]))]([[][]](())()(([((()[]()[]))]))[])][[([([])])[[[]]()][()]]]][][][[][](()([()][[[[]()][[[((([([])][])[()([[[[]][]]]()())]))]]](((([][]))[(([])()[])()()]))]])[[[]]][])[]]()][[([])()]][[[[][]]]([[[][[][(([([(())[][[([()])]([](((())[[][]()])[(()[])])[])[[(([()[[()[]][()]]()()[([])[]][]([])]()[()][]([]))[[[[]]]([[(())]()](()))])[(())(()[]([[][[](())([])]()(())]))]]([][]()()()[[]]()(()))()][[]]]])()]))]]([()][[([]()([](())))[]]])](([]))][[[[]][()]()][]][[()][][]])()[]][])][])([][]))](()(([](([[()[]]()[][[]][]]))[()[[]][]](()[[[[][[]([([][[]((()))](([])[])([()]()))])]]]][()])))())()[]]]]][()]([([][()])()][])[()]][[]()][()]())()([])[])([()()()([()[]][[]][[][[]([])(([])[])][]((())())])()[[([()[][()()()][]]())[]][(([])[[]]()())][[]()][[]()()][()]()[]((([][]((([])[()]([]())([[][[[]][]([[][([[(()())()[](()[(((([[]][[][[()]]]([[[[]]]][()[()[]]](([]))[](())([([])(())][](([])([]))))[]()([]))(()[(())[[[()]]([([][[[][]]()][(())]())[()][[[[]]]]])]][[]])))()[[(((())))()(()[][])]()][])])]])()]][([])()()])[][]([((()))[([][]([()[][][]][(([[()](([()])[()[((([]()[])[[([()()])]([](()))]())[[]])[]]()(())()]())()(())]())[[[()](([()[()[]()[[[](([](([(([([[]][()[][]()])[]][[][()][(([][[]])()()[])()[]][]([([[[]]][[()[]][][()]])]()([(()[([][[]])](([[([][[[]]])][]((()[][([]([]()()))]()())((()[()]))([[[[]][[]]]][()()]))]()[()]()[[][]][[][]])()[]))[]])[[[]]][](()(()[(()[]())()()]((([()[[]]])[[()()]])([[[(())]([[]])[([]([[]])[]()([]()))]]()()]))[])())()())([([()([]()()[][[]])])()])(([([()])])([((([[[[]]](([()][][])[][][()()])])()[]))][]))])())]([[]]()))))[()()()][]([()]))]([[[[]]]]((([[[][]()()[]][[]]()])((()[[()(()[[()[()[][][]](((())([]))[])([]([])[[[[([])][(()[[[[()[][]]]]()][[][]])]([])()][]]])[][[]][][[([()[]()]([[[[]]]][]())()([]()))([])][[()]][(([]))]]]](([][][]))[()])]](()[])(([[]()]))[[()][([][()][()][[]])[[]]([[]][])]])))[])([][()]()))]][]][]))[()](([]))[(()())[]((([([])]())([()]([[]()[]()]()[]))((((())[]))))())][()[[]]]][]((())([]))][[]][][]())][[]]))[()]]][[[][]()]]([]))()()([(([[[]]]))([[](([[][]([[]])][])[()()]()([([])[]([])]([[()()()[][]]]()([()][[][[[[]]]([])[][[(())]]()]])(([[[[]]()][()]]))[(()[[]()])[()[]]][])()[([])()[()]][]())[[[]](()[][[()]((()(()[([()[]([]([(((([][](((())[[[]][((())([[[()()[([[[]()(([]()))]][(([[]([])])[()][][][])()[][[((()(()())))]()]][()()([])]()()()[])(())]()](([])()[][[]])[[[(()())]][][()[]]]]()()]))()([([([[(([((()))]([[[(()[(()[[[](([([]((())))()[]]))[]][][()()]])[]][()]())[[([][()])][]((((([][()]([][][[]])))[((()[[((())(([])[()[[]]]([][[]]()()([])))())(())][]([][[[](()[((([]))())[](())])]]([][]())[])([()[]][[([])][(())]((()([[]](())())([((((())()())[][])[])[()]]())))()])](([])[[]][()])[])[][])([])[]([][(())()[][][][()[]]](())([][]))()]())))[([]([][](([][(()[][[[]]([]([[[]]][]))][][(([])[][[(()[])[[[([((([[(([])[])[][[]][[()()[[[(()())]]([](([](([[]([])]([]))[]))[((()[()]))][]))()]]]]]))[([])][[([[()(()())[]([[[][[([[]()][()([])[((()[[()]])[](([[()()(()([[]](()[]([([][(([[()]][()])[[[(()()(()))]]][])(([]))([[][]])()([][()])]([])[[[][]]][((()[][]))]())(())][[]])[](([]))[([])[([])][[()[[]][]([])[]][][]]([]([])[][])[]][][]([(())()()[]]))))(([(()[]())])[[([[]])(((())))]])()]])[()])())(([(()[]([(()()[()])](())())([[()]([[[][[([][[]](([])())([()()[]]()()[]))()([()][])]()[][[]([])()]()[()()([](()(())))()]]][]([])[]]())[(())][[[()]]()(([([])])[([]())])()([()[()][]][[[]([][[(([()](())))]])[()[][]()[][]](()[[][[]]([[]](())[()])[]][][])]][])]])[([]())([[]]()([](([]([](([][])[][]))))))][[]][([[]])([[[]]])])][](())[[][]]))()]](([]([]))([[[((()[[[[]](()[]((([[[][[]]]]()[])[[[][][[[]()]]](([])())][]))())[][]][][[(()())([]())]()()]]()((())()))()(()()[[[()][([][])(()(()()[()([[]])]((((()(((())[[][[([])]((())(((()))()([]())))()[[][]()[([[()()]()])()[]()]][]][]]())([[]][](())(((())[][[]([])((()[[]][][]))[[[()[][]()][()()]](())()][((([(())()])))]([[([])[([[]()][])]]]()[]([([]()([])[[[]]](([()()]))()())][()[[([])]([])][[()](((()[()()[]][[]]()()[]([()]))))([[](())][[][]])()[[]][]()][[[()[[]]][[[[][][()[[][]]]](())]]]]()[]((()))]))[[(())(()[[[]][]([[()()](()(([])()[]()[][][[[[[()[](()())][[[([[]([])()()()])][()]([][]())()[()]]]()[()[]([][()[()]])()][]()]()][][[](((()))[])]][]()][()([()]()[()][]())][()]()))])]())[]]]()[()[[]]([()[]](()))]]))))())((([()]))))())((()()[([([[]])[](())])][])))))][]()[]]])()())[][([])()][(())]]()(())[]()()()]][]))()())([])]]]][])[](([]))]])]])])()][]]()([]()[][][]([[[]][][]][]))[][(([(()[])[]([[]()[[]]][])[([((([(())])()))[()[()[((())[][([][]([()[(()[](([]))()[()][[[][]]])]((([()][])[]))([()]([()]())[([]())(()())()([[[()][][()][[((()()))()]()[[][][](())([()])]]]()][])][[]][])[]]))[][]])()[]()[]][]]((([]()[]))[[[]][[()([(())[]]([[]()[([])][()][][[]]]))([])[]()]((()))](([()]()())[()]()()[([])[]()[([[]([()[]])])([([][[]]()()(())()[()[]])[][([([[()[]][][][][]([][()][])(([[[]]][]))])[]])[[]([[[]()][]])()]][()()(())]([][][]([()][[[()(())()[][([[[]][[]][[[]]([])]])()]](()()()[()([((((([]))[[[[([([[]][[]])])[[()[]](()((())[][]))](([()])())]]][[([()][])([])(([([([][])])][]([[]])()))[([])[()]]][[][([])([[][][([([]()()[()[([])]][])([][[]][([[]][])][])(([[[[[()([]())[][[]]()]]]]()((()[][[((()[([[]])[][[[]([((([])[][()[]]))[[]][()]]()[[]([][])[]]())]]][][][][()[](())]))()]()]))((([()[]])[[]])([][((([[()]])))]([()]))[])][(()())][]()))][((([()([])[]]())[(()[[()]]([])[[]([[]][][])[][]])[([([][((()[[(()([])()[[([][[((()))]][]((())([][])()[[](())]))[]]])([()]((()()())[[([[][](([]))][([[((())([[[][()]](())][][()](())))]])[]])][](()[])]())[()]([[[()][([][]())(())[[(()[([](()([[]]()(()(((()))([]()[[]]))(())[])[[]])([[][[]]])([(()[])[[[[[()]][[][()[]]]][]]]][])())[[][][]()])][[[([[([[]])([[]([])])]()()])[]]()([[]])]()])]]]](())()[()[[](([](()([])))(((()))()[[]()]))]][[([((([]())[()])[])]([[](()[])]([])[][(([(())])[][([()([])])]([]([()[([]([]()()[([(([]((()()())[])())()[[[]]])[][[()((([][])[]))([()])]][][[]]])[](())((()[[[]([[(()()())[]()()[[]()]]])()[]]]([])))]))[()]([[]][[]][(()[()[[]]]([][][]([()][[][]()[(()[][([([[]()])][][(()[][][]())]()()[])])[][]([[]][[()[[]()[()][]]([()[]]([]()[[[]]]))([[[]]][()[](()[([]([()([]())]((()))[][][(([]))]))][[[[]][[([]())[][()]()][][][]]]()[]](())[][])[][]])[]]][]((()[]()))()(()[[]])[]())]][])))][()])]])([((()))()[]]()[]()))(((()[]())))())(()(([]()(([])))))[([()])()[[][()[()][][[]]()][()]][(([][()]()[][]))()]()]])[]([[()[][]][(()(()[](([]))[]))]()[]]((()[([[]]())][])(([[]][])(([([])]))[[]]))))]]((()()(())()[[[]][()[()][]]][()[]()])())[([[]])]][])([[]]))]])()()(()))])()])()]()][]([])))])[(())]()(())[[()][()([])]([[][(()([]([])))[[][[(((([[[]()[]([[([(()())[[]][[]][[]][([[]](()()))]([[()]][()][(((()[](())[]))())])][([[][()][([[][]])]](((((())[(()[()[()]])][])))(())))])[()]((())[[[[]][[[[]][[()([])]][([[][]][][]()[]()(()[])[])(([])[])]]]([[(())[[[][]]()[()((((([])())[]()(([][]))[()][])())(())[[[[[]]([])]]()]()[][]([][])[(([(()([]()())(()[([](()[()]))])(())[[()([()([][(())[()]])[([])[][][(([()])(([((()))]))([()]()))[]]][]])[()]]])[]]))()[[]()]()()[[()[]]([])]])]([])]]()][()[[[(()[(())]())()]()[[]][[][]]]]][])]([])])][](())]())()]][(([][])(()[][])([][([(([([()])][])())[(([][][[]](()())()())[])]]([](()(()))([])[[[()()]]][][[](())]))](()[[[[][([]())(([]([][[]])))[][][(())[[]]()[[][][]((([])))([[]()])][[]][[(([]([()[()()[]]])[([[]]())](()(()([[][]])[])[]))((([[(())([[]][][][([])]())[()()([[[[]]][()]])]()][]()][[]])[][]))())]]]]()][]()]][()]))())[]]())))[()(((([[]]))[(())[]]))]())()[[[[()]]([[[]]()](((([])[][([])])))())[[(())([])]([()[]][])()]][()]()([][(())[[]]])()()]][[[][()]]]][()]][[(())([]([()])[[]](([[]]())[]))[()]()()]]]])][([([])()][()[()]][][()[][]])][]]()()])[][]]]]((((()(([()]()()[()[()]]((()(()()((((()))))(()))()[])[()]([()([][[([][][][][])]])()]))([][[()[[()[][]]]]()()])[()()([])([[([()[([])]])([][[]()()]([]()((([]))()[(()(()[([()()]()(([]))[])]))][[]])([])[[]]())[])]]())])))(())))[()][])(()[]([()][]([[[]([[]([]())][()])]]())[])[])(()()([[][[[][[]]([()()][][()()[()[[]]]()]())](()[[][[()(([[(([()])())][]]))]]])]]()(()[()[[](())[(()[([([(())()])][][()()])])()[[[][()(((()[])))[](())]]][]]]()]()()))(()()[[([()]()(())[[]([])(())[[[]]]])]])([([(())[](())[([[]]()(()[]()))(())]]()(()()[][])([()]))]))()][]([])[]))(())(()[[()([])]])[][][[]]([]())()[]()[][[]]([([][])()][(((([[()]][[]]))[][(()())]))][]([](([()((()[][()])([]([()([])[[()]][][()]]([[]])))())[]]())))))[[([[[[]][[[](()([[]][]))]]][([])][]])[]](())]](((()[[]]([[([]([]()[](())))]])))))][[[](([([[][][()][]][[][]()](([]([][]([]))[[]])[])[]())[][(())([[]])[]]]())[(())[(())]]([(()([][][]()()[[]]))][[(([]))]]))[]([]([()][][((([()](())[])[[]](([[]])[])[][])(([[[]][()]([[]][([[]])][]()[()])])()([(()([()[(([]))]][](([][])()))([()[(()[[][()()[[[([])][[([(())[]]())[[][[][[][()()]]]]]]][()[()]][([()()([([]((([])[])[])()[[[][[[(()()[][](())([][()[[]][]([((([([()[(((())))][()]])]())(())(()([])[([]())[[][()[]][([[[([((([]))[[]]())([([[[()]]])])])[[[()()]][]]([]()())[][()[[]][[[]][]](([])[])]()()(())]](([]))[]])[[](()[])()](([])[])][]]][([[]()[[()]()]]([[[][][]]])[((([])))][()](()([][]([[]()[()[([])[([[()[([])[][][]()]]()][][[]]())][]](())[](([[]])()[]([(())]))][[]]][[]]([]))([[()[()]()][()([[]()[(((()[(())]))(([][])))][][]][]())]])[])[[[(()(()(()[()[()]])()([[()[]]]()[(([[]]([[]]))[]()()((()[][[]](()[])))[[[][]]])[[]()[([])[(()[[]])][]]]][()()[](((())()))[[()][]]]()([])()()()[][])[](()(((())([][[]])[[[[]([][[(())[[[()[([[()]])([[][]()])]](()())()()[]()()[]([[[([(([(())([[(()([]))][[]]][[[[([])]]()](())]())[((([()])[]()[][[]])[][]())()]([[()()(([([][()][]([][((((([()[[[]][[][([()[[]]()][])([]([])(()())[(()[](([[]])([(()()[[]][[]](([]((())[([])()]))[()()]))([[()[[(((()[[[]]])()))]]]])]))())(([()[]]()()[([])()])[[]])()()])[()]][]]][()(()([(([]((((()[]()[][[](()[])[([])[[]]]][()][]))[()])[([[()[[]([(([][]))()()()])][](()[])[[]()[()()]]]]([[[][[][]][[][()][[[][][]()[]][()]()([[[[([[][]()])([])]]]()(())])][[]]]()]])())()()]([])[])([][[()]]())))([]())][[]()[]])[])]]([]))[][])[([]([([])])())[[[()]]]]()[][[]])))])[])][([])])())]]()([([[([(()(([])()[()]))([]()[][[]([[((([]((([[]()][])[[]]))))[])]][][(())((())())]()[][[]](([[]])(()()()[])[]))[[[[]]]]])([([[]()]()[[]](()))(([()])())[[([[()][]][[[[]]]([(())[(((()([()[([[[]][[()][[[([])([()()])][(([((()[]()()([]))(())([][[]()([][(()((([]())[])(())([[()][[]]](((([(()[[(()(()(()[[]][[[[()]]([[]])]][])()[]))[(((())))[]]]])[]])[[]])[])[[()[(())]]]([[]])[]()))[])[][][])])])[[]](([])[]))(((([[[](([[[([])[](())[[[]((()))]][[]]()]]]))]])[[[([])](())]()]()))[(()([][()])())])[(([][]([])))]([])([[]][][])]()))(()(()))[()[][]()()]]][][][[()]]([[[()]](())]()[]([]))][[[((()(([]))[[][[]()(((())([]())([][()][[]])[][[[[(())]][[]]][]][]))()]]))]]]][[]]]((()[][()])[[()([]())][[()]][[]]])())][]])())[][]))]][][([[][](())()]())])][()][()[]]()((()[[[]]]))[])]](()[])][[[]]][])[()[[]]][]()](()(()))[])][][()()]()]())[]][]))]()([]()(()))([([](([((())())[][][]]))[])])[](([]))()[[]([])[()()()]]))][[]()([])]())()]([()[()]])]][[]([()])]((())[[](([()()([][])[][()]])())]([([()([[[[]([()])]()[]]([][])])]())])())(([(())([[[()]]])()()]())([[][[[((()()))[]()][[]][[()]]]()()][]](([([][()()]()()()[()()])]([()][][])(()[()[[[()[]()]]][(())]()])()))[][][()]))[])([[[]][]]([((()[][(([[]][])())]()))](()[()]([])[])))[[(()[[()][(())()]()](()([][][][])))[]()][]]]]][][[]][()]]()()()[[[[]]([[()]])][[[()]]()]])[[]]][[](()([[()(([[[[[[()]]]][[]]][[]][][][]])[])[]([()[[][[]]]][[]]()(()())[[]]()([[]]()[]()[()][][[(())[()(()[((()[([[][()([])][()]])()])([[]([[][(()([[]([])[]((()[](()()((())))))][]))[()[]][(()[][[]])][]]()[]][])[]])())])(())][[[([])]][][][]((()[[[[()[([[[((([]))[]()([[]]([]))[][(())]()([(())]))]]((()[])([]))]())][]]]]]([][][([[[]]()[](([()]()[[[[]()]([]())]][(([[[]()][]][([[(())](((())))])]))[[[]](([])())()[][()]]()][()])()[([]()[[[[[(())()()[((()([(())]([][][][([][[]([])[]](())[])()])[]([()[[[[][[[]][]([[[[(([]([[]()((()))]([([][])()][][]()))))][]]()]][]((([()[]])([[]([]([][()[[]([]([[[]]][])[()()[]()(())])[]][]((()((()))))])(([([()()](())[])[([[][[][()][]]]([]()))]])([]))[[]]())]([[()]])[[[()()]([])][][][]](())())(([()[]()[[([()][[[]]][])[()[[]]]]][]][][()()[][]]))[]))[[[()([((([])))])][[][()]]]])]]]][()[[]]][[]][[]]]()()))))()][[()[]([][]()[])[([([])][]())]](())(())]]]([]()([()[[]][[]((()[()[[()][[]([[[()]]([()](((([])))[(()[[]])[][][[]]])[])([]())[](([[()([][](([]()[])()([[]]))[([])[[][]]])][(((()))(()()()))](([])([][[(()[][]([[][][]][][])(([[[()]]])(())))[([([][[]][])()()()])([]([[]((()[])[]())]([[()((([])[(()[(([]))[][[([]([][()]))[[]]()][[[()[[]](()(()())([][[]([[]([][])([])][][((()[])[[](([[()()]])[]())])[((()[[][([])((()([[]]))())[[[[[[]]][(([(())][])[[][()([([[()]])]((()([][[]][])(()([][]))([[]]))[()()()(([][[(()[])[]([]()()[])]])(([])()()[]([][[[()[]][]]][]))())](()([]())[(())])[]))[()()]([])[[(()[([(()()[])]((((()()()[()[]][])))))[][]][](([])[]((()()([])[()]()([])[]([[(())]])[()]()[]([])))))[()]]][]][]])]][]()][[[][[]]]]][([])(())()]]]))]])([]())()]()[([]()[][]())()()()]()(()[[]]([]()(())[])[[][]]))[[[]([[]](([][()]([]()[()[[][][[][]()[()]]][()[]]()[()][][(()[](()[()(())][()]))]])[[]]))[])()]])]][(()()[[]()(([]))]((([[]()](([]()[[]]()())[(()([]([])[()][]))])(([[]])[]()())(()[[[]]()](([[(([[[][][[]][[]]()][()[[]]([]()[])[][[]]][][[[[]][][()[]]][]]]()()()))([]()[[]])[()](())[]([][][]())]])())[])))()))][[][]]()()][]()]]()()(())((()())()[]))[[[]]()]([[]][][(()()[((()))])])[][[[]]]][][([]())[][[[]]]()]()()))]][]())))]]](()[])[])[][][([])])]()([]))[[((([][][((([])[](()[[]][]))((())[]))]))[](()(()[][]())[()][]))]])([][])])][]]()])[])()][[[()][][[[]][][()[](([]))()]]()()[]][][[][[]]]([[]()[[([[[([[[[[()(())([(())()[][]])]]([]())][()((())[([][[()([()()(([[]])[([][]([()([])](([()])[][()][[]][()()]()([])(((([]))[[[][()]]][])()()))))][]())])[]]][()])(())]())][([()[][([][])([][([[]])(([[([(())])[]]][[[[[[](([])((()[()([]([[()]()[]]([[[(()([[]()]))()][]]][[()]][[]][]()(([([([[()]])])]))((([[()[()]][()][]([()[[][]]([])][])](([[()[]][()]()]())[]())))[()(((([][()][][]))))])))[(())[[[]]]])]))((()[()([[]])])))]]][([()])(()())]]]))])[[([([](([()[[[[][]][]]([][])]([][][]()())][][()])[][]))][]([[][[]]])()[[()]([])])(([][[([])]([][()][()((()([()]))()())[[][()][[()]([])]([((())([[[[][](([[[[[([])][()]][]]]()][][[[[]([[[][][][[([])]][[](([]))]]([[[[(((((()))[]([[([([]([]))]()(()())())[(())[[()][[]]]]][()][()()]]())[])))[]([](()()[]))]]]][([])])]())][][[()][([()[]][(()(([])())([[]])())]()([()][]))[(([[][[]([()()])]]))]]([[[]]()()[()][[[]][]]])[[()()](())]]]])[(()[])])]()]][]))]())([][][[][]])][]])([][]([][[][][]]()))])[[][]][[]()()])()[]]][[[[]]][[]]](([(([[](([[]([[][[(())([[]((([()])([]())))[()([([([[[[[]([])()[][]](()[[[[]]]]())]]](([])[((()[](())))][[]]())[((([][(()[[([()()](([()][[()][][([(())])[][]]][(())][]()))[])[]](())(())][([]()[[[[][][]](())][()(())]])()]())])[((()))[([])]][[([()][])([()])()][](())][])())([([()]([((([]([([([])])][])))())(()[[]][]([]()()[[((()()))[]]][[(())]](([()(([[[[]()()]]]()[()([[][]])]))])([()]()[]))[])[[[]()]]())(())[([])[[[[[]]()]()[][(([])(()((([]()([]())[[]][][]()[](([[[()]]()[]]))[]()))((()())()[])(()[()])())))[([([(())[[[]][][]]()][][[([])()][([])()()[[(()())]][][[()(()[[]]([()[]]([][[()]][])[]))()[][]]](()[()])]])()[[]][][][(((()([][]))((()[][[](()[]([]([[()[]]][()[]()([(()[])](()[[[][[]()([[([])]][])()[]][[]()]([][])][]()](())))])[()]))][]()[[]()()]((()[][]()[()])))(()[[[()[()(())[[][()]]][][]]][[][[()][]]][((()))[()][]]()[]])()()[[()][(())((([()])(())))](())][]()()))(()([])[[]]()[][]))[()((()[[][()()][(()[])]]()[[[[[][([[[(()[([[]]([[[]][[]]])[[]](([])))()])]]()()[()]([[][][()]][])]([[]()(([])())]))[][()[][]]]]]](([()(([()[]([()([])()])[][(([[()([[[]]])()]()[]](()(()[[][([[(()()(([])))](()[[([()][](([]()())[()](([][[[]]])))[])()(()[[]](([])[([[]()()()[[[][[]()]()]([]())]]()()[][()()])[[]]])[[[[(([([[](((()[[[[]([])()](())]])[([[([[[()]]])[[[]]][][]]])[][[]](((([[]]([][()][(([][]))])))()()(([[()()]](())))))(()[])(((()()[])()))][[][[[]]][[[([([][(()[[]])[()[()]][()[]][[[][][]]]]())[[[()]()]()]((()[][[]][][[[[]]]([])]))()[[[()][[]]]][[][]]((()[][([()(()[((([[()]()])[()[]][]()(()([]()()[[()()(()([][][])()([()][[]([]())]())[])][]][[][]((()(()[[()([][])[[()][][]()][()[]]([])[[][]]()(()[]())[]]]())))][[]]))())([]))])()[()]][[](((())))][](([]([(((([[[][()[]]]][][](([]()[]))())))()())[]])[])[]()(()())))()[[[[]][]()()[]()[][]][]][]]))])()][][()[[][[]][]]][]]]]([][]([([])])[(([](()())()[]()()))([][[]])]()[](([]))[[][][][(())[(())[]]()]][[()[()()]][([])]][][[()]][][()()[]])[]))](()))()])(()()))]()()(()[])]]])]][()])])[[[[]]]][(())]([]())()][][(())]](()([][[]()](([][])())[[]()][[[[][[[]([])]([])()]][][]]][][])[])[[()]][]())(()([[]]()([[[]][([][])]])[[[]][[()[[(()[([[]](()[(())][]))])[(()()(()()[]))]]]]]])[])))([[[()(([[]]))[][]]]()()([(()())][])[()([])[[[]()[]()[]]]]]()[((()([(([(([][()[[[][]()[()][[()[][]]]]([])]((()([])())())([])]))][()([()]())]))[][[[]]]])([((())[])][][]([](([()()])[(([[][[[()[][[][[()]]()[[]][]()[()[()]()]()(())(()[[]])[[[](())([[((([[[]]][()][[][[][]]](())()[()])))]])]]]]]]]))])))))]))]]))]))]))]]])]]]]]]))])])])])]])]]])]))]))]))]])]]])]]])]]])]]))]]])])])])))]]]))]]))]]])))))]]]))])))])]))]]]]])])])]]]])]]))])))]))]])]]))])]])])]])]]))]]]])])]))))]]]]])))]])])])]]))))))]))])])))])])])])]]))))))]])))])])]])]]])]])]]])]))]]])])])))]]))]])]]]])]]])]) [(([)]])[[((()((([][((]][)[)]][)][]()](]))][)[[]([][((](][()])][[)[][[[[]((])[[]]([()](]]()]([]()][)()[[)])([[]])[)(]()[[]((())[[[()([])[[())(([[(]]][)))()(()[(]))(((())][()()([)])(])(()]()([)((([()(()][)(][)([[))]([]()[(][()()[(](()[[][][[)])(](]]])([))[](]))[[][)()([(]]])]((](([()][])]())(()])][](](((][)](]((]][([[[[])][[(((([([))][[(])[][]([]])][[[)()))[]]][(()([([)()]))])(([[]((]((])[][()(((])]][[[)]])())([)[[[])[(][([(])([]][(])))[)]][[]])(())[]([)([[([([]]](]([]][)(((][[)()[])))])[[)[(]][(()]))]((]([]))[)([()]])((((([)](]()([)](]]))()([]]][[[)(]([]]((][[[[()[])(][[])()[()]]]([][(()](()])[][([[]()([])((]]]][])])][)()][((((])))(]([)(()(])[(](())]]][[[(](][](])[]((][(]]([(]])][[)(]]])(()()))()[][][()[]]()]][)(([))][()(][[(][([(][[(])[][]])()(([]((](]))(()(()([]])[[]()([]])]](])())[)(((])]][(()))])[))((()(]]([[]][])[[()[])](]])[))([)]))]][)]](])[()[)([]]][)([])](]([)]))[()]][((()(([[][)(()(])((()(()(((][(])][]]][([[][((([(][[][)]]](])]](((([)[((()())][())))[[]()[]([((([[[][[(())))]][)[())])[([]])])[)]][[)[[([)))(((]([[())]]]))()[(]([())))[(][(]]))[)]])(])(([([)]]([(][[(([[[)[[(]))(]]()[()](()(()[()[]]][([[)]])[)]([][][([]))))[]))][))((]]][[)][](([)((][([][]))[[][(()]])[][[[(()[))(][]((])[)[]((()])(]([])[[])]]((([[[((([)]((([)]]([)([)][[)))()])[(([[]([]]([]([)[](()[([[))[))][)[)()([(])(])()))]([))[)([(])((](](][]]()])][[][([[()[[)][[]([[[[)([([[)]]]]][[))]](])])))][[[[[[))])(()())))()([](]]][](][[]()]([)[[(])[(())]]))[()[((]][))()[))())[)[)])((]][))[[[)[(]()[][[(]((]])[]]][]][])(([]()[)]()([[((])][[[[[[]]])([([(][()[()[[)[([(](()[[][)[[[[[])][[))()[]](])][](][]((]()(]()(])(]]([([[][[]()[)[)])[))[([([[)()][(]]))([)((([[)](([(((]((())[)]][(([)([([](])[])[([)((]][(](()[[)([[]([))[[[][]])][]((([[[[([)]](([[[)[[([(])])]()][]][()[[][)(]]([]()))))(]][](][)[)][(]([)(([(]))(][][([[)][[(]]][][)[([[(([])[]))])()[()](]))())))()(]])[[)([()[)([)))[][([][])([)](][]])]([)])(())][)]))])][)()[])(][](((([([)[][)[[()]((][([[][]]]]]]][([([[)][[]([)[]([()([[()]))[]([)[)[[))()()[(([[]()][][[[[)()[])[][][[[)[[()])())]]]][(][[(](][[](]((((([((([][]]([]((][)()]]()(](])[))](]))[(])))))))[)[(][([][]]])))(([()](]][)]()[[))[([])])()(][(([[[(((())([][)]([)][[[(][)[([[)]][]))))[]])([()(]])[())[]][)[]]])]()([)[(]()]((](()()((())()[(]((([)](])(][([)(][])[[(([[][])[[(][()())[][]][[](])()]))[[([)))](())))))[(]][)[(]))([]]])()[(][]](]](](]][))])(]]]]()[)[[)])[[]]](())[(]))]]]]]())([)](])[(((]]()[[)(][[[]([()]([]()][([(([(]][([)[((]()([]](((]](][(()[[[)))]]]((][)))[])[)))[)[][[(]]](])[([]([][]])]]]]((][)())[(]][[([)[())[[[())])[])[[(((]][](())])))(()())())[))(])[)(][]]])([][((]]())][(])][)([))(]])()(((())[[((([[()[]])[]]])][[[)[(][)[]((()]((][[(](([[([)[[[[)]((](][[(])(])((((]](())([)))]]()](((([]([]]])((]()(]]]()(](][][]])[(([)](](([]][())())()(]][()[)((](](()[]]]()[[[))(](][)(()[[)[()))]]([(]()[[()()())[()[[]])([))][)[)[[])]()]())([[])))))]]))(()())[])))]])]][])([]))([(()([)](([][]]([(([))[))((()([)[]]([)[[][]]][[([()])))([)[)[[]([]]][(([)])[[[(])[()][))((([()[][)([[(((()[(()(]]()([[)()[)(]]][[[))[)((]))(]]([)])(])[[])(](([(()))[[[])[])[[()]]([)()])([[[(]](][[([)[]))[[)[[)[]()(([)([)))[)[])])[[(](](])[(((]][([)[]]]])())[((][[(]]]]()[[[()))[][]][))]]])[]()]([[((]][][(][]]]()[)]](]][)[]))((][[[)([)()(([]]([()(][[[][]][)[))([([[[([)[()[]())]()][)[(](])([[)[])][](][[))[))([([()(()][()]([[[]]](((][(])[())(](()])()])[)(][(][(][]()(]]]][()]())[]([][(())][[([][(][](()](]([([)[(()((()])[))[])][[()[([(([)(((]))[])[])](([]))()]]](()()][]))((]()[)[[()[]])]]((]))][)]][[())][]]][)))[([))](()][](()[[((]][]([[()])[]]])[]][[[[[[((()[][[][)[(][[][[[)((([(]])[)([]][[(]([[)))((]](]))[[[[]]((([(]))(]]])][[)][([)[[]]()()()[[][]]())]()((](]]]]][)]](([)[)][[][][[]][]]]][()[(((([)(([((([([[([])])]](][()(([[][)([](])]([])([)](]))(]][[][)[)))))[((])((([[[((]((]([([]]))[[)(())])])(])()])[)]()((()([)(()]())]((]([(([])[[)])(][([)][)[)]](]())(][()([())]]([(][()[()(])]))([[]])()[)[]()([(][])])()[()[[[([(((]()((([)[)((((()(])([]][])](([(])()[())((()[))))][]][))()]))[()([)(]])[][([)]])[))[(]]][[[()]()[(]()((([)[]([](([)()()[[))())((()]][)](]())[(]]))[)[([]((([]])[[()([))[(((()[]][()[[](([()]][()[[()()(]]][]])]](((][()[])([((((()]][)()](]))[[]])([)]])]]())[([[([]))]](][(([)([[[[()(]][[]]](()(][(()][)[([[])[(][[)()])]([[((])[(]]]]])((([((]([)[[)()[][(()](([()])][]([[))[(()[]()[())(][])[(][[)[[)[[))[)]](()()[)[(([][[][][((([()((][[](([(()([)])(](]())()()])(])((()(]((]))[[(()[((]]()[[])]([([)(](][]]()(()([)(]()(]][[)[[]]((]]][]]([]]]()]([]]]][]]][[[)][([[([)]]()]([[[()[)(])[][)][(][])([[[()[([[[)]][))[)[[][)([[)))()(]])(([[(][)([[[[]][)[)[[][[]]((((([))]]][([]]))[[])]))([]])([](][)]))[(]][[(])[][)[()[[([))[]))((])[()]]]([()(]](())])([)([])](])([)]][()][(]((]()[[][))))(]]()[][()([[[()][)[)((]((([]([()(])))]()()[]][)[)[(][])))([[)())[(((](()[)][())()))([[)]]]()[]]][[[][((]])]])]](])]]()[]]))[)))])(][)[]))[]([)][[))([))())(])[)](()[][([)(][[]([]))[[)[)(()))(([(])][]][]([)((])])()[))[)]]([][([[(()()[[)[]]()[])([]([[](][[[((](][][([)(((((()[][[][)[()()()[[[([[)])][(][[[(])]](((]][[)][(([][)(][[)]))()[([[((]))())()(]](][)([]]]][]([)[[())](]][[)))[[()](([))[)())))(]((([](][(]])()[)[)])(])[[]))(([([[[][(((([)((()(]](([]][])][[()([[)(]()[([))][()](][)[)(([][()(()()][()([])))([]((([([)]][)]]])))(())[])][)(((([]][[])[[(][(][)][([()[[(](])]]((][[[[](([([)))()[(]])][([]](][(][)])(](()(([]()][]))([((])][][][))()]([[)[(]))]))[[)[(])([))((([][(([][]]([([(]](([))]][])((((())[(]))(([(]))(((][()(())])][(])]]()][)(((])[(((]]()](()]))](]([]][][(]))((([[)[[])][)))][([][)[)[)()([))[[]([[])[](]]]([)][))(][[])(](()]))]](]([[)]()(()[(()]][[([[)[)[[[(]()[])[][)[))[[([([]]))[[]][(]))[[)[([[)(][]](([)])[(]]][](]][[[)(]](([(]][[][[)]([[]]])[)]))[[)))(([[()([]()]])[)[[))][]][)[()[[)])[)()(]([(([)(([[]]][((]]]]()[]]])][]([([]([][[](]]([](()(([[([(([)[[(([)][][(([())])(((((([]((]]]][][](()]]][[((([]([(])]())]]()])]][]()][)[])](()[)[)]))))]][([([[[(]](])])((][((]()(()(())][([[(]))))[)])[[()[([)]])[[](])[[[[(([()(([))]][)[(([[])][[([]((]]]]]))[(()[]))[((]()[)[[))](])((([[](()[]([][)((([())]]][]()])[()))]](((]]]([[[([])[[[]))])][(()([]])]][)][)[[][][])][[[)(()])]((([]()()](([([[[([])[([][]][(([]](]]()[[[([([])[[[)[()[]()[)][)[[)()([()]([)])]][(([[([][](]([][[](][]]])[[)[]))]([][[]]])[[()))[))](([))()[[][[]]]())(]](][)[]])([(]]]](](])(([[()()([(](((])([(([]([[())([)))])])]])]]()]])()[[((()([[(([[(()[])([()))](]))]([[[)]]([()][]]](][][)[[](]]]][()](](([[()((([([])[(((]])()[]))][[]([])((([(])[]][]]]](]([[]]]]]()())]()[[]][]((][([))[)[(([[)[]()[[]]([)))))(((]])])[(][)[])[[((])([[(](()]][()(([)()([][)([[)[[[(]([)[]]))]](()(()[]]([[]()]][][((])[()]])[][)]]()[][[[()[((((])(])[(]]()[)]]((([(][]]((][]))))))))[(((]]))))([[]])()[]]]])))]][((([((]])([)([))[[))](][[()]]])])))])(]()][[)(()))))]]][]][[[][)[[[)](])[])]([))(()]()())]([)[))))()(([[(](](]))[[[)](][][[)[](]])])])]])](][]([))([]()[(](][(])[)))(]][]()))]]][][()(([[]()[)])(]((()][)([)]([)[[]])][[([)))]]][)))](([)[])(]])[)[()][([()][]]](][]][])())[)[([)[)[(([(([[)())[]][[)])[(()]][(([[()](](][(]([]([)(])()(](](][()[([]()][)][())]((()(((][()([]([[[]()](])))[[)]][([[]])())[([[[[][[(]]](][)](([)))])))]((][]][[[([[[)[())]]])[[[(]]([]])[))]([()([]](([(]()([([)[]]))[[()](([)][())(([)][)[)]))]))[)[(()][([][(([][]])](][(((((([]]))(()]([][())[)(()[[))))[])]()[]()][[]([[[)[[]])[][]([[]][()])(([(())](([))]()()]()[](])))]](]]))()[](([][(](()(](](()[[)(]]([[()[))][]))]([[(]()]((]])()]]]](][)[]()]]([])[])[([)[()[)]([[(]])]()][([]([(]]))[)[)[)))))[([[])[(([[]])(()[]([]][][]([][]()]()]][[([[](]][]()]((()[[)]]([][)))([(])[)[[))]())((][))]))]][()(((((()[]([])[[)](()[][(()[](())]([]())((([([])(]()(([]))([)))[]]))][[])))[]()[(])[]]([)]])]])))][[]]()[)]([()]][[([[)()(](][)))]]))(([][()()[)[())())(()(]])]()((([[[)((][)[]()(([][[[[])[()[)([)))[][(]]([[[)[)))[[]]))))])((([)))()]]([]]()[]([])()])))])[()[[](][))][([()([])][]()](()[[[](])])()[[([]([((()[([)])(()[][[))[)())[(](][[[([(]]]]())[)))()[][)([](]([[((]()])[)[][[)[)([[[[))[[)[[))](](]()](]]))(()[))[[]])[][[[(()((])([]))][([]]))[])([)][[)[))[(])](]][))]([)]])[)))][[]][())]([()((])[))[](])]()[[)]])()]]([]()][()(]()[[([[()(((])[)]()]])[)(([([)[)](])][(([)]())()[(([(])[)](]()][]))()](([[()[)](])()[((([[[))[)[))]])()[]((([[(((][)[]][))(]]([)((((([[[][[]]]([([)[)])[(]]()(]()()([(()(](])][[)([()())]))(][(([)((][]()()(][]([()())[](]))]((]((([)]])](]]][(]]])])])]))())))])[)](]]][[])[)]]([(()))]())])(]))(][[]())(])]])]])])(](([([)[]]())))]()]])[](]]([]]]())[])]]]((])[[)((()(]]()](])[((]]][)](([)([[[][]))]]][[(]([()]]]]]])(])]())(]([[])(])][]()[()([])[[(([[]))[(]][])][[)[)[([(])]]([])]())[(]([(()))[))]][([)[(])])(([(][()[(]([[)[[((]([[())()[(])])[]]])[(]])[[]][)))(]])((]][([[[))[]((])[][(([)(](][[]]([[([[][])]])]][((([[)))((](]]((((][](([)][([)[())])))(](([]][[](])])((]()][)[((][)))[)(()]]([[]()([[([()(()](()[()([[([[([(](]](]))([]][))]()((])([()[)[]])[[[[](()()[()((](]][((])][]())])]][(([)[(()]))(]](]])]])])])]([(]([[[)(][]][()[))[]([)]()([][((]]]][)[][[[[(]))(][(])(]))]](((])(](])[([))(()](])))(][()(]))[([]()(()(])][)([[][]]])][[]]]][]])(]))[)(([))[(([([(]]((]))))[()))[[]])][()())]()[)[)[)]()]([)[)](())])]((([))]]][][()][[)]])]]))])((((][[)]][)][)])[([)][[))][)][[))(][)([[]]))][[)])[)))[[[[[[([(])(]][]([()][)[[)[)[][]]][(]([[[[()))][)]()[[[]))])()]](])[)[(]]][[((])()[[]()[(()[([()[]]([))[(([]([)])([)])(([((([]][(]))[([[)][(([[]][))[])](([((]]))([(([[)(()[)()]](]])]))[)]][()[[]][)([[]]()]]]]])]))))]()(())))[])[)[)(()(][(][([][(()[(])[[)[[](]()])[[][)))[[([)])))]]()][(((]](]](]))[[]]]][[)((([]((([)]([]]][([)))[()([][[))(][(][)((](([)]]])[]()()))[])))]([)()[)()(())[])([[[][([)[))(][[(]()(]]([)()(]][[([[(()))))(][[([()[]][[)(()][())))[()]((]]][(([])](](((](([(([(())[)])])())[[[(]]()[)(]][[]((()([)())[]()[](][]([([)][]](([][[((][()()(][((((())[(]([)[]])[[([[(([[])(]([)(]([](]()))[)]]][][[(([[))[)][(([)[)[()[[[(](([()()))([])(]])]()]()((([)])()([](())[)[)(]][]()[]())[([)]]))]])][(([]]))))[[[[][](][)(][(][[([]]([)([((]))][))])[())](]]])]][][[[))][[[)())([)((](]])]]])()[[[])[)]]]))[]])][]](()[()[)[][)()][)()[[)[[][())(]()[[(()[)[[)[][]](((]([)(])[[([[(()[))[[]][]](([[](]](([[(]((][[)])[[())()())][[()])([)([)[]][)]))()))[)([(()()()(]])[()(]))[[)[][([)]))[([]][)])((](]][)](])))[)[[)([[])])[[[)[[[][)()[]()]([[()(]](())][))[[][[(])])]]]]]]]]([)))))[][(())([())[][[([[()([)([()))][[()(]])[()([[]])[]((([((]][[]]]]))))]]](([]))]))]([([))(((((]((])])[)[((([](][[[((]][][([[((((])[[(]]()]][()[(][[())([[(][)][[([((](()]]))))[])(][([[(](([)])((]([(])))]]]][[()([])][)[[)](([((][([])[)[)))[]))))([(]([())][)([[[)(([])[)[])[()[](]]([)[](])]))()))())(](]]([)])()[]([[[[([[(()[([([])]))(()([[][[[([(([([)]])[])()(]))](])[]][])])][(]([[]))][(](]])()[)([))](]]](](((())])([[(()()[)())]]][)](])(])][()(()([[])))([[(]([)(][[())]][[)][[())](][[([]][([)(((((]((()]([[)]])])[[([])[)]][[)[(]([][[[[]]()[[([(])[]]())]]]]([[)])[]]))](](()[[))]([]][[(]]])(()])](([[([)([)[)))[()]((][[[)(([[](]([)))))])][[(]][(]][]]))[)]]()]()(]](()[(][[))()([[)[])[()[([](][[))()]))))[)([)[([(([([))][]][])))(][[))[][)([])(](](]]]][(())((((()(])(]](]))(])[)(])(])[()]])]]]))[)([]]([)))][([[[(][[[)[((])](([[[)[][[)[](()[[][))[)[[)])][][[)[())))([][[)(]]]()()()[]](())[()](((([([)))([[[()]]([])[()]))[)(]((()[)[()]([)))[]][[[][)[[]][]][[](])[))([[[(([]])[(()[)([])))()[)]]))]]))[)]])][)((][)])))(][[)[[)][]]))[])[([)[(](()()[)((())(([](()(]([))][()])((]([]()(([[(()))(((()((][)(((][][(]](])]]([]]))([[)))[]))[((([])([]([()[)[](((]])](]][)[)[[])[)]][[(()(]()][)[]]()]]]][][)))()[[))([[)]([()[)))]]))[)[][[)(()])[(])])[]))[[(][]]((])[)][)]))[[)[][)[)]]([[)[))))]([(()])[(](()[([([][(])][]])))]]])](]]((]([()[))[(])(]((][][)][][[[)](](()[)(](](]]][]](][]]][()(((][]](()()))([)]])][)(]]([))]](][))([)[]))][)]((][()[[]][(])])(([)[)])])())[)))]][)))[[(](][)]((([))[)[(]))]()]][())[()(((]))])))[)(([[))]]]((])[]]]][]][[[]][][])])][)()]]([)([)[]]](])])(][])((()((][)(([))))([[)([(](])]])))((([[((((())](]][)((][]())(](()[[)]]((][()]))()(][][])[[)[)][[[][)][]]][(([)()[[([[(]([]]]([[()(]])()[)((][])))](()])[)[(]]])[])]([)()([))(]]])([[]()][](((][)))[(])((][[[[[)[([()([((()[)([))])(])(((((]((([((]()(][[[)(][(])[))]()[]([[]))[[([[][)()(]]([())))[(])[][([[](])][])))][])[][]([([)))[)()[])((])]())]][([(](](]()[])[)[((]([(][[)([))[]()][])[]][(()[))([((()(]))))[)[])[((][[[[)[)][]]()[(()]()[))]](](([][()([[[([[[[[(([[[]]]([[]]]]([[[[((](])))()()]]]))[((()(]]))([)(](](][((()](])()())])[()[(((]]([()(()(((]]([)])())][)])](]](])))]][([]][(][()])(][]]]())[(]][)([(([)[]))])]][()[(([)[])))))(([])[([)[)[)[)]][()[((])[(](]))()[]](](][(](])])[()[)()))])[[)]](])])]]([]([([](](][])))][]]())[(][])])(]][[][[[()[[][])[][)[(])]([((]]((([)()(]]][[]([)(([)[][)]]][())[]]]([]](([)([][)(])))[[[[[([][)]([])])]()][]()(](][()[([[])))](()][[(([(]))[]])())]]))[([[([()])[][]]][[)]]](]]([)(])]]))()[[((]]][[))])]))[[))[)((]]])(][)[)[]]][][]])([((](]))]([[]][)])]]([[]()])(]())[)([(][[]][[)[)])(()][](((([(]))([[[[(((][))[())()(()[[[)([[(())[(][[([)[([][[]()](([]()[[([]([])](](())[])]([[]]][[)[](]]]](]]))[(][][([[]]))])((([]))(])(]([])[]][(]((])(((())([]][)](]])[)(][](([[])[)]])[((])])[[)(][][))))]]][([)[]]([]([([]))[)][([]((()(]([])][))((])([)[[]]]])([]([([)])[[((]])[)]()(]][[())[)(((([))([)[([]([](]()())[](()])])](])[))(]))[]([]][[)[([(()][)[][([()()([]())[)((][([(]]()())[)))[))[[])(]))]))[)]](]]])[()])]()]([[])[]([]]((]])[][]]([[()))([)[)[[[([](())()()()][(][][)[])())])[)[][]))(((()[[][]([)](()((])[)][]([[])[]]][[[([[]])())()[]]][])[]]))][())(]][[[[]))([]((])(([)))))][)(][]][)]][]([][)[]][())[[[[)())[[(()()]((([](](((]][)[)]]][((]]))([]]][)(])[)([)[([[(())[()()[[)([]]])[]])]([([]][])[)((]]([][[([)])[((])][]))[])[(())[[]]][[]]([[[(([]]]())(])))(][(]](()]([([[)[)([)[]])[][))])[([[)[((]))((][[[)((()[[[[)[)[[)[[[())][]])]][[))[[][[[[[())]()())]))(([(](][](([(][(]))))]](])[)))([[][([]([]))))])])](([(()([]][[[))][[()[)[(]](](][[[))[[)]][)][((((()]))())])]][]])][[([(((])]]())(]))()[()[][)])])(])])][(](])()[)[(][](][()(]]]))([]([()]())(((]]([]])]((([]([][(][)]([])([[)(()[((][))]]())](](([][[][]((][(]([())])())[]]([)[]))(])[]][[[[))][)][)[]]]))]()(])((][)](]]((][(][[))]))][)())))[([[)](([)][[)])[)()))(](]]](((([[)][[][])]()[()])[[[[[)(]()[)[]((])]]([[(]))(][)([)()[))[)[[([)[(]([)](]]])][)))[][[)[[[))]((([]()[[[)[())[[[[([)))]))[)[[[([))(()](]][[[[)[()[(([()[]([](])))]([((][[([[[[][)]))(]]([[[)[([[[()[])))([(((([))[((]])(])[])[)(((](]((](])]((((([(()([](]())[))]([[](][[(][[)[()([](](]()][[(([[])])()[])()]])]](]]()[]([])(])[[][)]]](]]([[[[)((()]))(])]][([[(()]][))])])])()[)(()([))[[))])]([](([(](](][[))]))()]))](])[(]])()](([)]]][)[)([][)[])()()[)]]][([[[[[[]([(()])(([[(][](][[[[)])(][)([[][)[)]][[([][][]))((]])[])][][])[[)][]])[)[]))](((([)]]([(]))[]()()]](((([[]]](]]([()(]][)][[)][([[[[))][)[()[[()([)(()[[))]])([)()([[])[(())[]([)][])(](][[]]](()([]]][])][[)(((]]])([(())][[]()(](](][)][()]][[)()]][([()([)]][)[][([([]]][([[(()()][)[[)](])[]]()([)]([([])][)(]))()][())])[([])])[])[)([[][([)))])[()(((][[()[([[[[[)])(]([)])))([[])()]([[[)()]()[]]([[]())([[([]]][(](](((([])()[))[])[[[]](]]][[]))[)(((][((((])[[[([[[)](]]())))[()()(]([](])((]]((]]([)[())][[(()][([[)[]([([(])]][([])((]))(][)[()))(][[)())()[[[]()[)(][)[])[[()]])()]])]()(([)]([])[]((()(]])]]]([([][([])[]][([]])(][([([)([())((][])]([[[)()])](](][[()([[])(()])]()(([)]))))((]()[]]((]]([[))(((]())[[]]([((]((]][](][()))[(][])[))]([))]]()[))](])[[)](]]][)])][()[))))(][([)[](])])]([[[[))[(]])])(](((]]()[[])][((((][]()))())]([][)(([]))))([)[)())([([[)[(([[(([])[))]][)[()][[(][][]((]([))])[(]][)](][([)])((][[[))([))()[]](][][)]))[)][())[([()[)]((][][()]))][[][)[)]([()(]][()[[[[()[(]]](][]](](()()[)][]()()])([[))(])()))[(()[)()[]([])]()(]())[)]))[])[)[]][[](][(]))]]()[]])(])][]))][))[)))]])[]]((()[)[]][][([[]([][][)()][[(([[(()[[[)(])])([[]))())])]((][)(]([]]][)]]])([[][()[[][)[][])[[((][]()[()]()])([)]])[][(]])[[)()[[([](([)[()()())([(](](]((((]]]])()))][])]))[[][([[((][()(][([[)]]))(([([][))])[)[)(()(((([)[(((()([)[])])()([((]])))]))])()[][([)(][])(])[()((]]([(]]))][])(])[)[((]][][)[(])[(])]()][)]))[((()[][[([([)((]()]))[)]][]]]]]([([()(])))]][(]][][(][)])))(([([]][[([())[][][[((])[(([([([([([))])[)((()(]][[])([)])]][]][]())](][[[))()]][]([[)(][][](()()([)()(][(((([))([[))](][]]][([[([)]]()[[)]((()]][)([())([]]))][[]][]())]()][([))]()([[)((]]((][()()((]()([(](((([))[(([)]][[(()([])][[()]]](]]]][[[]](()[[))[[](])]))][((]([[)(([))())[))[(](])[)(][)(]]][[][]]])(](])((][]]([)[[[)()(()])[[((](((]][)[]([()()[[](])[)()])[]()()([]](([[]([))((]]])([((]()])((][)[)]]][[))((([()]))))))]])][())][(][[[))]))]([][([)]([)))])((([]])[))[)[(](())][)([([])))(([]))[]))()[([()][]))])()](](][)[[))[(]])(]][)(]](([]]))(([)][(((][([]][)](([(]((]]]]][((())(()(()()([](](]]][)]()))([([(()[][[[(()][)]))[]](]))[([]]))[([)[(]])()[[[]])[)((]]([[(()((]]][(]]]])]([(((]][)))[]])[][)]()()[[)[(]][[])[[(][)))()))]]())[[[])())(]))()((([)])()[]((())))(([])][][(](])](]]))(])])())]))]())()][][()([([[))[][]][(]([[(([[]()([(](](])((](])[)[][)[)]))]]])[][][)[[)()][[[[[[([)][])])))]((][)[[[]]([][))])[[(]](([][](((]()(])()(([[)[)[](((()]])(()])[[)[][]]])][[)[)[(]))][[)][]][[][))))(](((][[[(([[()(]])[][)))[(()][[[[])[()[][))(])[]][[][][))(]](()()[](])[(]]])))(](()]](([)[]))](][)(([(((]]((]]])(]((((][(])()(()[]([)[]](((]])[[(]]()[))(())(])((()](](][[)))])])[](([(]))[(([][(]())(]((()[][((([([)[()[))[)](]]([)])])[]][(]))[[()((((])]]]((((([[])(([[])([()([((]((()((])[[)((][))]()((()](])([()[))[]]([)([)]((](([)[))(]](()(([)[))]()[)(((()]]))(])(]]]]]][)])[()[([([(]())])]]])])((([)]())([((](][()[()[)([))[]])((][]))(]](((]([((]])())()([]()(()]()][[([([([))]]])[[]([()[(([(]][)[[))](][]((]])([(][())[)))(][])](()((])[])[())([((]]][))[)(())[)))[(][]]))))]((()]])()([([[][[())))))((([[][]]()([([[[]][([([[][[)]()()]))[)())])][(][)[](]]]()]]]]([[]]]])[(()(](][))[)[]]()[]]]((()][))()][[()]))]))])[[([])[[[()))(])()[([[([(])(([)([()([[])((](([])(]([()][]]]((][[]((]](][)[])]([)])[][](])[[(([)]][][[(]()])()([[[())[))[[)])])()[(](]))])([]](()]((])([])[])](([))]](]]()(]][(([(([](([(()][[]]]][](]([(()[))[)([[[)(]](][)((]()([[(((])[)[(]))[)((())[)[)])]][]()[)[)[]]()[]()]][]])]]([][])][])][)](][)))][][[](()(([)(([))))[[))])]])((]](((])()[[]())]))](([]]])]((]]][)()])[[](()[[))[)))]()[[(]])[)())](]([[(]])[)]))[)[][][[][(])])]](()(([[)[(]([]()([()(())[[][()(([[)](])[[][])[])[[])[((][))][(]])[(]]))]][[)(]()(](](])()]][))())(](()[(]]][][)[)][))][[])]()([]))()[((]][])[)[][]()[])[[[(]([()[)(](((()]((]](][[[[([)]([[]((([])[[][[])]()]))[[]()()())[])][(])[]]]][(((([)]()[))[])[)()))])[()[]))[])]()][[)[[)][[)(([[(()[()]]()][(](((][()([(()[([])[()[](][])[(([)]][])[([]((][)(((([()([)]((]()[)()()[)]([][))()[[]])()])]][]((([))]][](()][([([))(])]((([[[[])[[(](((((]))))[(](][))))]))]]))(](](]][[[)((])[((]]]])](([([)()[(]][()[()]]][()]][)(()[](](](((]]])([(()(]])))[)](([))[][[(]()()()]([)[]))][][[[(([)])([))]](](]))]((][(]])[)()][]([)))]()][[]])[)[[(]()(())])])][]]]]])(]([]][]][[]][])[][)()][[][(([)))(()[((]][)(()])[[(()[][))[[)(]))[[[)))]])]([)))))))](()])))[[[))](((])][(]([(()[[[)[())[])[][])][]([)[)(](][)[]))[[)](((())()[[]))])[)))))])[)[)]](()(()[([()[[)[[[[))])[)[]()][[][[[)((]()])([)((())[(]][[))[)))[])])]))()()[)[[)])))]][)(([[[][]](])))[]))[(])]]]][)]))][]()(](][]]))([[[((()([])())[])[[[])[[[))[()[)[][[[)[))([][[[]]]][[]]()[)[((]])(](()][(]()](([)()([[)[[](())[()]][]))[)))))]]((((][])[)]([[]])(](([([(][]))])[(])([(([][()]((]))(]()((]([)()[)))]))]]][(()()](])]]([](]()))[[[([[]([())][[)](])](([](([(])])(())]]()[[[([))()](]()[]([])[)][)]()()[)([))][][))[]))[])(]()(()[[](]([[[[])])([))[]))([[[[[[()))))([)]((()()])(([]]]][)((]])])[(](]]]))])[](])((([[])([)())][][]])][[())[][[()[)())]]())[)[[[([)([][])[)](]])()]](])[)]()()](]()])([)(((((][([)][([))]((][]((((([[)))[[((()))))[)](()[)[][[][][[[)[)[))(])[])]])((][[[))]]][]])()[(][]](]]](]])[))([][((()]][)][][)])[[(())]([](]())[]]]][(((]][[[()()((][[]])[(][(])(([]]](()((((([(([](]])(][()))))[[[(([][)[(]([])()(([](](]])(][[[)([])])()]))))[([)][)()[(]][))])[)])((])())(([])[](]((]])[][[[(([]]()(([())(()]]](([]]]([(([[)]]())[[[(]]][(()(]](])([])))]]([)[(([[]]]([()[]]))[((])[))[](]]][]())])]]()(([[)])()[)[[[(]([]])]())()(][((])(]][)[]))])]([][][()[(]()[([[[])][[)([)[(((()[([](()(](]((](]]]((])]([]))[(([]([]()([(][])[)[)(]]([([([)))(])[[[([)(][))[[([[([)[][](]]]()[]()[()[(]([()))[)(])()][([))())[)[(](])[[[[(]](]([(([[)])][())][)()((()[]))[]]][(]][([([)(]()]))[[][()]()[])[)([]][([(([])(](])[))(((]())])(([)([)(([)(]([(])([][(])()[[[([)(]]([[][)())))(())[[)])](]][)[))])[)(])](())[([()[[((]))([](])((((([][]][[[)[[)([)]]][))]]))[])(]((([[(())()(([([][)][[[]())]](())))](((]([()([]](([[[[)])[)](][]([)]((]]])[)]])]][()[())][])])(](([(]][(()[())[(](])](((([][)][([[)]][(](][]))(]])]]([(([)()][)[[][)(([[()([[(()[([()))([[[)][(](])](])[()())()[][[]][)(()[(]])[]((]][))([([()[[()]][[([])([[])][[([])][))][)]][[([])[))))][([([][][)[()]))()[(]]])[[)(()))]([[([([)(][))[][()[)]])([][](]]]))[((]][]])[[)]((]][)[]][])]()])][[[]((()][(]][)[())(()]]()]()([()[]([([()[[][)[(][)])]][(](([[)])[]])((())])]])][()([([([[[]()))(]])([()))())())]])][[))])[[(]])[)[]]][(())](][[[()][[[))]])[[())())[())[)))())[))))])[[]]]][)]([]][)([)]])][)[[(([[))[(]()())[)([]]((]()[])()))][][][)))]([]][([[)]))((][)[[]])))([](](())([)](([(()]((](((][[[))(([())[[(()(][)))[[(()[]]))))][()(([()[]]()()()(][())(([([))))[]][((]][])[((]())][(][[(][([(])[)))(([([)]])]))](())[([)()(]]]]([[))][[]]((][([]])]]])][)()](][)[)((]([[(()]])[(]()(])(]))[(]]))[)[([)())]]([](])][]())(([[)))))[[]]())()(](][[](]]([[[](]()])]][(][](][)[]()([[)(][)](]))[[([[]]([()())][])(])]([(][()([]]]]([])[([][[()[())])((]([[(([)])(((])[]][][)]([[)[])]))[][[[]][][[[((][)]()[(]][[][)[]][()([]]][))][(])[[)[]([[[([)[[][)[[][)(([](]))[))[)()(]])(([])][[](]][)])]]]]](]](]][([[])[]))))](([[[))[([])([(([)([)]))]]][(]][)[(()(([)[((][))]()[[][[])]([)[(]((])))](]])]]()))]([()]]]]([[)([]])]])[)])([]))](((]]))))[]()[))[)]))]][()[]()[]][]()][[[)]]][][][[(][[(]([]([[[)([[])()))([))]]]](])(](([)[(()[))())])[))[]()))])([([]]]((((][)](()[)[(]]])[(()())]]))(([)([)][[))(]])]))()))))[)([([)[)][]]()])([())(([[[[()))[[((())()]())])))]](]][))[[())][]([])[()(]()])[[()(((][]]([)()([)(()[][))((()))))])]())]])[][)[])(([)))][[]([[)([[[[[)[)[]]())()][](([]])]((([()](()]][()]])[[)](((()[)[))][][(([)(([])([[][)([][([)]]((])(])]()]])][]][(()]((][(](]([)(])[)]](([(([[))[)(]]([))])]][[)[)([)(()(())][)](((((](]]])[[]((](][][)))[](](((([[[])(]]][])][(]][[[[)[(]]])[)[][[(()]([(((()()((][)(])])])](](][]][)]()]][)[[)([[)[))][()))][[(]))[[][[[)][[([)([))))]])][(([]][(](])([][()[)]]]]([])()(](]]][))()]([[)()([])((([)[]]()][)([)))](]](()))[(()][[)])))([)[[[))(]((()[])[)[]])))[[(()[][][[][(]([([]([((]))((](())[][)])[[((]]))]](](]][[])[(()([(([)[[][](()[])]][()]]]]][][])]]]()[]()])[[((]())()]]](])([][([)]]()][]([))[]][()])[]()[][)]][))][[)([(([[(([[[)]]]][[])]((][][[[()[[](]]))[)[()])]([)()()[[])))((]]()][[))()[(()[([()])[())(]])]][[[)[[))[[][][[]))][]))]]([()(()()()][[(])[([[))[][])[)[)[)]][]][[])())]((()([(()]()][][[()([[[[(][))[)([[[[[)][([(([[][]](()[])[)[][(]]](()[(([)[]][](([]([[)])[))))[(]([]([([()))(([]()))()())([(]())[])((]](][[())[[[)[)(()(])[)[)()()(]))][)(([([)[][)[]]((]))(]][][[](][(]]][)(()][]]())))[))][)([]]][]))()[]([[]][[[()])()(][]](](]]](((])])])]()((][[)()])((()[)][]((]([[)][())[([[)[](()))])(]])][)((]][))([()]([[][)(][[([])]][][]))])]))[[([(])]([)[([](])[()[)][[[)][([[)])]()[]((((()[[)([))[[)])()][)[[]])(])[[[()])[[]))()(])([]()[[]][)())[][(]])[)))[))(((]]))]((]]])][)()[][]))])([([(][]))(](()][(((])[[])()))((()))[]))()[[[])(](]][[[([]][]([)(])]]((([()](]][()]](()[(([([([[[[][[](([]](([[)[(]))((([(([][[]]])[())])()[])(()([()[])]]])(((](][[](]((()))[[[]](]][(([]]()]))[)]))())][)]))))))(()[]][][)()[[)[]](][][(](]]]()[[[(]]](]]))[[(((((])[[])(][(([([][[([)]()))))((((])([(([[(](())]]([[]([)()([((([(][)](]])])()(]([()][)])[)[])[]][)[[(]][]([[][[][[]([[[]][])[([([)[)])[(]]][())]]()[[(([[[[([(](()()([([]())((][[]))]]]]])])]))][])])(()[)([)(()][))[][])[)]]]][((]]([(]))())())((([((]]))]))[][[[[)((()[][])]](]([]()]][()]]([][([)]([(()[([([]])])](][)]]))]][[)]]][)[](()]((((([[[[[)[[()[[)[)([])[[([()[(]((]()[[)[]()][]]))])]]()))(())()()([())))))])])([[(]]]](])]()))]]))[[[(]][))[])[))(])[[)((]()(((](][()][][]]][(()[[]((][[[[]([]()][[()((]([)]))](()(([)([[][](]]])[][)()(()][)]()][)[(]][][()((]([([[)()]]([)]]]]((]([)]))[(](]()[][]))[)()[[)](]])]])[)([[(][([(((([]))[))][](](])[]][)])()[()[[[])[)[[(([[[)())))[)[)(]]](][(])[([([)[)[[()](])[()[[(]][([(([)(())[)]][[[((][([][[(]))]([)][[(())]]]]][)(]][)())([])()]][(((((](][()[]][(][)(])[))[])(]])](][(]([[[][([[[)[])(][[)()])]][[]]]([][])])(])[)()])[[[]](][)]()()))))))])(]]([()]))))[](()[[(]][)[()][)()]]])[)](([)])([)[))[((((]][]))][))([)][)]))(())[])((]())[)]))([([(])[)(()))))[)][(][))))[)[]]]((](]([[))[]))([[[](]))[(()]))[)]]][]]]]][)][]][]]]([)[[[)][)(]]]]][[))(]()[[(]])][))([)])][[])(]))[[[)[(((()]([)][][)))()))[[[[)(]]](]]([)))[([](])][[)(][[])[(])])]])[][[]])[[)])]](][(([[[]]])))]]]))[()(([([)(]][][))[)((])[[)()(]([]]]]()[()(]]([][()][()])[(]))[[])[[)(([)((]([([)[([)([]]](][[(])][()([))](]([)])[()]([)][[[)[)((])][[)[((()][))][([(]][))]]]][[]([][([][([]])[)[])(]((])))[)]((])[(](][[[([][([[[[(]][)))))(]([])[)](]][](][]()][[]])]]([[(()[[[](][[[))()])[)[)]]][([())][[[()(((()[)])[([()]()]]([()][)))](())]])(([[[[(([))(([)[](((]]][)[]((][[[[(][)]([][)[[(]][))[([()[]][)[)(((()][)(([[[()[]()][][[]([)](]([(()[]]((()[])][)))[[]]((([)([()]][())()(((]))([)))](]]()]([)[(]()))]([)()][][)])(])(([)][)[)([[]]]])())[])([(]]))))]](]])()(]]](]))()[([)][]))][]))([((]))])[[))[()]](][[([[)))[[([[)]([()[()[[[()]])[])][([])))(([[([)(](((()]()[[)())[(]())[[)]((])]])()(][(]]])()[()[[()()](])][][([[[]])[])][])])))[[[[[(((])([)][])][]()))][][][]((])][]][](]([[[[)[[[([)))]][((([])][[([[)((])([()[[]([)[[])()[)][(([()([())[)[)[)[[](]][()[(]([)()[[([))([))(]))])])[[(([)[(]))[[]](]))]]()[]))]](]]]([[[)[]][()([([))]()][]][()])]()(([]])[[())][)][)([]][[[](([)(]()()(][[(]]][]][]()[])[)][[]((())][)[]())][]([]))]]))((](()][]][[()][)(][()([[]]]([[(])])[))[)[(]]())()[)][][)))))(])])([(()(]([[)[)[[(()][)(()()[])(]]][])]]((()])((])]([[((]))[][][(([[))](](][([([]][([)(]][()(]([]])[)[[((])(]]](]][[[)())])]]][[)[[)]()))((([([[([]]]]]())))]]()([]](([]([]]())]]]()()]]])[((]([[])((]]([[[)(])()[(((()([])([]]))([[[([])][)[((][))]]))[]][)]]([]()]))](]((([)(]([]((()()]]([[][[[()(()[()[)([])]](])([])((()])))[[)][][)[](])]][))]](](]]()[)[)[]]])])]((()[][)[]([)][[[][((()([[)])(][)[)](]][)[][())[][][[(()][])][)))[][]([)[([))(([()(])]))])][))])[)[(](][]][]](][](][)]])([]((]][)][())))[[((])[[[[][])]](])(([([)()(((][])][]))([([([(((])]])]](])(])]])]))]]()()(()))[]))(](])[(])[][[](][]((][[[([])((](][(((]])]][([)])([[(()][([(][([[)([[](((]]][[]((][]])[[[(](][(()[([)[()[[)(([[)](([]][)(([[[][([())))(([]([([[][])[][))[()])][]()]]]]))](()[][[](()]]])[(([]([))))))([)][[)([[(()[(()]][)[)[[])](((](])[[)[))([(]([())]))([]([))(])((()[[])[])](]([)]])([][[]]()][()(])])(([[]]()[[[(]()[]]([())]))[[(([]]((][())]][()]]][[)[)][(][][)])[(][()[)([](]]([[[]])()[((()[(])[][()[]]([)[(([[)[()]()((]]()[)(]][(]])()([)))(][](])[)]])](]([])((]])[]))))(()(][(()))[]))]([)))(]([([)[([][)]))))[]([)]])])))[)][((](]([)[[)[[(]]([][][))[()[[()][[](())]((]])(()[()(][[])][(]]([](][)]))))())]((]]()[)[[[[]])[([((]]]][(()([[)(][)()]](()((()(]]()()]]]()]]]][([)][][([))(]))])[)()]][())[()([][[]]]][)([([[[[]](]])][)][[[[]))]][[)([[))[])[))])[(][])[())]]][])]))][[(][)[[(([][][[()][[)][]((][](][()(([)][)[]((](]]([]]([([])[])[]))(()]([](]][][(][))[[([](([))((([[[)(([])[))]]([][())([)))]))[)([]]]()([([[)](([[()[]]))[][]()(])[[][[][][)[()])]][[[()[)])[))]]][][]])])[]][]()])((]][]([][)(]][)][[[([([[])[[][)[)[[])([)()]]())]([)])](]()[[]]]][][])[((]](]])))((])([())[(()()[]()[])[)[()(())[))()()([[]([()[]([[(]()(]]]()](((]][[[](()(]([()([()])))[[([[)([[)]]])[[([(])])[(](](]]])]()))(([(]]]]][([))]][)[]([))(())))[[[([)([()]][))([)[(([]][)[)][[)[((](]]]))])(()[)][()[])))(())[)[])[)(]]([[[[)][[([()[([)([[[]]][[]]))[][]](](()]()[(])[[([[])]][[][[([[((((([)]])(([][[([([][(()()]([(])[(]][()[[)]]))([)]])][((][())[))(([])[][]][[(])[)])[(]([)([][[)))[)[]()[[[()[[][))][]((((]([[))[)](([(()([)([)()])])]()[([[][[[])(]](]([]((())([(]))[))[(]][()(]([((](]))])))[(])())([]((()](]]][][][((((]])()[](([([]([)[))])([])]][[([[)))])(]][((((((()([)[[[)()))](]()(](](][[((]([))[)([[)[(])[))([[()])(([)][[])][[)[[)][((([][()([[]([[([)(]]]][[[])(((][][)][)](([((((]([)((]([]]]][]](]([[[([()([()[[)((]])()[]][[[])[[]]))[][([][)][))()[)([([([)[]])][[)()(](]]))[((()][[)[](])()[]([[(][[()[)[)())]][]()[)[[)[()))](]()[[)]]][[[[))[)[]]([]](]()[))()[)[[[)([)][([)])()[((([[[)[](])(](]][)]([)]()(]([([(((]))[()])([([))((([]]](]([[[(([[((()[[[)((][])]])]][[(()]()][()])[[](])](](]((])[[[([][(()]([]](((][(([)()([[[(()][))[)[[[)](([]]((])](]([)])]](]][)[][[([]])(((())]](](]([[]]()))[(([][()[](((](())[][[(]()[(](())[(]]][(]()([[)[[[](]])))[[[[)](()[([[[]))[())(([[([)[[[[(])([]([]))[])(((()[()(()]]])[)(]))]]]))[])()]([[))]]]][]())[[))](][[)(][]))(])[[[)()])]]]([][()([[[[()[(]]]([[)))[))([[()]())[)]][([([()]][(())[]([(])]]](]](()[[][[[[])))]])][()]][]((([[]](])(()](()][[][](()[]]]()([)[([]][))[]]]]][[[)[[)]()[])))[()[])(][))]]][)][()([[[](])](](([]([[]]][(]][)()[]](([](((][[]][))[[))))()[[[]([(])(]])[[][)](]][][][[][[)]](]((([[([)[[])[([([[)[]])[)]([[(]))(](())()][[()][([[)]()[]((])]]]([)[))[)(([]())())()][[)(]))[[[[)[)(]([)(()([((([)([)]][][)[]][)]))()]][]([([[)()[](([((][)]]([[][])][([(][]]()[])[[[])(])))](][]][](][[(])[[[))])()[)((][[)[([[[)][]]())(][([[(](])[()[](((([[[))]])]())()])[([]]]]))[))[[(([[[((]]()()(])[[([()][[[[()][))(()[)]()][]([)()]()[[(][[))))]((]([][][[[]](([(]((]([(]])[)])[(]((]]]](][]((]([])([(([[(][((((](()[][(()[[(](([(]((]][[[(][)()]((][[[)[[[())[)([[]((][)(([[([[(([(([([)[([[]))](((((([[()[[][[[](]()([][]()]([[()]]([(((][]]))[)][[[)[[)()[()))][(([)((((([](]])[][([[)((](([])[()]]))([)]((])[)([)]])[[([)[](]([(][)][[([)][)))][(][])([[(((([)[[)][)[[])))[]()][][]]([[()][)(])][[[](([[([([(])([)))([[]][)(())[((]])(([[][)][(]()[[)])()]][([]][((()[[()()))([])([[)]]]][((]())[](][[[][][)[[[(()][[[[[)[)([)]]())[)]]])](([()([[]))](]][)(([()[[[)(())[(])]]][[)[]((()))[])]()(]]])]()))][()[](]))((]])((])[]]]]](][[([()[)]([)()()[([[]()(](]])[((()[))])[](()))[[][()))))][]())((([)(]](]])[][)])]()([])(]](()([])()]((]]))]]])))[]()[)()[[[])]))([][)()([[)))([[[)])(][]()[)()][[]()])]([]](]([])]))][[)]]](]()]((]()[[))))))()][())(]]()(]]]]()[)[)[]]([())[(][)[)[[))()][]))[))[]](()][[((][[[](]())(()[))[(])(][[)[))]]))[)))()[)()(()])][](])([))()(])[[[)][((]())((()[([))])]]](])[]][([][]](())[([](([)]))[()][[))[))([]([)](]]][][[][))[]]][(([))(())()()[[[[[[))][)([(]]())(]()[[))(][]]][)())([)))[)]]((]][[[][[([)[))[[]]([)[)[[][(]]]]))][]([][][([[[](()])[)](]))]([]]()[)()[[([[])[]])()(()](])((()()))[(([)[[([]])]]](][[)()[)())]([)][]))(]())[[)][([)((](]())[][)(([](])])(][)[]([()))(]))[(])(][()([[))(]((([]]))()))[[))[())[[[(])])(]([](]([](]]))([][(][[]))([[)[)](])[))])(][)]))])()]][)[])([))[[])(([(()(([)((](])))])))(()()([([[[][((())[()([[)))()(][([(][[[][])])](((])[([()))()(]()[)[(]]([()[()[[[[(])()(([)]([[(((([[(([[)[]])(())[[)[(((][](])[](][)]())[]]([)()]([)]][)[([)(]))]))[)[()[)]]()[](()))]]]))[))([([)](()](()[)[])()][([)((]()[)[[()][()]])(]()(([()((](([)]][((()[()))(](]]](())](][)[[)]]]]))](][[]([][[()()[[[](][))[[[]][[[([(][]])(]](([][]([]]([([)](][[))]))())(]][()))[[)[(()(([))(()[[]([]([[()([])]((](()])[((())]])([[[([])([(])()()(]]][](()[))]((((][])(](][[))[[)][[[[))]([)((](((]([)][)[)[)])(]])[]]((][(()])]][)[])(][))])]))]][((]]])(()(([([)[)())[][()]())[()()[([)])]))]))[(())())([()[)][)][[()[]()]][[])[][][([()()(()[))))()]](([(((((([(([(([][][(()]]]))(]))[)]))][)))()()(())]))(]([[(])))()(()())([][))][[)]())(]()(([])]([()())[[))])])[([]))]])[[][[())](])[(])[]]][[]])))][][][()[][([((](]]([())(][[)]][[]]])))[[]])(](]((]([)[)[]([[])[(][(][]()[)(])][[))[)]](](](])[(](]))[(((()]((()(([))()]())([[[]](((](]]]]]]([[)])[]]([][)([[((((])][)))]]([)(])(]])]][)))[()))[[(](()]]]]]))[]])]][]])][))[[))())[]]]][]((][[]][[)](])]))][))]](][]][[])][][())])()[)([[])[([[]][(()(]]]]]][])](())([)]][[[(]]()()][][][([[])]])))]()])]]]])()]](]][)[([[[[[()[(()][)())][[()([])[)[(][)[()][)][[)()]))[)]]([(][))]([)[([))[[([)[]))((([[))])(][(]([])[)]](]([)])[(]([()[)[()[](((()[)(()()(([((()((])))[])[[[)()[[[][[[([[[))[)[(([])])(][[)[[)))]](])[)()](])[]((])())])([)[]())([[(]))])][[]([])([[[(([)]))[](][][([]()][)[][((([[())(([(([])[(])[[])]]([]]][[)(](][(]))(])]])[]])(]()(((]][[](([[)[[))[))([]]](([]]([[])[))][([[]([[]][(]()]))[)((][](]]][[](][([)[][)))((](([]])[[])(([(][]])])[)])[[](([)()))[(][]]](]][)][]]))(([[([[((][[[][()([())[[(]((])[)]([[()()[[]([([[()))([)(][([)][[())])(]])(())(])([]((()(]((]([(]])[(]))]]]()][(()((]][()][]))](](](()()[()])[]]]())(()]([](]][[)(]())][)]](]](](]()((()[[[([(([(()[]([]])(])[[[](][])])]))](()))[]))[)]])[)()(]])))][]](()(([]([][)])[[[)([))([))))()(])[][][([][]]]))]))]]()])[[([([[[())])]([])()))[)())]([]]][)])()]][])[[[][](()(((][(]))]()[)[[][[][(](())][(](][)[(]]()[[[]][])])()(([]][))()((([)[[[]](]([))[][()[()(][[])([]])[[]]([][))][][[[)[[())][[](]]))]]])))[[)])([(])[))][)])((][]))[[[)))[](]))((]]][([([([])]()]()]()[[])[]]](]]][][]])]))((][)[])[([)(()[][[((]))(([((]())[)])])[()[)([([][()((]([))()([(()[))](]]](])[[][[])()[)(]]([(](([[[))]()][([)[](([]([([[)[[)())(][](][[[[[((]))[))[))()]([([]]]]))[)[))[((([))[][](][]]])))](([([][(]([[))[]][[[])][)])[])))[)))[())([](][()][([([])((])[(([)][]])]]((((][]][([()[([[[)[)[()[]][[[[[(]]][([[)[[)[[)([]()[()[]]])]][]]())[[[)))([()[[(]]][)((](([()()[[[)]((][[][)[[]([[[))([()()(()[)))))(][()))]]()[[())))(]()]](([[[[])(([[()))([(((()]]()][[][]]))[[)[()()]][)][][][[))]]])[[([[[)([)](](]([[((())(])])](](]][[]][])]((])([([)]()(([]]]]([[[)]]])[)(][])([[[)])]()])(([)(]]()(((([[[)([((((]]](][]([[(([(([)()])[))[]((((]()[]][([])())[])]][))][[])[][(][([))()[([[[]))][(])(((]))[[))())][)(()[]]())[)[(][))[[([[[(())][[)[)][][()[())(]]([[[]](]][)]]])][]][][[]((]([))([[[[[)[)]())])]]]()()[()][))]][]()]]]([[[[][][]([)))())[)(]](((([()])([([((]])][(]([][[[[)))]]][)]())][[]((][())(]])[())()()]))())(()]())(]])](]])(][([))()[])))]()((()[))]([())[[([[(][)]])])])[(([][](])[]([))[](](([(])[(]]))])[)](()[])[[)[))[((]][[(([)((](][[(]][[]([][)((((())[(((([)([(][()][)][](])](]((]))(][)[]()[)(([[][[[]]()(]])()()((])][[(([[)[)][)](]))[[)()]][)](]]((](([[[[]][([][)([[[]([(][)(]])]]))[[])]]()[[))))([]))]][(((()[]]())])([((()[([](][[)](()((([[[](])]]][]))))[)()([)[)][))][[[[(]()))((([)]))([](][][))])]((])](]([)(]]((])([)))))[]][)(]]]][[([][]])])[])))[][[()[](]])()))])[[[]][[](][][[[(((()(]((()[)][)()][][)(]])[])]][))([((([((()(()()(()([]()([)))])(]][([)(]](]]][(][[[)()[)[][([(]])]][[)))[][(((([((]])[)([(([[)](()]))(((][)[[]]]][))])][[[((]][([)))[][[))]]]([))[]()])[)))))()(]((]]](]([)[[)])]([(([](((])[(([)[)((]]()]([)(]][)[[)][))])[([])[][(])]]]))][(]))[[(()])(([[[()[(]][)([)][(](](()[[(())[[)()[][]]]])]((])[(]][)([)[[)])[((]))(]()(([)[])]()])][)])]]]](](][[[([()([]])]]((()[))([)))])]]]]((((](())()([)[](][()())(])](]])([)])))]][]])))(])(([](([]]](()(())(]([[)(]]))])[()[)([[][)))])[)[))])]][()[])[](((((([][(([][([]((])[[(])]))(((([(]][]]))((][(])[[)([]())(()])[]([)][[([])(][)[[]]])]]](())([]](][](][[]([([()][())])]]()(]([]((]][])][][][()[)][[))]](]]](][))()[([[)][)[(()([[[([)(](])[]()][)(((()([[))(()[([()])][)])(][[[)[)))((()()[]])]()][())[)[]))(()[((()[)))[()[)([[[(([][]](()))](]))[[((()))([(])[)))[[()(]())(]))]][)())]]]))][[([])[]]]][]((]([[([))[]]][((]([(][()][[[[][(]([(())[)[][(((]](([)[))())])[(([(([])]([[[[][())[[(()]]](]())[][))][(]]([)[]](])(([(][(])[[()[])[[[[[[)[])](][[(())()(()]((][)]([))][]([]]]((()][[][][([[]]])[[]())((())])(])][][)]])[[)](]()))])])][)][)[][((]]][[[(]][)]](((])][](][(])]([((](]([)((])[)(([[](([)((])())()[[)[(](]()([)][[])))(((([))(])[]([(([(][(]])[])]]])([[(])][))]](])(]))))))([])])[([)])[))([]()]](())(([]()()[]]])[)([))[)[]()[[]([)([(()((()]]([[[)][)])))])((][))[[([)(])[][)]](])()))[)])[]()][(](]))[[()((()[[(()((][)[)[))))))]([)]()](](]))])(((())][[][]([)))(()[)[)]]]([]]))[)))][)((([[[[[))[[[(][]]]]]]](())([([)])]([)()(](][)][(((])((][)([()[)]))[[]]))][[[)]][([([])[[])(](]][)(([][([[)(([(]]][]))[[[(])[[[((()(([]]]([[]])]]))[(()[([()])[))[]])()((])])]([[[)[]([[[[]]][[)()[](((()](](][][(](][)))[)])]))][[]]()(]][(])))[[[))][[(()((]])]]]][](]]([](([)(][)])]]]])][])))())()(][)))[)((]](([]][[)()([(][](])](]]])][)]))[]([)()])[[)([)[[)]()())](([(()][([([)][][(](]]]()))([((([([)[])[)([)())][)([[][(((((]([)))][)[)[)])][][[](])()((])[([()[]][(()))](])[)())[())]]]()))[())]())]([)[)(((()][))[][]](()])])(][())(([][))(])([]))[[]][(][[[)]]](]]][[[)[))]))()()(]][]](][]]([)[))(]))](]]]([])[][[)[([)]([([([](][)]]][][(()((](]]][)[((((]))]()[)[))](())(])([(](]([()[([[))[]([[([[[)()[[])]])(]()[[][[)[[))[()(])]]]()][[[)[)[))((])[](])(([)[)[)[[[(]](])]][)]((]()[(())]()()])))(]))(]([)[)])])[[[()])]))[[]])[]([)))([[](]((((([[(]]][(][[]]()))])][((()[[)(()]([[)]]][))())[([)((()[()[))[[)(]]]][(((]))((((]]])(][[(([](()())([[]](]([)]([([)(([][((()[]([(][[[)]])][([([)][[[[[()])]](]]][)]][[]((]][[(])([(](((([)[]]([[)[[))]])]())[)[)[([)()]([][)[())[)](((([[()]))[][()])[(]([[))])))))(()]])((]])))])(][)[))]][([)(]())][(]()[(()])([)[[([)[][()])]]()[(]]()[[[[)]())[]][)])[]))[][)([()((][())][](]]([][))[()))([[]))))((([(]](((()([[)[([)()[)()[[])]))())(])]())([]((]][)[](])([[]][)])()[([()([)]))()([]()])[[(][()[([()))((][])(]()()[())(]([[([][)()]([()])[)[[]][)[)((([(]]])(()[[[][()](][(](([)(][))[]))([[](]](]](])])()]]][[][](](((])(()(])([[]))()[[][)[()[[))]]()]])[[([]])()([[(((([([)()])(())[)])[)(](((]])))((((([[[][()(]([]([)))([)())]][)(]()))]((((][))(([]]][)]([][([((]][)))(])()[]]]](])][][((][)))](](([])[]))(]((()[()][[)(([[][))()[[]))][[)[[(())(]](]])]])(([])(((()))(]]]((][])([)](()(][][[)]]]][]([]][(]]([]][]))())(])[[([[[)([][((]))]]()[][))([)][[(](]([(([((](([)(()]])[][()(][((])[)()(()]]]([[[[)[][][]][(][([)][[]()(]]])])]()))[[([)[])[)])]]))())[]()[[()([])[)[)))(]]))]][)])(])[](())])[[(((]](])[)([([]](()([(()]](]([([[))))[(]](([[[)(][]()])]]])())(([[[]])][[())[)(])((]]()([[[](][)])()](]]))])]))[[([]]([)]))[(](]()()[][[])[[)(((((][]]((([)])()[)][])))]((]))]))(]]][[[[](([(]]])[])]]]((([](]([[)([[][])][][[)(((])[)]][[[[]((([[()])[]()]())))(]][)]([[][((]]][][][][[[(](]]([))]][([()[]]]][)[(]([])(()]]([)][(])])()[])])(][])]))[((])(](((]())]()]([(]]()[[][[]([(((](])([)[][(])([)(()[(](]([)])(((()]]][][)()(([[(()(]([]][])]()[[])](])[)(([]]()]]))))))]]()][[([[(](([([]((]([)[((]])(]()[)(([]])[)((])[[])[(][([))])(((()[()])[)(([([]((])]([)()))]]][(()](([([[]](()[(]]][]()(][]]))(([)])[)][)[)))[](())(]([()(])(])(()([(()([][([))]()(((([[)()()]([[[)]]()[())))(][(([[(][)(([[[()[][()][)((([[[](]]()[((((]])([([)[)[](()()()[(]])[[)]()(][](([])(((])[([](()][][[]((([]()[(]](()](([])[())]([()())[[((]])([[[(][)])[()]]))()]](((()[]))(]([)(()[(]](()))][(()[([([)[[(([)[]([[[[()][[](())([[[][)[[[[(())([([[)))(]()()]([(]))](([(]([())[)[(]]])[][[((([))](]((][(()]))[)())[)()(](][(()(([()[[)])[)][))(][(([])]([]([[))[[([(()[[((()[]([]]([)[((][[]]([][])()[([)[)([)()][([))(()[[([(](((()()()[[)[[][(]]])]]()[((([)()([([]][([[][)))([][))((([()([(]][]][((][(][()][([)[[))]))[))())[]][])(([[()[(]](([[)))]][))[)([](]]))])]]])[[([[()][]((])](]])[[][[))(][]([]][]][]][[[][][](](]](][])(())([()((](])[[)))]](])[)[[([][))[[[[)([([(([()))[())(]([](][[(][]]()()(][[))()))][[]()[[][(()[)[()]])(][)][[]()[)[([))[))]()((([([()]]]()[)(((]()[]][()[((])]]](([)(([[()[[[(]]]]])(()[[[(]([([(]())][()))][[)[(][)))]]))[([)(([())])(]([][[))]([([)]]](((()](()(]][]][))[(((][)()((][(]))]()(]([([)([][])()[()[(()][)])[][((()(][[]((()]))()[])()(([[([[]()))[)])[)]][([[))]]))))(](][[]](])(](]])(]()[][(](][))](]][(][]]))()][))([)[()))[(]][)[(()][[][(]])]]]([][)[[[[][)(][)]([))([(([]()[])[[)[]]]([])[[]([][([](((]((([[()])(]]))())(]([][)[](((()]](](()][])[()[()]](((([](((])(]))[()]][(([]()[]][([[[((])]]](][][[])]](][(](])]][[)[([((][)[())(()])[[(])(][][))[[[([]([[(())(([[[)))[)[(()[][(([]]))(([)[[](]][(([[[[))])([[(]]))[(]]((]])((](([]][)(]]([)))))()(()[)(((])((((]]((])])][()]])()([)])(](]))(]((](][)]])[[[[()]))(]]]()[[)([](([[(]((]([(()])])]([][[[)(()[]([()](][[)[](((][)][(][)([)[)])[(()[[)[)([])])]]()[(([[)]][]))][[([[))])([[]((]()])[)[(])][[[])[([)]](](][)[])[)(][][](]([([[))[])]())([])]([()())[)(()(](]])])[][[](][[)([))[])([]]()](])((][)((]])[[[][[[(]([(([][))]]))][][][)))[]((](]][](()[[[[((][][()[])[)[))((((])[)()]][)[[())(](]]))([)[()())]][)]]([()[[(]])(][)[]]][[(][[[))[[][[[[(]][([][)[))([()()[]]][)()[](([])]]][)[[[)((())))][)((([[(([[[]((]]]]))([(]][(])][]](]([)([]]])((])[)][[][]))[)(())(()]))])[(]((()]]][)[)])))))((]][(]][[((]([)(])[[][[])][()](](])]]))[(])([)([[[(()([(([[][)](]][]((](((])))([])(])[]]][]()[])[(])][][[][((())]])[)(()]([][]))[]([[((][[[)((][(])[(]]]])][)[]()[))(]]]))[)(][)(([([[)())[)[))[[(](][([)(](][]((]()[))[])])]]))[)[][[]][[)])]]]()[[]](]))]]](]([([))[[]]((][][[(()))))]([)]()]))()(][](])]]([][[[]][[(([))))())[)[([[([]][()[[[(]([)])]))][[[)(())]))])])([())))[[[[]))([)][])])]((]]]()]]))[)]](][)[)[[((()))(((()]((])(()([([][)[)([)[[()]])([[)(](((([][])))([([[)[)[([]))[]))[]()[[[(][])((]][]])])](([)])]])][][()()[([]])(])([)]([[))][)[())](((]))))(](([])()])()[[[]]])))(][)([[]][)]((()([[[((((()])(](]]]][)(][)[](]()][[[]((])[)((()))([()])])[[[()][[]]]]]]]]]]([)][)(])((]](]](([[])([(][)])([)([)])([())[](())][])])]()[]())[())][)(][)]]]]]]][[([]))[))]][])([([[])[(((([)[]])[(])[))()][(]][))(](][)](][[)([[]]((()[(])[]])(())(])[][()[[([(]()]][[]][[([][([()([))()]([()[((([](])([)(())[)](])()([)(][)()]])()[([))])((])](]]))[[[[][)[[)()](()]([[))([()]][))([()](()])][[([)[(()]]]))[[]]))()]([][()((](](()()]]])[[([]])]))((]](][][[((]]]))][(][(][[]])])[])(()][]][]][][())][)[])]])[((][)))[((([()]))]([[(]]([)([[])]]][[)]])([]]())][()])](])))])[([()[([([([](]]]])((()]))[[]][)]((]()[))][[[(()(][[]]])[[)])[([(]))([([(()([)[([[[)]((]])([))[[]((([)()])[[)[[(]](])][]()[)]([]([])))))][()[))((][))(]]]](][(()(])[[)))]([)[])(]]]))]]([))([]([](()(][])(](()[[[[([(])((]()[)[)]](][[[])()(]]]))()[[]]]((]]]([(])(](([]]([(([)]()()[]([(][]][)](([])[)][()]()))]])((]]]([[]]]([]()([)[])](([)][(()([)((()]([(])]([()[[(((]([))[][([[(])([)](((]][)(]([([)()[()]([(()()()((][)]([[[(])((]()[]()[[])(])])]()())()(][()[[)([]()))(]]()]]])][])(]][])])((][[((])())][[[()[])[)[([]))[][()]]]]]])([(](])](]))()]][[[)[](([]]))()][))][)[][(()[((((([]()][[[)(]([][[))([)]][[[][)[])[[)[)[))]))()([]))[)]((([[[[)](]][)[(()](]])([[[(]))][)[()[()[[(([[[()])[([])])[([[[)[)[])]])]]([[)(]()(])[)()]))][(]]][)[]))((][(([()))(]))))[[][)][])[[)][(]]])][()([)(][)]([])[(]()]]][)))[]()))[()[)())][([[[[(]))]()][[[)[(]([)(])))[(](])[)])([]()())]]]](]]([][][[][(]((]]]]([](])](]))))[][))]])[)[[[)[[[]((]])[[[[))[](][]))([[)][([()[[[])][))))](([[]()[)()[)[))([[]())]][(])[[[))[])]))])](]])][)[)[)()(([))(]()]((]([[]][)])())((])]]]))[)))][()]][]][[)))(([])))]]])[][][[)][)(]]]]((][]()[))[[[()(]([)[[[]])(](()(][([)))(]((])([]](]][]()]())]])]]([(][)])[][[(])[)])][]])]]](])]][])[[][)[)[]()[]())]]]]()[((]()](()()[])])[(])(])))]][[[(([])][(][[([((]](([)()]])])]((()()[)[[)[(](](()([](][]))[(]()])[][))])[[)[]]))]))]](([[([)[()[)][)))]]([[(]))](]]])]]])[[))[)))]()])(])(]]])))[)[[[]([((()]][])](][]()[])[[][)]])[[[[[)][((][[)[]())])((]()[[()([)[[[())(]]([())(]]()][(([()[]())][([][()))[([[[[))[])]][(()])))[(]([[[[())(]](]([()())[[(([)([])))])()]][][[)()[][(][)])]]])((][(]](][([[(())(]][])))(](][][[[][[)(]][)]]]])](]))]]][[))))])(])[)())](](]([[])][(([))[))[[]])[)([[])[([(()]]]((([][]]]]))([]]([]()])[)[()(()]()(]])][])](][))[](([)[(](((][)[)])()]][[](][[[[([[(]])][[)()()))([[[[))](])()([[]())]]))[[]]])([][])[[]([([]]][()[[)[(])]])])[[([))()][[]]((()))][[)[])][([()))]]]])(])[(](])])[][[))[()[))[)(])[([()](](()()[[][()][](]])([[([](]]((([([([(][]([(((((]()][))[[((()])(]))))[)[)())])[[)][)((]])([[[]][())([))[](])(([](]((([)[][(](])(]]([(]]]]])([])())])[))[][()(]())[)(]([][[))(]][[[[[))))])]([()[()[)([]([]]]][][])])][]((])((([[[[()(]([[()(([[[))[)])[))()]())[)])[](]())())[((]]))[))]]([)[][[[)[][[[[[[]])(]][)))(([)]))(()]][(((][(][())([[])[)[([[])]]]([([[])[(]([][(]])()[)([]([([)[[)]](][[(()([)()[()[)][]])[)([[([()[)[)][([[([]][((][]]()([]([[(()(])()()((((((]]([()[)[[][][))]))])([][()][][[()][]]][[)]]))(()(]()[])]]]([(()(([)]((])[[])(]]](([])[[))])[[[[)()][[[([[)([)])([]])))][)])[[()[[]]][)]]][[((][(()])(])]](](]]]([](](](][][)))[])[()][](([]][)](]])(()[[]][])])[[][(](])(]])])()(][[]])[[]]]]()[[))([([)[[][]))]))[)((]())))])))]())))[[[([[)[]])(]]))]]((([(([][))[)[[())[[([(((]))[][[](([(](](]]()(][]])])))()([())[)()]][]([]()]][)[([(]][))(][[)[)))([[]]])]))]()[[)])[]])][(]]])(](])]))([[)[)[]))[]((())((()]))])][]))](](]]][](][][)(]))))[)]))[]]][][)[(]))(][]][)]]))]][()][[[]([[(((](]]([(())[))([(([((((][((]]]]([)(][)[)]()]()())][][[)[)((([)]](()([(([[[][([(]])(])[][(])[[()(]])][[)][)([([)]([)[]]])]][)]](][[()][([[)()[([[))])][](][((]]]))([))(](()(][))(([]()][](((])[[[[)][))()][)[]()([])]][[((([]))(])[]([)[[[[](])][)()](]][([][])(][[[([)(([[[[])([(]][[([]][[[)])]])])[()[[[([[)([]([[](][()])([[[)((([))[)([[)(())[)[)[(([()]]((()[)][[((]]()(([]((])([(()(()([[]()[])[)[]()]])])[([([()[((]([[[))][](]])))((]]])[[]))])[)[[]][)([][(([)][]()()()([[(]()[]([]]])](]]]][([]][])])])])][)[][(())([[])(]](([(((]())])(())])()]]]])[])]()([[]])()[)]))[](]]()([]())])(]][[)]][([([[())(())([[([[]]()][]][[(])(()]()](][()][)((([()[][)(([][]))(])][[((]]][[)])[)[[(]))](()))[)(()(][])[][(()[()()[[)()]](()([([((([([[([[))]]][[]((][[][)()()(]])[]])](]()((]([]]]]]]([(])[)())([[(())]([)[[([[(([)])[]]()[([]][([((([](](([(](](][(]()]()]]))([[[(((][)())[)([()[)())))])))[([[[[()[][]]))))]]([]([]](([[((]]][(([))[[[)))(][([)([)()]))[]])[([]]]])]])()[)(([][[][)(()[[)(][)()]([[(]])]))[(()[([]]]]](])))][[([[)[([)[(]((()]][([(][]))))][))(](]]()()[(](][()][((([[()([()])([([]((]]([])])][[[[))((()()(((]([)((]][]))][([[(][[][][)([]))[()(])](])[(]([))]])[][[]])][]]([)))](][([[[]))[))][)[]]()]][((()))[[]((][]()[(([[([])])))[(])[]]]])]))][)()])()[(](()][([]])([]]())[)()[))][))([())[)[)))))]]()((()[(][)[)[]][[[]][([[)[)([]([(()]((])]()[)[])([][(](((][])[()([[))])((]]((([)([(([)()((]]]])[(])[[]]]((())[])([[(])(((])[]]()])(]](]](]()]]((]](]))(]([[[)[)))[([(][[(]))[)()]()[[](][[(][)(([[)]])[[(())[)((]()[])[((]])()[)(](])[)[))()])([))())])]()[))([)([])])((][([()([])(]]())(][)(()[)]())(]([]]])]([(]])])())([)()([]))))[]](()](]))]()]]))]([())(](([(][]([[]][)[((]]](]]](]))][)]((]](]][[)()[]][[]][([[)[])(((])((((]((()](]))])][((]]())))[(][])(][))[(()])[[))])[(][()()(()[)]])))[(])]([([[)][))((]])][[](])]([(]]](([)[]()()]((((])([[([]([][[[)(]()[()(()[[[())][[]][[[[(]())))[)))])()()((]()(([)[[()[()()[[[])(()]][]())[([]()(][]][)))((]]))][()](]]]]()([][[))](]([)][())][())[])[)][[[]()])]](]))[[]]]])[)()[())[())[][]]()(([][)[][][[))[)[())(])([[[]((](]([)]((]]](()[(]]]]](()]))[]((])[[[]][][[(]]])))(]][))))[[[))](((])(([)(([]][[([[()]]])((]]]()(((([([[[(]([([))(][))([[))])[[[])()[)()[]([)[[))[(]((]]][[][(]]]]))][()[[(]()(])]))[[([][)[]())()()[([[[(])[(][))]([[)[][)))[)([[)([[((])]([([([][)[)]([())][])(])))([([()([[)]()[())[([(]])][)]([[[)])[)([)))[[([))][[)))][)[])[([(]((][][([)]((])(][)[)][((]](]]][]][)[)](][)[][)])]([)[[)]))[]])]()()]]]][)]][](]()(]))))])]][)]]())]]]()[[)()[()(()]])[[[)]](]()[)][]][()[[[[]]][]]][)[[[([[][)())))][)[[)[([[)(([)())([[))[]())]]]()][)])[[(][]]][)[)](]))][([)[][[]])[]]((][))]](((]))))([]][()])][)([)[([)([)(([(][)]()))([([))[[)[((])[)([)[()()([]][[))][[]))((([[][[)))[)]]](]](](][)][](])(][(])(]]]][]([][([][([]([]))[][[[)])]]((()([)((])([)[[))[()())[([[)[))[])](]])[[()()[([(([[[[))[(][)]()](]))[[((]()()[))[(]))[()[)(()(([[)))([)])[))[)[]][]()](])]][)(][())[(]())](]([()]()))]][[(([[)([)]]][[)[[]])(]()((]((][(]()])(())][()((][[]]][[][[]))[][)(((((([[]([]((]]])))]([(]())((([)([[)))[)[(([(()[[]((]][[[[)(][()[]([)))))()[)])([[(]()]([][[][)[[]]]]())[()]])[)(][)())[(([)[[))[)[[[[]]]][])[]))]]))])]][[[[))[])(]([[)([[[[[(]))((])((([])([(]](())]](][)()))(([]][[[[])]()]]](])[)](]](([[[()[(]]])](((]()])]][[]]())]]]](([][[]][[(()()[))([))[(])]()(]([[[()())([[([()])([]]](][](])(]((([(]]])([[[)])[())]])[)[))[]]][]]]()[]()]([][[)[[))()([([](]))][[][[))]])()([[))))]([[([()([)](]]))[[)[][()[)[)[([]]()]([][[)()()([][([())()])([[)]())]())[()(]][)[)])[[))])])])))][)]())[(](][)][[[[)]()])(([[)(((()[[])[]]][([[([[)(])()][]]()([(([[)[)))])(()([[]()[]()()])([(])([[)]))[])(])([(]])[]([[[(]][]]()(]))[][]))])])])[)[)())))[]([(()(((]((([([][[]))[))())())))]((]]([][[)]][(])][(]((([]))([)[[()])(]((()[[[[)[](](()(]][())[([()[]][))()]][[[(][([]())]][))))])([](((][]([[])()([([[[][]]]((()(]]][)[)[)((()]](]()][][)[()]][))))(([)[]]])([]])(((](]))(()])[)(][)))][)[([]()])])[(()(]])[[)[[]))[[([)[()])[)(]([[])([[)[[[))][])[))]))]))](]))[(()])][][)]][()])([[]])[(])[]])])]((([][[]())[)[[(][)))(]]])())[[[[)([([]()(]()[[)()))))]][][][])(][[([]]][]([])[([()][[][(])[)[[)](((]])([([]])(([)))][()))]()(([()](][][()[][)]])])(([()(((([])[([)][)]]]([)])[[([])))]]](]]()[])(]][]])[([[))[][[[]()][]())(])[()]](])]))[)()[[[]]])))))[)[[)[()(][]()[))[[(]][[[([])))(][]())[]]]])))))])[()][))[[[(])]))][[[((])()[[())]][()[])(]))[)])(((([[)))[]]([)[[]]))())(])[][))()]))))(([](][)((][[)]]((()]]))][)()()](([[([(][)(((([)]()](]))]([([([[[[[[(([][])])])[[)][](]())[]))(([)]([[[)]]])())][((]))]])([[](])([))][[)][)](()()()]])))[]))[)[([]])][(](]([[()]))][][][(]([[())((]][()[((())]][(][]])](][()(])()((][[][[][())[)[(())[]([)][)](])](][[(]((()(](()[[[][(()]([[)])))]))[]]][[()(]([[)](]([[)][([([](([)][](]())()[)))[()[[]]((]](((]([(])][(]][](]][]([]))[(((([[[()[(([][]())(([])[(][)()[[[][[()))[)()(([)[[((][)()[)))))[[)]]))))](([))]([)[[)][()(]))([)]]()()[()])[]][[]](][[([))(]([[()(([])(]))[)]][(((])([[[([)][[)(()[])[([](][][[)))(]](([[)([[[)]])[)]([][[([)])(])))(]]][(([)[([(]][[)()]][]][)[(][[[[[][)[)(((]()](([)((([)][)(])()])](]()(]))(()))](]()[([((]()()[)())]][(])()[)()(([]([](([[([[[)[((]][]()]]))]][])[])()[))][)(((]))[()[)(](([([]()([)[[(]])(([[]]))](][[][[][[[)])[)[]]))]([)((])]]])]([)(()]([](()[[[((()(())[[((])[[()[][([](])([](]([](][(())]]]]]]]](]()[[)])[)]([]]]][][()(()([](]()](()])[)([]([[(]([](])]([)])[((]])])])](][(()))]()]][][](]][]](]))][[[)[)]([)))]))[(((([(]][[((())]]](([([[([)]]([[)()[(]()[]))))))[[)[(]])[(]]([)]())()]((](((][)](]((][]([((()][])]](]())])](([[()((]((][((])))[)[(]))[]([)](()()[(])](][)((([((][[)]]((((()]([[][][())[)]()()[(]][)]](](](]]])])[](]][())(()][)([([)[()[])][[]]()[()()(([()](([][[]])(]]]])((()[)[)(])(]))[])()(][(([[]))[]][]]((])))[[[)[)(](](][][()][((][[[[)(][)]][[])][(]])[[[()([)(()[[]]]([(([((([(([()(]()()][)])()[[)(()[))((([)[()[[][)[]])])](][[)[)))](][((()(])[]](((()]])[]([]]][[[][]]]](([)()(()[([[)]))[([)(](][])[[)][(][)[]]][)[[[[([)[[]))[[][(]()]]][)(](]())))]]))][[](()))]())]([[([(])([()((][])))][)[]])()])[])[[]([(()[()(]))([[))]]](][)[[][())()][)(][(([)[(([))[][[(][))[()(])[)))(([]([)((()))[()])]([))(((]])[[(())()][(])()([)[))[](()(([][[[))])[[)[]]][]](]()(([)](][[([[[[[[()]))[[((]][(]][(]))[())))))[)(()](][][[(]((([)()]()(][][([)())[[])(])[)]))[)[)[]))[]))()()(()](])][))]()(])])(]]]))[[)(([][)))]]()[][]])[(([[]][[(])()(])]()[[)[[)((]]((]]])(])][])]](])][(())]))(])[(])))(([](][][[)[][[)]([(]])[[))]])[))(][][)([][][]][)()[))[[(]))()])[[[)[[([[(])]]()(()())[([)](]([]][(())))[[(]]]([[)([][(()[([[((]]([[)()[(([])([)(]([)]](](((])[[([][([]]))])[(]([()[]((][()]))[(]([)[]())(]))[]][]]]])]][((][[)()(][][[)(()(]]())()(])()[))[[[[[]])()[)](])][((()([[]][[(())[[][)[]])()[)()[([[[()](()([[]))][((]()(]())()()][[[((((([[)[[))(]]]([])]()][[)[[[()]][(]([])((()([[(]((())((][)[]]][[((((]](])][)[[[[()))(]()[[[()))(])))[[)]([))]]([((([(([(([]([))])](]))[[[](()]][(])[](][(](][([(])(][])[[(][[([[)][)))[)]][)[(])]][]))[[][)[])(][]]]))[[[))(])(]))(()][]][)((](()()[]))](](])[()](][)(()(([())[[))][[(()(]((([)]]]())]](]()([(])]]))]()([([()[]((()[][])][((])(][[)([([]][]])))[))](])[[]][[))]])()[[)()]]]((([][([)()))[)]())[])([))]][[[()(]))]])][[][(()((])(]])))]]([()([]([()[[)[()([[([([[(][])(]][))])))][[()()([[()]()())[(])]][)()[)[)()[[[]((]](](()))])](])[(]]()])][][(]][[][]([])]]))(((])(]([]]]]])(])()()([[[][(]])[)([([[[)(](]([]])(]()[[]][)(([][([](([[[)])[()[]]]]]]([()][[]()(]][()][)[))()]()[](][[])(((]])][[(])]))[])(]])]([((]]]](()]]))(]([(([]]([[]]((][(][)[[(][)](]]())([[[[))[)(])([)])[)))][([]][[()])]([(]((])(()[[()]()[(])[])[(]][])((())(](][([[[))])()](()]][[((]]])[[[])[])[])((]((((]]][]))][((][[][]]))[((][)[([))([[[[]][])]](]))][))))]()))][]]))(][)[)))]]([))]]]))[[([(())))[()]](])(()[)])]([)[])[([][])())])([)(]))])))](((]))][[()[()())][](]()][)())([][)][]([(]((([)](]])[])[]]([)[]])])[]]])]])))[([](([)))[](([(([[[)])(][(()]([)())[)]((([]][[[[([](((]()[](())))[)]]([[))([)][(][[][)(]((]]))][)])(]])[[[])()])[[])[)(](()((()]])()][](]](])[[]))()[[[(])[]])[)[[](][)()))((](][)())[[(()])(()]](([([([())[)]][])]([[[][((])[([)([)[]([(][())[((([[(]])]([())]()][(])))]])(][[[)[)]])[])])[)]]]])(())[]]]]])((]][()[](])[]()))[(([))[[])[[]([(]][)((]([)[]][)][)(()][]]][[)[]]([()[((]((](]([)])][[()][([[])[))([([])[]]]]]])[)]((()]()[[((](())()[(]][)[[)][][)())[]([[))]]([(()(([][()(((([[[)((((([)()][(()][]()[)]]))((([[)]()]][[[)([([[(]([[(]())([]]](]])])([((])(([[)((])[)]](])[(([)][])[])[)(()]]]()(][([]]()[]](]()[[)[)][]]([([)]([[[[(([])[([])[))[[](]][[]]))([)](]])[[)[[(][])]])((]])))()]))([))(](]]][][[(][])(](][[]])))][[[]()))[[]])())]][])([[)([))[]][((()[)))(])(()())()(]])[][)()))(]()]][[))[([))(][)((]])[](]][[)[[()(]])((([[(([[[])]])(](]][[[)]]()[)(])]][[])())][[())])]))([]()))])]]([)[)(][[([))(][[])]]]()[)[)[(([([[(][([[](()[[(]()])]([(][[([[)]))([([])][))[((][)][))(][[(])(]](]])(]][)][[[)[](](][]([[)][]))(]([])[(])](()()(()())([[([(((([][(()(]]](])[[]()[)]()[)()[))([[(()([[)[[[)([([)[)[]))])]]([[]]([()([)())[([(][[[)([)][[)[([][)]((][]])[[]])][(]]])(]]()(]]][(]][[][[](()[)][]][[[[]]])[[]]](](()[))[(([[[)([()]](([[]()])()[([(([[[)([((]([[]][[[])]((((())()()]])]]]]))]][([[])[[))]]][[][]((()[)]([)](](][][[]][((])[((([][[(()([[()][][((](([]]][([]))))])()((])(][)))(](]](([((([[(][[)[[[(]([]][])](]()]())[)(])(])]](][][()[[][(])([([[(]][()]]())([[)(]())[)[(([(]()))]]](])[]])]])()))(([([[[[(())](](](([(])(]([)[)[([]([[([)]])[[)()[([))[(]][[)[([])[)(]()(((][[])(([(()(][)[]](()()]])[[[]])[)]]]()([[[[[()][)()[][[)[([(([[]([)[[[([[]][[)))[)(]))(])()[)[[][)](]])]])()[()[[(()[(])][[)([]][(())]()[]]][((]([[(()(]])([([)()[(]()[]()[([)](([[()))]]]][)([[()[()(]][(]]((()][])]])[[))[))]([[]][(][]))())])[)(])][[[()(]](([[]()](](]]])])[](()])((](()])]]([))[]([[([[][]])(])))([)]([]()([)[[[([(]()])[[([)()]](])[(])](]())[)]])]()]])[]])[][)])])[]](])(]][)())][(]]][[)](]))]])(](][]]]([][([])(()(([)[([)((()[(]])()[(([([()[[((]()[[[[)((([]([[[])([)(][(((]]][(([][[](()()[]([)[[)[[[([()[][)))))[[([)]))])(][(]()([]))))))[)])[)[[)[)][](]([)()])]())(](][)[[[)((([[([))][])))[()([((((]())]])[][]])]())()()))[()((([([)(([[(())][]([())][()][)((][[]][][())[[)][[(]()]()()[][[[((([])])])[(]((([[[([][(((([)))(])((())]](][(][]]])([)]()]()[())[)[))](()][)[)][]][()))))[)[[])][])[(())))))[([[)[[)))[][())]))(]]()][])()]([[()[])(([](()[[(](([))[)(])]))])()(]][]()]([)[(()]][(]]]][)[])[[)]([])[)[][(])][)[)[)][[[]]([[]])(])]([[](([(])(()(][((()])([]))[)]])))()[](][)]))((]]][[]])))[[(((([[](()[]]][][[()][[(])]([)[]([[][[(]([)(([[([([()[([])((([][([)]]]()]]()()(]))]][[())])()[])]](((]]()([]))))[][)])]][](](([())[]]](]][[)])[)()([]]))](((][[([([][)([)(][])([(([)])[()()[[]([[(]]))(][(])[[)([))[)])(](([))[])([)]()))(([[)[([(][([]))))][))[]()])][][]()]])(]([[)[[[()][)][])(()()]](()([)[()][(()][[[]]][(]))[()[)([)[]()][([[(][())][()))][)[])(][((()(][])][(][[][()[)([([(][))([][]])(]]()))][[[([)]]]([[))])(](]))]][()][[](][[][([))([()[)])]))(](]][)][](([][)[)[[])][)(((()([)))[]()[)](](()[([])(((]((])[][[)))()[][]))[()[](][)[[)[[)])[]][([][]()[][)[]))(()([(]([][([([(]])(((][)]))([]])]][)])]()))]](])([([))[((])[[[[(](]](([[)]])]))[][)]([[)](]([(()]]))][((])[)])([)[]][)[][](]]])([[()]])()))[](())(][)][)()])([(]])[[((([([([(]]]((((]]([()[([)]]()]()[)]([[])[[([())))(((([[([])(]]()(([[[)][[([([[)[))(()])]))()[[]]][]([[)])])([)]()))](([(]([[(]][][()([(](([]])((]))[(][[([]])[(()][]]()()()(()[([())))](][[[)())]][)(])[](())])][)[)(]]](]))([)(](((])]]]()()[[[)]((])]))(]])]]]([[)][]]))[)](][]][[)]][((()][([])([()[())(]([])([)][[]]][]]](()[(())])])()[[][()(()()()]((()[])]([]))[(()][]([)())]))[]((([(())][(][(([)[(()])[][(][)[[[)))])()[[]])()][)[()[[)[]]))]([[([[[)]]][([([]]))))][]))(]((([[()())((])[[[[]]]])[[([(][(]()[]])[)(]([))[(])[]()[])([()]][]((([([([([(]]]])]]()]]])([[]([))([)(])))))(]]][[[[(()](][[(((])(][[)])[((()]]([])]][][))]](]([]])[[][)]))([[([[][)[[][))([)()([[[)(]([[))([])[]()()(]))()[)(((((()]])[](((((][[())[)])((]])[)(]][]][[[[)](]][])[]([))))([[)](](([[((([](])))))]()[[)())[[[))]][[]])[])(][([)[)([])][)()]([[([]][(([(][[)][)]())[[][])[([[)()[[[)])()()[](]][[][[(](])]][[)[[[))()[]]([([(]]))())]]])]))[)][](((]]]](][)(())([([[[)()](]()]((][)][)(](()[[]][([])[))[))[][(]](](]])))][()[()())]][)][[[)]])[[)])[))[][))])([()[)]()(]([[][][[][]]]]])][[)()([]](([])]()][)))]])[]()(])])([)))((()](][][)(([[(())[([(((]]((()[([(]((])(]))][)[])[](()())])](()]]]][()[]([][]]][([]][)(()(()(](](]()]()((((((([[]()][[)])])][)][[(((][)()(]))[)([)]]][))(][(())(()]([()[(]]))([])][)[[[[)))])))()[][))])[()()]()][[)([[)])(])]]][(](](([]][)()(]))[()]][]][([(][)]))]][]))])])][)())([([([(([)(([]])])][)[[(()([))[[])[((()[)[[)])(]([[)]][]]])[(][)]))(([][)[[[))([))[)()][])[)[(])][[)](]][])(][[[]](([()]]]))(]][)(][][][[])()()()[]([)]]]][)((](][]])[]))()[)]([)[[][(][())[[))])([)[]]([[[))[[[][([]]][[([([[[())]](][)[]]](][(()](]]]]))()([()[(()())][))][)])()[][]([][()]([][)](])()]]]]]()]((]))][))(])()]][]][)][)[)][[))([[[]])(]((()(]])(([[])]]](()][[](][[])))[(])((((])]]]))((((]][(][]()[[[[(()([((([[)])([[[]))[(())[[[[([)])[()[((]]]))()][([])[()(]]([))[)([()([])[)(([]())())(](([[)[)([[](([[[[[]]([[]))))()]]))([](]))]()(([]]((((]))([()))[]())])]))()][[][)[()](]]))]))()[([()[)[[[()[[[)])([[))])[)[)[)[[([])(((][]((][[]([[[((]())]))[([([))((][[]])[((]()(][])((]][[])]][)][[[[(][[((()]]([])()]]][[])])(([()][(])([[[](]]]]()][]][][(]][](](](][))[[(((])]((]((()([((]()]([)][))))]()([]))])[[[])[[[]][][]([]]])(((][]][([[[[[][((]([()][([((]]((([)[[[][(]]([[[[[)][[]](])[(()])][[)[[]()]][][)])([()])[)])[[[(][[]((]]()([)[)([[][[([[](])((([]()))]]))()[))))[)(]][]]]]]])(][[]][))[)][[][(]]((][][)((([)([))]](()([()])]()()(]))][[[[][]))[])])][]()(()](]]](])())]))(()][]]]]()[[([[]))]][)]()])(](()]][(])[]())[][][]([)[](([[(())]()()(()]([]][](()]])))]()(](][]))((]]([])])]((((([]((]])()(][][(][)][)][([([[[]([([)([[(](][]][)]]])]([]]))))]]])[]))[[))()][[[((([[()](([]]]([[(]]]([[([((]]([]](()(([)[(]())[)])))[()((])[[([](])((([[(((]([]][([([[[()([()][])][)](](][)][)(])))([]((((([))[]([)[([][([][][)(]][[[[(][)(()[)[[[[][((](]))(])[]))()]](([[])()]][([[[))[)[[)[)(([(]]][()])[[)])][(([[)([(])]]]][(([)))[([([[]][[][[)()[))]])()])))]]))[())](][])])[[[(()]](][(((][)([[(])[[((()](]][([](]]]))()))()(]))[(])]]]]()[]]](([)])[[[)[]]([))])))[)[)]]][[)()((]([()(])][[)[][][)]([)[()))][[])[]([((][(][(()[[[(]]()[(]])[()])))())](])([[[][([)])([(]])[[(()[[](]](()(]))))([(]])][([[[([[()[()[([]][())[])[([])()]])]]]])[)][][))]](][[(][))))(])]])(]()][]][][])))()[[[))]][)))[]][[](()([]()[)(]))][[((]([))[)[)(]([][[]([)(]]]]([)])[[(()))([)]([(])])([[((][])(])][(][()(([(])[][([)][))()(])[)())])))]([)][)]](()[[))])([)())[([[[(])[[]([[[]][[[]](][[)(][))([])](]((]]]])[([[[])[]()(])[[()[][[)[(](][[[([]]())[([]((()]]([[[([())[]](][)(())]]([[)[[][](][[])[(][[][[[((])][)[(()(])[)([(()))]))[(()))[[)]]])](])])[[[[)][[[[))[))))((([](][][()()))(()(]])([)]])))[)(([(]()(](]][))()))))[)())[[](]]]]()])]])][)][)[[))[(](]])((][][[([])[)]))([)))()[([][([)[[[[)]])](]](])[](())[[]([[[[]]][]]((((()])][))](())[[[(])())))(([(([))][)])(((([][([[[][))][([)()())[[[]([[]((])][]([))[[[]]][((])))()((][]([]]])]([)]([)[]])([(()]))))][][[)]([(]))[][]]]])](](][(()][()][(]])[](()()(])[])[])))][)[((]])[))))]([(((](()[]])([]([)])[]])[]()])(())(][)(](()[))))([][(])]([([[)]]))(()([]](]))]]([[)][(]])[[[))[((([))[[[)[)()][()][[([]][][[((][()]])]()]][)((]())]]]))[)([)[][))](]([](([)[([([(())(([(()[]()]((])([[[]]]](((]])()[[[(](][)))])[(])(]]()]([)[()[])](]]([[())]][([[])([[)[]()](]]()[[])()([][[))))][[][)]([([[])[(][]()][[[])(](()[)([)[[][[((][[(((]]][[[[))([([[()]])])()(]])(][)(]))])))(()[[](()]()[([[[]))()][)]([(()))()](()[(([](()[)[)(][[(]])[(([([)]]](])))]]]([[]([)[))))([)[(])]()[[)[[][)([[))])[)()))[][)])](()[)())([)))(])(((()[]([][]](])))[])[(])(()[](](]))([]([]](([])((()[[]([()()[((())()[[][()]()((([]()[)[])(([))))]))(]](](((([[[[)](]([]()[(][)[[((())((](([))[[()))([))][(][](](][][([))()]()[([([[][()[])[[)(])][]()][]()))[[])[[)[(()))]([([([[((([[([[]]())([())(]](][][[]]](])])([])[[[)(([)(])[))()[[([)[)]][]]([(([[)))])[[[)((())()]]([]))[[](((][(][))[)(])](]](][)([]))[()])([[)[([]][[[]()])((()][[[)[([(]))[(])[)([(([][])][(]([[)()]]]([)[][][](]))][])[][[])[()]((][()([(]((()][(]]]())[)](())]([[[][][([)()([(])]()]]][]((]]()])]()[[)[[()[([[[[((([[][)[](]))[)])[)[)]]])[]][([([[[()[])[())[))][[)))[])(]](()([[]([)([]([()](]]](][[)[]])[))][[]])([][][[)]])()()[]]())]]](][)[[()]([(][()]])](((]()][[)[][(]()(][([[])]]()[)]([)(]])[)](][]][][)[](][]]()))))(]][)(()()]((([]]]))[)]([])[]))([)[)[][()([([([[[[[]]())]][[[))[]))][)))))[[]]][))]([(])[[))((]()][)(][()([][[((]][[))))]])[)[)())(][])][(((][)[[()]([)]())]]))][(](]][((][)((]]((([[([(][[][)[))(])(]([[[[)(](][][[](]))[[[(()(([](([)[]]((([([])()(]][[()(]))([)(]][([([[][[[(]]])][((([)]]([[(()))[])][]())(])[)(]][()][[]](((([))(]([()](([][(([[[[[[([((([(([[(()])[[]([((])[)(]][(]][[]))[)[[])([(()([(]()]()(((]]))])]])[][](([[])[(()()[[[[[()][][))))])]]][](())((]](][())))((]][()[(]]])]))[)[]][(([)(]([]([][)[)[(])([)])[([]])))[[((](]([[[])[()]))[())]([[)][]([])[(()))])]])[)(])(([)[)[[])([)][)(][(((](][)[[]])))[((])[)[])[[(()()])[])[)]][)[[)[[([][](]))()[()([)([]]]((())([][([)[][])))(()([)])[[((]([))]))])[)[([[)(])[)())][)()(][))(][]])]))))](](()[()[[[])(())[[)()][]((((((](([(])[()[)])(]](]([))])((])()())()[](]([[][[)]])][[[()(((([)[][]][[[)(()[[(]][(([()([](][]])[[](]]()[)())])))]([[)[))(][[(]([)))[)(([]])])(]]))]([]()([[[])[((()]])()(]))]))()[][]]))[(]][[([][)](]])[]][])][[)]](([()]]][]()])()[[[[[]])([)]))())[)]()]([)][)[]]]]])))](((](()(]()([(]]))))]([)[[]())(]()[][((()()][[))))][[)])]([)[]([(()))()][(][]([())][[([)(([])[](]](]([()])])((())(([()](][][)]][]]]([(]][))]](]]((()[](()[])]([()](]()[[()]()([]][](()(]())](]((()(][][](()([(]()])])][[)][)[)(((][)[)([](]])[[][)]]()])()(]([)][(]))])(]([)](())(][][(])[][))]((((([][([][(]([][[([([)]]([(()[)[(])([[()]([)]()))]))[))][]])(])]()])(](([(()[))]]][[(([)[)]([[(([[())]([]([[)[][)[]])[((([)])())[[)[]([(]((()[([)][()[)))]]([(]([([([[)]][)(()[))]([)]([[()[][))[][)[[[([][])][)]])[]][])))](]((](([()())][)[([[[([[[)]]))])[)()[)[]]([[][[(][)][)][][)][]()))[])][(])]))([]]()[][()(((]))][][)((])[)([[)[([(]][((([([)([[(([()[])])[)]])()((()([))[]([))(((([)((]]))]()(]([))([))))]](][)((([[((]][(([[([]]])(][))()())]]))]]][[(])(])[)[()][))[(([[])[)([)[[[[))(([(]())()]][[])([(([([)[[[]])(][()[[)(])()]])[])))[([[[[][][)(]]([)])(]]]()(][)[[]]()]]))(]()[)(]][(])([(][)](([)))[][((]]])]()([)]([[()]][([((])])(](])(]]]][[]))]([[[[]])]([)]]([(((])((()(]([[[]][))(]])()[[[[[))())][][]])(]()))](]][[[)[]))]]]][)(]([(())[[()(][[(](())])))[)]])[(([)[][]]))[())[(([]]())[[[][(]()([[([)[])]()()](])[[)](][)])[)[[)])[](([(][[)]((][((][([)]]](](])]]))][(]]]([))()[[()](](()][))][([[](][[]]))[()][)(]((]))](()([)[[]])[[)[(])([(]])[[()[[[))[](])[([((])[((([[)(])][[([[]])(][])]][(])[[[]]([([)[][(([(])(](([(]([[])]](())))[[()]])()[])][](]((]))[](()()[][(]([[[))])))))()[[[[[()([))]](][[]]((())([)][](](((([)]])[([)(][[][)())()())()))[]))[)([((())()]([[[)])))](])[[))][((])[)[]((]][)[])[()([(([[)((])])((]][)([([[[([[[][(][]()[[]([)()](])((([))(][]()[[[[)[[[(([(([[([][]]])[(([[(][)([]]]])))))(()([)[(]]))(])]]]]((]]])(]((([)]([]))[([(][]]))[()))[(])[)(()[(()((]](])))()]](][[]])]]][][[][))[[]](])]]]])])]][][(]))]))[(][][((()))][([)[[(((]])])[(])]((()[[(]]))])()[)[[))]()[)[([[([][)]]])[(]()[])[)))[][([]((][([()[]]])(((((][[]([]([[)])())[([[])](]])]])((()(([[[()([]]())][))))]([[][(]]((()])[([[)]))))]]([[](()()[])])]]()(])([([)])[][([[[]]()()(([[()]]()(])[)[[([))][[()[][)([)(])))][])))[]][][())([)()[)()]))()](()][)([())()[[[((]([[[[((]]]([)))))])]][])][])[(]))[[]))[([(])]]))][([)[[(][[]([]])[])((([[[[[([[)]))))[)[)[[])(]))[)[](([[)]))[[[((]([)]([[[)()[)([[]([]][[[)(]()())])[[(])(([()(]((([[())]))[[)([)][[](][)(()[]]][))[((](()][([[)(][]]((([[)](][[((]([(]())[][]))())))][))])([(]]([)][[][]][([[(([[])])]]][](([]])]]([((((((]]((((][]][(]]]))](]]()[([(](](((((([]())[)))]([[[)[[]]][[)))[))(][](][)]([((]][[[[(]([)[(](])))[(()(](((([([][([][[([[)]([[[[)][)([)()[]()[[(]][([)[])([[[[[))]([)[]((([]()[)(()(][)([))))[))])(([[))()))[[([(][()])()]]([[][(((]()[](]]()](]][)))[([]]((])]())()()[)])))]()]([[(([()([[(()])][(])(][()[[[[))][[[[)]((]]))]][[][)[[))](([])[[(]](]())()[()]](])[]()(](]))[](][)][([((]([[)()[)][[[(])([[][))[][([()[[))]([([[]][))[(([[][()]][))))()[[[)([][([(])[(((]([])[)])[](]][[[[])((]])][))[)()(]])(([[([])[)[)(]](][][([(()]]])[[()(])[][]](][([((()])()[[()[[][[[)[(([[))([[)][(([))(](][)[](])])[([[)])][([][])(][[[(([)])([(])()]))[[([(([[()[([(]([())[[(]((((][(]()[))([[[][])][]()(])[[))(]][[[()]([))[][()([][]]((]())[([)]()])]][[()[()[]]()])[]())[])([(][[](([]])[(])))]][([[(()](]][)))]([[[([)][[]](]()])]()(()))()(][[((]][(])[)]]]])[)(][][]))][([([[][))]][[([))]][)[[]]]][[](])])()(()[)]([([))]](][]([](((()[][))())][[())])]]]()([()][[())[[[())[[([[)][[(()([[)]](]](][])[[(][)([][[)[]]()[))[]([[]([(][(((()))[([([]()])([](][))]([[[(])](((()))[[](][[])][])(])([])]([)))()][()[]]](][))))(])[[)(([))]()[[([]]((]()([])[]([)[][)([[[()(]))[]][[]))([()]])[][))][[([)[[[()]))))]]][][[()]()[)][([)[()])))]()](]([([)(]()]]))[]])[(]])(][)))[))((((][])))))(()()(([[[]][(()([][[)()]]))][(][(([(][[[[][][][])((]([()[]())])])))])[])))(])([)(][[]([][[[][]())[)[)]][(())[)[(]])][([[)[[])[[[][(](]][]])()([((]][([)()]))([][)][]]]][]]((([]([]()[(([[)[]([([[][]](])))[)((([[)(([()]([(][[))(())([[[]][[[[([())))()[])))()[[[)())))(]))]()[((][]])])]]](]][([][(][[([(])([)(([)[()[)][]][()[()(())[()()(](][)(][(][)((([(())()[][[]([[([[(]][[[))][)(([])))[[))((][][()(([[[[(])])([])])([[][[)[((]([[][][[[)]()[([()[)[)]([[[)][([]][)[])]])]))[][][[])(][[](][]([][[)[[)(()[]())](]])([((([[(([]()]()((][]()(()]])())[)])][(((()((](]])(((])]])([())][(])(()[[])(()())])[)))((]]()([())())]()(([])]([)]())[([]([)]]((][((])][[[])(([([)([[[([[](([[]]))[(][)[[)([())[]])))]((]))[[])))[)][[)[(][[([]][])[([[([([[([)]()())[(([)([([](][)(][([)[][)]]]((([)[]))[][]][()([([]()([(([([[))(([)[)[))[)])[)[](]]]((])])[]]]]))](]))([][)]]([](([](])][])[([)]]))([))[[[([[(][()](][[)]][([)]()]([](]([[)(])[][]])])(][])](([][][)])]))[])])][]()[[[()[[])(]][))](])())([([)[](())())))[([]]]][()(][[[[()))(][()(]]])]](])][[))[[[))]()[())]]]]][[][)((]][[[[)][[])[()([((((])[(]]]](]](]]](]])[[)])]()()[)[(()]](()))[()][(]])()[]])))(][)][([()[][())[[()[)([((]][[[][(])[()(([)([[])()[[)])[])](])[[)]])(((()])([)]((]]])))([]](][(]((][](][]()(]](]][)]])[((]][((]([]]](([[([[)]()()[)()]])[])][][)][])()([[)()])(])((([(([]))(])()([]])()[)[()[])([())]()[))[[][[)[(]])(][([(]))))[[)][)[)([(]()])([[[(())(()])]][()()]]](](])][[)]])[()(](])()([[[[]([()())([(])[))]]][(]((][[(([((]([[[[)[([(])[])()((())])(]([[)]()(])]([[)](]))))[[)[(]](][)[)(([[]][((](]])[(])][([(])])[[])]([(][))])[)((][])[)])(][][([[(]])()())[[[))[)[()]()]([))([)((])[((()[[(]](](][(()])][]((]](][(([])([]())](][[]][(([]((([([[)[)](([)()([))[[(])()]]([)]()]]]((([)]][]]((]]][(]()](][)(())()])]))])))(([[]](][()])(([([)()[(](][((][)([[(]]))[]]]))[()((])[)[])([](])]((]))])()](([[])[[)]][[((]])()((())[)())[]][(](][()]()(][]](((]][]][([](][(()]])[]][)[[(][](]])[)[](]())[[]]](]])]))[)[([[(]][[()](])][[[][]]]]))[([[)[(][([([())((((][)[])]])[])]][)][())([][][()[[][])(([()][]])[)([]])()))([][][])][))[(])][]])]][)[)))]]]]))[)])(]]][[]]()][]]([[())([]])[]))][()()[()([)(][(]([))])[])([()(])([)])[(](]])(]][(()(([[)]([(]([]))][([[[]]]]))(()]))(((]])(][])()]([[[]][]))]))[)[(]])(][)())(])]]()[[[)[[((()]])][((]))([(][[((([))(])[])[]])([)(([((([[[(())(](()]()]()([))[()((][)(][[[)(])[(](][]))((])([)()(][[]([]()])(][])[()(()())[[))()[)[[()(])()[)]))][((][)[[)([]))([(()(]]]]])())])](]((]))])()[[)]])[]]]()][()][())[([[))]]])]([]]()[][](])[]()][)([((](]))[[]()]](]())[]()]([)])([[][()()([)))][((]]([([[(][][([((]([()]])([(])[][))[([)([[)(]()([[[[])()(([())))]]]][((]]]()][[]()(()])(([[[]([(][)()([)[(][((()[][()[)(][((]]()](([[)(](]]])]]](][)(]])(](](][()[])]((((((]][[([)())))))[]([))(([)))))]))](([(())])]])][])[[[[()]())((]((])())]([)()][]([([()][[([))())))]()][[[](]]][]()(()[])[[)][][[]][([[)([()[()[])])])(((]])]])()[)()][]([])[))]))(([[]][]([)))((]()]]()]((([([()(([])()()([[]([)(((()][[((()([((]((]()(([)([])[)()(][)()(][][)[(()]])([)))[([(]()[]])([())()])]))]]]][](([()[(][[(([][)])[]]((]]](([)[[[])[(([])][)[]())[[]](()[()][[)]))[))(]]))])]))(])[](][())()(([[][[(]]]][]])][)((()]]()])([[(([()]]))]))[)())()([)]()]]][)))]][]]()](([[]()[]]))]]](][[]][]]]([)([[((]))(][((][[][))[[)(]][][][)](((((]]])](])([))([)])([(](][)])(([](([]([)[()[)])[((])[)](]()][[)(([[[[(]]]]((]][([])(([((((])[[))(]))(]]))[)[]](])]([)]]]])([[)(])([[)[))](][)]]())[]][(()[][()(]([)()([]][(()[))([(()[)))[[)[[[(]]([]][][]]((([]()[]([)(]]()][)[][[[]([)[[)[)[([[]]](]]])))[)[[([])[][([]((([([])[[([[([[])][([(]([))]]][()])()([[]]])[()(])][()[))[(()][]()])[)])(()](]]([)()([[[[()[][()([[))])][]))[))[[[()]((]]))[([([([[][][](()()](([))[]([)[))]([[][[](])((][))])[[]](])))[([[]]))((()[])[)(][([][)[]))[])((][])][[][][[)][[[)[[][)]])]][]]))]]()]](])][[](])(]]))][[(([[[[](][]]))))[[)(([()]((]]))))])(])))))]]([]()((]]][[)))][][(][[)]]))()])([(]))[[(()[])](])][)((])()][)()[](])]((([(](([)([)[]][))[]])(()[))[))()))()[))[([][(][)[[)[)(()]])[((([]][[())]])[]((](]))[)][()[[)()((([][]()))(])())))]][)))])[[((((((])))()[[()][]))[(]]([]()]))(()(()(][([()[()[()[(]]([)(([](][)()(((](])])[]]]](()])([]]])[(])[[[])][][(([(])[)[[([][())[]])])[([][[]())()[)(()[)(]())[]]()([]][]([)[)))[)]([)(([()()())[[))[)[)([[](]]))][][()[)])[(](])())())(])()[((]([((](((()(]])])([(])))()]())][[((][[][[[))[))))(]]]](((]][(([[)])(((([([()]([))())][](](]]]([][())))([)([[](((((]](()[())][])([])[[()([[](][)(((]]()]]](()](]()]()([]][[(]))[[)((][(]])[]())]))()[)([(]((]]))]]][)]]([])][[[[)([[[])]([(([])][()([[([(([)[)[(()[(((][)()])])))[]])]]()[])))[())](])])(()]]](]()]()(][[()([()(]()][[))]]([([][)[][[[][[)[)]](][[]))[))(]))])]]()])))[)[[([])][([)()()[][()]][[([)(((()[(())([)[())[[)])(][[()]()(]()(][[(][(][][])(][[)][(())][]])][([[[)]]()([)]](([[[[[[[[](][)[])[[([](([[]][[()([][[[))]](([))][)(]][(]()[])][[(]))[(([[)(()([)([](([()])][[)()((()])()]()])))(](])(]((()(]([][)]]]([()[[(()(][[()]((][([[)(]]()[[][)]([)()[[](]))[[()([[)][[[])((()][][)(]([]())[(][()[([]]]]])][]]]])))[)))]()](]()()[[]][())[)()])[()[(())[(])()((][)(([()([)[)[(]((])())]][[[([][][)))[]))[(])]([[)]))[[)(([[())](](([]][(]]((](][([[()()([)][)]((][[)[()(])](])([](][()]((]])[(([](](()))]([]]([)])[(()[])(]()](]))))([]([)()([](])[((]((][[[)([](])]([)([](()([]()[)[)[[(])[](])[)]((([[[)))[)[]])(]))[()])(]]()(]]][[[[[]([)()][)[(])(((])((])])((]]([](]([[(]]((()[]][[[((][))]([])[([[[())))[[[)[]])([)])((()([])]][][))(]])()][([][[]([[[(][([]]()([](]]]])][(]([](([()]][(][)]](])]](][]])(][]]]](([](]])())))]][(]()(]]])((()(]([(]([[(()(()[)]()[[][)]((][]()[[]([))]]]]())]])][((([)([)](]([[[(()[][[)([[])(])])])][(()]((]]([[()])))](()])([()]])([(]]))()][]]][]](])([)[))(()]))[)()](([(]][])])([]])[)())([]))([(][(]([()[[[[))])(()[()(()(()[())]())([]])([][((][)([][)()((((((]((])])][)[[)]))]))()))]][[[])))(]([[)([]([][[((]]]([()]))([))()[[)(]]][)()(()([[]))[(((((]()]()))([([][([]))]][)[))()))))[[)((][][[[[[)))[)])[(][[(((]))][)])]))[[)(()((])(((][([())]((([()(])[)[)(][)[[(][[[([(]])[(][[]))[))))((]((]))]()))[(][)]((([[]((())]([[())()))((][)][[](]]))([()])][[)([[(())(]][))(](](((()())[)))())([)))[()]]))[[][(()[(])]]])())]])]]((()(()()()(]][]]((](((](]][[[[[[(][]][([[(][))(][(())[]]])(([))])]([[))(]](][[(][]()(]](])(])[[)[(]][())))[([]()))))]])[([)]][](][()]()[)[(([[))])]]))((](]([)())(]))])]])])[(][[]])()][[])[])])(]))]])][[]]([)[(()((])[]]]])())[([([()((([()[()[][)((()][][]([])[(([([[(])([(][][()()((]([))[([)]])]([[()])(][](][][])[](][)[](][)]]])[]]][(()](][()[](])())[]([)[)]]((]]((][([)]()))[)[]]]([][](([[(()([)[[(]])]((((([[][][](((]([))]]()[)][([][(])]]]]]()(((()](]][[])()]()([([]]])])()](](][)][)]])([[)[)[])]]])[[][[])([](([])[)[][][[[])((])))])([)))([[]))]]()([[)[[(][[)[][([)))[])))(]])(]()[[(](][((])([(]([([](])]())])[)()()]](][])[[[[[))[[)][[]][)]]([]([]])([)([])(])[(()))))))[)]([()))][]]))))([[[((]](]((]()(]][([[(])((]][]]]]))((()[((])([][])]][[[](()))]()][(([]())(](((]]))][[([][([)))()(([)[([[]](([()[))](][[([[[()))[)][]))]()[][[[)][[)()[)[)[[)[[)[)))]](][([)([)[[]](((([((]([((()])[[[[([([[]]())]([)[)][[(])()(()](](()()(](]([[([)]])(])][)[][()[([]]()][)())][(][]])[)[))])](()((][)(][()(([))([()][])]]()()])[))])(][]))](][]([][[([][]([((])(]())](([)]][][[[)[]]][))))(]][[[[)])))[])][[)[[[]]]][))))())[(([])([]])][][([)])]]((([]([[)])(][)[]])(([([](()[[(](][()[(][(])][)]([(([[])]]([][()))[[()]]]]](]]][[)([(((()[[[(])(((]))[)([)][[])()](]](((]][])[)[([[])][]))((]))(()]]]])]])][)[[((([[)])[([[[((()](()[)[][][)()(](())[]])()()[()(())[])](](])[]]))(((])]()))](][[(()[]][)]]()][)]]][([[][[)[)[[[)[][)][(](](()]])(])(][((([])(]([[[[][)])[(()[)))][]([((][][]([[)([[[](]]][])[())[[][[)()])][](]([([)][[)]][)(([[)]][])(]((([[))])([()]])(][]]]][[[[][])(])((())([]([]([)(](()]]](()(([)(([]()]]](]](([][][])[[](]))(]]([[][(())()]][(])]][[))[[[(][]]((](]((])[(][])])[](]]()()]])[[]))[)()[]([)[[[])(([])[(([([[)[[][]())([([[[]](((([)((][]([((])]][[])[)))(][]]][[(])()]][)])]]()))[((](()(])(]])][)(()(])[((]](]()]()))[)[([]]()()(]][([[][[((][[([)()[])]]())([]]()[()](]]]((((])((]][)([[[]][]](])]]([[)(][)[)))))[(]]([)((](([)(]()()(][]([)([][)](]([[)[[](][][)]([([()]([[[]](])[[()[[)))(]((]([[())][][]][[][]]()]]]](][](])[([)((([([[)])]]([[([][)()[[))([]([([[))()]]([])]])(])[)()]]])(](]]))][](([(()()))])[]]())]()]()[[)[((]]][))]][()[]))()[]])[[]])[))[)[[()[[([][([]()([[([)][[())])][[()])])]](((][])(][((()][()[))()][](]))())((](()()[[[((()]](([])))(([]][([[[)((][]((]()[]]))))[])(](])((()[))[][()[]))[()((()]]]])])[])])]]](()()()(]]](((((][[([[((()((([(()[][[(])]]()[])]))()[[([)])(([)[[[[[()[)]))()[()(([()[]([([))()[]]]()][)[[)](][))[([])])[(()]([][(]()][))[[(]([(())(]]]](]](])]])][))[[[)[[]((]])()[]]())([))]])[]([])]]()]))[])())]()))]))[([([[[[)]](](]()]]([]][](([[][())]]([([]][[[)(([[]]()]([][()][]]([()[))(()]))[))([)(]())(][]()]])(][])))[[)[([]][]])][([)[]]([)[][[))])))][)[([[[[[][[][(())])())][])(([))[])([)]((]()]))((])([[[]))([[[[([])][](()()((](]])][)[)][]([])(])((]))])(])()))[[))][])]])[])([()([)))))[][())]]((](]))[]])([]]]([([)))](()](((])]((]][()()[)))))[(()[)[([[)(]][(]]]()](((]]][)[]()))((([(]]]((()))]))([[([[)]][]()())[][][]()(()()))])])]]]]](()[[)(([](]]])][][][)][((][)(]][]]][])(((]](([([[[](][(]()))))([]))[]])[[)(][][](])]())[[[(][))[)(][)][())(((]][)[[][][)(](])()[[))[(())[(]))[(][(]][[)(])][[]([[)))))(][)[)[(]]()])((())[(][)[[(((((][)])(][]]](][][])]](][(][([)[)][(]]))[][()()]][)])][)[[]()())))])[(()]][()])](([)([)]](])[[)]((([](][(]([]])]]](])))]](])[([)[)[([([(]][))(][[(](])[][)][(]]][[))()(]([](())][][]((()(()))][)([([()[()([(([])[)]()))()](]](]][(]]]))))([[][))[])(((]([[)[])([][)[[][([)]]))[[()[)[))()[)]))([)[[][([)()(]))(]][[[(((]])[)([))([)(]])))]((]])[])[([[[(]([[[([)[)])]([[[)]()]()[(]]])()([)[))[))[((]))[])([[])[]()])])[)([)[([[([)]()))((][])][]((])[(]]((]](][)(][[(]([(()()[([[(](([(]][][](([])[([)))(])(]])([))[])]]][[)(](]([)()(]](([(]][[))()[[[][)]][(](][([[(()]([)]][])()[()([(])[)([)(([(])((((][[(())(([])()(]([[]][)))[)([(][)((]]]]([]])[[]((]]]]([](([]))(]]]((()(([)[))][[))(()))]]())])([)]))())(])][[[(]()[([)]())[(()[)])))())]))))])(](]))(][(]]()][)])[[[[]]]((]]]])(([)[)]](][]]](](([([][][([]([]]()][]]([))]][((()]([(]]]()([([[))[[[])]])([)(([[])((()[([[((()][[))[([)][][])()])))[()()[]]][)[[)](()([([][()([[[])])[[([][((]]])[)(]([[)(([[[][()([[)[))()([(([))())))()]])[(([)[)([(])]]][)]([()[][([[)[][)[([()]])][[[[(([][(])()]](([)([)][)[][])]()[())]((()][][][)()[][(](]))([)]())(])(]](()[)[())][])[(]])(((])[[)][(][)(]]((][)()])[])(]]][]()()([)))](([[)([[[()]])])]((][([]][[(([]))](]))[](][)]))])[()[(][]([(((])(](()(]()])](][[(][)](]](][]()((()(()]][([[[(([]]][]([[([](()[][][))[[((][())()(([[[[)[][]((]])((()][][)[[)[[(()()[])][))]]([]()[]]([)]]][)([([[[[][]((()((([(])](]]]][([)[)(()[)(]]][)))][()))]()[)[(]](])((([)[()]([[([([])][()(][[([()[()][[]]]])][(([)))))[([)(]])[])][][))())(]][(([]()]])[](([[)][)()]])[])([)(][][)[]]()()])((](()[))])]((]]()()])[[](]](()))([][[)[))]))))[])([([]([)[)()]()([[[[](()(](][[([))]((](][]](])]()[(]]))][[((][][([(]][)])])()[(([(()[((]]][(((]])()))(([)][)]((([(]()]])][)))))]))()([((][[)]][(]][()])[[[)[[][)[()(])[[]][()[[)]])[([])[[)][[[][()[)((][)))))([(([([]()][]((])[(](((]((](][()()(([))]([[)[]()(([][]()]])((])]][]]](][]))((]]][]]])]]))((][[))()(]()[()(])([(]]((](]]))()](])([([)(())(][[(])[]()[)()[))[])(]))(]())])[([)[([[][(]][[[)[[][)[[[][](([(([[])][((([]()([[[]()[])()()]((](][(((])][)[(])]]([)]())]][)]((])]))][[[][])[()(]]][[[[[[[([)(]])[]]](][]()(][]))[((][[][(](][[[](][[)[)[][[(]]]((])()]][([)][[))]]([(])][([])(()[([[([][](([()()[]][[()][)](()[]))(][[]))[([])]([](])])[])[((](([[)]]])[)()))()])[[(])))]))])([)])[]][[()[[((()][[([[[[[][[)])]]]([]]]([()])]([([(]]([[[))[])(([]])((]))[[)()((]([[]()[([)((((][))[[(]((])(][[)()([))((([([())[]((][[(()][((()[(()]))[)[((((((((()(()](]))(([(])]](()[)[][[[])[[)(([))]](][](]]]()([]]]])](]])(])[[]]((((])((([)(([[[)]]((([[[(][))(((([])([[][[(([][))])[))[][(])[)[(([)[([][[)]([[[[[[](((])))())()([)(()()[[(]]))[)[)]))[])[[()[((](]](](()[])))(](()[(][[[[][]())[]]([)]]](]()]]][((]([[))[)((]]([[[[]][)[[][[][(]])((]))[))[])(((()(([[((][[)]()])[[)]]))])][]][[([[(][][[])((]([(((])[)]][([)))()((]]][)[[])([](([](([]()())][)())])(()]]](][([(])[))[]))))((()([]([[[(]])[([)(([(()[[]]]][][[))])()](([[])]())](]()][)])(([]][[()])])([(((])(([[(()])[(())()[)[))]))][(([][[[))())[(]))[[())]([)[](((([))[[()[][)[((][]]]()[((()])[][[)[))[[[(][]([(](]][)[))[]][(]]))(])([([[](]((]()[]())]])]))[)])[[]])(][]]]][(([]][]((()]()(]([)])])]]]()[()[((](][[][]])[)](()[)(][)(([)(([[[]([([)[)[))])]][))[[]](])([(]]][][]([)([])()([()((][)[][[][)[][)[][]]()[([))[))]]()([)(]))[][(]][)([])[[([[](]([(][]()[()([[(])](][[)]([)([)](][())()()](]([[())))]((())[][(][([([()([)))]][)[))(][([[(])])(][))][](][)]]]]([)[])])]](]](][[)]](](([](([[[)](](]][[))[)[(([)]))(][])[)]((][))])[)))([[))((([[]()((()((([()[[]())[[()[])[[)[((]())[))))][]))([(()[])][([[))[[]][](])))]]([](([(]((()[[[[)]])]]]][)()[][([(]())])[[[])][]()([))[)]][(()(()]]))([[))[))[[)])([()]]])]([[)()((])])][][)])(][[])]]][]]])[[[)][)(])]((][()[])))][(])(((]))])][]]()]]([()][[[(]([)()][)((][)()[)))[[(](][(()[]])[)()[])((])[]]()(]]((([]())([[[)[)[][](]))[)[]]][[[))][]([])(](]]][])][(())[)[])[]((((])])()[(]](][)([]]())((][)[])()())][)(][)[]][)()[(]([])]]][(][(]())[[)(]([]([()]]])]]((([[)]]((()(([[)[)[((]]]()][([[)())))[](])[))][]])))(](][[[[][])]((]())(]())([(()]([[]([(([]][][)()])((]))]()(([][()]](]]((()(())[)])[[))()][(([])(([](]))([([(])[)])])((()]]]))(([])][[[[([)]())(]))])(])]][(])))])](][[)(()[()()]][()[][[]())[)([])[((([[)[])((]]]]))[)())([[[)))[(](]()[]([])))]([])[)((])))))[))][)([)[()[]])[())[(((()(])[[(])(]]())[)))())([)[[())(]]][])[(()))([][)]())([)([([)]([]((()]()((](](]]])(](]](]][[[]]]]][())])[[(([([)(]][()[][)](]])][((])])]()))[]])](()[)())()(])](]]]]((())[))[[](())[]]((]]][](]))]]][)([)[(]([[())()][[(([)[][(](()[][)([()[(([)()(([]()()(])([][()))([[)[[(])[()([[([)]]()[](][](](])))))])(][)[(([)))[)[))()](][((([]((((([[()]]([))[([)[])][(][([))])(()))]()])(]][()()([)][[)[[))][[((])([][)((())]([][(((([][)([))[[)()))((](()][(()()()[][((])][][[)[]()][][)])()[[((][)(([[))][])[(]][]((()[[()()[[((])[](]]](])([[))])]][))][((()(]][)([()[](](([(]([[)((((][[])](](](((][()[))[])](][]))[(]]])][[(]]]]((())(](())))][()]()][[(()]()))(([([])([[)]]()[][]][[][([(([[([[[([)))](]][)))))[)]()[(()[](([)]]([[])[([[]][([[[)])[)(())[[[(])]([((]]]([)[([[([()([]()()]([[][([]][]](](]([([](([[)))]]]([([()))[][)]()((](][[[)[))])((((()]()))))[])](](()][]))[)[))()[]())]][)])][[([()][)()(((([)[[])][(([[()[)((()[()([]]()[([][[)[))])(()(((([])[)]])[])(([)))[](])](()][[][[])[))()][(()[()()[(()[[([(()((][][])()[]])([])]][[[]]([(()[([[]]]((][])()))]]])]]])]])]])[]())(([))])])]]()(()]())]([[)))][[[[)([][]](()])[)[((())(](](()())()[()()])[((([]((([](])((]]]]([]())[[)]))[))(([)]))(]()[])[[[[]][)(]]((]((]()(][((()(]([)](]])()[[(])[[)]][])(()()((()][[[([))[([)[[[)]([]]])[)](()]((])[[)]]]())[)[[)()))]])()](([()())])])([[[))(]([[((]))][]]))))()(]))))(]))][[())[]])](()[[[]]]()))[())()(([]]]]([(((())([]](]]][)[))[]([[]]](([()[([())([[())))(((]]]))[([())][][[]](()[[)]))([([[[[)]]((((]([])]])([]][()[)]]()[)[]()]][([))[))()([(])))[()][]]])[][([])([(]](((([])[][(([[)])]]))]][())()[(]])[])])([(((])[]][][)))((]]([())]]]]])()))()][))[))]((])))()][[[))[(()))[[[(()[]][((]][)[)[([]()(([([)(]([)[((][[)([](([](]](][((()])]([(()))[]][)(([][[(]()([))]()[)[[](()][[))[])[[]])]]]]((([])[][))][)(][]()(])][[[([))](][(])[)((())[[[])]][)[)][[)(][][[)[(()][]()[)])()))][]][])]([)([(]]]]([[))(])][[())([)][]]([[)([(])(()[()(([))[)(()([)))(])][[(]))))()[[)[[([[]]))(]()())]([)(((](()]][[()([[([(]([([[)[()(](([(()][]()]][])))(((])]((()[[](((())]()]])[)(])[()[)[()(]()[(([[()()(]]([(][)()()[]])(]])[)((])][([)))]])][()](]([])[[][]]((()()([))[]([()))[))(())[[[))])())((((((()[(](()]([[[])([[)()][)](]()[)(()((])])](([)())))(]][()](]]([[()[)()(][(()(]()[][)([])[((((][)[[()[)[)(]()))(])[))(]]()](][])])))(])(]([[()[(]]][[[)((])])])(([([)[([)[)()(][])]))()]][[))(()]])]())][)][[([[]]])[][[)(()(]]][([(](()[()[(([)(((((][())])(])][]))[)(](((])(]([(][)][)[()]][]]))][))][(([))[[()[([))]]]([](([]][[))[)]](]]])([))[)][()])]](]]][]([]](]]]))(]([]][()))([)](])][[((]]])))[[))[(]()])(()][]())[)((()()]([]]([(]()](([())[]][)())[[]][((])]]]([(])[)()]())[(([()][])])])))[()]])[)([[)][)])[)(]][[]]))[)(()(())((])[)(((][])](])()[]])(]](([[(([[()[][[[]]((]()(])((([))(](([[]])[(])[][)(([])(]((])))]([]([([]]([]][](()]](])[]([][]]]](()(((((][](]](][(](())[]))]]](][()](])]]]])])[[])(][]([])(]((])][[)]()[][[[]([)](()())()(]])[[[[()((([[)(]))])]]][[([[)(([()][[]]))]])([][([)(([](((](]])[]]]][])(]([[([(]]))))[([)[[)(((](]()][))))(])](]()()])[)(])]])(()[)]]]])]([])])]((()[[)[())([[])[]))[]()[)())[)([()[[](]()]]]]))](())](]((])])])[))[]]])(]][][())]][[)]]]]()]([(]]())])([)](([][()]((]]([((][())]))((]()[[))][(]][))()]([)(](())]([((](()[]]]([[)][]][))[[([]][)]([))[]]))([[(])[][]]]]]))]())][((]]([(](([()((][)([]][([[[(()[)([]))])(])[][([])]](][)[(([([))]])([[))[))((([)])[[]()))([[[]([)[][()]())])((][))(()))]([()[([][((([])[)()](([](])(])])[]]])(]([)](()([(()[)[(]]][()](])[]])()[))[][()[))](][])][()([))[[)[[[)))(])[[]](]]]]]]](()(][)()]]])()]()])]()[](](])[([])()]][))(]((]()(]]]])[[(]]])][)(())))[])](([()]]](]][[][))(([))[[](]))))[)(([)())[((([](([(][[)(]([[[(()(([])[)([)[()([][])()[]]]))]))]])[)[((](([()([([()](])[([([)])(](]]((([))][[[)()[][](([[](][][[][)])(]([][(((((([([)([(([))]()[[[])(])()[)))[))])())[)([[[)][[(])(](])[]]()](([[][[][[]]((()][[()[([)[[][((]]]))[[[[[)]([((())[)[)][)([))][)](][]]]])[))[)))[[])][](][[](]((([)[)()[[)[)))]][[))[[(](())[]()))([))([])(]](([])[[()][[)[(])[[(])([[(][][)(()]]]]]]()[())))[[[)[]][](())]((([(((][)[[)([))[[)]])][])()]))]))((()([]])))[[([((]((]]]([][]()([)[)(]][])))(][]([[[)()][[([][)]][([()[(([][]])]))])][[[][][[([()(]([))[(()[][())[([[[(](]]]](][)(()[(((]]()(])[]([[)((]()[]][((()]))()](]]]]([([([[[([[(([)([)))))])[]())[)()[)[(([([[[()][()([)[(]][(]([()))(][)))([([[))]((([)]((])[((]]]][()))))[(][[[)[()[](])](([][[[(([()]((](]]()()))([]([((][]][(([[[)(])([)))]([][)()[](]]][][]])([][))]())[())])[))[[(]][])]])[[([)()[](])][]]]((([[]()((([][)])[](]()[(((()]([(](()](]))][)(((][[()[])([[)(((])))))((]]][)[(]()[]])[()(())([[[([[]])]]))([()())([)[)[][[[(]](]][[((]))][]]][((([))]][)()([(()(](][())]]]][()[][[[)](]][(([[])(](()[([]((][[[)[[[([]](([)]]][)[[([([]))))[]([))()[[()[[]()[][][[)][(][))(])[((]))(((([)]([)((]][])[][((((([()[[)]]())((]](]][][)((][((])][([[)[([)])[)[[]])())][)([(][))(]((((]][])[())]](([([(])([)]()]([(()()][(((]]]]((([][[[][)[[)[)]]](]()(]()[[(]])]](])]((]]()([[[(((][][)][))])(]])((](]]][))[[(]]))][]]])])]]([[)))[([)])))[]([(]][[[])]]])())]]][()])((][()((([]))[(]]]))((]([][[)])[)[]]))][](]()[)[[()(]](([]((([[])]](()][)(]([)(()([)()()[[((]][]][)()[[)([[])(]]()[][([)][)(]][))[]])]((]((()]][()(]()(](](][()[())((])(]]([)()[))][()([[]()[][)]([]])]([)]]])([(]))[())([)))])[])([))[][())(])][(()]][](])])]]()[[[]][(]))]]]][()][])[[]))]()[)()](])()]()]()][([(](()()())[[[[[[[)([(][])]]((())][(][[[([)](][))[](][[[[))[)(]()[[))(][]))(([])))[][])][([](((])([](][)[[][()([()((])])]([)]()(])](()])([[)[[][()[[](]]))]())[][(([[(](]))[(])[(()][((])[((]))(]]()))((])[))([(()][(]([([(([([][](([[)([[[[[[][[]](([][]])(]))])[(][[(])[)[](][[][()((][()]()(](]()(()[)[([[)([])][([()[][)]]())][)))(())))[[)(([)]]]]])[[(()))[[[([)])]](](())]](]]])[[)(([))[[()([)]((([(([)(]]])))([())[(]][(]]]][(][)((])[]]()[)])([)]][()[[])((](((])]])(][[[]]]([([(][()[(((([[])])[[())[))(])[)((](][[])]])))]())[]()))[[)](()[)[[])]][[)]](()(](])((]))][)]([([]]]))([[]((([][])([[]([)[([[)]](()[]][](()[][[[)][[)(])))(][)[)[(([[))][)()()](()])[[[[()))[[])](](]))][]][(])[([[((])])]])[(([([[(]]([(]([]]([][[[]]][])))(()(](][(([)]))](()([)([()()])][[)[)][()))[]]][][)))[[([][](([)[([)][)[()]]][])][](][)]]())[))]))])[())(])()[]]])][)[([)[)][)[)](])()(](]([[[])[([((]]]([(()]([(()()][((][[[(()])[[)])]][][()])()))[[][)(((](][(][(]][]])[([))[)([)][((](()][([(])([[[[](]])](]])([]))()[]]()))[]([[[)(]()[()(])][[([[)[](])[([)[]([]((([((()())(]](])))])))))[]]((([)([[[[]])]]((]]]][]])[[[])][(][[)[[][]])]])[)](()[(]][[))(][(](]][((]](])))[[)((][[][)[]])][)))))]](][[(]])((]](]([([]]]))[]]))([())[(])([]]][)[)[))()())]]]([][[(([[[[](]]([[([[]])(]][(()()([)))[[[(][])))[(]][)[)([)[]](][[]][][][])[][]](]])(][([()([)]])(][[[[])]()(]]](][[][](]][](]]()((([(](][]][]]))])[[))))]][)[)))))(()]((][[[)[)[([[[]]])[]]))])[]((]()])]]]])]((]]([)[[)]((]])]]])(]][)[[](]()()([]()[])[[())]([]][([(][))(())[()((]))]))[(]]][[[][(][[(](()[[)(])(][)()])[][][][)(]])))][]])([()][([])[()()([]][)[)]])([)][]](]])[))()]()(()((]]](][[][)((]()][())[(])]]))])]]][[()(]])]))][)(][)(]()]))][()]][)([)])[][()))[)))([([]]([]][([)]]]]()](([(]]][)()])(])[])))])(())[((]]]))][((](()]))]]][())]]]([()][[)[][)[((]]())(])(([]())[][][)[(][)()((()(([[())([())))(([][[))([(([([[([[][(]])[([])[([([[))[[][)()))])[())([((][[[(][]]([[]]())))((([)(()]])][)]([)[((][])(][)]([[])[(])]([]]]](([]])()[)][[))][)]([[)[([(]((([][([(([[)][[)[])[(([]][][)(]]][(])])()[())]]())])[)))[))][)[)(]]([)[([[))]][()))])]))(())[([[))][)((]][)[[]])](((()((]]())[()[]]((())[[)(()][]][)[]]()([][[]((])[[()][([()[](]][)[][)(([(])])([][[((]]([[[])[][[([]]([()[(])[]))())[)()][][]))(]])][[)[))([[((][[[(((][))()][())])(()(][)[(]())()[[]][]([[[((([)[(][[)[[)][)]()()[)))[])()))()]()(([[))[)(]][]]())[([]))(([[[])()[[)())[[(([])]()])[]([[)[]]([[))([][](]]))(([])[(])[))(]]]]][)](]]][(])[(][)])[[)]()[)]))[((([]()(]]]([)][[](([[))]([)((](()((])[(]()([([[())])((]])[[][])[[[]()[)])][)]][([](]())])(()(])([](][)[()))]([][))[)))(]]][(]([[(([[][](((])]([[[((()[)](([[((])(((]))](](([))])[)][))[[][((())])[()])])]])]][(]])])[(])]])[)(([[]]))[)[]))[(()()()()])))]))((])[]]))(][()(][][()(]((([)(()(]())(](])][)[(()[()(][])]()]((])[]([))))]](]]()([[))[][)[[][[][](][])[[]]]](](([)))][))[])][)][())[()]]([)[[]][()][)(](])]()(]]]))])([]())][]][[([]([([[(((])([)((]((])((][(())[(])()()))][([])([[[[((])]([[())][)(([(][(((]())[)(][(([](((]]]))])([[][[)(])))[[([)[(([[(]([)([)]()[(]]]]([)]]]])))())][[(()[(]([](]]([]]((]]([[)(]]([]))][)[[]))[][(]]][]([][[)(][][]]])(()(])))]((]((][)](]))(()))][]])([(][(](][))))[(()][]))[])[((]](])))))](]](][](()[)(])(])]()[(([[()(]([]([)[][]()[[)[((([((()(([)([](]]]))(]])([])]()])([](])((])[][[[)))])[[]])]])[[))([](])](([([[))[[(([]])[([(]])(]()]([)][[)]]([[]([)]([[([))()((()(][]]([()[)(](([()[([[]([[[[]()[]]]])][[(([][[[])(())))(][[)[)(([])[][)]])([][])))][[[)(()[)))(][([()[]([[]((]([[[((]]]()(]([][[)]()([((]][](][([][)(]])()(][][()[)(()[)([[)))))(])]][[])[])[[[]]([][[[()(][()])([])([])([[)])())][[[)]]()])][((([)()[]())][[][)([)[[(()(((]][[)]((([])([))([)[)[)[](][)[]([))[)])[)))][[()((]([([)()[(([[)](([]([(](([)[([[(]))([(([(])(]](]))[([)]]])([)(]()[[)[)])(([(]())[]][[[))(])]))])([[)]))[])]]()]([([)(([)((]][()(]])(([[([([[)[()((][(][([][)))])][())]][]]()])[)]]([[()())(([][[)))[]](]([)][))))][(](]]]]])][[](](][()(]]])]])))([)(]])[)[(()]])][][][]([)([]])])[(]]())][](](]]()[][[[[[[()][)))]))(])]]][(]))[))(([)())([)[]((][]]]([]][([]])([)[)][(([)][)(][[)]])]]()[[])[)))(]]]())(([()]]][[)](][)))[[[([]([(()(])[[((([))]()()([))]]([))[[(](]]])([]())((])[[])[]]])[())]([][[((][[[))((])[([[[](]]]([]()[(][][)()])][)(])[))]))][))([))([]))]]]]]]))]]][[[)][)(](])][][]))[([)[[]]())]((()()()]()[[[[))()])[]])]](]()[[])]([(())[(([)[[((]][[([)[[)(])(]))(])](()][))(][]([)[)]))[)([[][))[])]][)[()[]]](]))[)[])[[(())(][[[[[[)[))[(]]][(][[(]()(](])]))[[[][(]])(]())((]]]))[])]])([[)[((]]](()])[([)[[[]([([][))]([](()))]](()](()))[(()[[(]][[)((](()])[)]][(([[(]])[))][(](](([]]]][(])(]))][][()()(([[()[(]]))])((](])(([)][[([)[]()])()])[)])(][()][[(][])[(]]))([]))(()([)()()][[))([[)]][))(])]))]([][[(([[])(([(]](()[([()(][[(][][])((]((][](]))))([])[(]][][))))])]((]]])])]))[)(()))[]([)))]])[]])))(]]([([(][))([))[()][][([())))(](((([[[()]])][]]((([())[]()]][[([)][([())[]](]))([()])](((]([(()(((()(][]]]()[)[][[)[)(](]]()([))]))](][)[[)(][]]]](])[()][([[[([][[][[([(](()([(])([()](][)((()(]]][]][]([[[))[(][[([[]))][[()([[)]]()))][)][([(((()[[](]))]]([])((]()(]][[)]]([)(]][())(((]])])(][))))]())()[)[))[([]][([(])]][]()][))]))[[(([[])(])[[[(()])[(]]()[[]()()[)[]])())][)[(][[[)]((][[)])[()[[]](][)(]](]][[)[]]](([])[)()())[)))][]((([[)[)[))][)[)())[)[[])])[[)))](]()(([([[(]](]))])()[()([[[]((](]]([[[]([[][[))))([([]()(((]]][)([])([)[()))))((([]([])[())][)(])(([)]]([(([[[]()[[][](][)])[[(][((([][[]()([([)[[))][))((]))))([)))(]][[)[])][(]))]()))())[)]](]]]][])(])]](](])[][)[)([([](][](([[))][)[))()))[]([(]][)](()]])(]([(](])((][[])((])[[(])))[])[]())[]([[[]]))][)([])([()[]([[()[)()](][))[)][])[)(][[]]()]])[[)([)(]]()[))[)]))[[[[]]][]()))()[((()([])][)[[][[]](([][[())]])((]][((()(])(](([(([(([[])(]][())[)[([[[([[)[)[))]])([[)[][)[[))[()[(])(()]())[))])([])[]())[[(]()(][)[))])[)(](]][][))]()([])[]])[((]]()]([))[][))]((]][[)[)[][)))[(][]]]]])]())])[((][])]][()(])]][))(])])([([(]]]][)]]))]))[](][)][]([][[([)()[([([))[)]))](()]]]([]]]][[[[)[]]](])[[][(]][[(())()(](][[))(]][)]((])((()[][)()[[]()([[()[[)]]()(([][)()[)](][[]([][))]))()[)))(()[((](]()[()[)[(([()([(])[()))()][)]])[(]([][()[[[[(()]()()(][]((])(())[([)(]])())([[)][)])()]([](]([]([()[][[](](]]][[][]])(([]][[([([([][]][]()[)())))((([][[)((())[)]()]]())[(](]([[)()]])][()([()]]]())]())([)])([[[)]))[)(([])][[][]([[)[[]()]](][([(()[)[])])]]]([[[))(][(][][]]())))]([[[[)][])]))(][]]][[))[[[[)]))](][][)])(()()((]()(][[([(])[()])(])][)(((](]()][(][[()[[)]([()(()([([[(])])())[)][(][))()])[([](])]([)[))))))([]([][[()[(()()[(([]))]([)]([([(][)[)]]()](]]]]]))]))[[[][()]]][)[[(()[()[()[)([)[]([[([(][((()(]](])][]](()(())])(]([[][)())]([[)())))()(]]([(])[))(([(](([)[]])((]))][])[[)(][))(]])][[)]]])][())()[(([]]])(][)]]]]())]([[[)[)](())]](])[])])]()[]][)([)][()[(((([[)([])[)[)((())(([)(])[))]][()]]([((]](]))][(](()[[[(])(((]][[[][]][))[[][()])()][])][])[[)()([[](]][)[(])][(](]())]()[[]((]]])([(([[)(([[)][[())((](]][[()[]]([([][[(])()))](([](((]](][([())[))[()])))]()[]]((]][[()()))[))))))(([)])(][[[([)][][)]([[[[)))]]](])(][[)))())()[(])[)]][[]()(](([(][))((()(]([[(])((]((([][([])])[[)][]())[])](](((]([))[][][[([)]]]])]([][[)[)((])[](]]())[)]][)([[[)[[[)(((](())()]]]((]))(([[)]))[()([))]()))]])(]())[(][[()()]])([)))]][]])])(([)([)]()])[)([)]()[[](]]]((([[[))[((][[)])](]([[[())]]()][](([)[)(][)]](])])(()(]])]]))]](]]][([]([[)[)]]])(((()(())[][)())))(()[]()])()()([)]]()][]((])]([[(([[[[(([))))(((]([]([)())[)[)())([[(]()[)[))(][)[]]]]][])(())[]))))[((()])[)((([(]](]((]()[)[(())([[))[[]([([])([]((([())))([([]]()]([]((([[(([[(]])]()][[)]((]])[()][(](((])[)([)(([[)])])(]](](][[])][]])([)(][(](]((]([([(])([())][[([[])[)]))))]]])]([](((]]])][)]])]([]))[[([)][(([]](((][(]][)())[((([]])][)()((](()[]]([][)]][[)(])])(]()()([)([][[][([[[]]))[(]]()]])][(]])([[][[])]](][()[[((]()))([([[]]](]][[)))[[)))[)]))[(](([[[]))((])(])()[)[)()[(])]]((((())(]([)])[)((][])()])]](]][][)][())]([])([]]])[((()(])[)([[([])]))]]([]]))()]([[)[)[[[[[)[[)[())[]][]])()[][]]]])]]]])](](]]]][[)[((][]]]](])]][)[([))(](([)[(([)[]]([[[([([[]]()[[)[[[())]()()[[](]](])(()[)([[]]][](()[)([]])(([][(](]))((]()([((][((]((()[][(((()]]()))[(([)()])[]][[)(]([([(])[][[[()[)[(()])([)])()])[[[(])[[)[)(())[])]][[]])()[()((])([)[]]((]()(([([)[[([[])[(([[()[[)][](()(()(](]](([(()][()](()[)[[([)([[([)][()()])([[])]][[[]][])(())]]]([][([[)((][[(())](]))[[[((([]))[)))[](](]]([][)]]][)])((([(([)])[[])[[))(][][[)[[])())])[[])(()]))([[([[](((]()[((]])([)][[())([]([(()]((([()])(][)][)[[][][]]]([[[[)(([][)]][([[)]([[][()]]((]([()([))[]])[](([)][(]([](][)[]](()[)[[]])])[[]][))[((]](()(()([][([]]][](](]((](]](())][))()((])[))[(((])[[([][)[)((([[)][](]([(()))][)]]()[]])()][)][([][]][)]])[([[[))])]]]))[]](](](([)]][)[)))[[)]()([)))][[])[][([]()[]))()[)(][]]][(])[)())[(][)(]()][)[[[]]][[[)]]][)])(]((((][]]([))]][)[))])](]]]())[][)][)])]]()([[)]()())(([[[([)[(])[()(]]]])[[)((])))][[([[[[)[]()]])((][(])][(((()])[[(()]]()[(()((])([](((])[[[](]))][])()]]))([)[[[[[([([(]])[(())[)([([(([)))([[[])(]](()])[)[)]([]))[])))]][[)[](][]][[[]())[]((([)](())]([[)(]([[]](]])(]](((]][]))[(]))][]))])[[([][(])[(]](([)]](()([]()))(([])(([])])]])][((]()]()[]))))()[]][]())]]()((]]])()[)](])[[])])(([)(])][()[([(]]]))]([[(()(([)[[)(]([[][]([[](()[)[)]][(](]))(]()(]))([))([(([)[)[]](]([[((])][]()](([((]])[)]))))()[)((](][[[(()]()())][][]]()[(()[))[][(()]](([[())][[)]][][))][()[)([[[()))[][()[][(]]))))][((]][()(()[)[)[)][]](][[([[()((()])([[][(]](((]](()([]][[)[([((][())[))[]]]]][])(])([][[[]]([(([]]([(]))(][[))[])[()][])])[(]]([(](](][[(]()(]()[((([)))](][](])([])[)])()[([(([](])))])()]()[[])([)())])[(][[]()[]][([([([[([[)(([))[[()][[]])[([))[))[[]]()([]([)]((]]])(((][)())()][)][[]))]][)[[])]()([(][)(]]))))][[((((]]([)])[][)(]][)[(()[)]])[)))[)[]([[())[((][)[)[([[[[(][][]())[]]()(]()))(]))(]]]]))([[(][)([([]()])][)[](]([([)[))]])]([(([[[][[)([[[])[)[[()[([[([[([)[]()[((][(]])][[()[(])()[([)[)()[](][[[]]])[]]([()[([[)]())]([()(]([)]]))][[((]][)))[(]][[]([][[]]]](]([)((()]))](]((()))(]](][[[)]([[([[)][)(]))[]([()[]]((())[])[]])))()(()]](][()[(][]][)()))][()([()][]][)(][)](][)[(](]([(]([][](][(](()])]])([([]][))[[](])[([)()(][][[([](])())([()[))()[([([[[))[[(]]))][[))])(]((]](]]))()())))])[][)(())[())]])])()][[)[]][)]()])]()]))[(([]])([((])][])(](]([([][[(()]])(]([[[)(())()]([[([]]]]]))][))[))([))()()([[]))]()([))()])())[(]]))](][]()(][)())[][))[)))]]]])[]([])][(][]))([[)(([[][(((]([[(()[][(][[[[]()(])]]([[)[(]()])])[[[)]]]]][))))][(]][][[]()]]])(()([]][)[)[])(([([(()[][[()][[[[(][[]()])([[([)](]][)[)[([()()[]]((][[[]((]))]))([((()[[)(]([]((](]]()[[[]((]][())())[])(])[)([[]()(([[)[)[[)])(]()((]](([[](((][]]](([)[)(([()()]]](((])][[[()([[[[]((]]))[)[][])][)][]()]([))])(][)()(][[[[)])((])][[((][[]([)[]]))](]([(([[)][)[[)[(][[)()[[)))))])[[]]])(][()])(][](]]([[[)(][])][][])(])[())])(]([)()[((]]]())]([()[(()[([)([][)([()][[)([)[[))()()(][]([)[[)[[][(]([[()(]]][(())()[]][]([])[][])]](]())[))())[]))(()[()[(][((])()([([[[])[)]([)[]()[)[[]))]]])])](][]()())(()))(][)[[)(]]()([[[[)(([])]]))[))]]]]][[)])])((][[])](()[)(])(][(([])[))[())()[([[)[([)[[([]([))[(]([)][)[[()[]])[)])(()(([))([[)[][[]]))[(][[([(]]((((()))))()[))[)[()([(((](]]])([[[][)]))][)[]][)((])])[[(]]]([))()]]][(])])]][(()[)()][[]][([)]][()]]]()[](]([])((][(]]((](][[]([)][)()][)[)])((](([(]])(([)([[[([(]))(([(][))]()([(][](][))[]([))]]()[)](()[[([)][)(])))([)][](])[[([[[((([))([])[])][(([([])(]]((]))([[[[))[]()[)()]][([)[]]()([[)(())[])[]])]]]([[)[)[)]())(()([))([))[[(][[[]))()(](]]()([)[[](]))[]([[(]([[][])[][)]]])[)]])[[)][[[]][]]]])()]])([]))]([[](]([[([[[(())[]]]([][])[)][[())[]][)[]]][((([](([]])))][)([()))[()[](([(]]([][[](])[())])()((())(((([([()][)((([]][()]((((([](()(][][))])]()[]()]((([[)()))])]([])([(]((][[[(](]))]]]]])(](]()(][(])(((])[][])[[)([[([][][(()])[])[](())))]]))(])()(][)))(][]][)[([][(](]]([[]))])[](])[()]]][([)[[]])]][]))()[([(([](]]([](]())))(()]]]])(]()[([()[])][[()][[())[)([[[(()(]))[]()[][]()]]()())]([)(])][][(([)())[[((([()()]([)[)])]([([()[)[[)[)(]])[]()[[)[([]]][])(((]))]])]]))()[[[)(](][[[][[[(]))[(]([[][)[()(][]()()))(][[[[[[([[[))])[(]][)][[(([)([)[)])])]([(]((])[([()[])[)]([][][[)(()(])][[][([([[([)))]]][]()][])((()]((])(())(([)[)))](]))]][[([)[]][][)()]))[[((][([[()]](]([)))([](]([[][)[([)[()[]]][([))]][())]])]]()(]][((]((][[((]]())))(][(][)[([)]][([)(])(]()([][[[(([[))]]][)[))(][]))[[))]))[][[])]]])][([)()[((((]][([[[[)[(([(]))[][)([[[)))([())(][]()))[(][][))]()))(]))]((()[])]][)())(([[()][((](](][]))[][(][(]]))[[()]([()()]])))][][][(()[[)[()[[()]))][(][((()(][]]([)([)[(](])))[[))(((((])[])()[)))][])][(()((([)]))(([(][])]](]()]((])))[(][()()(()))((][]))(([]())(()[(([](](]]]]]()[][)((]([])([[)[[)[[))]))][[]]][]([[(](][)([]([)[(([[[)[[][][())[[]][)[[](][)[((][()(()](])[[([]))([[]()([](](][])([]()(([))[]])))[))(()][([))(][)))]()[]((()[(([([[)]]])([[)]))(][)((]]]()[[(])]([([][()(()(][[[([[[)[]]]])([[[[([(([))][))[))(])]](])()[(]())])[(([][)])(][(](](())(()[]()(([()[)]][])])]](])))]]))[[[][][[[)[)(][]([()[](][[)][)((])[(]]]))(]([])])([))](])(()]([]((])](](([()[[[][)[)])[[[[]()[((()(([](())[)[(])([[])[[)(]]([)[[[()([))](])[)(())]]]](](())()]][(]][([))[)]]][]])[[]]])][())()(][[[[[([(]))([([]][]])))]()][(][)((([)([)[)[]][([)[([([]()()((((]])((([((((([[))])([])(]()[)[(]][)(][)]])[()[](]()]))))])([](())(]][]][([)]]]()]([)]]]](](][)()[))]()[[[)[[[]]]]]]][[)](]])[)]([]]][[[([]([((][()(([])(]])[[])]()])[)])())]])()][])((([]]([[][[(](]]))[))][][([]()[)[[([[[([(()[()[[()[])(([)]][])][[[[[]][[][)[([(]()[]))([]([)])([]])][)[(])]([[[(]))][[(([[][((()([[)))([()[][]][])[])[[)(([)])([](])[](]])()]][))[)]]])](]]([]]](())(][([][[))))]))([][)]([][[))]))((]))(]]])])][])[(([)[)((())))(]])(][[[())(]([[])[])([[)[)())(]))(]][([[()(])()]())])[)([)()([[[[]][[[([[(][]]]()[[]]]])]))([[)[([[])[([]]([()]()[][)(()[])][[(()]()[([))]]](([)[)]](([]())(()])[[))[)]]((]((]((())](]()][(((]]][([(([][)(([)](([(()[(]][[)((]([]])()]()[][[)])[](])[]](]()]])(()][()()[)((][([)[))[(])[[])]](()](())[](]([[()[[()()())([)[(][())]][)((][]([[(([[]]()][]]][()([)((())](([])[))]))][)(([((]()((((]))[]](((()]]][]()]](()(()(][(]][[()][[[][[(((((())()[[]](()][)](([[(()[(])[[(](]([][[](]])]([)[]]]()((][)[[))([)[)([)(]]][))])[[]))[(()(()))(([[)](](][(][[()())[[([()))()[](]))[)](((((](][(([)][([]((((([([)]]]()(()[()]([([[][]])[(]()(]())(((((][][([(]()(][(([)]([[(])])]))(]][)])[])]](())(]][[[))[(](([[]()[)]])))])))][([([)]]][[[[][(])][[))]]])][[])[[])]]])[)(([]()([]]])])())([)()(])]([)()][)[][(]([([][)[[[[][])])](()]]][])])][(()[[(][](](])][[((]([)[)()(])][))]][)[()]])[))][[])][[[[())())])[([()[[[[[[]()]()()]([()(]))[)[][)))([]]])][]][[]]([])((][([[)()][]][([[(()][((]]][]])([)](][[(]]((])(]()()[)[())[(]]])[[())(]]])[)())[)([))]]([)[]()[)(]([))][])())[((](([))][)(]([[([)))]]()[]([()[[())(]])][[)])([](](](((]((][)([)()([()((()]()]()[][)][([]]))[()))]))(][)[][[()])](]][()))]))[][)[)[])[[(]((][([][[)])])[]][(][(()()]]](([)[(([(([[])])[))[()()(][[[](]]()())(]()[[[([))]([])[)[()(]]]][[][([]][))[)(([)[][)]([()][([)])]])]]])(((((]))]])(]()]([]]]][[(][)]))[[]]([)])(((]]][))]]())()()[][](])(([[)[)[)([[))([)[([]]][([(])())[)]]((][)[]()([([([](])][(]()()))[[([])()[[])())[()[[[])[[(]()[)[)[)]())])][()[][(][])]))[]([[))))[[(()(][(([)](][]))[[])]))[)]](][][)([([[][(()[(]))([)]([]][)[])(()]([[][])[(([))][)())[[)[](([([))]][))[)])(]([()(()()()]()[([][[][][([]](][))]][(][]][)))])((([[(([[(]])]])(])())])]))[()[][[)))]][)(]])]]()](]]]]][])])([[[]]))[]])([)()()[)]])([[(([([(([)][][[]](][))]][])[([[]))[(([))[])](([[()][[[[)[)([)[)](([(()])[])[][])]])](]()[))]][(][()))[]][[])([[))[])]][]([[)[(]))[[(([)[][]]([(]((]][][[[([)]])[[][]]([)))]][)(])()((((](())][[(][)[](([[()([)[][]))))())(]][))([)[]()(]][)][[[))()[)(([)][[])))(](]([)]()())]])[(([]][)][)[[)))]]))[)()[)([[][(][)()[[][(([([[()[(]))(]))()]]()()[)[[()[()))]]()[[[)))[[)[[])])]](()(][((()[)()][()])[)([[)(]))(](((][][]()()])))]))[[())]])])]][())))])([]][))([[][)[)])(())[]()(](([][(([)()[(][)][)][[([([[][]()]])])([])]()[)(])][)[()))]])()[)(][)[)]][[(]]][][]]))))[[)[)[[)]]][)((([)])[][(((((])[([([())))]][()[(])[)(()(()((][]]))][]](]]]]())[(()[)[[]()])(([[(]()]([)()(]])](]))[((([])])]]((][(]][))[[)]]))]])((](])[)(())](([([)])[)[][])[][][)(][])[)]]]()][][)])]][(][[(([]((][][[)[[([)][()]([(()[]])[][(](](])]((]]())(]][]))][(()[][[[ )))(][])][])[)((()][]][[][[)(()[[(()]])]][)[[]((]][[))[([()][()[[[)([[()](](((((()]))]]([)(]]](])(][()(])(()[))])(([)][(][(]]()([(]]](([)((]))(()[([][()]]]]]()()()][[((][]](][[([]([[)([)](]]))(]((]])[)[([)])[)[(](]]]))()([())[([]([((](((])[)](((][((][[([[[][)[[[)]))[[](([[)[)[(](]([][[[]]]))]()[)][[])[)))()[][][()[[][])[))[[[)]])][[)[[[[][[()[())(]([[][[()](()[)[[)()](]([][([[][()][][))))[)][)(([[)]][)][)])()])[))([[[(][]()](][(()]])[]][]())](([[([[)))(])[()][][[[]][(]((([]])])(]][)((][(([([[([((()][)][]])([()]]()]][[]]](((](([](][)])(]])[()(][]])(][)[](([())(]])(]))[([][]])]([)][[([[))]([)[)][])(](([][[[]]]([[]])](()())]]()))][)]))[([[([[([](([])([[)(](((([)((])(]([]][)[)[[[[)(([(]][[))))[[)((((]]])][]]]))(][((][()[(((()[[]]()([)(][[[)])[[][][(])])[)([])][[[])]((((])[(]((]](((]]((])]])))(([[()]][(([])][)[])[((])[()[[]])))[))([))]]())(]])(()[[])[[([]])[(()]))])([()())[)))()])(()(())())(]]()][(])([(]()]])][)([]]([[])])))][)][(())[]]]([()()]]([]])())([]()[]([[()[([)((([)][[))]))[()[()]])][()])((()]](])(][[[[([[[]()(((])]))]](])(())(]])([[)([]([)[](])))(]][)[])([][[))[[[][]][[])[()[[(][[(()[(]][([))(])[]][([)[][())(((]])()[)()[[((][)([][[[()])]))[][[[(]])[(][]((()[(()[()[([)[]()[([[])[][[()()(]((])]])[)[())]][(((((([[)][[][]()[[(]]]([)][[[()](])[]](((](]((]))[[[))]]]([)(][((]][([](([)][)[][[((][](])[))](][][[[]([[][[]()[[)][][[)([)](])[)([)[[))]))[(][]])[)))((]()[[]())[[]][[()()(]]([)](((()]]()[[]]]]((][][(]]])(()](](][(]([(])([)]]()((([]([]]([())])(][)(][][)()()))()((()](()[[)(]][](]([[([[(])])[[(][[)]])((]]][[]))[[(](][][][[)][)][([)[]]([[[[)())[)[)[([)][]][)[)()))[[[(])[[[[)([)((()((][[))(([)]])]([[(]](([(]())[[[)][](]([)())]([[)(][()(]]]]]()][)(()()(([)()))[[])))[])))()(([(][])][[[)([[][()][([)))[]][[]([()[(][)[)](()([[)()])])[[[[(]))((]))([[[][))]]]((][]][]()))()]]([))][[)))()((([[)]][[([[)[)(]))))](([)[])][(])([[(][([(()((()[][](())]]]]))](([(()[[]])(]](())[]())[[][]))])(]))[[(([[[][(()[)]]][](([[))[[)]][(][(]()(](]([)[(([(]]][)]][]])[()](])[]][)])(]])(([([()][(([))(]()]]([[((((()(([)[][)]()()[]]](([)))])][[[][]][)[][[[)](]))])[()]])))]][)])]][])])))])]))][)[[(][)](()][([[[][)]()(([[)])][[[(]])])()])([[((]()])[([)][([])))][))[[][]]()))([](]]]([[[]([[[((][]()]))(]()(()()][[[(][)(]()[[])()[([][)][[[]])[]]][][[)]]]])](]))[]((]]][[[)[(][)()(][)()(][])[[[[(]])[[[()[(]))(])]][][]][([[)([()[()])[]()[)[[)[)[[)][((])])])([][[([]((])])))[)(][]](])[()()])([(](][(((()))][[)]([](((]])[)[([()[)([)[((][())][()]))()]([)([[)][])]][][)[[][[([([))()(](([(][))]]][]][(([][[]]](()](()]()[)]]]([)])]][((]]([[]]][])[))[[(](][()])]][))[))])])([[[[[[)][))[]))([)))()((](]][]]]]])(]])())]](()])[(](])))[[[()())][]]])[][()))]))[((](([]](([)()[][[()(((][[][)[(][))))())[])[[]([)[[[[[)[]]([)](())])))))[))][[[(()(][]]]))[[[))(][(([)[])[]]]]]))[(][(((]([]]])](])[)]([([([])()(((()]((()][([()()[([[[((]]()][)[)[([[)]([)(])[)))[[][)[)))(]))[()[]((((([[]([[([[))([]]]](][][][[(()[)(]][](][])))))[()(]()](()][]])[(])]([[]))[)]))]][)[][]((])(]]]]])][([[]])([))[[)]([(([][[)[[][[[[]()]([)]][)(])[[(][]])]]]]((()[(](]]])()())])]]]](](())([)]))[]((]]])[))[[]([(](((][)[][[])[]]][][)()[[)][[([]](]))]]]]((([)([(](][)()][]()][[][])]()])(])[]))]]]][)])]([)[[(]][))(((])][)([]]]))[](([)]))(])[)[]((]]))[)[]([())]([])])[))[)))()]]([(())[]]][[()]])[])(([)]]))]]](([((](([[]()))]][)))][(()([)()))]]][)]][])([)((])])([])())([((]])]]])]])))])])]])]()(][])[[[[)[]([)()))]))))](]][(()[]()(])[))[)[]((])((([)[)((((()([)[(][([[]((]]([][([(]](])[)[])[((]()))[()[][]](((([[[[))[)])])][()(]])([)([]][([)[]][((])[))[))((])[(()[))()][]]][[)]))()))[([[[[][)(((((]]][]([()][[([](]](()])))[]]]()])(([(([[[[][(([()())([[)[)(()[[][])][][([[[(()(]))]((](([(()([]](](()]][])])(]((()]([()[]]]]))[[)([)(][[(]])(()))][]])(()][[[])(][[[])(())([[[]]]([)(][(((])]([][)[)()[([)(][]]))])([)]]))()[([(])((())]([[)]][)(]][)((][[][[(]))]([([[(([]]))[(]))([][([)]]))()([[)())[]])[]())([[]()(])[])][)]](])[)](]]([)[)]))[)[)](([[([][)[])]][[][)(]))]([]([))[][)])[)()](][[[)((((]][[][)))[)([]((]]][)][))]](([[))])]([((([)[([]]])[)[))(][[[()]()(()[[[([([[((]())([])[]]])[[())[[(()[[(()(]])[)(())))(]][])())[(])((([)])))][[(]]()])[(]][[)](([]))]][])[))))[((][()([)]]][[)[](][[[(]]))][[])])](](((](([])]))[[([][()())))(((])]])([([[)[]]))([])]]()])]))((]())(]][[[))])]())([)])[][)((([][][(()])])](]()[][[)](]()))()][](]))([]))]]])(][)[])]((()[)(]]()][)[[])(](()]]]]([))[)][)[[[(][([]))[()))()(([))([(]([)(][[][([]()([))])]][]][[[(](]([()][[]]([]([((][((][))[(][[[[))))))]]])](][(][)[)](((]]([[[(]][)[)])]])(())[](])(((([[[[(]](][))[[)]))[)]()[)])()](][(())(])]))))(])])([(]))]])(])(](((][])[[[[)[)](][[][(]()[]([)(][[]((([][][]())((()])[](]][(((]](][([()[]]]((((()()])(])[)())[](]])[(](()]])]()()((]]](](][]]])[(][))[([][)))[([()[[]]][[(]([()([[]([)[]))[())[)]([]][)]]))(][)[]))[]()([[((]))([)()))]())()[)[)[([)[)([(([))(]][[)[[))(])(()(]])][((])[[((][][([][([[([]([([[][)(]]]])())[()(]))][[))](])[](()[)([[)(()(][)]]]([())][([()([)[[()](]]()(((]][((()])([]][(([]]))[[]]([[][](]((([]][]]]]]()))[]]]])[()([()[)([)](]]()[(([](]]())()((([]([[([((][([()(][[))[]]))(])([[)]]])()[]))[()(](](((]])]][](()[[)]](])))[[[)[][[[(]]()[(][)(((()[[)](][[([((([])]][]][([[[[[)[())]])())][)])[[)(])]]]()][)][[([[[))())](]([([])]](])[[](([[([))]][[[)[)(]]][[)(]]](])(([])[[))])[[]([(]]]()])[]([())]([]]]])(]())])(](()[][)])[][[)([)[((]]][)[[]()]][)]]][[((([][)([]]]]]])[[([)[][][)[((]][([[[]))[)([[[[(]](](()))[((()))(((((()[[[]][()]]))[[[]]][[)))()[(]][[][]()[[[[(])[(]()[[]([[[([([)[(])[(])[(([[)[)[([((([)[((()]))]]([]][[)()((]]))([)[[]]((()[(]))](][([()][[[(([)[(([[]()()[[]()((]()[]()([(]([))])]))]]](](]]())[]]][([[(]]([[](()(][[(())](([)][]))])]]])](][[][)][)]))][)][]]]]()](](]][[]]][]][][[]][)[]])[])][[])]])])[])())][][][([((][[)[[)()(][(]((])(][(])([]]])]]])[[(()(()[(])[]](])([[()[]](])[(]][())[))(][)]([))])()[](()))]][()((]])(([[[)))[(]]][]()[))[[)[])][)])(])()(])([([)[[((][)[]]](]][][)[()[]([]]]))([)))]][([))))][()[[[((]]))])[[[]))([()]((([[)][([[(([([[)[[][(]][[]][[[))[[])[]))]](][()[[](())))[(]([[]([(](([()()(()]([[[[]()(())[[)(()[(((][((][][](([]](([](]()][][[][))[(](]])([((]])(]([[)))]]()()[)]]]())[[(])](][)()))])[[()][]])([)])[[[])[)]][)(][([]]](([(][])])(([())()(][)()))]]])))][[([))(()][)[)](([)())))([][][([](]]]][][]][[([])]][()(][(([[)))[()))()()([][(][][[)]])[]((]]])]([[[])(()([()[()[[)[[[]][)](]([[()()[]]](([))(([]])]))))(]()[)()[[[)[()(][[][])[()[)[][((]]()[[)[(]](][([[[[]])[[]([]][][][[))))[[([)(((](([))((][)))[()(()[(((((]((][)(([[][]))))[)([]][()[))()))(])()[)[)]([[)[][))]][]])())[[))))]))[[(][()())]](][])()([]())(()(([([[())))[[](([[][[)()[](](]()[][()([()[()(])[]][)[()(]()([][(((()(())][]]))[(][()(]]))))[])](]))()(][])](][[[])(][]](][([)(([[]([]][))[[))[[][(]][)](][([[)][][()))]()((][]()([[][[()]](])]))([])(]())[)()[())([())((]()[](([[(][[))(((([][]]]]]]][])][())[[()([[)])[])))])]][]))[(]][((][([[([(](([(()([(())[(()]]]]]]([]([)))(([(]]]()((]])])([()])([[[[])(][)]](][[)]((([))[[[[](][)[[[]][((()]((]([[)[])][((]])))(()((][[(([)]])]([]))[)[[)(]])([])[]()[]))[][([[)()[([[(())[(])[(][)))(][()()]](])]]]])](]())[]]](())[)())]()([[)]((()][(()()((]))[([[(])](][((][][)(])(])][[])((()(([(()((]]]([][[]])([]]([()[)))))[((()[()([[][(])))]((]((][)[([()[[(([)))][](()][]()[](((])))))([][)[()][[([()[](()()]([][(([()][()(])())()([(][])]])[(]))([](([)][))([]()(([)[][[([][]))]([(][()[][([)([)(()[[[[[)([[))))])][)(](()(][[[[])[((])]))(([)[[[)[)(][])][(])])[())]()(([)])()[)]()][)[))([[]])))]][()][]))(]]](][)[()[]]][]]]))()([]]][[])][([]]])(][(]))([[(()(][(([[][()][)([[[)(][((()()])[([]([)]]))[[[)())[)[]([[)[]])](((])(]]()([[[]())[([][)[)(]](](]](][)[[)])[]]])()))[(][[)[)[][))(((()[](([][([[)(]][])]][[[[[])(])][]([)[()]([)])[([[(]([[[((][())][]]]()([())])(]))([([)[[))]]][)[[]](((][(([())(]])[)((()[]((])[)[))[)))[])[[](](])((((])()])([]]])(([[))][)[((([(][()])))]([([]])([)[(]))()[][))]))[((]()[]]])()]])[([(][[]))(()()[](])[](][([]]((][)](())]))((]]([)(])())([(])(]]))(](])))()[))()[)]][()][]()(]([)])])([)([)(][[()(([]((()[([[)[(])))((]]](]])((()((([))[[)](](][]))])[[)]]]()()][)[[))([(]))]()[(])(]]][]))((][)]()([(][))[()]])([[([])(())[)])(])[)[[([(]([[()[)(([([[]]]]]([((()))(([((([))(())[)(][)])())()[)]([([])())]([))()[[)[(](]]([])[)[(]())][[][])(])((())[[)])](](([)[[]])](])([[[]([)(]())[[((]))(([[]][()[([])[[[)()][])]])[[])]][)[(]([[)]()](([)[(()[)(([[([)([(])]])()]))][)])()[([[()()(])[)[[[]((([(([[][)[(((][[])))(][())(([)[)))([([()[][]]()][[[])((][(])[]]]][)[([])]()]]]([[[[[[][([(((])(()[(]][)])]([()]([([)([(()][]]]([)[(()[[[]]]([])((][))[[]()]))[[[]))()(]([())()(]([[]][()]])()(]([(])()))((]([)((()[)((()][][][(([)]())(](([[]))(]][[[[[)]))](](]([[][)))()()]())))([)]))([)[()][(((([[[[[)()]()])[([])[(]])(][])(([))(]([[[][])[)(]([][)]([)(([])]([([][][(])(][()[)](])[]][)[)(]][()))((]]([)()()])]])(((]]]())(][[)[[)][[())(]]()(]]]([[])(](]([][]](]][]][(]([[]])])][[]])[()))(]([[()])[)()))()[(][[([]([]]])[)()](()))]][)((]))[((][[)]))((()[[[((]([[[[)]])([[(]()()))())([[))[][)((()()[])([)]](]()[[(()[((()(())])([]()()][)])]))[))()))[]])((])][([)])]()]])]))[)](]()(][))([]])(][(](])[)(((([)](]])[([())[()]][[[)])((([]))])][]])[[]))[])]][()[([)[)[]((([[[[(][(]]]))](()(([[]][][)([([())][)(][[])())])))][)()([)[([)][])[][][])]]][(][)))][]])((()]][])]()[[([][)]](([[]([))]()])[((](][]][]))](((]](])()))[]))))(][])][()]][()([)(]))]])([]]]]])()])]])][[][[])]([(([)[[)]][[]([(()[(]]][)))[]]])][)([())[))]]]))[[))([(])[)((]([[[][(]]](]([()(][][[((])[([))]([[)[)][([(((((](]([]]))(([[(]][[]]([)[([)[)()))]([(]](([][[)([([]]()((])][)[[((]()[[])((()[()(()((([[]()(()[(([(])]])[)[[[[[(]][()]][]])())[))])]]])()[])))]))()])(([)]]]]](((]((()](]([][][])([(()[])((]])])([([([]))([]](]((](](][))]()](((]]]([(]()])[]([[[([])(]([])[]]]([))])])[]()])])[[](]))[[))]([[[])])[[)()[[[[](()(])(()[](()[(())()]])[]][[[]]([(((])]((])((](]([)]])(](][[]][]))[[]][[)(])(]((()[)([)(])]()(]][[)]]([][[[()()][([[]]()(][[[[][](([][)[(]()]]([][[)(([[]]([)([))[[][)(]]][))()[[[]]([)(][(([[[((([])][[[[([[][(][](()(())()()([[))]((((]](](](])])](])](([[)[()(])]])())][)([[[)]))]])])[)[()(])][[]][(][((]]((([][())[][]]([(([[)]()[][))((]([[]()(]][[[)])[()[(((([[[((([[[)](][((]()([)[()][[(()[[[)((([[[])(])[]))[]][])[[(]([[)[(]])(([[[](](()[((((]])(]](]((]][]](([])()[]][]]])[]]](])][])(()]))(])]]][]((((](][]))]][()([([[())[[(]]()(((]]])[]()[[[)))][[]])]][[)][][([([][)()[)][])(([[])([()([[][[)())](]))]])][((([[][]([(]([()()[]([)()[])[((]][]][((([()]]])][)]))([([](((]()(])]][()()()[)]])()(](([)())])([]][[)][(][[])[[))][]))[()))[][(]])))[)(([]()()])))]])([](]])[(][[][)[[([([[[)(((])]))][)][[)]([]]][[[()][]([[(]](([([(()(([[]]())))[]([)]]))[[))][()]([[[][[)[])[))(]]](](]][[([)]])))(])[)]([)[((])()()(][(]([(])[[([[[()(][]][(](((](])))[[[((])]])])])))][[[]]))()[(([](][(]]))()])([)]))[[[)(()][)[[[(()([[](](]]])((]()()]([))))[)())([[)[([]](][]()[(](([)][[](][(((())])])[[[[[()[)(((()[)[[(([[])(])(]]])))[)[())))[[))[][)(])[[([[][]][](]])](]([[[[([))((()])][[])[]][][][[()])]))]][]))[(][))[[]((([]]](](((()]((([([[)([())(()(([]]([[[)([[])[)))([)]]][))()][())]][[(][)))[()[)[)[)(]))[])())))[((()][)][[[[(][((()][(())](])][[[)))[[][[)[]([[)([)]([(]()[())[)[])(](()[]]([([([[([[]])[])]])[([([][[])()))[(]([[[(]]]][[[])((][][[[[]]]]]([])][[(]([()(](())[)[]([)))]((((][)()[)([))[]()](][()(])[)[()())[[])[([])[][[]()[([[]))]]())(()]((]])(](][)[[)))](])]()]([)(()(][(][]((])[(][)(()[][]](()[](([)]]())]([([)]][[))[]](](([[][(()[([[)([)[([)[][])(]]))()[[[)]([])](]][((][(())[)[]]]](((()[(()[][(([[[]()](][)[()(][([[]](][][())][)][[])([)]][(](]][([)()]]](((]([((]))[]]][]]]](][(([[)((()()]()([)(](]((](([))]))()()(((]()](()[)](])()[])))((([)]))[]([(](([((())])((][)(([)]]))[(((]])[]]()(][[](])[([])[)][[)(([)(((()][([]([([[()((]]]([(]](]))[]))([[)([(())))([][)()[)]()(]])[))][)]]()][[)())[]))][([((](][)([)[[[())([)]()(]((][[)([])([]([()[]]()][][])))())[([)))[[))))[[[][)])][([[)(][)[))((()[(([][)(())())][[(]([)[])(]])][[[[)[]()(([)[[)[))[)))(([[[][(]][[)))]))([[)][))[]]]][])][)([)](()[))((())[()(()[)][)]][]))])])([[)))[])())]])((]](([)(])]][(][[[()]()))()(][[(][)](][(][)](())[(()()((])([)[[][[[[]][([)(((]()](])]((](([)()([([[)](([])][((]([())][(]))](]()(()[]))]]][[))([(]]]]][])()[()]]])][][()[([)[(()())(([(][][]])[[([(][)))[(()(][)]]()(())][]][([]((])(])])](()(()[[)()[)(])][][[]([)]])(])]]((](]]]([[[][[)()]])()(()(][()))[[(()(()][)]]]]][[)[()(]]())(]([[][][])]]))()([[(([[[)(]))]))]]][]())](]]())([]([([])])[)()])[))()([(()]][[][][]]([([((]](](([][()(((]))]([[[([][(((]][(]((]][)]]([]))[)][[][)[]][([[[]]](([]][])))([)]][)[)]()(()[(((][)))([[)[(([))))]]()[[]][))(()[[)[(])])[[(()[[)]))]()[]))]](][))(])[)[))(]]][([]])(])()]))])(])(((([)](()]][)[][]]]())]]()[])(][(]()(](())])]]][])]()](]][))])(()[()[)][(((]((()))))[[([[))[((])[((()(][(]][)](()]()]](][)()([)[[]])(([[[][[)]())]((([)()[](](((][)(()[[)][][)[)](])([)[)]([[))[[)()[)])](](][]()(([[[[([)((([()][][](](()))]]()(][]()[[([]][(]([])]])[(((([)])[)()()([)([([(])(][][[)[]][)()[]]([)[(][)[][(([([])[]([([[)(]]([](][[]([)](()[(]])([())[](]][))])[]([(([])]()([(]()()])))())))[][]()[(]]]][([))[][])))[))(]]((][)[(]])[])(]))]([[[]])))]]][[))[))([]([((([)()[))[((](([[)][[]([])]])(((([][)[](][[[)([]]((]()[]())]]]([])[)]]])[]((])()(([()))]]])))])[([([](([]()()[([(](((([[)([)(](]([][])[]))]])[([][[((]][)[])[))[)[])()[))([)]])))]))[(]([(])](()](((]))(((([()[[)()(]][)([[((][](((]((()[(((()(((]]][])]))[])(((([]]](((][[[]][([][)][(]((([[][[[([([])])[][)))]]][(][]()][)[)[[[]))]()[])]([([([][[(])[)(](](]][][]))](]()])(][][())][[)()[])(()(])[][][)[))[((]]([](](([)[]([)(((]([(]])]()]][)][]([((][([](][](([()([]))](])[]]])])([(]))([))))()][([[]]]]([)[()([[([)(()))((([)(]]))((][[(]]])]([]())][[)[]()])))][]])[(]([(](()(][())()[((()([)[)])(][(()(])]))]]((]))([[)]([](([([(([)((])]))](]][])[[]]]((((]])[)[]([(])]](]][(](([[)[)([[())](()))[]]]][([(((]())(]]][)](()]][(())[(([))[[[([][((]([(][])(]](](((])]([)[((([[)()[][[)]())(([()[)])[[))][)[]][(([)(][())(])(([)[()]])()[]()(](])(](((()[[[()[]]][()[[]([(((([]([)]]]]))[][)[[([]]([)([(([](([)[(()[][)[])[][)(](][](][[(])][)([[]](])([])[(((][))]][])(([]][(]))]()]][[(][[((((]])(])([]([]((]]]][[)]]])[)]()]))[([))])([)(])])[)]])[()(]][))[[])(((([][[()[]])([))()][(])[]))]([([[[])[[)]]((]))])]]((([]()))[)]([][(((])])[)([)))(][][(((]]][)()[)(([][[)[(([]]]])])([()[]([))[)[)))](([)[[(]))[)))](())[(]()[[](]([][()(])())[)()](]([[][[(]])][([((])((](]]][][[][)](]()(]([([)]]((()(((([([[)(])]((()[([[[[())[][[)(]])([][[]])])]][[(][)][[]([)[)[[[)))((]]])(][)([][((((]][(]]())]](()][()())(]]((][(()[))]][(])()(())(]([)][([)][())[)[()))))]((([))])[[)]]]][[(]]](])))]())[[]()[[)([([][)](()]))[))][()(([]](()[(])]()]([[[)(]((]]()([([[()[[[])[]([])(]))[[]][[(]()[][)[)[[))(]])((]]([]][[[)(]][[]])[[)][[](][]][])[))[))[]()))[](([][(][])()[]([](]]([)()[)]))[][)([)(]([)((][[]))(((()]))][[)(]([](([(([([[([(][)][])]((()[)](][))(()[)[(([()([)])([[([[)[(([)([()[[[([[[[(]))[[)()[])])(([[)()[))](([(()(()])))()[]([[])(([([))[)[(])[(]))[]))[)[[)([[)]([[[](](]]]([((][(]]]]))))])([[([](([()[[(]]([])])])[)))()))))[(][)([]()([]][)[]][[()]]))[[(]]([())))](](]([[[()((([(])))]))(]())[()(](][)]]]]](][[[)[([])]([([()[([)(]))[[][[]]]]][)[(]]])]][](]([[)))[))[[([]([([)][[)]]([())[)](]])())((]]])(](]))]]((]([)([(([][]([][[([)][)[[[[)[))(()])]()[[][([]]([]])]([])]([([)[([()(]())])[[[])[][[][)][([((((]]([(((]]]([])[][[]]))))[](([]][(](])[)](]]][][])))[[])][[)([[])([(]][[([]]][])[)()](((])((([[][][(([][[]()()([[[()](([[([](()(([)()(](([()[([]]](](][()])[][)]()](]]([((]][]][([]()][)[((]])(]])[()(])][[[)([)[[)([(](]))])[]((])[]))([[(]]((]]([][])[)))[([]()[)([]]]()[[(((]([((]([[[[]][)(]([](]][)([)[[])((([))[[))(]]([([])[(())]()]]]]])]([[[(][[]([][[[)(()][[())[()))][]))[[((((])(]))(][]([[([[)[((()[)[[[()()())[)][)(()[(]][((([[)()(()]])(]]()((()([(())[(][[[(][]))[((])))[]][()[())[([]()))][()[][)[[])))])][[)[]()((([)(])([]]([]]([[])])([))[(])())[[[[])[[[[))](([((]](())(()[(([()]))[[][)[[)))()((]][(][)]][()[[()])]][([[[))[(]]]]]))[]]))][]]))]]]])])))]])()([[[))[))[]()[)][)][][[((([[]]([()]][()))[[[[[](](([)([)([[[)]]][[)[[[[[[((](((](]]([(])[[)])[]])][[])([][[(]]))[][(])))[]])[)))[](][]))()))[)[))[)[[)((())[()((]))])[[]](]()](])[)[]([(()](])[][]])])()]]((([()[][(]())([[)([(])]))()]()[))]][][)[](((((]]][[(][[([)]]][)[)([)()]]](][([)[[)[]]((]]]])]]])()((]((([[))()][[[)[][(]([][[)))[((())]))](()(])()[[(()))]](()[]()[[[([[)[((([()(]()[()))]][)(])[]]][)([]((])([]])([)(((][(]][())]][]][[[()(((])][[([[]([[[][()])[][([]([][[]][)[)(]][(([([(()[)][])[[()[[)](])]]])(((])[]][)(][[[()))([)()[)][](])(()[))(][))([([(]]())[)]]]])[][[[])((]]([[[))(](]()(])([[(]([([(([((][[()])](())][[)]][[)[))][]][)]]]](]([[]([]]]]))[)]]][([([([])][)])]]())][(([)[(()))))]]])]]([[(][][)]][)()(])))[[]][][)[[[])[[)][][)]]]])[))]]([[[[[]()[]]((]))][]([]([)()[([[))[()()))(([]))[((][]))])(](]((]]])[)([[[]](([[[())]([[([(])(](((])[(]])([(]]]][()[]([()()[(][((][]]][))(][]]()([)]]([([)(()[[]])))])([(])))))))([))()[)[[)[()][]]([()(]][])(](]((([()(([()[[([([)(()[[)])[]([)]]())[((]((([][][][[))(([)])]([[](][()[][]([([(]])()(]]((([[(][)](]([[[)[]][]((])[][))])][)()(])]([]))())[]])[]]]]()]()(((]((])][][]])(()))([(([)])[((([)([)][([)[[[[[)[]([]]))[))(([()[)[(]((())((]]][]]]])[]([([)[)(((((([()()])(([(][[()(()]]())]])[][][()))[]())][])((]]]]]]([(])[)]])((]](]]][(([))([()[[(((((][[))[[][][)]((]])][)])[]((]]][[]([[[)[((][))(((][[(]][](])[[()]])[()(][]([)[)[([))([]]))])[()()[)[[([(())(][[)()(][)()]]]((][[[)[)[][[)([][(]]])()[[)[]]](]][]((])(()(]([(])(]][]](([()[)())([][())[[))]]))][])](()()[([[()))())[](]))(]))()()[)[)[[])(]([)][(]]([[)]((([())())()[(]]]][((][[(()))])([[)]([[)((())()([)(](](][]]])[)[[])[[((][][)]]([]))[]([[))][[])[)))((][))(])])])()[))(])[)](])())(()()))]])()(((())((]][(]]]]])([])[)[](])[[]]((([][][((([)()[([[)(([([])())(]][]))[))[])[([]]]))([)[)[](([)(](]([[(]()[([[]])[([())]))])(](]](]((((][)()[)(((](([([)()([)]]]][][[[()][]))])[[]]][)]][])]([()))()[][[[[][)[]([[[)))))(([](])]()(]][))(]((][()](]][))(([])()]](]()](](][))[(()))([([[)[][())[)]]][[)())(]]][)[(](((([)[))[)][[)]]]]])(]][])))(](])[()((][[[[)]([]](]])(())[)]((()((]])(])))([](][(][()(][[((()()))[)[[)((()[)[)[](]((])[]((()((])[[)[](]((][()][)[][[()[([)([)(])([)[[([)(()((([)[]))(](((([])))[()][)))]])])[[[)]]])))(])[]][([[)]((())]((]][[[)[])[][)((])[(])][[](][))[[[((][(][(()[[([)(()](][[[(][(]))]](][)(])))(][]])]](]([(][[)([[][(()][]([))()][)[)()][][[][[[][][))]([]][[([[]]])([([)[][[([)(()][[][]([]][)[[(][)]]](][]))[[((((()()[][[)(]([[])))(]][[()[][)()])())]])()]([[([[[[]([][])(]]](([[())]]]))]]])[)(])]])(](])(]])([][(([])()[[)[[)[](]()[]](((()][(([([([]([])](]))(][((]()(][[[)]][[[])((()[[[(])))()()]])[))[)]()((((][]])()[(][[]]((][][])])))())([[)[]]])]][[][)]])](]]])[][()[))]]](()](]))]())][[())(([()[([(()[[]][(([(]))()[[[)))]))((](()((])([(])[)([])([[))(([]][(]])[[)]()([(][)[)))(]))(])]()((()[)[[)()))]][])(()[[)())[)(]][[[[][[(([[((([)[[[()[)[)))([((((([]([))][](([]])])]([)((((])]())([](]([()[)]])(]([](()))])))[)])[)[)()([[[]))])][(]][])(((()(][([[([]]([][(])]][]([[([[(])][]]))([[[[](]](([)][][]][][(]([][[][(]]()[]][)())))[[)())))))))])((]]([[))](([][(())[][())()())[[[[[(][[)]])][]([[)[]([)))([))]][)[((]][[([())))]]]([)()([[]]((][))(][)([)[[]](]][][)))]([)]][(([()((][([)))]]([()][[([)()])(])](][)))]][[[([())))[)[(]][)()](]([[[)))])[[[[)))[]])[]()[][)[]](([(()]))][)(()))((][()]]]))[])))]])((](()]))(()))]())[](()(([[])][)]]]]((())(())[(]]())[[])()[[[)]][[)(])()]))))]))(])()(][[[[(())[))][))[([())[[][]([[)[)[]])((((]]()])([[](][]]())()[]()]()()])])(((]]]([(][)())[][[([)]([(](]])][[(])][][)))[))[])[[]()]([))]][[))(()([))(()((])()])][]]][][(])))()()[[[([))(])(((]]]()[[)](((]]((][]]([[]]][[)(])]))][(([[)][(][[)]()]((](]((((]][)][[[()[())]((]([]]([[()([[]])[)())[[(([[]()))())[][[(([]])(()([]](][(()(]][)])([()])[)[)])])))][[()])]))][)[]]((](()()[[]]()]][([(])[[][(][[][[]][][[])])([([[[]]))[)[((([]())()][)((([[)([](]))([][)))[[)[])()[][(]])][])(])()([(]))]]][[]]](]))[])))[)(([[)([)[)]())][[(]](]]]]]][]]]])[]))(])((([))(()]()](])(])](]]][([[([)[())(())][(][[()]()(])][([[](])]))]]((()[()[)]([([[[))]((])()[([)))))(()](()[))()(])]]([[(][[[()][))[([]()[[(()]]([(]([()[[()])[(][([(]][][]][))[[)([])))([]())]]))([])]]]))(][])][)[](][())]][))]))(])([[[[((]()(([[)]([[()(](([][)[)(((((][)[]]([][[)][([(([(](()(])()])[))((((((])[)))(]([[][([[][(])([]([]][)])])[])][[(](([[))]][[)(()()][)[(][((()(]]))])[(([)])][[](]][[)]](]()]][[()([](()(]][))[[]][]))()([]])[()))]][][([))([[)]]]([[)[[)]](]])(]([](])]([))][)]([][[((])))))[([(](])()([([(](])([[(]((((([)][)([[))[(](]())[(()[[[)[)([]]))[)[((()[]]])()[()]][)[)[[()[(][][])())])[])(][[)][))[[()[([])[[[[])[(]]][))[)))()(())(][[]((])(][(]][]()[([]()([[(([[])([][[)]()]])[(])])(((]]][)[))))[])]))[([)[))((])[(([[]()[[()([[]]()))]((][((])]([[](])(]])[)[]]())])[[((()[))[](()()])][]()[])[)([)))])[())()][([)((](])]([)]]][](()))]]])[[(][]]()[[(([)[))[][)([])[([(]][][())[]][])[])(()]))()(([)[[)]()[][])[[))][[))]([])]()[)]][[][)[][[][(((]]])[][)[()]])[])]])][(((]][])]]()][((])]([([)))[)[]])])][)[()(]]()][]](()[]])))([[([))(][[)(]([[][([])([)]()[(([))(([)]][()[)[)((]))()[))))(]]((]][()[)(])[)[]((]][)][(((][(]()[]())])((()[[)(][)))[]]]]]]([(((([((([([[(([[()(])()(()([)(]]])[[()[]))[(]]))]])(][[([)(]))]])[](]]))()[[[[(]())())])([)[[)[((([][[[]))]][)))([[(([)]])[[)[]]))[[[)]])))[()[(]]))[]()[[)))([](](]()][(][(](()])(([([]][[[(][]]([[((())][[)(][)[[[[](]()][](())()))([[[[]()()((])][())([()()((([][]))[[][)([]()))[()])])](])))[()[)][]][([)]]))[)]((()]][)[)[)][][[))(](([][]))][[]]([]]](])]])([)[(]))](]((([][)[)][(][([)))[)])()(((([[[(]))()])))())[)[[))()](()(][)[([]))]([(][][[]][]]]([)()[(([[[[(]])]]((]])(][(](])()((()[)[(((]()[[())[][[)][](]()][)[][[([[(]]]](][](]]([)[]()]]]([]][(])[)][)]])[])(()(][[[][[(([][[[)])))(](([)]]))[))([[((][)[[[)((][)[)(]())))]](([[(][(()()()()(((])]))[))])]((])[])]][)][[)(()[[[)[())[[](][[(][][](]]))([[[[()]]([[)([]))[[[[)((][][][))((([]([[([[)][))][[][[[(][((]))][]([][]]])][(]](())][[][]([(])(])]]))])(])]()[)]][[(()(]][)][()]()[((])][[][()[[][(()][]((]][((]]()())[[[](](((])]))]()]]]())[)]]()][([]])(([)()()()))[)[[(][)((]])([)(([)((([](()((][[]()[[))]]]))))[])]((()[][][)])(](((()([)])[[()(][[[][[)][)][([()][(](])()(]()()[((]]]])([[[)[(([()(([](](]]][([[)[[)[[]][[]))](([])])])]()[[[[[](([)]][[[][[)[[)[((([]](([[(([([[))[]])[][([[][)((]]([]]]](](((][](()])()[[)][))[][(][]][([[)[)[[)])(([(([[[)[[]][(]]([)(][([[(([]([[][[(([)][)))[))][[)][[(]()[]])[][]((](]])()(][[)([[[][)[])](()]([[((][([)([)[([()[](([()][([][))[)(]]()(]([[[](([(((](])]](][[[[[)[()[[([[][)()](([)][[[[())([]([]]())][[)())([]([)[)(()]][]]()(])()[()())[[]]()][][()((](([))[)][))([)(]]]())])])[])[[[(][[][]][)))])]]][)([(]((((((([]())[)[[))][(()(([)[][)))])(](]](([]([(](()[[([(][))])[()[()[]()[(([()])[[()(][))))][]][([)][(])(]][([[)((()]((]][[][][]]])](][)[)())[]]([]][))[]([([[)[)(][)(([[()[]([()([]())[](])]])))[[]))([)[))]]([[]]())((](((](((][([(](]([([)((]]][)[[[[][]()]()[)[])])[)(][()]](])[[]([]]((])[[(]]]((()[]]][]))][([(]]([)](]]([]([](]])(()]([))[])]][[))()]()(])((]))[[)]]([]()))][(])]([]()[)([([([((]]]]([][(])[](([[))][]]([[(([]())(([)[(]][(]])])[[](][][[)((](]](([]))())([[])])[([(]])[))]([[)[)](][(]]][[[)[[)))[]]()[(([[())[]([][))))]()]())(][[)[]([(][[))][[)[((((][(](((])((])]((]([)[]](](])(]]]]]())([][])([[)[()[)(]])][][][][])]]]())]][()[(](])(()))][[[[[][]()]][))]])][(((]()[]))()[)[())(()(]][])()))]()[)([][)]))(((]](()[[[]]]((](((()(])[))[[]]([[]][)]((]])[([()[[(()()))()][)[][[()[)[[([[(]][[(])]())]](])]([([[[]([()(][(]]((][)))([])[([[]()])(()[[]][[](]]])]([()]())][))[([([)))([)(][](]()][[()())()[(([)))[()[[(][[[[()][[]]][]][)])[[]]([[][)(((((]())[[((()(])[)[[(]][(][[[))))][[())[(]](]]][))())))]))]))]])(()()([[]([()(][))([)((][]](]])][((]()([([)[([[))(](([)[(())]][[](())(])]()(]](](()[([()]][()]][])[[)(])()[[[)([)]))[[[)]][[[])]])])(([)[)]]((([[]([(]])])((])[)())[]([))([]())[)])[]][)]]]())()(]()()()(]]]((])[([](([)[(((([][)(([[)][([([()(()]])[]()[[[()[)())]((][((](][])()[[(][))())[)[]]]])][))()]()))])][][(]])(()))[(][)))][)[))))([[][]])[[][()]([])][[))]]]([((])(())](])()][))[([)[][([[]([])))](]([)(])[[[)(])[([)]))))]]()])[](([[()])[]((][([][](])[][])))[))(())][[)[)([]])(])()(][[]][)))(([[])[])](]]))(])[[([))]])]([)()[[)])([)))[([()([)[]](]]]]((((()]](])))()[[)[[]([]])])(((][))[]]()(())([()[]]])][)][[]))[[[)]()()])])(]]])]([][[][]]][[)[[])](]]]))))(][(][][)([[[])[))][)])([))[([([[]()()])[()]])])]]])](])(()()])))(([]((]())[[))][(())[))([))[[](((](][[])[[[]([]])[]]()]((]]((((]][[][([())[[(]](][[(()]](])[())[)[[])[)[]([][]]([[((]((]([([[[[][([))[[[[)())(([[]][)][[[(]))[[(()[]([)[((]()]()[]]))]]([]][))((((])([()][][))][[(](]]])]()()[[[)[[(]]())][]()])(()[]()(][()][]]([(())(])[(((]][[))(([])[([[]([])[)()[]([([([(][)](]((])]]](()[)[]([)][])()((()]]))([][[)[[]()(())]((()[[[)(][])()]])[[]]][(])([]][()][[[((([(]][]](])]]()[[[([)[)[(])()]([(][(]([]])())[[][)[[()[)[(]])]]]((][[))[(])[]]][])[](]([]][[[]]])()()([)))]]])][][))])][[][(([)[])]))()))[]((][(((]()][)(]][())[]][)([(])([[[()))][[[)(]][()[[])]][[])(]])[])(](])((]](])[][)[[)(([[([)([][([[(((][][]())]]([(]][])[([())(])]][[[[][]([[](][)[[]](]]])[[([)(([()()[[]()]([[]]()[([][]])][)([)][[]]]([)([)][]()[()))([)((([)(([[))](()([([]][()(]()[([)[]))(])]([([)[)][)))([)[](((]]([([(()(]()())])][(]][)(]]()(((((]([)()[[)(](][))[(([(([)])]][[[[))[])[([)][)(]])]((])]([[[)))[]][)][])(]((]))()(][((]((]][(])[)[])(][]())[()[[][))[[[((]]()]()[)))([[])(([([])[)[)(])](([]([])][])[[(((][)]])([)])[)(][[())[[)((]()([()((([[]()[(([)(][)[[(()((]([)([][[[)[[()](([[](([[()]]))[[[)()(])[)[(([(()]()])([[)][[([)(((([))([([))()([[([]]])(])[()[[(](][))(]])]()(])]([][()))]][([][(()()][[([)[[[(]][[([(]](][]])[([]][)[(])]([))[[)][[(][)[(()())](])[]([][))[([[())[(]]]([]])])([)(]))()]((()(]())[]()]])(])([([][]])()]())]))])))()][[[)][]]][)]([)[])[)([)])[[[](]((()((]][[)()][])[(](](()])])])([]][]))[[[](]((])[()()]][)[][[([((][)()]]]]()[()[]()]]][[)(])()(]][(())((]][))[](([][[[]][([(()[([]()](])([[]())[(([([)([])()[)([])](]][[[]]()([())(]]())()(]([[(]]][)[)[)([])[(]([[])](()(((()())(]][([[)()))][([(([)[)[]]]][)(]]])[))[)[][(][([(([))][[[][]]()[()])]][)()[()((]]]])[)()[([[[])()(([[(([[[[[[()[][((]((]([((([)]()[][]()()()(][((]])((()][]]])[()][([][]))((]]]][))]([))[]]]([)[))[[(]]))[)([(]])[)[][(]()]([])]])]]][][()[)(())())][]]](])])(()]]]()(]))]][([)](([[(]])]]]][([()[)))])[)[)[([)))][)(([[[[)()(]))([[(((([([)[](]())]](([(]()(])[)][)[])[)(())]([](([(()][)[(][]][]][[()[][[([())([]([](]()[)]]](([)][))[)[]))][]]](])[()[)][)(([](]])))())(][]((][(([)([(([(]([[[[]](]])[()[([([][[[[[)][[(]]())]((((](()[]]))[((()(][[)([()[(][)))))([))(()[[]][][(]](](](])])][][()[][]((()([[][()[)((]([)(])[)[]()]([)]][(])[(]([]][([)[(][)])[()[][((()[(]]))][))(](](]([[[(])]])](]([])[[][)[(][[(]]([)(](([(]]][)[[[]][()))[)())()[]][(]]]))]()[)][)(]][[])[)])]((()([[()][)()))][((()((]((][)[)])][))[(][]](]](()[]()[[()]([[)][))))[)()[)][)[][)(]])[[[)([[[]))[[(])]([((([([(]]])[[]([]([[[)[[][)([))()]][((][)(]][())[](])])())[[)][)]((()()([)()][([)[[[[]]][[[]([([[](([)[()[[)[)[(([()()[[))))(]((][(][](]]])[][([][((][]()[])[])]]])]([)))()[]](]](](]])][]([][([[(](((])[])[)[)[((()]])][)[))[[([]()[]([)](](]](])]]]][()([](][])))(][)[][)[())[[]][())[([)))]])[)((([][(][)[[][[[((]((]]][))[(])(][)]()([(])([])]()((]))])]][]([[)())[]()))][[)[]((([)((][])(][()(())[(][[[[[(]((()(]]])]((]][])()(((([)])[(]]()([[()[[(]]([)[]]][())()[[)))[))[((()))[](())]((]]]([[[([)]][]]())(](]]([]])(())][[()]([(])([[())([((((([)())])(])][([([(][(]])([[[([(])())[]]((([)]))[([[)[[()())(]((]]))([()]((])][(]]][))[]((((]))([[)(][(]][)]]][))][)])(][][(][(])(][))[[)[](()[[([[])]])([]()()(]))()()])[[)(])()[(())[(](()]][[[)[()[)]](([(][()[(()[]](]((][][]][)(((()]((][(]()])([(])(([()]]([[[]][[]])])])][](((()(])](]]]][)][))))]])[]])][([(])([)[]]([)([[[(([([(](([()](][))))][(([)[](([)]][][(])]][]((]([[))(]]()](())])([(()]([()([[(]][[][()[[()[([(])(])(([]][][)()[)())])[(]))])([(][(()()()())](])))][)(([()())[))](][[])([())[)])[])))[)(((])[][[([]((]))]]][[[[()][(]]()[[](]((]([)([(())[([)([[[[((][][]()])])[][[)][[)[[())[)[)(]((][(][())[([[]][[()[[(])[][][))[[])([)()](()]))]]]][())()[)[][[][(()])[]()]]]][)[[]([][(([][]]])](][)][[()(](][))([[)[(()[[(([][[][])))))][())]([(([])([))()][]](]]))[[]][](]]))[)]]]](]([[[]])])()[())]]([[([[((]([][[)))[[][[])[](([[)]][])[))][)[[[]([[()[[[[)))((()[()])))(][)(])])[[]][][]))[[)())[][][]))]]][)[)[(]])[]]([][([[)))]]]([]]]))]]()][)(]]][)]][[()[[)[)(]()([])[)[]])[)[([[[([]]([(][)[(][(])])][])[])())]())(][])[(])[(](](]][(]))(][[]]((](]([[]))])([([([[([[]([()][]](]()][()(()[)([[[(][)[)[]])](]](]][(()][[([][(]])]])[[))[]]])[[][(])[())])]))[][])())][(][[[](][[)[((])(]())]])]]((][[[(][()][)[)[)[]()]]([]])][](]([[)])][][[]([]])]](][[(](]())(]([[)[)(]][[(([(()(])(])()[[][[)[())][([[()()[)))([][]]]([[]])((((()[())]][[([)[((((([])))[[)()()[(]([([](()))][(()()[]])]])[]]((][(]](][][(()(((]()[[]([[[(][)(][)])][[][[(([[(([(]]][[)[)((](])[[(]])[[]]]([[)()((][])][[([[][][[[([[([[[[][][(()]()](])))][([)]]))[(]]()][[]()())(][[]])))][()((])[))])([[([()()()]((([[]()]]((])]))()()[]][])()([)[([][)]([)]))()(](]]))(]]]([[[([)([[()[)[(])])((((()(][)]([])[]]])][()(])]][][[))][))())][)()((((()[]])([])(]]([([][])[][([(((][[[)[][][[)(][)[()]([]]))[[]][[])([]]()[)))[[([][)[](([[[[[([()))[(][])(])((][)])]][)([][]))([[([((][[([([[[)([(([()[[][[()(([([(][)][(]([[])([([[)[[]]))]][))])([]([([]))(()][[[]][](][((]))]]([([)[]]](]((][[)[()(]))][]](])](]([([]))[[[((()((]([[)())()))])((())]()](]][([](][)[]()[)(]]](][[]]]([](()]][))][[](]]])(]]]((](](][][(()))([)[]()[[]][)]](((](([((][[()[])])[)([[[][((([)([](((][][][)[[(]]]()[)[[())(())])][([[(][]([]][()])])[())[)([[)[)][](((([)()(](](])(](([]])(][]][)])[][]))()]]]])))(([]])))))())])[[[()[))[[][)[[]][][][([][]][)()(][[[[][(([(([)([[)][(]()])[([[][()(([([([[)))[)[])[]()(]][][][((][]])]()][][([[[)(([)(]))])][)]())[]]]]))[)[[][))])))])[][[[)([((((]((]]](]]]))([]]]([(([())]]]][(]][([([)))[][][)]()((()[)][())(])(]([)[)[))][])[([][([)])]([]])][[[[)])]([(](([]]])()))((]][[(((][()((]([[(]]([(()])()[][)][(][)[)(][)([([[([)(][)(((]))()[[(][](([])]()([)]))[](()]()[)]]](()))()]]]([)(])]]))]]][]][])[(([[][[]([))(]))()][)[[]([)])[]))((()(][])(]][[))[[]()[]()][[[[[][)]([()][)))]]]())][()][([)[[[[(()][((]))[])[())]]]]()()]]][])]]))))())(])][[]])]))]([]]([[]([])[](]())])[[](]([[)())))])]([[[[)(])))((([[)[]])][(])[](([])](([[)]])(((((](]]]][(]([][))[))(([[](()]([(]][))])(([]]()[][))]([)))]([]))(][())))[)][[)[))[[])([)][)())([[()]])]]][[)(])))))))]))])(]]))()())]])](]([(([[)]](([)[[())]])[)[))]][)[](]])](((])])(()(])((]([(]](](]][)]()](][][][(]()[()[(]([()((](][[]((([)())]][(])()[)][](([]]])))((]()][)())(]()(()[[]]))][)[(((](])[)()])][(([))])[[]])[[]))())(]())(([(][][]]([))[][]()[([(][(])[]]())))[)())](((][(])))]])][)(()))][])(](][[()][[([(((])(()])([[]))[()])[][]][[((((])[[[)[[)][(([([)([))([])(([[(([(][][))]([]]][))([())[()[]]])][)))[])))]([[([([)(])[))[[)[[]][([)[(]]]]]])[[[][](])]][(]])([(]]][(]][([])(])[()[)[](]]][[)]](((]([([)])))))[]][])[)(])]))[[])()([)()[))(()[((][)][]])[[[)([)([([([([][][([])][)[))([([)[([[(]])[(]))[))[))((]())([(](])[[[[]))()[)][)([[())[)[][(][((]))))[)][](([](])))])))[[](]]]]())(([)))()([])))()(][][)](])])()(([)[)()]()][](][]]]][])))]))[][[[())][)]))](([([[([])[)]]]()][][([][(][((])(](])[)][[)[[](](]))()]](](]]()])[](([[[([[][()]((])()]([[[())]](])][())]][)([])[]]])[[]][()]()][]())[][][([]([)[(((()))]()[[(]]]))))]())]()(()](]))[()]](][]][)]((][[[)][])([(]([)(([[)])[[][[))[[[[])()[((]][[)))][((])][][[[[)[)[([[([]])[][[)))[)[[(]])))][())))][(])[]))][[)([[][)]](])][]][(][[]][)[)][)(][)]]][])((()[)]())](()[[()]]][)()[[])[()[[])(([]][[(](()))(()))]]])[[[[]]))())][[]])(((]([)]()[[[(])][(])))(])([[()(][)(])()))[())))]]]][[)]][[](][)(])])][[]])])([]])))](][[]][](([]](((([]([][)[)((]])]](]]([)()[[])][([(][((]([[)][]([[[[[([[)[[((](]())])[[[(()))(])[](]))]]](([]][(([[[]())](]))((([)]([))]]]([()]](((][[][)(([()[)][([()]]([(([([)]]))])(]]]([[(]([)[()][[)[](][])[]([))][)](][])[])[(((([[()][)((]()]((]))[[[](((][(][][[[[[])])(]))])]))[]]][])][]][[[])((]][))[)]][)][)[][))(](]([[(]()[))[])][[)([][([]([])])(][([]((][)()))]])([)[[)((([]])]](((()(()[(]((]))])]])][[(])(]]())))]])(]][][(((])[][[])))])]])([()((([]))][[]]())])([][[(](]][([](][)[))][[))(([])[((]()]][)](](((][(][[)[]))[[)))]]][(]())]](][(](())]]])[()[)[))[])[])[))(((([][((()(([]][)[()[(([((([()(([(([))]])][)]((]]((([([))([(([])])[[([())(())[)](([()])]][])]([])([]))]))(][)[])])()])(]())]]([()]][[()]]([(])((])(])[]]((])())])](([()]()])[]](([(()[()][]())]())]](([]][]])][)[]]]()])]]([](][))][([[([())[[()[]((]()]))[](]]((]))])()](]]][(]()(()[([][(())]()[[)([[[(((]](]))]])([[)]][[(([)[[(]]][]])[[)]())]((](([)([[[[]][]())([(([)(()(][]])[[[][()]])](([[]))](]][([)(][))((]])[[()(][](]((]([])[(]]])])((([[]]()]][[)[))]](]](][](](([(([(([))[)](([[([))())([]][))([[](][[][]))[)(]]])[()[]](([([])([()([[()]()[()((()[[)([(](())[][[][)[]([][((([)(]([))))()[[[]](])([))])]([))]([]))]([()())([[)()][])]][][)](][))](]((((][(]()(][)]))][([)(()(]([(()(]()(]][])((]())([]()][[[((](([()])))[]]([([])][[)][[)(()]))[])))[]([(([)[)]))()([((((([())(](]]()[[]])][)((])[[[)](())])([[[[()])])([)]]())([))](((])]())[)(]))()([((([[[)[[([]](()()[)]][[[[[[[[)[)[])())((([)))][[])[]])((]()[])))[(]][)())(][]][(]]()](]))])(](([[[])[[(]]((((]))[[](]]))](()(][()]])][))]()[(([()][)[[([)]]])([[((]([)[)]))[[]][[()])[][()]([([[]())[][))[))[([[(]])((])(]))]))][]))()))((]])([()))[)(]])()))](]))[))[([]))([))[[(([)])))])())(][)]()])][(()[))[])[)(][[))]]))[)]][)))[)[](])]((]([]())]]]()([([]]()([((])])())(]((]())[()])[((]()[]]])()()](][)[()])())(([(][][(()((][[]](()(((])(()(](())((([])](()[]](](](][)])))))][([[]][]()))])(](][()]))][[[([])))[]())[[][[])()[[([)[)]][[[][])]))[(]))]()[)(]]]])][[([)([[))])[(]]]]](]][]))](]]]][])[][[)][[[([[)())((())]][(]])[]]])])((]]][])](](][[(])]([(([])((())]]]((]))][]]][])([)[[]([([[][)]))[)[[[[(])(][[[(()[)[[))[[](]([[((]())([](([)))[)([(])])]]]())[((]()[)([)[(](([](][()](][)()]]([([)])[[)(]))][](])()(([)[))([))[[[)(()(]]]))[][)]()[))][](](]([[((][)[])([[](])]][((](]](()[[()]()]]][()])([)))(())][[[][)(]](]))](][)[]([][()))[[()]]())][(][(][)][(([[][[(]][[(]])[)[]]()[]][)]()(([[[(]())[([[]][)[()]()[[[[]))[((])))((](])((][)][]][(]]([)[)(([[())])[)[)([)[(((](])]]()(](]([]][(()][[]([))(])[)](]]))[[[[[[([][[[[(]])[)()]([(])[())[)[[)[]((]])())(()([([][)])[[[]([)[(](][(][[(][))[]([(]())(][[(][)()[)]]))])()][))]]])(()][[)(])[]())([(([]])[)[]]([(]()[()[[]([]())][]((])[]](][)[[)([]]([(][()[)][]]([]((](([][))[](])()(])(([([])]()][)()]()[(][[][)()())[)[[)[)][))())[[[[)]((((()[]])(]()[(][)](])[())(])([[]([[)])[)(](][[[))[][[[)))))(][)(([)()]([())[)[()])])([([[(([]()(](([)[[([))(([[[](()([[[[[()())]()])[])](((][)[([)[])[[][(]([)]]]]]]))))[)]]]())])][[](])]])])][[(])]()]()[(][])[[[(((([())()][)(())))[)]))][()][)]))[(][[(](]])[)])()((](((]][)((((][[][)])))[))))()()[(][[]([[([[()][[]](([][)[])([[[)([))([]()](])([([[)](])([](()][((][)))(][)]((([)[](]()(]((()()[(]][)]()()[([))([](]]])])[[([[][([((][]](]](()())[()((]][)[()[)](([](][((]()(]][]([[]](()](][))((][(()]])](([[((]]([)[][[()))[)[[)][(([[([)[[)]))[])]))))(([([[(]([([)[([]))]()(])(][])[)]]][)])(])[)[)()]]()[)])[[([[[)([]()(])[())][)[[[[[[][])[((([((([))[((](])][([)(](([]][[])[)[[)())[[))()](([[[())[[([([)][]([[[[])[][))])[[)[]](([)([[]]([(]()([][[[[][[])()(](]])))[][((]]]](][[((]][([]]([([))][]())([]](((][[]((]]]])]][[[)][]]()[[)][(])]]]][)[([]](][([(][[][)][][))(((]([[)][[)(([()([()([([[))]]]])(]([)][[)))(])([[[))))]([([[[)])])(]([])([)()]])[([]]]])]]([([](][(()))]()[][][(()]]([)[][[]]([([]((]])]))[](][[][[])[[)][[)[]][)(][(][[[[((])[)[][)])[](]()]()])))[]((([[[[)]([)][(([)(]))(]()([))]])[(()([())[[][]][(](]][[((((][[)([[]][[))[([())]])]])())[(](])(]([[)(][([))](([]][[[[))](([))]][[)([]))))()[][(])((])][])))()(([[)())[(]()[)[[()[)[][)([(()(][((((]][()[]())])))(((][[(([]])([(])((]]][)[](][]([))([)(]]([[[[](([))[[([())()([(]((]][([(()(()))()]]([)])))(])][))(])(]][)])(([](([)])[]][[]][)[[)[])]](()]])](])]]]]]][((]])][][[)[[[]))](])]))([([[[)[[()))]))][[(][)(()][)((][()([)))(]]](())[[][]((([[][[(])(]][][[([]()(((][()((][[[[(])(()[([()([]]((][([[)](][](()[[)(]([[[[)[]([([[]][)((][([[(])([[]((][(([)(]()()[][][])[(](]][()(][))][][[))]))[)([(([[))))([((])])([[()())[]][(](]][)))[[()]))[])][[]]((](([())]]()]][((]([[])))]]((]])[([(([([])](]])[(])]]])[)]()([]())([][(]][[](][)][)[()]]([)(](([][)[][]))))[])[(((()()))([[([[[(]))([)][[))[))])[[([((]([]][)))][[)]))()(()]][()[][([])]][([]]((][)))](](]()](]))[[[)][))])][(]([)[[[(()])[[[[[[)]]])[)([[)[()[[[([(]())))[][))[)()()[)(]](]]]]()][[]([([(())())[])([(()[]])])])[()](])[]([][[][](][)[[)([(][])(])(][)(()((([[)[((([[]]][])))(][]]([(([[[([][]][((((]()[]()][])[(([(]]((]]])])[([]([]])(([(([[][([[][([[([)])(]()[[([)])][))[))(()](((][()()[[)(]][)[](((]))])]]](]])([[[)))(][(]((]](](]())][(]]([)[][[][)(][[)]][][[[[[[(][][())((([]()[[())((](])][[[]][(][(])([)[)([(([[)[((])()[[[]](([]]()([)))(([[[]])]])[([(][((](][))])()[()](()[[)]][[([])][]))[](][([(]]])]]]))](][]())][)))[(]))[[())(]([)[(]][][[)])](()([))[[[(()]))[([[][[(][[)]]([])[)](]]][)[[(])])([](]][][[][[)[[[(][)))]()))(()(()](([()]]((([)))[[)()())))[]()])][[)]))][([([[[(()(()[[])[)])][])[)][]([[)](((])])]([)([])([)]()()]]()([[)([()][[()[(()][[)][))[][[][((([)[)[(()))((((()()][[((](()[)[]]]((]][(])(][]][[[((([]]()[(]()([[[)())()])()[]]])()[(](][(]]][)(]([]([])[]()]([[[[)))()](([(()[)]][))([]][]([((([[(]])))[[[][][()(][]]()(([]))][)([](]]][[()[([]())((]]])]])()[)][([[()[])[][[)[)((((()])]((]]((][()([)]][])))]][(()[[]((]))[([]])[[)[][(]][]()[[([[)[(]((](][](][([[[()(([][[(][)[))(]((]([()[)()[)(](]])[]))(]])]]()[((()][)((]))]]]((()]()(()(]]][)]))]]([])[([])]]([()(]())))])]]())]))()]))[))[([[)[)[)]][[)[[)])][])]((]([[)(([)[]))([[][[[[]]][[][[(())(][)))[(](([(()](([(([()(()((])])][](]]))(]([[)((]((])[)[[)(((][[((])[[)((([[[[)[]([][([]([]()[[[](]]()]))([]([)()(((](([]][)(]]][)](()[)))))[()[(][))[)(]])([[)])[()[([)][)[(]([[)[])(])()]][[(](]][)])][[[]]()])][[]()]]][[(][()(()])])])[)([[())[)[])(]]()]))([)([)][)[(]((([()))][)]][(]][)((][)]((]](]]()))][[)[(][))[]][[]()]()[)[][[))][)](()[)]((][))))(())[)[)]]())(])(]][[[]][]))())[][([[(())(]]))[[([]([)][(])])))]]])([(][)([)))[()([[)))[[(])])()])((]]](([]][))[[]][[))))[(])[][][)]()([)[[]([](([)((]][)((]])]()](([))])]((][)))[[)[][()[[)[[])([)([][[])][)(][][)()([)(]])([][[)[][[]((][][))[(])][[([[][]]]))])))(]])()][][([[([[][]]])())[[[()(((][]))[[[]][()()()[))[)()[[]([(()())()[(((([(([[[[))[[])(][)[)(])))]())][[)(]()])[(()(())[)[][)[[)(([][))][[[[)])][(())[)()[)()]]))[[])[]()]([[())](][[)[[][[(([[[(([(())(]][](()[()[][])[)]([]())()[)[)(([[[[))(][(]((](())([)[]]))((]([(]][]][([)([[)))(([([[[)](])[](])))[])[])]([()[[]([[][][[)]((]([))[[[)[(](]([))[[(([]][)[)[[)[[)]]])[))(])(()]])(()](()[)(]]([[[[()]))]]])(]][([)](]]])[)(]][([))[)[)[[])])](())(]])]])(][)][)][[[]))(])()((((([())[](((]]]]([((([)]](][([()]()(())]]]((][)())))((](])[)]()])]]]))]](([()(][[][[[([]))(([))]([(([])()[]]][[())]((([)[]])]][]))][[]))(]()(][()])[[(((](()((]]))[][[[(]))[][)(][]])[())))])[[)[[(([]][(([()][)])])))[)[)[()[))]((((]])((]))()([[](](](]))())[)](()((([[([[]())](())](][][)]]((][]][))(()))]])][)])))[]([))[[(](][]]]][])])[(][[][[)[))))]()())](((]])(]()(]]([([])])](]](][])([])[](([[]]][)[])])[)[(]))[[))])))(]([[[)[[([[)([[[)[)((]][[[)())[[]]())(][[[(][][)[[)(]([[))))[)[[]())](][](])[)))([[][[()))))])]]))[]][[()[)[[())[((]])([[[[[((][]))[)[([)()))[[[(][[)[(]](])][(()[((]([]))])](](]((())][)([[()(]](([(][([[[]))][[)))[]]([(][)])[)(]([)[())))[)][[)[)[)])(([])()[]))][)][][)]]()(]([(((](]][]()]()))]])()[([[]][([(()][])][(([)[][[)][)]((]([)[(()])(](]][([)]([[[)()[[))][)]()(([](([)][([[][[[)[[))()([)())))[)(][]))]](][[([[))[(([)](]]((]][)]())([][))([[[]][](()())](((])])[])[(])]([[)[(([](](][[)[([)[)([([]]](](]][((()]][)([)([[)(())][)([[)[)[)(()]][][)(((]([]])])(])[)[[[][[]))(]]))([]]([[))([))]([([]](](][[[][(])[()()]))[))[[([)][(((((([[([[]])[([()([]))([)]]([((())((][[)]]][][([])][)(][)())))[)])]))][[](])](()[[()(([[]([]]][[)]]()][((((](][))]((][](]([)))(][[()()][][)][](((]))]])][([[[(())()((][[[)[[]])][)(]())(()((])))))([]]]()[])[(]](])[])][)((())]][)[([](((()))[(])(][[((([([))[(]([(((()[][([)])])(()((](([)()](]]][[[[])[[[]])[)]]()(])[)[]))][)[[[))))])()([()(]([[([]]([()()(())]()(]]]([[[(][](([()[()[)])([[(]][)]())[(]](()[[)((]([()])]]([[[]])]]]())[])]([((]((])[(((]]]](()(]]([)[[()[[[)(([)[[])]])[)]][)()([)[([([]))[(())()[[)[()))[([)(((([[)][]])]]])[[[)]()(]))(([[)([[([]))[[][[(()]])(((()]((]])()[]]]][)])(()[)))[([)[)[[[())[]]((]]))[([]](][[)[]](((]][[)])[[[]])(())[]()[[()](][]()((][[)[[[](](]])[)))[())()[)][)()()([()])[[)((]([)[(][]()]()[))([))))[]())([[[)[)))]))][(][()[)[[)])])]]))([[())()()[]([([[()(()))(])(([](](]()(]([[)])[[)[[(]])([(]((]()]]))[([((])][[()[]))][[])][(]](()))[()[()()))[))([)(([([])))]]([()]([])[]))][[(()])(()))(](]([[())(())]])())[))[]([((]](]]()([]))]]]([))(][[[]([[])[])]][(]]][[)((]]][)())(]]][(((()[])(](()]((]][)())[[()())]]])[([]((()(())](]])(()[([((][]))]]][][([]]]((([](]]((())()))[)[]](((([)]][)[][)[]]])))(()[)]][][][])[((]][))(]((([(](][][])])[)[(((([)[((([(]][]](]]))())([[][)(([)[[][)()[]]][[]))())](]))[))[))]][[([)]][]()[[]]))[[[])[(()][[])][)(()()]]([[][)[[)](]([(])[[(([)((]]]()]))[([)[)([(]))[]()[][])][(())][)][[)(())](]](])(]])])))(()([][)([](]])]((]]((([][()([]][[[](]())([()[)])[](])[([(()[)]])()())[]]))[)(]]()([]([]))]))]))[)([)([)][])))(])(([[))[(])]]][])[[))()))[][]((]([)[)]([]))()(]((][)][]]((]()]](]](][())[((]()[][])(])]((([]()[([[](])[]][(](([][[)((())()())[)[[[()[])(](()(()([(((](])[]]])][)((](]]))))[(]](])[)[[]][)]([(((](](()(()])(][][()(](((](][([([[((([))[]()[()(](][]((][[()([([[[][(]][][()([[([([)([[))(])])((]((()](]])[((])[)[]([[[))))([)][(]]))][)[)()](][[)(]))())[)][(]([())(](][]))[][([[[]])()[(](]][[(()[[)][[[(])])](][)]([[](([([[]]])](([[[[((([))[[)])[]()])(]]](]])[)))((())[)(][]((][([](([]][(]]]([)[([))()(((((][]]]]][[)][[]]](]]])[[)]]()[(]]([))[))]]]][))[((](()))][[])[()([()[)]](()[()[)()]]()[[])[]]](][]]))(])[(([](((]])[)([()[[)(]((]()([]()(])[[[[(]]])]]([][(]]]]()()[])[[(()[]([][))([(()[](()(([])[][]([])]]([)]][()[[))](()()])(](([])))([)[[[][[)[]][)(()()][]()(](((()](()])(([])])(]((][[])](])][(([]()([[(]([[((([[)])([[([[]([[(]]][[[][][()])[(]](])()[)[[[][][)])()](])([)])[][[)([[[[]]][][][[][[())()(][()((([[))()))[[(])))]))([))[[][)([([]][)][[)])])[([(](])])([][(]))[(][[]]))](()](([)([((([(]([]][[)[[(]((([([(]][]))[[(]](][()())]([[((]([)[[][([[][(]][))])(](]([[][[]((])[))]]])[))([()]]][]][[(]()[[)[])][](][(([)(][)([(()[([)[[())[[[]()(][)[][[[][)())])[]][][[())[](][]))))[)())()[([)))])[([())([])]]]([]()(][)[])]][)([([])(](])[[]]]][[[[)([[(()]][[(((()([][](]))(](([)((()))(])[))())))[()))[()[(]]]][)[]])[]))]][)][)(]()][][]()(])]][]]]])([[(((][[)](((]])[])[([])]]]])[[)[))([((](([(])[((](()[[)([[()](][][))][()])]([)]((]((])[)][([])()))((([[](]](][)])][)([(()([(()))(]][]((((([]([([[))(](([]([[[]]()[[())[][]((]](][[[(][))])[((()[])[(]))([([)]])[[[))])()[(](]]([([[([][)([()))([(]][]][(([([[(]])]))]]]][][)()](][]([][))(([)())](()])(](([)]][([][()()]])((()()])[[)]]](([)[[[)[([([]]([[()[()][(]]][]][])(])][)]]]])(()))[([[[[)()))[[[(((][)[][([()[][[]()[][((]][())][])((]))))()))[[)]))]]((]][])([(]]([[([])(([()([[)][(](]][[)[][([))([)]([[]])]]]][](]]][[[((])][][]]]()][)[]([[]()]]()]()(])([[))]]][][[([[)][])]))[))[)](()][)[[(()((])]]()([])()(](([]([)[(]]]][))[(([()()]((])[]([)))])](])([(())]][](](([)((]((]()((())[)(](([()]([([((]()[(())([[[[)(([)()[([]([]]]]))])(()][)([])](())([[[)((]][))[)[([)]])])[]((]]]])[]][[)[)]]])](](][][)[[)])[]]([[))(()][[][]()((][([[([]))[(([[][][]]((]))(])(](][]]]([[[(][)(][()(]])()))((]][))[])[)])()([)[)][]([[(](])[)((])]()]]][[](]]][([(])][[(])[)[[)]][[[[()[((]][[[([[[)()(]))[()])[)])])([[[])[([)[][([]])[)(][[]]()])]]()))()()([](]]([)][[()][[))]][][([))]][[])(])[((]((])(()(][[)])[))[[)][)][])[)(][[][][][[][[]]((](((((][[([()[([))(())]])))()]))[(()))[]([))([)])]]]]](()()[[])())())[(])])()][(])(((][]]](]]([)](((]]())([](])[]))[[][())[])))(][[[[()))[()]([(](](][))][[)[)))]]]])][(]]))])][((])[])[((())]))(][(([]]])()(([((()))(]()[)))([[)[))([])](()[)])]]()]([(](((][(]][()()([[]())([[)([)[]))](][[()[][)]](])(][][)[)[([()([[[(]]))])()])([)]]](([[)]()][](][)()()[)])((]]([[()[[][](()][()][())]))]]([(])]][()(()[[)[))))[[)]](()()[(]()](]]])][[])[(]]][)[[[]))]][])(]]][[)])))](])()))](([)[(]][](](][((][)([([)][(]))][[))(()(]()])[][])[[[[[)[())()([))))][))[[](]]()][[)[[)[][])()[][((]()[([[))((]][()([)(([(]])[())[)(])()[[](](]][)(](][[]]])[[])])][()][[)(([)])[[[)[))](()[[)])()(()][))](]][]]))(((]][[))(])][[(])(()[(()(]](]])[[(](][(][))()))(][))][())]]))]][)[([[])]()[)]]])]()][][]()])((]][))))(()[)[)](][[)(((](](][]([)[[])](](]))([)][[([][(]][()][[][][[(]))))][)][[()[((][)[([[)()]])]([)]])()](((]([]]((][)[([]([)[[)()))](]]](])())[[(([(([]([(][)[[([]])[((())[[))[[[](]])[(])[()[][(]])]([])](())]([[)])(]))][][][(()[[((()][)]]][)))(())(()(]](][[()]])]]([()([[))[()[)[(][][[(()[()])]])]((([)())(]][))()](]]((]](([[])()()))]((]])(()]][())[[[[())[[)[]])])))]])(]][(()[]()(]]][([]][[[((]][)([)[)][])([))[))(]](()()[][[[]())][)])][(([)[[[[([])))()()(])[)[)((][]])]()[])(]([[()[)()[(()]())]][[[()([()([)([([()]][[(][)]]())])][(]()])()(][[])][][]([)(]((](]([)]([)][()]([)[))[[])[([]))]))(]]][]]][([([([[([]]]([[[]]((()]]))]))[[]))[[])[))([)]]]][]]))(([([)[([[((](()))[)[)(()[])]][)[]]])](](])((])[([[)[(()[(((][(][))[[())][[[([[[[])))[][)))(](][(()[]])[[]][)))[])[)([]][]()((](](]][)((])[[((])]]]])))(()())[]())]))(()[)(](([]((]([)((((()[)))][((([[]])()([)][[)([()))[(]]]([[[()([]]][))](][)]]([([][[[)[[)])))(]))](])[[)])(](](([]](])[]])]])((][[][[(]([])](][)())[][)([[)[[])[)[()]())[[)(([[[[[(])])(])[[][[[()][]]](()(())[))[((](]]))[()]])()](([((()(()(]][)[)([[]]]]))[[(](]][((([)()]()[()(]([)([())()[[(]))[)(]])])[[(][(](]))())[(][]]])[)(())]]]([(](]]])]][[)])]))))][)(])(]][]]][[))[))]]()(]]]())(()))((]()[]((][]))[[)[[[)[[[)[][)(()[((((([(])()[]]()(])]]([][[()](])][(][]()[])))][[[[()[[()])][([])[)])[)[[(([[[][(]([([(](([)[])[[(()[))]([]]]()]](()))][([))[[)())]([[)]])(()[])()[))(]]](](])([](]]](([[(][)](](]))([[(()[()(])))][))([)[)][()(([()()(]([]]([))[[)[[(])](](]([)[]([[])[[((]]([)(]][]()]]))[))[(()][([]((]))[)][][)[))([]](]]]([][)[()]]]][)[[[))[[)]][]()[)(((](])())][)]]]()((])](([][[]()][)()]]][)]([]](]](][[[[(]])[]]]])[)[]]))][[[]])])))(])))[)[][([(]](((]](][[][([()))[[]((]])[([[)[[])[(((][[[([([](]))(]([[((])([[()]](([[[][](])])]]])[)))[(]]][))]()((][[())][]])])[())[([])[)[[)]](][[(]))[)(((][))])[[(]])])]([][[])[)[((]((](([[]]]]])]((][())]([[]][[)([([[())(](())](])]])]))((([](][)())[][(]])([(]])])]]])]])(])][))])((](]][)])((]]](([[((]()][)[[[)[]([]((()([)][](]]()[][[)][[]())([[]][[)((()[((])[)))())()[[[))[])[)[(]([)(])(]]])[([]()[])])[[]))[(])(][[)([(([[]))((])))))())[)(]((([(]((([)][)]]((((]][]]])[(][[)(][(([([)])]])))[]][([[]]()])]]([[(]((]()[[)[])()()()[[]]((])[)()](])]([]]]([[([))))[[]]()[]((()]]))]]])])][))()))([]((])[[[[)[[]]]((][]])[]()[)[[)]([[(])[][[))]([)])[)[([([)]][((][)[([)]][))][)]]][()[))]](()[(([]()()]]))[[)([])]((([(]())(][[)[[[)()](])[([([[]]([(](([)[[()[((]]]([((][()()[[]()[(((]][[][(]((([]))((([()[][()()][[]])[](((]][[)([)[(([)])(]]((]()])([]]][)[(])(()([[([[[)])(()([)(]([[](])][)]((][(]())([)(]][)]]])(([[)([(([]]([])][[]])][])[])])[])]((((])][()]]]]())(]](]]]][][])[][(](()(]()]([]((]]]((]()))([[[))]((((]])[[](([()[()(]([()[)([()())()([)([))[))[[[))]])()([[[(][]][])([[(])[[]))])]][[]([][])][][[[(])(())](]]][](]]]][]])(([[[(])()(([][]))((])()]][][))([))[(())[)([[)](](][)((](])[])(]])((]))])[[[))]][((([]))[[(]()([((]])()](]]))()(([)][][((](][(][]()][([[]))(][[([[()]()[())))[()[[([[](])]])[][([][())[)(]([)[)[](](][([[()[](])([])))))[))])))][((([((([]))(]][[([][[))(())]((](]()]))][][]([]][](](])[][))([]](([(][[[[[)(()(()(()[)[)([]([)](](][(])[()[)([[[))[(](()[(()]]([[[([)([()[))]()([[([)]][()]])]]]][)(][[)]]]]](([]([([))([][][[)]])])()(]([(]))](])][(](][[()(][[][)([[))][()[(])][[]][[)[)][()((((([)[][[([[)([[(((][([[)][)[]])[(]]]()([())[(([)]]((()[]](([()])][])()[][))(()([)))(][](()(()[))])[)][()][[)](()([)(](][(](]](]][))[][[(][[]))][(]]((([)][][]((]((]))([][)()][][]])))][][[[])]([()[[[([(][[](])(((]])]][)[(]()[[[])([)))]])]())])](][)[[]](]([(())(][)[])[((((])))])))][[])[]()(](([)][)()(])[)[))(]([)))]]()(((]]]]((([]))))[))]][(]](((][(()[[](][]])([[)[([][]()))[)[(])]][)]()][[[[()[[([][[)]))[))))))([])[[(]((((])])[(]]((])[])[[]((())([]()]])](]]((()])([(]))([([])][)(])[(([]])[()([]][)[[(]()[]()]())((][]])(][((]][(()()]])][()]])()()[)[[))]([([))[]][()][)[((()(][)))(()]()(()][]](]((([((](([](()(]][[)[)[]([)]())][(([)[[[([)([[])[]]]])([[()[]]]([][[)([(]][]))])))][[[()[((((]]((()([]])[[))(])(((](])()][)([]()()[(])]))[[][)[[](])([()]])((((][(]])]))[]](]])]()[(]((]()(]))()(]][[()[[((]]((][(([])(][[)())[([](()[((])[][([[()(((]()])][([]]][([)())))]()[][]([)]]])](()(]]](([(([](](((]](]))(])])[[))([[][()[[([][(])]()[[[[][]([[))[][(])]][)())[]])][)())())([(([]][](([][][[])]([())[)()(([)][)[)())(][[]](][][[][((]()()]()[))))[)[()[(([(]([[]()]([)))(])[[)[)](())())])]]([(()]][][[[(][][[)[][)))[[](][)[))(]([(]]][](())]])(][]]([]([))])])[([]]([()([[](]]))()]]][])([][))))[[][[[[)[[]][([()[)()[)]))[(((]()(([][]([])((((]()[)([]))]()]())[)[[]()[]()[[[)[()[)[]][)[]](]])](]][)]((()[][]]())(][][]]()]][[][([])([()](]))][)[](][]([))[[[[[)[(]])((([]((]][)([()][])()[)[]()][]]]][)[)))[[([][])])[)[)])][][[([]()]]][][)(()(((]((]((())[[(([](]()([[)]((](]))())(][(([()]([)[(([[)(()([]))(([()]]()(((()](([[)]([()]()))(](([))(](((][[][)[(])()]][[]]((](()][[(][([][][)(]([][)][))(]]])[)])])[)([[[])]]()[([[)][]((()])()][)]][[][][([[[[(([(]())[]]](]((()[][)]]][()()]))[]((]][([[)][()(])[([)[)]]((][((([])][[)])))()([]]()])([[))[([)(([[])))])[]([][()))[][]])(]([[])((]([([])()]([)[[([[]])][])([)]))((]](]([[[]](](([)]])]])()[])())())](((]][])](]])])]])]([]])(]([][[]([[[]])[[](])(]]]][([(][([))])[[]()]]][))((()([()()]()]]()))[(][[(][))()(([[))[[)()((])[([(]()])]][[(([[())])()]()()[[]][()([]]])[]([[))][(((])])[]))[])[]))[]([[[[))(]])(]))([(([)[]]])])[(][]((]](])]]([))]][[[)][)()))(()[[)[][[((())])[)[)]((([)[]([)][(][(([][])()(()[[))(]()[]])])[(][)]])()((])))()[)[)])([)[)))](][(]][)(]])]])([([)([())][([]])[())]([][)[[[((())(])))[(([)[[()[[])[((])[](])])[])([)[][([()()[[]))((([((]([[))](]]][[(]]](])]((])(([[([()]()(()[[[][[()][[]([[((([][[)[](]()))[([)(]()[[)(]][)])]()(([([)(([[[]][)[))[[[[[](]]([]))[))](((])[)])[(]][][([()()()))]])])([)[))[[[][]]](((](])((]))))[)()()([][()]((]))([])[[]]((([((]([()][]()(])]])[[(())[([(]]]]]]](]])[([][]])[((([[)[][)[[([)][)((([]]([(])[)[[[)])[[][[[]([((])](])(][][)]])(][[])]]([]])(](]])(([)))))])[][])[]))())[[()[))[[][(((([](][)[)((](][)]([[)]])]()()[][)[[]()])][]])[)))([]))[]](]]([](]))()))[)]))([[([(]]])]])][]][[)(()(()[][((]())))]))][()(([)]()](]][([)((])[][[((])([)()([][)([(][([[)([]]]([))[]]])[(([]()([(]]]]]()[(()((][[())]))(])]])]([)])())[(](])]))[[[((())[[(]]][)[])[[[][[][)]])[(([)()(]](()[[][(][)[(([[[][)(])[([]][)(([)][((()))([)((])[(([)[)()((](([))[()])()][)][]]()((]([)())))]()()([[)))(())][()])[]([)][((][[][)](())[([))[)()]))]))][]))([(()[(](]])((])(([[)][])[]])[([[)(](]][()]([[))(]([)((([((][])((]))))[]]])(][())])][(([))[[])[([]]()][][]])))][[[(](]][])(]])[([()]][])[[]]()][((]]])]])(]]()[]()))(]][]]]()[[[[[[[]))[)))[)](][)[[)]][]])([]][[[[]]]])))([(]][)]([[[]()])()[(([[()[][([])])[([)[(([)])()](]][)((([[)]][(((())[]][])]())[]()]([(][(]]][)[[[]([]([(])]]](](])[)(][[(]()[[((]][])]])](])((([[[[[)))))(]]())()())(([[()[[)[]][(]()[](((])]]()](]])]]))[]])]])()(]()(()]()((])()]]][(][()))[)[]()))())]([]()()())[[][)[])[)))])]])])][[))[]((][[()[[[(]()]])[[((()])))(][()[([)))][])[])[(][]()(][[][(]))))([[[([[(()([())(]([[)[]]))[[][](((](]])(()((]())[[[(()][))[[(][)[([[()[[)([]))[[()[]]][[][([)([[[])])[)[))]]]([][[()])(]]][(]]][)(])](])(])]])][]))[))[])[[(]()]][([]))]()[(()[((()[[((]((([](][[)(()(]())[[([]][([(])[([[()[)([[)[)[)(]([)]()(]][)][[]])(][)[)])((][()[())))()[([)([)[(([[[]])][[([)]([)][](]](])[((((]]))[]][)))]]][]]((]()[[][)]([[[([)))]]))])((](]])(][][]]]([)()(])[])((][][)][)[][(()[[]])[](])[[(((]][(()[)((])])[(([[](][)(]])[])([((]])([[)()[((]][])(([)[([[[)][([([)])]([]])(]))[)[())(](])[([[[([(([]()[)[(](([[)[)]))()]][]([))][][])[](](]]][]]]))()]][(([))([(()[)(])(([[[((]]]]([])))[[())((])[)[((([)]]][[[(][][[([))]()))]]])]])[][[)]]()((((](()][)]))[][)((()]((([]][[([[[]]()([()(]]())[]))[([))])[])]][(](](([([](((]()(([(()]][()]([[()[](()()((][][][))])()()([([[(]](][](]][)[[][()[([]()[]([)(([[)(](([([[])][)])]()[([[)])[)])(([[])[(](([)([)](])[))[[(])[[[()]][)([([)(][))(])(][[][[[))[)][))()([[)(])(())][][)[(](]]]]]]]([[)[()()[)(][[)([()])](()[[([]][[))](([[]([][[][(]])))))[[([()]]))]))][]])(](]]))][()[))(](][[[([)))]])))([([([]](()[[][))][][(](]([[[))(([][[[]]][](]](([(]]()[()([][][][)(()][[[]][()(([[](][)[][)[)[(([[[])()(][(][)])]])[)](())[]()](][))[())[)()][((][[()([[)[]]](])(([)[)[[)](]()(]]]]])[](((]])](][(]]](][]((([((]()[[[)][(((][[][)([)]]))((](])(][[](]))(())][]((])]()][[[)(]][)[)))(((()[)])]]))[]])(([(((]]))(([[([]]]())](()[]]][()][))((](][)()()]([())[]()()]([[])[(([]([()[]([(]()))[([)][]((]))())[[[))()]]]()][][)]()[[[])[(])[[()[)]][([([(((][((](][]]]](])[[(]))])[[[[[((]][])(][))[)[]]]]]((())[[)]]])(((((([][)]]))]))(()(]])[([(()([)))[]))[((([[(][[(](]][(])][[))]](])()[((][)]([]())])[())]))((]]([)([)[[[]])]]][([)]))[[[()()[](][[)[()[[)([[((([]([(((])][([[)(][[[)])[[)]()[()]](((])(][(([)(([((([[[]](][]((]([]()([]])]])[[)]]])[[[]([])((][)[(]))))[[(])](]]](]]])])[([)][][]()[)))(()]]()[][)](]([]]]()]]([[)][]))]]]]]()[][)[)][])][)]][[()(][[]()]((])][]][))])()[())(([]]]]][](]][)]]]](][)])[(]][((]))[[[[]]]][([[(][))])[))[))]][)[([()[)))([[(([][)](][([))])]]][(()([[((([(][(])(][[)[][()[(][[[[](]([[)[[][([()[]]]]([]([(([([)]))[[)](())[]()())])](]((][])[)]])(]()[])((]()([(]))[([][[])[))])[[[]])[(][()[]](()]](](([))[[)]([)[)([[)[[]))([))](]]]][]))()))[([[]](]][())(]](([([)()[][(]]()[]][[]))))][[[(]))()[])))]()()()]](]])][(()(]][])[([[]]]([([[[[)]][]([(((())))()[)]])]][[][))(()()[([))[()])])([))))))]([][[))])][)]([[[)](])(]]][[]][]][[]))][[[)()))]([()]](]]([([](()[[][])[]([(]()[](]([(()[][[((]))))[)[[])[][](])([)[)[[[]([]([[]]]]([())[[[(][])))))]]))[[(][])]](()(((](][()[([]]](()([])(()][[][[)])()])[(((([)]()]])[])[([)])([(())(((([]]](][(](][]]([][[)[)(])((((((])]]]()[(]([[[[[(([)[(]]][)[([][]))))[(]]][((()[[](([()[)]][)]([(((([]][](]()](][])]]()(]))(]((((][(()(]]]](())](]()])([([(([()[)[]])([]()[(())(](]))(]])[[[[))]]]](]()])]())(]][[])]]])]())[(][))]())[(([)[])]((][[([[(])][(([][)[([[))](([])](()[]])]))(]))]]]([)]()(]))](([[([))]))([[((][]((]])[[))((](]((])[(([)[)()])[](][[(()][()[[)))(([)))](((())](()())]]][[)])][]())))(]][[][)[[[()][)))[((]([[)[[[][)[((][()][)]()([]][[[(()[][]](]([](([((([]])][))])[[[]][()[[[(]])[[[))]]]])][)]([)()[(](]()(])(]]((])])]]())]]][]])][][]))[))][)][]]]())]()][]]((([(]()[]()](()][())][[)()([(])](((]][[)])](()])]([)))()[[()([([(]([[])[[[]()]([][](()[)()]((()](]](([((][]((]][[]((()])]))[(()[()[]])[]]]([(])[])]]](])))]((([((()]](]([])(()[([][))()[][[]]][(])([]))))])([[][()])((](])][([()])[)(])[[((((([)()(()[(][)([))]))[(]][[][(((()[)(]]]()[]([(](()[]])[(]]())[[)]][[(])))([](((()[]()[])[]))])(]]()([[((](][)()()]()])[)[()()()][[)(()([()])[)()((][)([([)(][)((]][()][()(((([]([))](([)()])[)][[][][[(][()()())([[[()[[]]][(()(][((]([][))[))](][(]()[]][[([))[][)]))(]](]]()][]][)[((][)[[](][(]]](((([[[(]][(](([())(])[]][([)))))()]]()([[(()])](][)(]([)[[((([((([()(]])]([)]((])])][]([([[(((((](()][[([)([][[][[])((][(][[())[([[][)(()[([()](][[])]])][))][)()]])[[)])([([([])[)(])(([][)))()([[([[)])](](]](]()(([][][[))]([()(][[)])(][(([(](([])[))[([)]])[]]]()[)([]([))][)]()[)])[][[][]))]][))][)[((])](](]])([[[([][[)()[][)()([](]][)]]([[)(([[]]((])]]([(]][))][()][)[((][(([[)]()([)]]([)[([[[[)])])()][[[][])[)[)[()([()([)[)(()](][[[)(]]])]([]]]]([[))]([][[][)[((][[[[[))[[)(]()))])(()[][([][[()[(][[[[))[[)]((()))])[[[())))([[)(]]([([))[]]]]]]))(]]](([)]][[])))((]([][)][())((])]]())[]([]([[))))]]]())]())()[)([)))]]])))][)][(](]])](]())([[]([()[)[)()])(])[[)]]]]]](()]))][)][(()[()[[)((](]]([]][[])])(]][([([(([[))][)]])]])[[)[)[[])[[(][(]](([[[)](](])[())]])()([)))())][]](][([][([[([[]][([][[[][(])[]))])[]]))][)]((]][(([]()][([([())][(]))[)]()([]()[(()))))[]]][(())(]]))]]()([))]((]]])](](]]](([])(([)))])[)))[]([(])]])((([]](])]))[]](((]])]]))])]]((]()(]()])[[([(]()[)])])[([[((]([([)[]](]()((]))](]]())(([])))[[[]()[)((][]]][(([[])[)[[[))[](()[()(][([()[)][)([)]())[()))(([[))][)[[[([()][[[[(]]][[[)])[]()(]]]([)[[](([[)])][(][(]]]]][]][[[))))((]])])[(][][[]((]]([]([](((]([[][((]]([((]][][]][[]](]]((](]([)))](]()])](])[)[)(])))][[()(](())([)][)(]][[]](][]))[))[((])([)[()())]))(()](())[)[[([))[([)](][()][[(]))()(()]]]][]()(()))(([[[](]()[)([(])[[](]][)[[(((][])][))]])])])[[(]][))([])(()]])(](]])[(((]])[)])[[]])[[()])[)))][])(]][)))[)(])]])[)))()))][(]()()()[)][[)(()))))([[)]()()(]]][(]][((][](][]]](][([)])([[[]((([)((][)]]())]]([)[[)))()()]]))[])((([[[])])()((]([[[]([[)[(]]]]]([)[[[(]((((()([(](]]]]((]]))]]))[((][([([])](][)]]])[[)[((([(][]()(]])]][)))[[()[)]][)[)((()(]([])[)[))([([[[[[[]()[])[][]((([(([][]][([[])[)((([)()[)[])][((])(]]](()(())]((]))[])][(()[][)()])(](][([)))][](][(((](])[[]]]]))[[])([(([([)][]])](([))][[[[[))])(([)][)(()[[()(([(]()[[)[([[[)(())[[[[][()[((()])(][()][]]]()(]][][](())[()((()])][[]][)[[])](((][]]([)[)[)[)]]()[]]]))]([((]([[)[)](([()([(]]))]]])([[)]])][()[]][)][[([())[())][][][[(([](][])((])[[))[((]][([[](]))[)))(())[()[](([[)])][[][)][]()[[[]((])(([(()]([)[]()[([[](())])[[]))))])]])[]][()[())][)[[][[([)(]]()][(]]((]))]][([(()]([]][[(([])]])]]][)[([]([[[([])]][))[(]())(][(][[]((][)[(()(()([)]])][))][()[((((([([[]]])(()])[)((])(]][([)][())([([()[())][]))]]][[]]()][)))[]()]]][())[]()()][[][))][[[([][)][]]][)[)[()))[[]([[[)(()())[()((]]](()][()[[[[[)()]]]([)(())[()(](((][()]((])((([[]([()()])(]]))[)(][(][]])[(([[[[)]]][)[]])([(]]])](([(([)[])[[)]]((()]()][](([]([])[())])](]](][))])[()])[])[)]][]))))[]))][]((][]][]])[]()(]([([)([)))[[[[]([()][[]])()[]]([()(((][]]()[((]])()])((][[])]([]))]))])[[([()))[]]))[]])))[])[))])(]())]()[()[)[]])]][)][(([))([][]]][[]()]])[[[[)[[)]())[(][]([())[(](][](()[[[[[())][][)][)[[))[()](][[))]])(([][)()[](]))([](((][[[)))(]]][](][([]())[([])[[]())[)(([))(([)())]([)()()[[[))](]([][([)]((]]))()(()(]]([(]()(()(()])]])](]][)])(]](([()]]]))]([]])()))()[(]]]([[[()](]][[([((])()[)](][)))[)]](](([]][][][]][))]]])[)[]][(]()[()](([(])(][)([([(])[([[(][[((]][[])[)[([)[([(([][[]((]([)[([[[())[]])]]]]))))))[])[[][[][(][))][))()[[[]]([(](](([)]())[]]([[)[](([[[)])][][][[)[)[[[(]([])([][])[(](]]])([))[)(())](((([)(][[(()([))[(()[(((]))(](([[[(])))(()[]())()]])[[(]([][)])(((([([())()]]([())])]()))[[)([[))))]])(()())(])(](]]])(]]]()[[[[)[[[([](])[(])[)[(])[)](()[](](][([(](]]](([([](]][((()(()(]](]([[[[[)][()([(]([([[)(()))])[()[(()[()([([][)()()])))(]])])[(((())])[)(][[[][([[[]][[()()]]()[[)])])))))])))][[]][())[][())(]()][]][]))]][)([[[)()(([()([([[)((](]([[())])](][((][]())(][]])[]]])()[(]](()[[[[[(([][]]([((](()())[]])())(([]]([](])((([[()))[)())]][[[][(])()])((((])[][(]))((]()[][[))((]))])])[]]](([]])][(]][[)[(]]]])(][[()[[))]])(]]([[]())())([]]][][)[]()))[[)]])((((()]((([]((]]])()]][)[](([((((]]))([)[]())()[([[[()])([([[]][)[])))([]][)][)](([)]])])()[))[]]((]()]())()[[)()[)()))[)[(()()[])((]][())()][][)(()[(]()([))[)[)](]())(())((](([)](](][]([(][]))[))[)][([(((([))]()]([)[([])]([[[)[])])]]]))](((][([()[]([)(][[((][(([[)[)]])[)])()([(()[]]]())())([)((([()][()[[)))([[[[(()[]]]]][[])((([)((()))(])([][]([[])()](](][[[)))][))])]]([([]([((])[)])[[[(])][)[)((](]])([[)]](([]]()]()[[()][[[)[])[((]]])())(]([])[([[((((]()[[](()([][)[(]])])]([[()(()(][)[(]])[[[([]([])[[[])[[[])[]]]])[)])]([][)(])])][((][[)]][)(])[)[])[])([]][()())](((])[]))(([[))[]([)]))[)[(][)[)((][)]([[][]])]([(]](])])[](]])])]][(]][[((](][[)((([))((]]]]])]())]])((()()()()[][)((]]][]])()][()[([)[)[]([]([[]][[()]([)()][([)[])]))(]]])(((((][[[[()[()(()(][)()[][][[)()])[[((])[()])]([[((()(())][([))])([](()[][)[(()[([[))(](])(]()()[(]([(([[])[()((][([)))))))([)(][][[])(](()])((](]())[])]))(][())))]]][([)[([(][((]][]((][](()))[[]))][]()((])(([]))]][(][]()))[]])))]])[))())([)](]))[)([([[[(](]([][[[((((](([)]([[]((]]][)[))())][[()[[)[[]][)[]([[)(])]()()([()()[[[(([[[[])((][(())([()[[(]](]([)[[()(]])]])(()])[)[(]])[[[()]))(]([]]((([)[]]]))[[)[[[)][[]]([[)))))[[[((]((][(()][[]]())())[()(][]()))]((]]((][[)(]])[[()([)]])]()([]))([[[[][]([[)[)[[[)[)((])])]())[(]](()][[([)[([)]]][])([()][]())([([[[([](][((([[(]))(([[]()(()][)([(][]]]][)]()(()](])([((])]()]))(]](]]([][]][][[(]])][)]]]([)]]([)[[()[))])(][[][)()()([]([[]()][[)]((]))][(]][(()([)([)(([))])[()])[)[))]][]([]])]])]))((]([(]([()[(]]][()[)[)[[)(](())])[(][[[][(]([][][(])][])][]((])[())][]])(])[()]][[)][([](][(][[][([)((([]([)(()(][[(])[)()[()[[[[)())()][[))(([()[[)()][](([]]])]][]][][]]][](])[[])]([)[][])([([])(()([)[([)]))()[)[[)(((()[()[))()](()]])))[])()[])])]])(])))))[[()((]([)]()()[]][][([([))([[]([]([)()][][]([[]](()[]))]]([)[[(]])(]))[)(]([(]]()[[[])(][)])(][[[[[()])[))[[]])[)]](]]])()[[[[[)(]])(][()]]])]()(][([)()[([])(([)((([(([(([))))([)]](()[([)[[((]([))[))])[[([])](([)([(((()]]][[([][[[([([)([(())]))[)])([[((]](](([)]](]](]]][[()[[[))[[((()[)([])(]]]()]]))]([(]](([)[))]]])))[(][[]([([))[[()()([]][[]](][][[)]]]][)))][[[][](([(([()((([[))(][(()[[]([[)))[]([)[[])[(([]))[]()[])][[([)[[][)[]((][)()][()[[)[([)[])(]([(([[][)()(([)([)][)()[)[)))])())(])])[))])[][)][[[])[[)))([[[](])]()[()[[)[)([[(([][)(()((]][)]](][(]][]][()()([[([[([[(()])][([[()](](]]))[)]((([]())[))[])(])(]()](([(([(]]](]()]()([][])())][]](]]]]([[[))[]][[))][)))[[][[(]((])])()[[(]()][(][]))([[][[((][[]()]((]((([)(])(]]])[)()[([(()[(][[(][([]())]]([([)]))())))[]]))[])[))())[([(((])(([)]((]])))]([[])](]]()(()[))])(()))(][]([()])(]]][[]()][([((([)])])()])]])())[[()([[)(]()()))()[[)()))((][)[][((())(][)][][])()(]]](((](]]][](][])][]()[]))))([([()][)([))]]]][(([())][[][)[(([]()])[])[((]([))([][)()[)[((()[])))((])([))(]))][([][)[]()]))])()([[(]]]([))()()))[)(((]))[(((]][)](]][)(()()])]()]]]))][()[](()))[]]]((([[(](][][)(])[)][[[[[[[[()[))()[)](]]]([[]))]]][)][([]][)[(([]))((]][(](())(][])([])]))))]([]])])(][([)[])[[[[]([()]]))][][(][]))[)[)([][)]](([([(])[(([(([((][[)[([)[][()([](](])]))[([][))))][[[([[())[[](][)[[)((]]][[])][([)((((]][))[]))]]]))](()(])]][[)[())]]](([()[[)[)]([[(()([)(][)))[[)]]([)[][()))()[](])())))([(]])()))][[[([])[)[(])]([(([(([])(]])[[([[[]((]())[]])[(]][][[)()[))([[))[[[([[([(([[)[)[[((()[((]))()[)]][)[)()[]([])]([)][[]]))][]][[][])((]([]][](()[][))[)[)])))))([)]][[]][])[[)[[()]]])([][[[)(])][]][([[](]][(((])))[([([)](][[][)[(]]([([)(([)][)(()]][(][[)[])[[(()](]]([])][][(([[[([)())()([]()(]]()[]([]))][])))][(]][][]))])(()]()])]])][))[[][[)(](][()(((])(([[]((((]]](()])(((((()))()](][]()(][)[())[[[[])([)][(((]])(][)])([[[])))[)[[)(](()[)][(]([)][]]]([)[)([[))[(]](]))]]]([()][[](]((]]]((]]()])[((]]][(]])])([()(([[))))()](]))][)(])][))(()()(]]([((()(()())]([](([(][(((][([())])()(((][)[))[))][)))][)([]()]([])][[[]]())[(]()])[[[]])(][])[)(]]]][]()((][)))[)))((]([[[][][)][([[)]](]]]([[[]((]))(((][])])[())))[)]](]()][[())((((]])[))][])[)))[][([[)]())][[([)()((]())])]((()([)[(()[][]](([([]()]])][([[[)[]])((])]])()(])))([)[))([]((][(]][]()[]()((()(])[())][)(([)(]][])(()(([](][]](](([[))]()][([[]]](([)[[()[][[][]]]](]([][)[)[[]([]][(](([((])((([(])]])][[(]][(]]]][[[([][]))[]]])[)[][][[][()[)(])]])]]()[()([]]([)[[([[]]()[[(]][)[)]]([][]([[[]]]]]))][()))[][]))(((]](([]))(])[()])[([)[[[]](][][[))][(]([)[)()(][((()()[]][[[](()])[()[]])[[[(][()(])[)][]])[])])()[())[(()([)]])))(]])])[[]([]][)[)]]([)])])([)])][[[[]])[)))[[(]](()]()(])])])[)))]]))]))(][[[(()])))([()()]][]([)(]())](()[)([([)[](][)([[(()]]]()()](()())(()]][()[(((])[][[))(]))][()[()(])]]])]]))[)]((()[(]]][)([]()]]()([[[[[[)[]][))])[()((]]]][)[[)[[[(][]]][)[)][[(]([(]][](([(][][)))])([])(]([()]))[[[)[)[(([)])]))])))([)[)()(]()]([)[)()[[]([[[(([](])])])][[](]][()]((])]([[])(][(])(]]])((]([)]])[)[())()[[)]]](([]()][][[[])))])]])(])]]]]))(]]])(]]((]]([)))(]))])])[])()[))((])]]][[)[][[)[(([]])[[[)[(]([[()]])[([[]([([)(()]([))[())(())()[)]][()(][()[[]]])([)(]))[([()))])(][)]))(())([([)(][])[])))][[([])]]])[((])()[()(]][(][[[)])[(()[[[[)])])[))))[)[(][]]]([](](])])[)()())(([([))[[[)[])[)(()[]())[[(([](])[((][[(]])()([((](()([)[)()(()[][)]](][([[[[]])[[[[][)[])][][)[]])()([]])](]][]((][)[[[([)][]]][[)[[]()))[)])([([)())))]]()((((([)((]((])[(([[))]()())[)])][(([))[][[)]())][)[)(([)())))]][([(]([)[)(]]()[))[][([([])]()])[)][([([(]]][(]([(]]]((]](])))])]([)[[()(((])(][(][][(([)]]([)[[()[](([)])]](][[)[([()[[(([]][(])(]])[(())[))[)()])(][][)]((][()((][]()][(()([[]())]()(([)(([[[())]))(()]))[([]]([]]))]((]]])](]]()()][[[]][[((][[[(]))[[][([[(]]([](([)]]()[)]][))([][[(((((][(][][)(]([]]()[)]][[(((()[)[)[[[])())([([(()([(]([([[((][[([)))]]([[[)[[[[((()))]())][[)([(]][][](][[](](((]][[]()([[([))()]][(([())]()])()([))())[[[()((]([]][[()[[])[(())()]]]])[]([[]((((]()[]][[(]](([)()([)(][[)(])([)[(][]([([[[([()(]))((](()[[]([([)][[]))[)][[(]])[][[)[[]](([]]])[]](])([)(]([)([])]))])[]())(((]]))(()]])(()[))()[[]()(([)[[)(()()((()))()[)][((](][()((][)[)](]))[)((]][])([([[][])(([(](](([))][][)[(]([[)[]([]([)[))([)()]][[())([))(]])))(][)[((][))]]](])][]))()]][]])[]][[[][)])([][([)])])()[([][[]])(])])))[])([(]([([[]([)])[[])()]()(][])[])([]]([((]()[]))])[)]]])))[[][())[]]](][)))[)[([]][(]]))([[))][)])[))]]])])((](])]))))(]][)()][((][))](()(()][]([(([][](()])([(((]]))())[([(())()[()(()]][([](][))(()][])()[[][)(()[[(((((((]])[)(())(][()[]]))[)([[)[[]][)][]([[)])]])]])((]]))[]]]]()[[)([]()([)][[)]](](]])(((([))([(()[([])[[())[))[]]()([]]][()]][([)])((]((]]((][)][)[)[]))[)[[](]([()([(]]()]](([)[(()((())))[)))([(][([[)()](][(](((](([](])()))][][[(]](((()))[)])(()][[[)]][)[((()])(()][())[[([]([[()])[[])(])(()[()[)[[[)[]))[(([[[](]](([(]]]])[]]))[]]]([[(]()[])(]([[[]]]]])))])]))][][(])[(((][][)))[()]))(]))(([]((]([([()]()][(])[)(()[[[[)[]))][(][()([[][[]([(][)[)[([[]][[(][])]()[[[[)[)[])[([]]][][)[)[[[)]())]([[([(]]))[]))]](([))]))(((]((])]([)(((][[()[)([)[(([)[[]))[[(([[)[])())((][[([])()[())]()][][)]])))))()([]]([)(][(])(][])(((]][[)(([[[]](([)()[)][[)())])]](]](][)[()])()(()[]][]()(]([[()]]]([])]))[[]]]))()((]]()]()([](][())(([()]([][](([((()[(([()])]][)))[)][]()]](([[()][(([)(]([[([(([][([[[]]][([]))(]][([)((])])[(]])][][](][)(((()()[[[[([([(]([])](([[)[][[)))))([))]]((([[]()))))[(][]]]))()[))]][][[]([[)])]]())[([((([)])()]([[])(](][(][[][])))](()(][([][()])[(([((((([])]])(][][)]([[[()(])[)))[))]([][)))[)(][[[)]]()](][)][(][)(][)](([]][))((]]()])]][[()[)))[)]((([([(()[[)[])))))(]]))](]]()]([([[[([]((((([]]((()((])][[[(][()[))[[([)(([(]()][]()[[[]]]]]()][(()()(])()[)]])()(])(([]]])]][))([[]((([]([)][])[]()(([)(()))(]])])))](]((][((())))()((([](()]][])())(()(())[(]]([)[)())[)()([)[)[)(][)[[)[)]][[][)[[[([[][[[(]]])(()[)[((]][][[)())]][()]]](]]])][][([))(([))][)(]]([[[])[))[[[())])[]](]))[)([)])[(()[][])(()]]](][[[]()[)[()))[()))(()[)))(()[]()([(]](([(()))(([[]][)([(()[(][]))([[[(])])])][[)())]()](][[))](](([)(][]])][[[]([[(](([))([)([])[)][[)]]]])[[])())[)[((()]()([)[]]))[(([())])()([)[]]][[]]][))]]([(]()()]][(][)(])(]][[))[))(([[[)([[(](]())[[)(]]]][[([[()))]](][(((][[([)([))([)]][[()([([)[([([]])]]][)]([[))](([]()[)[(](([([(([)[[[][][)[((([)[))])([)([]][][(()]()((][)]([[)()(](](]([)((()]([()[]]([()]][[(]()]))))))]])()[(][][]]](]([([(][[]][)[]]]((]]]()]][]([[)(()[(][]])[([[(])])[](])])()]((())]][[][)]((]()]]))[]))]([[)([)(](([])][][((]](](()[[))[(]](]([([]([])])[(](()()((])([[[)(()]])(()[[(]([()(]])(]][][]()[]]))((][))[)()[[]([)([][]()[))[][[)(][]]]([[)]())[[([]))))[]][[)]]]][])](()])[[[]()]()(())[][[[(][])([)[][[(())])[))([[)]([)))(]]((])[[)](](]]][])([]]))()]][[))([)[[](((([]()([)[((]))[))([]]][)])(([]][)[(]]))][()]]]]([([][[]()[)(])((()(]]()]][[)])[[())[())([[][)[)[[[)(()](][]][))]]])(](])(([))([(]((](]([(][])][([]][]()[([]](]))][([(][(([[)))[][((]())()[]((]](([)(]([]))[[[[[[((][)[][()][]][[)]][]()])]([]](]([[))[)])()[[)[))(()(])()(][([()[[])][([)])[)]]])()[))()](]])[([]()))][[)[[[()[))])[[[[()])][[(](][))))]()[]]]))[[][])(][)([][)((]([[(()([))][)((](])[)[]((]]]](]]]])())))][][][[([)[)]])][]][][[]][)][()[)])((]]]])]]][([))[))(([)))([(](](][((((())(()))](]([])[)[])]]]([([(]](][)])[)][[[)(())[]])((])[][()()[][]()))([]]])]])[)()()]))]])[])])])((]]](](])[())(]](][(]((([)([]([[)](](])][))][]))()(([]))(]][)[[([[]]][)[[(([[)([)(([([[]])[((](([[[((](][)[[]](])[]]][(()[)])])[([[][])](])[][]([[)][([[)]([()[)]))))))(())]))(([)))))((([)))[(]]()())([][[[(]]]]][([([[(([)[]((])(]][[](][(])))])][(([[((()(])(]()))[]([][[[)[()]][[[[((((][]([)))[[(](])]()())))([()))[)[)()(])()(]))](()]))))))]][[)]])](([][()]([)](]([]]][((]][[][[]][][])[(])()]][]]([[([))](([(]))(]]]])]]))))(])[](([[(]((())]([[][))])[([](()())]([)(])([)[()]([]]]][[))([[)]))([)]))(])][)[[()((])[]])())]][[[])))[]])[)([[(][[[[))]][)[][][)[)[]]][][[)([()[][([)())[)[[]]][)]((([]]()][[)])([()())[[((]])])([](])][)(([(]](])][[)([)(([)[])])((([)]]])[)))[[]((()([]((([[([[(]((()]]([((]]](][][(])(][()[(]]))]]](][])()())))([)]]()[)])[(]][)([[)([])]](]])([)[)[(](][[[[[[)[[()(((()]]()[)[()[([[)[[(])[[)([)(][(()(][([[((([[()[][)(([[(()][]]]([]][)(][]))[[])]][()(([[])[][])((])(]]][(][)]]]([)[()([])(]))(([(([[])[](])[((](])(])([[[)][[)()]([]([)]])))))]([][[([(](]()[((][][(]]][[]())])]((()[))[]]][)[]()](])[(()[)](](([][[[][][(]))]()([](](][()[)]]]()))]][][[[[)]])]]([))[(]]))([()([)[[][(]](]][][[(([[(]]]]]]][)([)()(])))()[[[()])][)[))])[]](]([[([((]](([]]])][)[])]](((())([)][)][])[][]][()([[()))[[])))()[[(][[[])(([)(()(])])])]][(]([(]((]()]())[)](](]()[][]([)([]([()]]([[)[])])[](]]][)[(][[([[[))][]]][)()(]])](()]][(()](]))([[()])[)(](](())](((][[(](]])[(])[))([][])](][(])[][)[([[)(][]([([)][)][[]([([)(])[])]](]]][[)(])]()(])()(()([([[))][((]](]))][[]([])))](]]]((]]][(([])])(])]]])[))[)((]][)((])))((([)()(]][[])((([(((]])(]([[)(]]]))]](][])([[(([()[][[((]]()[(]()[[(()[[](][))[[((])]])[(]))((]]](())])(([([]][[)])(((()([])())))(([(([]][(]()[[]()]]])]]][(](])()(])]))([()][]())[((][(])]]([[())[[)]((((]))[(](]][])[[[)][[[)][)()))[[([][]()[())]](]]]])][)][]]]))[[[]([((((())])[[(])[](](()[(]())]]]())[()[()))]])(])[[(]][)[)[[[(]]([((([[[][[[][))]([[[(])](])(]((]))]))(][[([[)[[](([()[()[][[[[[[()(]]](]][])([[])[))]]()[)()((]))))[([()][([)(()[)))[)))))][((]))[]([(()][))]([[)[(](]][(]])([)]))[])(][[[[()[[(])((][])()[[[]][()[(]()[[[((((()[()([[))[(]([)[(]][[][()[[()]](]]])(](()())]]([()])))([)(]]])])[())][]()]([)]))((]()[[()()]](([)()()[)][]]]()))[]])]))[[)[(](]][([]))[)[)]()[([))(]((]]])[([][]))(()[)]]))[[))][([](])))])(](][]())[[)()[(()](([)]][)[)]][]()][)][]]](((]))[[)()([[((][[())(])())[]](([((())([()[))(()[)[)(])(]]([](]()[(([]](]()])[[][]))([()[]]()][[](]()[][[[(][()]]]()([([[)(])[]())[([[[])([]((]])][)]([[])](([[([()[]])(()][]]]))))][[])](()([())((][][]()]](])[([(][(][]()]])[]]]([))[][[])][])[[))([][[(((][]([([(][(][)])(][))([[[[))](]([]])[)][]](](]](([[[]][[[)[])[])[([])[))(])(]()(])](])())]))[)([(])))[](()[[][[)]([)[]]([])[]([()(((][]))[])[()))))]([())[)[)[()))[)((((()))[])([]]]]))()((((())[)[]][()[)[)(]]][]()[(](()[)])[())]))])))[)](([([)(])[[](][[[(])[]()][))[[[[[)))])(((]]()[()([[)][)][[[([]]][](][[()(])(][[[]))(][][[()[()[]((])(([((][((]]()[([)])([((])([[[)])[)[()][[[][[[)[][[])[)])))))))[(])][[()[([)[[[])(]])(((()][)(][](]))()))(())])[]]())([]][[])[(())())((]][(([][]][))][)[)][)]))(]()((((()((]()[[(([[(]](][((]][]]]][)([[)[[]]))(])(]](([[[]]()[][])][))[(]))([(])])[[(](])([)][[()()[))]())](](][])[])()]])[)[[([[)[])](]))][)[[)]]](([[[()))[][[[))[)))[[([]])]([]]]]([]))[]]]([))(]((])(([)][)]])[][[()[[)[])[))()][))()(([])[(])[()[](]](])(](][[)]]]()())[(([()())[][)]]])[(]]([)[()]][[)[([[][(([[)()))][(]]]((())(])(()]))[[)[[])]](([]([]))(](]]([[[[[()][)()()]))][()])(([[([)]])[[]()]([[()()])]()[)[())[()((]])[)][]]]]((][](][]((][)[])]][]]()][)]]][](][])(]((][))((][[[([)])[)][]))[][[[]((((])[]()][[][[][]][((][]()()][]][[)(())]((([[[(])]()[((([[][])[(](][]([(]])]()]][[)[)()]()(]((]])(]]](([()()][[]([(([([]](])([)(][][([]()])(]]()[))])[])([([(([(]][)((][[[[)))()](((]][()(((][)(][[[]](][(]]))][[))((]][][](()][]([)[)[(](((][])()()[]([([(])[]))])))[)()()([(()[])[)()[()](([()[][](]][)[[[)](])(][]])](()[(][)[[[]]))[[[)])]][()[]((])](])()]([((([)]][)(([()])))[[[)])]])))]))[(()[](](]]]))[])[])[)((][]][)([([[(][)()(])(])](](]]](][[]]))]](]]](((][)[[]])][)])]][)))())]](([]][(]))))[([][]))[]]([)[]([)])(]((]]()())))]][)]])])[]])(])](((]([[(()[[]]]))]][(](]]]]()(](()](]](]())]]()[[[])((]))]](](](()[((([()]]]()][[]()))])]()]()((][(])[[)]()())]]()]())))][()]]([]((]][(()([)[)(]]](])[]()]))])((]([])[([)][[[(((()[][)()[]))]])(])(([]((]][)([)])()]((])(([(])[(]]]([]][)[(](([][][][)]([]()([)]([])][)())()][((][]][[])[]([]([[([]]][(((]([[)(]][])(]]][[)[]]][])[(][]][[[][))))[[[)[[)]((())(]))[(](]())][](]]])))[[[)[[)[]([[]((]([[()[]))(]([()[]][][)]([[)(]))))]([()](]([[][)])[[][(](]])(([(]]])[[]((](][[)([])[](]([]([(()([[)][(][[(])[][([()]](])]])([))]()[)][[(][][)[][[[([()([()([)[][()(]()[))([()()([]))[[[([(](](([(()[())](](](())[)(([)[[](]([)]([)))([))])[))([][))(]([[[)](((()](](((())()[([[)[[[(]())([)[)[](]))[)(([)([]))((][[[]([(](]([[)((]()))((()(])([])[))]))([[](]([)](])](())(][](())[]][)(]](])(()[((]]]([]]][(()]))[](]([)()()]))([]])[)[]])](()[(])([[]()]))[()[][((((])]]))])])[]))])[[)())[)]()]])[([[())](()[)))[)][)(]([)]]])(()([()(([)[[)[)([))()[(]((([])(([(([))]]((]])()[[[))[))()[()])[[())()()(](()][)][]])(]]()[][][)]]((([)()(])][[[((([[()))])[([))[))]([]][[()[(][[[][[[]([))[()(((()[)[(]()(])(]]([[)[]()(([)]]()()([](()((])][([]][[[[)()][[(]((][((([]])]]]][)[[)](][)([]][[]]])[[)][)](])(]]((](]()]))](((((])([)(((](([()])[(][([[([)())]([[(([])((][)[([)(]])][)](([]][[][)([)([[[][]([))([[)()()]()(]()](([[][))]([(([((]]([(()[(]))(][)()](()[(])[][))))(][(()[][]]][]()]])]])]([))(][)])()((]((([)]))][)]()[]()([[)])[(]]]])]](][[[[]((]])[)]]][[()][)][(()(())([[(([]][(](]][((((()[[][([[[]])(([)))([)]))]][[((((])[(][])])[(([)[[[)]]([)))()()[((([(](]([)][)[[](](]][])]]]](]([)(]([)[)])[))[)[])][]])][[]([[)[]](]]()(]([]()[)]]]([]([))[])())((([(([)[)[)[[)()([(][][[[]))]][]))(]()]([[)[])][)]()[)]][[[)[)])(][(]])(](((([]))](())()]]))[][][()[)((((][)(]][)])([[)))[[[](](]][[))())))]([])[)][(())[)([]])]])]()((()][[))](([[()([[][(](]([)[(]((]))()([])[[)[((]()[([)()[]([]])))((()(])])])(())[](([(]][)[))([()[](()]]([()[[][)()[[()[[()(])(()]]])([([]([][[)[)[][]([[)([))][[([[)])(][(](([)]]]]]])[([([)()](([[)[(]]]][)[]((()](())((()][]])]([(])[()[(])][][([((([]][[[)]()()([]())])([])[[]]])[]([][[[(()][)][])[(()[[[[[][[][)(()]](][](][)(]][][))]]][)[[[)[)))()]((])[]]]((](])[)(](([([)))][(]))][)[]](]][)]()]]([[]](])()[]())[]]([]][(([](][(]]([)(]]()))]())(([]]]])()(]()((][)(((]()]()(][([()((])[])[[]()))[[()))]])(())[)])()])[[[[)[())()]))])((]][][)]])(](([]])))))][()[)[)(]([[[)[[(())[]((()[]](]]]((][]]]()]]))[))))[(()((]((]](()[)()[][))([]])[](]][[(]([(())])]()))[[]([]][[][(([]][][][[(()([(]]][((][[])((]][])][))([))[])()))[]((((]))]]]][([)][)])([])()(])([()))]]](([()(([(])[(([]][]([[])[(]([()))())[((]][))[[))]()[()()[))])))]()([[))]]](][([[(])][(((])(([][(())[)([([(]))]]()[(([)]()]([()([)][[]((()(([]])((]))[([)([])][[][)[[)(][]]]]()[)](]()[[(((])()]][)[(]()((]][]][()]))([[[((([[([]]]]())]]))))(([)()]()][)[[]()[[](]()[()][))((([([]]]([(([]]([[([([]([[[][(]([)])(][]())[]][([(()[([][[([]][(()([]]]][[(])))](([))](]([]([[)(((][]]])[]])])))[[()[[([([()][](([]](((])][][))]))]()](]()]()]][]))][))[(((](]))][[]])][[(()][())(([)](()))])])(())(])])]]]]]](]))][[)[(])([)])[(]())())[[)(][()]]][[]([[[[])]]]][[[()))[]([[)]()]()(][))]][()]])(((([)[[)][][))([[[[(()]][)))()))[(([(])[]])](([[]]([([)[(]])[[[[()][))[)[])[])[[])]])[[]])][)[))[([)]()[)((][[][[](()]][]]([)[[][([)[[])[[[]]]]]()))[())()([)]()](()](][[][())]])))[]]][(])())((]))([[([()[]()[[])[[](](([)(()[])[[([)()(]]()][[)[))](([[((](])(]((()([[((([]]](]]()[[]])([[]))([])]])(]]][([[](]]((()][))[])[((((][(])))[])]([[][)([)]][)(()]]][([([)]()[[())()]((](((]((][)]]([][([)]])([][()(()[)()()(])](([)(]((][)([)]([()]])[)[])]]])]())][][)(]]([))(]]](]]](](]))))[)[([[])[(][[([([[]([]](]]][))[[]]]])[)(([[(())[[))()][](([)))]](])](((()()[]([[()[))())[[([])[])((]([])(]])][)[][[))[(])())(([[[)(]]()(()[][[[[([]][((())][])[]][]([)()[(()([(())()])])))][)[[)[]])]][)][]]])[[)[[[])]]()]])[)([)](][[)(([([[])[()[[[]]))(((]]])(]][[()))[[)()(])())(](]][[)[)((]([])][][)))][(((((([(])[([]([([](](]][[([)[])(([]][)]()])[](()[][]][(][[])([)]])]]]])[)])())]((])[(]((](]])][]([[)[]))((()](()(](([)))]]()]([]])[[)[))]((]]()])(]])(()[((()[[]((]][(](][[])([[)]([))[(]])][)[((]][([[(]]]]([)])])(][)))()[])[[][][()())](()](]()((())]])](]))[()[)((((()[](([))))[[((]]()][(()(](])[][(](((](([]]])]][([[)]()]])([)][]]][][]))[][[][])(]()(][]])[)[([((()[]([))(])))))[[]([(]]]][]([([([[][([](])))[[])[]))))[(]([(([)[(())[](([]])[(((]][([([[[]([]][[[(])]))](][[(]([][[)[[[][(]][[()(])[)])))([)[()))]))()(]][])[]([[((([((())[][([]))][()()(][]]))(()[([[][[[(()]([[)]]([())(()((][)[](][[[][[[))])]((((())[[[[[[)]([[](()]()])[]]][[]([)])([[((([)]()))([()[)]())(((][()(]))()([()[([(][(()([(][)()([)([][][()))()))][)[([([]))])))])][(()]]]]([])(]])](](()][))[]]]]([][]([(]()()[]))[)[(((]([)[(((()])[([([)(][])])[[)()](]])[]])[]]([][[)])]((()[)(][([(]]))()[[][(](](([)])[))[[(((]]](()()](]))[)[]])][[[(())(][([))(()](]][(]([][[([(][][]]][)[)))(())()[(([([]]()]][()[])(]()][]]]])(][][(]([][[(([))()))))(([[((]]][[][()[[]((([[[([[[)(][[[(][]()[(]([()([])(())))])[]([)]]))((]))[[[)][([[)[)))(])(()(][][(]]]()[)[)[[[)(]](][[((])])(]]]](]]]](]]][)[())[((](]([[])[)[(([(]])]]([([([()([(()][()(]])](])])()[]]()[(()])[)(([()(([)(](])[[][)][(((([))[()[[]])[))()[()])])[)])[)((((()()[]](]]))[[)][)[([(]((([[))[()][[([])][[)][]]]))(()()[)(((()[([)])[)([(]))(])[[)]))[[((])([(()[]()][[[](]])][[]]()([]([)(]]([([[])(]))([)])[[])[[(()(()](([[(]][[()[[[[)(((((()]][]((][[(())[[[()[]]()]][)(]]]](]][)][[][]])]))((][[[())[[((([])))[())[)([)))]][]][[)([)][))]()))][)((][[()[[]([)[[)][][[)([[]([))][(][))]][)](](()]][([(]]]())([(([)])[]([])()][][])([([)[([))[)][]([()])]()])[()()()])]([[(((](]][)(]([(()]])[[([[[][)](]()][)[)](]]]]((]([[][[[][()][()][)([]][)[(])])([][()])))](())[][][)]((](]]()]]]])(((]))]][)(])((())]]]])][]()))()])(]]]])()))(]()])[(])([[(]([(]]))[())(][()[((()(())]))](()[)]([[)])))()[](]]()[])))))])([[[])[)][([(]([)))[(]))]]]]]]](([)[(]]])]]()((())[(]((]]]([)])[(([[)])]()]]][]([[(]]))()[[[)[)[(][)(]([)(([[[[]([]]([[[](]]]()][])[[((]((])([][[)(](()])]][()[))(]([][[)[]])]))[](]](](]()))()()[((]]]](((])[[])[)((([])([[())](]]([)())]()[[])())])]][[)[))[)])(([)(])((()](])))([[()(()()([)(()]()[(][]])(][()((((][)([[)[[[(()(](][[)(([))()([(])[[)[)()(])])[()][)[))]()([)([]((((]([()[)([[[[][[)][(()((([)())[)](]]([([)[]((()]()))](](]([)(][)][(][](((])(](([([()[[))(()()[[()[[[(()][]))][[[(][[([)))()][[)()()([)](]]]()(](][((][]()]]))[[)[)[][()](()(])]])(](][)])[(]])[)])(([)()[[][))[[(())[]())[))][)([[][)()((])])]()))()])[[[]()[][((][)()[(]][[)](]]((]]))[)()())])](]))][[(]([([[]]()[()][[]][])[(]([)[)[])]([(((([][[)(][])))(([[()(]([(([[[]])))([)())(([[()()[(](](())][[)((]]()[]))()())][(()(()[[(]())]](([(][[[[(]([)]]((][)))[(([[[(]()[[])][)))]]]]])]([()[[)])]))([]]))([])])[[)][()[(])[)()[)[[][](](]])[))(][)[([]([]))()(]])[]]][()(())([[([[[]])][))))()[)([[(])]()()[[)])[(](]][]]])]())(([)][[)(([])[[][)))[[)()()]](([()))()]()[[[]]()]()[(([]](](]])[(()()[)]]))(())(]]]))(][(([))[([[()(]][[)()[]))][((]([[][((((([(([)()[)([[)[][]][)]]](][][])]]([[]])[]])]))([(((([][[)])()][)((()[(]([[])[[])(([)[[(((]]])]]([][[)[([(])]](][(])[([(]](([])[)](([])([[)(()([((([[]])(]))[[][)([(()()][)]())([[][([(((])((((]]])(([][])(]][[]][)[(]][](()]())[))([])]()()())(())]])((]][[])])(([[]()[)([])[[(][([][[][)[(]][)[(]]]((())]))]][)))()(]])((((](]]]()][)(([](]][])[([)[[[][(([)[(]))][]][[(()](])[]])(])][[([()[[(])][[[)[([)[]])][()][)[[][[[(())]([[)]))([[[]]((()[][)]][[[(][))]]([)([[(]((]])]])[[]]]()())[)]))()(]][[](([[)])]((()[)([]])(([(()((]))()[(][(])[())])]]]][[[(](()[[[))[]))[(([[[))[][)][)]))([(([][())((([)()([))[[([(((]([]((]])](((][[([)[((()(]]]]]((([]))][())]]())]](]())][[])[[](([(]]]][[]))(][][()()[[]]](((])](])()(([(](](][(][(][[([([()())((][[[(])][(])]])))([(([(()[][(](][)(]((](][()))(((([]]]([)))][](([])[]()[[))])))))([()[)[)([()[(](]([]]][]([]][[][((([])))((]((()][((([[([[[][]))[([(][][)([([(](((](([)(([[[]())]([][()[)])])])[][))(()]]][[]]](]][(][(][[]()[([(]))][[)]]))[)(]((][][)(](((]))((](()[[(][([[]()(()[[[][])[[[[)[())](](](][[())[])(()([))([[])))][]()]])[])[[(][))()((((][)))]])[()]())]][[)[([(])]((]())))[[[([]((([]))]]])(]([)([([)([)()[)()]))[[]((([]))[[))[]])]))])))())[([][])]()[([](]][[)[))][[])([)]])[()[[[[((]]))[([[()][)][(()][[[](]])]))[[[(([]]([[))([)[()(]()]])]))[[[)()())(([)[)[]]][(](][[]([[(]()][][()])[]([[][]([](]()]([(([[]]))(]]))]](](]([)[])(])[[]][](]((][[[]))[[]][([]]]()[[](]))][])[)()](([([)](([([)[]])]([(]][))][)])]](([(([])()))[][][(])])])[)[(]]]()[())[[(]([]])([])[[))(]()([()]()([]]]])][]]])(]][]))()(]))]]([[]))((((](][])()()(]((([([)[(((()][]])[]())[))]])[)[)[[([))]([)()))[])())[(][[[)(][()][][((](()[[))[((([)]]]]))[[][([[][]]])[[])[(]]))[))))[]))])())(([][)]))())([[])))(])(]])()[[(])((])][))][][[[[))(]][]])))[)]])[)][)]](]))([[(())(]]))(])[])]]]]]]]()[[))])]()(][))])[))((]([(]((][[(](][](([]](]]))][))[([[[)[])]([((([]]][[])[])(([)))[(((([]([(([))(((()[[[()[]([([[)]][)]])())]])]()))(()[)((()[[)][))[([(()(]]]])]][)))(])()[])()[)))([([((](][([)]])][)]](([(])][))()(([](])[]]]([[((([(((])[([[[]]]]])[(([][[(][([([([[[))[)()][[[()])(((()[[)][]])][))(]][]((]](])(((((]])[)]()[]])()][[][([())[[]()(((][[[[[[]][]]((])][](([([)][[][][[[]]([][](]][])[)]([(]([(]([)([[[[][()][)(])(()]))[])][[[((([[[[((]][])][[]([[((]](()[(]]))][[)[[(()])]]]][[)))[[)]))[]()][)(](]]([[]())]])](([([()(([[([]))))())))])))((([((((]]][[)])]])[))]()))(]]))[([([)[((](]]]((](([()([()(]))][)[(()]([][[]][]([)[])))([([]][[([[[()[))[[))[)[(][))]]][[]]])]]][[]))][)[)[[))]](]([()()]()[](](]][(]])[)]([])))(()[(()([]((][][[)([])](][((]()()])[[))(()[]([()[())[)([](()]()([)[)][[])[]))[]())))][()(()]]]][)([)][)([([]]][())][)[[[[)[]](](](()))()[]((][((([([]([[)][][)](]]]][)[]][)[[[[))[(()(]())])][[[[)(())([[[([())]][)))[)[()))](](([)][)[[[(](][)[())[][[(]])([([)[]]])]]][(()(])[]](]][([])([)[[[[][][)]]((([))[[([[)[]([((]([](()[[][((([)())(((][)))([[](([[((][([(()[]())[()][))])[))]][[([[(([[(])[)[[[)(])][[])[]]([)])([]])(])[)([())([[((][[)([[[(()]]](]])]]))]](])][][[()]]][]]][]((])][]]((()(])])))[[])()][]))[[[)[])][((])()][[][)])))[)[[[]((])((()))])]()(()])()](][[))(]((]))(((]])][[([)()([)[][([())[]()([]][])]](](([(])()[(][(])]]([(])[][)]][](](](]])](([(][([))()]]]])(][)(](])](([][()][(](]]([()(][])))(][](]()])][[(][]][)[)))[))()])([[])]])([(])[[(([)(((][))(]])([])(]((]()])()()))[]()][)]([[[)))[[)]]][]]((((([)()[]([][((]))((([][)([)[))][(])[))]][)([]([][)()])][(([([)([(([)[)[([))]()[])]])][[[]((][)]((]](][()(((([]][(([][[]][)(()][])(])[))]][([))))[)]]](])][)()[[]()[)(][(]))[[][[((((][[[[]](([(][[)[([[][)])]()))[[]([[))])[])((]]](([]([[[)][[(()))))[([[)))))]]]((]](][)(])([))[[)()][()[[])]]([)[](]((([])([](()][))([()(])(())[((])(]())()[]][)])))]](]]]()((((()[([])[[[][[([]()[][)][)[((()[[]]))][())(](((([[)()]][[][)[)[][][]())]([[][[]][))[)(]()]()))(([)]][([(]]])]))[])](([(]]][[]()(([)((][(()]))((([[[][[([[)[[[[(]](())[()][]][[(()([([))[(](][[]][]))[][)[(](])][[[)))])]([[[)[(())))]]()]]()[[()[[]][)([)([[)))]))([))][[)](]))][[[[](([]]([[[)))][[()])]()]])[(]]((]]][]](])()(((]](][(]])()[)][)((]]([[]]][)([([[))[)[)))()][]]([(([)]]])[]]([[(]](]])][)[])[)[[))[((([[(][()])])]()]([]]]()]))[((][[(][((()][(])]]([)([(([([]]][[[)(])([][([))()([)][)]])()(][((([][([)])(])[[][)(]])()([)[(][[[((])[)])(]]())]][(])[]())))(())](()[[[[((]())](][)[[))()[](]][[)[][]()[))((](]]]))()(][([][)()[()(])))[[[)(])))()))))[([)]([)(([[)](]]()[)[[](])[)(]([(]))([))]()(]([()[]])]()([)[([())(]](([)(]((][)[(][[(()]]())))([[[]](]])()))][])))((]](][[]())][[]]]][)([)]])(]][))(]()[)]([()][])))(]((][(()]))])))[[]()[()[]]()[)(()]]][)(])]])(][)[([)))[)((()[[[[]([)[((]([(]())][((())])(((()(((())]][([)[(]]]()][()[[[[)[()[)[(]]])))([((]))(]((][][(())[[[([]][][()[]())])(())()])])([(([[]([)]][[)]([)))))][)))(]][)([[(())])](][()[[(((([)()))[)([([([()([])])[[)[)]]]])[([[[[][[))[[([)[()][]([)][])((][(]()]]](]]](()]]([(][)]()[[)()[))))((()[(()][][(([[)])(((())[)](])][][)()]()[[[[[]][)())[(])()[[]][)]()([))[(((][[))]][)][)[][[]]([(([[(][)]()[))])))])[)()][][]])][([](]]][])([[[]))))(]([)([([)[)((](]][[[([])][()(]]))()(]])[](])[](]])[[](([)])[[)])[[((((()))[]][([[(]())()][[](([][[)[)()[)](]]((([[)]]()](]]))[[)[[]][()][[)()][([[][])]([][[([()[)[[[[()()))(()[))[)]([[]]]([[])[)]]])]]()))])(()]([])]([([[([[][][)]][((](])())[[[)[(]](]][())((])))[(()()[(][]([)[))))](([(([][]([][)])([[))])[][[]][[[]]))[)([][])](]](]([(]([()[))]][[][)]]](()[([))]))]())([[(](]]()](]]](]([[(]))))([][)[)((([[([(([][([)([[)][]](]]]]([][(](][(][)]])[(([]])][((()[()([[)]([[]][]][[][(]]]])()[)[(]((][)(])[]])[(]()))[]]]([()[]]]][](])]][[()))[())]])([][]]([[(]))[)[[](][]([[))())[(]))([()[])]])[](][[[][([(])([]()[(]()[)])())](]]))))(()())())[)][)[)))[([((]))))()(][()([(])([[[])[]([]]((]](([[]])()]]([[[([)]([]))))((][])[[(])[(([))[][))[]][))[([])]()(([)]))[()]])([()[)([((([)]](])]([)())((])([[())[))[])()]]])))))(]))([)[)]])[[[]]]]((((]()[]][[]]][)[()](())]])]])][(())[]]())()[)))())][]((]])][(](]][)]([([()]][())(((]]]]])[(]]])))[[)]]()]))(]]])]]]))][))[))()(])])([)])[])]](()))[])]([[((]([[[([(][][)][]))[)[())]]][[(]()(][][[][)(][)([((])(]))][)])()][()])[])(()(]]](]]](](][[[([([]([)])([(()(](]]()]()])(]()[][(]([()((([([][)((()[((](])](]])]])][)])[[)[[)[][()[(]]][(]))[]])[)(()((]]))[()()[([]](([]][]))[][][]([))[)([]([()()[]]]))())()[))][[][])()[[)([(](][()((]][[)][(([[(]](]]]]()(]()[[)[][(]))][]))]][(]]]]))([][(((]([[]([][((](([)[(])[][)[))[[)[([([)[][](])[]()]))]])([)[)])[)][[][)[[())()()]]](((]][[([(](]))([(]([][[(]))[))())[([[[([]]((])][))[[])(]]()]][]))]][(]()()]([][)[[](])])()]]]]))((]])[([)(]]]][(([[][]])]))))]][()[)(]))[[[)(())()(][)][])]][])]]())[)()()[))(]())[()[[(()][)(])][]()]][[())()]([))((((])[)[]](]([][[))()]])])])][]([())(]()][()[)(()[)])]][]][(([))(])([])][)())(]([()]()(]))][)))])][)((](]()[(()[))])[())[[[][]([)(])]]]())][[([[()(])(()([()]()]]))()(])][((([[()(]]()]()[)[]](([][]([][](])([)([())(](]](([[([()[)(][[(]](])])())()](]())]][[(()(([((]][([])([](][]()][[))])[()][[([]([[)(][]([)])[(][())[()[[]((]](())]][[[](](]))][(]))[())])([[)]([[]))([](][)[)[)[)(]([][))])][((()[(])(]]]([]]((](])[[]][)()]][((((])][)]))])])[)()(])[]()[)))][]]][[[])(()((](([[)([((]]()()]()][](([][])][[(()]][[]]([]([()]])]]]([(](]][])[[[]()][(([[])]])[]]][])[][)[(()[][)))[][]])(()[()]))[)[([)(([)]]][[[]])])])]](]][)[]([)())[([())(][[))[[((]((]])((][[()[()(([)[]][[)[(]](((((()(()])]]][]]))[]])[()[]()])[))[[]])[][(()[[]()[)(]((]])([(])((]]()][]]([]()(()]])[)()]([([[([)]])[))])(][)]()]][[])[][[]))([][]))](]()]((([(]])]](][][](([)[([[[)([])(())(()[)((()()()[(](][](]]]([)]))()])])])[](])])](())]()()(][[](((()](][)][((([))]([)[])())([)][]](([([((]](()[[[]()))([[][][[]][)])[(]()([[(])[][(][][((]())[])])[([))([]()[)]])]([]([](([)]](][((((([]([)[]()[(]][((([]][)[)]][)(][[][(])((([)]))(()((((](][)[([])](])[)()[([[][]))[])]([)])]][[)]]((](])[)(()]]])]][[]]([()(()([]([[)(]]])][(]([)(]][([(][](]]((][])])]()][())([])]((][]]][[[()[))[()(][)](]])[[[])]([(([][[)[](])]](][))[()([[([)[))])]])[([[(((]]))[()][()][(()([)][](([((]](][)()[[)])[(][]))])[(]])))[)[)])()(()[(([([([)([][([)((())[[[]()]])[][][])])()([()())]][)([()[[[)([)])[]()](())[(]][)]([[)([]])()[[))[]]())[[([[)[[)()[)][)([))][[([[]]())[[]))](])]])]]]](((][[)([][([[](])))])[))]())]([(][]))][((]([]()()[[)[)(([[][[((]])]](](]))[](])[((][(([[(]([([))()(([[][][))[(]))[)))[([())]))]))())(()(](()])]()]]][([](])[][[[][)))))[)[[[())[)][]()()][(])([([]][()((([]()[]])[[))([]((()][(()])))(([[((]([[]]([((]()]])))[[[[[]]]()()[]()(((((]]([(]]][]([)[]((())])))[[()][[[)[]))[])(((]])))(]][[([]][[([([]](((]][[][))]([]]](()]]([((][([))][](())](]])([(()[[]))][[[))](]][[))]()[](][(((](][([]]([)[(]([][()))]((([])[]][)(]]])((][)[]]([()]])]))]()()()]]][[[]])][][[)([[[()]([)][])[][[[[)[)[))[()))[)([)[(][][[(][][))[[[([(])())[](([[]][([)(((][[)[[)(((()[])(]]()[([])(()]()((((([[)((]])])(](][(](()[[[[]][)[]](()][)[[][())([((][)))[]((([()(][)])](((([))[)[))(]]]][][)[)(((]]][)()[[(([(]))(]](](])))[]((())[[[)(])]](](([)])[[][[])[][(]](]][)]([())]()[]]([[)[])((]]][(]()(])([[[](()[([[()][)([[]((((](][](]([][)[[([([[][[)(](]]])))(])]])[])[(([]][[](][[()](([(([)[[[))]()()](])[[())])[[)(][[[))][)[)))]]([[[)(]([)))]]([()[[[[[[((([]([]]][([(])]([[]))())(([)])(([][]([]])[[[](((([))(]][[]()][[(][])[[]])[][)]()(]()](]((])[][([([([[([])()]](][)[))]])])()))(()[][])(((]]](())([][)[(][)[)](()[)[[[][]((])[((([))[[(][[)[[][])[[[(](([][[)((])]][][[(([)[(][)][[][))[[[]([[()[)][(([]([))][))][)[[(]]](((])]][[[)][)[[()][[)[)[][)[[[())[)(([)[[()]((][[[())][)])[]))()((](([)[(([[([(]([)))][[)()[(])](])][((])]((][])(]])[][)))(])()[)([]])[([[][(]()[)](]])(]][(][[)][)[])])()))(]][)](((](][])([](()])(()()())((([[(((([]]()(]([]]]([[(])[(([])([[[([]])[]]][(])()][([][[()([)[]]([])((([]][)[]]]])]]])(]][[(])](]][][])[[[([()()(()[]]()[)]]][(]]())[](()]]))()[[]](]][]])(](()([[][((])([)]((((][)[)[[)[[][(([[[(([]()][((([)])))][))))()([(])])(])[[]])(])()[)))([]()))]()]))[[)((])]]]]))[[[)[[)()[))][][([[])[](][[)((([][)]))))[[])(]()[[[[)[])]]]()()()](()[([]]]]))())((]][)([[[[)(][()[)([()][(])[))][](](]([]][][][)]([([[][([[[]](][([(][)[[([]((()][[][[)][()[]])]](])[)(]](]([()()]])()[[]](()((][)(())(][[)])]))[)[]((]][)](]())]))[[]]]])[(([(](()[)]))]]([)[]][[((([)])]](([[[)([)])]][[([])]([[)[[([[][[][])]][())]()[([([[)])[[]][)[(]](])[)][[](])[)[)()[))(])(([[[]()[)[]))[)[(]((([)(()]))]](((()[][(])])(((])][))](())[([))][))(][))))[)]]](]]](](((])[](])[))([]]])[)[])[][[[)[[)(])])(([[)[()][[)])[)(()])][](]][([([((][[(][)][()[([])[(][](])([)][(][([][]((()[))((](([)([](()()]]]()[])((]](([(]][[[()()(]))[]][)[[]()([[)([(([)[([))))(][))[[][([[))))]]](()((()[)(])((]()))([([[([[][()[)](]])[)()])()[(([]()[)(]]]]]))[)))][[)(((([((])))(([])[[](][([)][[[)][[)([()][)(]]()]((]][]][)())]))]]])()([[[([()]](](([]()[([([](([]())(())([[[(()][[)()))))[)(()[](()(][)()[[()]])))[)[][][(]]][]))[)(()([((][))((])])[))[)][)[]([]])[[])(](]]([[[[(((]([([)([((]]))])]]([[)[))()))]]])]][])([[([(][[])](])[])))([[((]])[[[(]()][)(][[]))))])))]])]][]]([)[)(())])[[[])([()[])))((([)(([[([((][)[)][]))[]](()[)]]])())()[])([([[)((]][([)()](]((]]))[(])(][]([))(]]()]()]))])])](][(()()[[[)))((()(()()][][]))][][([])((])]][[][([[[])[[]())[[]))][()[][)([(][]())[](])[(]][]([)[(]([()()(]])]][(]]])[[)[[))])((])][[)][[(])[][)[[[[[(([(])(])[[]]([[)]()[)][)][)]]))((([[)]])][]]]))[](()(][(])]]]))]]([][)([)[[(]]())[[]])[[)[])[]((())[())((((]])]][)[[])]([[[(])])[[)][]))[(]([][])])[([[[())[(]](](])][)]])](][[][))[()(][][][](())][[][((()]]((()]][)(]]()](])(]([])]([[[))((][(((]][(])])((([(]][]([)]]](([[([(](]([)[([))((]([]((]][[[(([][]([[(](()(])[[)(]][]]][)()([(([[[)(]]][[()])])[]])((([)))))(]))(][])][])([((]][[[]](](]()([)()[[)()[][][[)(][()))[]()()[][))]([)][)([(][(([((]())))[)][]]][[)]()[[(([][[()]())][][(([(][][[)))[[[[[)))([]([[)[[[[])(((])(([)]((][)]]()]]][]])(][[]([())]]]))[)]))(]))]([)[]])])[[(]])[[()]([])([](]](())]))))(][][))[[()][(([[)]))[)][)[[)((([(])[)[[[()[)(]()][()[[[]()[)()([]([)]])][)[[)]])]](()()[][)([[[))])[[(])()[)]())(])]())[[)(())[[]][[)(()[][(]][]([)[][[()]])[()[)(]]((]()]()][[[))(([))](([[[])]))[]()([][])[)[]))[]())[[[)([][][]([([)([)])[]](())(]]]](]()(([))))[()(([])])[(]][(][])])]()]))]])](]])]][[))]]]](])]([][)))]()[[][]([())[(][)](([])((]([(])]](](([[()]()[)][(][)]][[(](][[))[][(]())[]]][[]([(]((]])))[(])][[[]])]]]([[()[[[[)]]()))]][(([()[()))[][()]][])[)])([[[]][()([]))[][][))()[)]])]](()((]][]))]])[[[])(][]]()]))()]()(]))([])][)[])[))[([())(([[]([()]][)(((()][][[((((])[[)[)(([(([((([])[]((]]([[()[)([()([([)((]]]([]][[)[))]][])(][))(([[)(](]))(])[(]](())(]))][()]]]))(]]([)(]([[]]])]()[[)[][[)()[)]()(]](])[[()]](](][)[()([)][)]][(())]](()](([[)[()))[)[)]((())))(][()()[]])[])]]()[[((]](]]((([())(][(])[()))()]]]][[(][)[(]])]())[(()]()][(][][][[[[()](][)][[[][()(]))]])))()])())][])(][))))]((()][[([))[[(([((]]()[))[))]](()([)]]]][)(((]][])[()]())([()(]])])[)([])(][(())][[]((](]])((([]]))[(([]))))()([(]])[)[([)][])([[[)[](([)])[)))][[)(())[([]([[[)[[(()()[[[]]()[)[[][(][]]])[)[]])[()[((]()[[([)]()[][([)[]()]]]()))[[(([)(][[([]])[[[])([)))[[((]]((([[]([])[[)[[()[[[(())][[(()[([]][)[]))(]])]))]]]])(])[)(]]([([]()(([)](]([]))))(][)[]]([([]()[)][[([))()]](((([[)[][][())]])[]]][(]]]]))[[)((]][([](()(]]))])[)([])))[]))[[[)]]))([([](]()]][[))()])[()((((]((]))))[()[[[][]])[(](]])]]]][[()([]]])[)[))(][][(][[[]]([[())())[])]([([))[))[(]]]([[()((][)())[]())])(][))[](]])[))(([([]][))[])])))]][([]][()]))(()[(([](])())[()](])]()[[)[[([[])([)]([]][(]]][)))[][(([)))(])][]][]))[[]][(])))][[)]())]()]([((([()][[)[((][[)(][])](])]()]])]])(]][(())))]([()]([)[()(([]))[)]]])[])]][)][)]][)[[]])]()[((()()(((([][))])()))])[)(]][[][])[)[(])][])))(())]((]([])]])))([])()(])[)[[[[])[)[)])]]][)]][)))]()[[]]()[[[[)]])[()([(]))((](])[([[][])((]((]((][[()[)]]][]()([(([([()]][)]()]([()[([][[[(([([])((((()[](()[])[[]([[]]][[])[[[)[[[(]]]])()](()][(]((([[))]((()(][([)]))(][))[([(]])]((][([[)[]][(]((]])))()))][(]()(]]][(]]))]([[([))]]()[[(]]](]([]((((]][([)[]])()[[[(])][[]([[[[)[]][]])()])[[]]))[][[(](])([)]()[()(])()]]][]]()[][]])(][[[]()))][][([[[][)))[][(((([[]((([][][[()[)]()()([)))(([))](][))([](](([()()][][][)))[((((]([(]]]([]][]][][[[][[][((]](])[[]]]))]()()()([])))[][[)[(]([(])[)()]()][]]()))(]]([[[([)]))[(([)(()[([([)))((())[[)](]()(])([]]([))[[)[((]](]((([[([])[)]][)()[][()[))[]([]((](()[)]]])])[)(][[]](](]]]))[)()])][))(((]]]((]()((]))][[(]]))]]]))([([][[[))(][))]()(])][([])((((](]([)(]))[](()[])[)(([)([)(([]([(]]())])](()])])[][])(([()]])[)(([[[]]])([])[[()([)))[[([)))][([(])[()(][()](]([)[(]]]](]])][][([]]([)]][][[)](()[)[([((([]))][])[()[]]](](([[[()(((])([[])])])))(])][(]()[([[[((]([()(](]][]((])(]]][))((])]][((]((()(]]())])]](][()][)(]]([)))]]]((](](]))[(()(])[])[[)([[())([]][](](]])(([]]]([]])]][[][[[]]))([()[[(])[)[][])(]]]][)[))(])]])([][(])[]((]((((()])]]]]())[()[()[][]])(())])))((])])[[](())([[))(](([)][[([(]][][(]()))([()()(]])()][(]][())()])][())[(]]])]))(()][]][[[)((((()())](]((]([)[(((]())(])))])][]([])()((](]]][)[(]((][[]])[)()[]][[]))([)(])[[(([]]((]())[))(])[(())[(](((())[])]]]([])[(])[]]([((][))[])(](])[)()))][[())([(((]))]))][(]])((]])[)]()(]]]())))])([()(((]]))]()]])())((()[]]()[[[()]](][()()(([]))))][[(]))]](()[[())]])[))([(])[(()[[[[)]((((([]))[(([)][)]][(][)](](])]]][)((](())])[([)[(()())[(]])(]))([(])(][][]]]([[][)[))))[[]))([]]][([[(((][]])[())))]])(([)([))]][[]))(([[([][((][[])[[[[)))]()[)]][)[][()(([[[([])][([[(()](([)())[[()[)[)[)((](](]])[(]())([([)]]](((()(((]([([[)((][)[]])]][(()(()][](()[(])[]][])[)))[[)[())[[()[((([]())(]])][[]()[]])[[])[)[](((()[)[[])()(())][)[)])([][((][[](]][([))()[(([][])](]()][]]((()([()()](()(]]]])[([(])(]]](((][))]]][()(([)]()[(]((]())[([)][)()(][(([([(()))())())]()())(]]((]))[)))][)[](]]][([])([][(()(](]())(([())]([([(](]](]]]([][)](])][[]]][[[(())((][][]]()](()])[)[)(][((][]))[)]][()(][(([([[)[[)(][(([())[)[[(]())))))])][([[(](][))[((]((()([([[[(]])[()[[)]]))[][[()[]]([)][)][(([()())[([])(][()]](([]((]][[))]([[[)][([()))[)][[)))]])](][(((][(][)]][)[))])((([](()([([[)([((])[]](][(][((()][)]([()]([[()(]([)]))[([(]([()](][]][]]])([[[)(([[[[]()[))[)()]((]]][)]()]))(()]])(]))[()(]([][[[][)[((]](([[[]])(]]]]()))[(]][[())([])[)[[()](][)()[))]()(]]))[()))]([])[]()[]())())))[])[))[(]](([[]()[][][())[)][))]][)([(()(])((((]))([](])[())][[)(()[[]))][[]()))))[)[([[[(][))[[[)))[](][[([([]][][)[(][)([)[)][[(((])[((((([[)](]][]]())())(])][()][(((][]]])](([[)[]()]][]()(((])]]([][])))[])]]])]]([[)()[(()(([(((](()[][)())([]]][((())](([(]()(])()(][]([)])[]([(]([]]]][([()))][)])())([[(][)]](([(][]([(])(][[][][)((])[[)](]](][([[]((([)()(([)[((([[(()]())([()([()(])[][())(]))[))([[()[([[(()][]()[)([)(]]()(()(()))]])(([()())(][([(]])[)()[][()][[](([)[]()][(()[)[][]]()](]))]([)([][[[)((]((]]]]][()[[](()[)[))][[]([]))()]](]()])(](]()(]((](])]]])[[]]([][])(())[[[[[))([]())]([](([([)[[)[))[)(]()[(][]([](]()][[[]])[(][)))()])([(])))(([]((([((()[)[)([])(]()())[[[[]))(]][]]]([[([)]])(]]))([(][)[[(()]])[][[)[][([(][))])[()())][[(]])[[)(()]]([(]([][[([])[([)])[((][]())[)([](()[)[[)(]][(]]]()[)]]]]])]][(])))((([]])((]()]]([[([]]))]][]]))[())[()[(][]([[](][))(([)](([(][((]][(([[([[][(())[)][](]]])]()((((](()()]]]))[)([(])([[(([()](((][)]]]][)[[[)(]]))(]])[][[(([][([[([[]([()(]))(]][[()([][))[[[])()][[([][]([])[[[(](([([)))([])((])[(](])[]])))[([()[]((]((((]([))](]([[(([([[))[([)([]])[)(]])](()[][][]](]](()[[[[)(((()([))])([]))()((([[](]]]][)]]([(])(())[]]()()][))](()[())[[]][[[[[()][][[[][[)()[))]][))[]])((]()]]))][)(([][[)](]]()[]](][()]][([[)][()))[[(])([)[])][][(()(](()(()]]]([)[[[])[))()][)([]([)[(([))][(]([]][[)()((()[())]))]][)([[]))](]())[([]]()((])[))][((](][[))))(][[(([(((([]][]][([][]([)][((()(])]]())([([[))](((]]][)[])[[)]()[[())][][[[[)(([]]))[]](())[([()()]]][]]))][))](](([))(([]([(()[))[)))])([[)(()[)]()[][[[[()[[])())))(((]]([[([)[))][([[[)()][](]])((][][]](]][)[()[]][(([(][[])[)()[))[))[[[](](]][)())]][[((]([)][][])))](](])([([]])])[][))[(([[()(])((()[(]([([])()((])))([)[([))]][))(]]]]]]])[([]][)]))][]()]]])][))])([]([(]][)([[)()(([[)][)[(([)]]][(][]]([(([)))]][[][()()(]((][(]()])((][(][()(([[(][[[(]]([([]]][))[[])[[[[)[(](])))[(][]()]]([]([(][))[[[([]][)[]())[[)(]])]](]])](][(]]][)([[[]([([()[())](])[(([()]][[()([[][(][]][([([)]](])(][[([)([))[]]((]((](((]((((([(]([))()[])])[)[])(([))()])((())][[(][([]([]()(]][()[]])])((]])(][[())])[][[))))[)](()([]()](]()]])([[[[)(]])[)(()]())(((][[]])[)[][][())])([])[)[)()[)([((([[[(()[([([](][([())([()]([())[)))[)()[](])])]]((((([[[[])[)]))[)[(]((]()[[))([][[(]([)))())[)([(())[)][[))[[[)((]()))]][)[][(])]]((][)))[((()](])(][)[)[(()]]([))[[](([)([))([]))))(((]]][)[([)])]]]((([([](]()]])([]]([[)])((]))[[))])[))])[)(][([)]]]((][)()]((()()([([)]]))))(((]))][])))])]])(()(](]())[)[)[[][[)()[]))))][[][)))[))[]((]([(]][]]))[([()[)()))[]]([[()[((]][[))])]))][]()([))])))()[()](][]()([[)((([[](][)()[[][)])((([[([(][((((][]]([(()((((([)))[)](](](()(([)((]])])[)[[](][([(]]()][)])[]()(([(])]())[]((])])))[[[[([()[(]((()[()]])((((]]([]([[)[([[([)(]((()))[((]]])]([))(][[(]][[])(((])[)(]))())]](][()])([[[[[])])(])]][[)]](](]((][[)[))()](])[[](])[)([(]))(()[[[]()(][[)())[)][())[[(][[(((([[((](([])()())))[][[(([]]()))]]()]([]]]])][]))])(][]()()])])()]))])])])[[(()[[)[)([(][[]]])))][[[())[))[[[[][(]))(][([))[(())[([(](())((]]))[)])](])[]((][()[))])((]([[)(())([(])))](])])([]][)[]])))(])]][]][]](])()]([)]((((([(][(]]]([](][](())[(](([(()]()])([]]][])[])([))[[)[]))]])][(((([[()]])[([)])(][))([)(][(((()][[([[)())[)[[][([()([(]([])])))[])[[])][)]([]])([([[)([]]))][(]()[([[[)))])((])()[[[))[)[([)])][)[]]()((([[][))[[]][))]])[)[)]([[][([()[([[((]([[[(]))((([(](])()()((][))[][[))([[())([([(]())(]([])]](())])]))[(()()][([)]]))][]()[(])]](][[(([[[][()]([)))])]])[][([]()]((])[(][)[[]]([)([[))))[([))])[)[[)[][]([(][(])()][)(]([]]])])[(][]](]()()(]()[([[([][]])([[(](((]][((][))((](((]]]])]))][((()[]([()[[][[(]][[)[[(]((([)]][[[][]([]((]][)((]](][[([))]][]][)((]([[((]]](][[)()[(](([[)][((]][()])[[[)[)()][)[)()[]]([[])](]))[[(])[](()([[)[)(])][())])[]]([])))])))()()))[[[[)(())))][[][[[[]([[])))[])(][][](]()()[[)[[([)(]][]())(([])]][)])[]]([(]((][[([[[)))])([()([)[][]]][)([]]])))[[([][((([([)(]][)][]]]]())]]](([[](][(()((]([)](([)[((])(]([[([[()])([)[)][([][]])([(])[](][))))[)[(](]]](][[(]]((])[(][))))][[])]][(])[]([)]]()(][]]))]]([]())[](()(()()]]][]([([(][)()()[((([()()[][[]]]()[[][)]())])[]))([[](]])))(])]]]([)]](()]((]])[)(]](]])][[[[(([())([[]([))([][()]]]([))[)[]]]))][[[))[()])(([]]([](]]]([]])([[](][)([((](])(][()(][][()))[[)[([)([[)()(((()])[))))]([)(([[)][](])([([[]([)))[[(]]))(((]]]]))][)())][]((][]()](([)](]]())[)(]])([([][)]))((]]((([)))]]]((]]][[[]]]][]()(([]](][(][]]][)([))()))](]])()[][(]()[))])][[])(([]((((]))()]()[[)[[()([)))[]()(([[][((([[)[((][)])[[(]()((([(()))(]](][]([](((([[)[)()([([([())[](]])[(()([])[[())[[]]]]([()]()]))][))((([[[)][]([[(])[(])))([[][]]()][[[(]((([()(()][[]]()[[[]][(])([))[])(])(])[)[]()]([[[()]()[]))])()))()[())[(][][)[()]()[[])]())[)[][[[()])][[(())[)([][[[)[[)[)[)])))][])()][[[]()[]([((])[)(]()])][)([([[][[[([])[][[])][])((](])()(])])])()[))[))[)[(()(()[][[([]])([])))([]((]][]()([((])[))])][][(][)[([]((])[[)([((((]](([])][((()[[)[)))[)])[])(]))[(])])()[[[[[[(]](][(()]())[([([)([[[](]()([())(]([(()][([](([[]])[(]))]][[([][[([))[)][())((()()[([])[()[]]([)(([])(([)][[[((]])[)[(][)))([[[(]][)()[][[)([[)])[)[](][])](])(((])[])()([))[[([([([[)(])]()([)[()([[[[([]]](([]()(([)([[(([](([[(](])]([]()[]]])[[)[())))))]]))()[]]))][((]()()][[))][))[((][([[([(((()[([((([]([(((][)][[)()([)[(]([))])[(]([](([)))[))))[[(([)]([[[([[)](())](]()[])())((()][[([([[]]([[(()[)([)])[)]([)[)[)][])))][((]([(()(((][[([](()])][((])]())[])(]][[[)[[][]]((][))(([(([[((())])])(]](()((]))]()])[[[)(]][([))]](][)([)(([[]]][(()[[)[([ [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] (((([[[(((([[(([([([([[([[(([[[([[[((([([(((([[[[[((([([([[([[([[[[((((([[[[[([[(([([([((([[[([([[[([((([(([([((((((([([[[([((([[[(([(([[[([([[([(([[[((([[[[(((([((((([[[([[[[(([[([[[(([[[[[([[((([([([[((([[(([([[[([[([([([[[[[[[([[([([([([([(([([[[[((([[[([([[[([(((([[([[[[([[[[(([[(([(([([(([[([[((([[[[([([[[(([[[((((([([(([[(((([[[([((((((((((((([[([([([([(([([([(((((([[[([([(([([(([([([((([[[((([(([[([(([[(([([(([((((([[[([([[(([[[([[[([[[([([[([[([(([[[[[[([[[((([([([[(((((([(([[([((([[([(((((((([([[(([[([[([((((([([[[[((((((([([(((([[([[((([([[[[([[[[[([[([(([(([([[[[([((((([[([((([([[[[(([[[[(([[[[((([[[([([([[((([(([[(((([(((([([[([[([[[[([([(([[([([([(([([[(((([[[[([[([[[([[[((([[(([(([[[[[[[((([((([(([([[[(([[[[([([[[[[([((([(([[[[([[((([[[([[(([[[([([(([([(([(([[[(((((([[[[([(([((([(([[([([[[(([[(([[((([[(((([(([([[[[([([[([[[[([((([((([[([(([([(((([[((([[([[([((((((((([([[[([[[(((([(([([((((([([([[((((([[(([([[[[(([[[[[[[(([([(([[[([[(([((([[([([[([(([[(([[([([[[[(([([(([(([[([((([((([[([([[([[[[[[[[[([([([[[[[([([[([(([[[[[([(([[[([([[[(([([[([[([[[([(([[[([(([[(([[[((((([[[([([[(([[[[[([[([[[([[([[(([[(((((([[[(([[(([[[([(([([[((([[[((((([(([(([([(([[([((([[([[[[([([(((([[[(((((([(([((([([[[([((([(((((([[(([[((([([(([((([([[([([([([[[(([([[[(([[[([[[((((((((([[[((([[[([(([[([[([(([[[([([([(([(([[(([[([(([[[((([[(((([((([([(([([[((([[(([([([((([[([([([[((([[[(([[[(([[[[([[([[([[[[[[[[[[([((([([[[[[[([(([[[((([[(([[[([([((((([[[[[([[[(((([([[[[[((([([([(([[[[[[[(([[[([([[[([[[[([[([([[[([((([(((([(([(([([([(((([([((((([((([(([(([[[[[[([[[((([((([(([((([([[[([(([[(([[([(([([[([(([((((((([[([[[([(((([(([[((([([[(([[[[[(([(((([[[[([[[([(((([[[[(([[[([[([([[[[([([(((([[[[[([[([([([(([[[[[(([((([([([[[[([[[([[((([[[[[[((((([([[((([[(([[[[[[([[[[[[(([([((((([(([((((((([[([[([([[[((([([[[[([[([[([([[([((([[[(([[[([([[[[[((((([([[([[[[[[[(([[[[(((([([((([[([[[(((([([[([[([[[[([[(([([[(([((((((([[[([([[([[[[[[[[[(([(((([[(((([((([[(([[[([[[[[([(([(((([(([[((([[(((([(([[([[(([[([([[[[[[(([([[((((([((([(([[([[((([(([((((([([([([[([(([[[[[([[[([([([([(((([[([([(([([[[(([[[[([(([((([[[[[(((([(([(([((([(([[([([(([(([[([([[[(([[((((([[([[[(((([[[([([[[[[([[[(((([[[(((([[[[[((([(([[[(([((([[[([[(((((((([([[[(((([((([[[[[[[[[([[[(((((([([[((([(([([[[[[([([([[([[([((((([(([([[(((([((([[(([([[(([([[(([(((((([([([[(([([(([([[[([(([([[[[[([[([([[[([[[(([(([[[[[(([[((([(([([((([([[((([([([([[([[[((([([[([[(([[[[[([[([[[[[(([[[([[[([(([([[[([[([([(([[(([([[[[([[[([[[[(([[([([(([((([([([(([[[(([[([(([[[[([([[[(((([[[[[[[[(([[(([([((([(([[[[([(([(([(([[[([[[[[[[[[((([[[[[([[(([[([([([[([([[([([[[([(([[((([([[[[[[[[(([[(((((([[[([(([([(([[(([([[[[[[(([(((((([[((([[[[[(([[[[[([[([([(([([[([[[[[[((([[[[[(([[[([[([((([[([([([[[[(((([([(([[((([((((([[[([([([[(([[([([(([(([[(([(([[[[[([(([([[([[[[([[[[((((([[([(([([(((((([([[[([([[[[[[[((([[[([[([[(((([[([[([([[(([([[([([[[([((([[([(([([[[(([[((([([[[((([([[[[(([[([[(([([[[((([[[[(((([([[([[(((([[[[((([((([(([[[([((([((([([([([(([(([[[[(([((((([[([([[[[[([[((([(([[[[([([[(((([[[[[[[[(([[(((((([(([[(([([[[([([([[[[([[[([(([([(((([([((((([[([[(([((([[(((((([[([[[[[([([([(([[([([((([([([[([([(([[(([([([([([([[[(([[[([(((([[[[((((([[[[[(([([[[[[([[[(((([(([([[([[(((([[([[(([[([[[[((([[([((([[[([([((([((([[[([[[([[[([[[[[(((([([[[([[([[[(([[([[([([(([[([([(([([([(([[[[((([[((([(([([[[[[[[[([((([[[[(([[([[([[(([[([[((([[[[((([[[(([[[((([[[([([[[[[((([[([[([[(([(([((([(([([[[[[(([([(([[[([[[([([((((([(([(((((([[[[[([[[([[([[[([([([[([[(([([[[[([((((([[[((((([([((([[[[([([[([([[[[([[[[([((([(((([[[((([([([[[[[[([[((([[(([(([(([([(([(((([(([[[[[[[[[[[[((([[([([[(([[([((((([[[([(([[([[[[((([([[([[[[([[[[[[(((([(([[[[[([(([([([([(([[[[[[(((([([((([[(((([[([((([[[(([(([(([([[([((([[[([[[[[[[([((([[(((([([([([[[([[[((([([([([[[([(([([(((((([([([([[(([([((([[([(([(((([([[((([[[([[[[[(((([(([([[[[[([[[((([((([[[(([[[([([[((((([((((((([([[[[([([(((([(([[[([[(([([[[([[[[((((((([([[((([([([[[[([([([[(([[([(([(([((([[(([[[[([[(([([([[([(([(([((([[[[[[([(([([[[[[[[[([([[[[[((([([[[(([([[[[[(([((((([[([(([([((([([[[([([([(([([([[[([(([(([[[(([[(([[[((([([[([[(((((([[(([(([(((((([[[[([([([([[([(([[[[(([[((([([(([[([([[[[((([[[(([([[([[[([(([(([[[(([((((([[[([([[([[((((([[([[(([(([[[[([([((([[((([[[[((([([(([((([(([[[(([([[([[[(([([([[([(([([([[((([(((([[[(([(([[[([[[[[[([([(([[[[[([(([[[[([[([[(([([(([[([[[[([([([[[[([[([([((([(([[[([[(((([[([[((([(((([((([[(((([[(([([[[(([(([(([(([([[([([([(((([((((([[[((([([[(([(([((((([[[([[((((([(([[[[([[([[(([(([[[([[[([[[([[[(([[([(([[([[[((([[[(([[[[(([([([[(([([[[((([[[[(([[(([([[[[([([[[([[[[[([([(((([[([[[[[(([[([[([[(((((((([[(([([([[[[((([((([[(((([([(((((([[([([[[[((((((((((([[[([((([([([[[[[([[[([[[[[([([[(([(([([[[(([([([([([(([[[[([[([[[(([[(((([[[(([([[[[((((([((([[((([(([[(([(([((([(([[[([([([([[[(([(([[(([(([[[(((([[[[([[[[[(([((([(([[([[[[([[([[(([[[[([(([([[[[(((([((([([(([[(((([[([[([([(([[([([[([(([[[([[[([([([((((([[(((((([(([[[([[([[[[((([[[([([[([[([(((([(([([([[([[([[[((((([(([[[[[([[([([([[[[[([(([[([[([(([(((([[[(([(([([([(((([([[[[[(([([[[(([[((((([[[((([(([([([[[[([([[[(((([([[([[([((((([[((((([[[[(([((([[([[((([[[(((((([[([([((([[[[([[[[(((([(((([[[(([[[(([(((([[[(((([([[([[[[[[(([[[[(([[[[[([(([(([([(([[[([[(([[[[(((([[([[((((([([[[([(((([([[([[[(([([[(((([[[((((((([((([[([(([((([[[[((([[((([[([([((([(((([[([((([([(([[(((([[[([([[(((([([[([(([[(([[[[[(([([([([((([(((((([[[[[[[[([(((((([[([([(([[[(([([[(([[[[(([([((([((([[[[(([[[([([[[([(((([[((([(([([[([([[[[([([[([[([([[([[([([([([(((([[[(([[(([(([([[([(([[(((((((([([([[[[[(([[[([[[(((([[[[[[([([([(([(([[[(([[([([[(([[[(([[((((((([[[([[[[([[(([((((([[[[(([([[[(([[[([([([[((([[(([[[(([[(([[(([[(((((([((([([[([[[[[[(([([[(([([[[(([[((([[[[(((([[[[([[[[(([[[[([([((((([[([(((([[(([[[[[[[([(([([([[[([([([(((([[(([(([[[[(([[[((([(([(([[(((([[[[([(([[((([(([(([([((([[((([[([(((((([[[[([[[[([(([[([([[([((([(([[[[([[([([([[[([((([[(([[([(([[([[[[[((([([([(((([([([[[([((([[([[(([[[([[([([([[([[(([(((([[[([[[[([(([[[([[[[([[([[[[[(([([([[[[(([([[[[((((([[[[[[[[(([[([[((([([[(([((([([[[[(([[[[(([[([(([[([[([([[([[([([(([(([[[[(([[([[([((((((([[([([[[(((((([[[[[(([[(([(([[[(([(([[[((([((([(((([((([[((([(([([([(([[[([[(((([([([([[([(([[([(([[(([[[[[(([(([[([[[((([[[([([((((([[[[[[[[(([([(([(((([((([(([(((((((([[[(([[([([[[[[(((([([([((([([((((([(([[(((((((((([([([([[[[((([[[[[[(([[[((((([(([[([[(([[([([((([([([((([([[([[[([(([([(([[([[[[(([([(((((([((((([[[[(([([[(([[(([(([(([([([[(([(([[(((([(([[[[[[([[[([[[([([[([([([((([([([(((([[([(([[([[(((((([([([[([[[((((([[([[([(((([[(([([[[[[([[[[[(([[([((((([(([([[[((((([[[((([[(([[[(([([([((([([[([[(([[[[[((((((([[([[((([[[([(([(([((([[[[[((([(([(([[[((([[[([[[((([([[((([([[[((([((([((((([[[[[[([[([[[[[(([[[[(([(((([([[[[(([[(([[((([[(([((((((([[[[[([[(([([([[[[[([[[([[(([(([((([(([[[([[([[[([[[((([([([[(((([[[([[[[((((((([([[[[([([[[[(([[((([[((([[(([[[[(((([[([((([([[[[((([[([((([[[[[[[(([[([[[[[(([((([(([[[([[(((([([([[[([([([[[((([(([([[(([([[([[[([[([(([((([[([[(([((([[([[[[[[([((([[(((([[([([(([[[(([[(([[[[[((([[([([([[([((([([[([[([[([(([[(([[([[[([[([((([((([[((([[([(((([(([[[([[((((([([[([(((([[([((([[[([[[([(([[[([([[(([[[((([[([([([((([(([(((([(([([([[((([[[[[([[[[[([[(([[(([[[[[[[((([[([[([([((([[[[(([[[(([[(([[((([([[([((((([[[[[[(((([[[[(([([[(([([(([[(([(([((((([((([([[[[[([((([[([[[(([[(((([((([[([((([((((([[[[[([[[[[([([(([(((([(([(((([[([([[[[([(((((([[((([((([((([([[[(([[[([((([[([[[[[[([[[([([[[(([[(([[[[(([[([[[[([([([((([[[(((([([([((([([([([([[([[((([[(([([[([[(([((([[[[([([[((((([[((([[[([[[(((([(((([([([[([([[(([[[[[[[[[[([(([[((([(([(([(([([[[((([([[((([(([([[((([((([(((([(([(((([[([[([[[[[[[[[[[([((([([([[[([(([[(([(([(([[[(([((([[([(([[([([[([(((([(([[[(((([[((([[[[([[(([([([[[([[((([([(([([[[[(([[([[(([(([[[((([([([[((([[[[([[[([((([[[[(((((([([([[(([[([[(([[(([([[[((([([([(([[[[(((([(([([[([[[(((((([((([[[([([[(([[[[[(([(([(([((([[(([[[((((([[([([(([([[[(([([((([([[(([[[(((((([(([[([[[[[([(([((([([[[(([[([[[[[[[((([[[[(([([(([((((([[(([((([[[((([([([([((([[((([(((((([[([[[([(([[([[[([(([[((((([([([([((([([(((([[([[([([(([(((((((([[[[[([[([[[([([[[[((([[[([([((([((([[[[[(([[(([[(([([[[([[[[[(((([[[((([[[([[((((([([([[[([([([(([[([([[([[([[(((([(((([[[((((([([([([([[[[([[[([[(((([[((([([(([[(([([[([[(((((([((([[(([([(((([(([((([[([[[[[([([[[[((([((([((([(([(([[[[[(([(((([[((([([[((([([([[([(([((([[([[[[(([((([([([[(([(([([[(((([[([([((((([[([([[([[([(((([[([[([[[((([[([[([([[([([([[[([(([([[[(([[[[([[[[([[([(((([((([[(([(([(([([[[[([[[[((([[[[(([(([[((((([[(((([[[((((([([(((([(((((([(([[[[(([[(([[[([((([[((([(([((((([[(([[((([([(([[([[[((((([[[(([([(((([[([([[[[[([[([([[[(((([[[([[[[[([([(([[[(([[[(([([[[([((([([[(((([[[([((([(([((([(([[(((((([([([[(((([[[(([([[([([[[([([([[[[[[[([(([([(([[([[[([([[(([[([([[[([([([[(([(((((((([[(([(([(((((((([([([([[[[(([([((([([[([(((([([([([[[[([[(([((([([[([(((([([([[([(([([([[([[[(([[[[([[[([[([(((([([[[(([[(([(([([([[[[(([[(([[([[[[([[(((((([[([([[([([((([((((([([[[([[[[([([([([([([[[[([([[[[([[[([((((((([[[[((([([((((([((([((([[[[(((((((([(([([[([[[(([[([(([([([([[[[([[[[[[((([[[((([[(([([(([([[((([([([(([((([[([[[[[[(([(((([([([((((((([[([[[[[[[([[[([[[[[[((((((([((([(((([(([[[([(((((([((([(([([([(([([((([([(([(([[[[([(([[[[[(([([[[[[[([[[[(([([([[[([[(([([([[[((([[[([[[([[([([[[[([[(([([[([[[([([[((((([([[(([([([[(([((([(([[[[((([[([(([[(([([[[[[(([([[([[((([((([[[((([(([[(((((([[([(([[[[[[[(([([([[([[([([[([([([([(([[[([[[[[([[(([[[[[(([[([([[([(([[([(([(([[([[(((([[[[[[[([[[([(((([(((([((([[[([([[[((([[(((([[[(([[([(([([[([[[([(([[[(([(([([[[(([[[[((([[(([[(([[[[[[[((((([(([(([[[[[([([([[[([[((([(((([([[([([[[([[(([([[([([[[[((([[(([((((([((((((([[(([[[(((((([[[[([[((((((([[[[((([[([([([(([[([[([[[([([[[[[([([[((([[[(([((((([[[[((([(([([(([([[(([([[(([[(([(([((((([[([(([([([[((([(([[[[[(([[(([[(((((([[[[([[[[([[(([[[[((([(([(([([([(([[[[[([[[[([[([[([[[[[([([[((([[([[[[[((([([[[[(([[([([[([([[(([[[[((((([((([([[[[(((((([[([([[[[([([((([((([[[[((([((([[[[([([[([(([[(([(([[([[((([[(((([[[([(([(([[(([([([[(([[[[[([([(((([[([[((([[([([([[[(([(((([([([(((([(([[([([[(([([[[((([(([([[(([[(((([[[[[((([[[([[([[[[[([([[[[[[[[([[[[([([[((((([[[[(([([[[([([[((([[([[[[([([[[[(((([([[[([[[[[[([([([([([[(([[[(([[[([[(([[((([([[(([([(([[(([([([(([(((((([(([([((([(([([([[([(([[[([([(((([([[[((([[[[[(((([([[[[[([[[([[((([((((([[((((([[((([((((([((((([[(([[[[[(([([[([(([(([[(([[[((([[([([([([([([[(([(((([(((([[[[[[([[([[([[(([([(([((((([([[[((([(([([[([([(([[[[[([([[[[[([([[([[[((((([[[([(((([([([[([[[[[([[(((([([[([(([([[[[[([((([((([[(([([[([([[([[([[([([(((([[([[((((((([([[[(([([(((([[([[[[[(([([([(([(([[(((([[[(((([([([([[([([[(([[(((([([[[([(((([[[[([([[[(([(([([(([[([([[[[([[(((([[[[([([[[([([[[[([(([(([[[[[[[(([((([[([([(((([((([(((([[(([([([([([[(([[([([[[[[[([[(((([([([[[([[[([[[[[(([[[[([[((([[((([[([((([[((([[(([[[[[[(([[[(([(([[[[((([[([([([[(([[([([(((([([[[((((([([([(([((([([[[((((([[([[[([[[([[[((([([[([(([[((([[(([([(((((((([[(([[[[[(([[([[(((([(([[[[((((([[[((((([(([(([([[[[(((([((((([([[[[(([(([[([[(([([((([[(([(([[((([(([([[([[[[[[[(([[[(((((((([[((([[[[[([([[[([[(((((([((((([(([((([([[([([[[[[[[[(([([[[[(([[[([[[[[(((([([([[(((([(([(((([[((([(([([[([[[[[[((([[(([([(([[([([[([([([[([([[[([((([[[[(([([([[[[[[(([[([([[((((((((((([[([(([((([([[((([(([([([[([(([([((((([[([[[[[[([([([(([[([([[([[(((([[((([[[([[[(([(((((([([((([([[[[([(([([[(((((((([[(([(([[([(((((([([[[(([((([[[[[([([[(([[((([[([[((([([((((([([((([([[([[[[[[(([[([(([[(([([[[[([[(([[(([[[((([([(((([[([[[([[[[[(([[(([[([[([(((([(([[[[[[(([((((((((([([[([((((([[[[(([[([[((((([([[([[([[[(((([[((([[[[([([[[(([[((([[[[[((([([(((([[([([((([(([[((((([[((((([[([([[[[[[[(([([((([[([[[([([[[(([(([(([([[([[(((([(([[[[[[[([([[(((([[(([[[[(([[([([[(((([[([[(((([[[([([([((((((((([[(((((((([(([([[(([[[([[[((([[[[(([(((([(([((([[(([[[((([[[(([(((([[[([[(((((([(([[((([[[[([[[(([([([[(([([(([[[[[[[([([[[(([[(([[[(([([[((([([[[(([(([([([([(([(((([([([(((((([(([[([(((([[[([[([[[[[[((([((([[([([((((((([[[[[[[((([[([(([[([((((([[(([[[(([[[[([([(([(([[(((([(([((([[[((([([[[(([(([[[(((([((((([([(([(([[[([[[[[[[([([[[[(([(([([((([[(((([[[([([([[[[(([(((([(([(([((([[([([[[(([((([(([[[(([([([[((([(([[[((((([[[[((([((([(([([[[([[[([[[[(([[(([(([[([[[[[([[([[(([([([(([(((([[((([[[[([[[[(([([[(([[(([(([(([([[[([[[(([[[(((((((([(([[(([[[[[(((([[([[([([(([([([[[[[((([([((([([([([[([((([[[([[((([[([((([[[[[[([(((([([([[(([[(([[(([[[[[[(([((([[([[[([(([[[[[[[([[[[((([((((([[((([((([(([[[([((([((((([([[[([[[([[[[[[([(((([((([([((([[([([([[((((((([(([(([((([[([[(((([[[([(([[([([([[([[[([([[[[[[((([[[[[((([([[([[(((([[([([[[((([([[([[[[[[([[[([([[[[((((([((((([[([[[[([(([((((([([([[[[(([([([(([((((([[[[[[[(([((([([[[[(([([([[[(([[([([[([([[([[(((((((([([(([(([[[(((([([(([[(((([[(([(([[[([[((([[([((((([([(((((([([([[[(([((([[[[(([[[[([((([[([[[(([[[[[[[[(((([[(([[[[[(((((([[[([([((((([[(([([(([([(([[((([((([[([[(([([[([([([([(([[[[[[(((([(((([[([[[([((([([([[([[[([[[[[[[([[([[[[[((([[[[((((([(([[([[(([[[(([(([[[([[[[[([([([[(([([([((([((([(([[([[((((([[[((([(([[([[[((([[[([(([[((([((([([([[[([([([((([[(([[[[[[([([[(([([(([[(([(([([[[(([(([(([[(((((([[([([((([([([(([[([(([([[((((((([(([[[((([(((([([(([[(([[[([[([[(((((((([(([([[(([((([[[[(([([((((([([(([[[((((((((([[[[[[([[[[[(([[(([[[([([([[[(((([[[((([([(([(([([[[(([(([[(([[[[[([([(([([([[[(((([(((([[[[[(([(((([[[[[[(([[[(([([[[(([((((([([[[([([((([([(([(([[[[((([[(([(([([[[[[([((([[[(([([((([[[[([((([[[[[[([((((([[[(([(([[[[([((([[[[[[[[(([[[([[[(([([[((([[((((([[[[[(([[(([([[([[[[(([[([(([([(([[[([[(([(([(([([[(([[([([[[[[[[([([[(([[([[[([([(([([(([(([(([([([((((((([[([[((((([((([[([[[[(([[([([[([([[[[[((([([([([(((([((([[[[[[((([((([((([(((([[(((([([(((([[[((((([[[((([[[([(([[[(([[(([[([([([([([((([[(([([([[[((([[(((([[[[([[([([([([[([[([(([[([[[[((([([[([(([[[(([[[(([(([((([[(((((((([([[(([((([((([[(((([((([([[([([[[[([([((([((([((([[[[([(([(([[[([((((((([[[([([[([(([[[[([(((([[[([((([(([[[[[((([([[([((([[[[((([((((([(((([[[[([[((((([((([[[(([[([[[(([(([[[(([([([(((([([([[[[[[[[([[([[[([[([[((([[[(([(([[((([(([(([((([((((([([([([([[[[[(([[([(([((([[[((((([[(([[([((([[((([[[([([[([[[([((([[([(([((([([([[([[([[((([[[[[[[([([[([(([((([[[([((([[([(([([([[((([[[((([(((([[[([(((((([[[[([[(([[[([(((([[([[[((([(([[[[[([[([(([[([[(([[([[([[([(([[[((((([([([[([(([((([([((((([[[[([[[(((([([[([[[[([(((([[[([((([([(([[[([(([[([[[[[(([[([((([[((([[([[((([[([((([(([[[(([[([[([(([([([[(([[(((([[([([[([([[([(([[([([[([[[[[(((([[[[([([[((([(((((([[[(((([[[([((((([([([[[([[(((((([([[(([[[[([[[[([([((([[[[(([([[((([((([(([([[[[[[((((([[([[(([[(([[(((([[(([[([(([(([([(((([([[[[([([[[(([[[(((([[((([[[(([([[((([[((([([[((((((([[((((([[([(([((([(([[[[((([[[([[(([[[[(([([[([(([[[([([[([[[([[([[([[(([[(([[((([[((([[[[([([((([(((((([[[[[[[(([([(((([[[(([([[([(([[[(([((((((([[[[(([[[[[[[[[[[[[(([[([((([[([[[(([[(([(([(([[[(([[[[[([([[[(([(([[(((([[((([[[[[([[[([(([([[[([[[([([[[([[[[[(([[(([([(([[([[(([(((([(([([(((((((([[([[((((([([[[[(([[[[([[((([([[([(([[([[((((([[[(([[([[[[([([[[([([[(((([((([(([(((((([([([([[([[((([([[((([[([([[([[[([(((((([(((([[(([[[[[[[(((([([[([[[(([(([([[(([[([((((([(([[[[[[([((([[(((((([([[[([[([[([([[([[(([(([[[([[([((((((([[(((((((([([[((([([[(([(((([(([[([([(([([[((([[[[(((((((((((([([([[([[(([([[[(([[[((([(((((([[[([((([[[[((([[(([([(([[[((([[[[[((((((([[[[((([[[[([[((([[[[[[([[[[[([([([([((((([[[[(((((([[([((((([[[[[[([[(((([[([[[[[[[((((([[(((([[(([[(((((([[[[[([[(((([[(((([[((([([((([([([([(([((([[[[[(([[[([(([([((((([[(([([[((([[(([[(((([([([([[[((([([([([(([((((((([([([[[[((([(([[([(([[[[([(([[(([(([(((([[((([([[[(((([([[[[[[[((([[[([[[(([[([(([[[([(([[((([([(([[[([(([([[[([[(((([[[((([[([(((([[(((([((([[[[([((([[[[[[[([[([[[([(([[[[[([[((([[([[(([[((([[[((((([[(((([[[[([(((([[[[[[[[(((((((((([[[[[[([[[[[([[([[(((([[([(([[[(([([((((((((([[([[([[[([[((((((((([[[([([(([(([([[[[([([[(([[[[([([[[[([(([([[[[[[(([(((([[[[[([[[([[[(([[([[[[(([[[([([((([[[[[(([[([[([[[[([((((([(([[[[(([([[([((((((([((([[[[([([[[[([[(([([[([((((((([([[([[[[[[[([[((([((([[[([([[[[[[[([[[[([((([([[[[[[[[([[(((([([(((([[[[(([([((((((([([((([(([([(([[[[[[[((((([[([[(((([[([([(([(([[[([[((([[(([(([([([(([[[[(([(((((((([([[[[[(([[(((([[(([[((([([[[([([[[((([([(([[[[(([[([[[([([([[([[([([([(((([([[([([[[[([([([(([[((([([[[(([[([[(([(([(([([(([(([([[([([[[[((([[[[(([[[[([[[((((([[((((([[[[[[([[[[([([(((((((([[[[(([([([[([[([(((([[[[([[[[(([[[(([(([([([(((([((([(([[([[[([((((([([[[((([[(((([[[([([([([([(((([(([[(([[[[((([[[([([(([[(([[([([[[[[[[[([(((([[(([[[([([[([[(([[[([[[[[[[[([([([[[[([([(([[[(([[[[([[((([(([[([[[[[(([((((((([(([([(([(([([([[[([(([[[[(([(([([([[[[[([[([(([[[[[([(((([[(([[[[[[((([[([((([[[[(((((([[[[[[(([(([(([([([[[([([[([[((((((([(([[([[[[([[(((([[[[[[[((([([([(([[([[([[([((([[[([([[([[((([[[([[([[[[(([[([([([[[[[(([([([[[[[([([([((([[[[(((([[([[(([([[[(((([(([[(([([((([[([([(((([(([((([[[([[[(([([(((([[[([(([[[[[([(([[(((([[[([[[(([([[[([([([([([(([[[([[[[[[[[[[(([([([([[([([(([[[(([[((((([([[([[(([([[[[(([(((([([([[[[[([(([([(([[([([[[[([[(([([([[(([(((([[[[[[[((([((([(([([[(([((((((([(((([([[[(((([([([[[([((((((((((([(([[((([((([(((([([[[((((([[[[(([[(((((((((([[([[[([([[[(([((([[[[[[([(([([[[[((([[[([([[[(([[(([[[([[(([[(((((((([(([(([[[(([((((((([[((([([([((((((([[([[([([([(([([(((([[[(((((((([([[[((([([[(([[[(([[([((([[[([[[[[[(([((([[(([((([[([[((((((((([(([(([(((([[([[[(((([[((([[(([[[([[[([[([[[([[[[[([(((([([[[[(((([[[(([[[(([[([[(([[((((([[([[(([(([[(((([[(([[(([[[([(([[[[([[[[[[((([[[[([((([([[[[([[([[[([(((([([([(((([(((((((((([([([((((([([(([[([((((([[(([[([([([[(((([((([([([([([[[[(([[[[([(((([[([[(([[[([([([(((([([[[([[[(([[[[[(([([[[(([([(([(((([(([([([(([[[(([([([[[([[[[[((([[[[[[[(((([[(([([[([(([((([[([[[((([(([[[[(((([((([((([([[[[[[([[[([[([(([[([(([[[[[[([(((([([[([([(([([[[([[(([[[[([[[([((((([[[((((([(((([[([((([[[([([[([[[([((([[[((((((([((((([([[([(([[[(((([[[(([([[(([[([[((([(([[[((([[[((([([[([((((([(((((([[(([([[([[([[[([[[[([[([[(((([[[[([[[[[(([(([[([([[[[[([(((([([(((([[([[[(((((((([([[[(((([[([([[([[[[[[([[(([([([[(([([[[[[[[[(([[[[[(((([[([(([[[([(([((((((([(([(((([([([([([([[[(((((([[[[((((([[([[((([([[([([[[([([(((((([([[[[[[[[[([(([[((([[[((([(((([[(((([([[([(([([((([((([(([(((((([[[[[(([[([([([([([[[([[[([[[[(([[(([([([[[((([([([[(((([[[(([[[[[(((([[(([(([([[[((((([(([(((([[[[((([[([[([((((((([[[[[[(((([[[(([[[[((([([[[[[[([((((([[(([([([([[[([[[[(((([[[([(([[(([(([([[(([[[[[((((([([[([([([(([[[([[([(([((([(((([([[[[([[(((([[[[([([([((([((((((([((((([[[(((([[([[[[[(((([(([[[([((([((([[[[[(([[[[([[[(([[[(([[(([[([([([([[(([(([[[((([((([([[((((((([([[[[[([[([([((([[[(([((([([[[([[(((([[[[(([[([[[(([[[[([[((([([([([([[([(([([[([([(([[[([[[(([((((([[([(([([[[(([[([([(([((((([([(([[[[[[[[[[(([[(([[[[[[([[[([[[[([[[[([([(([[[[(((((((([([[([[(([([([[[[[((([[(((([[(((((((([([[([[(([((((((([([(([((([[[[([([[([(([[[([[(([[([([[([[([[[([(([[[[[[[[((((([[([([([([(((([(([([([[([[([(((((([[[[[([[(([[([[(([([([(([[((((([[[[[([([[([(([[[[([[[(([(([((((([[[[[[[([(([[[(([[[((((([[[[(((([(((([[[[[[[[([(((([(((([[[[([[[(((([([[[(([[([[[[(([([[[((((([[((([[[([(((((([(([[([[((([(([[[([((([((((([[([([[[[[[((([[([(([[([([(([([[[(([(([(((((([[([([[([(([((([[(([[[[[(([(([[[[[(([[[[(([([[(([[([(([[[((([([[[[[([((([[[([(([[[[[[([[(([([[[[((([[([((([([[[((((([[[[(([[[[([[[([(((([((([[[(((([([[([(([[([([[(([([([[[([(([(([[(((([[([([([[[[([((([[((([([[([[[([[([([[[[[([[(([(((([[(([([(([(([([([((((((([[((([([[[[(((([(((([(([[(([[([[[[(([(((([[(([((([([(([([[[[([[([([[([(((([([(([(([[[([[[([[[[((([([([[[(([[(((([[(([(([[[(([([((([(([[([([[[[[(([[([[[[[([[[([[([([([[[[[([([[[[[[[[[(([([([(([[([[[([((([[[([[[([(([[[(([[([([([([(([[([[((([[[(([[((([([([[((([[([[((([([[(([([([[([(([(([([[(([((([((((([[[((([[(((([(([[[[(([[([([[[(([[(((([[(((([[([(((([([(([(([[(([[[([((((([[((([([[[([(([([(([([[([[(([(([(((([[[[(((([(([(((([([[(([([[(([[[([[([[([([[(([([[(([(((([[((([([[([[[[[[([(([[[[[[[([((([[([([[[[[([[[(([([[[((([([([[[(((([[([[([[([([[([([((([[[((((([[([([([((([([([((([([([((([[(([([[[((([(((([[[([([[([(([[[(([([((([[([([[[(([[[((([[([((([([([[([[[((([[(([(([[[((([((((((([(([[((([(([[[[[[[([(((((([((([([[[[[[[[[(([[((([[[[[((((([[([(([[([(((([([([[([([[[([[[([[[((([([([[([([[([([[(((([([[[(([(([(([[((([((([([[([[[([(((([([[([[[([([(([([([([[[[(([[((([(([((([[[[([([((([(((([([([[[[([[(([[[(([([([[[(([([[[[[[([(([[((((([(((((([[(((([[[(((((([[[[[(([((((([(([([[(((((([([((([((([([[[[[[((([(([([([[([[[([[[[[[[(((((((((([([[[([([(([[[(((([([[([(([([[(([(([(((([[(([((([[[[((([((([[([(([(([(([[([[[([[[[[[[[[(((((((([(([(([([[[[((((([[(([((([((([[(((([([(([[[[([[(([[[([[[(((((((((([[([([([[(([((([([[([([([[(([([((([[[(([[[[[[[([([[[([((([(([((([([[(((([[([(([([([[[[([([([(([([[(([[[[[([[[([[[[[[([((([(([([([([([[(((([[((([([[(([((([[[([([[([([[([[[[[((([([[[[([[(([[([(([(((([[[[((([[((((((([(([([([([([([(((([([[((([([(([([[(([([((([[[([([[[[[([([[[((((((([[([([[[([[[[[[[(([[[([[[[[(([(([[([[([(([((([(((([([((([([[(([((([([(([[[[[((((([(([((([[[([(((((([[(((([[(([([[[[[([([[[([((([[((([(([[[[[(([([[[[([[([([([[(([[((([(((((((([((([[([[[[((((([[[[[[[([([([[[([(([(([(([[((([([[((([[[[([([[[((((([[[[([([(([[[[([(([(([[[[[((([([[[(([([[([(([([([([([[([([[[([[(([([[(([[([[[(([[[(((([([[[[([(([[[[[(([[[[((([([[[[[[[((([[[([[([[[[[(([([((([[([[(([[([[((([([([[[([(([[([((((((([((([[[(([[([([(([[((([((([([([(([[[[([([[(((([[[([[[(([([[[[[[([[(([[((((((((([([([[([(([(((([[[[[[([[((((([[([([([([(((((((([([[((([([[([[[[[[(([[[(((([[[([([([(([(([(([[(([([[([((([[((([(([([([[[([([[[(([[[([((([([[[([((([(([([(([([[([([[[[(([[[(([([([((((((((([[[([([[[[[([[[((((([[[[[([(([(([[[[(([((([([(([(([([(((([[(([(([[[([((([[[[[[[[[[(([([[([(((([([[[[([[([[[[[([([[((([[[([[(((([([([([([[([[(([[(([[([((([[((((([([([((([((((([[[((([[[[[[(((([([[([([[[[([([((((([(((([[[[[(((([([([[[([[(([((([[([[([[([[[((([[[[[([((([([([((([((([(([([([[([[((([[[([[[[(([[(([((([(((((((([([((([([[[([(((([((([[[((([((([[(((([[([[(([(([(((([([[[([[(([((((([(([(((([([[([[([[((([[[(([((((([[[[((([[((([[([([([([([([([([(([(([[[([(([((((([([([([([[([[[[([(([([(([[[[(([[(((([([([[[[[([[[(((((((((((((([[((([([([((([[([(([((([([([((((([([[(((([[[[([([[[[([(([[[[[([[[[[(([((([[([[(((([[[[[([(([[(([([([([(([([[[(([[([[([[[(([(([((((([([(([[[[[[((([[(([(([(([(([[[((((([[[[([[([[(([[[[[[[(((((((([[[[([[[([([[[([[[[[([(([((((([(([[[[((([((([(((([((([((([(([[[(([((([([([[[([([[((((([(([[(([(([(([[([((([([[((([[[[[((([[[([([(([(([[(([[([((([[[[[(((([[((([((([[[(([([([([([[(([(([(((((((([[[[(([[([[[[[(([([[(((([([(([(([([([[([[([(([[(([([([([(([([((([([[[((([((([[([([((([[(([([[[[(((((([([((([((([[[[((([(([([((((([[[[([[([[[[([(([[[([[[[[(([[[((([[[[[[(([[[([[(([[([[[([((((([([[([[[[([([[((((([([(((([[[([[[([[[[[((([[(([[[[[[(([([[((([[((([[([(([[[([(([[[[([([[(([([((([[(((([[((((([[([[[[[(((([([((((((((([(([([([([[([((([[([([(([([([[([[[(([(([([(([((([[((((([[[([(([[(([((([[([((([((((([[([[[[[[([([([[[([([((([([[([([([([([([[([([([([[[[([[[([([(([((((((([[([(([(([[[[([(([([([[[([([[[(([[[((((([[[([([([[[(([[([[([[((((((((([([[[(((([(((((([((([[([[[([[[[([((((([([(((([([[(((((((([(([[[(([([([[[[[[(([([(((([[(([[[([[((([[[[([[([([[(([[(([[[[((([[[((([[((([([([[[([[(([(([[(([[[[[([[(([[[([([[(((([(((([[([[[[(([([(([[[[[(((((([[((((([(([[([[(([(([((((([([((([([(([[[([[[[([[([([([[[[[[(((([((([[([[[[([[[[(((((([[([[([([[[[([[((([[([[(([(([([[[[[[([[(([[[[[[(([[([([[([([((([[[(([([[[[[[[(([[[([(((([[[(([[([[([[[[(([[[[[[[([[[(([[([[[([(([((([([[(([[[[((((([([[[([[(((([[[[([(([[((([[[([[[(((((([([[(([[[(([[(((([((([((([((([((([[([[[[[([[[(((([[((([[[([([(([[[((([([[[[((([([(([[([[[(([[[(([[(((([[([[([(([[((([[[(([([[((((([([[(([((((([([([[[[([[((([[((([([([(([[[[[[[[([[[[[[[((([[((([([[[(([[[[((([[[[([(((([[([([[([([(([([[([[((([[([[([(([[([[[(([[([(([[([([[[[[([(((([([(((([([((([(([((([([(([((([([([[[[(([(((([[[([([((((([([[([((([([[([(([[((((([[[[([([[[[[(([[[[([(([([([[[[[[[(([[([(([[(([[([([([[([[[[[[([([[(([[[[[[([(([[([([(([[([([[([([[((((((([[([([(([([([([[([([([[[[[(([[(((([(([[(([(((([[([[([[([([([[([[([([[(([[([([((([(((([((([[[[[([(([[[([[[[[[[[[(([(([([[(([([[([[[(((([[(([(((([([[([(([([[[[[[([(([([([[((((((([[[([[([((((([(((([[([[[[([([[[[([[[[(([[[[(([([([([[[[[(([[([(([[((([[(([[[[[[([[(([(([([[([[[([([[[[(([[[[[[[[(((([[[([[[(([((([[((([(([([([([((([[((([([([([(([([((([[[[(([[([([([([[[[[[(((([([[[(([(((((([[[((([[([((((([(([([([[[[[[[[((([((([(([[[((((((((([[[(([((([[[(((([[[[[[([([([([[(([(((((((([[([(([(((([[[((([(([([[[[[[[(([((([[[[[[(([([[[(((([[(([[(((([(([[((([(([[([([((([(([([[[[([[[([(([[[([(([((([[([([(((([(([((((([(([((([((([[([([([[([([((((([((((([(([[[(([(([(([(([([([[([((([([[([[([[[[[([((([([([([((((([([((([(((([([[[[([[(([(([((([([[[[[[[[[((((((((((([([((([((([[[((([[[[[([([(((((([([[[(((((([(([[([([([[([[((([((([[(([[[[[(([((((((([([[((((((([[[([[([[(((([[[([[[((([[[([((([[(((([((([((([(([([([[[(([[([[[([([[([[[([([(((([[[[([[[([(((([([((([(([([[(([(((((((([[(([([[([[[(([(((([([[(([(([(([[[((([[[(([(([[[((([[([[([[([([([([[(([([(([([[(((([((([[(([([[[(((((((([([[([([[[([[[([[[(((((([((([([[[(((([([([([[[([[[([([[((([[[(([(([[[[[(([(((([[([[[(([[[[[[[((([((((([([[((([[(([[(([([[(([([[[[((([[[[[[(([(([(([([[[([(((((([([(([[(([(([[([[[[(([((([[[(([[(((((((((((([([[([([[[(([[((([[(([([[[(([[([(([[[[[[[((([[(([([([[[[([[[([(([([[[[([[[[([[((([(([[[([([[[[[([(([[[(((((([([([[[(([(([[[[([((([[([((([[((([[([([[[((((([(([((((([(([[([[[(([(([[[[([[(([(([[(([[([(([[(([([((([([([[[[([((((([[([[[([(([(([[[((([[([[[[([(([[(((((([([(([([((([([([[[[[(((([[[[[[[[([[[(((((([(([(((([[([[[([[(((([[(((([[([([([[[[[[[([(((([[(([([([(([[(([[[([((((([(([(((([[[[[[(((((([((((([((((([([((((([[[(((([[[(((((([[[(([((([([[((([[([[([[([[[((([[(([([(([[([([([[[[[[([([[([([[(([([[([([[(([([[[[[([[[([(((([[(([([[[[([[([[[[[(([([[[(((((([((((([[(([[([[[[((([([((([[([[([(([((([[[[([((([(((([[[[((([(([([(([[(([([[[([[[(((((([[[([([((((([(((([([([(((([[[[(([((([[(([[([[([((([(([[[(((([[[(([[([((((([[((([((([(([([[(((((([((([[[((([[[(((((([[([[((((([(((([(([([((([[[[([([([(([[[(([[[[[([[([[(([([((([((([[[[[([[[[((([([(([[[([[(([([([[[[[[[[[[[[[(((((([[(([[(((([[([(([((((((([([[[([([([(([((([[([[((([([[[[[([[([([((([(([[[[([[[([([([([(([[([[[([([[[([([[[[([(([([([([((([([[[[([([[(((([[[[[[[[[(((((((([([(([([(([([((([((([([[[[[[[((([(((([[([[[[[[((([[([[((((([((((([([[(([[[[((([[([(([(([[[[[((((((((([([([([([[([[([([[([((((([[[([[[([[((((([(([(((([[(((([([(((((((([([[((([[[[([(([([[[((([([[[((([[[(([(([[((([[([[[[[(([([[([([([([[(([[[[[[([((((([[([([[[[([[(([[((([([((((([(((([([((((([(([(([[([[[([[(([[[([[[[[[([[[[[(((([[([(([([[([((((([[([([[[[(([[[[[((([(([([(([[[((([([([((([[[[(([((([(((([([([[([([([[[((([((([[[[[[([[(((([[(([[((([[((([((([[[[[([((([([[[(([[([(([((((([([((([(([(((((([((([[([[((((([[[[((([[((([((([([[((([[(([([[[(([([([(([[[([((([((((([[(([(((([[((([([(([([[[(([[[[[[([[[(([[([([(([([([([[(([[(([[[[[[[[[[[((([[((([([([[[([((([((([([([[[([[([([[[(([(([[[([([[[([[((([[((((([([([((([[[([[((([([[([(((([[[[(((([[((([([(((([([[[([[([[[([([([(([[[[[[(([([([([[[([[((([([[([[[[[[[[[[[([[[([[[[[[((((([((([[[(([[([([[(([([([[((([[([[[((([[[[([(([(([[[(([((([[(((([[[[([[(((([(([[([([([([((([([[[[([[[[(([((([[[([[[((((((([(((([([[[([(([[([((([[[(([[((([((([[((([[([([[[([([[(((([[((([((((([((([[[([([((([([[[(([[[[[([((((([[([[(([[(((((([(([((((((([(([[[[[([[(([([(([[[[[([[[[[[((([(((([[(([(((([(([([((([[((([[[([((([[[[(([[[([[(([([(([(((((((([(([((([(([([(([[[[[[(([([[(([[[[[[[(((([([[((((([[([(([[[[[[[((((([(([([((([(([(([[[((([(([((([[[[([((([[([([([([[(([(([(([[[[[(([([((([([[[[[(((([[((((([[([[[((((([[([([((([((([[([[[[[([([[[[(((([[[(([([[([(((([[[([[([([[([((([([(((([[([[[((([[[([[[([[[([[((((((((([(((([[([(([(([([(([[([[(([([[(([[([([[[[[([(([([([[[[[((((([[([((([((([[[([([[([[(([(([([[(([[[[([(((([((((([[(([([[[[(([([[[[([(([[((([[([((([([([(([([[([[([[([[[[(([([((([([[([([(([[([[(([([[[([[[((([[[[[[[[[[[[(([[[[([([[[((([([[[([([[(([([([((((([[[[[((([((([([([([[[((((([([([(((([([[([[[([[([([(([[[([([(([[(([((((((([([([(([[[[[([([([[([(([[[([(([((([[[([[([([(([(((([([((([[[((((([[(((([(([[[((([([[((((([[[([(([([[([([(((((([((((([[([[[(([(([[[(([([((([((([[[([[[[[(([([([[([[[((([[((([[[[([(((([(([(((([[(((([([[[(((((([(([[(((([([([([(([((([([([[([[[[[([[(((((([(([[[[(([([([[[[[([(([([[[(([[((([[[(([(([[((([([[(([([([([[[(((([(([([[[[(([[([(([([[(([[[(((([[[[[[([[(([[[((([([[(([([[(([((([[[[(([[[(([([(((((((((([[([[((([[(([[[((([[([[[(((([[[[((((([([([([[([[[[(([[[[([([((((((((([[[[(([[[[[[((([[[[[[([([([([(((([([([[([[(([((([[[((((([(([[(((((((([[[[([[[([((([[[[[([[[([[(([((([([[(([[[([[[[[[[([[([([(([[[([([((((([[[[(([[([((([([[(([([([([[([[[[[[([[([[[[[[(([(((([(((([((((([[([[[[([([[[(([(([(((((([[(((((((([(((([[[[[[(([([[[[[(((((([[[([[[([([[([(([([[((([([[((((((([((([[(([([(([([([([((([(([([[[([([[[(([[[([[[((([[([([([([[[(((([[[(([(([([[([[([(([[([[[[[[([(((((([([([[((((([[[([(([((([([[[[([(((([[[(((([((([[[[[[[[(([[[(([[((((([[([[[[([[([([[[[[[(([[[[[[[[[[([[((((((([[(([(([([[[([((([([[[((([[[[(((([[[((([([[([[[[[[[[[([(([[[([([[[[[([[[[[[(([((((([([[[(([([[([(([[[([[[((([(([([[([(([[((([[((([[[([[(([[[([[[[[([([[[[[[(([[[[(([([[([[[[[((([([(((([[[([[([[([[[([[[[(([([(([([([((([((((((([(([(([(([[[(([([([([[(([(([[([((([([[([[((((([([((([(([([((((([[[[[[[[[([[([(([[[([[(([((([([[((((((([([[(((((([((((([([([([[[([[[[[[([([([[[([([[[((([[(([[[(((([((([[(((([[[[((([[[[[[(([[([[([[([(([[(((([[[((([[(([[((([([[(((([([[[[[([[([((([[[([[((((([[[([[[[([[[(((([[(((([[[[[([(([(([([[[([([[(([[[(([([[([((((((([([([[(([([[((([[[[([(([(([((([[[[[(([((([[([([[[(((([([((([[(([[[[([[(([[(((([[[([[[([[[([([([[[[[[((([((([((([(([[[[[[(((((([[[[[[((([[([[([[[(((([([(((([[[[[[[([[([[((([([[([[[[([([(([[((((([[[[([(([((([([(((([(((([([([([[([(((([[(([[[[[[([[[[([[[([[[([[([[(([(([((([[(([([([[[[[[([[[[([[[[[[([(([([([([([[(([[(([([[[[[[(((([([[(([([[(([[(([(([(((([(([[[((([(([([[[[[[([(([[[(([([[[[[([([(((([[([[[(((([[([(((([([[((([[(((([(((([[([[[[[([(([(([[(([([[[[(([[[[([([[[(([[(((([[([[([([[([[[([((([[[([[[[([[((((([[([(([[[((([([(([[([[[((((([([([([[[[(([[((((([[[[([[([([[([([([[[[([([[([([[[([([([[([(([(((((([[(([[((((([[(([[[([(([([[[[[(([[(([[((([[[((([[([[(([[([[(([((([[([[[[[[(((([((([[([([[[[((([[[[([([[([(([([([(((([([[([(([(([((((([(([(([[(([[[[[(([[[[[(([[(([[[((([[[[[([[([[(([[((([(([[(((((((([[[([([[[([[[((([[([([[[[[(([[([(([[[[((([([[((((([[[[[[((([((([[(([[[[([[([([[([([[((([([[(([[[[[[([(([[([[[((([(([(([((((([(([([([[[[[([([([[[[(((([([[((([([[[[(([[[[[[([[[([([[([([[(((((([(([([[[([[[[[[[[(([([((((([(([[[[([([((([[(([[[[(([([[([([[[((((([([([[(([([(((([[([[([([([[[(((((([[(((([([[((([[[[(([((([[[([(([([((([[[([[[((([(([(([([(([[(([(((([((([[(([([[([[([[(([((([(([((([[(([[[[([([([[((([[([(((([(([[[[[[([[[[[(([[[[[((([[[[[([[[[(([[((([([[([[([([((((((((([[[([[([(([(([[[([([[[[((([[[(([([[([[((([([[[([[[(([([([[([([([([[(([[[[([((((([[[([(((((([[[((([([[[[[([(([([(([((([([[((([(((([([([([((([(([[[[[[([[[[(([([([(([[[[[([[(([[(([([[[(((([([[[[([[([((((([(([[(((([((([(([((([[[[[[[[[[([[([[([[[[((((([[(([[[[(([[(([[(([(((([([[([(([[[(([[([[([([([([[(([([[((([[(((([(([([[([[([([((((([[[[[([[(([[([[(([([([[[((([[[[([(([[[(((([[[[[[[[([[[(([[([[[[[[[[[(([(((([((([(([([[[[([([((([([([[([([(((([(([[[[[[([[[([(([(([([(([[([([[[[[((([[([[[[([[[[[[([[((((([[[[([[([[[(([[(((([[[[[([[[(((([(([(([[[[(([[([[((((([[([[[[[[[[(([[([[[([((((([([[[[(([[[(([(([(([[([([(([[(([[([[[[[(((([((([(([([([(((((([[(([[([([[[[[[(((([([([((([[([[(([[[[((([([((([[[[[[[[((([(([[(([[[(([(([((([[[([[[[([(([(([([([[[((((([[([([([[([([([([([[([(([[[[([([([[(((([[[[([[((([([[[(((([(([[[([[[([((((([[[[([([([[([(([[(([([([([((([[[([[([[((([(([[([(([[[[[[[([([([(([[(((([(((([[([([([[([[((([([[(([([((([((([[[[[[([[[[([([[([[([(([([([[([[[((([[[(((([(([[([[(([([([(([([((([([[[((([((([([([((([[(([[[[(((((([[(((([(([[[[([((((((([((([[([([([([([[([(([([[(([((([([[([(([(([([(((([[[([((([([[([[[[((((([[([[([([([[[([([([[[[[([[([[[[([[((([([[[(([([[(([((((([[[(([[((([(((([[[[(([[([([[[(([([[([[([[[([(([(([[[[([[[(([[[[((([[((([[([[[([((((([[[([([[((([(((((((([[([[([([(([((([(([([([([[([[([(((([[[[(([[[[[([[(([(([[(((((([[[[([(((([(([([(([([([[(([[[(([(([(((((((((([[[[([(([(([[([(([[(([[(([([(([((([((([[[[[(([[([([[([([(([[(([(((([([[[((([[[[((((((([[[[(((([[[([([[([([([(([([([([([([((([[[[(([((([([(([([(([(((([[(([([(((([[[[[(((([[(((([([(([[[[[[[[([([([(([[[[(([[[[[((([([[[[([((([[[([(([[[[[(([((([[[[(((((([[([(([((([([([[[([[[[[[(([[([[[[([[[([[[[[[[(((([(([(((([(([[(([(([([([[[[((([([([[[[[(([[[([[[[(((((([((([(([(([([((((([[(([[([((([[(([[[([([[(([((((((([[([[(([([([[[[(([(([[[([((([([[[[[([(([(([((([((([[([[[([([([([([[(([((([[[[(([[((([[[[[(([[[[[((((([([[([[([[([([(([(([[(([[([([[[[[([[[(([([[(([((((([((([(((((([[[(([[([[((([([((((([[((([[(([[([(([(((([([([[[[[((((([([[[[[[(((([[(((([([(([[(([(([(([((([[[(([[((([[((((((([((((([[([(([[[[([([[(([(([([([[((([[[[([(([([[(([((([[[([[[[[[[(((([((([[[([(([[(([[([(([([[[[[[((([[([((([(((([([(([([[([((((([([(([[[(([((((([[((([[([[([((([[([[[([([[[(((([[[((([[(([[([[([[[([[[([[((([([[[[([((((([((([([(((([((([(((((([[([([[([[([([(([[[[[(((([(((([(([([(([([[[[[[((((([([(([[([((([[(((([[([[(([[(((((([(([[([(([([[(((([([[([[(([([([(([((([([[[(([[([(([(([([[((([[[([([([[(((((([[[(([(([((([[[((((([((([[[(([[[([[[((([(([((([((([[[[([[(((([((([([([(((([([(([((((([[[([[[[[(([([[([[[([[([([([[[[((((([[([[[(([([[(([[([([(([[([([[[([(((((([([([[[[[([[(([[([(((([(((([[(([(([(([[[[([([([((([([(([[(((((((([[[[[([((((((([(((([[[[[([[((([([(([[(([[([[[[[((([[([[[(([(([([([([[([[[([[[([[[([(([(([[((([([[(([(([([([[(([([[([[([((([[[([([[[[[([[[(((([(([[[([[[([([([(((([(((([[([([([[[[[[([([([([((([(((([[[[[[[([[[[([[[[([([(([((([[[[([[[[([[[(([((([[(([(([(([[((([[(([[((([([([([[([([(([(((([((([[[[[[([([([(([[[[[[(([([([[((([([(([((([([[([[[[[([([[[[[[(([[((((((((((([[((([(([[[[(([[((([([[([([[[([[[[[[((((([[[(([[([[([([([(([[([[([((([[((([[[(([[(([[[[(((((([[(([[[((([[(([[[[([([((((([([[[[[[([[((((((([([(([[[([[[([[[((([[(((((((([(([([[((((([[[(((([([[(((([((([[([[[[([(((((([([[(([[[([[[[([([((([[([[([([([[(((([([[((((([[(((([((((([[[([[([([[((([[([[(([[[[([[[([([((([[[[([(((([[[[((([([(([([[[(((((([(([(([((([[[(([(([(([[[[(([[[(([((([[([([([([[[(([([([[[[[([[(([[([([([([[[[(((([((([([([([([(([[((([([[(([[([(([[((([[[[[((([([(([([((([[[(((([[[(([([[[([[[[[[[[(((([[[[([[[(((([(((([(([([[[[((([(([((([[[[((([((([[([[(([(([(((([([[(([[[((([([[([[[([([([[[(((([[[[(((([([(((([([([(([((([([([(([[([[[[((([[[([([[(([(((([([((([[((((([[([[([([[(([[[([((([[(([(([((([[([([[[(([[(([[([((([(([[((([[[(([[([[(([[[((((([([([[[[[((([(([[[(([([([[((([(((([(([[[[[(([([([(([[((([(([([((([[[(([(([[[[[(([(([[[[([[([[([[([[([([[[[([(([[[(([(([[[[((([[[[[((([[[([[(([((([([[([[(([[[[((([(((([(([(([[((([[[([([[[([((((([[(([((([([[[((([[[[[([[([(([[[[([[[([([[([[(((([(((([((([[([[([[[([[(([([[[((((((((((([([(([(([[((([((([[([([(([(((([[[[[[[(([(([[((([[[([[([([[[([([((([[(([[((([([(([[[[[(([[([([[[[([[[(([([[[([(([[[([[[[[([(([(([([(([([(([([(([((((([((((([(([[[[[([((([([([[[([[([[[[[([[[[[([([[([[([[[([[(((([([[((([[[([[[[[([([((([([[([(([[[(([[[[((([[[[([[[(([[[[[[(([((((((((((([(((([([[((([((([[[[[(([[([([[((((([[[[[[[((([[[[[(([(([(([[[(([(([(([([([((([[[[([[[([[([(([(((([((((([([(([([[(([([(([([[[[[[(([[[([(([(([[([([[((([([[[[([(([[[([([([([((((((((((([([(([[[(([[([((([((([[([([([([[[[(([([(([([((([([([[[([[[((([[[((([([([(((([([[([((([([[[[[(([[[[([[([[[[((([[[[([([[[[[[[([[([[[([((([[[([([((([[[([([[([[[[[[[(([[(([((((([[[[[((([([([[[[(((([[(([[[([[([[[[([(([((([[(([[(([((([(((([[([([(([[(([[(([([[[(([([([[[[[[([((([[(([(([[((([[(((([([[[([([[(([([[([[(([([[[[[[[[[[([(((([[([([[(([([((([[[[([[[[(((((([[[[[((((([[[[[((([([([[([(([([[[[[([[[[[([[[[([([([(([(((([[[([[[[([(([([((((((([([[[([[[((((((([[([([((([[[([([[([[[[[[[[([([([[(([[[[(([[(((((([[[([([[([[(([(([((((([(([[[[[([[([[[((([[(([[([[[((([([[([(((([([([([([[[[[[[[([((([[((([[(((([[[([[(([(([([([(((([([[[([([[[([[([[([((([([[[[[[([[([[(([[([([[([([[(([([[(([(([([[((([(([[(([[[[[([((([[(([[[[(([[[([[([(([([[[((([[(([[(([[[([(([([[(([([([((([[[([[[[(((((([[[([([[((([[[[[(([[[((((([([(([(([[([((([[[([[(([[[[([([([[[[[[([[[([(([[([([[[(([[([[[[([[([([[[[([[(([([[(((((([([[[[[[[[([[([[((([([[[((([(((([([([[[[([[[[((([([[[[[([([([(([(([((((([(([(([([[([((([[([([(([((([([(((([[[(((([(((([((([[[[(([[[[[[[(([([[([([[(([[(([(([[[[(((([[[[(([((((([((([[[(((([[[([(([([([(([[[([[[[[[(([([([(([[[[([(([[((((([(([[[[([[([[([[((([(([[([[([([[([((((((([(([((((((([([((((((([[[(([[[([(([[((([((([[[([(([[(([((([([(([((([[[[(([([(([(([[(([[([[[([[[[(([(((([((([[[(([[([[[([(([(((([([[[[[([[([([[[([[[(([[([([[([([[(((([([([[(([((([[[([(([([([(([([(((([[[([([((([([[[([[[[[(((((([[([[[[(([((((((([([([[[((([[([[[((([(([([[[(([(((([([[([[[[[[([[[((([([([[([[([(([[(([[[([[[[[[(([([[[[(([(([[[[[([[((([[[(((([([[(([[[(([[[(((([[([[[[([([[([(([([(((([([(([[[[[(([[((((([([([(([[(((([([[([[[[([([[([([[((([[([([[(([[(((((((([[([([[([[[([[[(((((([[[[([([[(((([(([(([[[(([[(([([(([([((([([(((([([([[[[([[([([(((([(((([[(([[(([([([(([((((((((([[[([[([([[(((([[[([[(((([[[([([(((([[[[[[[((([[((((([[([[[([(((([((((((([(([[([([[(([[[([([[([([[([([[(([[([[(((([([[((((([((([([[((([(([([[(([[([[(([([((([[[([[([[[[[([([([([[[[(([((([([[[[[([(([[([(([([[[(((([([[(((([(((([[([(([([(([([[[(([[([(([[[[[([[([(((([([([[(([[((((([[([([([[[[(([[([[[([[(([[[([[[[(([([[[([[[[[[[[([[[[(((([(([([([[[[[[(([[((([[([([[[[[[[([((((([([[(([[([(((([([[[([([([[([[[[[[[((((([[(([[[([(((((((([[(((([([[(([[[([([([([((([(([[([[(((([(([[[[[[(([[[[[([((((([((((([[[[([([([([([[[[([[[([[[[[[(([([((([[((([([(([((([[[[[[[((([[[[([([[[((([([[[[[[([([[([[((([[(([((([[[[([[(([(([(((([(([(([((([[[[[[([((((([([(([(([[([([[[((((([(([[([[[(([[[[([((((([[((([[[([[(((([[[[[(([[([([[[((([[(((([[[([([((([(([([[(([[[((([((([[([[[[[[[[[[([([((((((([(([([(((([(([([((([[((([((([((([[([(([[(([(((((([[([[[([([[[[[([[[(([[([(([[[([([[([(([[((([([(([[[((([([([[[(([[[((([(([[(([((([[[[([([[((((([([([[(((([[[[([[[([(((([[[[[([[[[([[(([[(([((([(([[([[([[(([[[(([(([([[((([(([[([[[(([[[[(((((([[([[[[[[((([([[((([((([(([[([[[[[[[(([(([(([([(([[((((([([[(([[[[((([[([(([(([[([[[[((([((((([(([[([(([[[([[(([(([[(((((([([((([([[([[([[[([[[[([([[[[[[(([[[[(([[[(([[((((((([((((([(([(([(((([([([[[[[[(((([([[[[[[[(([([(((([([[([[[([((([(([([[[((([[[[(([(([([[([(([[(([([([([(([([((([[(([[([((([(([[[(([[([[[[(([[[(([[[([([[[(([[([[(([[([[[([[(([([[([(([(([[[[[[(([([[[(([([([([([(([([([[(((([[[((([[[[(((([[(([(([([[[([[([[((([([[((([[[([([((([([([[[([[([[([[[[[[[([[([(((([([([[([[[(([[([([([[(([([[[([[[[([((([[([(([[([([(([[(([([[(((([[((([[[[(([[(((([[([((((([[[[((([[[([(((([[(([([[[[((([[[[[[[([[((((([[((([[[[([([(((([[[[[([([[[[(([[[(([[[[(([[[(([[([[[[(([((([[([[[[[([([((([[((([[([[[([([([([[([([(((([((([[([[((((([[((([[([([[[(([((([([((([[([([(((([[[[[[([[[([[(([[([(([[[[[[([(([[[((((([(((([[[[([([[(([[[([((((([[[[[[(([[((([([[[[[[[((([([[[[(([(([((([[[(((((([(((((([[((([([[(((([[[((([[([[(([[[[[[[((([([([(((([[(((([(([([[(([(([[[([[((([(((([[[([[((((([([((([(([[([(([((([[([[[((([([(([([([([((([([[(([[[(([[[[[[[([[(((([[([[[[[(([[(([(((((([[([[[(([[[((([((([([([[([[[(([[([[(([([(([([([[([[(([([([(((([[[[([([[[[[(([[(([(([((([[[((((([(([[[[(([[(([[(((([([(((([[[(([[(([[([((([[[(([(((([((((([((([[([(([(([([[[[[(([[[(((([[[(((([([[[[[[((([[(([([[((([[[([([[[[(([(([[(([(([[[(([[(((([(([([[((((([((([((((([((([[([([[(([(([[[(((([[[[[[[((((((([[([[([[[[((([([((((([(([(([([(((((([([[([[[[(([[[[(([[[([[[([[[(([[(((([(((([(([([[(([(([(([[[[[[((((([[([[[[(([([[(([((([[[(((([[([[([[([(((([[[[(((([[[[[[([[[[(([(((((([([[[(([(([[([[[([[(([[[(([([(((([(((([(([([[[[[([[((([[[([[(((([(((([[(([((([[[[(([[([[((([[[[[([[[((([(((([[[[[[[(([[[[([(([([(([([[([[[(([[(([[([[([[([[[([[[((([[(([[[(((([([[[([[([(((([[(([((([(([([[[[((([[[([[[((((([([(([([[[([[([([[[[([((([[[(([(([[([((([[[[([[([((([[[[[[[[[[([([([([(((([[[((([[[[([((((([[[(((([[[(([([((([[[([[((([([([[(([(([[[[(((([[[(([[[[[[(([[[((([[([[(([([([([(((([[[([([([[(([([[([([[[[[([[[(((([[[[[(([([([([([([(([[([[(([((([[[[([[[([[((([[(((([([((((([[([[([[[[[((([((([([[([((([[((([([((((((([[((((((([(((([(([([[([[((([[[[((([[[([[[(((([[(((((([(([((([((([([[((([[([([[(([[((([[[(([[[([[[((((([([([[(([[([[(([((([[[[[([([[[([[([[(((([[[(([(((([[(([([[([([([[[[[[([([([(([(((((([([([[[[[([[[[[(([([[[[[([([[[([[((([([([[([([([[([(([[[[([[[([(([[[[(([([[[[[([([(([[[[([(([(([([([[(([[([(([([(((((([([[[((([[[(([([[[((((([(((([((([([[(((([[[(([[([[(([[([[([[[[[[([(([[([[[(([((([[(([[[[((([(([[(((((([([[((((([([[[((([(([[([([(((([(([([((((((([[[[(([([([[(([[([(([[[[(([[(((([([[([[((([([([([(([[[[[[([((([([[[(([((([(((([([([((([[[[[((((([(([[([[[[([(([[[[[([(([[[((((([[[([(([[[[[([[(((((([[(([([[[(((([(([(([(([[[[([(([[[[[[([[(([[([[([([([[((([([[(((([[[[[([(([[[([[((((([[[([([[[[([(((((([((((([([[[[[(((([((([([(([(((([((([[[(([[((((([[([([[(([[[[[[((([[(([[(([[([(([[[([[([([(([[([[([(([[((([[([([[[([((([[[([([[[(([(([[[[[([([[([(([[[([[[[(([([(([[[((((((([[[([(([[([[(([[[[([[[[([[([((([[([[([((((([[((([[[(([((([(((([[[[([[(([([([((([[([(([[[([[[((([(([([[[[[((((([[([[[([[(([[([([[[[[[([([[[[[[(([(((((((((([([[[((((([((([[(((([[(((([([[[[(((([((([[[([[(([[([([[([([([[(((([((([(([([[[[[([(([([(((([[((((([[([([[[([[[([(([[[([([[([((([([([[(((([([([[([([[[([((((([((([([[[[[[[[[[(([[[[[([[[[[([[([((([[([[[[[[([([[[([([([((((([[((([([([([[[[(([(([([(([[[[[([([[([[[[[([([[[(([[[([([[([(([[[([[(([[[(([[[[([(([([[[([([[[[([((([([(([[[((([(([[[(([[[[(((([([[(([([[[((((([[[((((((([((([[[(([[[((([[[[[[[[[[([[([([[[[[(((([(([[([([(([([[([[([([([([([[[[[[([[([([([(([[([[([([(((([[[(([([([[[((((([[([[[([([[([[[([[[(([((([[((([[(([(([[([([(([(([([([[[[([[[([(([[(([(([((([((((((([(([[([[(([[([[[(([[[[[[[([((([[[[([[([[[[(((((([[(([[[((([[([([([[([([[((((((([(([([[[[[[((([(([([((([([[((([[[[[(((([((((((((((([(([([[[[[([([[(([(((([[(([[[[[([([[([[(([((([(([[(([[[[((([([((([(([[([(([([(([[[[[[(([(((((([(((([[[[([[[[([([[[[(([[[([(((([[([(((([((([(([[([([[[[(((([([[([((([[(((([[((([[([[[[[[[[[(((([[([[((((([[(([[[([[((([[(([[[((([[((([[([[[[[(([((((([[[((([(([([([[([(([((([(([((((([(((((([[[([[[[([[([([[[[[[[[([([(((((([[[[((([[((([[(([[[[([(([((([(([([[[((([(([([(([[((((([(([[[[[([([[([[[(([[[[([(([[[(([[(([[(([([[[([[(([[(((([[([[[([((([[((((((([[[([[(([(((((([[[[([[((((([([[([(([([([[[[([[[([((([[([[([[[(([([[[[([[(([([[(([[[(((([[[[[(([[[[([(((([[[[[[[([([[((((((([[[[[(([([[[([([([(((([([(([[([([[([[[([([(([[[((([[[[[([[[((([[([[([((((([([[[[([[[[[[([[(([([(([((([[([(([([([([((((([[([([(((([([([[((([((([([[[[[([(((([[([([([[[([((((([([(((([[[[[((((([[([([[[((([((([[([[[((((((([[[[[[[[[([([([[[[([[[([((([(([(([((([[[[([([(([((((([([[((([([([((([[([([([[(([[(([(([[[([(([([(([[[[[([[([([([((((((([((([([([([([((([([[([[([([[(((([([(((([[([(([[(([(([([[[[[([[[([(((([[([[[[([([([(([((([[((([[[(([[[(([[(([(([([([[(((((([([([[[([(([[[[[([[(([[(([((([([[[[[([(((([([[[((([[([[[[[[[([[(([([([[[[((([[(([[[[[([(([(([(([[((([[(([[[((([[[[([[(([[[(([[[([[([([[[[([[[[[[[[([([([([([((([([((((([(([((((([[([((([[((([([(([[([[(((((([(([[[([[[[(([([[([[[[([[(((((((((([[([([[((([([(([[(((([[([((([([([[([[([[[[[(((([[[(((([[[[([(([[[[[([(([[((((([([[((((((((([(([[[[(([[(([[(((([([([[(([((([[(([([([[[(([(((((([([((([([([((([[((([[[[[(([[([[[(([[([(([([[[(([([[[([[[[[[[((([[[[([[[[[([[([(([(([[[(([[((((([[([[[(([[[[(([[(([(([[[([[[(([(([[[(([[([((([(([[[([[[([(([[(([([[[([(([([(([(([[(([(([([((([[[[[[[([[[[(([((([(([[[([([([[(([([([(([[[(([[[(((([(([[[[[([[(([((([[(([([((([[((([[[((((([[([[[([((([[([([((([[[[[([([(([([(([[[(([(([([[[([[(([[[((([[[((([([[(([[[([([(([[[[[[([([([([([(([[[(([([[([[[[[((([[((((([([[([([[[[[([([[(((([(([([([[[([([(([(([([(((([[[[[[(([[(([[[([(([[([(([[[([([[[[(([([([((([[[([[[[((([([[((([[[((((([([(([[[([[[[([([[([([[[([[[((((((([(([[([[[[([[((([(([[[(([([(((([([[[[[[[[[([[(((([[(((([((([[(((([(([[([(([[([((([((((([([[(([([([([[((((((([[(([[[[(((([[([([[[([((([([[[[([[(([[[(([[[([[(([[(([((([[[[[([([((([(([[[[[(([[([[[([[([[([[([([([[[[[[([[([[[[(((([([([([[[([([[[[([[[[((([((([((([(((([(((([(((([([([(((([[[((([(([([[([([[[[[[[([(((([([[(([(([((([([[[[([((([((([[([(([[[[([([([[[[(([[([[([((((([((([[([[([[[[[([([[([(((([[((([([([((([([[([[(([[[[((([([[[((([(([[[([[[[[((((((([[[([(([[([((([[([([[[([[[([[[[[[([[[(([[(((([[[(([[((([[((([[[[[((([[[([([[([([([(([[([[[([([[([([(([[[[([([((([[[(((((((((([[[([[(([[[[[[[(([[[([(([(([[((([[[[([[([(([[(([([(((([(([(([([([[(((((([((((((([[[[([[([(([([[([[([((([[[[([(((([[((([[([([([[[[[((([[([((([[([([[[[[[[[[(([([((([(([[((([([([[[([(([((([[[(([[[[((([((([[[[[([(([([[[[[[(((([((([([[[[[([[([([[(([(([((([[([[[[(([([[[[([(([[([[(([((([[([[[((([[[[((([[[((([[([[[[([((([((([(((([[((((((((([[([([[(([([(((([[[(((([[[[[([[[[(([(([([(([[[[((([([[[[[[[([[([[([(([((([([[((((([(((([(((([[([[([[(([(([(([[[(((([([((([([[[[(((([([([[([(([((((([(([[([(([([(([([([([([[((((([[(([([([[((([([[(([((([((((((([[[((((([[[([[[([[(((([([[((([[[[([[[((([([[([[([([[(([([(([([([[(([([[[[((((([[[[([[[([[(([([([([[([[[(([[[([([([((((([[(([(([[([[[([(((([(([(([((((((([[[(([([[[((((([[([[(((([(([([[[(([[[[([((([(([([((([[([[([([[([([(((([[[([((([([[[[[(((((([(([[([[[[([[[([[[((((([[[[[[((([([[[(((([([([(([(([([([((((([(([[([[[[([[(([[([[(((([(([(([[[(((([[[(([(([[[(([[([[(([([([[[[((([([[[[[[[[[[([[[[[[[([[[[[[[[[(((([[[([[[[((([[[[(((((([[[[(([[[[([(([(([[(([[[[[(([(([([[([[[([[(([[(((([(([([[([([[([(((([([[(([([[((([([[[(([[[[[[[([[[[([[([[[((([([[(((([([([([(([[[[[[(([(([([((((((([[(([((([([([(((([([[[([[[[([[[[(([([[(((([([([(([([[([((((([([([(((([[[([[[[(((((([([(([[[((([([[(([[[(([([[[[(([[[(([(([((([[([[((([([[[([([[((((((([[(([([([([(((([[[[[[[[((([[(([[[([(((((([[[([([([([[[[[([[([[([([[([((([([[(([((([[((([[[[([[[(((([[[[([[[[(((([([[[[[((([(([[([([[[[[[[[[([[([((((((([[(([([([([([[(([[[(([((([[[(([[[[[[([[[[[[[[[((([([[[((([([([[[[[(([((((([([((([[[[((([[[[[(([[(([([[(((([((([(([[((([(((([[[[[([[[[([[[[(([[[(((((([[([[((((([[[[(((([(([([[[(([[([([[([([([(([[(((([[[[([[([[[[[(([(((((([([[(([[(([[[([[([[[[((([([[((((((([([([[(([(([[((([([([[(((((([[(([([([[(([(([[[(([(([([(([[((([([[[(((([[(([(([((([[([[[((((([[[[[[([[[[([[([[[([[(([([[[(([[[[[[([(([([[[(([([[(((([([([(([[[([(([[[[((([[[([[(([(([(([(((((([[[[([[((([[(([[([[(((((((([([[[(((([(([[[([[([[((([(([[[([(([[[[((([[([([([((((((((([((([(([[([[[[[[[([([[(([(([[[([([((([[(((([[[[(([([([[((([[[[[([[[[[[(([([[[[[[[([([[([[((([(([(((([([[((((([[(([[[([([[[([([[[([[(([[[([[([(([((((([((((((((((([[([(((([[[(([([([(([[(([(([([[(([[[[(([((((((([[[(([([[[[(([((((([[[[([[[[[(((([[([((([([[[[[([([[([[(((([[([[[(([([([((([([[([(([([[[((((([(((([[[([([((((([(((([[[(([(([([([([([[[(([[[(([((([[[[([([[[([(((((((([(([([[[[[([([[[[[(([(([([([[[(([[[(([(([[[[[([(([([[(((([([([(([[([[[[([(([[([[([([[[[[([[[(([[[(([(((((([[[[([[[([[[((([[([[[[(([[((((([[([[((((([[[[((([[[[[[[((((((([([[[[[((([([([(([[((([[[([[[[[[[[[((([([[(([([([[[[(([[[([[[([([([(([[[[[[(([([(([([(((([(([([((([[(((([[([[((([[([(([(([[([([[((([([[(([(((((([[[[(((([(((([[((([[([[([[[([([(([([[([[[[[[[[(([[[(([([([((([((([(([[(([[([[[[[[(((((([(([[(((([([(([([[[[[([(([[([[[([(([[([((((((([(([[[[[((((([([[[(((((([([([[((([(([(([[[[[[[(((([[([([([[([([[[[(([[[(((([((([[([(([[(([([(([[(([([([[[[[[(((([[[(([[(((([(([[[((([[(((((((([([[(([(([([[[[[[(((([[[((([[([(([((([[[((([([(([((([[[([[([([(([[[(((([[([[(([[[[[(([[([(([((([[([((([[([([[[[([([((((([[([([([[([[[(([(([[[([[((([(([(([[(([[([(([([(([([[[[[(([[[(([[[[[(([(((([[[(([([[[[((((([[[([[[[((([[([([[[[([((((((((([[([[([[[[[[([([[(([[[(([([[[([((([([((((((([[([[([[([[[[[((([[[((([[(((([([([([([[((((([((([[[([((([[([(([[[[([[(([([([[(([[[((([([[([[([[[[(([[[[[([[[((([[((([[((([(([[[([[[[[[[(([[((([[[(([[[[([[((([(([([([[([[[([(((([(((([(([[[[(([([[(([([[[[(([[((([(([[[([[[([[[(((([[([([(([[[((((((([(([([[(([(([(([[[[([[(([[([([([[[([[(([(((([(([[(([([[[([[[[[([([(([[((([((([[[((([([[[[(((((([[[((([[[([[[[[[[(([(((([([((([((([(([[(([[[(([[([[((([([[([(([[[([[[((([([([[[([([([((((([[[[(((([[[[[(((([[[([[(([[(([(((((([([[[[([([[((((((([[(((([([([[[[([(([[[[(([(([[[[([([([[([[(([[[[[([((([[[(([[[[([((([[[[([[(([([[(([[(([[([[[[[[([[([([[[(((((([[[[((((([[[([[[(([([[([[[((([([((([[[((([[[[(([([[([[[[[[(((([[[[[([(([[[([([(([([[[[([[((((([(([(([([(([([([(([[[[[(([(([([[((([[[[([(([[((([[([(([[[([([((([(([([((([(((([(((([[([[((([[([(([([(([((([[(((([[(([(([([((([[((((([(((([([[[[([((([((([[([(([([[([[([[(([[(([((([[[(([([(([([[([((([[([[(((([[(((([[([[([([[([([[[(((([[(([([((([(([(([([[[[((((([([([([[([(([((([[([([[[[(([[([(([([[[([((([[([[([[(((([(([([[([[[[([[((([([[[[([(([[([[[([[((([([(([([((([[([([([[[[[[[((((((([[((([[((([(([([([([[[[[([[[[[(([[([[([(((([(((([((([(([[(([((([[([[(((([([([([[[[([((([(([[((([[((((([[([((([(([((([[[[[[([([(([([(([[[([[[(((([([([([([(((([[[[[(([([(([([[((([[([((((([(([[([((([[[[([[(((((((([[([[((([([[[[(((([(((([((([((([[[((([[([[[[[[[[[[(([[[(([([((((([([(([[(([((((([([[([((([[([[(((([([([[([[([((([[([[((([(([[((([(((([[[((((([[([([(((([[[[([[([(([([[[[(((([([[([([([[((([[(((([((([(([[(([(([[[[[((([[[([((([([[[(((((([[[((([(([([[[([[(([((([[(((([[[((([(((([(((([((([[(([[([((([[(([[((([([[((((([[[[([[([(([[[(([(([([([[[[[([(([[[[([[[[[[[(([[((([[(([[[([[([([[[[([[[[[[([((([[(([[[(([(([[[([[([([[([(((([[([(([[([(([[[[((([(([(([[([(((([((([([([([([[[([[([[[((([[[((([[[([(((([([[([([(([[(((((([([[(([(([[[[[([[[[[((((([[([[[((((([([(([[(([([[([([[(([[[(([[((([(([[[[([[([([[((((([([([[(([([[[([([[[(([((([([[[([[[[[([([((([[[(([(([[(([[([(((([(([[[[((((([([[((((([([([[[[(((([((([[([[([([[[[([([[([[[((([([((([([[(([([[(([[[[((((([([((((([(([[[[(([([([(([([[[(([[[[[([(((([(([([([((([[[[(((((([[[([[[([(([[([[([([([([(((((([[([([([([((([[(([[[[[[[([([[([[([[[[([((([[[[([[([([([[[([(((((([[]]))))))])]]])])])]])]]]])))])]]]])]])]])])]]]]]]]))]])))])])])])]]))))))])])])])]])]]))])]]])]]]))))))]]]])))])])]))]))))])]]]]]))]]])]))])])]))]]]]))])))))])])))))]]]]))]])]))]])])))])])))]]])]])])]]]])])]])]])))]))))]]]])])])))))]])])))))]]]]))]))))])]]))]]))]))]]])))])])]]]]])]]])])))]))]]])])]]])]))]])])])))))]])])]])]]]]))])))]]))]]]))]])])]])]))]]))])])))))]]])]])))))]]]]])]]]]]))]))]])]))))))]]))])])]])]))))])]]])))]]])))]]])]])]]])])])])])))]))))])]]))]))])))]]]]))])]]))])]]))))])]])])]])]]]))]))]]]))]])))])]]]]]])]]]])])]])]]]))]])))]]))]]]]]]])]]]]))])]]]]])])]))]))]]]))])]])]]]])))))]])])))]]))]])))])]]))]])))]))))]))))])))]]]))))]])))]))]])]]])]))])))]]]))))))]]])])))])]]])))]]]]]))]))]]))])))]))))]])))]])])])]])]))))]]]])]))])]])]]]]))))])])]])))))]]]))))])))]]))])))]])]])))])]])]])])]))))]])]])))])]])])))))]))]]))])])))))])]))]]]))]]]]]]]]]])]])))]]])))])))]))))]))))]]]])])))]])]]))))))))]])]]]])))])]]))])))))])]])))]])]))])]))]]]]]))))])])])])]))))]]])]]]))])]))])])]]]]]])))]))])))])]])))))]])))]]))])))])]]]])])])]))))]])]])))]))]]))])))]))))]))))])]])]]))]]]]])]]]]])])])]))])))]])))]])))))))]]]]]]])])])]])))])]))])])))]])]]])]]))])]]]])])))]])]]]])]])]))]))))]])]])]])))])]]])]))])]]))]]]])])]])))]))])]])])])])))))]]]])]))]))])))])]))]]))))]]])])]])])]])]]))))]]))))]])]])))])]])]))])]))]]])))]))]]))]])]])]])]))])]])))])))])]]]])]))))])))))]])))])]))]))]]))))]])))]))])]))])]])))]])]]))))]))))])))])]))])))])])]]]))])]])))]]))])]]]])))]])]))]))]]]]]))])])]))])]))]))])))))]])]]]])]))])])]]]))])]]]]]))))]]]]]])]])]))]]]])))]]])))])])))]]])]])]))]]])]]])))))]]]]))))))]]])])]])]]]]]])]]))]]))]])]))]])]]]])))])]]]]))]]])))])]]]]]))]])]])])])]]]]))]))]]]]))])]]]])])]))))]])))))))]])])]]]])]))))))]))]]))]])]]]))))]]]]]))))]]]])))))])])])]]])])])))]]])]]]))])]])])))]])]]))]]]))]]))])))])))])]))))]))]]]]]]])]]])))]]]))))))]]]])])))]]])))])))]]))])])]]]]])]]])]))]]))]))))]))]])]]])])])]]))]])]]]]))]))]))]])]))])))))))]]]))])])]]))))]]])]]])]]]))])))]]))]]]])]))]])]))]]]]))]))))]))))])]]])]])])]))])))]])]]]]))]]])))]]))]]]]]]])]]]))])))]])))]])))]]])]]]]]))]]]])]])]])])))]]]))]])])]))]])]]]]))])]])))])]]])))])))))]])])])])]))))]])))]]])))]]]]])]])]])]])))))))])])))])]]])]))]]]))]])])]]]]]])]])]])))))))))])]]]])])]])))]]]])]]])))))]]]])]))]]]))))]))]]]]]))]]]))]]]]])]))])]))])]]))]]))]))])))]])]]]))]))]]])]])])])]])))))])])]]]])])]])))])]])))]))])]]))]]]]]))]])]]))))]]]))])])]])]]])))]))])])))]]])))]))])]])))]]]))))]]]]]])]))]))]])]))))))))]])))]]]))]))))]]))]]]))))]]]]]])])]))]]))])]))]]))])]])))]))))]]]))]]]])])]])])])]]))))]]]]]]]))]))])))]])])]))))))]]])])))))]]]]]))])))))))])]]))])]]])]]))])]]]]])]))])]))))]]))]))))))]]]]]])]]))]]))])))])))])])]))]]]))]]]]]]]])]])]))])])]]])]])]])))]]))))]))))]]]]))))))]))]])])))]])])]]))]))])]])))]])]]))))]])))])]))]))))])]))])]))]]]]]]))])])])]]])]]]))]]]])])]))]])])))]]]]]]]]])]]])))]]))])])])))]]]]])])))))))]]]]]]])))]]]])))))]])]])))))]]))]]]])]])))]]])]]])]]]]))))))]))]]]))]]])]]]]])])]])]]))])]]]])]]))])])]))))]])]))])]]]]]))]))]]]))]]])])]))]))]]]]])])]]]]])]))]))))))))])]]])])]]]])))]))]]]))]]])])])])]))]))]]]))))])))))])])]]]))))])))))]]])]))])]])])))])])]))]]])]]))))]])]])])]]]]])])))])]]))))]]]]])]]]])))))]))]]]])]))]]])))))))]))]]]]))]])]))]))]]))])])]))]]]))))])]])))))))))))])))))]))])]])]]]))]])]]])])]]])])]]]))]])))))]])]))))]))])))]])]])])]]]]]]])]))]]]]]])]]]]])))]])])]))]]]]))))]])))])])]]]))]))]])])]]]]]]])]]))])))])))))))))])])])]])))]]]]))])]]]))])))]])]])]]]))]))))]]])]))))))))]])]]))]])))]])]]]]))))))]))]))]))]])]]])))]]]]))])]]]))])])]))))]])]))]]])]))])]]]]]]))]]])]))]])]]])]])]]]])]]]]]])))))]]])]])))]))]))]]))))]]])])))]]))])]))]))]]]))]))]])])]))]]))))))]])])])))]]))]))]])])])))))))]])])))]]]])]])]]]))]]))]])]))))))]))]]]]])]])]]]]))))]]))])])])]])])]]))]]])]))]))))]]]])))))]])]]))))))]]]))]]]])]]]])]]]]]))))])))]]))])))]))))]])]))]]))]]]]])))]]]])))])])))))]))]]]]])])])))]]])])))]]]]]]]]])]]]]]]))]]])))]))]]]))]])])])])]))]])))))))])]])]]]]]]]]])])]]))])))]]]]])]))))]]]])]]]]))))]]])]]]])))]])))]))]])])))])]])])]])]])]]]]])])])])]]]))))))])]]]))]])))]]]]]]]]))))])])])]))]])))))))]])])]]])])))]])]])))]))]))]]]))]]]])]))]]]))]])])))]]]))])]))))))]]]])]]]))))])])])))))])]])]))])])]))))]])]))]]]])]]]])]]])]))))])])])))]))]])))))))])]))]))]]]]]]))])])])]))))]])])))]]])]])]]]])]]]]]]]))]]])])))]])]))]])]))))])]])])]])]))]))))]]))]])]]])]])]))]))]]]]]))]]))]))])]]]]))]]]]))))))]]]])))]]]])]]]))))]]]]]]]]])]]]]]]])]]]]]]]]]])])))]]]])])]))]])]]))]]]))]))]]]))))]]]))]))]))))]])]]))]])]]]])]]))])))))])])]))]))])])]))))]]])])))]]]]]])))))]]])]]])]]]])]]))]))))))]]]]])])))])]]]))))])])]])])]])]])))])]))])))])]]]]))]]])]))]))))]])]])))))]]])]))]]])))))))]))]))]))))])]]])]]))]))]])))))])])])]]]))]]])]])])])]))]])]]])]]]])))))]]]])]))]])])]))])]))]])])]])]])])))]]])]]]])))]])]))))]])]]])]]])))))]]])))))))])))]))]])])))]])])]))]])))))]])])])])]))])]))])]]))])))))]))])]])])]))))]]]])])))])]))))]]]))]))]))]])]])]]))))]))))])))))]])])))]))])]])]])]]]]]]])])))]]]]))])]))]))]]]])]]]]]))))]]]))))])]))]])])]])))))))))]]))))])))])))])]]]])]])))]]])))]]]])))]]])]])))]))]])]]))])]]]])]))]]]])]])))]))]))]])])]])]]]]])])))]))))]]]]]])]))])]]]]])))])))]]]]))]]])))]))])]]])])])))]]))])))])]))]]]]]]]]])])]])))])]])))]]]]])])])]])))]]))))])]]]])))])]])]])]))])]])]]]])))))))]))))))]])])]))]))]))))])]))]]))])]])]]]])))]]))]))])]]]))]]]]]]]))]])]]]))))))))))]]])))])])]]]]))])])]])])]]])]]))])])])]])])]]])))]]]]])))]])))]]))]]]))))]]))]]])]]]]]])]]])]]])])]])))])]]))])]]])))))))]]]]])]]]))])))]]])])))]]]]))]])]])])))])])])))]]))))])]])])]]]]])]])]])))])))))])]])]]))]]]])])])]]]]))])]])))])))])]]]])])))]))]))]])]))))])]]]]]]])])]])]))])))]]]))))])])]))))]))))]))))])))])))])))]]]])]]]])])]]])])])]))))]]]])]])]]]]]])])])]])]])]])]]])]]))]]]]]))])))])])]]]]])))]))]]))]])]]]))]]]))]])]]]])])))])]]])])]]))))]]]]))]])))))))]])])])]))]])])))))])))])]]))])]]))]))))]])))]))))]]))))]])]]]]]]]]])]))))])]))]]]))])))]])]]]])]]))])))))))]]])]]])])]])])]]]])]]]))])])))))]]])))]])])))]]]])]]])))])])]))]]]])])]]]))])]]))])]]]))]]))]]]]]]))))])]))]))])])]]])])]))]))))]])])]]]]])])]])])))))]])))]]]]])]])]))]]]))])])])])])]]]]]]))])])]]]))]])])))]]])))]]]))]])]]])]))]))]]]))])]))])])]]]]])))])])]])))])]]])]])))))]]])))]])))])]))]])))]))]])]]]]]))]))))]]]))]]]))])])]))]])])])]]]))])))]))]]]])]]]]]]])))])]))]))]]))]))])]))])]]])]))]]))])]]])]]]))])))])]]))]]]))]))]]])]]]))]))]]))]]]]))]]])]])))))]]))]]]))]))])]])]]]]])]]]])))]]]]]]])]]])]))]]])]))])]]))]]])]]))]]]]])))]])))])])])))])]))))))]))]]])])]))]])))]))]])])]))))]]))]]))]]]]))])))))))))]])])))))]]))])]]]]]))])]]]]))))]]]))))]]]]])]])]])])])))])]]))))]]))])])))]])])]]))))))))))]])]]]])]])]))]]]])]]]))]))))))]])]]))])])))]])))])]])))))]))])))))])])))])])])])])]]]]]]]])]]]])])]])]]]))]]]))]])]]]])))]]]))]])))]]))]))]))])]]]]]))]])))]]]])])]))]])]]]]]]])]])))]]])]))))])]]]]])])))]))]]))]])]]]]]))])]]])])]))))))]])])]))]))]]))]]]))]]])))]])))]))])])])]]]])]]))))])]]])]]]]])]))]))]]))])]]))))])]))))]])])]])]])])))])])])])])))])))))))])])])]])]]]]]))])]))])]]]))]))]]))]])])])]])))])])])))]])])))))]))])])]]]])))]))]))])))])]]])]]]])])])]]]]]]]]])))))))]]])]])))])))]]])])]])))))]]]]]))))])])))))])]]])])])]]))))])]]]]])])))])))]])])]))))])])]])))))])])])]))])]])))]))])]))]])]]]]]])]]]])])))))])]])]])))]]])]]]]])))]]]))])])]]])]])])]]))])]))))])])])]]])]))]]]]])))))))]])])]]]]]]]))))])]]]]))]]]]]))))]]]))]])]))]])]]]])]))]]])]])]])))])]]])]]]])])]))])]])])))))]])]]]]))))))]))]])]]])))))))]])))])]]])]]))))]]))]])]]])]))]]))]]))]]]))])]]]]))]]])]])])]]]]]))])))))]]))])]))])))]]])]))])))]))])]]]]))]])))]])))]]]]))))))])])]]]]]]]])])]])]]]])]]]))))))])))))]))])))]))])]])])]))])))]]])))))]))]]]]])]])))]])))]]]))]])))]])]]]))]])))))]])]]))))]]]]]]]]])]])))]]))))]])))])]])]))))]]]])])]]))])))]))))])]]))))])]]]))]]]])])]]]])]]]]))))]))))))]))]]]]]]))])]))])]]))])))])])))]]]]))]]))])))]))]])]])])]]]]]))]]))))]))]])])]]]]])]))])))))))))))]))))]]]]])))]])])))])]))])))]]]]]])]))])))))))]])])]])])])]])))]]]))]]))))))]]]])]])]]]])))])]]]]]]]))]]])]]))]])]]))])))))))])))]))]))]]))])]]])]]]])])]))]))])])]]))]))]])))]])))]))]]])]]])]])])]]])]])))))]]])])]))]]]))))])])]])]]))])])])]])]]]]]])])])])])]])]])]))])])]]))]))))]]]]])])]])]]]]]]]]]])))]]]))]]])))])))))))]]])))))]]])]))]])]))))]]]]))]]]))])))]]]))])])))])]]]])])]]])]))])]]]]))]]]))]])]]]))])]])])]]]))]]])])]]]]])]])])]]]]]))])]))]))]]]])])])])))]])))))])])])]]])])]]]]]])]])))])]])]]]]])]]]]]))]]]]]]]]]])])))])))))])]]])])]])])]))))]])])])))])]])])]]]))])]]])]]])])]])))))]]))))])]))])]]]]])]))])))]))))]])])])]])])]]))]])]]])))]))))]]]])]))))]]))))]])))])))))]]])]))))))))))]))]]]]]])])]]]]]])])]]))]])]]])]])))))]]]]])]))])))]]])]]]))])]])))])])]))]])]]]]))))])))]))]]])))]])))))])]])]])))])]])]]]])]]]]))]])]]))])]]])))))))]]]))])]))]]]])]]]))])]])])]]]]]))]))]]])])]]])))])]]])])]])))]]))])]])]]))])])]])]]]))])]]))]]))]])))]]]]]]))]])])]])))))]]))]]])))]))))]))])])))]))))]]]]])])))))]))))))])]]]])])]]])))))]])]]]))])]]]]]))))]])])))]])])])]])]]))]])]]]]]]))])]]]]))]))]))]))))]]])]))]]))))))]])]]]]]))])]]])))))]]]))])]]]]]))])]]]])]]))])))))]]]]])))])])]))))])))]))]]])])))])]]]]]]))])])])])))]])]])]))))]]))]]]]))])]]))]])])]))]]]])))))))])]))]))))])])]]))])))]]])])))))]])]))))))]]))])))]]]]))]])))]))]]])]]))])]]]]]])]])]]))]])]]))]]]))))]])])))]))))])))))]]])]))]]])))]]])]))))))])]))])]]))]])])]))]))])]]]]))])])]]]]])]))]]]]))])]]])]]]]))])]])])])]])])])))]])]]])])]]]]])]))]]]]])]]]]])])]))))))]))])])])]]]]]])])])]])]))]]))))]))]]]))))]])]])]]])])]]]]])))]))]])]]))]])])])))))]]])]]]))]]])))]]))]])])]])))]])])))])))]))]))))))]]))))]]])]]])))]]]])))]])]])]))]))))])))))))]])))))))])])))]])))])]])])))])))]]]]])]])]])))))])]))))]])))]])]]])]]]])))]))]])]]))])])])])])]))]]]]]))))]]])]]]]])])]])]))]])])])]]]))))])])])]))]])]])))]]]))]]]]]]))]]]))))]]]]))]))]])])])))]])]]])))])]))]]]))))]]])))))])]]]])))]]]))))])])])])]]]]]]]]]])))])]])]]]])))])]]))]))]]])))])]]]])])]])]]])]))])])))))]]])]]])))]]]])]))])))]))]]))))])]])]]])]))))]]]))]])))]]])]]])]])]])]]))]]))]]])]])]))])]))])]]]]))]]]]]]]))))])))]]])]]]]])))]])]]))]]]])))]))]]))))]))))]])]]])))]])]]]]])]))]))))]))))])]))]]]))]])]]])]]))]))]]])]))))))]))]]]])]]]]]]))))]]]]))))])]])]])]]))))]]])))]))]])]))]]]])]])))))]]]]]]))]))]))]])]))]))))]))))]]))]]])]]])]]]))]]]]))]]]])]])]))))))])]))]))])))))])])))]]]])]])]])))))))]]]]]]]))))]]]))]))]])])]])))])))))])))])))))]])]))]))))]]))]]]))]))]]))]))]]]])])]]])))]])]))]])))]]]]]])]))))]]]))))]]]))]]]]])]))]))])]])))])))))]))))]))]]])))])]]))]]))]]]))))])]))))]]))]]))]]]]))])))))]]])))]))]))]]))]]]]])])]]]]))))])])]))]])]])])]))])]))]])]]))]]])]])])])))])))]]]))]]])]]))))))]))]]))]]]]])]]))))]])]]]]]]]))]]]))]])])))])])])]))])])))]]])]])))]))])]]))])))])])))))]])]]]))))])))]])]]]))]))]])]))]))))]]))))])])])))]]]]]]]))]])]])))]]]))))]])])))]]))))))]))))))]]])))]))]))]]]])])))]]]]]]])])))]]))]]]]]])))))])]]]))]])])]]]]))))])))))]]]))])]]]]]]))])]]))]])]]])]]]]]]))))])])]])))])])))]))]]])])]])))]])))))]])]])))]))))])])]])])])])]]])]])))]])))])])]]]]])]])))]))]]]])]]))]]]))]]]]))]]]))]]]])])]]]]]))))])])]]]])))]])))))]])]]]]]]])))]]]])]))]]))))])]]])))]]]])))))])]]))))]]))]]]])))]]))))]])]))]]))])])]]))])]])))])]]]])]]])]))]])])])]]))]]])]])])]))))])]])]]]]]]])]])]])]]])])])))])])]]])))]])])))]])]])]]])]))]))]]))))]]]])))]]]))))]])])]))])])])])]))]]])]))]]]]]]))]))])]])]))]])]]])]]))]])]]))]]])])]]]))]]]))]]]])]]))]]]))])))])]]))]])))])]))])])])]))]]))])]])]))]))]]]])))]]])]))])))])]]])]])]))))])]))]]]]]]])]))))]]]]]])])]))))]))]))])))))])))))))]]))]]]))]]]]))]]]]]])])]]]])]]])]])]])])))])]))))))]]))]))]])]]]))])]]))])))))])))]]]])]]))]))])]])))]]]]))]])])))))]]))])]))]))]))]]]]]]])]]))])))])))]])])))]]]]]])]]))))))]]]]))]]])]]))])))]])]))]))]]]))]])]])]]))])))]))]]))]])]]]])]]]]]))))])]]])]]]]))))]])])])))))]])])]]]])))]))]]))])))]]]))]]])])])))]]]))])])))]]))])]])])]]]))])]]))]]])]]]]])])]]])]]))))))]))]]))])]])))])))])))]])))])]))]))))])]))])))))))])])]]]]]]]]]])]])))])))]]]))]])]))])))])])]]]))))]])))]]])])]]))]]]]]))))]])]]])))]])))))])]]]]))]]])]]))])))))]]])])]]))]))])])))))])]]]]]])))]))]))]))))]))]))]])]]]])))]))]])))]])]])])]]]]]])])))]]])])]]]])))]]]]]]])))]))])])))]])))])]))]]]]]])]]])]]]])])])])])]]]])))))])))))])]]]]]))]]]]]]))]))))]])]]))])))])])])])]]]))]])]))))]]))))))))])]]]))]])))))]]]]]]])]])])])]]])]))))])]]))]])])))))])]]]]]]])])]])))]]))]]]]]])])]))]))))]]]])]]]]]]]])]]])]))]]]])]]]))]])]]])]]))]]]])])])]])))))]]))]])])]))))])]])]]]]]))])]]))]]])]))])]))])]]))))]))))]])]))))]]])]))])]]))])]]]]])])))]))]]]])])])])]]]]])]])]]])))])]))]])]]))]])]))])))]])])))])))))]])]))))]])]]))]])])]])])]])])]]]))]])])]]))])))))))]))))])]]])]])))))]])))]]]]]]]))))])])]]]))))]])]]]))))]])])]])]]])))))))))]))])])]))]]))]]))))]))))])])]])]]]])])]))))])])))])]))])]))]]))]]]))]))]))))]])])]]]]))))))]]])]]])]])])]]))))))))]]))]])])]])))]])])]])])]]]])]])]))))]]))])])])))))]]))]]]]]))])]))))])]))])]])])]]]])]]))))]]]))]]]))]])]))))]]])))]])]]]]]))]))]]]])]))]]]]]])]]]))]]))])]])]])])])))]]])]]]]]])]])]))))]))]]])]))])))]]])]])))]]])])])))))))]))]]]])]]))))))]]]]])]]])])))])])]]]))))])]))])])]))])]]])))]))]])])]))))]])])]])])]]))]]])]]])])]])]]]]])]))))]))])]]])]]))]]])))]))))]))]]]])]]])]]))]]))]))])]))]]]])))]))])])))]))]]))])]]])))])))]]))])]]]))]]])))))))])])))))))]))])))))))])]])])]])]]))])))]])]])]])]]]]))])))))]]))])]]]]))])])]))]]]]]])]]]))])])]))])]]]))))]]])))])))))]))]]]]))))]]]]))]))]]))]])])]])]))]]]]]]]))]]]])))]))))]))))]]]))))])])))]))])])]])))])]])]))]))])))))]))]))])])])]]]]])])))]]]])]]]])])]))))])))]]])])))]])]])]]]]]]]])]))))))]])]))]])]]]])])]])]]]])]]))]]])])]]))])]]])]]]]]])])])]]]]))]])]]])))])]]))]))])])))))]]]))]]]]])))]])])]]]))))))]]]])]]])))])])]))]])]))])]]]))]]))]])))]]])]))])]])]]]))]]]]))]])))])]]]]]))]]))])))]])]))]))]])]))]])])]])])]]))]])]])]]]]]])])))])]])]])]]])])]]])]))))])])]))]))]])]]]))))]])))]])))])]]]]]]]])])])])]))))])]])])))]]])]]))]])))]]])]])]]]]]))])))))]))]))]])]])])]]]))))))]]))]]]]))]])])])]]]]]]]])]])])]]])))])])]])))))))]]])]]])])))))))])]))])]]]])]]]))))]))])])])]]]])]]]]])]]]]])]))])]])])])))]]]]])))))]]]]]))))))]]]])]]]])))])]))]])])]]))))])]]]]]]]]]])]))]])]])]))]])])]]])]))))]])))]]))]))]])))])]]]]]])])]))]]])]))]]))]]))])])]]))))])))]))]]))]])))]))])]]]])]])]]]))]]))))]]]])])])))]]]]])))))]))]]))]]]]]]])]])])]]])))])])]]])))])]]])]])]]]]]]])])]]]])))]]]])]])]]]]))]]]]])])))])]])]))))])])])))]]])))]]])]]])])])))])]))])]))]]]])])])])]])))])))])]]))]]]))])])))))))))))])])])])]]]))])]]]])])))]])])]]))]))])]]]))]]]]]])]))])]))]])]))])])))))]))))]))])]])]]])]]]])))])])]))]))]))]]]))]))]))]]]]])))]]]]]]])))))]])])]]))]]]]])))])))]])]))))])))))))))))]))]]]]]]))]]])]]]])))]]]]))]]]))])]])])))])])]]]]])]]])))]])]))))]])]]])]])]])])]]]]])]]]]])]])]]])])])))])]]]]]))])))))])))))]))])]))])]))])]))]))])]]]]])]]]))])]]])]))]]])]]]])])]]))]]]]]))])])))]]))]])))])])]]])])]])]]])))]]))]))]]]]]]]))))]))])])]])))])))]]))]))])])))))))))))]]])]))]])]]])]])]])))]))))]))))]])]])])]]])]]]]))])]])]]]]])))]]])])))]))]])))))])]]])])]]])))]]))]))]))))])))]]]]))]])]])])))]))]])]]])))]]]]])))]]]]))]))]]]))])]]]])])]])]])]])]])]]]]))]))]]]]]))]))]]])))])]))])))]]))])])]))]]]]]))]))))])))]])])]))]]]))])))]]]]])])])))))]]]))]])]]))]]])))]]))])))])]]))]]))]]])])]])))]))]))]])))])]]]))]])])]])]])))))]])))])]))))]))]])])]]])))]]]])]]))])])])))]))])])]))))])]))))]]]]))))]]])])])]]])]])])))]]]))]])]))))]))]))]])]])))])))]]]])))]))])))]]]])]))]))))]))))]]])]]]]))))]]]]]]]])]]])]))]]]))))]]])))])]))])])))]]]]])))]]))])]]))]])])))]]))])])])])])))]))))]]]])])])])]]))]])]]]]])])]))]]])])])])]])))]))]]]))]]]]))]))]))]]])))]))]))]))))))]]])]))])])))]]]]))))])]]]])))])])]]])]]]]))]])]])))]])])]])]]])))))]))))]])))))]])]))))]])])])]])]])))])])]]]])]]]))]])]))))))])]]]])]])))]))))]])]))))]]])))))]])]))]))))))))]])))]]])]]])]]]))])])))))))]])]]]]]])])))))])])]]]]))]])))]]]))]]))))))]]]]))]]))]]])))]])))])]])]]))])])])]])]]))]]])))))]]]]]])]]])])]])])))]]))]]]]))])))]])))))))))))]]))]]]]]])])]]]]])]])])))]))])])))]])])]))]]]]]]))])])])]]]]]])))]))))]))])])]])])])])))]]))]])))]]))]))]))]])))]))]]])]]]])]]]])))]))])])]]]])]]]])]]]]]]]))))])))])])])])]]]]]])])])]]))))]))))])])])]]])]]]))]))))]]])]]]]])])]]])))])]])]])]))]])])]))]))]])])))]]))]))])]]])]]])]]])]])])])]))]))]]])]])))]]]]])]]))]]))])])))]])]]]]]))))])))))))])]]]]]))))))))]]))])])))])])])]]]]))]))]))]]))))]))))])]]))]])]]]]])])]))))))])]]])])]]))])])]]))]])]))]]])]])))))]]]])])])]])]]])]])]))]]]]])]]])))))]))])]))))])])])))]))))]])]]]])))])))]))])))]]])]]]))]]])))])))))]]])))]))]))]]]))))))]])])])]]])))]])]))]))])]]))]]])])))]))])])]))]])]])]))))]])]))])]]))]))))))]]))]])]]))))]])))])]]))])])))))]]]]]])]))])]))]))))]))))]]]]]))])])]])]])])]]))))))])))]))))])])))])))))])]]]])])))]])]]])]]])]])]]))]])))]]]))))]]])])]]])]])))])]])]])))]])))))]))]]]))])])))))])]])]))])]))))])))])]])))]]]]]])]))])]]))]]))])]]])))]))))]]]]]]])]]])))]))]])]))])]]]])))]])])]))]))]])])]]]]))])]])))))])))))))]])))]]))]]])))]))]))]))]]))])]))))]]))))]]]]]])])))))]]]]])])]))))]))])]]))]])))]])))))])])))]])]]))]]]))))))])))])))))]))]])]))]]])]]]]])])]]))]]))]))])])]])]])]])])))))]]]]]))]]]]])))]]))]]]])))]))]])])])])])]]])]])))])))]))]))])]]]]])])))])]]]))]))]]]])])]))]])]])))))))]))]])])]]]))]])))])]]))]])))))])]))]))])))]))))))]]]])]]]))]]]]])])])))]]]])])]))]))]]))]))))]))]))))]]]]]]])]]])]]]])]]))]]]]]])]]])])])))]))])]]))))))]]]])))]))]]]]]))])]]])))])]]]])])))]]]]]))]]]]))])])])]]]]]]]]))])]))))]]))))]]]]]))))])]))]]))))]))])]))])])))]))]]]])))])])])])])]))])])])]])])]]]))))]]]])))))))]]]])))]]])]))))]))]]))])])]])])]]))]]]]])))])))]))])]))]]))]]))])]]))]))])]]]]))))))))))]))]))]]]))]])])]))])]))]))))])]]]]))))))]]))]))]])]]]]]))]]]]))))])]])]])])])]))])))]))])])]])]]))))))))])))]])])]]])))))])]]])]])))]])))]]]]))]]])]]]]))]))])]]])]])]])]))]]])])]]))]]]]))))])))]]))]]])))))]))]])]))]]])])))]])]]]])]])]]]]])])])]]])])])]])]])))))]]]])]])])))])]]]))))])]))]))])]])])))]))]])]))])]])])])])])]])))])))))))])]]]]))]))))]]))))))]]]]))]])))])])])))])))]]])])))])]))])])]))]])]]))]))))]]])))]]])]])])]))])]])]])])]]]])]]]]]])))])))])]))]])])))]])]])])])]]))))]))))]]))])])])]]]]]]]))])]]))])))]])]])]]])))])])])]))]]))])]])])])]]]])))))])]]])]]]))]))))]]])])))]])]]]]))))]])])])]]]]))])]])])])])])]])])])]])))))]]])])]))]))])]]]])]]])))]))]))]]]))]]))])))]]]]]]]])))])])))]]]]))]])]])))])])]))))]]]]]])])]]))]]))))))])])]))])))]))))]]]]])]]))]]))])])]]))]))]))]]]))]]]])])))))])]]])]]))]]]]]]]])]])))))]])]]))]]]]))]))]))))]]])]]]]]))))]]))]]])]])]]]])))))]])]]]]]])]]]])]])))]]]]])])]]))])]))]))])]]])]]]]]]))]))))])])]])])])))])])]]]])]))])))]))))]))]]]]]]]]])]]))]]])]]]]]]]]))))]]]))])]]]])))]]])])]))]])]]))]])]]]]])))))])])]])]])]))]))))]])))]])]))]])])])])]])]]))]]]))])]])]))))]))]]))]]))]]]]))]])))))]]]])]])]])]]]]]]]]]])))]))])))]))))]]))])))))])]])]]]])]))))]]])]))]]))]])]]]]]))])])]))]]]])]]]]]]))])))])])])]))))])))]])])))]))])]))])]]]]])])))]]]))))))])]]])))))])]]]]))]])])])])]])])]))]]])]]])])))]])]])]))]]])))]]]])])]]]))]))])]])]]])))))))))])])]])]])])))]]))]]]])]]]]])))]]]]]))]]]]])]]]]]]))]))))])]])))]])])])]]]]))]])))]))])))]))]])]])]])]))]])))]))))]))]]))])]))]))])))]]])]]])))])]))])]]])))]))]]]])))]])]))))]]))))))]]])])])]])]]))))])]))]])])])))))]]])])]])]))]]]]))]])))])])]]]]))])))))])]))]]]]]]]])]]])]))]))))))]])])]])])]]])]]]]]]))]]]])])))]])]))))]]]])])])]]]]])])]))])))))]))]))])))]]])]]))])]]]]]]))]])])))]])])]])])]])]]]]))]])))])))]]]]]])))))]])])))]]]]))])]]))]]]]])])]])))]]])]]])])]]]))))))))]]))])))]]))]])]])]]]]])))]]]))]]))]]]]]))]]]]]))]]))]))])))))]))]))])]])]))))])])]))])]])])]]]])))]]]])])]])))]))))]]]]]])]])))]))]])]]))]])]])))]]])))]]))]]))]]]]])]))])]]]))]])))))]]))]]))))))]))])]])])])]]])])]])])]]]])])])]])])]])]]]])))))]]))]]]])])])])))))]]])]]))])])))]]]))])]])))))]])]]]])]]])))])]]])]])])]])]]))))]]))]]])])]]]]))]]]])]))]]))]))])]]]]])]]))))]))))]])))]])]))))])]]))))]]])]]))))])])]]]]])]))]]]))])]]]]]])]))])))]]]))]))))]))]))]]))]])]))]])]))))]]]]]])]))]]))]])])])])]))])]]]]]])]]]])]]]]]])])]))]])))]))]))]])]])]]])]]])]]]])]]]]]]))]]))))])]])])])]))))]))))])])))]))])]]]])))))]]))])])]]]])]])])))]])]])]]]]]]]))))])]))))]]])]])]])))]]]]]]))))))]]]]]]))])))])))])))]]]]]])])])]]])]]])]]]))))]]))]])]]]]))]])))])]))))]]])])]])))]))]]]]])))]))]))])]]]])))]])]))]])])])))))))])]])]))]]]))]])])]]])]))]))])]]]]]))))]]))))]]])]]]])]]])))))]])]]])))])]])]]]]])]))))]])])))]]))]])))]]]))))]]))])]])]])]]))]]]]]])))]]]]))))]])))]))))]]]))]])))]]])])]]])])])]]]]]])]]])])])])))))]))))))]])])))))))]])])))]))]])]]]))])]])]]]]]]]]])))))])]))])))])])))))]])]])])))])]]))]))]])])])]))]]]))]))]))])))))))])))])])]))])]))]]]])]]])]])]])]]]))))])])))]]]]])]])]))]]]]))]]]]]])])]]]]])]]]))]])]]])))]])))]]))])]])]))])))]]])]]]))])]])]))]]])])))))]))]]]]]])]]]]])])]]]))])]]]]]]]]])]])])))]]]))))]]]])))]]])])))])]]])]))]))]])))))))]])]]]]]]]]]]))]]]]]])])]])]]]])]])))))]]))]]]))]]]]]]]])))]))))]]]))))])]]]])])))]))])]]])))))]])])]))))))])]]]]]])]]))])]])]])]))]))]]]))))]]])])])])]])))]]])]]]))]]])])]]])]))])))])])])]))])]))]])))])))))))]])])))]])]))])]])])]]])]]]))))))]]]]])]))]]]]]]))))]))))))))]]))))))]))]))]]])])]]]])]])))))]))))]))))]))]]]]]])]])]]]]]])]])])])]))]])])))])]]))]]]])))))])])]]]))])])]])]]]]]]])]]]))]])])))]))]])]]])]]]]])))])]]])]]]]))))))))]]))])))))]]])))]))]])]])])]))))])])])])]]]]]])))]]]]]]))]]]])))))))))])])]]]]))]]]])]])])])])))))]]]]))))]]])]])))]]]))]])))]])]]))))))))))])]))]]]))]]]])))]))]])]))]])])))]]]))]])]]]]]]))))]]]))]])]))])]]))]]]])]))]))))]]])])])]))]])])))]]))]))]]])))]]))]]])]))])]]]]])])]))]]]]))]))))))]])]]]]])]])])])))]))])])])]))))]]))]))))))]]])]))))]]))))]))]))))])]]]])))]])))]]])]])])]))]]]]])]]])))])))])]))]]]))]))]]])]])))))]))))))])])]])]))])]]])))))]])])))]]]))]))))]])))))]]])))])]))))]))])])]])]]])))]))])]]]))])]])])])]]]]]))])])])))))))]))]]))])])]]]))])])]])]]])]])]))))])])])))))]]])])])])))])))]]]]])))))])])]))]])])]]])])))]]])])]]]]))]]]]]]]]]]]])))]]])]]])]))]])]]))])])]])])))])]))]]]])]])]])]])]))])])])))])]])))]]))])]]]])]))]]]])]))]])))))]))))])]]]]))]])]))]))]])]])])]]])))])))])]])))))]]]]])])]))])]]]]])])]]))]])]))]])]]))])]))]))])]]))))])))))))))]])]]])]]])]]])))]]])]]))))])])))])]])])]])]]]))))])]])]))]]]))))]]]])])]]]]])]])))])))])])]])))))]]])]])))))]]))))]]]]])])))])]))]]]]]))]))]))]])])])])]])))])]]]])))]))])))]]]))]))])))])]))])))))]]]]]]]))])]])))))]])]))))]]]]]]]))]])]))]]]]]]))])]))])))]))]))))))))]))])]))]])]]]))]]]])))])]]])))]])))])]))]))))]))]]))))])))]]]]]])]]]]]))])]))]])]]]]]))])))))))]))]))))))]]))]])]])))))])]]]]]))]]])])))])])]]])))])))))])))]]))))]])])]]])])]])))]])))])))]]))]]])))])]]))])]]])]))))])))))))]]])]]])))]))]]]])]]]])])))])])])])]]))]))))]])]]]]))))]])))]))]]]))]))])]]]])))]]])]])))]])])]))]])])]]))]]])))])))))]]]]]])]]])]]]]]]]]]]])]])])))]])]]])])])]))]]]]]]))])])])]]])]])]]])]))))])])))]]))))]]]]))))])]])])))]])]]])))])])])))))]])))]])]]])])]]]))]))]]])])]])]]])])])))])))])]]])])])))]])))]]]]]]]]]]]))]]))]])])])]))])])]]))]]])]]]]]]))]]])]))])])))]]))))]))]])))))])))])]]]))])])]))]]])]))]])))]])])))])))]])))]]]])))))]])]])))]))))))]))])))])])))))]))])]]))]]])])))])]]]]])))])))]])))]]))]]))))]])]]]]]])))])))]]])])])]])])]))))])))]))]]]])))])])])))]]]))])]))])))]]]]]))]]]])])]])))))])]])]))])]]))))]]]]])]]]]]])]]]))]])]]])]]))]))])))))])]))))])))))])])))]]))]])]]]])])]])))))])]]]]]]))]])])])])]])]))]]]]])]])))]]))]))]]])))]]])])))]]])]))])]]]])))]])]))))))))])]))))]]))))]))])))))]])]]])]]])))))])]])])]])]])])])])])))))))))]]]]]))]))])]])))]]]]))]])])))))])))))]])]])))]]]]]])]]))))])))]]]]]]])])))])))])]))])]))])]))))))))]]]]]]]]]))))]])])]]]])])))])])])]))])]]]])])]]])])]]])]]))])])])])]]])]]]]))])))])])]])]]]]])])))]])]])))]))])])])]]])])))))))]))])]]))))]]))]]))))))]]]]]]]]]]]]])])]))]])]]]))])])))]]]])]]]]])))])))])]))]])]])]]]]]))]]]))])])])]]]])))])]))]))))])))))]])]]))))))]]])))]]])))]))))))]])]))])))])))]])))))])]]))]]]))))]]]))])))])]])]]))]])))]))]]]]))))])])]))))])))))])])]]]))))))]]])]]])]))]]))])]))])))]]]]))))])))])]]]])))]))])]])]])))])])))]]]])]]))]])))))]))))))]]])]))]]]]])]])]]]])]))]]))))])]]])]]]]])]))]])])]])]))]])])]])])]]]]]])])])]]))])]))]])))]]])]])]])]])))]])])))]))]]]))))))]]]))))]]])))))])])))))])))))]))))))]]]]]]))))]))])))))])]]]))]]))])])]))]]))))])]]]]]]])])])]]))))]]))))]])]]])]]))))]))]))))))]]])]]]]]]]]))))]]]]])])])))])]))])]))))))]]))])]]]])]])))]]]))]))])]]])]])))))])]]]])])])))])]))]]))])]]))]]))]))]])]]]]))]))]]])]]))])))))]))])))))]]])])]])))]])))])]])))])]]]]))]))]]])])]))))))]]]))])]]]]])])]]]))])))]])]]]])]]]])]))])]]])]]]])])]))]])))]]]]]]]))])]]))]]])]))]])))]]))]]])])]])]))))))))))))]]))]]])))]))]]]])]]))]))]]))])]))))))])]]])]))]))]))]]]]]])))]]]])]))]])]))]]))]])))]])])))))])))]]]]]]]))]]])]]))))]))]]]]]))]))]]])))]])])]]])]]])])])]))))]]])])))]))))))]]])]]])]]])])]])]))))))))]]])]))]])))]))))]])]))])]))]])])])])]])]])]])))]]]))]))]]])))]]]))]))]))]])]))))]))]]])]])]))]]))))))))]))]])]))])))])]))))])]]])]]]]))))])])]]])]])])]]])]]))]]])])]))])))])))]))))]])))])]]])))]]])]]]))))]])]])]]])))))))]])])))))))]))]]]]]))]])))])))]])]])])])]]))]))))))]]])]))))))])])]]]]])))]]])))])))])])))))))))))]]]]]]]]])])))]))]))]])]]]])]))))])))])])))))])])])])))])]]]]])]])]])])))])]])])]))]))]))]))]]]))])))))])))))])])]])])])]])))])))]))])))))]))]))))])])]])))]))])]]]))])]]])]]]])]))])))])])]]))])))]]))]))))]]))]]))))]]])]))]]]]]])))]))]]]]]]])]))])))]]]))))]))])]]))))))))]))]])])])])]]]]]]))))]]])))]))]]])))))))))]]]))])))])))]]]]]]]])])]))])))))])]])))]]]))))))]))]]])]))))]]]]]])])])])]]))]]]])))])]))])])])])))]])))])])])]))])))]])))]))]]])]]]))))]]]]]]]]))]]]])])]]])]])]))]))]])]]]]]]))]])))]]))])]]))]]]]])])])]))]]]]))]]]])]]]])])]]]])]]))))])))))])]])]]])))))))]])])]))])]]]]]])]))])]])]))))]))]]))))]]])]])]))]])]))]))]]]]]]]]])]]]))])]]]]])))]))))])))])])]]))]])])]])]])])])]])]])]]))))]))]]))]))))]]))]]]]])])])]])])])]))])])]])))))))]])])]])])]]))])])]]))])]]]]]]))]])])]]]]]])]])])])]]))]]))])]]))]]]]]]])])]))])]]]]))]]]]])])]]]])))))]]))])]])])))])]])])))))])])]]]))))]))]]]])])])))]))])])))]))])))])]))))])]))))])]]]]])])]]))])]]))]]])]]))])]])]])))]])]])]))])])]])])]]))))])]]]])))]]]]))]]])])))]])))]]]]]]])]]]]]]]]))])])])))]])))]])]]]])])])))))]))]])])))))]])]))]]])))]]))])]])]]))))]]))]]]))]]])]]))])])))]]]])])))]]]))])])]]])))]]))))]]])]]]]])]])))])))])))])))]))))]]))]]]))]])]))))))]]])]]])))]]))])]]]]))))]])]]])])))))]]]]))]])])))]))])]]])]]))]]])]]]]]]]))]]]])]])]]))]]]))))])]]]))]]]]]]])]))]]])))])])]])])]]))]]]]]]))]])]]]]]])]))]))]])]])))]])]]]])])]])]]))))))]]]])]]]])]])))]))))]]]]]])])])]])]]]])]]]))])])))])])))))]))]))]])]]))])))))]]))))))]]]]]))])]))]]]])]]))))]))))]])])]]]))]])]]]]]))]]))]))]])]]])])])))]])))]]])))]]]]))]]))]])])]])]]]])))]])]]]))]]))))])]))]]]]]])])]))]]]))]))))))))]])]))))])])))))])]]]])]]])]])))]))))))]))))]]])])))))))))]])]])]]))]]])])])]]])))))]]]))]]])])]]])])]))])]]]]))]))])]])))))))]))])])]]])]]]])])])])]])])])])])])]])])))])])]]])])])]]]]]])]])))))])))])]])))]))]]))])]]])))))]])))]))])]))]))]]])]])])]))])])]])))])]])])])]))])))))))))])]))))]]]]])]])))))]]))))]])))])]))]])])]]]]))])]]]))])]])))]])))]])]))]]]]]]))]])))]]]]])]]])]]]))))])])))))]])])]]]])]])])))))])]]])]]))]])]]]))]]]]]])))]]]))]]]]])]]]))])]]]])]])]]]])))))])]))])))]]]])))])))])]))))))]]]])]))]])))])])]])))])))]]])])))])]))])])])]))]]))])]])]])])]))]))])]))))]])]))]]]]])]]))]]]]))))))))]))]))]])])])])]))]]])))])))]]))))]]]]])))])]]))]]))]))])])]]])))]]]]])))]])])))])]]))]))]))]]))])))))]])])]]])])])))]))]]]))])))])))]))))])))])))]]]]))])))))]))])]]]]])]]])])]]])]]]]))))))))]]]]]]]))]])]])]]]])))))]]]))]))]))]))]])))]]]]]]))])])))))]))]))]]])]])]]))]]])]))])])])]))]]))])]]]]]))))]])]])))]))]]]]])]]]]]))])]]]])])]]]]))))]])])))))])])])))]))])]])))])])])))]]))))))))))))))]]])]]]]])])]))))]]))]]]]))])]))])]]]])]])])])])])))))]))])]]]))]))])])])])])])])])]])))]])))]]]])))))]))]]])))]])]])]])]))))]))])))))]))]])]]])]))))]))]))]])]]))))]])))])))]]])))]))))])]]])])))])]))))))))])))]))]]))]]]])]]])))]])]])])]))])))])))])])])))])]]]]])))]]])]])]])]])))]))]])]]])])]))))]]]]]))))])))))])])]]]])])]])]))))]]]]]])))]]])))))])))])])])))))]])))])]]))]]))]])]])])])])]))))]])]]])))]])])]]]]])]])]]]])]))))])]])]))]]]]]]]]]])))])]]]))]))]]))))])]))]))])])))]))]]]]))]))])]]]]])))))]]])]]]]])])]]])))))))))])])]))]]]))]]]])])]])]))])]))])))])]]])])))])]]]))]]])])]]])])]))])))]])))])]])]))]]))]))]))])])])]]]))))]]]))]]]]]])]])])))]])]))))))))])])])])]])))))]])]]]]]]))))]))])]])])])))))))))]]))]])]]]]]])]))]]])]]]))))]])])]]]]))])])])))])))]]))])])]]))]]])))])))))))])]]))])]]])])])))]])]]))]])]])))])]))]]]]])]])]]])))]]]]]]])])))]]]]))]]]]]))])]]]])]))))]]]))]]])]]))]])]))]])]]])])]])])])])]))])]])]))]]])])))]]]]]))]))])]]]]))])])]]]])))))]]])])]]]])))]])])))]]))]))]))])]]])])])]]]]]]])))))]]]])]])))]))))))))])))]]))]])])])]])]]]])]))]]]]]))])))]])))])]]])])]]]]])]))]]))))]]))))))])]]])))]))])))))]]]]]))])])))]))]])])))])]))))])))]))])]])]]))]))]]]]])]]]))]]]]]]])]]])])]])))))))]]])])]]]]])])]]])))])]))]])]))])])))]])]))))])])])])])]))])))))))]])))]]]]))))]))])]]))]])]]]])])))]]]]])]])])]])])]]])))]))]])])))]]))))]])])])])]))])))])]]]]]])]]])]]]]]))]])]))])])])]]]])])]))])]]))))]])])))]))])))])]]])])]]]]]]]))]]])))])]))]])])])]])])))]))]])])])]]))))))))))]]])]]]))]])]]]]))])]))))]])))])))]))]])))))]]]])]))]))]))))))))]]]]]]]]])]]])]]))]))]))])]])))])))]]]])))]))]]))))]))]))]])]))])]])]))))]]]))])])]]])]))))))))))]]]]]]])]]])]])])]))])))]]]]]])])))])))])]))))))]])]))])))))]))]]]]]))))))]]]))))]]))))))])))))]]))])]]]]]])]))]]])])]))]]]))]])]]]])])]))))])))])])]]]])))]))])))]]))]]]])])])]))])])]]])]])]))))])]]])]])])))])))]]))]))]))]]])]))))]])])]])])]])])])))]]])]]])]]])])]])])]))))])]]))])]])))))]]]]])))]]))]]]]]]]]])])))]))))))])]]]]]]]))])))]]))])))))))])))]]]))]))]])))]]])]])])])))])]])))]]]))]]])])]])))])]))]]]))])]])])]]]))))])))]]])]))]])))])])])))])])])))])])])]])))))]]])))])])]])])]])]])]]))))]]])])])))]]])]))]]])]]]]])])]])))])]]]]]]]))])]]]]]])]])])))]]))))]))]])]))]])])]])]])]]]))]])]))]])]))))]))]))))]]]]))))]))]))]])]])]))])]))])]]])])))]])))))])]]]))]]))]))])]))))])]]))))]]))))]]))]]])])]]))]]]]))]))))]])))]]])))))])))]))]])]))]))])]])])]))]])])))]])]])))]])])])))]]))]]])))]])]]))])])])])]]))]]]))])]]])]]])))])]]])]]))])])]))]]]]]]]]])])]]]]])])])]])]]])]]]]])]]))]]]]])])]]))])))])]))]]]))]))]]))))]]))]]])])])))]]]])]]])]]]))]))])]))))])]])])]])]]]])]))])])))]))]]))))]))]]]])]]))]]))]))))]))))]]]])])))]])))))))])])]))]))])]))]]))))]))]])]]]]])])]])]]])]])])))]])))])]]]])])])]]))))]]))]))])]]])])]))]])])]]))])]])]))))]]])))]))))])]]])]]]]))]]]])))))]]])])))])]])))]]]])]))]])]]]]]]))])]]])))])]]]]])])))]]]))])]]))]])]))]]]]))]]]]]))]))]]]]]))]])))]))])]])])]]))))))]))]))]]])]))])])]]))])]])))]]]]]])])]])))))])))])]]]))])))]])]]))]))))))])]]])))]])))))]]])]))]]]])]]))]]])]))))]]])]]]]))))]))))])]]]]]]]]))))]))))]]]])))))]]]))]]]))])]]]]]]])))))]))]))]]])]]]]))])]])])]]]]])))))]]))])])]))]])]]))]])]]]]]))))))])]])]])])]))]))))])])])])]])))))]]]]]]]]))])]]])]])]])])]]))]])]]]))])]])])]]]])))]))])])))))))]))]])]])]))))))))]]))))]])))]]]]])])]))]])]])]))))))))]]]]))])])]]]])]]]])]]])]]]]]]))]]))]]]]]]]]]]))])])))))]))])])]]))]]])]))])]])))))]))]]])]]]))])])]])]))])]])])])])])))]])]]]]))]]])]]))]]]]))))]])]]])])))]))]]])))])])]])]]]]])])))))))]])])))])))]]]))]))]])])])])]]))]]))]]]))]]])]]]]))]]]]])))])))])]]]))]))))]]]]])]]))))]]])))))])))))))])))])])])]]]]))))]])]]]])]))))])))]))])]])]]]))])])])]])])))))]]]]]))]])]))]))]]))])]]]))))]]]])]]])])])]))]])))))])]]]]]])])))]]]]))]]]))))]]]]]])))))))])]])]])))]]]]))))]))])))))]]])]))]))]]))))]]]]]))]]]))))]])])])))]]])])]))]]))]]]])]]])]]])])])])])]]))]]]]]))))))]))])))])))])]))])]])]))))]]))))])))]]])))]]))])]]]]]]]]])]))))))])])]]])])]])])))]])]])))))]]]]))))))]]])])])])])]))))]))])))))))]))])]]]))])]]))))]]]]]))]]]]]]]])]))]])])]))]])]]]]]])]])])]]))))]]])]))))))))]]])]]))))])]))))])]]]]])])]]))]))]]]]])]]]]))))]])]])]]]])]]])]])]])]))]]))))))])))))])]])])))]]])))]]]))])))]])]]))]])]))]]]))))]]]))])]])])))))])))))))]]])))])]]])]])])]]])))])]]))))])))))]]])))))])]]])]]]]))]])]]])]))])])]])]))))])]]]]]]))])]]))])]])]]])]]]]]])])))])))]))))]]]]))])))]]])]])))]))])]])]))]]))))]]]]]]])))]]]]])]]])])]))]]]))])])]))]))))]))])]))]]])]))]]]]]))]]])]]])]))))])])])]]]))]])]]))))])]]]]))]]]])])])])])))]))))]])])])]]))]])))))])]]))])])))))])])]))))))))))]))))])])]))))])]]])]])]]]])])))])]]]])))]]]]]])]]]]))])]]]))]]))]]))))]]))]))]])]])))))]]))]])]]))]]]))]]]))))]]]])]))))])]]]]])]]])]])]]])]]]))]])))]]))))]]])]]))))]))]))])))))))))]])]])))]))]])))]))]]]]]])]]])))])]]))]]]))]])])))]]])]))))))))]]]))))])]))])])])]])]])))))))])])])))]])))))))]))]]]))]))]))))))))]]))]])]]]))]]))]]])])]]])))]]]])]))])]]]]]])))]))]]])])]]])]]))))))))))]]))]]]])))))]]])]))))])))])))]]))])))))))))))])]]])])]))))]]])]))))])))))))]))]])]))])))])))]]]]]]]))))]))]])])]))]])]]]])])]]))])]))])]]]]])])]))))]))]]]])]))]])]])])))))]]))]]]))])])]])])])]))]]]]]]]]]])]]]))])])])])])]]])]))]]])]]]))))]]))])]]]]]))])]]]))))])]))]]])]]])))]))]))))])])]])))])]))]]))]))))]]])]))]])]]))))]]]])))])])])]]]]])])]))]]]]])])])]]))]]]])]])]]])))]])]])])]]])))])]])]])]]))])])])))]]]]]]]))))]])]]]])]]))])))))))]])]])])]]])])]))]))]))]]]]]]))))))]]]])))])]])))]]]]]]))]]))))])]]]]]))])]])]]]]])])]))]))]]]]))])]]])])]))]))])]))])))))))]))]]]]])]]))])))]])]]]]))]]]))])])]]]])])])]]]]]]]])]]]))]])]])])]]]))]]))))])]]]]]]]])])]]))]]))])])]]])))]]]]))]]))]))))])])])])])]]]))))]])))]]])])))))])]]])]]))])))]))))])])]))]))]]]))]]]])]]]]))))])]])]])])]))]]]]))))))))])])]]]])]]]]]])))))]])))))]]])]]]]))]]]])))]]]])])]])]))]))])]))]))]))]])]]))]]])])))]]))])])])]]]])])]])]))))])])])]])]])])])]]])]]))]]]]))])])))]]])])]]])])))]]))]]))))]]))]]]]])]))))))))]))]]]]))])])]))]))]])))]])]]]))]))])])]]))))]])]])))))]]]]]]]))])]))])))])])))))))])]))]]]]))))])]))))]])]]]]]]]])])))])]]]])]]]]]]])])]]])))])))]])]]]]]]])]])])))))))])]])]))]])]]]])])]]]])))])))))))])]])]))]]]]))])))))])]]]])]])]]))]]]]])))])])]]]))]]]])]]))]]])]]])]]]]]))))]))]]]]]])]))])]]]])])]]]]))]])])]]]])]))]))])])]]])))))))))]])]]])]])]])))))))))])]))]]]))])]]))))]])]])]]]]])]]]]]]))))))))))]]]]]]]]))))])]]]]))))]])))))]]])))]]))]])]])))]])]]]]]))])]]])]])]]]]]]])))])]]]])))]))))]]))))])]])))]]]))))]])]]])]))])]]]))])])))]]))])]]]))])]]))]]])]]])))]]]]]]])]))))]]])])))]]))))]))]))]]))])]]]]))])]]))])))]]]])])])))))))]))])])])])))]]])])])]))))]]))]])))]])]))]])))))])]))])]]]))]]]]])))]))])])])])))])])))]]))))]]))))]])]]]]]))))))]]))]]))))]])))))]]]]]]])]]))))]])]]]]]])))))])]]))))))]]]])))))])])])])]]]]])]]]]]])))]])]]]])))]]]])))))))]]]]])))]]]))])]))]])))]]]])))])]]]))))))])))]]]))]]])]))]])]])])]))))))))))))]]]])))]])]))])])]]))]))))]))]])])))]])]))))))))]])))))))])]])]]]))]))]])]])])]])]])]]])]))))))]])))])]]]]]]))])))))])]]))]])]))]))]]])]])]))))]]]]]]]))]]))))]))))))])]]])]])])]])))]])])))]])]])])])]))))))]))])))]))))]])])]]])])]]]])]]))]]])))))]])]]))])]])])))]])]]]]))]]]])])))))]])]]))))))))])]))]))))]))]])]]))])]))]]))]]]]])]]])])]]])]]])]))])]]])]]]]])))]]))))]]))]))]]])])]]]]]))]]]))]))]))]]))]]])]])))])]]))]]]]]]]]]]]]]))]]]])))))))]))]]]))])]])]))]]]))))])]))]]]]]]]))))))])))])])]]]])))]])))]]))]]))]])]])]])]]])]])])]]]))])]])]))]]]]))]])]]])))]]]]))])))]))])]])))))]])))))))]])])))]])))]])]))]]])))]]))))]]]))]]])])]]]])]))))])]))]))])]]))]]))))]]))]]))]])]])))))]]]]]])]))])))])))]])]))]]]])))])])]]]])]]]]))]])]))))))]])]]])])])))))])]]]))))]]]))))))])))]])])]]]]))))]]]]])]])])]]))])]])])]])])]]))))]]))]])])]))])]])]]))]]]))])))])]])))]])]])))]])))])]]))]]]]])]]))])]]]))])])))])]]]))))])]]]])]])]))))]]])]]]])))))])])))]))])]])])])))))]]]))])]])]])]]))]])]]))])]])]]]]]))])))]]])]]))))])]]]))]])]]]]))))))])]]]))))])))]]])))]])])]))])]])))])]]])))]))])]])])]]]]]]])))]])]])]])])])))]))])]])))])]]])]])])]]])))]])))])]]))]])))))]]])))]))])]]))]]]]])])])])])))))])))]))]))])))]]))]))]]])))]])]])]]])]])]]]]]]]])])]))))])])]))]]]))]))]]])]]))]]])))])))))]])]]]]))))])))))])))]]]])))])]])])))]]]]]))])))])]]]))))])]]]]))])]])])]]])))))))])]]]))]))])]]]])))])))])))])])]]]])])]])])))]))))]])))])))]))]])]))))))))]])))]))]))]]]))]]]))])]])])))]]]])]]))])]])]])])])])]])]]]]))))]])))]]])])]))]])))])])])])])]]))]]))]]]))])]]])))]]])))))]]]))))])]))))]]))))])))])))])))]]]]]])))]))))])])])])))]]]]])])]])])]]))]]]])]])))])))))]])]])))))))])])]))]))]))])]))])])]]])]]))]])])]]]]]]])])]]))]])]))]))]))]])]]]))])]))])]]))]]]])]])]))]]))]]]]])))))]])))]])]))]]])]]]))]]]]]]]])))])]]]]))]))]]])))))])]]]]]])))])]]]])))])]))]]])))])]]]]])]))]))]])))]]]]))]))])])))])])]]])])))))]))]]])]))]]]))]]]]]]))))]))]]]]]))))]))))]]])])]))])])]]]]]))]]))]))]]])]))]))])])))]]]))))]]])])])]]]))]]))]]]]])]]]]]])))))))))]]]))])])))))])]))]]]])))]))]])]))]))))))))]])]])]]]))]]))])]))))])))]]]))])))))))]])]))])]]))])])])))])])]]))))))]]))]))]))]]])]))]))]]))])]))]])])]]]]]]))]])))])])])]]])])])))])))]]))])]]])))]]])]]))])))]]])))))]])]]))])))])))])])]))]])])])]]]]])]]]))]))]]]))]])]]))])))))]]]])))]]]]])]])]]]]]]])]]])]])])])))])]]])]]))))]))))]]]]]]))])])])])]])]))]])]])))])))]]))])]))])]))]])))))])])]]]))))))]]]]]))]]))))]]]]]]]]))]]])]])))])]]]]))]]]])))]))]]])])]))))))])])))))])]])))]])]]]))]))]]))))]]))])]))))]]]))]))])]))))))))]])]])])]])])]]))]]])])]))]]]])])))]))]]]]]]])))))]))])])]))]]]])])])))))]))])]]]])]])))))])))))]]]])])]]])]]]]]])]])])))]]])])]]))))]])]])])))]]]]])))]]]]]])])]]])]])])])]]))])]]]))))]])]])))]))]))])))))))]])])])]])))])])))]))))])]]]]]])]]])]]])])))))])))])]]]))])))])))]])))))])))]]]])]]]]]]]))])]]])]])))]))]]]]]]))]]))]]))]])])]))))])]]]]]])))])]])))]])]]])))])]])])])])))])])))]]]]])])]))])])]])]]))))]]]]]))]]))]))))))))]]]))]]])]]])]))]))]))]]))]])]))]]]])]]]])))]]))))]))])])]))]])]])]]]]])]]))]))]]))]]]])]]])]]])]))])))])))]]]])))))]]]))])))]])])]))]]]))])))]))]]])])]])))]))]))]))))]))]]]])])])]]]))))]])))])]))]))]]]])])]]]]]]])]]]))]))])])))))]))))]]]))]))]]])])))]]])))]))]))))]]))]))])])]]]]))]]]))]])))))])]]))])]])))]]]]]]])))))))])])]])))])))]]]]]])]])]]]))))])]]))]))))))])])]))))]))])])])]))]))]]])])))]])]))]]]))]]))]]])])]]]]]]]))])]))]])])]))]]])]]]])))]]))]))))))]])]]]))))]))]]])))]]]))]])))]))]))))]))]]]])))]]])]]]))]])]))]))))))))]])))))))))])])])]]]))))]])]]))))]])])]]))]]]]))]]))))]])])]]]]]]]))]))))]])]])]))]))]))]]])])]]])]])))])]))]]]]]]])])]])))))]])))))]]))])))])])]]))))])])))]]]]])))]]))]]])])]]]])))]]))))]]])]])]])])))))]])]]))]]]])))))])]])])))))))))]))]]]]]]))]))))])]])]]))]]))]]]]])]]])]]))))])])))]]]))]]))]])]]]])]))]]))])]]))]]]]]])]])])))])])))))])])))]])]])))]]))]])])]]]]])))]))]]])]))))))])]]))]))]]))))))))]])]))])]]]])])))])]))))))]))]]])]]])))]]))))]])]])])]]))])])])]]]]]])]])))))])]))])]])])]))])))]])])))]))])]])))))))))))]])])]]))]]]]]])])]))]]]])))])]]])])]])])])]])])]]))])]))]])))]]]]]])]])]))])))]]))))]))]))))]])])]))))]]]]])]]]))]]]])]))]]]]]]]])])]])])))]))])))))]))))))]])]]])])]]]]])))]]))))))))]]]))]]]]]]])]])]))])))]]))]))]])))])]))]])]]))]))]]]])])))))]))))]]]])]))]))])))))]]])))))]]]]))]))))]])]]))]]]]]))]]))))))))])]))]])))]]))])]])])))]]])]]])]]])]])))))]]])])))]))])])])))))]]])]))))])])]]))]])])])]])))]]]]))]))]]]))]]]]]]))]])))]])))])]])))]])))]])]]]]))]]]]])]]])]]])])]))))]])]]]]]])])]]))]])])])])]))]]))))])))]))))])])]])))]))]]]]]]]))]))])]]]])])]]])])]]]]))))]])]]]])])]]))])]))]))]]])])]]]]))))])]]])]))))]]))]])])]])])])]))))]]]))))]]))]))])])]))]]]]])]]))))])]))]]])])))))))]])]]))))])])]])]])]])])]])]))]])))])))])]]]]])]))])]])]))))]])]]]]])]])])]))))])]]])))))]]])]])])]]]]])])]]]]]))])])]])]))])))]]])])))))]))])]))]])]])]])]]]]]]))))]))))]))]])])])])])])]])))]]]))]]))]))])]])]))]]]]]))]])))))])))))])))]])))))]])))))])))]])]]])]]]]])]))))]]]]])))]]])]))))])])]]]))])]])])]))])))])]))]))))))]))])])]))]]))])]))]])])))]]))]])]]]))]]]))]])])])])])]]]]]])]]])]))))]]]])])]]]])]])))]])])]]])]))]]]])))))]])])]]]])]]]]]]]])])]]]]])]])]]])))]]]]]))))]]))]])]))])))]]])]))]])])]]))]))))])])]))))]))]]])])])]])))]])]]))))])])]]]]]))]])])]))]]))]))])]]]))))]])))]])]]))]))]]))])]])])]]]])))])))]]]])))])))])])]]]])])]]))))))]]]])])))])))))]]]]))]])])]])])]]))]]]])])))]]]]])]])))]])])]]]]])]])]])]]]])]]]]]))])])]))]))])))]]]]))]])]]]])]]]]))))))]]))]]))]]]]]))])))]])])]))])]])))))]))]))]]))]])]))]])]))])]))])))]]]])))))]))]]])))]])])]]]]])])]]])]])]]))])])])]])))]]]])))))))]])]]]]))))))]]]))]])))))))])))))]))]])))]]]])])]])]))]])]]])])]])]))))])))]])]]])])])]]]]]))]))])))))]]]]]]]))]]))]])))]]]]))]]])]))]))]]]))])]]])]])]))])]]))]]]))))]])))]]])])]]])))]))))]))))])]]])]]]]]]]))))]])]]))]))])]]))])]])])]]))]]]]]))]])]]]]])]]]))])])])])]])])]])]])])]))]]]]]]]))])]]))))))]]))])))]]])))])))]])]])]))]]]]])]))]]))])]])))]]]]))])))]))]])])]))]])])))))]])])]]])]])]))]])]]]])])]])]]])]]])))]]])])]))]])]]])])]))]]]])]]]]]])]))]]]]]))])]]]]))]))])])))])]))])])]))])))]))))))])]]]))]))))])))])))))))]]]]]])]]])]]]]]]])]])))))))])])]))))]))]]]]]])]])))]))])])])))]])]))])]))]])))]]])))]]]]]])]]]])])])]))])]]))]]])]])]))]))))))))]]]])))])))])))))])])))]]]])))))))])]]])]]]])])]]]])])])])])])]]]])]]])])))))])))])])]])])]]))))))]])]]]])]]))]]))]]]])])]))]))]]))]]])]))))])]])]]])]]]]))]]])]])])]))])]])])]))))])]])])))]))]])]]]])])])]))))])]])])))])]))]]]])])])]))))))))]))]))]]))))))))]))]])])])]]])])]]))]])])]]])]]))])]))])]]]]]]])])])]]])])]])]))]]]))))]])])]))))))]]))])))]))])))])]]]))))]])])))])]]])]))]]]))]]]))])])]]]]])]]]))))]]])])]])]]]]])])]]))))])]))]]])))))]]])]]))])])))]]))]])))))]))])))]])))])]]]))]]))]]]]))]))))))]))))])])))))]]]))))]])))))]]))]))]]]])))]]]])]]]])]))]))]))]])))]))))])]])]]]])]]]]))]]])]))])]]])])])]])])]])]])))]]])]])]]))))])]])]])])]])))))])])]]))))]])]))]))]])])])))]))]]]])]])))]))])]])])])))]])])))]]))))]))]]]]]))]))])))])))])))]]]])])]]]]])]])))]))]))))])]))]])))]))))))]])]])]))]]))])])))]]))))]])]]])]]]])])])])])))))]]]))))]))))]])]])]])])]]))])])])]]])])])))))]])]]])))]]]))))]]]]])]]])]))]]))]]))]]]]])))])))])])]]])))]]]])])]]])]])]]]]]))))))))]))])])]])]]))))])])))])])])])))))]]))])]]])]]))])]]])]]))))))])))]])))])])])])))]]])))]))]])))))]))])]))]]]])))]]]]]]])]]))]]])])))]))])]]]]])]]))]))))))]]]))]])])))])]))]]])]))])])]])))))]]]))]])))]))]))]))]]]]]))]])])]]])))]))))))]]])]])]))]))))]]]]))])])])))]]])]))]]))]])]]))]])])]))))))]]]])))])]]])]]]])))]])])])))]]]))]))]])]]))]]]])]))])])))]])]]])])]))]])]]]])))]]))))]]]))]))))])]])])]]))])]])))]))]]]))]))]))]]))])]]])])])))])]]]]]]]]]]])]])]]))))]))]))))])))])))]])]))])))]])])))]]])]))]))]))])))]]))])]]]]]]]]]]))]])])]])])]))))]))))]]])]]])))]])))))]])])]]]])))]))]])]])]))]])))]])]])])])])])))])])]))))]]])))])])])]]]])]]))]]]]))]]))]]])])]]])]]]]]])]])))])]]]))]]])])))])))])))]]))))))])]]]])])]]))))]))]))))]))])])]]]]])]]]]])))))])))])]])))]))))]]))]]])]])))])]]]]])])))])))))]))]))]]))])]))]])]))]]]]))))]]]]]])))))])]])])))]]))]]))]]]))]]]])))])])]])]])))]]]]]]]))]]))]])]]]]])]]]]])))]])])]))]))))]))])))])])])]])))]]]))]])])]]]))])]]])]]])))])]]))))])]])])))))]])]]]))]))))])]])))]])))])))])]])]]])]]))]]))])]])]])]])])))])]])])])]])))]]]]]))]]))]]]))])])]]))))]])))])]]]]]])]])))]))]])]])))]))])]])]]])]])]))]])]))])))]]])])])]]])])]))))]])]]]))])))]))]]]]])]]))]]]]]]])))])]])))]]]])])))])]]))))]]]]))]])))]])))]]))]]]])])]]]])])))))))]]]])]]]))))]])])])))]]])]]])]])]]]))])))]))]))]])]]])]]]]])])]))]])]]]]])))))))]))]])))]]))]]))]]]])]))))]))]]]]))]]]]])]])]]]]]])))))])))])))]]])])))]])])))]]])]]])))]]]))]))])))]]]]])))]))]))])]]])))]])]])))))))]]]]]))]])]])])))])])]))]]]))]])))]]])))))]]])]))])))))])]]))]]]]])]]]]])]))]]))))])]])]])))))]]])]])])]))))))]])]]))])]]))))])])])))])])])]])])]]])]]])]]]]]]))]))))]]))]))]])])]))]))]))]]))]])]))]]]])))))]))))))])]))]]]])]]))])]))])]]])]])])))])])])))])])]]))]])]]))])))))]]]))]]]]]])))]]]])])])]))))))))))]]))])))))])])))])])]))))]]]]])])]]))]]]))))))))]))])))]))))]))])]))]]]]]]]])))))])])]]])))]]])]]))]))]]]]]))]]))])]]))])]])])])]))))]])]]]))])])]))])))]])))]))))])))])))]]]))]))]]]))]))]]))]]]]]))))))]]])])]])))))))])]])]]))]]]]))]))])])]])]])])]])]]))])]]))]]]]))]]]])])))]))]])])))]])]]))]]]]]]]])))))]]]])]))]]]])])]))]]]]])]])]]]])]]]))])]]]])]]]))))]))]])]])])])]])]]]))]])]])))])]]])])]))))])])])))]]]]])]]))])]]))]])))])]]])])])]])]]]]))])))])]])])]]))])]]]])]]]]))))))])]])))]])))])]))]))])))]]))])]]]]))))]]))]))])))]]]))]]]]))]))]]))))])])])]]])])]))])]]]]]]]))]]))))])]])))))])])]]]]))]]]])]]]]))))]]]])))]]))]]])]))]])]))]]]]]])]])])))]))))))]]))]]))]]))]]]))]])))]])])])]]]))]]])]))]]]])))))]))]])]]]])]]])))))))]]))]]]))]])])]]))]]]))]))])])])]]]]]]))))]]])]]]))]]]]])])]))))))))]]))])]])]))]))]]))]]]))))])])])])]])]])])]])]])])]]]])])]])]))])))]]))))])]]])])]]]))]]]])))])))])]))]]]]))]])]))]]]))])])]]))))))])]]]]]]]]))))))])))])])])]))]]]]]))]]))])]])]))))]])])]]]))))]]))])])))])]]))))])))])])]])))]])))]]]])))]))])]])))])))))))]]]))))]])]))]]])]])]))))])]]])])))))]])]]))))]]]]))]])]]]))])]))]))])]]]]]))]]]]))]]]]]])]])]))))]]]))))]))]]]))]]]))))]))))]]]])]]]])))])])]]))))))]]])))]])]])))]))]]]])))))]])))))])]])]])]))))]]])])]]]])])]))])))]]])))))]]))]]])]))]]]]])]))))])])]))]))]]]))))]))])]])]]))])]]]]])])])]])]]]]]))])))))]]])]])]])])]))]))))])]])]])])]]])))]]]])]])]]]))]))))))]])))))])])])]]])]]]))])]])])]]))])])]])]]))))]]))])])))]))))]]]])]))])]]]]))]])]])]]]])]]))])))]))]]]]])]]]]))))]]]))]))]]))]))]]])])])])]]]))])))]))]))]]))])))]])))])))))]]]])]))]]]))))]]))]]])]])]]]]))])])])])]))]]])]))]))]])])]]]]])]]])]]]]])])])))])]]])))))))))))]]]])])]]))))))])]))))]])))])))]]]])])]))]]))))))))]])]])]]))]]]]])]]))))])])]]]]])]]])])]]]])]))]]))]]]])))]]])]))]])])]))]]]]))]]])))]]])]]))])]]))]]])]]])]]])]]]))]))]])]])]]]]))])))))]])]]])))))]))]))]])])))]]])))))]))))])])])]])]))]))]))]))]]])]))]]))))]])))]))))])))]])]]))))]])]]]))])))])])]])]]]])])])]]]])]]))])]))]])]])]]]]))])]]]]]))])])]]]]]])]]]))]))]]]))))])))]])])]))])]])])]))]]])]])]))]]]))])))]))])])))]]]])))]])))])])]]]]))]))]])]])))))]])]])])]]])))))]))]]]))]))])]]])]])]))]]])))]]]])])]]))])])))]]))]]]]))])]])])])])]]]]))))))]))]))]]))))))]])]])])))]]]))]]))]]]))]))])]]])])]))])])])]]])])))])]))])]])))))]))]]]]])]))]]])])))]]]]])])]]]]]]]])]))])]]]]]])))]))]))])]])])]))]])]]]]))]])))]))]))])]]))]])])])]]]])])])))]])])))))))]]]])]]])]))]])]]]))]))))])])]]]])])))))))])))))]])])]]]))]]])))])))]]])]]]]])]))]))))]]]]])]]])))]])]))))]))])]])))])]))]])])])]))))))])]))])]]])])])])))]]])]]])])])]))))]])))])]]]]]]])]]])))])]])]))]))]))]]])))])]]))))]])))])]))))]]]]]]))])])])]))])]]]]]))]))))]]]]]])]]]])]])])))]]]])]]))])]]])))))])]]))]])])]])))]]]]]]]]]]]]))]))))]))])]))]))]))]])))]])]]]]]])])])))]]]))))])))])]]]])]]]])])]])])]]]])))])])))))]]])))))])]]]])]))]])]])])])]]])]])]]])]]]]]))))))]))])))))])])]]])]]]))])]))]]]]])]))])))]))]))]])]])]])))]]]]])])]]])))]]]))]]])))]]]])))]])]]))]])]])]]))]]]])))])]]]]]]]])]))])))]])))]]]]))])])]))])])]]))])])]])]]))]]])]])]]])]))))]]]]])]]])]]])]]])))])))])])]]])))])]])))]]]])]]))]])]]))))]])]])]))]))))]]])]]]]])]))]]]]])))))]]]]))))])]]]))]]])])])])])]))]]))])])]])])])))])])]]))])])])]]]]])]]))))))]])))]))]])]])))))])]))))])]))])]]])]]]])])])]]])]))]]))]))))))]]))]]]]]]]]))))]])])]]]]))])))]])]]]]])])]])))))]))]]]]))]))])])])])))])))])]]]))])))])))]]]]))))]])]])]))))]]]])))]]])]))]])]]))]]]])])))]]])])))]]))]]])]))])]])))])]]])])]])]))]])])]])]]))))]])]])]]])))]]]]]]])])]]])]))))))])]))])]])))))]]]])]]]])]])]))])]]]]]))]))]]))]))])])]]))]])])])]]])))))])))]]))])]))))]]]])])])]])))])]])]]]))]]]]])))]]]]]])]])]))])])]])]]]]]))]]]]])))]]))))))]))]]]]]])]))]]))])]))])]]]))))))]]))]]]]]]]])])))]]))])]]])])]])])]])])])]]))]])]]]]])))]]]]]]]]])]]]))]))]))])]]]]))])))])]))]]))]]]]]]]]))))]]])])]]]]))])]]))]]]))])])])))]))])])]]))]]]])]]])]]]])]))]]))])])]])]]])]))])]]])]]]))]]]]])]])]]]]]))]])]])])))]]])]])])])])))]])])))])]))])))]]))]]]]]))]))]]])]]])])]])]]]]])]))])]]])]))])]))]])])]))))))]))]])]))]])]))]])))]))))]])]))])))))])]])]])])])]]]]])]))])))]])]))))))]]])]]]]]]]]])))]))))]]])]))))))))]])]]])))]))]]]))])))]]]]]))))]]]))))]]])]]]]])])]]]))))]]])]])))))]]))]]])])]]))]))])])]]))])))]))]))]))))]]]]])))]))])]]]]))]]])]))])])]]))))])])])])]]])]]]]]))])]])])])])))))]))])))]])]]))])))])))))]])]))]]]]]])])]]))]])]]))]))))]])))]]))]))))]))])]]]]])]]]))]])))]))))]]))))]))]]]]]]]]])]])])]]])))))))]))]])]))]])]]]])]])]])]))))]]])]])))])]))))]]]]))]]]]]]])]])])))))]]]]])])]]]))]]])))])]])])]])]])]]]])])))]]])])]])]])))))))]))])))))])]))]]]]]])]]]]]]))]])))]])])))))]]]]]])))]])]]])]]]])])])))]))]]]]]))])])])]])]]]]]))))])])]]]])])]])]]]))]]]]))))])]]])]]]]))))]))]]]]]))]])])))]]))]))))])]]])]])))))))]))])]])]))])]]))]]))])]]])])))]))])))])))]]])]]]]]]))]))])))])))))])]))))])])]))]))]))))])))])]]])])]])]]]])]]])])]]]))]]]]]]]))])])])))]]]]])]))))]]])]]]]])))))])])]]]))]])))]]]))])]]]]]])])))])]]]]]]]]]])]])]])]]]]))]]]))]]])))]])])])]])))])])]))]])))]])]))])])))]))))]])))]]]))])]]))]]))]))])])])]]]))])]])]]))])]]])))]]])))))))))]]])]]]))]]])]))]]])])])])]])])))]))])])))]]))]]))))))])))])]]])])))]))]))))))]]]))))])])]]]])]])))])]]))])]))]))])))))]]])))]])]))])]]]))]]))]]]))))))]]))]])]])]]])]])]]]]]))]])])]]])))))]]]))]]))])]]]))])]]])]])]])]))]]])])]]]))])]]]]]))])]])])]]]]])])])]]]]]]]]])]])])]])))])))])]]))]))])]))]]]])])]]))]]))])]])])]])))]))]])]]]))])]))]]]]]]]))]]]])]))]])))))]])])])))))])]))]))))]]])]]])])))))))))])]])]])))]]))))])]))])]])))])))])]]]])]])])]]]])]))]))))]])))]]))]]))]]])])]]))])))]))])]]]]))))))]]]))]))])]))])])]]]))]])]]])))]])]]]]))])))])]]]]])])]]]]))]]])]))])))])))]]]]]]]))]))]])))]]])]]])]])]]]]))))]])]))])])])]]))])])]]]])]])]])]))))]))))]]))])))]])])])]]])))]]]]))]]]]))]]]])])))])]])))))])]]]])]))]))])]])]]]]])]]]])])))]])]]))))])])))))))]]]])])))))])]])]]))]])]))))))))])]])))])]]))]))))))]])])])))]]])]]]]]]))])]])]])])]]])]]])]]]))]])])]]])))))]))])]))]]))])]]))])))]]])))])])]))])]))])])]]]))))))])])]))])])])])]])))))))))))))])]]]))))]]))])])))))]]]))]]])])]]]])))]])]]))])]))]))]]))]]]])]]]])]]))))])]]])])]]])))]]]])]))])])])])])]])]]]]]]])])])]])]]])]))]])))]])])])))]])]]]]]))]]])]]))]]]])]]])))))]))))]]]])))]]]))])]])])]]]))]))]]])))])]]])])))))))])]))])))])]]])])]]])))])])]))]])]]]]])))))]]]])]])]])])])))]]]]]))))])])))]]])]]]))]])]])])])]))]]))))]]])))) ([[((((((([[[[[(([[[[([([[[(([[[[[(([[[((((([[(([[([[[(([((([[[[(([[([(([((([[(((((([[[([[([(((([([((([[[[([[((([([([[[[((([[([[([[(([(([[([(([[[([[[[(([[(([(((((([(([([[[((((([((((([((([(([[[(([[[([([([[((((([(((([([[((([[[([((([[((((([(([[[[[[[([[(([[[[[[(((([([((([([[[(([(((([[[[([[([([(([(([[([((([((([((([[(((([[[[[([((([([[([(((([([(([(([([(([([[([[[[[(([([[([([[[[[[[[(((((([[[(([(([[(((([(([[[(([([[([([[[([((([[([[([[([(([(([[[[[((([[[[((([([([((([[[((((([([(([((([[[[([(((([[([[[[[([((([([([([[[([(((([([((([([[[[([(([(([[([[([(([([([[(([[((((([[[[(([([[[[[[[([[[[[([([[([(([((([((([[[([[[((([[[[[[([([([[(([([[[([([(([[[([(([[[[[[([(((((([((([[((([(([[([(((([[[[[[[(([([[[([((([([((((((([(([[[(([[[([([((((([(((([[[[[[([[([(([[([[([(([(([(([([([([((([[(([[(([[([([([[[[([((([[[(([[(([((([(([([(((((((([([[([((([(([[((([(([[[([[[[([[(([[[([[[[[[([[[[[[(([[[([(([[[(([[(([([[[[[(([[[([((((((((([[([[([[((((([(([[[[([[[([(((((((([[(((((([([[[([[((([[([([([[((((([[[[[[(((((([(([[(([[(((([([[[[[([[[([[[(([[(([([[[[[([(((([([(((([[[((((([([[([[[[([((([([[(([[([([([[[((([(([[[[[(([[[(([[([[((([[[[((([([[((([[[(((([(([([([([[[[[[([([[([[((([[([((([[[[[([[[(((([((([[(((([([([((([([(((([([[([((([[[[[((((([([[[[(([([[([[([[[[(([([[[(([(([(((([(([([([((((([(([((((([([(((([([[[[(([[((([([[(([(([([[[(([([[[[[[[(([([([[[[([([[([([[[[([[([[[((([[(([(([((((([[([[[([((([(([([[[[([[([[([[[(([[[([((((([[[[(([[([[((([(((([[([([([[([[([(([([([[(((([[[[[((([(([[([([[[[([[((([([([([[[[([[[[[(([([([[((([[([(([[((([(([([[(([([[[(([[[([([[[[(([((([([[([([([[((([[[((([((([[(([((([([[([[[[([(([[[[([(([[([([([[[[[[[([[[([((((([(([[[([[(([[(([[(((((([((([[[([(([(((([(([([[(((([[(([[[([([((([[[[[[(([[[[([[([[[[((([(([([[[([([([([([([([((((((((([(([([[[((([([(([[[[([[[((([[[[(([[([(([([(([([([(([([([[[((([([[[((((([[[[[(((((((((((([[(((([[[([((([([[[([[([[[[([([([([[[[[[([(([(([[(([([(((([[[[[([[(((([([[([(([([([([([[(((([([([[[[([[(([[(([([([((([[([([[[[[(([((([[([[([([[[((([([([[[(([[([([[[([[([((((((([([((([[([[[([[((((((([[([[([[[([[((([[([[[[(((([([((([([(((([(((((([(([[[((([([([[([[(([[(([[[(([[[[[[[[[((((([([[([(([[[[[[[([([(([(([[([[([(((((([[[[[(([[[[([([[(((((([([[((([[([([(((([([[[(((((([[([[([[[(((([[((([[([[[([([[[((([([([(([([([[([(([[[((([[([([([((([[[([[[[(([[([[([([[([([((([[([[[[([[[(((([[[[[([(([(([([(([(([(((([[[((([([([[((((([[(((([[(([[([(([([[((([([([(((([([([[([([[((([[[(([([([[([(([(([[[([[[[(([([((([[(((([([([(([(([[(([[(((([([(([([([[[(((((([[[[(([[[(([(([((((((((((([[([[([(([(([([[(([((([[[([(((([(([((([([(([([[[[[([([([[(((([[[[[([[[[[([[([[([[[[[(([([[[[(((((([(([((((([((([([([([([[[([[([[(([([([([[[([[(([[[([[[([[[((([([[([([((((([[[[([([[(([[([(([[([[([[(([[[([([[[[([(([(([(([([([[[((([[[[[[[((([[[[((([[[((([[([[([([[[([[([[((((([([[[[((([[[[[[[([([[[(([[[[[(([((([([[((((([([([[[([((([(([([[[[[[[[(([([[([((((([[[(([([(((((([[([(([[[[([[[[([(([(((([[(([([[[(([(([[[([(([((([[(((((([(([[([([[[(((([[[(([[[([[[([[[[[([(((([[(((([(([([([[((([[[[(((([([([[[((([[(([([(([[[([((([([((((([[((((([[([[((([([(((([[[(([(([[((([(([([[([(((([(((([(([((([[([(([([[((([((([[[([(([(([[[[[[([[([([[(((([([[(((([([([([[(([([[([((((([(([([[(([[[(((([[([(([[[[[([[[[[([[([[[[((([[[(([[[[(([[[(([([[[((((([[[([([((([([([[([[[[[(([[[(([[(([([[[(([([(([([[([((([((([[((([[(([[([(([((((([([[([((((([((([((([([[[((([([([((((([(((((((([([((([(((([[([[([[[[([[((([[[[[[(([[[([[([[[(([(([((([(([[((([[([(((([[([(((((([([([([[((([([((([[[(([[[((((([[([(([[[((([([([[(([(([[([(([([[[[[[[[[(([([[[([[([([[[(([([(([([([([([(([(([[[[([(((([((([[[([([[(([[((([[(([(((([[([[[[(([[[(([([((([([([[([[([[(([(([[[[[[([[[([([(((([[([[(([[([[([[[[([((((((([[([[([(((([([[[[(((((([[[[[(([(([((([[(([[[([[([[[[(((([((([((([([([([([((((((([(([[([(([[[([[[[((([[((([[[([([(((([([[(([([[[[((([[(((([([(([(([([(([((([([([((([(([((((([[((([([[(((([((([[[[[(([[(([([[[[(([[[[[(([[[[([[([[[([[([[[[([[([(((([[(((([((([(([(([[([((([(([[[((([[(((((([(([([[[[[([([[[[[(((([(((([[[(((([[[((((([[[(([[[([([([(((([[((([[[[[([([((([[[[[([[([[([(((([[[(([((([[[([[(((([([(([([[[[[([[[[[(((([([(((([[((([[([([(((([[(([([[[[[(([[[[(((([[(([[[[([([([(([(([((([[[[(((([[([([([[[((([(([([[(((([([([[([[[([(([([[(([[[[([(((([[[[([([((([([(([([[([[((((([[[([([[[[([[[(([[[(([[[([[((((((([([[([((([[([[[((([[[([[[([([(([([[[[((([[([((([(([[(([(([([([[(((([(((((([((([[([(([[[([[(((([[[[[(([((((([(([((([([([([(([([[([[([[([(((([(((([[[([([[(([[([[((([[([[[[[[(([[([([((([[[[([[((([[(([[[[[([[([((((([[(([[[[([(([([[[[(([(([[((((([[[[([[(((([[[(([[[[(((((([(([[[[[[[([[([(((((([[([[([[[[[([[([[[([[[[[([[(((([((([([([([[([([[[(([(((([[[(([[[((([(([(([[[(([[[((([(([(([((((([((((([[[([([(([[[([[(([[(((([(([(([((([((((([([([([([[([([(([([([[[[(([[(([([([[[([(([[[([((([[[[[((([[([[[[[([(((([([(([([([[[(([[[([([[((([[([[(([[(([(((([[((([((([[((([[[(([[[(([[([(((([(([(([[[((([[([((([[[([[((([((([(([[[[(([((([([((([[([([([[(((([(([[[([([[[([((([((((([([[[[[(((([((([(([([[(([([((((([[([[(([([([[[(((([[[(([(([(((([[[((([[[([[((([[([([[[[(([[[(([[[((((([([[([([[[[((([[([([[[[(([([([[[[[((([[(([[[([([[[[(([[((([([((([([[[((([([[[[[[[[((((((((([([([[[[([((([([((([[([(([[[[(([(([[([[(([[[(([[[[[[[[[([[([([[[[[((((([([[[(([((([[([[[([[[[[[[([[[[[[(([[[(((([([[([(([(([([([[([[((([[(([([[((((((([(([[(([(([(([([([[[[[(((([(([[[([(([([([[(([[([([[[[[[[([((((([[([[[([[[[[[([[[([[[[[[(((([([(([(([([[[[[[(([[([[[[([[([[(([(([[[([([((((([[(([([[[[[([[([([([([[[[([[([(([((([[[[[[(([([([[[[([(((((([((([[(([((([[[[([[[[([[([[[([[(([((((([((([[([[[((([[(([((((((((([[([[(([[[([[[([[[[(((((((((([([(([([([(([([[([[[[[[[[[([(([(((([((([[(([[[[((([([([(([[[([([[[[((([[[[(([[[([[(([([[(((((([(([[[[[(((([[[[[[([[((([([[(((((([(([[[[([[[(([[[([[([(((([[([([((([(([[((((([((((([[(((([([(([[[[([[[([[([[[[([(([[[(([(([[([[[([[[[[(([([([([[((([([([([[([((((((([([([(([[(((([[((([[[((([[([(([([[((([(((([([([[((([([([[(((((([(([[([(([([(([[[([((([((([([([(([[((([([([[(((([[[((([(((((([[(([[[([[[([[([((([([[([[((([((([([([([(((([(((([[[((([(([[([[[[[([([((([[[[[[([[[(([[([[((([[([[[([([[([((((([[([(([([[[[([([([[(([[[[[[[([(([[([[((([[((([([[[([[[([[[([[[([([[([([([[([([[[([[[([([[([([[[([[([[(((((([[[[([[([([[[([[[[[([(([[[[(([[[([([[[[[[[((([[(([(([([([([([((([([[[([(((([(([([[([[([[([([[[[([[[([([[[(([(((([[((((((((([([([[[(([([[[(([(([[([[[([((([([[([[(([[(([[[([[([[[([[([[([([[[[((((([[[([(([[[((([(([(([[(((([[([([[[[[[([[[[[([([([[(([([(([([[[[[(((((([([[((([[[([([[(((([([(([([[([(((([(([([([([[[((([((((((([[([[[([((([[(([([([[((([([[[[[[[[[((([((([((([[([[([(([[[[(([([(([[([[(([(((((([([([[([([(([[[([(([[([[([[([(([[([([[((([((([[[(([([([[[[((([[[[[([([([[([(([(([[[[(([[[[([((((((([[[(((((((([((([([[[(([([([[(((([[([[([([((([(((((([([([([((((([[(([(([[[([(((([(((([[(([([[[[[[[[([((([[(([([((([[[[(([[(([((([[[(((([(([[[(((([((([[[[[[[[((([([[([((([([[([([(((([[[[[[([([(([(([[[([([[(([[(((([([([([([[[[(((([[([(([[[[([[[[[[((([([((([([([[[([(([[(([(([(([[([[[[(([[[(((([[[[[[[(([([[[[[[[[[([[([(([[([[([[(([([[(([([[[[([([[[(([[(([(([(([[[(((([([(((([([([(([[[([([[[([[((([([[[[([[([([([(([([(([(([[([([[((((((([([(([([[[[[[(([[[[(([([([([([[(([(([[[([[[[[([[(([[([[((([[([([([([(([(([[[((((([([[[([([([([[([[([([[([[[([[[([[[([[[[([[[[[((((((([(([[[([(([[((([(((((([([([[[(([[(([([(((((([([[([[[[[[[[(([([([[[[[[[[([[([((([[([[(([[[[(([([[([[(([[([[[(([([[[[([[((([[([(([[(([(([((([[[([[[([([((([[[(([(([([([([[([(([[[(([([[[([([[(([[[[([((((([(([[[(((([(([[[(([(((([[((((([[[([[([[(((((([[([(([[([[([([(([[[[[[[([(((([([((([([[[([(([([(([([[[[[[[(([(([[[[[[(([[(([[([(([[[[(((([[[((([[([[(([([(([([(([[[(([[(([[((([[[[(([[([([[[([([[(((([[[[([(([[[([([([(([[(((([([[[[([(([[([[([(([([([([[(([(([[[[((([((([[[[(((([([[([[([[[(([[([([(([[[[[[([([([[((([(([((([([((([[([[[[[[[([(([[(([(([[([((([[([[((([((([[([[([[(([[[[[[[([[[[[(([[(([[([(([[[([([(([([((((([([((([[[[[([((([[(([([[[[[[[[[[[([[([[(([[(([[(([[[[([[(([[([(([([(([[((([((([([([(([[[(([[[([((([(([[[[(((([([(([(([[([[([[[((([[[[[(([[[(([([[([[([([([([([((((((([([[(([([((([[([([[([[((([((([[((((([[[(([[[(([(([[[([([([(((([([([[[[(([[([[((([(([([((([([([(((([([[[([[([[(([[([([[([[[[[(([([[[[[(((([([([([[[([[(([[[([[[[[[[[(((((((((((([([[[[((([(((([[(((([(((([([([([[((([[([([[(([([[((([[((((((((([(([((([[[[[([((([([[(([[(([([([([(([((([(((([[(([(([([[[(([(([([[[[([([(([[([([([[([(([([(([[([(([[[((([(([[([([[[([[(([([[[([[[([[(([([[[(((([([((([[([[[[([([[((([[([[([[([(([[[[([[([[[[[[[(([([[([[[[([(([[[([[([([(([([[[(([[([[[[[([[[[(([[[[([([((([(([([([(([[[[[([([[(([[[[(([(((((([([[((((((([([[[[[([[([([[((([([((((([[[[[[[(([(([[[((([[[((([[([([[[(([([([((([[[(((([([([(([[([[([[([[[(([[([([([[(([([[([[([([[[[((([[((([([[[[[[(([(([([[([([([[[([[[[([[(([([((([(([([[[[([([[([(((([[[([[[([[(([([[[([[[[[[(([[[[[(([[([[(([([[[[[[[(([([((([(([[[[([[(((([([(([([([[[(([[[[[([[[[[((([([([[(([[[[([[([([[[[[[[[([([([((((([[[[[(((([[((([[([([[([[((([[[([(([[((([([[(((([[[[[([((([[([([((([([([[(([[[([(((((([(([[[[(([[[[[[[[([[((((([([[([[[([(([(([[[([[[[([([[[(([([[([(([[[[(((((((([([(([[[[[[[([[[(((([[[(([(([[(([((([[[[(((((((([[((([[[([[[[([([([[([(([[[[[[[[([[[(([(([(([[[(([[[[[((([[([(((((([[(([[[(([([((([[[([(([[[(([([([[[([([(((((((([[(([[([[[[[[[(((([[(([[(([[[[([([(([(([[(((([[(((([[(([[[(([[(((([[[[[[([(([[(((((([[(([[[(([[((([[((([([[(([[[(((([(((([[(([([(([[([([((((((([([([((([(((([([((((([[[[((([((([([([((([[[[([[[[([((([[[([(((((([([(((([([([[([[(([((([[[([([[(([[(((([[[([[[[(([[[[[((([([((([[([(([((([[[[(([[(([(([[[[[(([[([[[[(([([[[([[[[(([[([([[((((([[([([(([([[[(([[[((([[(((([([[([(([[([[(([[[[[[[[(((([([((([([[([(([(([([[[((([[((([[[(((((((([[[[(((([[[[(((([([[([([[[([[([(([([([([[([[[((([([[([(([[[[[[([([[(([[([[([([[(((([[([[(((([[[[[[([[[([[([[((([([[((([([[[([([(([(([([((([[([[(([([([[([[[([[[[[([([([(([[[[[((([([[[[[[((((((((([[([(([[(([(((([[([[([([[[(([[([[(([[([[((([[(([[(([(([[[[[[(([[[[(((([[[[[([[([([[[[([(((([[([[((((([[([([[([(([[(([([[([([([[([[[[([((([[[[((([([(([([(([([([[[[(([[[[[[[([[[[[([[([[([[(([(([(([[[([[(((((((([[[[(([((([((([([[[[[((((([[[[([[(([((([([(((([[[((((((((((([(([[[[[[((([[[(((([(([[[[[([[[[(([[((([[[([[((([([(([([[(((((([((([[(([(([[[[[(((([[[((([[((([([[((([((([[([[[([([[((([[[((([([(([[[[(((([(([[[([[([[(([[[[[[[[[(([[[([([[[[[([[((([[([[[(([[((((([(([[(([([[([[[(([[[[[(([[[([([([[(([(((((([[((([(([(([[((([([[([[(([((([(([([([([[(((((([([[[[((((([((([[([[([[[(([[[[((([[[[(([[(([[[[[[([([([[([((([[[[[[[[[[(([[([[(([[[([((([[[([([([([[[[([[[([((([[[([(([[(([[(([(([([([[((([((([(((([([(((([((([[((([((([[(((([([(((((((([[[([[(((((([[[[[[((((([([[([[[[[([[(((((([(((((([[[((([[[[[[([(([(([[[[[[(([[([[[([[[([((([([[[(([([([[([([([((((([[[[[[[([((([[((([([(([[(([[[((([[[([([(([[[[[([[(((([([[([[(([[[[([(((([[[([([[(((([((([([[[(([([([([[[([([[[(([(((((((([[[[[([[((([[[[(((([[(([([([(([[([[[((((([(([[([((([[[[((((([([(([([([([[[[[[([[([((([[(([[[[(((([((([(([((([([[[[[[[([(([[[((([(([(([[([[([[([(([[(([([[[(([[[[(([[(((([[[([([[((([[[[(([[(([[[[(([[([(([(([([[[[[[[[([([[([[([(([[[(([[[([[((([[([[([(([(([[[([[((((([[[(([((([[[([([((([[[([([[[[[[[(([([[([[[(((([[[([((([[((((([[([[[[(([[[([[([[([(((([[([[[[[([([(([([[([((([[((([([(([[([(([[[[[([([[(([[((([([[(((([[[[[[[[[[(([([[[([[([([(((((([[((([[([([[(([(([(((([[[((([[[[((([(([(([(([[(((([[[([(((([([[[[[[((([[[([[((([([[[([[([[[((((((((([([[[([(([[[([[[(([(([(([[((([([(((([([[[([[[[[(([([(([[([(((([[([((([[[([([(((([[([[((([[(([(([[(((([[((([((([((([([[([(((([([([[[(([[[[[[([[([[((([([[[[[[[(([([[[(([[[[[[(([[[[[[((([[[([((([[([(([[[[([(([[(([[[([([([[((([[[((([(([[[[([([([(([(([(((((([(([([([[(([[[((((([([[(([(([([(([[([[[([[((((([(([(((([([(([[(([[([[[((((([(([(([((([[[[[([((([[([(((([[[[(((((([[[[(((([[([[[[[[[[([[((([[([[[[[(((([((([[[((((([([[[[[([(([[([([((([[[[[[([(([([[([[([[((([[([(([([(([((([([[([[(([[[[([((((((([(([[([([([[[[(([[([[((([[[[([([(([([[[[[([(([[([[[(([([[((([([[[([[[([((((((([[([(((([([[((((([[[[(([([([[(([[([[[[([[[(((([[[[[[[[(((([[([([[([(([[[([([(([((([(([(([(([([(([([[[[[(([([[[([(([(([[[((([(((([([[([(([[[[[([[(((((([(((([[[[[(([[([([[(((((((([([[[[[((([[([([[([([[[[([([[([((((((([([([[[[[[((([([([[(([([[(([([[[[[((((([[([[([([[[([([[([[[([[([[[[[([(([[[[[([[(([[([([([[[(((([[[([[[[[(([([[([(([[([[[(([([([[[[[(([([[([([(([(((([[(([([(((([[((([((([([[([((([[(([[[[[[(([(([[[(([[[[[[((([[((([([([([([(((([(((([(([([([[[(([[[((([[([[(([[[((((([([((([([[([[[[([(([(((([[(([(([[[[([((([([([((([[[[(([(((((([(((([((([[([[(([[[[(([[((([([([([([([(((([(([[[(([[[[[([(([([[(([[([[((([([([([([([(((([([([[(((([((([([[[[[[([[([(([(([((((([((([([(((((((([([[((([([[(([((([[[([((([([[([([[[[([[[(([(([[[[[(([([[((((([([[([[[[[[[[([[[((([[([([[(([[[[(([([([[([[(([([[[[[((([[[([[[[[(([((([([[[([(([[[[(([([([(((([((((([[[([((([([[[(([([([(([[[([((([((([((([[((((([((([([([((([((([([([[[(([(((([(([(([(((((([([[([[((([[(([[[[[([[[(((([[[[(((((((([[[[[([[[(([([[([(((((([[([([(([[([[([(((([(([([[[[([([([(([[[([(((([[[([([[((([[([[([(((([[[((((([[[[[[([(([([([[[([[([(([[[(([[([[[(([[[((([[[([([([((([([[([[[(([(((([[([[[[[((([(([([[([[([([([(((([([(([([([([(([[([[[([(([[((([([((([[[[[[[[([[((([[(([((([([(([([[(([((([[[[[(([[[[(([[((((([[([((([([[[([([([(([[[[[([([[[([(((([((([([[[((([[([([[([[([([([[[[(([(([[[(([([([[[[([[[((([(((((((([(([([([((([((([[([(([([([[(([[[(([[[((([[[((([[[[[([(([([[([(([[[([[((((([((([[(([([[(([(([((([((([([([(([([[([[[[([[([[(((([[[[[[(((([[[(((((([[[((([([[(([((([(([([[(([([(((([[(((((([[(([([([(([((([(([([([[[([([([[[([[[[[([[(([(([[[([([[[(([[(([([[([[(([(([([[(((([[(([(([[[[([[[[([([[[[([[[([((([([(([[([[([[[[[[[([([(([[[[(([([[([((([[([[(([((([[[([[([[(((([((((([(([[[[[(([[((((((([[[([[[(([(((([([((([(([[([[(([[[[[[((([[([([[(([[([[((([[([(([[[(((((([[([(([[([(((([(([[(([[([[([[[[((([[([([([[[(([((([(((([([([[[(([([[[(([[[([(([((([[((([[(([((([[((([[[([(([[[[([[[[[[[[(([(((([[[[(([[([[(((([((([[(([[([[[((([[(([[(((([((((([[[([[[((([[[[[[(((((([([(([(([([(([[[[(((([(([[[[([([([[[[([[[[[[[(([[(([([(([[[[[([[((((([([[([([([[([[((([[(([[[[[(((((([[(([[[(([(([[([[([[((([[((([[([[[(((([[[(([[([([((((([([[(([[([(((([([((((([[[[[[[(([[[([([[(([[([[[[([(([(([((((([[(([((((([([[(([[([[([(([[([([(([(([(([[(([([[[[([[[[[([[((([[((((((([(([([[[((([(((([([([[[(((([[([[((([((([[((([([[((([([[(([[([[((([[((([[[((([([([[[[(([[([[(([[[((((([([([[[([((([(([([([([(([[[[[([(([((((([[[[(([((([[((([[(([[((([[[[((([[[[[(((([[[([[([[(([[([(((((([[[[[[([[([[([[(([(([(([[[[[([([[[[[(((((((([[(([(([(([[[[[((([([[([(([([([[[(([([([[((([([[[[([((([[(([((([(([[([([([([([[([[(([[([[((([[([[[[(((([(((([[(((((([([(((([(([[[[(((([([[[[([((([(([([([(((([[(((([[[(([([[((([((([(([[((([([[[[((([[[([[(([[[[([[[(([[[(((([([[((([[[([[([((([(([[([[[[[([[([(([[([[[[([[(((([([[[([(((([([([((((([[([([[[([[[([[[[([[[[[[((([[[((([((([(([(((([[(([([[[(((([[((([([([(([((([[([[([[[([[[((([[[[([[([[[[[[[[[([[[(([([([[([[[([[(([[([([[[((((([[[[(([((([([[([(([[[[((([([[((([(([(([[[(([[[([[([[[[((([[((([[[[[([[[(((([(((([[((([([[[([([[([[[[([(((([([([(([([((([[[([((([[([((([(([([[[([[[[(([([(([[([[([(([([(((([([[[((([((([([[([(([((((([(([([([(([[([[[[[[((([[([[[([[([[[[[([((([(([[[[(([[(([([[[[([[[(([((((([[((([(([([[(([[[([([((([(([[([[[[((((([(((([([([((((([[([[((([([([([((([[([[([(([([[[([[(([([([[(([[((([((([((((([[(([([(([[[([(([[([(([[[([([((([[(([([[([([([(([[(((([[[[(([((([[[((([[[[((([[[[[([(((((((((([((((([(((([[([[([([((([(([[((([[([[([((((([((((([([[(([[[[([[[[[[[[([([([[[(((([(([([((([[(((((([[([([([[[((([[([[((((([[([[[([([([[[(([[[(([[([[([[([[[[[([[((((([((([[(([[([([([[([([[([[(([[[[[([[[(((([[[([[([[([((([([(([(([[(([([[[[([[[(([(([[[(([(([[[(([([([([[[([[[([([([[[(([[([([([([((((((((([(((([([([(([[((([[[[([[[[([[(([[([[((([[[([(([[(((([([[([([[[([([([([([((([[((([([[[([[[[(([[[([[[([(((((((([[((([[[((([([[([[[([(([([[(((((([[(([[((([[[([[[[[[([([[([((((([([[([[([[(([([(([([(([[[(([((([[([[[((([([([[([([[([[[([[[[((([[([[[(([[[[[[[[([((((((([(([(([((((((((([([(([(([[[([[([[[[([((([[[((([[([([((([(([([[[[(([([[[[[[[[[[[[((([([((((([[([[([([([(([([([((((((((([(([([[[[[((([[[((([(([([([([(([([(([([(((((([[[(([(((([([[([([(([[((((((([[([[(([(([[[[[[[([([([([(((([(([(([(([[((([([((((([[([[([([((((((([([([[[([([([(([[([(([([([([[[[[[[[((([([[(([([([([[[([(([[[([[[([([(([([[[((([([[([[[[((([(([((([([([([(((((([([([(([([([[[(([([[(([[[(((((((([[[[[([([[[(([([[((([[[(([[[([(((([([([[[[([([[([([[[([[(([[[([[([[[([[([[([([[[(([[([([([[([[[([[([[([((([[[((([[[([[[[[([[[([(([[[[[[([[[([[(([([[((([((([([[[[(([([[([([[([(([([([[[[[([((([[([[([[((([[([([[([(((([[([[((([[([[[([[[[[([([(([([[[[([((((([[(([(((([(([[[[(((([([(((([[(([((((([([([[[[((([[(([[[((([([[([[[[(([[([([((([[((([[[([[[(((([[([([(([[(((([((([[[[((([[[[(([[[([[[[([((([(([([([([((([[[([[(([[(([[([((([([(([(([[([(((([[([[([(([([[[([[[[(([([[(([[(([([([([[[(([[[(([((([(([[([[((([[((((([(([(((([(([([(((([((([(([[[(([((((([[[([(([([([([[[[[(((([[[([([[(([([[([[([[([([[(([([([([[[[[([[[([(([[[([[[[((((([[(([(((((([[[([[(([[((([[[((([(([[[[[(([((((([(([([([[([(([[[(([([(([[(([([[[[[[([[[(([[[([([([(([((([([[(([([[[[([[[[(((([([[[[[([[[[((([(([[(((((((([[[[[([([[[(((([[([[([[[[((([[[((((([[([((([[(([((([[[[(([((([[[(([[((((((((([([([[([[([[(([[[(([([([[([([(([[([[([([[[([[[([((([[[([([([(([[[[((([(([([[[[[[([[[[[[(([[[[[[([[[[[[(([(((((([(([([([[[[((([[[(((((([((([[([(([([([[[([((([[[([(((((([[[[[[(((([([(((([([((((([[[[[[[([((([[[[[[[([[[(([[[([([[[[(([(([[(((([([(([(([(([((([[[(([[([[([[(((([([[[[(([[[([([[([[[[[(([([(((((([([[[([([((((([((([[[(([(([[[[([([[(([[([[[[[(([([(([((([([(((([((([[[[[([(([((((([[([((([((((([[([[(([[([[([([([([[[[[[[[([(([[([[(((((((([[(([([[([[[[((((([[[([[([(((((([((((([(((([[(([[[[[([[([(((([([([([[[((([[([[((([[(([((((((([([(([[[[(([(((([([(((([(([((([([[[([([([[([([(([([(([(((([[[((([[[[([((([[[[[(([[[(((([((((([[(([[([([([([([([[[[(([[[[((((([[[([([[([[([((([([((([([([[([(([(((([((([(((([[[[((((([([(((((([([([[[(([[([[[[[(((([[((([[[([(([([[(([[([[(([([([([[[[[(([[([[(((([(([[[[([[[([[[((([[[[[[[[((([[(([[[[[([[(([([((([([(([[([[([[[((((([(([(([[(((([((([([([([(([([((((([((((((([[([[[[(((([(((([[[[[([[((([[[([(([[([[[[(([(([[[[(((((([[([[[[(([[[[(([[([[[([([(([([((([[([[([[(([[([([(([([([(([(([((((([[[((([[([(((((((((([[(([[([[(([[((([[[(([(([(([(([[((([[([([([[[([([[[[((([[([(([([[(([[[[[([(([([[[([[(([([([[([[[[[[[((((([[([[[[[[[[[([[([(([([([(([([[[(((([[[[([[[[(((((((([(([[(([[[([[([[[([(([[[([(([[[([[((([[(([(([[[([[[[[[(((([[(([(((((((([[([([(([[[([([[([[[[[(([([[[([[[((([[[([([([(((([[(([(([(([[[([([((([(((([([[[[(([[(([([[((((((([(([(([(((([[((((([([([([[[([[(([[[(([[[((([((([[((((((([[[(([([(([([((([[([((([(([[([([([[(((([(((((([([[([[[[[(([(([(([[(((([[(([([((((([([([[([(([([[[(([[(([(((([([(([(([([((([[[[([([([(([[[[[[[[(([[[([[[(((((((((([(((([(([[[((([(([(([[[([([([[[([[([([[([([([((([[[([((([[[((((([([[(([([((([(([[[[[(([([[([([[[([[((([(((([[([[[(([[[[([((([(((((([[[[([(((((([(([[[[[(([[([([(([(([(([[((([([[([[(([[([[(([[([([[((([([[[[[([(([[(([[[[[(([((([[[[[[((((([[((([([[[(([([([([((([[[((((([([[(([([[([[(((([[([[([[(([(((([(([([[((([((((([([((([[(([[[[([([[[(((([(([[[[(((([[[[(([(([[(([(([[[[[[(([[(([[([([([[(([[([([[(((([((((([[[([((((([(([[(((([[(([([[[((([[[[([[(([[([[([((([[[[([(([[([[((([[[[[(([[([[[[[([[([[([(([(([([[(([[[([[((([([([((([(([[[((([[([[[([([(([([[[[([[[(((((([([((([[(([(((([([((([(([[[[[([([[((((([(([(([[([(([([[[([([([((([([[[(([(([(([[([[[[(([(([([[[([[([[[(((([[(([[([([([[[[(([(([(([((([(([[[[[((((([[[[(([[[([(([[([[((([[([[[[([(([[[([(((((([([([[(((([[[[([[(((((([([[[[[(((([[[([[[[[([[([(((([[[(((([[([[(([([([(([[[[[([(((([([([[(([(([[([[[([[(([[[(([([([[[([[((([[([[((((([[([[(([([[([((([[([(([[[[(([[([[[([([[([[(([([([([(([[(([([([([[([[(([([[[[((([[([(((([([((([([(([([[([[[([[([[(((([[[([([[[[([[[[[([([[[[([[((([[[(([([([[[([((((([[(([(((([((((([((((([[(((((([[[[[[[([[[([((((((([[[([[(([([(([[[[[(([[[[[[[[([([((([[[([[[[([[(((([([[([[([[([[[[[[[(([(([(([[[([[([([([[[([([[[[[[[([[[[([[([(([[(([([[(((((([[(([[[[[[([(([[(((([(([([[[(([([([[(([[((((((([([[[[[[[[([((([((([[([([[[(([([[((([([[(([[[[[[[([[[[[(([(([[[(([[([(([((([([[[[((([[[([[[(([[[(([[((([([[(([([([([[(([([[[[([((([[[([[(([[[(([[([([((([([[[[[(([[[([((([([(([[((((([(((((([[[(([[([[(((([([([((([((([([[((((((([(((([[((((((([[[([(([([([[[[(((([[[[[(([[[[(([[[[[([[[[([([[(([[((([[[[[([[((([[[[(([([([[(([[[[(([(([([(([((([(((([[[(([[([[[[([[(([(((([[((([[([[[[[[[[(([([(([((((((([[[[(([[[[[[[([((([(([(([(([[([[[[([[([[([[[(([[(([[(((([((((([([([[(([([[((([[(((([([([([([(([(([[((((((([([([([([[[(([([[[[[[[([(((([[[[([[[([(((([[([(([[[([[[[(([([[(([[([([[([[[[[((([[[([[[[[(((([([(([[(([(((([[[(([[[[[[([([([(([[([(([[[(([[([[((([[([[([[(((((((((([([(([((([[[[[[(([([[[[(([[(([[([([[((([[([[([([[[([[[(((([((((([[(((([([((([[(((([([((((([([(([(([(([([[((([(([([(([[([([[([[[(((([[([(([([(([(([[[([[(([([[([((((([([((((([[[((([(([([([([([(((([[[[((([[[((([([[[(([((([[[[((([([((([[([([[(((([[([([[[([((([([[(([(([([[[[([[(([(([[(([[[(([(([[[[((([([[([([(((([[(([[[(([[[([[(([[([([([[[([((([(([[(([([(([((((((([([[[([([(([[[[(([[([[((([[(((([([((([[[[([([([([(([[[([(([([[([(([[[[([([[[[([[[[([([[[[([[[[[([[([(([[(((([[([((((([[([(([([([[[(([[[((([([[([((([[(([(([(([[([([[((([[([([[([([[[[[[([[[[([([[[((([[([(([(([[((((([([(((([[(([[(([[[[([[[([[[[([[([([(((([(([([[([[([[[(((([([(([([[([[(([(((([([[[([([([(([[[[[((([([([[([([[[[(((([[[[(([[([[(([[(((([[(([(([[(([[(((([(((([[[([[([([((([(((([[([[[[[[([[(([[[[[([[[([[[([[([(([([([[[[(((([[(([([((((((((([(([[[[[[[[[(([(([([[(([([([([(([[([[[[[[((([([([[[[[[([[[(([([([[[[(([([[[((((([(([[([(((([[[(([(((([[[(([([[[[[([([((([[(((([((((([[((([[[[(((([[([[[(([([[[((([[[([([[[((([[((([[[(([[[([(([[[[([((([[[[([[[[[(([[([([[[[[((((([([(([[[[((([(((([[[([((([[(([[[[(([[[[(([((([[[[[[([([[([(([([[[([([([[((([[[([(([([([([([[([[[[(([[(((([([(([[((([(([[(([([((([[(((([[[([[[[[[(((([[(([(((([[[[([[([[(([[([[[[((([([([([(([(([[((([[[([[([([([[[[[([[([(((((([[[[[([[(((([([[((([[([[([((([[[[[[[([((([((([[[[[((([((((([[([(((([[[[[(([[([[((((([[[(([[([(([([[[[([[([((([((((([(((((([[([[[([(((([[[[(((((((((([([[(([[(([(([(((([(((([([([(([([([[(([([([[[((((([((([(([([[[[((([([[([(([([([(([[[[(([[[([[[([[(((((([(([[([(([[[(([[([[([[[[[(([((([([((([[(((([[[[[([[([([[[([([([((([[([((((([[([[[([([([((([[[[[((([[[(((([[[([(([[[(((((([([[([[([[([((((([([([([(([[[[(((([[[([[(([[(([[[[((([[[(((([([(([([(([[[[[[((([((([[[([[([([[(([([(([[(([[[[[[[((([[[[[[[([[([[(([[[(([[(([[[(((([[(([[[([[[[([[[[[((([([[[[[([[([[[[[([[[[((([[[(([[[[[([[([[[[((((([([((((((([[[(([[[(([[[[([(([[(((([[[[(([[[[(([([[[((([(((((([[((([[(([[[[[[(([((([([(([(((([[(([([[([[([[[([[((([[[(([[[[[((([[[(((([([([[[([[(([[([([[[[[[[([([((((([[[[([(([(((([[[([([[[(([([[([([[(([[[[[((([[(((([([((([[[(([(([((((([([((([([((([[[[([[([(([((((((([[((([(((([[([(((([(([((((([((((((([([([(([([([[((((([(([[([([(([[[([([[(((([[([(((((([([([[([([[([[((((((([([[((([([((((([[(((([[[(((([([[(([[[(((([(([[((([((([[(([(((([[[([[[[[((([((([[[(([([([[((([[([[(([[[[[[([[([[(([([[[[[([((([([([(([[([[([(((((((([[([(([[(([((([((((([((([(([[((((([(([([[[(([(((([((([([[[(([(([([[[((([([[[(([[(([[((([([[[([[[[[[[[[[(([([[((((([[[(([[([([[[((((([[(([[((((([([[([[[[([[([([[[[[([[([[[[[[[[[(([((([[(((([([[[[[([[[([[[[[([([([[([([[[((([([((((([[((([([(([((([[[[[[[([[(([[([((((([[([([(([[([[[[[[([([([(((([[[[([[[((((([[[[([[[(((((([[[[[[(([[[(([(([([[[[[[[[[[((([(([([([(([[([([(([[(((([([[(((([([((([([[[[[(((((([([[[[[((([(([((([[(([([[(([([([([([([[([[[(((([[([(([[[((((((((([[[[[([[[([([([[(((([[([(((([[[([[[([([([(([[[([[[(([[([(([[([[[(([[((([(([[[[[(([[[[[([(([[[[([([[([[((((((([(((([[[[([[(([(([[(([((([[[[(([[([([[(([[([[(((([((((([([((((([(([([((([[((([((([(([([[(([[([((([([[[[(([([[(([[([(([(([(([[[((([([(([[[[[((((((([((((([(([[[[[([[([(([((([[[[([((([([[[([[[[[[(([[([([[(([(([(([(([[[([[[([[([([(((((([([[[(([[(([((([[[[[(([[([(((([[([[[[[[([((([[[((((([[[(([(([((([[([(((([([([([(([[[[([[[[[([((([([([([(((((([[[([(([[(([[([[([[(([[(([([[[((([((([([(([([[[([[(((([[((((([[[[((([(([(([[[[(([([[(((([([[([([[([[[(([((([([((([[[[((([((([(([((([[[((([[[([[[(([(([([[[([(([([(([[([[[[(((([(([([((([[([[[[[[[[((([[(([[[((([[[([[(((([(([[[[[([([[((([((((((([[[([[(([[[[[([(([([[(((([[([((((((((((([[[(([(([([[([[(([[(((([([((([([(([([[[[(((([[([(((((([((((([[([([[([[[([([(([([(([([([([[([([[(([[([((([[[[[[([(([[[([[(((((([[[([([[[(((([((([((((([(([([([[([(([[[((([[[[(([(([[(([([[[[[([([[(([([(([([([[[[([([([[[(([[((([(([((((([[[([[[([[(([(((([[[(((([(([([([[[((([([[(((([(([(([(([((([([[([(((((((((([[((([([((([[[[[[((([[((([([[([[[[[([([(([((([([([[((([[(([([[[([[[(([[(([[((([[([([([(([([[[[([(([[[([[[[((([((([[[([[([[[[[[([[[([[([(([[[(([((([[[[(([([([([([[[[(([[[[((((([[([[([[([[[[[([(([[((([[[(((([((([(([((((((([(([[[[(([([([[(([((([([[(([[[([(([[([([[([[(([([[[([(([[([[(([[(([[([[((([[(([[[[[[[[([[[[((([[([[(([[[[([[[[([([([(([[([[([[[(((([[[(([[[[[([([(([[(((([[[((([([(((([(((((((((((((([[[[[([(([[(([[([(([([((([([[([[[[([[((([[([([(([(([[((([[[([([[([(([[([[(([([(([[[[[[(((([(([(((([(([([[[[[[[(([([[[([(([((((([([[(([(([(([[[([[([[[[(([(([([((((([([([[[(([[[(((([(([([(((((([([[(([((([[[[(([[[[[((((([[([(([([([([(((((((([[[([(([((([[(([([[(([([((([[(((((([[[([[[[[(([[([[[(([[[([(((([(([((([((([(((((([[([([[([(((([((((([([[(((([(([[(([[((([([[([(((((((((((((([((([([(([((([([([((([[(([[(([[(((([[[(((([(([([([([(([[[[[(((((([(([[[[[(([[[[[((([[[([([(([[[([([[[(([(([[[[([[([[[[[[[(([(([[([[[[([[(([[(([(([[[[[[[(([([[([[[(((([(([(((([([((([([[[[(([((([[(([([[(([(((([([[[((([[[(([[[([((([(([(([[[[[[((((([[[((([((([([([[((((((([([[((((([([[[[([(([(((((([((((((([[(([[[[[(([[((([[[[((((([([([[((([[[(((((([(([[[[([[[[(([(((((((([[[[((([((([(([([[([(([[[[[[(([([[[(([((([(([[[[([[[[[((((((([(([[[[[([((([[([[[[((([[[[[[(([[[((([(((([([[[(([([((([[[(((([([[[((([([([[[[([((([[([[[([[[[([[[([[[([[([([([[[((([([([([((([[[[((([(([[[[[(([(([[(([[(([((([([((((([[[[[[((([(((([[(([[([[[[((([[([(([[([(([[[[[[[[((([([((([([[([[(((([[[(([([(((([(([(([[([((([[[[[([[(([([[([[[((((([[[[[([([[[[([[[[[(([(([[([[[(((((([([[[[(((((([[[[[[([([[[[[[(([(([[([(([[[(((([[((([(([[([([(([[[[[[([([[[[[((((([((([[(([([[[(([([[(((([([([[[[(((((([(([[[(((((([([((([(([(([[([([([([(([([[([(([[[((([([[[[[[[[[[([[([[[[([[([[[((([([((([([[([([[(([(([[[([[[([([(((([[([([((([([(((([[[[[([(([([([(([(((([[[[[[([([[(([[(([([[[[([[[[(([[([[(((([[[[[((([([[(((([[([[[([[[([((((([[[[([[[(([(([[[[((([([([[([((((((([[(((([[[([(([([(((([([([([[[(([([[([([[[([[([[[[[([[[[(([([([[([[([[(([[[(((([((([(([([((([([[([([([(([[([(([[(([(((([[[((([[((([(([[(([[((([[[((([([([[([[([[([[[([(([[([([([([(([[([([[(((([([((((([[(([((((((([[[[[(([[[[[[([(([([(((([[([[[(([((((((([[[([([((([([(([([([(([([(([([(((((((([(([[(([[(([([(([[[[[[[(((((([([((([[[(([([[((([((([([[(([(([([([(([[(([[([([([([[(([([[[([([([([([[([([[([([[[[([(([(([[([[((([[(([((([(((((((((((([[[[([([[([[[[[([[[[[[[((([[(([[[(([((([[(([(([(([[[(([[(([[([([([[[([([((([[(([[[((([[[(([[([[([([([(([([(((([[[(((([(([[[[(([([[([[([[([([[([(([[[(([[[[(((([((([[([[[[[[([[[[[([([([(([[[[(([(([(((((([[[[((([([(([[(((([([[[[[([[[[(([([[[[[[[(([([([(([[(([([[[([[[[[[[[[([[([([[[[[[([(([(([[(([[([[([[([[[([[([([(([[([[[([[[[[(([([(([([([((((([(((((([([[([([([[[[[([[(([([((([((([([[[([([[([(([[((((([[[(([[[([([(((([[[(([[[([([[[(([([[([(([[(([([[([[(([[(([([((([(((([([[[[(([((([[[[((([[(((([[(((([([(([(([([((([(((([(((([([((([([(([((([(([([[[[([[[([[[[[(((((([[[[([[(([[[[[[([([[([[[(([[[(([[[[[[[([[((([[[([[(([[[[([[([[([([([(((([[(([([[[[((([[[([[(((([[[((([([[(([([[[[(([(([([([[(((([((([[[([(([[([[([(([[[(((((([([[((([[[[[[((([([(([((([([(([[([[[([[(([(((([[[([(([[([([[([[[[[([([[[([[[((([([[[[[(((((([([[(([[[(((([[([[[(([[[(([([((((([[[([[(([(((([[([[[[((((([([[(([[(((([((([[[[[[[[[(([[([[([([[(((([[([((([[([([[[[(([[((([[(((([([(([([([[([(([[([[([[[[[[((([([((((([[([([[[[[[([((([[[[[[([([((([[([(([[[(([((((([([(([([[([(((((([[((([((((([[(([[[[[([[((((([[([[(([[(([[[[[[([[(([[([([(([(([[((([(((([((((([((([([[(([[[[[([([[([((([[[(([(([[([[[[[[([[[[((((([([([(([([[((([[(((([[[(([[(([[([([[([([(([([([([((((([(([[(([[(((((([(((((([[([[((((([(((([[(([[((([[([[[[[([[((([[[[([([(([([[[[[((((((((((([[([[(([[([[(([(([[((([[[(([[[((([([[[[[[([[((([[((([([([[[([((([([(((([([((([[[(([[[[([((([[[[[[[[([([(((([(([[[[([[[[[([([(((((([((([[[[(([([((((([[[[(([[[([([(([(((([([[[[(((([[((([([([[[[[[[[([[(([([[(((([[([(((([[([[([((([[((([[[[(([(([([[[((([(((([(((([[[[[[[[([[[([([((([[([[([[[[([[([([((([[([[([(([[([([[[[(([(([(((([[[(((([[(((([[[(([[[(([((((([[((([([[((([[(([(([((([[[[[([[[[[([(([[[(((([(([[(([[([((([([[([([([[([([(([([[[[[([([[(([[(([[([[[[([[[(([([([(([[(([[([[[([(([[([[([([([[((([([[((((([[([[([(([([((([[[[([[(((((([[[[[[[(([((([[[[(([(([[(([[(([[[[[[([([([([[((((([([(([[[[([(([([[(([[[([((((([[(([[[[(([[([[(((([((((([[[[[(((([(([[[[[[((((((([(([[[[[[(([([([([(([[([[((([[([([[((([[([(([([([[([(([[[([([[[[([([([([[[[((((((([(([[([(([[(([([[[(([([[([[([([[([([[[(([[([[[(([[[[[([[[([[([([(([(([[((([([([[[([[[([((([([([[([[([[[(([[(([[(([[([((([[[[[[[([([([(([[[(([([[[([([[[[([([[[(([[[[(([([[([[([[([(([[[(((([[((((([[(([([(([([[([([[(([[([([[[((([[[[[([[[(([([(([[([([([([[[[[[(([[(([([[[(([(([[[[[[((([[([([[[[(((([[([[(((([[((((([((([([([[[[[(([([([[[[[[[[([(([(([[([(((((([[((([(((([(([((([(([[([([(([([[([((([[[([(([[((([([([([([(([(([[[[[(([[[[[[[(([[([(((([[([(((([[[((([(([([[([[[(([[(((([[(((((([(([[([([[([[[(([[[[[([((([((([[[[[([[((([(((([[([[([[[[[[([([[(((((((([[[(([[[[[([(([[[[[[([[(([[([(([[[(([[[([(([[([[[[([([(([[[([[(([[[[[[[[[([(([[(([([[[[[[(([[(([[[[((([(([([[([([([[((([[[[([([[[(([[(([([([[((([([([[(([([[[[[[[[[[(([([(((([[((([([(([([((([[[([([(([[([[(([[(([[[(((([([[[([(([[((([(([[([(([(([[[[[[[([(([[[[([[[([[((([([(([((([([([[((([[[[[[(([[[[([[(([[[([[([([([[[[[[[[[[[[([[[([[[[(((([[[((([([[([([([((((((([[[[(((([[[([((((([([[[([[[[(((([((([([([(([((([[[[(([([([(([((((([[([([[([[[[([[[(([(([[(([([[[([([(([[[[[((((((([[([[[[([[[[(([[[[([([([[(((((([[[(((([[([(([(([([[[(((([[[[[(((((((((((((([([[(([([([(([([[([(([[[[[((((([[(([[[([(((([[((([[[[(((([([[((([[(([(([[[((((([[[([[([([[([[([[[[[[[([[([[([([[([([[(([([[[[[([[[((([((([[((([[([[[[(([[[[[[[[[[[[(([(([([([[([[[[(((((([[[[[[[[([[(([[[[(((([[[(([[(([(([(((([[(([[((((((([([([((([[(([[[(([(((([([((([[(((([([[((([([([[[(([((((([[[([[[((([([[(([([[([([([((([[([(((((([([[([[([[(((([[[[[[([(([((([(([((([[([([[[[[[([([([[[((([([[((((((([[[(((((([((((([[[[[(((([(([(([([[[[[[[[[((([(((([((((((([[([(([[((([([[[[[([([(((((([(((([((([[[((([[(((([(((([[((((([(([[[([(((([(([([([([[([[[[([((([([[[([(([[[([[(([((([(((([([[[[[((([((([[((([([[([(((([[[[[([([([[((((([[[[((([(([(((((([([([([[[[[([((([[(([((([([[([(([[[[[(([((((((([[[[[[([[([([[[[[[[[[([((([[[[(([[[([[[([([(([[[([(([([(([[[([((([[[([(([[([[[[[[(([[[((([[[((((([[([(([[[(([([[[[[([(([[([[[([[[(([[(([((([[([([[([(([(([[[([([((([[[[((([[[[[[[(([[((([(([[[[((([((((([[[[(([([[([([(([[[([([[[[((([[([[[([((([([[([((((([(([[[[(([(((([(([[([[(((((([([((([([(([[[(([[[[(([([([[([[[(((([[[([([[(([([[[([([(([(([[([(([(([([((([([(([[(([([([[(([[[([([[[([[[(((((([[[([([[([[[([[[[((([[[[(((([((((([[[([[[([([[([([([([((([([((([(([[(([[([[[[[([[([[[[[([([[([[([([(([[[([[(([[[([([(([(([[(([(([[([[[((([[[[[((([(([(([[(((([(([(([[[([((([([[[[((([((([([((((((([[[([[[(((([[[([[([((((([(([[[[[[([(([((([(([[[[((([[[[([((((([[[[([((([(((([[[[[([([([([(((([[((([[((([([(([[((([([[[((([[[(([[(([[[(([([([((([((((([[(((((([[[(([[(((([([((([([[(((([[[[[[((([([[[[((((((([([[(([(([[[[(([[([([((([([([((([[(([[([[(((([[(([[[(((((([[[([[[([([([(([[(((([([([[[([((([[([[[[(([(([([[(([[(([(([[([(((([([([(([(([[[((([((((((([[((([[(([([([([([[([[[([[(([((([[(([[[[[(([([([[((([((((([[[[([[([(([([[[((([[((([([(([(([[([((([([[[[([([[[(([[([[([[(([[([[[[([([(((((([[([([((((([((([((([[(([(((([([([(([([[[(([[[[[((([(([([([(([([(([(([([([(((([((([[[([(([(([([[([[([(((([[([[[([([[((((([(([([((((([(([[[([[[(((([[((([[[(([([(([((([([([[[[[([([[([((([([[[[[[[(([([[[(((([((([[[[[(([([(([[([(([((([(([[[[(([[[([((([[[([(([([([[[(([[(([([[([([([[([[([[([[(([[[[[((([(([[[[[([[[(([(([((((((([((((([((([[[([[[[([[([(((([[([([([[[[([[([[((([[[([([([(([[(([(([[[[[([(([[(((([[([((([[(([[(([[([(([[((([[(([[[(([[(((([([[[[(((([[[[[[(([([(([(([([[[([([[[[([[[(([[[[[((([[(([[((([[[(((([[([[[[([[[[[[([([([[((([[[([[[[[(([[[[([[([((([([([[[(([[(([[[([[((((([(([(((((([((([[([((([[([(([((((([([[([[(([[[([[(([[([[[[[([[[[[(([([[[[(([(([[[[[(([((([([[[[(([[(([([([([((([([[[[[[([([[([[[[([([((([((((([(((([[[(((((([(((([[[[[[[(([[((([([[(([[[[(([([[(((([(((([[[[(((([((((([[([[[([((([[(([[[(([[[(([([((([((([[[[[(([((([[([([([[([[([([[[(((([[([[[([([([[([[([(((([([([([[([([((((([[((([([[([((([[([[((((((([[((([[([[[[(([[([[[[[[[([[[(([([([([(([([[(([([[((([([[[[[((([([([[([[(([([([[((([[[(((([(([(((([([[[(([((([[([([[[[[[([(([[[(([([(([([((((((([((((((([([[[[(([[[[([[[([([[[[(([([((([[((([(([(([[([[[(((((([[(([[([[[([[[(((([[((([[(([(([(([(([([[([[[(([[[[[(([[[([[((((([[((([([(([[[(((((([[[((([[[((((([([([([([(((([[(((([[([[[[(((((((([[[(([([[[([[([((((([[[[[((((([[([((([(([[(([[((([[[([((([[([((([([[([[[[((([([([([[(([[(([([(((([[[(([[[[[[([[[[([[(((([[[[((((((([[(([[[[([(((([([[([(([([[((([[[[((([[([([[[[((([([[[[(([([[((([[(([([([[[[(([([([[[[(([([[[[(((([(((([([[([[[((([[([(((([((([([[(((([[[((([(((((([[[[[([([[[([[(((([([[([(([([([[[([[[(([(([[([(([[[[([[[([(((((((((([([((((((([(([([(([([[[(([[[((([[[(([[([[[[((([(((([[[[[[[[[((([(((([([[(((([[[[(([[([([((((((([[[([((([[[([([([(([([[([[[(([[[[[[(((([[[([([((([[[([(([((((((([[[([[[((([([([[[[([[([[[(([([[[([[[([((((([[([[[[[([([[(([([[[([[([(([[[[[[[[([(([[(([((([([[[(([[[[[[[[([[(([[[[[[((((([([(([[([[[[(([[([(((([([([(((([(([(([[([(([(([[([[[[([([[([([[((([(([[[([(([([((((([([[[([[[([([([[[((((([([[[[(((([([[((([([([([[[([([[([[([([(([([(([(([((([([[(((([([[(([[(((([(([(((([([[[[[([[([(([[[((([[([(([([([([[(([[[[(((((([[(([[[[((([[[(([[[[[([([([([[[[([(([[((((([[(([[[[([([(([[((([[(((([((([[[(([([[[[([(([[[[[[([([[([[[(([[[[[(((([([([[(([([(([((((([[[[[((([(((((([[([[([([([[(([([((([((((([([[[[(((((((([([([((([((([((([(([(([[(((([[([([([[[[[[[[((([(([([[[([([([(((([[(((([([([([([[(([[(([([[((((([([[[[[([[[([[([[[([[([(([(([[([[[[[([(([[(([[([[(([((([([(([[([[[([([[(([([([[[[[(([[[([[[([[([([[((([(((([([((((([((((([[[([[([([(([(([((([[[(([((((([(((((([(([((((([[(([[((([([([((([[[[(([((([(([([((([([[[([((((([[[((([[[[([(([[([(((([[([([((([([[(([[[(([([(([[([[([[([[[(([((((([([([(([((([(([(([([((([[[[((([[((((([[[[(((([(([([[[([(([[(((([[([([([(([[(((([((((([[[[([[[(([(([[[[((([([[([((([[[([[[[(((([(([[([[[([[[[(([[((([([([[[[([(([(([((([[(([[[(([[((([[[[([[[[[([[[[[(([((([[[((([([(([[(([[(([[((([[((((([[([((([[(([((((([(([(([[((([[([((([(([[(([[[((([((([[((([([[[[([[((((([[[((([([([([(([[([[([([[(([([[[[[([[[[(([([([((([([[(((([[([(([([[[[[[[(([((([[[(([([([(([((((([[[[([[[[((((([(([([([[([([[(([([[[(([([[((([[[[[[((([([([[(([((((((([((((([([[[(([([[[((([([[[(([([[([([[([((([[[(([[((([(([(([(((([(([[([[([[([([([[([[([([([([[((([[[[([(([([[[[[((([((((((([[[(((([([([((([[(([(([[([((([((([[[[[[[[[[(([[([[([[[[((([[([[[([[((([[(((([[[((([([[(([[(([[[[[([[[[[[(([[([([(((([([([([(([[[(([[(([(((((([(((((([((([[[([[([[((((([[[[((([([([(([[(((([[(([([(([[[[(([((([([[[[((((([[(([[[[[(((([[[(((([([[([((([[(([[[([((((([(((([(([([[([((((([(((((([([[(((([((([(([(([(([[[([[([(((([[(([(([[[[[([(([([(([((([[([[(([([[((((([([([([[[(((([([[(([([[[([(([([[(((([([((([(([[[[[((((([([[(([([[([[(([[[((([([([[[([[[[[[[[[[[[[([([([([([[([((([[([([([([([([([[(([[[([([[[[[(((([(([([[[([(([([([[((([[[[[[([(([[((([[([((((((([[(([([([[[[(([[(([(((([((((([(([([[[(([(((((([([[([[((([(([[[([[[([(([[([([(((([([[[(((((([[([[([[(([(((([([([[((([(([([[[[(((([((([[[[[((((([[[[(((((([([(([(([[((([[(([([([([[([(([[([[([[[[[([[(([([[([[([([[((([[[[[[[(([([[[[([[([[([[[([[[([(((([([[[(((([([([([[(([([[[[((((([[[([[((((([(([([[((([([([([(((([([([[(((([[[([(([(([[([(((([([[([([[(([((([([(([[((([(([[(([([[[[[((([(([([[([([(([[([((([([[[[[([(([([[[[([(([([(((([[([((([(([[([([(((([(((([([[(((([([[([((([(([[([[[[([([([[[[(([[[[([([([(([[([[((([[[[(([([((([(([((([[[([([([((([([(([[[[[([[(([([[([([[([[(([[(([((([[([[[([([([([((([(([((([[[[[[[(([(((((([[[[(([[(((([([([(((([(([[[(((([[[((([[[([[([[(((([[([[(((([([([([[[[[[(([([(([((([(([[[[((((([[[[[[((((([([[(([[[[[(([(([[[[(([((([(((([((([((([([[[([[([((([(([[(([([[[([(([(([[([(([[[([((((((([[[[[(([([[[[([([[[[[[[((([[[[([(([[([(([[[([([([([(((((([([[(([([([[[[((([((([((([[(((([(([((([[[((([([([([[([([[(([([[[([(((((([[([[[[[(([[[[[((([(([([([(([[[(([[[[[([[([([([[(((([([[[[([([([(([((([[((([[((([[[[[[(([[(((([(([((([(([[[[[[(([[[[([([[[[[(([((([([[((([[[[[([([(([(((([[((([(([([([((([((([[[[((([([[[[[([[[[[(([([([[[[[((((([([[([[[[[[([([([[[[[[[[([([[[[[([[[([([((((((((([[([(([(((([((([(([([((([([[((((([[[[((([([[([((([([([[[[((([([[[[(([[([[[[[[[(([((([[[(((([[((([[[([((([(([[(([[([[[(([[(([[(([[[((([[(([[(([([[((([[([[[([(([[([(([([[[[[([([[[([(([([[[[[[([[[((([[(((([((([([((([([(([((((((([[([([((((([[[[(([((([[(([[([[[([[[(([([[(([([[((([(([([[([[[[[[[[([[(([([([[[[([((([[[(([[([((((([(([[(([([[[[([[([[([((((([[([(([([([([(([(([[[[(([[(((((([(([(([[([(([([([[[([[(([[(((([([[((([(((((([[([([(((([[([[[[([([[[[[[[[[[[([(([[([[(([[[([([((((([[[[([[(([([[[([[(([((((([[[([(([([(([([((([(((([[[([(([(([(([[(([[[[[[[((([[[[([[([(([([[[([[[[[(([([([(([([((([(([[[([([[[[(([[[((((([[[(((([[(([[[([([([[((([(([([[([[[[[[[[([[[(((([([[((([[[[((((([[[[(([([[((([[[[[[[[(([[([([(((([([[([[((([([(([(([[[(([([(([(([[((([([(([[[(([[[([([[[[(([(([[(([[(([[[([[[[([[[([[[[([[[([([(([[[[[(([((([([[((([([(((([([([([([[[((((((([[[([([[(([[(((([(([([[[[([([((((([(([(((((([(([[([([[([[[([[[[([(([([[[[(([[[[[[(((([[([([((([[[[[((((([[[([(([[[(([([([[[(([[([[([((([[([(((([([[[([([([([(((([(((([(([(([[(([([[[([[[[[(((([((((([(([[(((([([[(([([([(((([((([(((([(([(([((((([[([[[[([[((([[[[[(([(([[([([([[([([[[([[([[([([((([[[([(([([[[[[((([[([[[[((([([[[([([[[[[[[((((([[([[([(([(([[[[[([([[([([(([[((([[[(([(([((((([[(([[([([([(([[((([[(([(([[[([([[(([[[[([[[[(((((([[((([[((([([([[([(([[([(([(((([([([(([(([[[[[((([(([([[[((([((([([((([([([((([[[[((([([((((([[([((((([[([[([[((((([([([[[[[[[[[(((([([(([[[[(([[([([[[[([[[[[([(([((((([[([([[[[[(([([([((((([[((([[[(([[[[((([[[((([[[[[[[[([[[(([[[(([[[([(([((((([[[([((([[[[[([([([[[[[[[(((([[[(((([(((([([[[([[[[[[[[[(([([[[[([[[([[(([(((((([[((([([((((([[[((((([[(([(([(([([(([[[([(([[([[([[[([(([[[[([(([(((((([[[[[[(([((((((([(([([([[([(([[[[(([[([[[[([([(([[([[(([[[([(([([[[((([[([(([[[[((([([[[([(([[[[[([([[[[([([([((([[[[(([[[[[([([([([([[([[([(([([([([(([[([([[[(([[[[((([[[((([[[[((([([([([([(([([((([([([(([([[(([[([(([[[(([[([[(((([[((([[([[[([[(([[[(([[(((([(([((([[(((((([[(((((((([[([[([(([(([([([([[[([[[[(((([[([[(((([(([([(((([[[[[[(([([(([[([([[[([[[[[[[([((([[((([([[[(((([([[([[(([([(([[([[(([[[(([[(([((((([[[([(([[[[((((([(([([[[(([(([[[[([[[[[[[[[[[([((([[[[(((((([[(([((([[([(([([[[(([[[[[([(([((([[[[([[(([[([[[([[[([([[(([[([(([[(([(((([[(([[([([((([[[[[[(([([(([(([[(([[([(((((([(([(([[(((([[[([(([[[([((([[([[([(((([([(([(([[[([((([[([([([[[([[(([[[[[[[[[[[([((([(([[[[[[([[(((([[[[([((((([[[[([([(([(([[[((([(([[(([[([(([(([[([([[([([([[[[((([((((([((((([([((([((([([(([(([([([((((([([[[[([(([[[[[[([([([((((([[(([(([[([[((((([([([[[[[(((([([(([[(((([[(((([((([([((([(((([[[(([([([[([([[[(([[((([(([(([[[(([[[[((([([(([[(([([((([([(([[([[((([([([(([[([([(([[([[[[[(([[(([[[[(((((([[[[[(((([((([(([[[[(([(((((([((((((([([([(([[[[[[((([[[[[[[((([([[([(([([([(([[[([([([[[(([((([(([[(([((([[([([[([(([[[[[(([(((([[[[(((([(([([[[([(((((((([((([[(((([[([((([(((([(((([([([((([[(((([[[([(((([([([[([([[(([[([([[(([(([[([([([[([[[([[[[[((((([[([[([[((((((((([[[(((([[[([([[[(((([[((([[(([[([((([([([[(([(((([([[[[[[(([(([[([[[[[[([(([[([([[[[[[((([([[(([([[[([[[[[([[((([[[(([[[((([([[[[[(([([((([((((([[(((((([([([(([[([([[(([([([[[[([[[([[([([[(([[[[([[([((([[((([[[((([[[([[([[([[([([((([[(([(([[(([[[[[([([[[[([((((((([[[[[([([(((([(([(((((((([((((([(([([[[([([[[[([([[([[([([((([[[[[[[([[([(([([[[([([([[([([[([([[[[[([[[[(((([[[[((([(([([[((([([([([([([[[([((([([(([[([([[[([([(([[[((([[[[(([([(([([([([(([([[([([[[[([((([[[([[[[[([([(([(([(([([[[(([([[(([[[[[[([[[([([(([((([(([[[[[[[[[(((([((([[[[[(([[[([(((([[((([[(([([[((([[(([[[(([((([((((([([(([(((((([((([[([[[([[[[([[[[([([[((([[[(([[[[((([[([([[[(([[[([([([[[[(((([[[[[((([(([(([[([((([[([[[[([[([[[([(([[[[[[[([[[[[((([(([[(([[[([(([[([[[([[([(([([[((([(((([[(([([([([[[[[[([([((([[([(([([([(([[(((([(([(((((([(([[(([((([([([(([[[((([[[([[[[[[[([(([[[[(([([([((([(([[[([([[[((((([([([[([[([([[[[((([(([([[[([[([[(([(((([[[[[[[[[([[[[([(((((([(((([[((([(((([([(([[[([([[(([[(([(([([([[[([(([([[(([((((([(((((([[(([([[((([(([(([([([[([[[[[[(([([[([([(([(((([([[[((([[[(([(([((([(([([[[[[[[[([([[[[[(((((([([[(([((([([([([[[[([[(([(((([[([[([[([([[[(([([(([[[((([([[[[([(((([(([([([[[[((([((([((([[[[[[([(([[[(([([[([(([([[[([(((([(([(((([([[(([([[[[(((([(([(([[[[(([([([[[[[[([(([[[([[(([(([[([[[([[([[(((([[(([([[[[[[[[([(([([(([([(([([[[([((([[[[[[[([([(([(([([[[([[(((([((((([[[[([[([[[[[([[([[((([(([[([[(([[[[[([(([([(((([[([[(([[([([([[(([([([([([((([((((((([[((([[[[(([([((((([((([[(((((([(((([([((([[[([((([[([(([([[[[(([[[[[((([[[([[(([[(([[[(([[[[(((([(([(([[((([([[[[([([([([((([([[[(([([[[[((([([([([[([[[[([[[[[[([([[(((((([[[(([([(([[[[[[[(([([(([(([[[[([(([([[([(([([[[([[(([[(([[[((([([[([[[[[[([[[(((([[[([(([((([[[([[(([[([((([[([[(([(((([([[[[[[[(([[([[([([[([[((((([([[([(([([[[[[(((((((((([[[([[[[[(((((([[([([[[[([(([(([([([[[([[[([([(([[([[(([[[[[((([[[[[[[([[([[[((((([(([[[[([[(((([[(([[([([((((([[[[[([[([(([([([[(([((([[[(([[([[[[([([([[[[(([[(((([[[([[[([(([[[[([([([[[([(((([(([[[[[[([[[[(([[((((([[([[(([(([[[[([[[[([([[[([([(([(((([[(([([(([[([[[[[([([([([[[[([([[[[((([[[((([[(((((([(([(([([(([(([[[((((((([[[[([[([[[(([[([[([[([(([([[[([[[([[([(([(([([[[[[[(([[([([(([[[[([(([(([(((([[[([(((([[[[[(([((((([[[((((([[([(((([([[((([[([[((((((((([([(((([([[[[[[([[([((([((((((((([([[([(([((([[[[(([([[[[[[[[[([[((((((((([([(((([([([[([([[[([(([[([([[[[([[(([(([(([[[[([[[[[[(([([[[([[[(([[[([(([[[[[(([([(([([[(([[([((((([([((([[([(([[(([[[[[((([[(((([[[[[(([(([(([[(((([((([[([[(([[[(((((([[[([[(([(([[[[[([[([(((([([[[([(([[((([[[((([((([([[[[[[([((([[([([((([[(([([([([[(([((((([[(([(([[[[[[(((([[[[[(([[((([[([[[[[[(((([[([[[[(([[[([((([[[([([[[([[[[[[[[[(([([((([(([[[([[[[[([([([[[((([([[([([[[[([([[[([(((([[[[([[([[((((([[[(((([[([[[(([[[([[[((([[[[(([[[([(((([[([(([[(([[[((([(([([[((([(([[((((((([([[(((([[(([([[([([([([((([(((([(([(([([[([([[(((([[((([((([[[([((([[([([[(([(([(([[([[[([([(([[[[[([(([[([(([[([[([[([([[[([[[([[[[(([[(([((([[[[[(([([[[[[([[[(([[(([[([[[[(([[([([([[([[[(([[([[(([[(([[[([[([[[([[([[[[[((([(([[[(([[(([(((([([[([((((([(((([(((([(([(([[([[[((([((([([([[[(([(([([[(([[[[[[[[([[(([[[(([[[([(((([([([[[((((([[(((([(([(([[(([[[[[([([[((([([[((([([([[((([[([([([(((([([([([[[(([[[(((([([(([((((([(((([[(([[[([[[((([[([[(([(([[(((([[(([(([[[([[((([((([[([[([[([[([[[[([[[[(([[((([([[[([((([[([(([[[[([[[([[([(([([[[[[[[[((([([[[[[([([((([([([[[[[([[[[([[[(([[([([(((([([(((([[([([([(((([[[((([([[[[([(((([([[(([[[(([[([[[[[[[([[(([([(([[[((([([([[[[(([([(([[[[(([[([[[([[(([(([([[((((([([[[[([([([([((([[[[([(((([[[([((([([((([[[[([[[([[[[[[[(([[[([([[[[[[[(([([([(([[(((((([(([[([([[[[([((((((([([[[[[[[[([((([[((([[[((((([[(([([[[[(([[((((([[((([(([[(([[(([[[((([([(([(([[(([[((([[[((((((((([[([((([[[[([[[[([([((([[([([[((([[[[[[([([(([(((((([([[[([[([([[([[[(([[[[([[([[[(([((((([((([[[(([((((([((([(([([[[[([([([[[[[([[[(((([([((([([(([(([([[[(((([(([((([([(((([([([([[[((([[[(([[[[[[(([(([(([[[([(([([(([([((([([[[[[((((([[[(((([[(([[([((([[([(([([([([[([([[([([(([[([[((([([[(([[([[[[[(([[([((([[[[([[[[[[[(((([([[[[[[[[[([([[[([([([[([(([[[([([([[[([[[[[([((([(([[[[[[[((([(([(([[(((([[[(([([((([([[(((([((([([[[([([[[[[([[[[[([(([[[(((([([([(((([[(((((((([[(([[(((([[[[[[[([([(([[((([[[(([[((([([((([[[[[([([([([([[([[([[[(((([[[[((((([([([([([([[[[([((([[[([(([[[(([(([([([[[[(((([[(([((([([((([([[[[((((([[(([([([(([[(([[[[(((((([[[([(((([(([[([((([(([([[[[(([((([([[[([((([((([[([[(([([[[[[([[[[([[[[(((([(([([((([(([[[(((([((([(([((([[(([(([[[([([(([[(([[(([(((([[[(([([[([(([(([[[[[([[[([[[([[(((([((([[[([[[[[[(([[([([(([[(([[(([[([[[(((([([[[([((([[[[(([[([([([[[[([([([(([((((([([(((([((((([[[(((([([[([[[((([(([([(([[[[([((([[[([[[([[((([[((([[[[([[[[[(([[[[(([(([[[(((([(([(((([[(([[[([[([[(([((([[[[(((((([[[[([[(([[[[([[[(([((([([[[(([[[([([[[(([[[[[([[[[[[([[([(((([[([([(((([(([((((((([[([[([[[[([[(((([[[[((([[([([[[(([[((([[[([((((([(([([[([[[([[(([[((([([[([[(([[[[([([(((((([[[([[[[([[[[[[[[((([(([[[([((([(([[[([[((([([[[[([[(((([(([((((([[([[([(([[[(([(([((((([[((([(((([([([[[[([([([(((([[(([((([(((([[(([(((((([(((([((([[[[[(((([([[(([((((((((([[[[[([((([([([(([([[[([([(([([(([[[((([(([([(([((([[([(([[(([([[((((([[([((([([[[[([(([[[([[[[[(((([[[[(([(((((([[([((([([(([(([(([([([[[[((([[(([([[[([[[[[(([[([(([([[[([[[[[[[(((([[(([([[[[[([([((([(([[([([([[([[([[(((([[[(((([[[[([[[((((([([[[((([([([[([[[[([[[[(([(((([[([(((([((((((((([([[[[[([[[([[((([(([[[[(([([((([([((((([([(((([[[[[[((([[(([(((([([([([[((([[([[(([[[([[[[(([(((([[([[([(([([[[[[[((((([(([(([[([[([(([([[[([([(([(([((([((([(([[(((((((((([(([[(([([[[[[([(([[[[([([[[(([((([((([[[[[((((([((([[[[[([[([([[((([(((([[(([[([[(([[[[(((([[[(([([[(([([[[[[[([([([((((([[([[[[(((([([([[(([[([[([[(((([(([([[[(((([(((([[[[[[[[[[([[[[([[(([([[(([[(((([[(([[[[[((([([[[[(((((([(([[[(([[[[[(([(([(([[[([[[(([(([([[((([[[[((([([(([[((((([(([[[[[[[[([[[([[[[([[[((((([([([[[(([[([[[[[[((((((((([((([[[([([[([[[[[[((([[[[(([[[((([([([[[[(([(([([([[[[[[[[[[[(([(((([([[([(([([([(([[[([[[[([[([[[[[[(([((([[[((([[(([[[[([([((([([[[([([([([([(([((((([[[[[[[[[[(([[[[[[[([([(([(([(([[([(([[[[(([[([(([[[([(((([([([([[[[([[(([([[([[(([[[[((([[(([([([((([(([([([[(([((([([((([((([[[(([[([[((([([[[[(([[([((([[[[[[(([[([[(([[[((([([[(((([[((([[(([[([(((([(((([([((((([[((([[[[[([([[(([[((([([[[[([((([((((((((((([[[[[([(([([[(([(([[((([(((([[[(([(([[(([[((([(((((((([(([[[(([([[[[(([[[([[((([([[([[[[[[([[(((([(([[[((((([[(([[[[[([[([(((([[[[((((((([[[[[([[([((([([[((([(([((((((([(([([([([[([([(([([([[[[([([(([((([(([[((([[[([[(([[(([([([[(([[(([([([([([[(([[[[((([[[([[((([[[[[[[([[[[[(([(([(([[([(([[[[(([[[([[[[[[[([[[(([[[[[[(([[[[((([[(([([[((([[([[[([(((([[[((([([([[([[([([[([[[(([([([[[([[(([([([[(([([[([((([[([(((([([[([[(([[[([(([[[([([[[(([([[[[([([[([[[((([[[([[[([(([[[[([[[([((([(((([[([(([[[[([[[[((([[([(([([((([[(([[[[[((([([([(([[([[([(([([[[((([((([[([([((([(((([[([[[([(([((([([(([([[[[([[(([([[[(([[[[([([([(([(([[[([[[[(([(([[[[(([[[[([((([(([[((([((([([([([[[[(([[(([([[[([((([[[([[[([(([((([[[(([[[[[[([[[(([(((((([[[(([([([[([([[[([(([[[[([(([[([[((([((([[(([(((((([[[[[[(([(((((([[(((([[(([([[([([([[[[([[[(([[[((((([([([[[(((([[([[[[[[[[[(([((([[[[[([[([((((((((([((((([[(([[(([((([[((([((([(([[[([([[([[[[[[(([[([((([[([[([[[((([([(([[[[([((([([(([[([([[(([[[[[([[(([[([(([[((([[([([([[((([(((([[([(([[[[[[[[(([([[[([([[((([(((((([([[[[[([[[[[(([(([[(([([([[((([[[(([([[((([[[([([[([([(((([([[[(((((((([([[[([([[[((((([[[(((([([(([[[([(([(([(((([((((([[(([[([[(([((([((([([[[[[[[[(([(((([(([[[[([[(([[(([([[[[(((([[[[[[(([[([((([([([(([[([((([[[[([([((([[(((([[((([((([[([(([[([[[((([(([((([[(([[[(([[((([([[[[([[[([[(((([([[(((([[(([[(([([[(([[((([[[([([([(((([([[([((((([[[[[[[[(([[[(([(([(([(([([[[([[([(([[(([[[((([(((([([([[(([[(((((([[([[[((([([(([([[[((([([[(([(([[[([(((([[[[[[[((([[[(([[[[(([([[(([([([(((((([((((([([((([([[[[[([[[(([([[([(([((([(([[(([([[(([[[((([[(([(([[[[(((([((((((([[((([[(([[([[((([((((([((([[[(([[([[[([[(((([(([(([(((([[[[((([[(([(([([[[((([((([(([(((([([[[(([[[[(((((((([(([([([(([([(([((([[[[([([[[([[[([[((([((([(([[(([([[[(([([([([[([([[([((([[[(([([[([[[([[((((([(([([((((([((([[([[[[[((([[((([(([(([[(([[[(([[[(([[((((([[[(((([([[((((((([[[[[[[[((([[([([([[([[((([[[([[[([[[[([([((((([(((([[((([[[[((([[([[([((([([([[([[[(((([[[([((([([([[[[[[[(([(([(([[(([[([(([([[[[([[(((([([([(([[[([(([(([(([[(([[[([[[(([([[[[([([(([[([([[(([([(([[([[((([[[(([[[[[[(([[(([[(([[(([[(((([[([[[[(([((([[[((([[[([[((((([([[(([([[([[([[[[(([[((((([([(((([((((([[[[[(([([[[([((([((((([([[(([[[[[([(([([[((([[((([[[[[[[([([([[(((([[((((([[[(([[[[(((([[(([([[[((((([[([[([((([(((([[(([(([[([[([[[((((([[((([[([[[[[([([[[(([[((([(([(([([[((([[[(([[([[(([[([[[((([([[[([([[[[([(([[([(((([((([(([[[[[[((([[((([[[([((([([[(([([([([([([([[([[[[[(((([[[[(([(([((([[([[([[[[[([([[[([(([[(((([([[[[[[[([[([([[[(([[([[(((((([([[[([((([[[([[[([([[[[[[[([[((([(([((((([[[(([([([([[[(([((([[(([([([[(([[[[[[[[((([[[(((([(([[[([((((([((([[[[[((([(([[(([[([([([([[[([[(([(((([((([[(([[[[[[([([([[([[[((([([[(([[((([[(((([[(([((([[[[[[((((([([([([((((((((([((((([[[(((((([([([([((((([[([[[[([(((((([[[([[[[[[[[[([([[([[((((([[[([[([(((([[(((((([[(([[[((([([(([[([[[[[(([[([[([[[([[([([[[([[[([[(([[[[[([([([[[[([[[([[[[(([([([([((([[([[(([[[([[(([([([[([[[(([[[[([[[((([[[[[[([[[[[[[[([[[[[((([(([[[[[([((([((([[([([([[((([[((([[[([([[([[((([((([([([[(([[([[(([([(([[[(([([((([([([[[[[([[((((([([([[[[(([[[((([[[[([([[((([(((([((([((([(((([(([[[[[[[[(((((([[[([[[([(([[(((([([[((([[[(([[(((((([((([[([[([([[[[[[([(([(([((([[(((((([[(((([[(([[([[((([[((([[[[[(((([[([([([[([[[(([([([[[(((([[[([[[[(((([([[[[[([[(([((([((([[((([([[[[(([((((([(([([[((([[(([[[(([[[[[(([(([(([[([([([[([[[((([([(((([(([[[[([[[([([((((([[([[((([[([(([([[(([([([[[((((([(([[[[[((([(([((((([[([[[([[(([[[(([[([(([(([[([[[(([([[[([(([[[(([([[([(([((([[[(((([[([[([[[(((([([([[[([([[[((((([[[(([((((([(((([[[([[((([([[[[[[[[(((([[[[[[[(((([[([[[[[[([(([[(([[[(((([[(((([((([[([([[[([[[[[([[(((([([[(([(([([[([([((([((((([[[[[[[[([(([((([((((([(([[(((([[[([[[(([[(([((([[([([[(((([[([(([([((((([[([[[((([[[([((([[[((([((([[[[[[[([[[([(([(([([([[([[[[]]]])]])])]))]))])]]])]]]]]]])))])))]]])))])]]])))]]])]])))))])]))])]]))))]])])]])))]))]]))]]])]]]))))]]))])))))])))]))])]]]]]]]])))))])))])])]])]))]))]])]))))]])]]]]])]]])])]])))]))))]]))))]]]))]]))])]]]]]])]]))))]]]]]]]))))]]]]]]]])])))]])]]]))))])))))]))]]])))))]]])])]]])])]))))]]])]])]]))))]]])))]))])]])]))]]]))])]]])]))]]])]]))]))])]]))]]]))]])]]])]])))))]))])))]]]]]))])))))]]])])]))]])]))])]])))]])]])))))])])]]])]]]]))]))))])])))]]])]])])])]]))]))]))]]]]]))]]]))]])))]])]))])))))]))]]]])])))]])))])))]))]])]]]]])]))))]]]])]]]))))]]])])]))]]])]])])])]]))))]]]]])))]])))]])]]))]]))))]]))))))]])))]))]))])]]]]]])])]])]])))]))))))]]))]]])))]])]))))]]))])]]])]]]))))))]]]]]]]]))]))))])))])))]))))])))]])])]]]])))]]]))]]]])])])))))]])]]]]])])])))])]))]]]))])]))]])]]))]])])])))])))]])]])])]]])))]])))]])])])]])))])))])]]]]]))])))]]]]])]]]]]]]])]]]]]])))]]])]]]]))]]])]])])]))]])]]]))]])]])))])])])]))]]]])]]])]]]])])])]]]]]))]])]]])]]])])]])]]])]])]]))]]]]])]]))])])))]]]))]]))))))]]))))])]])]]])))))]])]])])]]]]]]]]])]]]))))))])]]]])]])))))])])])]))))))]]])))))])))))))))])])])])))))]]]]]])))]))]]))))]])))]]))]])])))]]])]])])])]]]]]]))]])))]))))]))]])]]])])])])]]))]]))])))]]]]])))])))))])]]]))]))))]]])))]]]]]]]]))]])])]))]])))]))]]])])])]))]]])))))]))])))]])]]]]]]])])]]])]]])))])]]])]))))))]])]]))]]])])]])]]]]]]])]))))]]))])]]])])]]]]])]])]])))]))]))]]]]))))]]]]])]])])])])])])]))]])])))])]]])))]])))]]]]]]))])))]))))])]]))])]]]])])]]])])))]]])]]))]])]]))]]])))]])]))]))])))]]))]]])])]]]]])]])))]])))))]]])]])]]))]))]]))))])))])]])]])))))]]])]))]]))))]]]]))]]])))))]]))))]])])])]]]]]]])))]])))]])]))])]]]]]))]])])))))])))])]]])]))]]]]])))))]))))])])))))]]))]]]])]])]])]))]])])))))]])]]])))]]])))]))]]]])]]))))]]))]]))]]))]]))]]]]]]))]]])))]])]]))])]))]])])]]))])])]]]])]))]]])]]]))]]))]))]))])]]]))])])]))))]])]]]])]))])]]))]]))]))]))]]]]]]])])])))])]]]))))]]])]])])])))])]])]])))]]]])))]]))))])))))])])]]]])]]])]]])))]])]])])])]])))]]]]]]]])))))))]])]))))]]])))))]]))]]]))]]]))]]))]))])))]])))]]]]])]])))])))))])]))])))))]])]]])]])]))]]])))])]])])]])])])]))]]])]))]]))])))])))]])]]])]]])])]]]])))]))])]))])])]))]))))))))]]]]))]]])]))))]))])))])))]]])]))]))]])))]]]]))))]))]))]))))]])]]])]]))]]])))])))))])))]])]]))]])))]])))))))]))))]]]]))]))]])))]]]))]])]))]]))])))]))])]])]))]]])]]]]])])))])])))))]))))))])])]))]])]))]]]]))]]])))]]]]]]]))))])]]]))]))]])])))]]])]))])])))]]])]]))))))]]))]])])]))))])))]]]))]]))])]])]]])]))]))]))]))]]]))]]]]]]]])))))])]])]))))])])])]]])))]]))]])]))]]))]]))))]])]))))]])]]])]]]])])))]]))]]]))]])))]))])))]]])]]))])]])))])))]]))))]])))])])]]]])))])]]))])])])))])]]))]]]]]]))))]]]])]))]]))]])]]]]))]))))]))]]]]]]]])])))])))]))]])]]))]])))))]))))]))]))])]]]))])]))))]]])))))]]])])]]])]))))))))]]])]))))])])]])])]]])))]])]))]]])))]])])]))]]))]))]]]]])]]]]])]))))))])))]])])]]])]))]]]]]]]]))])]]))))])))]])])])]])))]]))])]]))]])]]]]]))]])])]]))])])))])]]]]))])])))]]])]])]])))])]]))]]]]]])]])])]]]))])))])))]])))]))]]))]])))))])))))))))])]])]]]]])))]))]]]]]]]]])]]))))]]])])])))))]]]))]]])]]]])])])]])]))]]))))]]))))))]))]]]]]]))))))]))]])))])))]])]]))])]]]]))])]]])])]])])]))]]]))))))]))]]])]]]]]]))]]])))]))])]]])]]])))])]]])]))]]))]]]])])])])))])))]]))])))])]]]]))]]]]))]))]]]])]]]))]))])])])]]]]))]]])]))]])]]]])]))])])))]))])]]])]]))))])))])])]])))])))]]])]))])]])]]))])])])))]]]]]))]])))])]))])]])))]]]])]]]]))])]]))))])))])]]])]]]]))])]]])]]])))]]])]])])]]]])]))]]])])]]]))])]]]))]])]])]))))])]])))])]])]))]])])]))]])]]])])]))]]])]])])]])]])])])))]]]))))])]]])]])))]])]))]])))]]]]))]]]]]]))]]])]]]]]]])]]]))]]]]))])]]))]))]))]]]]])]]]]]]])))]])]]])))]]]]))]])])])])]))]]))]])])]))]]))]])]]])))]]))])))]))])])]]]])])]))])])]])])])]))])))))))]))])))]])])))])]])]]]]])))))))]]]]))))])]])]]]]]))]])))))]]]))]))))]])]]]]]])]])])))]])]]]))]]]])]))]]]))]))))))))])))]]))]]))]))]]]))))])))]]))]))]])]))])]]]]])))))))))))])))])]]]])])))]]))]])])]]]]])))]])))))])]))))]))))])]]))]])))]]))))]])])))]]]))]])]]))]]]]]])))])]]))]]]])])))]])]]))]]])))])))])])))]))]])])]))])))])])]))]])))]]]]))]])]])]))]])]]]])])])]))))])]]]))])]]))]]]]))])]]))]))]))])])]]]]]]]))]]]]]]]]]])))))]))])])])])])]]])])))])])]]]]))]])))]]])))]))]]]]]])]])]]]])]]]))])])]))])]])]))))]))]]]]]]]]]]])])]))]))]]]])])])))]]]))]]]])))]]]]]])]])])]]])))])))))))))]]]]]])]]))]]])])])))))]]])]]]])]]])]]]]]]]]))])))))]]))])])))]]]])))]])]))]))]]])]]]))]))]))]]]]]))]]]))]))))))]]]])])))]]]]]))]]))))]]))]])]))]])]]]])]]]]]]]]]]))))]))))]]])]))]))))]])]])]]))]])])]))))]]]])]])))))])])])]]]]]])]))]])]))]]]))))]]]]))]])]]))]]))))])))]])])]])]]]]])))])))))]]]]])))])))]))]]])])]]]]))])]]]]])]))]]))]))))))))))]]))])))])))]))]))])])]]])]))])]])]]))]))])))))]]]]]])]))])]])]]))))]))]]]])]]]))]])]])))]])])])]))))]))]])))]]]]]]))))])])))))])])))])]))]]]]))])))]])]]])]]]]])])))))))))]))))])]]))))]))]]]])]]]])]])])])))]]])])))))]]])]]]]))))]]]))))]])]])]])])])]]))])))])])]]]]])]))]]))))]]]]]]])]]])]))])]]))]]]]])]]])]))]])))]]]])])]))]))]))])])))])]]))))))]))]]]]))))]]]]])]]]))])]]]])])))])]])))))]])]))]]))])]])))]))])]))])))]]]))])]))])])]]])]))])])])))])]]]]])))))))))]))]])]))))]]]]])))]))))]))))))]))]]))))])))]))]]))))])])])]]]])])]))))])))]])))))]))]))]]]))])]])]])))))]))]))))]])]]]])])))]])]]]))])))])]]]))])))]]]]]]]])]]]])]]]))))))])])]]]]))]])]])])))]]))]])]]])]])]))])))))])]]])))]]))]]])])]])))]]]]))))]])]]]])]])]])))))))]))]))))])])]]))))])]])]]]]]])]]]]]))]]])])]]]))]]])])))]))]]])]]]]))]])]]]]))))))]]]])))]))]])]])]]]))]]))))]))]))))]]]))]))]]]]))]]]]])]]]])))]])))]])]]])]]])))])]]]]))])]))])))]]])]])]))))]]])))))]))))])])))))]))])])])]]]])])])]]))]]]])))])]]])]))))]]])]]))]]))]]))])])]]))]]]]]])]]])))]))))]])]]])]]])]]]]]))]))])]])]))]]]))))]))]]))]]))])])]]]))]))]])))]))])))]))))]]]))])))])]))]))))]]]])]]]])]]]]])]))]])]])))])))])]]])])))]))]]]])]))])))])]]))]))))])]]]))))))]]]]))]]))])])]))]])))))]]]])])))])])))]))]]))))]]]])])]))]))]]]))])]]])))])]]]])])])])])])))))]]]]))))]]])]])]])])])])])]]]]])))])])))]]))]]])))]]))])])]]]]]]]))))]]))]]))))))))]]))))])])]))))]]]))])]]]]])]]]]])])]]])])))]))))]])])))])]))]]]))))]]))]))])))]]]]]]]))])))])]]]]])]]])])])]]]))])]])])])]]])])]]]]]]]]])]))))]]]]]]])]]]])))])]]))]]]]])]]))]])])))]])]]))])])]])])]])])])]))])]])))])]]))]]))))]]])))))]]]]])])))])]))])]))])]]]))]))]))]]]]]]))]]])))]]])])])]))))])])))]))]))))]]])]))]))])])))])]))))]]])]]]]])])])]]]])]))])))])))))]))]]])))])))))]))]]])]])]]]]))]]])]])])]])]]])]))))))]))])])]]]]]])))]])])]])))])])]]]])]]]])))])]])))))))))]]])))]]))]]))]))])])))]]]))]]))]]))])))]])))))]]))]]]])]))]])))))]]])))]])))])]]]]]]]])])))))))])]]]])])]]))]))))))]]))])])]))]]]]]]])])]]]))]]]]]]])]]])]]]])))])])))])]]]))))])]]]])))])])])])]]]])])))))]])]))]))]])]]])]]))]]]]))])]))]]]])])])))]]]))])]))]])]]]]]]])]]))]]]))]])]))))])]]]])])))]]]))))])])])]]))))])]))))])])]]))]]])]]]])]]]]])])])))])])]]]]])])))]]]]]]]])]))])]])]]])]]]]))])]])))])]]])])))]]))]]]])]]]])]])]])]])]])))])))]])]]]))]))]]))))]]))]))]])]])))]]])]]]))]]))))])))))]))])]))))]]]))]]])])])]))))])])])]])))]])])])))]])])))]])])]]]]]))]]))]))]))))]])))))]]])])]))))])]]]))]]]))]])]]]]]]]]))]])]))]))]]])])])))])))]]])]]))]))]))))]))))])))))])]])]))))]))]]))]]]))])))]]]]])]])]]])]])]]]))]]))]])]]))]]])]])])])]]))]]]])]]))]]))]]])]]]]])]))]]]]])))]))]]))]]]])]]])]]])])]])]])]]))])]]))])]]]]]))])])]]])]]))]))]))]])])]])))])]]])))])))]]))))]])])]])]))]))]))))])))])])])])]])]))]]))))]])])))))))]]))])))]])]))])))]]]))]]))])]]))))])]]]))]]]])))]]])]]]))]]])]]))))]]])))))]])]])]]]]))))])]]])])]]]])])]])])))]]])])])]]]]])]]]))])))])]))]]]]]]]]])]]])])]]])))])]]]))]]]])]]))))]]]]]])]])))]]))]]]]]))))]]]]]]))]))]])))))]))]])])])]))]])))])])]])))])]]]]]])])))])))]]])))]]))])]]])]))))])]])]]]]]))]))]])]]]))))))]]]))]])]])))]))))]]))]))]))]]]]]))))]])))]]]]]))]]))])]])))])])))))])]]))]])]))])]))]]]]]))])]]]))]]])]]])]))]]]]]])]]]]))]))]))]])]]]])])]]))])]]])])]])])]))))])])))))))))]])]]]]]]]]])]))]]]])))]))])]])])))))))))])))])]])]]]]]])]))))])])))))))))]])]])))]])]))))])]])))))]]])))))]))]]]]]))))])]]]))))]))]))])]]]]))])])]]))]]]]]])]))]))])]])]]])]]])]))])]])]])]]))]]])]])]]]])))))))]]]))]))])]))]))]))))))]])))]]])))]]]])])]]]])])])])]]]]])]]))])]))]]))))]))])])]]])])]]]])]]]]))]))]])]])))))]]))]]]])]]]]]]))]))))])]]])])])]]]]))])]]])]]]))))]]))]]]])])])]]]])]]))]]])))]))]])])]))])]])]]]]])))))])])]]))]]))))]])]]]]))])))))]]])]])]]]]]]])))]]]]]))]])]]))])])]]])]]])])]))]))])]]]])])]]))))))]]]]])]]]))))))))))]]]]])]))])]])])))))]])]])])]])]]))]]]]]]])]))))]))]])]])))])]]))]])]]])))]))])]]]))))]]])]]]]]])]])])))]]]))]]))]])]]])]))])]])]))])]]]]))]))])]))]]]]]]]))])]))]]]))))))]])])]]]]]])]]]])]])])])])))]]]])]))]]])])))])])])])]]]])])))]]))]))]))))]]]]))]]]))]]))]])]]])))]]]]]))]]]])]))])]])))])]]])))])]))))]))))))]])))])))))])]))]]]])))]])))))))])))])])])])]))]])])])]]))]])]]))))])]))])]]]]]))]])]]))])))]])]])]]]]])]])]]]])))))]))))]])]]])]))]))])])]]]]]]])))])]]])]))])]))])]))])]]]]]]]])]))]]))))]])]])]]])]]))]))]])]]]))])]]]]]])])]))]]]]))]))]))))]]]])]))]])]))))]))]))))])]]])]))])]])]))]]]))])]]]]]])))])))])))]]]])])]))]))))])]]]])])))]]]))])]))]]])])]])]])]]))))]))]])]]]])])])])))]))]])]))))))]]]]])])]]]]]]]])]))])))]))]))]]])))]]])]))))]))])])]])]))]]]]]])]])])]))]))])))]])]))]]))))))])))))]))]])]))])]]])])]))]))]]))]])])]]]))])]))))])))]]))))]))))))])]]]])]]]]]]]]]))))]))]])]])]]])]))])))]]]])])]])]])])])))))]]])])]]]))])))])])]))]]]]))])]]]]]]])]]])))]]]))])])])))]))]]))]))))))]))]))))]]))])])]))])]])))])])]]]]]])])])]))]]))))])))]])]))])]])]]])]]))])]]]))]]))])))]]]]])]]]]]]]))])]]])]])]]]])]])))])]]))]))])))]]]]]))))]]]])])])]]]))]]])])]])))]]]]))]]])))]])])]]]])]]]])]]])]])))]))))))]))])])))))])))]))]]]))]])))]])]))]])))]]))))])]]]))]]]]])))]))))]]]]]]]]]))])))]))])])]]])]]]]]]))]])]))]]])]))]))]))])])]]]]])]]])))])]]]])])]])]))])])])]))])]))]]]])))]]]))])])]]])])]]))])])))])]]])])])])])])))]])]))])))]]]]))))]]]])]]]]])])]])])]])])])]]])]))])]])]]]]]]])))])])]])]])])]]]])])]]])]))])))))]))))))))]))]))))])])]]]]])))))))])]]]])])]]]]]))]]))]))]])))])])]])]])]])]]])))]]])))]])))])]])]]]]))]])])]])]]])]]]])])]))]])])]]))])])]))))))]])))))])))])]))]]]]])])))]]]))]]])))]])]]]]])]]])]))]])])))]]]]]])])]]))])]]]]]])]]))]))]]]]]])]))))]))]])])])))])]]))]])))]]))))]]])])]]]))))]]])))))))))]])]])]])))))]]]]])]]])]])])])]]))]))]])])]]))]])])]])])]))))])]]]))))]])))])])]))))]))))])))])]]))))]])))]))))))))])]]])]))]))))]]]]))))]))]]]]]))])]])])]])))]))]]))])))]))]]])])])]]]))])])]))])]])])))]]]]]]])))]]]]]]))])])])))))))]))))))]))]]]]))])))]))))]]]]]))))))]]]]))]]))]]]]])]]))])])]]))])])])))]])]]))])])))])]))]]))])])))]]]]))]]]))]))])))]]))]]])])]])])]))]]]))))])))])])))]))))]]))))]]))])]))))]]]]])])])))))]])]]))]))]])))))])])])]]]]]]))])]]]])])))))])])]))]))])])))])))])])))))])))))])))]]]])])])]])])]]))]))])]]))]]))])))]]]))]))])])]]]])))))])]]]]))))]])]]]]]]))])))])]]]]]]]]]]]))]])]]])])])]])))])]]]))]))])]))))])]])]])))])]]]))])]]]))))]]))]))]))))))])]]))]]))]))])]))]]]]]])))])])]]))]]))))]))]]))])]]))]])])]]])]]])]]))]])]]]])))]))])]]]]]))]]])]))])]])))]))]]))))))]]]])))])]]]]]]]]]]])]]]]))]))]]])]))])))))]]]]))])]]])))))]))]]))]]]))]])]]))])]))]])]])]))))]]])])))]])))])]]]]]]])]]])])]]))])]))]]]]]]))))])]))]))))]])]]))))]]]])]]])])])]))]))])]])]]))))))))]]))))))]])))]))]))))]]))]]]))]])]]])]])))]]))))]])]]))]]]))])]]))]])]))])])])))])]))])])])])])))]]]])))]]])))]]]]))]]])])]]))])])])]))])]])]])])])])])]]]]]))]]]])))])])])]]]])])]]]]]))])]]])])))]]]]))])]])))]]])]))])]]]))]])]]))])])]]]])]]))]]]]))])]])])]))])))))))]))]]]]]]))))))]))])]]]]))])]]])]])]]))])]]]))])]))]))]))]])))))]]])))))])])))]]))))))]))]])]]])]]]])]))]]]]]]]]])]]])]))))]))))]]]))))]]]]]]])])])]]]]])))])]]])))))]))])]]]))]]]))]]])]]]]]]]])))]]])))]]]]))]]])))]])))))])])]))]]]]])])]])))))]))])]]]]])]]]])])]]))]]]]))])]))))]]]]]]]]])])])))))]])]])]])))))])]])))))])])))]]]])))])])])))])])))])))]]])]))])))]]]]]))]))])])]))))]))])]]))])]])])])))]])))]]))))))]]]])]]]]))]])])]]]))]))]])))]]))])])])]]))]])))))]))]))]]])))]]))])])]])])]]]]]))]))])]])]])))))]]]]]]])])]]])])))]]]])]])))]]]]])]))])]]])))])])]])]])]]])])]])])])]]))]))]]]]])))]])]]]])]])))))]))]))]))))])))]))))])])]))]])]))))]]))])))))]))))]]]]])]]])]))]]))]))]))))]))))])])])])]]])]))))])]])))])]])]]))]]])])]))]]]))])]]])))))]]]]])))])])]]))))]]]]]]))]]]])]))])]]]])]]])]])])]]))]))))))]))])))))])])]]]])]))]))))]]))]])])]]])))))))]]])])])])]))))])])))]])])))]))]]]]]))])])]]])]]]])]]])]]]])]]]))]]))]]))]))]]]])])]]]))]]]))])])))]]))]))])]))]]]))]))])])))]])]])]))))])])]]))]]]]]]]])))]])]))]]]])))))]]]])))]])]))))]]])]]]]]]]])]])]))])))]])])])]]]))]]))))]]])))))]]]))]]]])])]]]))])))])]))])])]))]]]]])]]])]))])]])]]]])))]]]]]]]))]]))]))]))])]]]))))])))])]))])]))])]]])))))]))]])]]])]))]])]]]])))))])])]]]))]])]]))])]]]]]]]]]]])])]]]])]]))))])])]]))))))])))]])]))))]]))]])]]])])]))])]]))]))]))))))]]))]]]]))]))])])])]))])]])))))])]])]])]]]])]))]]))])))))])]]))]]])))])]]]])])]))]])]]]]]]]])]])]))])))]])]))]])]))]]])]]])]]))]])))]))]]]])))))])])]])))))))]))])])))])])))]))))]])))]]])]]]]]])]))])]]])])]]]]])]))])]]))])]]])]])))]])]))]]))]])))]]]))]]))]]))]]])]]))]]))])))])]]])))]]))))]]])))]))]]]]]]])]]))]]]])])))]]]])])])))])]])])))]]]])))))]])])))])]))])))]))))]))])]])))))))))])])]]])]]]]])])]]]]]]]])])])]]]]]])]])])))))]]]]])])]))]]]]])]]]]])])))]]]])))])))])])]))])))]]))))]))])])]]]]])))]])])))]))]]]]])])]]]]))]]]]]]))])))]))]))))]]))]]]]]])))]])))]])))]))])])])]]]])]))))]])])])]])]]]]]))]]]))])])]))])))]]]]]))]]]]])]]))))))])]]])]))]])])]])])])])))]]])))]))]))))]])))])))])))]]]])])]))]])]))))))])])])])]]]))])]]))])]]]])))]]]]]]])])]]]])]))]]]]])))))))])]]]))])]]))]))])]]])]))]]))])))])]])]]])])))])))]))))])))]))]]]]))]))]]]]]))]])])))))]]]]]])))))]]]]))])))]))])]))]]]]]])])])]))))]])]]))))]])]])]]])))]]]))))]]]))]))))])])]))))]]))]]]]))))))]))]]]]]]])))]))])))])])])])]]])]])))]))]]))]])]])])]])]))]])]]]]]))])])))])])])]]])))]))])))])]))]]]])))]])]]))])])])]]]]))]]]])])])]]]])]]))])))])]])]))))]])]))))]))))])])]]))])))])]]))))])]))])]]]])]))])]]]]])])))])]]))])])]])]))])))]]]]])]))]]))])))]]))])])))]))]])])]])]))))])]]))]))])]]]))))]])])]))))])])])])))]])]))])))))]])]]])))))]]]])]))]])])])]))))]]])]))))])]]])]]])]])]])]]]])]))]]]]]]])))]])])]])]])]))]])]]]]])]])]]))])]])])])]))]])))]]))]))])]))))))]]]])))))]]]]])))]))))]]]])]))])))]])])]))))]))]])]])]]))))))]]])]))))])])]]))])]]])]]]))])))]])]])]))))))]))]]])]))])))))]))))]))]]))]]]])])]))]])))))))])]])))]]))])]]]]]])))]])])]))])]]])]))]))))]]]]])])]]]))]])])])])])])])]])))])]])])])])])]]]]]]]]]]]]])]]])])])))]]]))]])]])]))]])])))))]]]]]))])))])]))))]])]))])]]])]))]])]))))]]])])])])))))]])]))]])]])))]))])]))])]]]]]))]))]]))))])]])]]]))]))]))])))]))))]])]))))))])))))])]])]))]))))])))))])]]]))]])))])]])]))))]]]))))]]]]]))]])))))]]]])])))]))]]]]))])]))]]))))]]))])])])))]]]])))))]])]])]]])))]))))))]))))))]))]]))]]]))])])])]))))])])]]))]]]]]])]]]]]))]]))]])])))]]]))))]])))]])]]])]])))]]]])]])]]))]]]]]]]]]])))])))])]]))]))]])))])])]))))]]])))))))])))]]]]])]))])]]]])))]])])])])]])]])])])]])]])]]))]))))]))]))])))]]))]]])))])]])])]])]))]]])])))]]])]))]]])])))))])))))))]))]])])])))]]]]]])))]])]))]]])]))]])])]])])]))])))))]]]])]]]])))))]))])])]))]]])))]))]]]]]]])]))])]]))))]])])))])])]))]]]])]]]]])]))]])])]])]]))])])])])))]]])))))]])]]]])])))]])))])))]]]))]]))])))])]])))]]))]))])))))]))]])))])]])))))]])))]]))]]))]]))])])))]]])))]))]]]]])]]]]])]]]])))]]))]]]))]])))]))]))])]]]])])])))]]))]]]])]]])]]))]))))]]]])]]])))])]])])))]]]]))]))]]])]]]])))))]))))]]))])])])]]))))]]))])]]])]))]))))]]]])))))]])))]]]])))])]))]))])))]))])])])))))]))]]])]])]])]]))])]))]]]))]])])))])])]]))))])]]))])]]]])))]]])))))])]]])])))])]))])))]))]]]])))])])])))]]))]])))))]))]))))))])))))]))]]])))]))]))])])]])]]])))))])))))])]))))])))]])])]])]]])]]]))]]]]])])]))]])])]]])]]))])])))]))]])]]))]]))])]]]]])]]))]))])]])]]])]])]]])]]]]])])))))]])]))]]))]])])])])]))))]]))))])])])]]])]))])))]]]]]]]])])])]]))))]]))]))])))])))])))])])]))))))))]]]])])))))])))])]))]])])])]])]]))))))])))]]]]])))))]))])]))]])])]))))]]]]]))]]])]])])]]]]]]))])]]]])]))]]])))]))))]])))]]))])])]]]]))]])))))]]))])]]]])])])])]]]]]))]]])))]]]]))]]))))))]]]]))]])])])]))])]])))]]]))])]])]]]]])]))))]))]))))]]))]])]))))]])])))]))]))])]))])])]])]])])]]])])])])))]])]))))]]]])])))))]]])])])]]])]]])])))))])]))])]]]))])))]])])]])])]]]])]]))]))])]]))]))]))))])])]))))])]]))]]]])]]))])])))))]]]]]]))]])]]]]]]]]))]]])])))]))]]))])]]]]]]]]))])]])]]])]))]])])]]]]])]])))))])]]])]]])]))]]])]])]]]])])])))]]])]]])))))))]))])]]])))])])]]]))))]]]]]]))]]])]])]))])])])]]])))])]]])))))))])])]]))]]]]))))]])]))))])))]]]]]]]]]))))])))]]]])]]))]]])))]]]))]]])]))])]))])))))))])]))))))))))])]]])]]]]))])]]))]))]]])]]])])]))])]])]))))]])]]])])]]]]]))))))])))]]]))))]])])))]))))])]])))]]])]])]))))]))))]]]])]))]]]])])]))]]]])])]))]])))]])]))]]]])])))]]]])])]])))]]]])))]])]))])]])]))))])]]]]))]])))))))]]]]))))]])]]]])]]]]]]))]]]))))])]))]]))]])])])])))]]]])]])])))])]])))])]]])))]]))]]))])))])]])))))]]]]])))))])]])]]])]))]]]))))))))]]]])]]))))]]))))])])])])])))))]]])))]]]))))))]]]))])])))]])))))]])]]]))]]]]]))]]])]])]))]))]))]))]])))]]))))]]])]]])]]))]]))))))]]])]]))]))])))]])))])]))]]]])])]]])]]]]))]]]])])))))))])))))))])]))])]))]]]))])]]]]]])])]])))]))]]])]))))]))]))))]]])))]])])]))]])]])])])))]]]]])])))]])]))]])]))])])])]))]]])]]]]]]])]]))]]]])]])))]])))))))]])]])))])]])])))]])))))])])]])])])]))))])]])]])])])]]])]]))))]]])])]])]])])])]])))]))]]]]])))])))])]))]]]))]]]))]])))])]]])]])))))]))))]]]]))))]))))]])]))]]]]))]])])))]]))]]]]]]]))))]))))))]]]))))])))))])))])])]]]])]])])]]]]]])])))])])])]))]]))]]]])])))]))]]]]]))]))]]]])]))]]]]])]]]]])]]))]])]]]))]])]])])))))]))])]])))])]])))]))))))]))])))))]])]]]))]]))]]])])])))])]])]]]]))]]]]])]]])))]])])])]]]]]])]]]])]]))))]]])))]]))]])))]]]]]))]]])]]]])])]]])]))]))])]))]]]]]]))))]]]])]))))]]))]]]))]])))]]))])]]))]]))]])))])]]))))]]))])]]]]]))]))]]))])])])]]])))]])]])]]]])])])]]))))])]])]]]])]]])))])))))])))))))]))]))]]])]]]]]))])))]]]]]))]])]])]])]])])])]])]))]]))]]])])]))])]]])))])]]]))]]]]))])))]))])]]))])]))]]]]])))]))))]]])]))]]]]]]])])))])]])])]]]]])])])))]))])]))]]])))]]))))]]])]]]))])))))])]))])))))]])])]]])]]))))])]])]])]))]))])]]])))]))))])])]))]))])]))])])]))])))]]]]]))]]])]))])])]))))]))]])))])))])))))])])]]))))))])])]]]])]]))]])]])]]))]]])])]]]])])))])]]))]))])])))]])))]]])]))])]])]]]])))))])))]])])]))]]]]]))]])))]))]])]]])]])])])])]))]])))]])))))))])))]]]))]))])])]))))])]]))]))]]))]])]))]))]]]])]])))])]]])])]))))]]))])])])]]])]]]))))))]]]))]]))))]])]]))]])))])])])))])])]]))]]]]))]))]])])))))))]]]])])))]]]]]]))))]])])))])]))))]]))]]]))))))]])))))])))])])]))]]]))]]))]]])))]]])])))]]))])])))]])))]]))))])])])])]]]]]))))])))])]]]])))))])]]]])))]]]]))])))]))])]]]]]]))])))))])]])]]]))))]]])]]])))))))])])))])))]]]])])))])]]]))]))]))))]]))]))])))]]]]])))]]])]]))]))]]))]))])])]]]))]])]]]))])])]])]])])]]]]])]])]]]]])]]))]]))])))])])))])])])])]])])]]])]]])))))]))))]]]])))]]]])]]])]])])]]]))))))]]])]]])])]]]))]])])]))]]))])])))])]))]))])]]))]))])])]]])]))]])])]]]))))]]])]])])]))]]]]))]]]))])])))])]))))))]])]]))]))))]))]]]]))])))))])]])])))])]]])]])))]]]])])]]]))])])]])]))]]]])))))])))]]]]))])))]]))]]]]]]])))]]]])))])])]]]))]))])]])])]])))]))]]))]]])]]])]]))])]]]]])]))]]]))])]])))))]]])))]]]))]]]]]])]]))])]]])))])]]]))])]))])]]]))])])]]])]]]))]]]])))])]]]]]]]]])])]])]]]]]])))))))]))]]]]]))])]])])))]))]])))])]]]]])])])]))))))]))])))]]]])))))]])])])]]]]]))))])]])])))]])))])))]]]]])]))))])))]))]])]]]))])]]])])))])]]]])]])])])]))]))))])]]]))])))))]]))))]))))]])))]]])))]))))]))))))])])]]]]])])))]]))])]])))))))]))))])))]]]]]]]]])]))]))]))))]]]]])))))]))))))]]])))))))]])])))]]])])])]]]]]])])]])))]))])))]))])]]]]]]))))]])]])]])]))))))])]])))])])])]])]))]])])))]]])]]])))))]))]]])])])))]])]))))]])))])]))))]))]]]))]])))])])])))))))]]))]]))))]))]))]]))]]]))))]]]]))]])]]]]]]]]))))))]]]])]])])]))]))]]]]]]]]]]]]))]]]])]])))]])))])))]]])]]]]])]))]])])]])])]])]])]]]]]]])]])]])])]])]]])))))]]]))]))]])))]])]))))]]]])))]]))))])]]]))]])))))]]]]]))])]])]))])])]))]])]))))))))))))))]]]]]))))]]])]))]))])]]))))]]]))))))]])])])]]]]))]]]])]]]])]])))))))]]]]]))])])]]])]))]]))]))]]])]]]])]])])]])))))]))])])]))]]]])))]))])])])))]))))]]]])]]])])))))])]]]))))]]]])))))))])])])]])])))]]]))))]]]])]]])]]]]]]]]]]]])])])]])]]]))]])]]]]))]]]]]])))]])])])))]))])])))]])]]])]]]]))])]]]]]]]))]))])]]))])))]]))])]]])]))))]]]))]]))]])]]))])])]]])))])]))])])))]]))))])]))]]]]]]]]]])]))]])])])))]])])]))]]))]]])])]]]])))]])])])]])]))])))]]]]))]]))]]]]]])]))]]))])]]]]]]]]]))]])]]]))])])]]]])]]))])]]]))]]]))])]]))]])]]]]]]))])]]]]]))]]]))))))))]])])]]]]]])]])]]))))])))]])]]]]])))])))])]]]]]))]]])]])])]]))]))))))]]))))]]))]]])]])]))])))]]]))))])]]))))])]]))]]]]]]]))]]]]]))]))])])])])])))]]))])]]])))])]])]))])])]]))])))]))]))))])))]]))))))])]]))]))])]]]]]]]])])]))]]]]])])])))])))))]]))))]])]]))))]]]])])]])))]]]]]]))]))]]])]))]]))]]]]]])])])])]]))])]))]]])]]]]])))]]])])]]))]])])]])]))])]))]])))))]]))))]]]))])]])]])]])]))]]]]))]]])])]]]])])]]])]))]]]))])])])]]]]]]])))])]]))]]))]]))]]])]])]])])])))])]]])]]])])])))]]))]))])])]])]]])]]]]]))]]])]]))]]])])]])])]])]])]))]]])]))]]))])]]))])))))))]]]])])])])]]]])])]]]))])]])])]))])]])))]])])]])))]])]]))])])])]))]]]]]]))])))))))]]]]]]))]))))]]]]])))))]))))]])]]))]]]]))]])))))])]]]))]])]))])]]]]))])])))))]])])])])]]]]]]))]]))]]))]))]]]])))]))]]]]]]]))))))]])]]]])))])]))])]])]])))))]])])))]])])])]])]]))])]]])]]))]]))])])]))]]])]]]])]]))]]))]])])]]]]])]))])])]])])])]])])))])]]))]]))]))))]]]))])]]]]])]]]]])))]))]))]])))]])])))]])))))]))]]]))]]]))))]]))))]]]))))]))]))]]]])])]]))])]])]])))])])]])]]]])]])]])))])])]]])]]]]]]]]))))]))))])))]]])]))]))]]]])))]])))])]])]]))))])]]))))]])]))]])]]]]]]]])])])))]]))))]]]])]))))]))])])]]]))]]]])))))])]))]]]])))]))))))])])]]]]])]]]]))]))))])])]]]]]]]])))])]]]]))]]])))])]))))])])))])]]])])])))]])))]])]]]]]])])))]]]))]]])))]]))]))]])]]))]])]])))))))))))]]]]])]))])])]]]])))]])]]]]])]])))]]))]]))))])))))]])]]))))))]))))))]]))]]))])))))])])])]))])])]])])]]))]]))]]]))))]])))]])]))])])])))))]]]])]]]]]])]]))]))]]])))])]])])]]]]]))]])])))])))))]))))])))]]))]))])])]]))]])]]]]]]))]]))]])]])))))]])]]]]]))]])))))])))]]))))))])]])]))])])))))]))]]]))])]])))])])]]]]]])))])]]]]]])])]])))))])])))]]]]]])]])]]))])]])])]))])]))))]])))]]))]]]])])]])))])]]))))]])])]])]]))]]]]]]]]])))]))))]]))]])])))))]]]])]]))))]))]])]]])))))])]))]]]))]]])]]))))]]]))]])]))))))]]]]])])))]]])]]])])]]]]])]])])]]))])]]]))))]))]])]]])]]))])])))]))])])))]]]]]])))]])]))))))]]]))])]])]]))])]]])))]))))]])])]))]))]]]])]))]])])))]]]))))]])]]])))]]]])]))]]))))])])])]])]])]]]]))]])]]])))]])]]]]]]]))]]]))]]])]])])]]]]]]))]])]]]]))))))]]]]])]]])]]]])]))])))]))])])))])]))))]))))])))])]))]))])]))))]]))))]])))]]]])))]))]]]])]))))])))])]))]]))]])]])]))]]))])]])]))]]])])]]]))]]]))))])])]]]))]]])))))]]))])]])])]]])])))])))])]))]])]]]]])])])]])]))))))])))))])])]))])]))]]]]])]]])]]))])])]])]]])]])]])]]))]]))]))])]]]]]])])]])]]]]]]]]])]]])]))]]))])])]))]]]]]]])]))]]]])]]]]])]))))]]))])])))]]]]))))))]))]))]]]]))])])])]]]]])]]]]]])]])))]))))]]]]))]]]))])]])])]])]])]])]))]]]]))]))))]]]))))])]))])])])]])]]))]]])))]]]))]])))])])]]])])])]]))]]))]]]))]))]))]])))]))]]]))]])))]]]]]]])]]]]])]])])]]]]))))))))))))])))]))]])))]])]]))]))])]]]])])]])])]])])])])])]]])]))]])])])])]]))]]))])])]))]))]])])))])))]])]))]]])))])]))))))]]]]]]]))])]))]]))]]))]))))))))])]))])]))])])]))])])))])])]]])))))))]))]]])]]))))])]))])]]]]]]))]]]]])))))))]))]])))))])]))))]])])]]))])])])])]]))])]]])]])]])]])])])))]]])))]]))]]))])))]])))]]]))))]))]]))])]]))])])])]])])))])]))])))]))))]]]))]])]])]])])]))]]]])]]]]])]])]]])])]])]))]]])])])]))))])]))])]]]))))]])))))))])]])])])))]]]]))]))]]])]]]])))))])]]])]]])]]))))]])])))]]]]]))))]])]]))]]]])]]]])]))]]))]])])]]]]]]))))]))])])]))])]]]]]))))])])))])])]]))))])])]]])]]]))]))]])])]])])))])])))]]])]])]]]])]])]]]]]]]]]])])))]]]))])]])]))])])])])]]))]))])))])]))))))]]]))]))))))]]]])])]))))]])]))]]])]))]])))])))))]]]]])])]]]]]]))])])]]))])))]]))))]]]))])]]))]))]]]]]])])]]]]]]))))))]]]])]))))))]]])]]))]))]]]]])]]]])])]]]]])))))]]])]])]))]])]]]]])))])]]))]))]))))])]))]]]))))]])]])])))])])))]]]]]]]]))])]]))])]])))]]]])]]))]]))))])))]]]]]])))))])])))]))]]))]]))]))]]]]]))])))]]]])))])])])])))]]])])])]])]]])]]])]]]])]]])]])))])]]]])])])))]]])]))))]]])))])]))]]])]))))])))]]]))]]]]]])))]]]])]])))])]]]]]))])))))))]]]]])]]]]))])))]))]]])]))]]]]]]))])]])]))])))])))]]]]))))))))]))]]]])]]]]))]))))))]]])))]])])])))))]]]])))]]))]]]]]))]])))))))]))))))]))])]]]])])))))]])])))))))]])])])))])))]]])))))]]]]]]))]))])))])]]]))]]])))]]])]))))]))]])]))]])))]))]]]])])))])]))))]))]))))]]])]])]))]]]]]]]))]))]]))]])]]]])]]))]))]]]]]]])]])]]]]))]))]]])])]]]))])])]]])))]]]]]))]]]]]))]))))))]]]]]))])])])]))]))))]]]))))]]))]]))]])))])])])))]))])])))]))))))))))))))])]])])))]]))]]))]))))]])])))))]))))])]])])]]))))))])))])))]))]))))])]]]))]]])]]))]]]]])]]]))))))]])))])]))]])]))]])))]))])]]]))))))))])])])]))])]])))))]]]]]))]]]])))]))]])]))))))])]))]))))]]]))]]])])])))))])]))]))]]]])]])]]]))]))]))]])])))))]))])]]])]))]]]]]]])]))]))))]))]))))]]]]]]))])]))]])]]))])]])])]]])))]]))]))])])]])))]])]]]])]])])))])]))])]]))]]))])]]]]]))))))))))))))]))))])])))]]]))))]]))])])]]]]]))]]]))))]]])]])]]))])])])]]]])]]]]))]])]])))]]]])]]]]]]]]))]])))]])]]))]]))]])]]))])]]])]))]])]])])]]))])]]]))]])])))]))]])])]))]]]]))])))))))]))])))]))))]]])))]]))])]]]]])]])]])]])))))]]]]))]]]])])])])]))]]]])))]))]]]))])]])]]])]]]]]])]])]]])))])))]]]])]]]))])]]]])]))])])])]])))]]))]]))]]])]]])]))]])))]])])])))]))])])]]]]])]])])))]])))]]]]]])))])])))]]))))))))))])]])])))]))]))]))]))))]])])))]]])])]))]))))]]]))))]))]])]]])]]])))))]))])))]]))]]])])])]]]])])]))])]))]])])]]]]])]))]]))]))]]]])))]]]))])]])])]))])))))])))]))))]]])])]]]))))))]])]]]))])]]]]]])))])]]))]])])]])])])]))])]))])])]]])]])])]])))))]))))))])]]))))]]]])]))])])))])]))))]]))]])]])]))]))]]])))))))))))])]]))))]])]))])]]]]]))]])]]])))))))])))]])])]]]]]))]))))]])]]])))]]]))]])))]]]]]]]])]])))])]))]))))]]]])]]))])]))])]]])]))]))]]])]]])))]]])))]))])))])))]]]])))])])))]))]]])]])])]])]))))]])]))]]]]))]))])))]]]])))))]]))))]])]]])]))])])))])))]]])]))]]))]])]])]]))]]))])]]]))))))])])])])))])]]]]])]]]]))])])])]))))])]])))]))]))]]])))))]]])))])]]]]]])]]))))])]]))]]]]])))]))]]))]]])]))))))])])]])]]])]]]))]))]))]))]])])]]))]]]]]])]]])])))])]]]])))]))])]])]]]]]))])))))])))))))]]]]]))])])))]]]))]))]))])]]))]])]))]]]])])))])]]))]])]))])))])))]])))])]))])))))])])))))]))))]])]]))]])])]]))]]]])))]))]]))]))]])]]]]))))])))))))]])]])])]]]]))])]]]]]))]]]]]))])))]]))]]])]]))])]]))]]])]]]))])])])]]])]]]))))])]]))))]])])])]]])]]]]])))))))))]]]))])]]))))]]])]])])])])])]))]])]))]])))]))])))]]]]])]))))))]]]]])])))])]))))]])]))))]]))])])]]))])])]))])))]]]]]]]]]])]))]))]]]))]]]]]]))))))]]])]]]])))))]]])]]]]))))])])])]]]]]])]]))])])]])))))])]]))]])]]]]]]])))]))])])))]])))))])])))]]])])]])])])]]]]])]]])]]]]])]))))]])))]))]]]]]]]]])]])]]]]])])]])]]]])]])])))))]]))]])))))]]])])]]))]]])))))]])]))]]]]]]]]]])]]])])))]]))]]))]]])])))]]])]))]))]]])])))]))))]))]]])]))])))))]]))])))])))))])))]))]]))])]]))))))))])]])]]))])])])))])]]]]])]))]])]])]]]]]]))]])]])))]])])]))]]])))])))]]]]])]]]))))]))]])))])))]]))]))))]]]))]])]))))]]]))))]])))))])])))]])])))))))]])]])])]])])]))))))])]]))))]])])]]]))])])]]))])))))]])])]))])])])))))))])))))]))]))))])]]))))])))]])))))))]))])]])]]]])))])])))])])))))]))]))]]])))])]))))]])))]]]]]))]])])]])]))]]])])]]]))))]))])]]]])))))])])]]]]]]])])]]))]])]]])])]))))]]])))]]]]]))]]])))]])]]])]])]])]))]]))))]))])])))]))]]]]]]))]])))]]))))))])))]]])]))]]]]))]]]]))))]]))])]]]]))]]]))]]])))))))])])))))]]]])]])]]]]]))]]])))]]]])]]]]])]])]]]]])])))]]]]])]]]])]]]))]]))))]]]))]]))]]]))]])]])]]]]]]])))]]]]]]]))]]))])]))]])])]])]]])))])))]]]]]]))])]))])]))))]]])))]]]]))]]))]])]]]))))]]]]))])])])])))))])]])]])]])]))))))]]]))])]]]))))]]])))]]]]])))])])])]]])]])))))])]])))])])])]]])])]])]]]]]))))]])))])])))]))]]]]])]])]]))]]]))])]]))]))))))]])]]])]]]))]]]]))])])]))])]])])))]]]])]))])))])))))]]])])]))]])])]))])])]))))]))))]))]))]]))]])]))))))))))]]]]))))])]]])]]))))))])))))])))])]])]]]])]))])]]))]]])))))]])]]))]]]]]))))])]])))))])))]]]]])))])))])]]]]]]])))])]])]])))]])]))))]])]]]]]))))))])]])]]]]])])])]])]]])))]]))]))])])])])))]]]])]]))]])]])]]]]))))]))]]))))]]]]]])]]]))))]])))])]))]]))])))]]))])]))))]]))]]]])]])])])])]))])]]])))]])])])]]])]))])]])])]]]]]])))]))]]]]))]]]]))]])))])]]]))))])))]]]]))])])))))]]]]])])]]))]]]]])]]]])))])]]]]))])]]]))]]])))]])))]]])])]]])))]]])]))]]])]]))))]]]])))]])))))]))))]])))])])]]]]])]))]]]))))]))]]]))))])]]))])))))]]])]))]]]])])]))]]])]]]]]])])])))]]]]]])]]))])])])]))]])]))]))]]]]]]]]]))])))))))))])]))]]))))]]]])])]))])]])]]])]]])]]]]]))]])]]]]]])]]))))])))])])]])]]]))))]))))]]))]]))]))]]))))]]))]])]]))]]]]))))]]]])])]])])])))]]]]]))])])])]]])]))))]))]])]])]))])]))))]]])]])]])]))]))))])])]])]]]])]]])]]]]))]]))]]))))])])))))]]))]))])]])))]]])])]]]])]]]]]])])]])])]])))]])])]]))]))]))]])))])]])])))]]]))]]])])]))])]])))))])]]))))]]))])]])]]]]])]]]])])]]]])]]]])])]]]]))])]])]))])]]]))])])])])]]]])))])]))))]])))]])]]))]]]]))])])]]])])))))))]))])]))]]))])))])]]])])])]]))]])]]]))]]]))]]))))])])]])])))]]]]))]))]]]))]]))]))]])]]]])]))]))]])])))])]]])])]]))))]])])]])))])])))]]]])))]))]]])])))]]])))]]]]))))])])])])]))])))]]])))))])])))))])]])]))]])]]]))]))])]))])]]))))]]])]])])]]))])]))])))]])]))]))]))])])))))])]))))]])))])]))))]])))))]))))]]])]]])])]])]])))]])])]]))]]))]]]])]))]]]]]])))]))])]))))))))))]])]])]])))]])]]))]]]))])]]))])])])]]]]]]))]]]))))]))]]))])]))))]]]]])]]])))]]]]])]])])]]))]])]))]]]])]]]))])]]))))])]]])]]]]))))])]]]]]]])]))]]])])])])])))))))]]))]))])])])])]))))]])))]])]))]])])])))))]))))]]))]]))]]])]])]])]]]])]]))]))]))])))])]]]]]]]))]]]])))))))]))])]))]]]]]]]])]])))]]))))]))]])]]]])]]))]]]))))])))]))])]))]))]]]]))]])])]))]]]])))]])]]]]])))]]))]])])]]]])]]]]]))]]]]))]]]]]))))]]]])])]))])]]])))))))]]))))])))))))]])])))])))])])]))))]])]]))]]]))))))])))))]]))])])))])]]]))]]]]])])))])])]]))]]]))]])]]])))])]]]])]))]])])])]))]])])))]]))]]]))]]])]]])))]]]])])))]))])]]))]]]))]))]]]]])]]]]]]]))]])])))]])]))]]])])]])))])))])]]]]]]]])])))))))]]))]])])]))]]])]))]))))]]))])]]]]]]))]]))))))]])]))]]))])]])]]]])]]]]]]])])]]])])])]])]]]))]))]))]]]]]]])]])]])]])]))))]])]]]])]]])))])])]]]]]]]]))]]]]]))])]))]])]]])))))))])]]])]]]]]]]))))))]])))))])))))]))))]))]])))))])]]])])]))]]])))]])]]]])])]]]]])]]]])])]]]))))]])]])]]])]])]))])])))])]))))])]])))]]]])]))]])]])])])]))]]))])])])]))]])]])])]]])]]))]]]]))])]])))])]])]))]])]])))))]])]])))]])]]])])]))]]]))]])]]])]]))]))]])])]))))])]]]]]))])])]))]])]]))))]]]))))])]])]]]]])]]]))))]]]]])]))))))]])]]]]))))]])])]))))))])]]]))])]]]])]])))]])]]))])]]]))]]]])))))]]]]]))])))]))]))]))]]]])])])]]))]]))))]]])]])]]])]))]))]]]])]]))]))]))]]])])))])])])]]])]))])]]))]))])))))]])])]]]]]))])))])]))))]))]])))])]))))))]]])]]]])]))])])]]])]])))]]]))])))])])])))]])]]]))]])]))]))])]])]])]]]]])]]))]]]]])))]])]]))])]]]])))])]])]]))]])]]]])))]]])]))]]))))]]))])))))])]]])))))]))))]])])]]))]])])])]]))]]))]]]]]]))]))]]))]))]]]]))))]]]]))]))))]]])])]]]]))]])))])])))))])))]])]))]))))]))]])]])]]))))]])]])]))]])])))))]]])))])])])]))]]])])))]])))))]]]]]])))]))]]]]]))]]))])]]]]])])))]])])]]))]])]]))]])]])])))]]))]))]))])])]]))]]]]]))]))))))])]]]]))))))])))])]]]]))]]])]]))))])))]])]]])])]])]))]]]]]))])))])]))]])])))))]]])))])]]])))])])])]])])]])]]])])])]]]))]))])))]]]))]))))]))))))))))]]])]]]))]]]]]]]]))])])])]]]])))])]))]))])]))))]))]]))]]])]))])]])])])))))])]))]]))))]]))]))]))]]]]])]])]))))))]))))]])])])]]))])))])]])))])]))])]))]]])))))))]])))])))]]]))]]]))]])]]])])])])))))]]))))]))]))])))))))]])]))]]))]]]])]))))])))])])]]]))]))]))]]))))])])])]]])))]]])]]])]))]]]]])]])])]]]))])])]]))))))))]))]]))))]]]]]])]]]))]))]])))]])]]]))])]]]))])]]])]])]]]))]]))]))))))))]]]])]]]]))))]]])]))])])]))])]])]]]]]]]]])]])))))]]]]]]])]])])]))]])]]])]))])]]]]]))]])]))])]])))]]]])])]]])])])]])))]]))]))]))]))]]])))]]))]])]]))]]))))))))))])]])))]]])))))]))]))])])]))])])]]))]])]])]])))])]))])])]]])]]))]]]]))]]]])]]))))))]]]]))]))]]]])]]))])]]])))]])]]]]]))))]))))]]]])]])))))))])))))])]))])])])])))]))))]]))]))])))))]]])]])]]))])])))])]))]])]]]]]))]])))]]]]]]]])))]]])]]])]]]]))]))))]])]]))]]]]])])])]))]])]]))]])]))])]]])))]]))))]]]]])]]))]]])])]))))))])])))))]]]]))))])))]))))]))])]])])])))])])))])]])]])])]]])))))]]]]))]]]])])])])])])]]))]])))))]))))]]]))]]]]])))])]]]])))]]]))))]))])]))])])]])])])]]])])))]))]))))])]))))]))]]]]))])])))))))]))]])))]])]])))]]])])])]))))])]])]]]]]))]]))))])))))]))))))])]])]]])))))]]]])]])]))]]))))))))]])]]))])]]]]]]]])])])])]])]]))]])]])))))])))])]])))))]))])]]]]])))]))))])])))]))])]))]]]]])]]))]])])]]]]))]))]]])))])))))])])]]])]))))))])]))]]]]])]])])]]]))]]]])]))))]])]])]]))]]])))]))]))]))])]))))]]))]))]]]])])]]]))]]])]]]]]]])))])]]]]]]])))))])]))))])]))))]]]]]]))))))])]]])))])]]])])]))])]])))]))))))]]])))]]]])])]))]))))))]))]]]]]])]]]]]]))]]]]]])]]]]]])]))])))]]]]))])])])]]])))])]]])]]])])]])]]))])])]])])]))]]]))]])]])]])])])))))))))]]))]]])))]))]]]])))]))]])))])]])))))]]])))]]]])]])]]))))]]])])]]]]]))))))))]]))])))]]]])]]]]])]))))]]]])]]]])]))]])])))]))])])])]]]))]]])]]]]]])]))]]))])]))]]]))])]])])]))])))))]))]]]]]))])))]]])))]]))]])]]]))))))]))]])))))]]]])]]]))])]]])]]]]])])])]))]])])]])]])]])]))]])])]]]))))]]]]])])])]))])]]])))))]))]]]))])))]))))])]))]))))]))])))))]])))]])]]))])))]))]]]))]]])])])]))]]))]])]))]]]])]]])]))])]])]]))))])]]))]))])])))])]]))]]))]])]]])))])])])]))])))])]]]])]]]))]]]])))]]]])))]))))]]))])])]]))))]]])]]])))]])))])])]]))]]]])]])])))]]]))]])))]]]])])])))))]))]]))))])]))))]]]]))]))))]))]])))))])]]]])]))])])]]]]])]]])]])))]])]]))))])]])])]])))]])]])]])))])]]]]])])]))])]])])]])]))]]]])])))])))]])]))]])]]])]]]]]]))])]]])]]]]])]]])))]]])))])]])]])]]])]])])])]]))]]])])]])]])]]])]])]]]))]])]]])])]])])]]]])])]))))])]]]))]]])))]])]))]]])])]]]]]))))))))]]]))]])]))]]])])]))])])]))))))])])])])))]))])))]]]])]])])))]]])]))])])]]])]]]))])]]])])])]))]])])))]]]]]]]])])])]))])]]))])])])]]])])])))))))])])]])]])))))])])))]]))]))]))]))))])])])])]]]]]]]))]))]])]])))))))]]))])])]])]))))]))]]]))))))])]))])]))])])])]))])))]]])))]]]]])]))])))))))))])])]))])])])]])]])))))])])))]]]]]]]]]]]])]))]]]])]))])))])])]])))]]])))])]]]])]])]]]))]))])])))))))))]))]))])))))))])]]]]]]]]))]]])]])))]]]])]]])]])])]])])])))]]])]])))]))]]]))])]))])]))]])]])]])])))))])]])])]]]]]])]]])))]]))]]))))))]])]))])]]])]])])))]]])))]]))))))))])]]])]]]))]]]])]]])])))]])))])])])])])]]])])]])]))))]]))])]]])))]])]]))]])]]]])]]]])))]]))])])]))))])))))))))])])])])]]))]]])])])]]])]]])])])]))]]]))]))]]]))]))]]])]]]])]))]]))]))])])))])]])]])]]]))))]]])]]]]]))]])]])])]])])])]]))]])))])))))]])]]]]])]])]])]]))]]]))]]])])])]]])]])))))]])]])))]]])])])]]))))))]])))])]))]))))]]])])])]]]]]]]])]]]]))]])])))))])))))])]])]])))]]))])))])])]])]]))))])))))]))))))))))])]]]]])))]]]])))]]])))]))]]]]))))]]))])])])]])]))]])))])])]]]))])]]))])]]]))])]))]])))))])))])))]]))]])])]))]])]]])]))])]])]])))])])])])))]])]])))))])])]))))])))))]]]])]]))])))])])]]]))]])]))])))]])))))]))]]])]]]])]))]]))]]]]))])))])]]]]])]])]]])]])))]]]]]])]]))])])]))])))))]))])]])])))])))]]])]))))])]))])]])]]))])]))]]]])]]])]))])))])]])))])]]])))])]))])])]))))])]]]])]])])]]])])))]]))))]))))]]])]]]]])))]])))]]]])]])]]]))]]]))]))])))]])])))]]]]))])]])])))]))]]]])))))]]])])]]))]])]]])]])])]))]]])]]]]]]]]])]])]]]])))]]])]]])]])]])))]))])])])))]]))))]]])]))]]))))]))])))])))]]])))]]]]]])]]]])]]])]]])])]])))))])])]))))])]]])]))))]])]]]])]]))])]])]]]]])]]))])))])]])]]])))]])]))))]]]))]]])]]]]))]])]]])))]]]])])))]]))])))])))]])]))]]]))))]]))))])])]))])))])]]]])]))))]]]]))]))))])]))))))]]))))]))))]]]])]])))]])]]))]])]])])])])])]]))])))]))]])))])]]]])])))]])])]))]]])])]))])]])])))]]]]]))]))]))]]))))))))]]]]])])]]]]]))]))]))]])]])]])]]]]]]))))))])]]))]])]])]]]))))]]]]])))]]]])))]]))]])))]])))]))]]]])))))]))])]]]]]))])])])]))])))])]]])])])))))]]]))]])]]))]]]])])])))]]])))]])))]])]]))]])])))]])])))]])))])))]])]]))))]]])])]))))])))]]])]))])))))))]])))]])]]]]])]]]])]))]]))]))]))])])]]))])]])]]))]])])))))]))]])))))]))]))])]]]])]]))]])])]]]))]]]]]]])))))])]))))])]]))]])])))))])])]]))]]]))))]]])]])))]])))]])]])]]))]))]]]))]]))))))]]]]]))]])))]])]])])])]])])))))]])]]]]]))])]))]]))]]]]]]])]]]])])])]]]]))]))))]]]]))])]))]))])]))))))]]]]]])))]]])]]])))))]))))]]))]])))]]])]]))]])))]))))]])]]))]]]]))))]))]]]]]]]])]]]]))])]]])))]])))]))]])))]])))]))])]]]))]]])]))]]])])]))))])))]))]]])])])]])))]]]])]])]]))]]))]))))])]]))])]]))))))]]]))])]])))]])]]))]])])]])))]]]]]]))]])]]))])))])]))))]))]]])]]])))))))]]))]]]]]))])))))]))))]])]])]]])))]))]])]])))])]])]))]]]]))])])]]]]]]])]])]]))])])))])]]])]]]])])]]]])]]]]))]))]]))))]])]))]))]])]])]))]]))]]])])]]]))]))]])]]]]])]]])])])]]])])]))])))]))])])]))]]))))))]]))))])]))]])]))])))]))]])])))]]]))))))]]]))))]]]]]]))))]])]])]]]])]])]))])])])))])))]))]))]])]))]])))])))))]])]]]))])]])]))])]]]]])))]]])))]]]))]]]))]])])]))])]])))])))])])]))]))))))))])))]]])]]]])])]))]]]))]))]]]])])])]])]])])]])))]]])])))]))))])]]])])]]]]]))])])])]]])])))])]])))))]]))]]]]))]]]]])))]))]])]))])])))]))]])))]])]]]]]]]])))])])))]]))])]]])]]))])])])]))])]))))])])])]])]])]))])))]]]]])]]))))]))]]])]])])))])])])]]])))]]]))]]])]]))]]]))])]])]]])])]))])]]]]]])))))]]]))))])]])]])))]])])]]]))))])]]]))])])])]]]])]))]))))])]])]]))])])]]))))))])]])]))]]])]]]]]))))))))]]]]))))]]])]]]]]))]])))]])]])]))))))]))]))]))))]))]]])])])))])))])])])))])))))]])))])))])))])]]]))])])]))]]])])))])]]])))))]))))])])]))]]]]))])]]])])))]))]]]]])]]])))]]]]])]))]])]])])]))]]]]))]])])]])))]]])]]]]]]]])]])])))))]])]))]]]]]))]))]]])]]]])])]])])))])]]])))]))]])])))]])]))))))))])])))])))))]))]))])]])]]]]]])])))]))))]])])]))))])])])])])])))]])]]))]])]))])]]]]]))]]]))]))))])])])])])])))]]))]]]]))]])]])))]))))]))))))]))]]]])))])])])))])]]]]))]))]]))))]))])]]]])]])])))])])))))]]]))]])]])))]]]))]]])])]))]))))]))))])])])])])))]])))]]]]]]))]]]))]))]]]]]]))]])))])]])])))])))]]))))])]))]]))))]))])])]])]))]]]]])])]))]]])]]))])]])]))]]]]])]]]))))]]])])])]]))]])]]]]]))])]]]]])]])]]])]])])]]])])]])]])))))]]]]])]))]])]))]])])])))]]]]]])])])))))))])]])])]]]])])]])])]])))]]]]])]))))))))]])])]]))]]]]]))))]))))))]])]]]]]))])]])]))))])))]]]))]))])]]])]))]]]]])]))])]))]))]))])))]))])])]]]))])]])])]]))))]]]]]]]]))))]]])]]]])]]))]])])]))]]]])))))]])]))))])]])))))))])]]])]]])])))]])]))]]])]]))])]]]]])]))])])]]]])))]])]]))]]]])])])]]))])))))))])]]]]))]])]])])))]))])]))])]])))]])]])]])]))])]]]]]])))])])]]))])]]]]])])))))]]])))]))))]]]]])]])))]])]]]]]]]])]]))))]]]]))))))]]]]))))])]])))])]]]]])))]))]))])))))]]])]]))]]))])]))))]))])))))]])]]])]]))])]))]))]])])))))]]]))]])])]))]))))))]))]))])])])]]]]))])))]]])))]])])])]]]))]]))])]]]]))])]])))])]]])))]]]]]]))]]]]]]))]]])]))]]]]]]])])))]])]])]]]]]]))]]])])]))))])]])])))])))])))]]))))]]))]))]])))]])]]))))])])]]])))])]]))))])]]))])]))]]]]])]]])]))))])])))]]))]))]))]]])]]]))])]]])])))))))))]]])]])]]])])))]])]]])))]]]]]])]))))])]]]))))]]))]))]))])))]]]])))]]]))))]))]))]])])]])))]]))))))])])]])]]])]))]]]]]]]]]]))))]])])))]]))]])])]]]]]))])]]))])])))]])))])]])]))])])]]]]])]]))))])]])]])]]]))]]]])]])))))]])))])]]]))))]]])]])]))]]]]]]])])]]])))])])]]])))]))]]])))))]])]]]))]))])]])]])))]])]]]))]]]))])]])]])])]]]]]]]])]))]))])]]))]]]]))]]))]]]])))]])])]]]))))]]))]]]]))]]])]))]]))])]])]])]]))]))])))]]]))])]]]]]]])])))]))])))]))))]]]]))]])))])]])]]]]]])])])]))])])))))]]]])))])]]))])))))]]])]]))])])]))]]))))]]]])))]])]]]]]))))))))]))]]])])]]])])])]))]]])])))]))))]])])]]]))))])]]]]))]])]])]))))]])]]]]]))])])]]])))]]]))]]))])])))]])))])]]]]]]])))))])])])]])])]))]]])])))])]]])]]])]]))]]]]]]))]))])]]]]]])))]]]))))))]))))))]])]]]]])]])])))))]]]]]]))))))]])]]]))))))))])]))))]])))])))]])))]))))])]))))])))])))]])])]))]))]]))]]))])]]])))])]]])]]]])])])])]]])))])]]]))]])]]))]]]]]]]]]])))])]])])])]]]]]]))]]))]]]])))]]]]))]]])]])]])))])))))]]]])]))))))]])])])]))])))]))]])]])])))]]))]))])))]]))))))]))]])])])]]]))]]]]]))]]])]])]))]]))])))))]]))]]])]])))]])]]]]])])]]]))]]]]]]]]]))]])]])]]]))]))))]]]]))])])))]]])))]])])]]])]])))])))]])])))]])))]]]))))]]]]]))]))]])))]))))))]])]))])])))]])]]])))]]))]]]])]]]]]))]))))]]])))]]]]]]))])))))))))))]]]))))])])))]))]])]]]])))))]]]]])])))])))]))]]]]))))))))]])]]]))]))]))]])]])]])]]]]])]]]]]]]))]]]])])]))])]))])])))]]]])))])]]]])]])])])]])]))]]))])]])])]])))))]])]]))))])]]]])])]])]]]]]))))]]]]))]]]]]]))]))]]))]])))]])]]))]])]]))]]])])]])]]))))]))]]))])]])))))))))]]]]]])])))]]]]]))])])])]]]]])]]])]])])]))]])]])))])]))]))])])]]])])))]])])))]])]])]]])]]]]]]))))]])]]))))]])])]])]]))]])])]]]]]]))])]])])))]]])]])])])]))])]])]]])])]])]))))]]]]))))]]]]))))))))]]])))]])))]]])]))]))])]])])))])]))))]]]]]]]]))]])]]))])]])]))))]])))]]]))]]])]))])])]])))))]])])]]))]]]])]]])]))]]]])]]))]]]]]))]))]]))]]]])))]))])]])))])])))]]]]]))]]]])]]]))))]]))]])])]]])))]))]])]])])]))))])]))))))])]]])))])]]]])]]]])))])])])))])))]]]])))))])]))))])))])])])))))))])])]]))])]))]]))))]))))]]]))]])])))]])))]]))]]]))]]))))))]]))])]]]]]]))))]]))]]]))]]))))]]))))]]))]))])])]]]]))]]))]]))))]]]]]]])]]))]]))))))))])])]]])])]))]]]))])]]])))])]))]]]))]]))))))])]])))]]]]]))]]]))]))]))]]])]]]]]]]]))])]])])])]]]])]]])))]]))))))))]]]])))]))]]))]))]]]))))]]])]]]]]]]))])]))))))))]]]]))])]])]))]]])])]]]])]]]))]))])]]])]])])))))]])]]]]]]]]))]]]]))]))))))])]]]))]])])])))])])]])))])]]]]]))))]])])))]]))])]]])))]])]])])]])))]]))))]]]]])))))])])])]]]]]]]])])]])]]]]))]])])])))]]]]])]]]]]))]]])])]))])]))))]])]]]]))])))])]))]]]]]]])]))]])]]))]]]]]))]]]]]])]]])]))]])]]])]]]))))])]])])]]]])]))])))])]))]])]]]])]]])])])]])]))]))]]]]]])])))]])))]]]])])]])]])]))]])])])]]))]]])]])]])]]))])])]))))]]])))])])]))]]])])]])))]]])))]]]))]))]]]]]]])))))])])))]])])]])]]]]])])))))))]])]))))))]))]]]]))]])])]]]]]))])])]))])))])])]]]]))]]]])]]]]])]]))]]])]))])])]])]]]))])]]]])]])]))]]]]]]])]])]]]]))])]])]])]])))]])])]]]])]])))])]))))]]])]))]])]]])]]])]))]])]]])])]]))])))]]]))])]]))])]))])]])])])]]))])])]]]])]))]))]]])]))]))]]))))])))]))])])])]))]]))]])])))])]]]]])))]))])))))))))]])))]])]))]])])]])))]])])])]))))]))))]]))))])))]]]])]))))))))))))]]]]]]]])]]]))]])]]])])])]))))]]]]])]))]]]]])]])])]]))]])]])]]])]))))])])])))])]))])))]])]]))]]]])])]))))])])])]]]))]))]]]))]]])))))]])))])))]])]])])]])))])]))]])])))))))])])])])])]])]])]))]]]))]]]]])))]]])]])]]))]))])]))))]]]]))])))])]]]))]]]))])])])))])))]]))])]))])]]))]])]]]]))]]))]]))]])]])]]]]]]]]]]])]))]])))])]]]]])))])])))))])]))])])]]]))])]]))]]))]]]]])]]]]]]]))]])]])]])))])))]])]])))])]]))]))]]))])]]]]]]])]])))])])))]))])))]])])])]]]]]]))])])]]))]]])]])]])]))))]]]])))])))]]]]))]))]])])])]))])]])]]))])]]]])]))))]]))])])])]]]))])]]]]))))]])])]]])])]]))]]]])))]]))]]))]]]))])]))])]))]])]])))]]]))))]]]]))])]]))]]))]]]]]]))]))]]]]]]])]))])]))])]]])])))])]))))])]]]]]]]))])])]])]]))])]]))))))]])]])]]])))))]]))))]))]]]))]))))]]]))])))))])]]]]))]])])]]])]))]]]))])]])])])]))]))]]])))])])]]])]]])))]))]))]]))])]])))]])]]]])]))]]])]]))]])]])]))]]]]))]])]])))])]])]]]]]]]])])]))]]]]]]]])]])]))))))])]))]]))]]])])]))))))])))]]))])]]]))])))))))]]]]])]]]])]]])]]])]]])]])])]])]])])])])]]])])))))]]]))]))])])])])]])))]])]]))]])]]]]])]]]))]))]])])])])]))]]]]))]]]]]])]))])])))))))]])])]]))]))])]))])])])]])]]]])])))]])]]])])]]]))])])]))))])]))))]]]))]))]))]]))]]])])]]]])]))]])]))]])]])]]))])]])]]]]]]]]])]))]]]]]]]))))]]]))]]]])]]))]))]))]]))])]]])])])))])])))]]]]]])]]]]))])]]))))]]]])])])])]))))]]))]])])]]]))]))])])]]]]]]))))])])]])])))])]])])))]]]]]]]])))]))))]]]))]))))]]])))]))]]))]]]])))])]))]])))])]]]]]]]])]))]]))))]))))])]]]))]))]])))))])])])]))))))])))])])]])]]))))]])])]))]]])])))]))))))))]]])))))))])]]]]))]]]]))]))])]])])])]]]]])))]]]])])]))]]])))])))]])])]]))])]])]])]]))])]]]))])])]])])]))))))]))]])]]))])]))]]]]))])]])]])))])))])))]]]]]]]]])])))]])])]))]])))])]]])]])))))))])))]]])])])]))]))))])]])]))])]))))]])])]]])))]])]))))))]]]]])]))])]))]])])])]]]]])]]]]]])])]]))))]]))]))])))]]]))])]]])))))]]]])])]])]])]]])]])]]]))]]))]])]])])))])]]])]]))]))]]])]))]]])])])))))))))]]))))]))]]])])]]])]]]])])]])]])]])]))]))))])]]])])))])])])])]))]))]])))]]]]]]])])]]]))]]]]))])]]]]])]]])])]])]]]]))))))]])]])]]])])]])])]]])]]])])]])])])]])])]]])]]])]]])]]])])))]])))]])]]))])]]]]]]]))]])])])]]]])]))])]])))))])]])])]]])]])))]])]]))]]])]]]]]])))])])]]]]])]]))])))]]]))))]))))])])])])))])))]])]])])))])]])]]])]]]))]]))))))])))]]]))))]])])])))]]))])])])))])))])]]]))])]))])]]))]))))))]])])])))]])])]))))])))]])]))])]])))]]])))]]))))]]))])])])))))))])]])])])])))]])])])]))]]]]])]]])]]))]))]]]))])]]]])]])]]])]]]]))])]))))]])))))])))))]]))])))])])]]))))])]])]]]))]]])]]]]))]))))))]])])))]])]]]]]]))))]]]]]))]))))))]])]))]])]]]))]]]])))]]]])])]]]))])])])))]]]]))]])))]))))]))])]]]]]]]]])]])]))])])]))])]))))))))))]]]])]]])]]]))]])]])))))))))]))]])))]]])]])))])))))]))]])]]])]])]]]])]]]])))]))]])))]))))))])]]]])])]))]]]]]])))]))])]])]]]])])])])]])]]]]])]))]])))))])])]]]))]))]])]])]]]])]]))]]]]]])]))]))])]))))]]]]]])]]])]]]]]])]]])]])))))])]]]]]]])])]]))]])])]))])]]]))]))))]]]]])])]))]))]))]]))])))))))]])]))]])))]])]])])]))]))])]])]))))]]]))]]]]]])]]]]]]])]]])]])))]))]]])])))))]]]]])])]])]]]]]]]]]))]]]))]])]]))]))]]]]))])]])))])])))])]]]])])])))))))))]]]]]]]])])))]]])])))])])))]]))]]]])])]]]))]])))]]]]])])]))]]]])])]])))]]]])])]])])))))]]]))]]]))]]]])])]])))]])]]])))]]]))))]))]))]]]))))]]])])]))]])]])))))])]))]])]))])))]))))]]]]])])))))])))])]]])])]]]))]))))]])])])]])))])])))]))]]]]))])))])))]])]]])))])]])))]]]))]))]))))])]]))]]]))]]])))]])))])))]]))))]))]]))]])]])))]])])]]]))]]])])]))])]))))])]]]]])]])))]]]]])))])]]]))])]]])])]))]]))]]]])])]))])])]])])])])])))))])))]))]))]))))]]))]])]]]))])])]]])))))])))))]))]))])))]]]))]]]))]))])))]]]))]]]))))]))]]])])]])])])])))]))))]])]]]]])]]])]])]]]]])]])]]))))))])]])]]]]]]]))]))))))]]]]))]]]))))]])]]]])))))]]))]))]]]])]))])]]]]))]])))))])]])]]]]]))]])))]])]]]])))])])]]))]]]]]])]])))]])]]))]])])]]]))))]))))])]])]])]])]))])])])])))]))])))))]))]]]]]))))]])]]]))])]])))]))))))]))))]])])]))]))]]))])))])]])))]]]])]))])])]]])]]])))]]])]])))])]])])))))))]])]]]))]]]))]]])]]]])])]]])))))]])]])]))])])))])])]]]]))))])]]]]))]])]))])]]])]])])]))))]])]))])))]]])])])]]))))]]]])))]))]))])])])]]]]))]]))))]]]]))]]]]])]))]]))))])])]])))]]))))])]))))]]]]])]]]]])]))])]))))]])]]])))]))]]]))))])]])]])]]]]])))])])]]]]])))]]))))])])])]]]))]]])))))]]]))))]]]))))]))))]]]]])])]]]]])]))]))))))]])))]]]))])))])]]))]))])))]))))]]))))])]])]]]])]])]]])]])]]]]))]]]]]))]]]])]))]]))]]]]])))]))))]])])))]])))))]))])))])])])))]))])]))]))])]))))]])))]]]])]))]])]))))])])]]])))]])))]]]])]]]))])]]))])))))))])])])])])))])))]))))]]]])]])]]]))]])))]))]))]]]]]))))))]]]])]))))])]])]])))))))])]]]])]])]]))]])]]))))])])]]])]]]]]]))]))]])]])]])])])))])]))]]]))]]]])]]))))]))]])))]]))]])])]]])))]))))])]]]]))]))])])])])]))])]))]]])])]])]]])]))]]]]]]]]])]))])]]))]))]])])])))]]]))])]])))))]]]))]]])))])])))]])])])]))))))])]]))))])]])))]]))])))]))]))]]])]])]]]))]]]]]])))]])]]]])]])]]))))])))])]))))))))])))))])])])))]]])])))])))])))))])]])])))))]))])]]))]])))]])))])))])]])]))])]))]]])]))]]))]]]))]]]]])]])])])))])])]]])))))]]])]))]]]))]]]]))]]])))]]]])]])]]]]])]]]]]))])]]))))]]]))]])]))])))))])]])]))]])])])]))))]])]))))]])])]])]]]]]]))]))])]]])))])))]])]))])]])))]))]))))]))))])]])]))])))]]))]))]]]))))])])))]])]])))))]])))))])])))])]]]))])]))]])))]]])])]))))]]]])))]])])]))]))))]]))))])]]]]])]]])]]]))]]]))))]]])])]]))]))))))]])))]))])]]]))]))]]])]))]]))))]))])]]]])]]]]))])]]))))))])]))]]])))))])]])]))]]]]]]]])]))])))])]]])])])))))]])])))]))]]]]]))]]])])]]]]]]])))]]]])])))))]])]])]]])])]])]])))]]])))]]]])))]]]]]]])))]]])])]))]))]))])]]]])])]]]))]])]])]]))])]]))]])])]]]])))))])])]])])))]]])]]])]]]))]])]]])])])]))]])]])]]])])])])])))])))))]))]))))))]]]])]))]]]]])]])]])]]]]])]]]]]))))]])])])]]]]])]))])])))]))]))))])]]])))]))]])]))]))])]])]])))))))))))]))]))]]]))]]]]))))))]]])])]))])]))))]]))]]))]))])])]))))]])))])]))]]]])]]]))]))])]])])]))]]])))]])])]])])]))))])])])))]])]))])]]))]]))))]])))))]])])])))]]]))))]))]))])]))]))])]]]]]))))]]])]]]])]])))])])]])])]])]]))]]]])]]])))])])])]])))]]]))])]])])]))])])])))]]])])]]])]])))]]))))]]])]])]]))))))]]])]))))])])]])))]])]))))))]])])]]]]))]]]]]))))))])]])]]))]))])])]]]]]]]))])]])])))))]]]]]]]]]))]]]))]]))]])]])])])))]]]))]))))))]))))])])))])]))))]]]])]])))]])]]])]])]])))))))]])]]])]])))])])))))))])]])]]])])]]))]]])])])))]]])])]])]])))]))]]]]])])]])))])])]))]]))]])]]]])])]))))]])])])])]))])]])]))))]])]]]]]))))])]))]]))]))])]]]]]])])])])]]]])]])]]])])))])]]]))))]]))))))))))))]]]]])))))]]])])))]]])])]))])])]))])]))])]]))]]]])))]]])]]]]))])])))]]])]))])))))))))])])])])])])])]]])]))])))]]]])]])]]]]))]]]]]])))])])]]]))]]))))]])]))]))))]))])]]])))]))))))]]))]]))]])]]]))])))))])]]])]]]]]]])])])]]))])]]]]))])]]]])]])])))]))]])))])))]]])))]])])])]])])))]))]]]])])]]]))]]])]))]])]))])))]]))])]])))]])])]))]]]]])]]]])])])])))]])]]]])])]]))])))]]]]]))))]])])]))])]])]])])])]]))))])))]])]]))]]]])))))])]]]))]]])]])]])]]]])]))])))])]]])]])))))]))]))]])))]]])]])]]]])])]])])]]]])])]))]]]]]]])]))]]])]))]))]])])))]]))]]]])]))))])])))))]))])))))])])]))]))))]))]))]]])]))]]]])]])]])]))]]]])])))))]]]]])))])]])]))))])])))])])]))))]])))]))))]]])]]]]])))])]])))]])]])])]]]]]])])])]))]))))]]])))]])])))]]]])))]])]]))]]]))]]]]]))])))]]])])])]]))]])])))])]]]])]])])))))]]]))))])]))))])]]]]])]))]]))]]])]]])]]]]])]))))]]))]]))]))))))]]]]]])))))]])])])]])))]])]]])]))))))]]))))))))])]]])]]]]))])))))]])]])]])))))))))])]]]))]]]]])]))]]))]]]))])]]]))]]]]]])]]]]]])]]]))]])]]]])]]]))])))]]))])))])]])]))))))))])]))])))]))]]))]]])))])]]]])])])]]))]]))]])))])])])]))]))]))])]])]]))])]])]]]]]]))))])))))])])]]]))]]]))])))))))])])))])]]])]))]]]]]]]))))])]]))])))]])))]))))))])]]]]]]))])]]]))])])]]])]))]])])])]]]]]])))]]])]]])))])))]))])]])])]]]]])]]]]]]])]))]]]])))))]]))]])])]))])]])]]))]))])]]]])])))])]))))])]]])])])])))])]]]]])]]))))])]]]])))]))])])))))]]])))])])])))]]]])))]]]]]))]))])]])]])]])))])]]])])]])]))]]]))]))))]]))]))]]]))))))]]]]]]]])])]])]))]]]]])]])]))])]))]))])]))))])]])])))])]]]]]))))]])))])))])))])]]))]))])])]])]]]]))))]))]]])])))])]))))]]]]]]))]])]]]]]]]))])))))]])))])]]])))]])]))))])))))]])])])]]]))]]]))])))])))))])))))]]])]))]))))))]))]]))]]]])]]]))])]]))]))]])]])]])))]]]])])])))]])]]]])))])]))))])]])]]]))))))]])))]))])]]))]]]])))]))]]])]]))]])))))]]]))]]]]]))]]])])]]]]))]]]]])))))))]]) ([(([[([[[[([[([[((([[[([[[(([((([((((([[([([([(([[[(([[[((([[(((([([([[([((([(((([[(([(([([(((([(([([[[([[[([(([[([[(([[[(([[([[[[([(([[[((([[[(([[[([[[([[(([[([[[([((([[([([([(([[[((([[[[([(([[(((([[([(([((([[([[[[[[[(([[[[([(([(([(([[(([(([[((([[[([([((([((([[[[[[((([([[[[[((((([[[(([(([[[((([[[[[[[[(([([(([(([[([[([([[([([(([([(([[[[[(([([(([[([([[(([(([((([[([((([[(((((([([([([([(([[(([([([([[[[[[[[(((([((([[([((((([[[([[(((((((([((((([((((([([[[[([[[((([([[(([[[([([[(([[((([[([[((([[((((([[([([([((([(([[[[(((([([(([([([([[[[(([[(([[(((([[[[[[(([([[[([(([[(([[[(([[([([[((([[((([[([([[([((([[[([((([([[(([(((([([(((((([[([([([[((([[[(((([[(([[(([(((([((((([(([[[([[[[[[(([[[((([[[([[([[[([[([((([([[((([((((([(([((([(((((([[[([(([(([([[[[[[[[([[(([(([([([(([((([[(((([([(([[([[[[([[[[([([[[[[(((([([([[[(([[[([([(([(([(((((([([[(([([[(((([[[[[([[[[[[[((([([[[[([[([[[[[[[[([(([[[[(([(([[[[[[[([(([[((([((([([(((([[[([[([[(([((((([(([[([[[(([[([(((([[[[[[[[[(([[(([([[[([(((([[([[([([[[([[(([((([(([[(([[([([[(([(([([[([(([[[[[([[[([[[[[[([(([([([[[[([[[((([[(([([[(((((([(([([([([[([[[[[(([((([[((((([([(((([[([([([[[((([((((((([[(((([((([[[[[([(([((([[([([((([([([([[[(([[((([[([[(([[[[(([((((([[[([([[(([[([[(([([[[[[([((((([(([([[(([([(([(([[([((([([[[([[[((([(([([([(([[[([[[[([[([[[[([[(([[(([[[[(([((([((((([[[([([(((([([((([[(([[([[[([([((([[[[[([((((([[[[[[[((([([[(([(([[([[(([[[[([([([((([[([[(([((([[[[([[(([([[[[[(([([([[[([[([[[[(([(([[[([(([[[[(([[((((([[[(([([(([([[([([[[(((([[[[((([[([([[[([[([[[[[[([[([[[[[((((([[[[((([(((((([(([(((([(([([((([[[((((([((([[([[[[([[[((([[[([[((([([[([[[[([[[([([(([[[[((([([((([[(([[((([[[[[([(([[([(([[[([(([[([[[[((([[([[[[((([([((([([[[[(([[[(([[([((([([[[([[([[[((([[(([[[([([(([[([[[[(((([[[([([([([([([([((([([(([(((([[([(((([((([([[[(([[[[[(((([(([[(([[(([(((([[[([([(([((((([(([(((([[[(((([[([(((([[([(((([([[[[[(([[([[([[[[[[(([([[[([([([[((([([(((([[([(([((([[([([[([[[[(((([([[[[[[[[((([((([[[[([[[[([((((([(([[(([[[[([(([(([[[([[(([((([([[[([[[([[[(((((([[([[(((([([(([[([([[[((([((([([([[[[[[((([[((((([((([[([([((([([(([[[(([([[(((([[([((([(([[[[[(([((((((([[(((([[[((([[[[(([[((((([((([([(([[[[((([([[([[[[[[([([[((([([[[([[([[([[[[((((([[([[[([([((((([([[[([([[[(([[(([([[[[([[([[(([[(([[([[[([[[([([[[[([[(([(([[([([([([[[(([([(([[(([[[([[([[((([(((((([[(((([((([(([(((([([[([((((([[[(([([([[(((([[((((([[([(([[([[(((((([([[([(((([([[[[([[[[[[[([[(((([((([[(([([[[((([[[([[([[([([([[([[[[[(([(([((([[((([[[[[([([(((([[([[[([([[[(((([[[(([([[([([([(([(([([((([([[[[((([((([(((([[[([[([[[[(([[([[((((([(((([[([([((((([([[(([[(([(([[[([([([[(((((([[[[[([[[[[([([[([([[([[[([([[[(([[[[[(([[([([([([[[[([[[((([(([((([([((((([([[[[[[[[[([([[(([([[(([[(([[[([[([([(([[[([[((([[([[[[([[[[((([([[[[[[([[(([[[([[((([[((([[[[([((((((([[((([([([(([([(([[[[((([([[[(([([(([[[([[([[[[[[(([[[((([[([[[[(((([[([([[(([[[([((([[([[[[([(([[[(([[[[([[(([[(([[([[[[([(([[([[[(((((([((([[([(([([[[(([[([[([[([([[((((([[((([([([([([[([([([[([[[([((([([[([(([[([([[([((([[[[([(((([(((((([([(([(((((([([([[[([[(([((((((([[[(((([([(((([(([[([[[((((([[((([[[([([[(([[([[[([[([[[[[((([[([[([[([[[((([([([([[[[([[[[[(([([(([((([[[[[[([([(((([([[[[[[((([[([[((((([(([[[(((([([[[(((([(((([(((([(([[[([[([[([[([([[[[([[([([[[(([(([((([[(([[[((((((([(((((([([((([((((([[[(((([([([[([((([[[[([([[[[([([[([[[(((([([([[(((([[([[[[(([([[[[(((([([[[[([(([([[[([[[([[[[[[(([((([([([[[(([[((([([[([((((([(([(((((([[([[(([[[([(((([[([[[([((([(([[[[[[[[([(([[([[[([[[[([([[[[(([[[[[[([[[[([([[([([([([(([((([[([(((([[[(([([[[([[[(([((([(((([[([(([(((([[[[(([([[[(([(((([(([[(([((((([((((([[[([[[[([((([([(([(((([[[[[[([[[[((((([([([(((([[([([((([([(([[[[([[[[[([[(([(((([((((([(([([[(([([[[([(((([([([[([[[(((([([((([[([(([[((([[([((([[[(([[[[[[[[[[([((([([[[([([(((([[(([([[[([(([[([(([[([[((((([[((((([([[((([((([((([(((([[[[([[[[[[(([[([((((([(([[([[((([[([([([([([([(([((([([[([[[([(([((([[[[(([[([[[([[(((((([(((([([[[[([([[[([[(([(([((([[([[[([(((([(([((([([[(([[([(([(([((([[[((((([([([[[[(((((([[([(((((([(([[([[(([[[((((([[(((([[[(([[[[[[[[[([([([[[([((([[(([([([([((([([[((([[((([(([(((([[(([(([[[(([[[([[[([[[[([([[([([[[([([[((([([(([((([([[([[(([((([([[((([[[[[[[([[[[[[[[[(((([[[(((([[((((((((((([[([([(((([([([(([([[(([([([[[[(([[[(([(([[[([([[[([([[(([([[[[[([([([[[[[(([[[([((([(((([[([([((((([([[((([[[([[[([([([[([(([[[([([(([[(([([(([((((([(([[[[([[[([(([(([[(([[([[([(([([(([[([[[[(([([((([(([[[[[[((([[([[(([((((([[[[[(([((([[[([[(([[(([([[([(([[(([[([[[((([[([[([([(([[[([[([([(([[([[([[([[([(([([[([[[[([([[[([[[([[([([[[(([([([[[[(([((([[(((((([(((([[[[(([(([[([([((([[([([[([([[([(((([([(([[([((((([[(([((([[([(([[(([(([([(((([[[[([[[[[((([[(([[(([([[[(([((([[([[[[([[[([([([([[(([[[[(([[[((((([[([((([([([((((([([([((([[([[[[([[[[(([[[([(([[[((([([[(([[([([([(((([(((((([[([([[[([([(([[(([[[[(([[([((([[[([(([([[[([[[([([[([([([[([[[(([(([([([[[([[([[([([([[[[[[(([([[[[([[([([(((((([[[[[([([(([(([[([[[(((((([[[((([([([[[[((([([[[[((((([[(([([[[[[[[[[((([([([(([(((([[([([[(((([([[([([((((((([[[(([([(([[([[(((((((([([[((([([[(([[([[[[[[[[[([[((((([[[[((([([((([[(([[([([[[([((((([(((([(([[[([(([[([([[[[([([[([[((([[([([([[[[[((((([(([(((([(([[(((([([([[([([([([[[([(([[[([[([[[[[(([[(([([([[([[((([[[([[((([[([[[((((([([((([([((([([(((([([[[[[[([(((([(([([[([[([[[(([[[([[[(([((([(((([[([[[([(([(((([[([[([[[[(([((([[([(((((((([[([[([((([[([[[[([[((((([[[([[[((((([(([([[[[[((([[(([(([([[([[[[(([(((([[[((([((([([[[(((((((((([([[(([([[[([[[[((((((((([([[(([([([([[[[[[[[[[(([[([[(([([([(([(([[([([([(([[[(([[[[[((((((([([([[[[[[[(([([((([([((([[(([[([([([[(([([([[(([([([[[[[([(([(([([([([[([([(([((([[([[[[[[([([[((([[(([([[([[[[(((([((((((([((((([(((([([[[[((([(((([((([(([([[[([[((([(([[[[[([[[([[[([[(([([[[((([[(((((([[[(((([[((((([((((([[(((([([((([([([[(([(([(([[([[([(([[[[[([[[([(([([[(([[([(([[[([([(([(([([([[([[[([[[[(([[[([([((([([([((((([([[([[(([(((((([[[[(([(([[([[(([((([[[[[[([[[(([[[[[([((([([[((([[(([([([([([(([([[(([([[(((([[[([([(((((([[((([[((([(([[(((((((([[[([[((((([[[((([[(([(([([([((((([(([([([[(((([[(([([(((([[[([[(([[(([[(((((([(([(((((([[(((([[[[((([[((([(([[[([((([[[[([([(([([[(((([(([([[(((([(([(((([[(([[((((([[[([(((([([([[([([(([[([[([[((([[(([[[((([[([([[([[[[(([[[([[([([(((((([[([([([(((([([([([([([[[[[[((([[[([(([(([(([((([[[[([([[[([([(([[[(((((([([([(([([[([[[[([[([[(((([[[([[[[[([[[([[[[[[[(((([[[[[((([[(([(([([[[([[([(([[([[[([([[[([[[(([([[[([([([([([([(([[(([[([[[[[(([[[(((([[(([[((((((((((((([([(((([[(([((([([(([((([[([([[((((((((([([(((([([(([([(([[[[(([([[(([(((([[((([([(([[(([[[[([([[[((([(((([[([(([(([([((([([([[[([[[[[([[(([[([[[(([([([[[([(([([(([([[[[([[[([[(((([(((([[(([[([((([[[[(((([[([[[(([[((([((((([((((([[[([(([[(([([((((([((([[([(([([[[(((([[([[[[(([([(([[[[[[(([[([([[((((((([([[[((((([[((([[[([[([((([((((((((([([[[[([[[((([[(([(((((([[[[(((([([(([([[([[[((([([(([[[[[(([[[([([[(([((([(([[([[[[[[[[[[([([(((([[((([[[((([([[[((((((([[[((([([[([[((([(([(([([[[[(([[((([[[(([([[[([([(([(([((([[[[(((([([([[[([[[[(([([([[[[[([[[[([([(([[[(([[([([([[[([[[((([[[([(([[([([[([(((([([[(((([[[([[(((([([[[((([([[[([([[[[(([[([([[([([(([[(([([[(([[[(([[[[[[[[[([([(((([(((((([([(((([([(((((([(([[[([(([[(((([[[[[([[(([[([[[(((([[[[[([[(((((([[[([(([[[[[(((([(([((([[([((([([(((([(((((([([([[([([([[[[([((([[[([([((([(([[([(([((([[([([(([[[([[[([(([[[[([([([[[[([([(([[[[[((([[(([[([([((([([([([[[((([[([[(([([(([(((([((((((((([[[[[((((([(((([([[([[((([(([[[[[[[(([(([[([([[[([([(([([[(((([([((([([[([[[[[(((([([(((((([((((([[[[[[[[([[(([([[([((([[((([[[([(([[([(((((([([([(((([[(([((([(([[((((((([[[[((([([([[((([([([[(([([(((([(((([([[[[[[[[[[([([[[(((((((([([[[[[[[([[([([((((([([([((([[([[((((([[[[[[[[([([([[([[(((([[((([[[(([(((([[([(([[([([[(([([([(([[[(([[[[([[[[[(([(([((([([[((([[([(([([((((([(((([([(([((([[[([(([([([[[[[(([[([[[[[[[[[(([[((([([[([(([[(((([([[[(((([([([[[([((([([([[[[[[((([[[([((([[[[[(([(((([([(([[[[[([([[[(((([[[([([[[[([(((([[(([[[((((([([((((([[(([(([((([(((([((((([[[([([[((([[([(([(([[[(((([[(([([[(([[[[([[[[(((([(((((([[[([([([[[[(([([([([[(([[([([[[([(((([(((([([(((([[(([[[[(((([([([([[([([[([[[(([[(([([(((([(((([[((((([[([[[(([([[([[[[((([[[(((([(([([[([[[[[([[((([([([[[[([([(([(((([(((((([([[[(([(((([((([[[([[([([[[(((([[([[(([((((([([[(((([[[((([([[([[(([([(((((([[([([([[([[(([[((([([([[(([[([([(([(((([([(((([[[[[([[(((([(([([(([([(([([(((((([((([((((([((([([[([[[([(((([[[([([([[([[((([(([([([([[((([[[[[[([[[[((([(((([([([[[[[[[(([[[[(((((([([[[(((([(([([([(([[(((([([[(([[[(([[(([[[(([[(([[([([([([([((([[(((([[([((([([[((([[([[([[[[([[(((([([((([([(((([([([[(([[(([([[([([([[((([[(((((([[([([[[((([(([[([[([(((((((((((([(([([[(([[[(([[(([[(([[((((([[(([((([([[[[[(((([[[[(([[[[(([[([[[([(([[([[[[(((([((([((((([[[[(([[([[[[[([(([[[([[(([[(([([[[[(((([([((([[[((([([[[[[[(([([(([[(([([[(((([[([[((((([([[[[((((([([[[([([([([[[(([[(([[[[(([[([[(([(((([((([(([([[([[([([[[[[((([([([([([[[(([[(((((((([[[[([([(([([(([[[((([([[[([(([(([[(([[(((((([[([[[[[(((([([[[[[[[([([[([([([[(((([([([[((((([[(((((([((((([(([([[[[[([([([[[([([[([([[[(((((([([[[(([[(([(([((([([([[[([[(((([([[(([[([([([([([[(([[([[([([[([((((([(([((([[([[[([(((((([[[(([(((([([(((([((([[[[(((((([[[((((([([((([[[[[(((([([(([(((((([(((([([[[[[([[[[([([([[(((([([([(([(([[(([(([([(([([[([([(((([[[([([[[[([[(([((([(((([[[([((((([[[([(([([([[([(([[[[(([[([[[[((((([((((([[((((([[([((((([([[[(([([[(([(([((([(((((([[[([((([[([([((([[[([[(([[[[[[([([[[((([(([(((([[[[[([[[(([[[[[[((([([([[[[(([(([(([([([(([([[[(([([[(([[([([(([((([([[([[[[[[[[[[[[([((([([(([[[([[[[([([[[[([[[[[[(([[([[[[([([[((([[[([([[([[[(([[[([(((([[(((([([[([(((([([([(([([[[((([(([[([[[[[([(([[[[[[[((([([[[[[[[[[((((((([([[[[((([[(([(([[(((([(([[[([((([((([[[([([([[[[[[[([((((([(([[([[[[((([[[[([([([(([(([([(([[([([[([((([((([[([[[(([[[[([(([([([([((([[[[([(([([([([[((([[((([[[[([(([((((([([[[[[[[[[(((([([[[[[([[(([([(([[([[(([[([(([[[[((((([(((([(((([(([[((([((([[(((([[([[(((([(([(([[(([[((([([((([[[[[([[[[((((([(([((((([(([[([([([([[[([[[[[[([[(([(([[[[(([([[[([([[([[(((([(([[([[[((([([[([([[((([[([([[([(([((([[[[(([([[([([[([([[[[([([(((([([[[(([((([[((((((((([[([((([[[[((([([[[[([([[([[((((([[(([[(([((([[(([([[(([[[([(([[([([[[[(([(([(((([[(([[[([(([([([(((([[(([[[[(([[([[[[[([[[[((((([(([([[([([([[[(((([((((((([(([[(((([[(([[[[[([[[[(((([[((((((([[[([((([([[(([[[[((([(([[[(([[([[([[(([[([[([([([[[[(((((([([((([[[[[([((((([[([[(([([(([([[(([(([([(([([(([[(([([[[[[[(([([[[[([[[((([[([[[[(([(([[([[[[[((([(([([((([[((([[([([[[[([(([[[(([[[((([[[[((([(((([[[[[((([(([([[(([[[(((((([[[[((((([([([[[([([(([[[([([([[[(([([([[[[[[[([([[[([([([([((([([[([([([(([([((((((((([([([[([[((([(([([([([[[[[[(((((([[[[([[[([[[[([((([((([[((([([[[([(([[[[([[[([[[(([([[[[[[[(((([(((([(((([([([[([([[[[[[[((([[(((((((([([([[[[[(([[([[([[([(([[[([(([(([([[(([[(([[[(((([([[((((((([(([([[[[[((([[(((([[([[([[(([([([[[(([([[((([([[[(([[([[([(([(([[[[[[[[(([(((((([((((([([[[([(((((([[((((((([((((([[[[[[[[((((((([([[(([[[[[[[(([[[(([(([([[[[([[(([((([[[[[[[[[[[(([[([([(([([(([[(([[(([[(([(([([([([(([[(([(([([[[([[(([([(([[([[[[[([[[([((([(((([[(([([([(([(((([([([([([((([(([([([((((([([[([[(([(([([[[[[([((((([[((([[([[[[[[[([([((([(([(([[[([[(([([[([[([(((((([([[[[(([([([[([[[[(((((([([([(([[(((((([[(((([[(([(([[[([([[(([[([(((((([[[[((([([[[([[([([([[([([[(([([([((([[[[(((([[([(((([[[([(([([[[[([([[[[[(([([[[[[[[([[[[[([[[([[[(([[[(((((([[((([[(((([(([[[(((([[([((([[[[([[(([[([[(([[[[([[([[[([[(([(([(([(([[[[[[(([([[(([((((((((([(([(([[(([([([([([[[((([([(([[([[[([((([([([[[((([([[[[[[[[([([([[([([[([((([([[([([(((((([[((((([[[[[[([[(((((([[[[[(([[[[[((((([[([(([(([[[[[(((([[([[(([([[[[(([((([[((([([((((((([([[(([([([[((((([[((((((([[[(([[(((([[([[(((([[(((([(([[((([[(((([([([([[([[((([([[[[(([((([(([((([[([[([[[[(((([([([[([(([[((([[[([([[([[[[(([[([(((((([[(([(([([[[[[(([[(((([([(([[[[[(([[((([[[[[[[(([[(((([[[([(([[([([[([[[[[([([(([(([([[(([[(((([(((((((([([([([[([[((([((([[(([([([[[[[(([[[((((([([([[[[[([([[([(((([[[[[[[[[([[[[(([[[([((([(([[[([(([[[([[[((((([(((([[[[([(([(([[([((([([[[(([[[[[([[[[[((([([((([([([[((([([[(([[[[[([[[([((([(([([[([([[(([[[[[([(((((([(([[(([(([[[[([[[([[([([([(([[([(([(([[([([[((([(((([(((((((([[[[([([[[[[([[[(([([[[[([([([[[[[((([([[[[(([([[[(([[[([(([[((([([(((((([(([[((([(([[(([(([((((([([[([[[[[[[([[([[([[([([[[[(([([[[([[[([[[[[[[[[[(([(([((([((([[(([(([[[([((((((([[((([[[((([[([[(([([(([[[[[([[([([([[([([[([[[[([[[[[([[[[((([([[[(([[[(([(([([[(([[[[(((([([(([[((([[([((([((((([[(([([([[([[([([([[([(([([([([[[[((([[[[[([[[[(((((([[([[([([(([((([[[([(((([[[[[[([(([[([[[[[[([(([[([[[[[([[[[(([(([[(([([[[([([(((([([([(([[[((([(([([[([[([([([[((((([([([[[([[[(([[[(([(((((([([[((([(([(([[[(([[([[([[((([((([[(([([[([[(([[([[(([(([([[(([[([[[[([[[((((([[[(([(([[[(([(((([[(((([[(([((((([([(([[(([((((([[([[[([[([([([[([[[[([([([[([[([[([([([[((([[[([([[(([([(([[[[(([[(([[([[[(([(([(((([([[([((([(([(([[([(((([[[[[[(((([((((([[[([[((((([[([(((([[([[(([[([(([[[[([([((((([[((([[([(([([[[([((([([[(([[[((([[[(([[[[(([[([([((([[[([[[((([([([[[([((([[([(((([(([[([([[[[(([(([[[((([((((([[((([(((([[[[(([([[[[[[[[[[[(([([([[([([([([[(((((([[((([([[[[([[[[([[([([([[(([[((([([[([[[[([([[(([[[[((([([(([[([([[([[((((([[(([[([[[[[(([[[([([((([((([[(((([([([[((([[([[[[[(([(([(([[(([[((([((([([[[([((([[[(([([(([[[[[[((([(([[([([[[[([[(([[[[[((([[[(([[([[([(((([(([([(((((([(([(([[([([[(((([[[(([[[([(([[[[([((([((([[([[[[[([[(([[(([[([[[(([[([(([(((([[[[([[((([((([[[(([[[([[[(([((([([([[((((([[[([[(([[[([[((([[[([[(([[[[([[((([[(([([[[(((([([[([([[((((([[([[[[([([(((((([[[[(((((([([([([([[((((((([(([[((([(((([(((([[([[[([([[(([[[([[([[([[([[[[([((([[([(([[[[(([([[(((([((((([[[[(((((([[((((([[[(([[(((([([[([[([[[[[(([([(([([[[[([([(((([[(((((([([([[([((([[[([[((((([(([[(((((([([[[(([([(([([[([((([([[[([[(((([[(([[[([(((([([(([([[[(((([([([([([[[([[[([(([[[[[[(([[([([(([([([([((([(([(([[([[([([[((([(([(([[[((((([[[[([(([[[([(([[(([([([[([(([([((((([[([[[([(([[[([((([([(([([[(([([[[([(((([[((([[[[[([((((((([[((((((([[((([((([(([([[[((([((([([[((([([[(([([(((([[([(([((([([(([([[[[([[[[(([((([(((((([([[[([[([([([[(([([([((([([([[(([[([([([[[[[[[[((([([([[[([[([((((([[[[[([[([[((([([(((((([[[(([([(([((((([[[[[[([[(([([[(([[(((([([[(((([([((([([(([(([([[(((([[([([((([[[[[[((([[[([[[((((([[[(([(([(([([([([(([(([(([[((([[[([[[([([[([(([[(([(([((((([((([[((([(([([((([[([[[((([[[[([[[[([(((([(([[[[[([((([(([[[((([((([((((([([([([(([[(((([([([(((((((([((([[((([([(([[((((([([[([[[[(((([[(([(([([(([([([[[((([([[[[([([([[[[(([([[([((([[[[[(([[[[(((([[[[(([[[[([[[([([[([(([[(([((([[([([((([(([[[[(([([(([(([[([[[[([[[[(([(([(([[([([(([[[[((((([([(([(([(([(((((([(([([[(([[[[([[([(([([([(([([([[[[([[[([[([[[([(((([[[[([[[((([(([(([((([((([[([(([([([[[([([(([[([([[[([(([([((([[[[([((((((([((([(([([((((((([[[[[[((([([([([((([[([[(([(([[([[((((([[[[([[((([[[[([([[([[[(([([([[(([[(([[(([([[((([[(((([(([[[(((([[(([[(([[[([([([[((((([([((([[[((([(([(([[([(([[(([(([([[([[([[[(([([[[((([([([(([([[(((([[[[(([[(([[[([([[([[[[(([([((((((([[[(([[[[[[[([([([[[(([([([((([[[((([[[[(([(([[[([(([([[[[(((([(([((([[([(([[([(((([((([([[((([(((((([[[[(([[(([([([[(([([[(([((([([[([([([([[([[([[((([([([([([([[[(([([[[[(([(([[([([[([(([[[([[(([[[[([(((((([[(([((([([[(([([([([[([[[(((([[((([([([[[((([(([[((([((([(([([(([([[([([(((((([[(([[[((((([([([(([[((([[(([[((([[[[([[([[([[[[([[[[[((([[[[(([(((([([(([[(([[[((((([[(([(([(([[[[([(((((((([([((([[((([[[(([([[([((((([((([(([([((([[[(((([[[(([[[([(([(([([([[[[[((([[([(([[((((([([[((([[[([(((([([[[(([[[[[[[[((([[([[(([[([(((([((([([((([[[[([[(([[[[([[[[(([[([[([((([[([(((([(([[(([[(([(([[([[(([(((([[((([(([[[([((((([([[([[(((([(([[[((((([((((([[(([(([([[([(((([[[([[[[([([(((((((([[(([[([[([[([([(([[[(([([[[[([(([(([[[([[(([([([[(([[((([([[([[[[([[[[([([([[([[([([[[[((((((([([[[[[[(([([((([[([([[[(([([[(([([((([(([[[[[([(([((([([([(([((([[((((([[([[([([([([[([[([[((([[(([(([[[([[((((([[(((([([[[([[[((([([[(([([[[[[[[[(((([[([([((((([[[[[([([[([([(([[[[((((((((([([([((((([([[[((([[(([([[(((([(([[([[[([[[[([[((([[[(([[(((([[[(([[([[[[[[([([([[(([[[[[[[(([[(([([(([(([[([([[[([[[(([[([[[[([([[((((([([[((((([(([([([((([((([(((([[[[[[([[[[[[[(([[[([([([[([[(([[[(([([[[([((((((([[(([(([(([(((([([[([([(((((([([[((([[[[([[[([([[(([([[[(([[[([[[([[([[([((([[([[((([([(((((([([[[[[([[[(([[[(([[((([[([[[[((([((([([(((([[(((([[([(([[[(([([[([[[([[[(([[(([([[[[([[[[([(([[((([[((([(((((([([[(([([([(([(([([[([([([(([[[[([[([(([([([([([[(([((([[([(([(((([[(([[[[([([[[([([[(((((((([[[[[([[(([([[[[([[((([[[(([((((([(([(((([[[(((([(([([[([([((((([([([[[([([([[(([[[([[(((([[([((([[([[[([[[([[[[([[[([([([[[[([(((([[[[([[[(([(([[[[[([[[[([[([([((((([([[[(([[[[([[((([([[(([[[([[[[([[((([((([[[[(((([([[[((([([[(([[([(([(([([([[(([([([([[[[[([[[(([(((([(([[[[([([(([(((([(([([([([[[(([[(([(([([(([[[([([(((([((([[[([[[([([[[[([(([[([[((((([[([([(([(([([([([([([(([[[[(([(([[((((([[[[[[((([(([(([([(((([(((((([((((([([[[(((([[[[([((((([[[([([(([(([([([(([((([(([[([([([[(([((([(([(([[(((([(([[(([(((([((([[((((([(([[([[([([(((([((([[[[((([(([((([((((([[[((([([[(([(([(([[[((([((((([((((((([([([[([[[([[[[[([[([((([(([((([[[(([[([([[[[[[(([([[[[([([[[([[[((([(([[[((([[([([[[[([([[[(([((([([([[(([[[[([[[(([[[(([([([(([([([[[([([([([([[[((([[[[(([[[((([([((([[([([[[[(([[((([(([([([([((((([[([((([[[[[[[(((([([[[(([(([[([[[[([[[(([([([[([[((([[((([([[((([[[((((((((((([[[([((([(((([(([((([[[(([[([([[[[(([[[([[(([([([([[([(([[[[([[([[(([((([([[([((([(([([(((([[[([[([[([[(([([[([([(((([[([[(([([(([[([[((([[[[(([([(([[([[(([[[[([[[([[[([[[(((([([(((([([[[([[[[[([[[[([([([([([((([(([((([[([([[(([([[(((((((((([([(([[(((([[((((([((((([[[([(([((((([((([(([[[[([((([[[[(([[([(([([[[[([[[([[[[([[(([[[([[([[[[[(([[[[[[[((((([[[[([[([[([[[[(([([[[[[[[[[[[[[[[[[([[(([(((([([[[([((([([[((([([(((([[(([(([[((((([((((([(([[[[[((([([[[[(([([((((([[(((([[([(([((([(([[((((([((([(([([[[[(([[[[([[([((([(((([([[[([[[(([([([[[([[([[[(([([[(((([[(([(((([(([[[[[[[[(((((([([((([(((([((((([[[((((([([(([[([(([[[([([(((([[[([((([([[([[([[([[[[(((([(([[[((([((([[[[[(([[[[[[[((([[[[[([((([[[([([[[[(((([[([(((([([[[[[[[([((([[([[[(([(((([([([[[(((([([[[[([[([[[(([[([[((([[[[(((([(([[[([([[([[([[(([[[[([[[[[(([([[([[([([[[[[[([((([([([[[(([[([[[[[((([[(([[(((([([[[[((([[((([[((((([([[[([[[[(((((([[[([(([([[([([(([[(([([((([(((([((([([(([[((([([[[[[[[[((((((([([((([([[[([([([[(((([[([([[[[((([(([[[[[([(([([[[[([[([([([[[[[([[[([(([(([[[([[[[[[(([[([([[([(([[([([[[(((([[[[(([[([[[[[[[((([([[((([[[[[[([([((((([([([[([([[[[(([[[[([[(([([[(([(([([[[(([(([[[(([([[([[([[[((((([[((([[[[((([[[(([((([[([(((([[([(([([[[[(((([([((([[[[(((([[[((((([[(([[([((([[[[[[[([(([([(([[([([((([[((([((([(([([[[(([[[[[(([([(([((((([(([[[([[[([[([[[[[(([[[([([[[(([(([[[(([[([([([[([[[([([(([[[([[(((([((([([(([((([([[[(([(([[[(([(((([[[(((([[[[[[[[[([[([(([([([([[([(([[(([[[[[[[([[([((([([[[[((([[(([(([([(([[[[[[([(((([[[[[(([((((((([[[[((([([(([[[[[[(([([([([[[([([[[((([(([(([[[([([([(([([[((([[[([((([([[[([(([([[[([[((([(([[[(([([[([[((([([([[[([(([[[[[[[[[[((([[([(([((([([([[((([([[((([[[[([([([[[(([(([[[[[([[[([[[[[[[[[((([[[(((((([([(([[([[([([(([[(((([((([[[[((([[((((([[([(((([[(([[[[[(([(((([(([([([((([[[([([((([[[(((((((([([[(([[[(([([[[[(([([[[((((([([[[[[([(((([([([[([[[([([([[[[[[([[([((([(([[((((([(([((((((([[((([[(((([([[([((([([([([[[((([[[[[([(((([[([([([[[[([([[[([[[(([([[([([[[[((([[(([([([((([[((([([[[([[[[[(([([[(([(([((((([(([[[[(((([[([[[[(((([([((([([[[[([[[[((([[(([([([([[([[(((([([[([([([(([[([[([((([[([[[([[[([[[[([[[[[(([[(([[([[[([[((([[([[[(([[[([([[([([([([([((((([((([(([([[[(([(([([[[[(((((([(((([[[([([[((([[([((([[(((([[[((((([[(([(([[[[([[[[[[((([[(((([([([[([(([[([[[([[([[([([((([(((([(([[[([[((((((([[[([[[[[(([[(([[([([([([[[[[[([[[((([(([((([[[[([[[([((([([(([([[([([(([((([[[[[(((([[[[[[(((([([(((((([((([((([((([[((([[((((((([((([(([[[(((([[[[[[[((([[([([[(([(([[[((((([[[[([[[(((([[([[([[[[[((([(((([([[[([([((([[(([([[([(([((([[[([[[[([[((([[(([((((([([([[[((([[[[([([[([([[[[([[([([(([[[(((((([([(([((([[((([[[[(((((([[[([([([(([[[(([([((([[[[([([[([[([([[[((((((((([([(([[[[(([[[[([[[((((([(((([[[(([(([([([[[[((([([(([(([[([[((([[[[(([[(((([[([[([((([([(([[([[([[([[[[[[([(([([((((((((([([(([((((([([[[(((([((([[[([([[[([[[([[[[[[[[[[[[(((([[[(([([[[((([[([([[([[[([([[([[[((([[((([([([[[[([((([(([([[[([([(([([[((((([([(([((([(([[[[[[([[(((([[([[(([([[([[[([[((([[[[((((([([(([([([([[(([(([((((([[([([[([([[[[[[[[[([((([((([[([[((([([[[[[[([[[((([[[([([(([[[(((([[([[([(([(([(([[[([(((([[((([[[([[[[([[([[[(((([[[(([(([[((((([([(([(([(([(([[[([([[([[(([[[[[([[((((([(([[([((([(([([((([[[[[((([[([([([([[([[[[[[(([(([[([[[(([[([[([[([([([[[([([(([[([(([([[(([(([([([[((([([(([[(([((([([([[[[(([[[[([[(((([(([[(([([(([([[((([([[(([[([([[[[([[[[((([[([[[[[([(([([[[[[[[[[(([[([[(([[[([([(((([[([((((([[([(([((((((([[[[[[([(((((((([((([((([[(([[([[([(((([[[[([(((([[((([(([((([[[((([[([[[(([[[[((([([[([[([(([[[[([(([[[[([([[[(((([([[((([[[(((([[[[[((([[[[([([[[(([((((([[([((([[[(([([(([([(([[([((([(((([((([(([(([[[[[((([[[[(([([[(((((([([(([([[[(([[([([[[[[[[(([([[[[(([([([[([([([[([([[([[[[(([[[([[[(([[(([([(([((([[[[[(([[[[([((([([([(([[[[[[([([([[(([((([(([(((([[[[([[[([[([(([((([([[((([[[([[(([[[([([(((([(((([[[[[([([([((([[([([([(([((([([[((([[((([(([[([([[(([[[[([[(((([([[([[[([(([([[[((((((([(([([[[([([((([([[([((([([[[((((([[((([([[(([[[[[[(([[(([(([((([((((([(((([([[([((([([((([[([([(((([(([[[[[[[([[[([[[([[([[[([(([(([(([(((((([(([[([((([([[((([(([[[([[[((([[[([[[((([([([([[([[[[[[[((((([[[(((([[([(([([([[(([[[[[[[[((([([([(([[[[([([(((([[([([[[[[[((((((([(([([([(([([[([([[([([((((([(([(([([[(([[[[(([[[(([([([(((([([(((([[(([[(([([[[[((([[[[[[([[[(([([(([[((([[([[([((([[[((([([([(([[((([([[[(([[[([[[(((((((([[([[[[(([([([[(((([([([[[[([[[(([[[([((([[[[[[[[([[(([[((([(([((([[[([([[[([[[[([[([([[[[[[((([(([(([(([[[[(([[[(([[[([([[[[[[[[[[[([[[[[(([[([[[[(([[((([[([[[([(([[((([[([[([(([([[(([[((([[((((([[[[[[[[([[([(((([([(([([([(([((([([(([[[(((([([[[((((([[[[[[([(([((([[[[[((([[([[([((((([([(((([[[[((([[[[([[([([([([[[((([[[[(([((([([([(([([([([[(([[[[([((([(((([([[((([((([([(([[[(([([((((([(((([[[((([((([(((([[(((([(((([[[[[[[[[(((((((([(([[((([((([(([[(((([((([[(((([(([[(((([[[[([[[([([([((((((((([((([((([[(([[([[((([[[[([[[((([(([([([[(((([([[[([(([[[([(([[(([([((([[([[([[[[[(([[[([[([[[([[[[([[([[[(([[[((((((((((((([([[(([[[([[(([[(([[[([[([[((([([[(([[[[[[([([[[[[((((([(((((((([[(([([[(([([[[[(([[([[((([[([[([[([((((((([([[(([[(([[([(((([([[[([[[([[[[[([([[[([[[[[[((([[[([[([([[[[([[([([[(([[[[([[[(((((([([[([[(((([[((([([[[([[([([[(([[([[([[(([[[[[[[[([[[([[(((([[(((([([[[[([[([[[([([[[[([[((([[([([(((((((((((((((([(([[([((([([[(([((((((((([[((([([[([(([[[((((([[[([[[[([([[((([([[[([((([[[(([[(([[(([(([[([([([[[(([(([([[([([[[(([([[[[([([[[[[(([(((([(((([([[[[[((([([[([[[[[((([[[([(([[([(([(([([[[[((([[(([[[((((([(([[[[[([[[([[((([([((((([([[([[([[((((([([([[([[(([[([[[[[[([[([[([[([[[([([([[((((([(((([([[[(([(([((([([([(([[([(((([((([([(([[((([[[[[(((([[(((([[[[([[([([([[[([([([(((((([[[(((((((([[[[([(([[([[(((([([(([[([[([[(([((((([(([(([[((([[[[(((([[[([(((([[([[(([(([[[[(([([[[([((((([([[([[(([(([((([[([[[[[([[[[[([[([(([((([[((([((([[([[[[([[((([(([([([([[([[([([([[[([[[[(([([(((([([((([(([(([[[[[[([((([[[(([[(((((((([[[([[[([[[(((([[((([(((([[([[(((((([[([[((([(([[([((([([(([[([(([(([(([[[(([[[[(([((([[[[[[[(((([(([[(([[([(([[(([[[[[((([([[[([(([([[[[([[([[((([[((([[(([(([(([([[[[[[([(([[[([(([(([[[[[(([(([[[(([(([([([((((([((([((([(([(([([[[((((([([[((((([[[([(((([[[[[[[[([((([[[[(([[[[[[(([[[((((((([[[(([([[[[[([[([(((([[(([[([(([[([[[[[([((((((((([[[(([([[(([([[[((((((([[(([((([((([[([[([(([[[[(([(((([[[(([(([[[[([((((((((([[(([[[([[[(([((([[((([[([[((((([([[((([[[([(([([[(([[([[([[([[[[([[[[[[[[(((([[((((([([([[([[(([[[(([(((((([[[(([((([[([([([([(((([([((([[([[(((((([[([([[[([([(([[(((([[(([[[[(([([([([[([(((([([[[[[[(([[([[[[[[[[((([(([[([[[([[((([[((([[((([[[[([([[[(([[(([[[[([[[(([[(([[[(([[[[[(([[([[[((([([[[([(([[((([[(([((([((([(([([([([([([([([[[[([([[[[[(((([((([((((([([([[((([[[[((([[[([[(([([[([([[((([[[([[([[[([([[[[[[([[((((((((([([([([([[[([([[([[[[[((((([([[([[([[[[[[((([(([(([[[[[[([[[(((((((((([(([[(([[(((((([([[([[[(([(([([[[[[(([[[(((([((([[(([([[([(([(((([((([([[[[(([[(((([([((([([([[([[(((([[[([([[(((([[[(([[(((([[[(([[(((([[([(([([(([(([(([((([[(([([([[[[(([[([([(([([(([[[[[[[([(([(([[((([[[([[[([[[[([[([([([[[((([([([([[[(([(([(([((([[([[((([[([[[(((([((((([[(([([[(([(((([([[[([[([[((([([((((([[[([(([((([([[[[[[[[(([(([[[([[[[(([((([([[([[[[(((([[[(((([[[([[([[[(([([[[[(([[[((([[([([((((([[[([([[[[([((([[[(([[([[([(([((([[[[[(([[[([[[([([((([[([((([([[[([[([([([[[(([(((([[[[[[[([([([[((([([([(([[([[(((((([((([[(((([(([([[[(((((([([[([(([([([([((((([([[[[[[[[([[(([[(([(([[([[[[[([[([[(([((([([[[[(([([[((([[[([[[([[[[[([[((([[(([((((([([[((((([[[((([[((([[[[[([[[[(((([([[[[[[[[([[[[[(([([([(([[([[[[([([([([((([[([[[[((([[[[([([([(((([((([((([[((([[([[[[[[([([[[[(((([[[(((([[[([[([([[([[[[(([[[[[([[[(((([[([[(([([([([([([([([[([[[[(((([[[([((([[[([[(([[[([[([(([[[[[(([[((((([[(([([[[[[[((((([([((((([([([((([([[([([[[([[(([(([[(([([([[[(([([((([([[[[[((([[[[[[([[[((([([(([([[[([([(([[[[[([(([[(([(([([([([(([[[(([(([([[(((((([(([[[[[[([[[[[([[[(((([[(([([(([([([[(((([[[([(([((([[[[[[([(([[([(((([[[(([(([[[(((((([((((([((([(([[[([(([([((([([([(([([[([[((([[[((([([[[([(([([[[[[[(((((([[((([((([[[([([([((([[(([[[[[[[[[[[((([[(([(([[([(([(([([[[([([[([((((((([(([((((([([[([([([(([(([(([[[([([[([(([(([[[[[[(([[[[[[([([[([[([[[((([((([(([[[[((([(([[[[[((([((([[([[([((([[[[[([[((([[([[([[([([([[[([[((([[[([(((([[((([[((((([[(([([[[([([[[[([([([[([([[[((((([((((((([([[[[[[[((([[(([([((([[[([([[[[([[[(([([[[[(([([[[[[([[[[[[([(([[([(([([([((([((((([([[[([(([[[([([([[(([(((([(((([[[(([[(((([(([([[[([([([([[[[[(([[[[(((([[[[(([[(([[[[[([[(((([(([([[[(([((((([([(([((([[[[([(([[[(([[([([((([(([[[([[[[[[((([[(([([([[[[[[([([([[[[([[[([[([[[[[((([[[[[([[[[(([(((([((((([[[[([[([([([(([[[[(([([(([[[[(((([[([[[([([[(((([[([[(([(((((((([(([(([[([(([((([([[(([[[[(([([[([((([((((([[[(((((([[[((((((([[([[[([([[((([[([[[[[([[[[((([[(([([([[([[[[[((([(([[[[((([(((((([(([[[[(([[[([([(([[(([((((([[(([((([[[[(([(([(([([([(([[[([[(([[[([[[((([(((([[[[[([(([(((((([(((((([[(([([[[([([[([(((([([([((((([[[[[([(((([(([((([(((((((([([[((([([[[([[[([((([((([(((((((([[(([[[([([([[[[([[[([([([[[[(([([[(((([[((([([[[([((([[[([[((([((([[[[(([[((([(([([([[[([(([([([(([(([[[[[[([([[([[([[[[([[[((([(([[([[([[[[[[[[(([([([[[([[[(([[[(((((([[[([(([[(([[([[([(([[((([([[((([[[[([([([((([([(([[[[[[([([((([([[[[(([([(([(([([[[[[([[[[[([[[((([((([(([[(([[([([[[[[((([[((((((((((([([[([[[((([[[[[[[[(([[([((([([[[[[[[[((((([((([([[[[[(([((([([[([([[([(((([[[([[((((([[[([[([((((([[[[[([((((((((([[([(((((([[[[([[([(([[[[[[[([(([[[(([[([[[[((([[([([[((([([([([(([([[[[(([[(([((([([([([[([([[([[([[[[[([[([[((([(((((((((([([[((((([[[(([((([([(((([(([[([[[[(([((((([([[([(([([(([[[[[[(([[([[[[([([[(([[(((([[[[([[[[[([([[[[[((([([([[([([((([[(((([(([(((([(([((([[[([([([((([[(([([(([([[(([[[([[([[[[((([((([[[([[[([[[[[[([([[([((([(([[([([([[[[((([[[[[((([(([(([([((([[[((([(([([([[[(([([[(((([([((([[([((([[[[[[[[[(([[[([[(([[[[(([[[[[([((([([([([(([([[([((([[[[([([(([(([([([[[(((((([[[[[[([[[[[[[[(([[[(([[[(((([([((([(([[([((([([[(([[[[([(((([([[[([(([([[[[([(([([((([(((([(((((([[((((((([(([([[([([(((([([[((([[[[[[([[[[[(([[[([[([(([[[(([([[[[([([([[[[[[[[([[(([([((((([[([(((([[[[[[([((([[(([[[(([[(([([([[[([(([[[[([(([([((([[(((([([[([[((([([[[[([[[[[[((([[(([([([[[([([((([([[[[(([[[(([([[(([[[([[([((([[[[([(([([((((([[[[[(([(((((((([((([[[([([(([[[(([[([[([(([([[((([[(([(([([([[([(([[(([[(((([(((([(([[[(([[(([[[[[((([([([[(([[[[([(([([(([([[[[[([[(([[(([[[[([[[[[[[([[[[([([[([[(([(([(([((([[(([[(((((([[(((([([((([[(([(((([(([([[((([[([(([[[[[[[([([[(([((((([[([([[[[([[([[[(([[(((((([([[[[[[((([([[(([(([(([(([[(([[((([([(([[[([([[[(((((((([([[(((([(((([([[(([((([([[([[(([[([[[([(([[([((([(([([(([([(([(([(([((([[[[(([([([([[[([(([([([([[([([([[[((([[[([[[([(([[[((([(([[([[[[((([((([[(([[[[(([[(((((([([([[[(([(([[[[([([[([[(([([[[[[[([[((((([(([[[(((([([[[[[(([[[([[[(([([[[(((([(([(([(((((([([([[([([[(([[[[([[(((([([[[([([[[[([([[[(([[[(((([[((([[[[([((([[[[[[[(((([[(([[(((([(([[[((([[(([[[([([[[[[[[(([((((([[[((([[[[[[[[[(((((([(((([((([[[[([(([[[([([[([([[[[[(([(([[[[[[[(([[[[([(([([[([[(((([[[[[([((([[[(([[[([((([(([[([[[[([(((([([[[(((([[([[((((([[([([[((([([([[([(((([([[(([((((((([([(([((([([[[[[([[([([[[([([(([[[(((((([[[[[[[([([[([[(((((((((([[[((([[[((([(([[([[(([([([[[[([[((((([([[[(((([[[([([([([((([[[(([([[[[[(([[((([([[(([(((([[(([([([[([([(([[(([[[[[[[[[[[[(([([[[[([[(([(((((([[[([([([(([((([((((([((([[[[([([[(([[[[([([[[([([((((([((([([([((((([[((([[([(([[(([((([[([([(((([(([[[[((([[[[[([[([(([[[[(((([(([([([[([([[[([([((((([(((([[(([[([[([[[([[[((([[(([[[[[[[((([[([([([[([[[[[([[[(([[([[[[[(([[([[((([((([([(((((([([[[([([(((((([(([[[((((([((((((([[([[[([[([([((([([(([([[[([((([((([[[(((([[[(((([([([([[([([([((([[(([[([([[(([([[[(((([([[[[[((((((([(((([((([([[[[[((([(([((([[[[((([([(([[((([[[[((([([[(([([([[([[(([[(((([[[[[[[[[((([[(([[((([[(((([([[(([(((([[(([(([([([[[(([[[(([(([([(([(((([[([([([[(([[[[[([(((([(([[[(([(([[[[([(([[(([[[(([[([([(((([[(([[[[[[((((([([[[(((([((([[[([[([[(([[(([[((([[([([[[(([((([((([[([(([([([[[([([([([(([([([([[[[[[[[(([([[[[(([([[([([[([(([[[([(([[(([((([([([([[[[(([([([[[[[(([[[[([[[[[([([[(([([((([[([[[(((([[[[[[[([(([(((((([[(((([[([[[[([[([([[[((((([((((([[[[((([(([[[[[[[((([[[[((([([(([[(((([[([(([[((([[(([([[((((([([[(([(((([[[[([[[[[(((([([[((([((((((([[(((([[([(((((((([([[[([[((((([((([[([([[[([[[[[([(([(([(([(([[[[([[([[([((([(((((([(((([(((([[[([[[((([[[(((([([([[(([(((((([(([([[((([([[[[[[([[((((([[[(((([[[[((([([([[((([[((([([(([(([(([(([([[[(([[([[([((([[[(([([((([[([[[((((([((([[[(([[[[[[([(((([[[(((([([([((([[[((([[([((([[([[[(((([(([((([[[([((([[[([[[([([([[([[(([[[[[([[[[((([[[[(([[[[((([([([[([[((([((((([(([([[[[[[([[((([[[([[([[((((((((([[[((((([(((([(([[((([[[[((([((([([([[([([(([(((([([[[(([(([([[([([((([[[((([((([(([[[[[[[[[[([((([((([(((([(([[[[(([([(([([[((([([[[(([[(((([([[[((([[((([[[[[([[[[(((([[([([[[[[[[[[[[([((([[[([[([([([(((([[[((((([[(([[(((([((([(((((([[[([((((([[((([(((([((([[[([([([([[[([[[([[([([[[[([((((([[[[([(((([([([[[([[([[(([[[(([((([([[[[(([[[([([[(((([((((((([[[[(([[((([((((([([([([(([([[([[[[[[([[((((([((((((([[([[[([(([(([[([((((([[((((([(([((([[[(([[(([((([[([[(([([[[[[(([[([([[[[([[([([[([(((((((([(([[((([((([((([[[[([([[[([[[[[[[([[[[((([((([[[((([([([([[([(((([[[(([[[([([(((([[[[([([([[[((((((([([[([([([([([[[([(([[[[[[[([(([([(([([[(([(((([([([[([(([(((([([([([((((([[[[(((((((([[[[(((((([(([[[[([([[(((([[[(([[(([(((([[[[[[[[[((([([((([([[[([[((([[((([[[[[[[[([([(((([[((((([[([((([[(([[([[(([[[([[[[[([[[([([(([((([(([([((([(([[[[[([([(([(([([[[[[(([([([[[([[[[[[([([((([[[([[((([[((((((((((([([(([([(([[(([[[[([[[[[([[[[[[[(((((([(([[(([[[((([((([[[(([[[[[[([[([[[[[([[([([[(([[([[[((([(([[[[[[[[((([(([(([[((([[[([(([(([(([[(([[(((((((((((((([[[[[(([[[[([[[([([(((([[((([[(([[(([[([[[([[[(([([(([([[([([[(([(((([[([[([[(([(([([([[[[([[(((((((([(([((([([([([([[[[[[[[([(([(((((([[(([([((([([(([(([[[[((([[[([[((([[([([([(([[((([[([[[(([[([([([[((([(([[[[((([[([[[[[([([[((([[((([((([[(([((([([[([[[([(([[[[[([(([[[[[[((([[([([([[[([[(([[[((([(([[([(([(([((((((([([[[[((((((([(((([(((([((([[([([([[[(([[[[[([(([((([[([[[(([(([([([[([[[([([([(((([[([[([[([(([[([([[[[([[[[((((([(((([[((([[((([(([[([(([[[((([([[[[([(((([(([[((([[(((((((([(([[[([[[[[([[[[[(([((((([[([[((([(([([((((([(([[([[[[([((([([[[(((([([[(([[[[((([[([[[[[([(([(([(([[(([[(((([[[(([(([([[[([((([(((([((([[(([[([[(((([(([([[(((([[[[[((([([(([([[([([[[[(([((((((([(([[[([(([(([[[[((([[([[[[[[[[[[(([[([[[((([[[([([([(([[[[((([([[([[[[([([[[[([(([[([[[[[[([[[[[[[(([(((([([(([((([((([([((([(((([((([([[((([([([([[((([[[[[[(((([[([[([(([[[[[([[(((((([([(([([([([[(((([[([([((([((([[[(([(([([([[([[(([(([([([((([[([[([(([([((([([(([([(([[[([[(((([[([[[[(([((([([[((((([((((([[[[(([([(((([([[[((((((((([([([[([([([(((([([((((([([(([[[([(([[[[[[(((([([([[[(((((([([[(((([[[[[[[(([[((((([(([(((([[[([[[([(([[(([((([[([[([[(([(([(([([([[[[[[((((([[[[[(([([[(([[[[([(((([(((([[[[[[(([[(([[[[[((([[[[(([[[[[[((([[[[[[[([([[[([[([[([[[[(([((([(([[[[[[[(((((((([([(([([([[([[[([([[([[[((([[(([(([[((((([[([(((((([[([[[[[[[[[[(([((([([([[([((([[(([([[([[[[([[((((([((([[[[[[([((((([((([[[([[([[([[[([([(([([([[([[[(([[[[[[([((([(([(([[((([[([([([((([([([(([([([[[([(([[((([(([[([([(([[[([([((((((((([[[[(((([[(([(([[([[[[([[[(([(((((((((([[(([((([[(((((((((([[([([[(([[([[[([((((((((([([([[[[(([([[[([(([([([([([([([([[([[(([((([([[([[(([[(([([(((((((([(((([[[([([[([((([([([[(((([[(([[([([[[(((((([[[([[[([[((([(([([[[[([(((([((((([[([([[[((((([[[[(([([([[(([[([([[[(([(([[(((((((([(([(([([[([[(([[[([[[[(([(((([[((([((([[[(([[[((([[(([[[[([[([([([(([[[(((([(([[[[([[[[[[[((((([[[[([([([[[(([[([[(((([[((([([([([([[([([([([[([[([((([((([[(([(([([[(([(((([[[[[[[[[(((([[(((([[([[[[([[([[[[([[[(([[[(([(([[[(((([((([((([([[([[[([[[[[([([[(((([((((((((([[(([[[[(((([[(((([[(([[([[(([[(([[[([[([(([(((([[[(([([[[((([(((([((([[[(([[[[[([[(([[[([([[[[[[[([((([((([[[([[([[[[([([[[[[[[[([[([(([[[[((([([[(([[([(((((((((([[((((([([[[[([((([[([((([([([[(([[(([[[[(((([[([(((([[[([[[(([(([(([(((((([[([(([[[([(((([([[[[([(([([[([(((([[[([[([[((([([[[[[((([[((([(([(([(([[[[((((([((([([[[[([(((([([[[[[(([[[[(([([(([(([[([((((([[[[[[[[([((([[[(((([[(([(([[((([([([[([[[(([((([([(([[[[[([[([[(([[[(([[[[[([[[[(((([(([[(([([[(([[(([([[[(([[(([[([[[[(([[[[([[[(((([[[[[[[((((([[[[((([(([((((((([([[[[[((([[[[[[([[((([[[([([[[((((([([([[([[[[[[[(([[[[(([([[[[((([([((([[[([[([[(([(([([(([[([(([(([(([[(((([([[[((([((((([[[[[([(([([[((([([[(([((((((([[([([[[[((([[([[([[([[([[((([[[((([(([[[(([((((((([(([[((((([[(((([[[([[[[[(([(([[([[[(([([[[([[(((([[([[[[[[((([[[(([[((([[[[[([[((((([((((((([((([[[([((([[((([[(([([([(((((((([[[[[((([[[(([[([([((([(((([[[[([([([(((([((([[[[[[([([(((((([(((((((([((([([((([([(([[([(((([[(([([[[[[[[[([[[[[[[(((([[([(((([[([[[[(([[[((((((((([[[(([(([([([[[[[([[[(([[([[((((((((([[([[([[[[[(((([([(([((([([([[([([[[((((([[[([[[(([([([[[([[([[[((([[(([([(([([[[[((((([[[[[([([([(([[[[([[((((([(([([(([[[[[[[[((([[[[[([([[[[(([[((([(((([[[([([[[[[[([[(((([[(((([[[[[[([[([[[[((([[([[(([([(((([[((([[([([[[([[(((([((([(([([((([(([(([[((([[[(([([[[[[((([[([((([([[(([([(([[([[[[[[((((([([(((([[(([[([(([(([([[([([[[[(((([([((((((([((([[(((((([[([(([([(([[(((([[(((([[([([[(([[[([[(([[((([(((((((([[[([[([[([(([(([(([([(([((((([([([([[([(((([([(([[([[([[[[[([[([([[(([[((([((([[[[(([[([([(([[[((([(([([((([[([([[((([[[(((([[[((([([[[(([([([[([(([(([[([([[([[[[((([(((((((([([[(((((([(((([[[[((([([[(([(([[([[(((([((([[[(((([([(([((([(([[(([[[([(([((((([[[[[([[[(([([([([([[[[[(((([[([[(([[([[([([[(([([(([([([(([(([((([[[[[(([(([[([([[([(([[([[[[[[[[[([([(([((((([((([[[[([(([([([[[[((([([[[([(([[[[(((((([([[[[(([[([[[([([[[[[([[([[([([[[[[([[([[([[((([([([((([(([[[[((((([[[[([(([[[[[(((((((((([(([((((((((([((((([([[[([([[[([(([((([[([([([[(([([(([[(([(((([[(([[[[([[((([(([[(([[((([[(([[((([[([[[[(((([[((([[([[[[[(((([(([[[(([([[([[[((([([((([[([[(((((([(((([(([[[[[([([([[([([[([[([[[([[[(((([[(([(([[[[[([((([(([[([([(([([([([[([([[(((([[[[[(([[[[[((([([(([[(([(([([([(((([([[[([([(([(((([((([[[((([[[((([[([(([([([(([[([[[([([([([[[(((((([([[[([([((([[([((([[[[([[([([(([((((([[([[((((([(([[[([((([([((([([([(([[[[[((([[[[[([(([([([([[[[([[[[[([([[([[[[([(((([[([(((((([[[([[(([[(([([[(([[[((((([(([([((([[[(([[[(((([[([([[([[[[((([(((([(([([(([(((([[[[([([([([[([(([([([[(([([[[[([([((((([[[[[([(([[([([([[(((((([([([[[([((([[[(([[([[[((([[(([(((([[[[[(([[[[((((([([([([([[[[([((([[[([([[(([(((([((([[[(([[((((([[([[(([[[[(([([([[([([([[[[[[((((([[(([([([[[[[[([([[([((((((([(([[([[[([([((((((((((([([[[([([[[[[((([([[[[[(((([[[[([[(([[[[[[[((([[([([([[[[(([([[[[(([[([[[[([[[([[([([[[[([([[[[[([((((([([[[((([[([(([([(([[([((([[((((([([([((((([[(([[[[[[[[([[[([[([[([[(((((([(([[[[[(([((([([[((([(([[([[[[(([((((([[[[[([[[((((((([[(([[([([[[([([[[([[([[(([([[(([(([(([[([((((([[[[[(([([([[(([[([[([(([[[[[([[((((([[([(([([[[(([([[[(([((([(([((([[((([[(([[([[[(([[(((([[[[([([([([[[[[[[[[((([(([[([[(([[([([[([[[(((([(([([[[[([[[[([[[[[[(([[[[[[((([([[((([(((([([[[[[([[(((([([[(((([([[(((([[[[[[[([([[[[[[[[(([(([(((((([(([[(([[[(([([(([([[[[[([[[([[[(([[[[[([([([[((([([([[[(((((([[[[[([[([[([([((((([(([([[((((([((((([([[[[(([[[(([[([[(([[[([([[([[[([[(([(([[[([[[([[([([[[([[[([([([[((((([((([(([[((([(((((([[([(([(([[[[[([[[[(([[[[([[([[(([([[([(([((([[([[[(((((([((((([([[((((([[[[[[[[([[([([((((([(([([[[[(((([([([[(([[[([(([([((([([([([((((((([[[[(((((((([[([((([([[([[([[(([[[([[[[([[([([[[[((((([(([[[([([[((([[[[(([(([([[[[([[(((([([[[[[([(([([[[[[(((([[[(([[[[[(([(([[[(([[([([([(((([[[[([[[[([((((([[(((([[[([[([([[(([([[[[([[[((([([([((([[[[[[([[[[[[[[[[[(([[[[([[[[[(([[[([[(([(([(([((([([[((((([[(([((([[[(([([((([[([([[[[((((([[[[[[([([([[([[([[[[[([(([(([((([((([[(([([[[[([(((([[[([[(([(((([[[([[[([[[([[[[(([[([((([([([[((([[(((((([([[[([(([[([(([(([([[([[[[([[([([[((([((([([[([[((([([[[[[[(([(([[[([(([([[([[(([[[((((([(((((([[[([(((([([[(([[([[[((([(((([[((([([[(([((([(([([(([[([[(([((([[([[((([[(([[(([([[[([[(((([([[([[[[((((((([([[(([((([([(([[[((([[([([[([(([[(((([[[((([([[[([[(([((([([([([(([[(([([([(((([(([[([[([[[[([[[[([([([(([[((((([((((([[((((([(((([([([([([([[[[[([(([[[[(((([[([[[[[[([[[[[([[[(([[([[[(([([([[[[([([(([[([([[[(((([[(([(([[[[[[[[[([[(((([([([[[[([([[([((([[((([((([[([(((([(((([[([([([([[([(([((([((([[([[([([[([[((([(([(((([(([[([([[[(([([([[[([[([[([[(([[[[([[((([[[([(([[([(([[[([([[([(([[[[[[[[((([([[([(([[((((([[((([([[(([[[[[(([([[([[[[(([((([[[(((((([[(([([[[(([[([([((((([((((([[[[([[([[([[([[[([[([(([([([((([(((([(([[[[([([[([([[((([(((([([[(([(([(((([[((([([(((([[([([(([[(([[[[[[[[[[[[([([((([([([[[[[[([([[(([(([[([([[(((([[[(([(([[[[([(([[[[[(([[[[[[([[[([[((([([([([[([[([([(((((((((([([[[[([([([([[([[[[(([[[(((((([[[[([[(((([[([[[([([((([([[[[([(([[([(([[[((((([[[[([[[((([[((((([([[([[[([[([[[([[[([(([[([(([(((([[([[([([[([((((([[(((((([[([[([(([((([[[[([[(([(([([(([[([([[([((([((((([[[([([([((((([[([(([[([(([[(([[[([((([(((([[((([(((([[((([[([[[(([(([(([[[[([((((([[([[[[[([[[((((([[(((((([([(([[[[[([[[(([([(((([[[([[[[[[(([[(([[((([((([([[((([[[[((([((((((([([[[[[[[[[[[(((([([(([([[[([[([[[([((((([[((([([[[[((([[((([(([([(([(([[(((((((([[([[(([(([(([[([[(([[([[[[[[[[[(([([[[([[[([[(([[[([[([[([[[[([([[[([((((((([[[((([[(([(([[[[[[([(([(([[[[(([(((([[[([[([[[[((([(([([[[[[[[([[((((([(([[[[[(([((([(([[[[[[((((([[(([[[((([([([[[[(([([[[[([[[[(([(([[[[(([([[(((((((([(([(([[[[[([([[(((([([[([[([([([(((([[(((([[(([((([([((((((([[[[[[[(([(([[[[(((([[((([((([[((([[(([([[((((([[[[(([[[[([[([((([(((([[[[((([([[[(([((((([(([([(([([([(((([((((([(([[[[[[([[[[([[[[([[[[[([[([([([((([[[[((((([(([([(([[[([[[(([(((((((([(([[(([[((((([(([(([(((([(([(([[[[([(([[(([(((([[(([[[[[[([([[([([([[((([([([(([[([([[[([((([[((([(([(([[[([([([[[[[[((([[([((([[[[([((([[([(([[[[[[(([([[([[[((([[[[([[([(([[[[[((([([(([(([((((((((([[[([[[[([[((([[[(([([[[[[((([[[[[(([(([[[(([([[(([[(([[(([([([((([(((((([(([(([([(([[([(([(([[[([[[(([(([([[(([(((([[([(((([[([(([[([[([([[([([(([(([[(([[([[[([(((([([[(([[([([(([(([([(([(([[[(([[((([((([(((((((([([[((((([[([(([[[(([[[[[([(((([[([([[[([[(([[[([[((([[[([[[[((([[(([([[([[[([[([([[([[(([(([[([((([[([([((([[([((([([[([[[[(((([[[([(([([[[([[[([(([[([[[[(([[(((((((([(((([[(([[[((([([[(([[[([[(([([(((((((([[((([([[[[(([(([([[[([(([[([[[((((([([[[([[[[[([[([[[[[[[[[((([[[(([((((([[((((([[[((([[[[[[((([[[([(([[(([([[(((([[([[(([[(([[[[[([[(([[[(([[((([((([[[[(((([(((([[[[((((([(([[([([[[((([[(([[(([([[([((([(([([[[[([(([[[[[[[([([[([([([[([([([((([((((([(([[(((([((([((([[[([[[[[([([[([([([(([[([[([([([[([[([[([(([[([(((((([([((((([([(([[[[((([([[[[([[(([(((([((([((([([([[[(([((([(((([([[(((([([([(((([(([[[[([[[[((([((([((([([((([([[[(((([[(([([([(([(([([[((([[[([[[[[(((([(((([((((([[[((((([[(((([([(((([([[(([[[[[[((([[(([(([[[[([([([((([([((((([((((([(([([[[[[(([([((([([([(([([((((([[[([((([([([[((([[[((([[[(([[[[[(([[[([[[((([(([(([[([(([(([((([[([(([(([([([((([(((([[([([((([[[([((([[[(([[([[((([([(((([[([[[[[([((((([([(([(([[[(([[[(([([[[([[(([((((([[[[[[[(([([(((([[((([(((([(((((([[[[[([([((([(([((((([([[[((([([(([([([[[[[(([[((([([((((([[([[[([[([([(([[(([([[[[([(([([[([[(([[[([([[(([(([((([[([[[(((([[([[[((((([[[[(([[((([[(([([[[([(([[(([([[[([[([(([[[[([[[[(((([[[[[[[[[[([(([(((([(([([[[([[(([[[([[[(((([[[([(([[[[(((([([[(((([[(((([[[[([((((([([([([[([([(((([([[[[([([([[[([[([((([([[((([[([[(((([[[[(([(([(([[[[[(([[[(([([([(([[[([([((([((((([([[((([[(([[([[[[[([((((([[(([[(([(([[((([[([([(([[(([[[([([[[([((([((([(([[((((([[([(([[[[(((((([([([[((([[([([([([(([([[[((((([[((([[[[[([([[[(([(([((([(([([[[([(((([[([([([([(([([[([[[((([[[([[[(([[((((([[[[(((([([[[(((((([(([[([[[[[((([[([[(([[([[[[([[[[[([[(([[[((([([([([[(([[[((((([[([[(([[(((([[[([([[[[(([[(([[((([([[(([([([([[[(([[((([([((([[(([([[[[[[([[([([[((([[[([([([([[[((([[[[([([[[(((((([[([[[[(([[[[(([[[[[[([([[([([[(([(([[[[((([((([[[(([[[[[([[([([(((([(([(([[[([[([[([[[[[[([[(([([([((([([[([(((((([[[(([[([[([[([(([((([[([[[([[(([(([[([[([([([(([(([([([(([([([[[(((([[[[((([((([[[([[[[([[[[((([(((([([[[(((([((([[(([(((((([([(((([[(((((([([[((((([([([([([[[([[(([(((([((([[(((([([([([([[(([(([([(((((([(([[(((([([[((([([((([[[[[(([((((([(([[[([[[[([[[(([([[((([[((((([((([(((([[[[(([[(([[([[(((([[(([((([[([[[[([[[([([[([[(([[[(([[([([[[([[[(((([([((((([(([[(([([[[([([[[((((([[[(([[[[([[(([[[[((((([([[([[[[([([[[[[[((((((([([([[[[[([((([[[([(([[[([[([(([((([((([(([(((([((((([[([(([([[[[(([([[[([[(([[((((((([[[[[[([(([[[([[[([(((([[[([[([([(((([[[[[(([(([([([[(((([(([([(([([[[(([[[[[([[([[[(([([[[[(([([([((((((([[[([[[[([((([(([[[[([[(([((((([(((([[([[([([[(([((([(((([[((([[[([[[[[[[((([[([[([[[[[[([([[[[[([[[([([[([(([([([([[(((([((([[[(((((([([((((((([[([[(([(([(([[(([[([[(([[(([[[([[[[(((([([[[(((([[(([[[[((([(((([[[([[([([[[([([[[[[([(((([([[[[(([(((([(([[(([(([[[[[[(([(([([[[(([([[(([([[[[[[(([[([(((((([[([[[[[[[[([[[[([[(([[[(((([[(([[(((([((((([(((([([[[(((([[((([[[([[(([[[([[[(([(([((([[((([(([((((((([[([(((([(([([(([[(([[(([(([[[[([((([[[((([[((([[[[([[([[(([[([(((([([(([([[[[([[[[[[[([[([([[([[[([[([(([((([([((([[[(([[((([[[[([(((([(((([((([[[[[(([(([[((([([([(([(([[[[[([[(([[[[[[(((([[[((([[((((([[([([((([[[([((([([([(([[(((((([[((([(([[[(([[[(([[[([((([([((([([[[((([([[[(((((([((([(([([[([([(([[([(([([[(([(([[[([([[([([((((([[[[([(([[[[([([[[([[(([(([([[[([[([[[[[(((([([[[[[[([([[([[[([[(([[([[(([(([([[([([[[[(((([[([(([(([[[[[([[[([([((([[([([[([[[(([([[[([(([[(([[[([([[([([[[[(((((([(((([((([(((([([([([[([[(([([[[[(([([[[[[[[[[(([([([(((([[[[([[((([[((([[[([[[([[[((([(([([([([([[([[[[([[[[((((([(([([((([[(([([([(([(([[[((([([([([(([(([[[[([[[([[[[[[(([([([((([((([(([[(([([((([[[[[([[([(([(([([[[(((((((([([([[([(((((([([[(([([([[[[((([([[[([(([[[[([(([((([(((((([[([([[([([(([[[[[([[([(([(([[[([[(((([[([([[([[(([[([[(((([([[[([[(([[([([[[[[[[[((([[[(((((([([[([[((((([((((([((([([[[[[(([[[([([(((([(([[[[[[[(((((([[[([([([(([[[([[[([([(((([[([(([[([[[(([[(((((((([[[[([[[[[[[[[(([[[((([(([(([(((([([([((([((([([(([[[[(((([([((((([[[(([[[[[([([[[(((((((([((([([[[[[[([[([([[([[[(((([[[[[(((([[([[[[(([[[[[(([(((([([[[([(([(([[[([([(([((((([[(([[([[[[(([[[((([(((([[[[[([([((((([([(([([[([(([((([((([([(([(([(([([((((((([[([([[(([([([(([[(((((((([[[([[([(((([[([[[([[([((([((([[[((([[[(((([([[(((([([[[[(((((([(([[[((((([([[(((((([[([((((([(((([[[[[(((([[[[[([[([[((([((([[[([([[[[([[[[[[[[([[[[((([[[[([[([[(([[(([(((((([[[[(((((([[[([[(([(([[(((((([((([[[(((((([[[(([([([[[([([([((([[[([([([[[[[[[(([([([[(((([[[[([[[[[[[[[(([[([[(([((((([[(([([[((((((([((((([((([([[[[[[([[[[[((([[([[[[[[[[[[(([[([[[(([[[([([[([([(([([[[[([[([((([[([(([([[[[([[([[(((([[((((([([(([([[[([([[([[(((([[[((([((([[[(([[[([(([([[[[((([(([[[[[[[([[([(((((((((([[[(([(([[([[[[[([([((([(((((([[(([([[[(([[[[([(([([(([((([([(([(([(([(([([[(((([([[[([([[([([[([([([[([[([([(((([([[[((([([([[((([([([[(([([[((([[[(([[([((((([(([[[[[(([([(([[[[(([(([[(([((([[(((([[[(([([(((([[((([[([[[[((([(([([([[[[([([([([[(([[([([[([(([[[[[[[(((((([[[([([[((([(((([((([[((([[[[(([([(([([[([[[[[(([([[[[(((([([[((((([[[(((((([((([[(([((([[[[([([[((([[(((((([[[((([((([[[([[[((([[(((([[[([((((([[[(([[([([(((((([([[([(((([(([([[[((((([[(((([([[[[(([([[((([[([(((([([[[((([[[[[[([([[(((([(([(((((([[([[[(((([((([[[(([([([[((((([[(((([([([([[((((([([(([([[([[(([[(((([[[[[([[(([[[(([[[[[[([(([(([([([([[((([[([((((([[([[((([([[(([([[((([[[[(([((([([([(([[[([(([((([([([[([([[([(([[[[[[[[([[(([[[[[((((([(([([((([([[(([((([[[([([[[(([[[[([[([((([(([[[([[(([[[((([((([([[((([(((((([([([((([[([(([(([([[((((([[(([(([((([[[[(([[(((([([[[[[[(((([([[[(([([(([([([[[((([([[[([([[(([(((([(([[(([(((([[([((([[[[[((([[([[([[[[[[[[([([[[[[([(([(((([([(([[[([[[((([([([[([[[(([((([[[(([[(([(([[(([[((([(((((((([(([[(([[[([([([(((([[([([(((([(((([[(((([([((((([(((([([[([[[([[([[[(([((([((([[([[[(([[(([[[[([((([[[([[[[(([[[[(([[([(([[[[[[([[([[((([((([[[([[([((((([((((([[[[([[[[((([(((([(([[((([((([[(([(([([(((([([[[[([[[[[([[(([[[[([(((((([[((([([[[[(([(([[([[[[[[[([(((([([(([([([[[[[[[([([(([[[([[([([([((([[[[[(([(([[[([[(([[[[[([(([[[[[((((((((((([(([[([[[[[([([[[([((([[([[([([[[([(((([(((([([[[[[((((([([[[([((([(((([[[([[[([(((([[(([[([(([([(([[[[(((((((((((([[((((([[[[[[[(((((([[[[(((([[[([[[([[(([[(([[(([[[((([[((([([([((([(([(([[([[[((((([[(((([((([([[[([([[[([[([([[[[[[([(([[(((([((([(([([[((((([[[(([([([(([([[[(([([[(((([([(([[[(([[[([[(([([((([(((([[((([[[[((([[([([([[([[([(([[([[[([([([[[[([[([(([[[((([([[([[[([[((((([[([((([([(((([[[[([(([[(([[(((([([([([[[([[([((([(([[[[[([(([([([([([([([([(([((([[(([([([[[([[(([[([(((([([[((((([[[[(([[(([[(([((([[([[([(([[([[(([(((((([[([[([[[[[[(([(([(([(([([[(([(([[[(((([((((([[([[(([[[((([[([((((((([([(([((([[[[[[[[([(([(((([([[([[[([([([(([(([(([[[[([((([[[([(([[(([[([[[([((([([([(((([[([[[(([((([([((([((([[([(([[[[([[[[[([[((((([(([((([[[([[(([[[[([[[([([[((([[([[([((([([(([(([[[([((((((([((([(((([[([[[([[[[([[([([[[[((([(([[[[[[([[[[(([[[(([([[([([((([[[[(((([[[((([(([(([(([[(([[([((([([([[[([[([([[[(([[[[((([([(((([([(([[[[[[[((([([([([((([[([[[[[([[((([[([([(([[([[[((([[((([([([([(([((((([[[([(([[[[(((([[[([(([[([([(([((([[([((((([([([[([(([[([[([([[((([[[(([(([[[(([[[(([([[([[(([([[([[[(((([([[(([(([(([((([(([[[[([[(([[([(([[[[[([[((((([((([[(([([(([((([(((([([((((([((([(((([(((([([[([(([[[[(([[([([[[[([(([[[([(([[((([[(([[([([[[(((([((([[[[[((([[(([(([([[(((([[[[(([[(([(([([[[([(([[[[([[[((((([((([[((([((([(([(([((((((([[([[((([([((([[(([(([((((([(([(([((([[(((((([[([((([([[[[[([([[[[(((((([[[[([([[[([([([([[[(([[[(([[[([[(([([[[(([[[([(((([[([[((([[(([[((([[([[(([[(([(((((((([(([([([((([(((([[[[((([([[((([[[[[[((([[[[([([([[(([(((([[((([((([[([([([[[(([[([((([([[([[([([(([([[[[[(([[[[[((([([(([[([[([[[[[[((([[((([([(([(([[(((((([(([[([[([[[(([((((([[[([[(([([[((([[[([((([((([(([[[[[[((([[([[[[(([[[[[[(([([([[([[([[[[[(((((([(([([([([[([[([(((((([(([(([[([([([[(([[(([([[[(((([([[[([([([[[[[[([([[((([([[((((((([([((([[((([[[([([[((([(([[([((([([([[[[[[[[([(([(([([[[[(([([[([[((([[([[[[(((((([(([[(([[(((([((([([[[[(((([[[[(([([([([[[((([(([(([[[[([[([((([([[[[((([[[[[[[(([(((([(([[[[(([[((([[([(([((([((([([(((((([([[[([[[[((([[([[((([[[(((([([[((([[([([((([(([[([[((([[(([[(((([([[([[[([[(([[[(([[[[[(((([([(((([(([[(([(([((([[([([(([[[([((([([[[(([(([[[([([((((([(([[[[([([[([[(([[[[[(([[(([([[((([(((([[([[[([([[(([[[[((([[[([((([[([[([[[(((([(([[([[(([[[(([([(([((([[[[[[[[[[([([[[(([((((([([[(((([[([[[[[[[(([([([([([[[([([([(([((([([(([([([[([([(([([[(((([[[([[([[[(([[[((([(([[[(((([([((([[[(([([(([(([[([(((((((((([[(((((((([[(([((((([[(([([([[([[[[((([(([[(([((((([[((([[[[[([(([([([([([(([[([[((([[[((([([[[([[([(([([[[([([([[(((([([[(((((([(((((([((([(([((([([([[([([[((((([[[[([[[[[[(([[(([[((([[(([([([([([(([[[[[[[(((([([[([[([(([((([((((((([(([[([[(([[(([[[[((([[(([[(([[[(([[(([[(([[[([[([([(([[([([([(([((((([[[[[[([[[([[([[(((((((([(([[[([([[[((([(((([[((([[[([[[([[[[(((((([([[([[[([[(((([(([[(((([(([[[(([((([(([[(((([((((([[([[[([[[([[[[(((([([[[([([(([(((([[[((((([[([[[[[([[[[(([[[(([[[(((([[[([[[[[[(([(((([([[[[[([[[([[([(([([[[([[([[([([[([([[([[([((((((([(((((((((((([(([[((([[[(([[[((((((([(((((([(([(([[([[([((([(([[[[(([([([[[[[([([([[(([[[((([[(([[[[[((([(([([[[[[[[(([[[((((([[[[([([([(((([((([((((([((([[([((((([(((([[[[(((([([([[[([((([[[([[((([((([[([([(((([(([[[[[(([(((([(([[(([[[([[((([([[([[[([[([((((([([([[[[(([(([(([[([[(((([[([(((([(([((([[[[[[[(((((([(([[(((([([(((((((([(((((([([[[(([([([[[((([([([[(([(([(([[([((([([[([([(((([(((([[([[[[[[[[(([[[([[[(([((((([[([(([[(([[([([[[[([[[([([((([[[[[[((([((([([((([((([[([[(([([[(([[([(([[[[[[(([[[([((([([[[([[[[[((([[[(([[[[([([([([[[[[([[(([((([(([(([[(((((([([([[((([(([[[[([[[([[([[((([([([(([[([[[[([((([(([[[[([(([[[(([[([([((([([[([(([[[([[[[[[[((([([(([[([(([([([[[[[[[[[[(((([[[(((((([[([([[((([((([[([([[[[([([[[([(([((([[(([[[[(([(([[[[((([(([[[([[((([[([((([(((([([[[[[[((([[[(([[[[([((([((([(([([([[([((([[([[[([(((([([[[[(([([([[((((([([[[[(([[(((([(([[(([(((([[([[([((([(((([[([(([([[((((([(((((((([([[(((([[[([(([([[(([((([([[[([([((((([[[(([[[[[(([[[[[[((([[((([[(([(([[([(([[([[[([((([[([[[(([([[(([([[[([(([([((((([([[(([(([([(([[([(([((([[[([([([[([(([(([[[([[[[[([[(([[[[((([[[[(((([([([[[[[([(((((((([[(([([[(([([(((([[([([[([[[[([([[((((([([[[([(((([([[([(((([(([([(([[([[([(((([[(([([[[[[[([(([[[(([([(([[[([([(((([([[[[[[(([((((((([([[[[[([[([[((((([([(((((([(([[[[(([[([([[[([[[([([[(([[[((((([([([[((([(([([(([[]]))])]))])))]])])])))))]]]))]])])]]])]]])])]]))]]]]))]))))))])])))))]])]])]]]]])])))))))]))]]]]]])]))))])])]]]))])]))]]]))])]]]]]])]))]]))))])]])]]))])]))]))))])]])]))))])]]])])))))]])])]]]])]])])]]))))])]))]])]))]]))))))))])]]]]])])]))))]]]])))]]]]))]])]]]]])]]]))]))])]])])])]]])))]))])]]))])]))]))]])])))))])]))])]]])]))]])]))]]])]])))])]]])]]))])]]))]))]])))]])))]]]]]]))]]]]]))]]])))))])])]]])])))]))]])]))])]]]))))]])]))))))))])))))]])]))])]]))))])))])]])]]))))]))]]))]))))]]))]]]])])))))]])])]))]]]])]))))])]]])]])))])]])])]))])))])))])]]]]))]]])))]]]]]])]))))])))])]])))]])]]]))])))]]]]))]))]]]]))]])))]))])]]])])]]]])])]])))])))]])])]]))))))]]]))))]]]]]]]]]])])]))])]]))])])))]]]]]]])]]]))])]])])))])])]]))]]]))])]]]]))])))])]]]])]]))])])])))]])]])]]])]]]]))])))]])])]))))))]]))]))])))]))]])]]]]])])])])]]]]))]]])))]]]]])]]])])))])]]]))]]]]]]))])]]))]])]))]])]])))])))])])))])))]]]]]])))])])]]])]]]])])]]))]]))])]])))))]))]]])]]]))]]]]]]]])]]))))]))))])])]])])))])]]))]))]))]])])])))]]])])]))]]])]))))))]))))))))])]))))]]))]))))))]]]]]]])))]))]))))])]]))))]])]]))]))]))]]]])])])))))])]])]]])]])])))]])]]]))]]))]))))]))]]]]]))]))))])])]])))])))]])]]])))])]]])])]))))]]]]))))])))))])]])))])))))])))]))))])])])]]]])))))]]]))]]]]]]])]))])))]]]]]))]])))]]]))]])])])]]]]])])]))]]]]))])))])]])]]))]))]))))))])))))))]]]))]]])))]]))]))))))))))))])))))))])]])]])])]])])]])]])]]])]))])]])]]])]]]]])]))))]))]]]]]])]]]))))]]]))]]]))]]]])]]]]])]])))))]]]))))]))])])]]])]))))]]]])]]])]]])]])))))]))))]]))])))]))]]]))]))))]]))]))))]])]]])]])]))))))]]]])]]])]]])))]]))))])))]]])])]]]))]))))))))]])]])]]])]]]]]])))))]))])])])]]))])])]])]]]))]]))]]))]]]))]]))]])))]]]]))]]))]])]]))])))))))])))]))])]])]])]))))]]]]]]]))])])])])]))]])))]]))]]))]]]]]])]]]])))))]])])]])])])))]))])))]))))))]))))))]])]))))]])])])]]])]))])]])]]])])))]]])))]])]]))])])])])]))])]]]]])))]])))))]))]]))])))]]]])]])])]))]])))))]))]]))))))))]]))))))))))])]]))]))])]))]]])))])]))))]]]))])))]]]))]]])]])]]]))))]])]))])])]])])]))])])))]))])])])]]])])])])]))]]]]]]])]]))))]])])))))]))]]])])]]]]]]]]]])))]))])]))]]]))]])]]))]))))]]])]])]])))])]]])))]]]]))]])])]]])]]))))])))]])]))]]))]]]]]))]])]])])]]]]))])))))])])]]]))]))]]])])))])]]]))])])]])))]))]))]]))]))))])]))))]]]]]))]]]))]])]]])]])]))))]]))]])))]])]]))])))])])]])))]])]))))]]])))]])]])))]]]])]]])]))))))])])))])))]))])]])))]]))]]]]))]))))]))]]]]]]])))]]]])])))])]])]]]]))]))])))]]])])])]))]]]]))))]]]])])))]))))]]))]]))]))))))]]]])]])))]])]])]))]]]])]))]))])]]]]]]]])])])))])]]))])))]])])]]])))]])))])])))))))]])])))]])])]]]]]])])])]]])]))))]]])]))]]))]])])])]]))]))]))))))])]])]])])])]))]))))))]]]]])]])]])])]))]]]]]]))]]]])]])))]]]]]]))])))])))])]]])))]])]))]])]]])))))]))]]])]])]]))]))))))]]))]))])])))]])))]]]]]])]])]]))])])))]]]]]))]]]]])]))])])]])]])])))])]]))]]])])])]])))])))]]))))]))]])])])]]]])))]]]]]])))]])])))]]]]))))])))])])]))]))))))))]))]]))]])]])))]]))]])))]])]]))))])]]]))]]])]))]])]]]))]]]))]]])])])])]]])])]]]]))))))]]]])])]]]]])])))])]]))))))]])))]))]))])))))]))]))]])))])])))]])]])))))))]))]))])))])))]])))])))))]]])]]]]))])]]])]))]))]]))]]]]))))]])]))]))]])))]]]]])))]))))]]])])]]))]])))]]))])]]]))])]]]])])]]))]]]]))])]])]))))]))))])))])))))])]))))])))]))])]))]])))])))))]])]]]]]))])]]))]])]]]]))])))]))]))]))]])]))))]]])]])]))]])]])]))]]]))]]]))]))]]])))]])])]])]]))])]])])])))))])]])))]))])])]]))])]]]))))]]]]))])]]])))))]))])])])])))]])))]]])]]))])])]])))]])]]]]])]])))])])])])))]]]]]]]))])]))))])])))]]]]))]]])])]])]]])])])))])]]))]]))]))]))])))]]]))))]]]])))])])]])]))]]]))]]]])]]]]]]))])))]]]])])]])]]]])]]])]]))))])))])))))))])]]]))]))])])))])]])]])))]])])]]])]]]]))]])]]])))]))])))))]])]]]]])]]]]))])]])))])))])])))]))]]])]]))))])])])))])]]])]]))]]))])]]])))])]]]]))]))]))])])])]]])]])]))))]))])]]]]]]]])))]))])])))))))])]])))]]]))]])]])))))]))))]]]))]))]])]))]))]))]))]]]]]])]])]]))))))]))]])]]))])]])]])))]))]]))]]))]]]])))))]])]))))])]]))]])]]])])]))]])))]))])])])])])])])]))])]]]]]))])))])]])]]])])])]))))]]))]]))])]]]]))))])])))])]])))))]])]]])]])])))]]]))])]])]]]])])])]]])]]))])]])]])])])]])))]]]])))]]))))])))])]))]])]]]))]]]))])]))))]])]))]]])]))])])]))]]])))))]])]))])))]))))]]))])]]]]]])])]])]]])])]]])])))]))))]])))))]]])]]))]))])))])])])))]])))]]]))]]))]]))]])]]])]]]))))]]]]))))))]]]]]]])))))]]))))))))))))]]]]))])]))])]]))]]))))])]]])]]]))))])))])]]])])))))]]]]])]))))]))))])]]])])]])]])))])]]])])]]]]])]]))])))))))))))]]]]]))])]]]]]))]])]]]))]))]]]]])))])])])]])]]]))])])]]]]]]])])]))])]))))])]]]]]]])]]))]))]]]])])))]]))))))])]]]]))]])]]]]])]]]])]))))])]))]))]])))])))]]))]))))])))]]]])]]]])))))])))))])]])]]])))])))]])]])]]]]]]))])]]))]]]]))]]]])]]])))])]]]]))]]))]]])]])))])))]))]]])]])]]])]])]))))])))))])]))))]]))))]))))])])]]))))])])])]]]))]]))]))))))))])))]]))]]))]))]]))]]])))]))]]])]])])])))]]])]]]))])]))))]))])]]]]])])]]]]]]]])]])]])))]]]]])))])]]))))]))]]))]))))]))]])])]]])])))]]])])]))])]))]]])]))))]]]]]])]))))]]))]]]])))]))]))]])))))]])]))]))])]])))])])]))))))])))]])])))])))]]]))]])]]]))])))])]])]]]]))]]])])]]])))]))]])])))])]))])))))]]]]]))]])]]]]]]]]))])]])])]])])])))]))])]]]))])])])))]))]]]])))]])]))]])])))]])]])))))])]])))]])])])]))]))])]]]]]]))]]]))]])]]]]]))))]]))]])]])]))])])))))]])])])]))))]])))))]])])]))]]])))]))))]]])]]))))))]))]))))]])])]]]]]])))]]])]))))])]])))]])]))]]]])]))))]])))))]]])]))]))))])]])]))))))])])]]))]]])))))])]]]))))]])))]]])]]])))])))]]]))))))]])))]])])]]]])))]))]])))]))))))]]])))))]])]))))]]]])]))]]]]])]])]))])]))]]]])))]])))]))))])))]])])]]]))))))]]]]]]]))])]])])]]))]])])])])]]]])])]))])))]]]])]])))]]))))])]))]]]))))]])))]))]]))]))]]]]))])]))]]]]]))])))))])]]))]]])))]])]))]])])])))]])])])))]]])]))))])])]])]])])])]])])]])])]]])]))))]])]))]))]))]))])])))]))])]))])]]]]))]]])]))]]))))))])))])])]]]]])]]))]))]]]))))))))))])]])]]]]]]]))])))]]]])]))])]]]))]]])))])))]]]))))]])]])])]]])]))])])))))]]))))]])]])]]]])]))])]])))])]])]]]])]))])])]])])]]]))]]])]]))]]]]]]]]]])]])))]]]]])]]]]]])])))])))))])))))))]])]))]])))))]))]])]]))]]]]]]]]])]]]]))))]])])]))]]]]]]])])])]]])))])])])]]])])]))]]]))))))]]])))]))))))]]))]))]])]]]))))))]]]]))))))]))]]))]])]])]]]])))]]]])]]]]]]]])]]]])])]]])))])))]])]])]]]]]))))]]]]]))))])))))])]]))))))]])])))))]]]))]))))))]]]])]))))]])]))))]]])))]]])))])))])]])]]])]]))))])]])]]]))))))))]]))])])]))]])])]])))))))])]))]))]))])])))])))]))])]])]))])])))))])])]]]]]))))])))]]]))]]]])]]))]])))))]))])])]]]))]))])]]])]))))]))]]]]]))]]]])]]))))]]]]]))))]]])]])])]])]]]]]])])))]))))))))]]])])]]]]]))]]])))))])]))))]]]]))])])))])))])])]))))]))]))])))]]]))]]]]]]]]])]]]]))))))))]]))]]])]]))])]]))))])])]]])]]]))])])])]]]))))))]]]]]]]))]))))])])]]]))]]]]])])))])))))])))))]])]])]))))))]]])))]]]]]]]])])]]))]])]]])]))))]])]]))]])]])])]]))))]])]]]))]))])]])]]]]]))])])]])])]]))))))])))]))])]]]]))])]]])])))]]]])])]))]])]))))))])]])])]))))))))]]])]))]))])]])]]]]])))])]))]]))])))])))])])]))]]]]]])]]])]]]]))]))])])])])))]]]))]))])])]))]])))])]))])))))]]]])]]]])]])])])])]))])))]]])]]])]]])))]])))]])]]]]))))])])]))]]]]]]]]])]))]]]])]))]])]])])])]))))])))]))))]))))))]]]])])]])])]]]))]]))])]]])]))]]])]])])]])))])])]]])]]]]]))]))])]]))))]]]])])]])]))]))]])]]))]])]]])]])])]]]]]])]))))]]]]])]])]]])]))]))]])]]])])]]]]))])]]]])))))])])]])])]]]))]))]])]))])]]))])])]])]))])))]))))))]]])])))]]])])))])])))])]]]))]]]))]]]))])))]]))))))]]))])])])))])]]])))])])]])))))]])))]]]))))]]]]]]))]])]]]]]))]))])])])))]]))]))]]]]])))]))))]))))])]]]])))]]))]]])))])])))]))])]])]]])]])])]])]]]]]]])]]]])]))])]))))])]]))]])]])]]]])))]])))]]])))])]]]]))]))]]))]]))])]))]))))])]])))))))]))])))]])))]))]))]]])]]]))]])]]])))]]))))]]])]))))])))))]))))]]))]]))))]]]))]])]]]])]]]]]]]])]]))))))])]]))]]]]]])]))]])]))]]])]))]))]]]]]]))]))]]))]))))]))]]]])]))))])]]]]])])]]])])]])]]]))))])))]]]]))]]))))]]])]))))]]]])]]]))]]))]])]]))]]))]))]))]])]])))))))])]))))))]]])))]))))]])])])]))])]])])]]])]]]]])])]]]]]])]])]])))]]]]]]])]]])))]]))))])))]))]])])]])]]))))])))))]))]])]]]]))])))])]]]])]]])))))))])])]))]]]])]))]]])]])]]]]]))]]])]))])]))]))))]])])]))]))]]]]]))))])])]])]]]))))])]]])]]]))])]]]]]])))))))]]))]])]]])]))]]]])]))])]])))))]))))]))])))])))]))])]])]]]))])]]])))])]]]]])])])))))))]]]]]])])]]]])]])])))))]]]]))]])]]]]))]]])))))]]])])]]])]))]]))])))))])]))))]]])]]])])]]))]]]))]])]])])]]])]]]])]])))]))]]))))]])]]))]]))]]]]))))])))])))))]])))]])]))]]])]]]])]]]))])))))]))]]]]])))])])))]])]))))]]))]))))))])]))]))]])])])])]))))]])))]))))]))]])]]])])])])])))))]])]))))))]]))))])]))))))]))]])))]))))]]])]))))])))]]]])]]]])]]])))])))]]]]))))]]])])]))])])]))]))])])])]])]]))]))]])]]])]])))]))])]])]])]]))]]]))))))])]])])))])])]))]])]]]]]])]])]])]]]))]))]))))])])]])]]]]]))]]])))])))]]]]))]))]])])]])])]]]]]]))]]]]))]]]])]]))))))]]])])]]]])))]]])])])])]]])))]])])]])]]]]]])]))]])))])])))]]))]]])])])]))]])])))]]))]]))]]]])])]]]))))]]))]])]])))))]]]))]])])])])))]]]))]])]]]]])]]]])]]))]])]])))]]]]])]]))]))))))]]])]))))]]]])))))]]))]]])]]])))]]])]])]))])])])])]]))))])]]])]))])))]))]))]]])])]]]]])))]])))))]]])]))])])])])]])))]])])]))))))]]]]))])]])))))]]))])))])))])]]])])]]]))]]))])])]])))]]))]))]]))]])))))])]]]]])]]))]])))]])])))))])))])])]]]))])])]))]]]))]]]]]))]))]))]]]]))))]])]])))]])])))])]])]]])])])]]]])]))))])])]])])])])))))])]]]]))))]]))))]])]))))]]]]))])]]]))))]]])]]]))]])]]])]))]))))]))])]]]]]]]]]]))))]]]])]]]]))])]])]]])]))]]))])]]])]))]])))]]))]]]])))))]]])]]))))]]])]])))]))]))]])])]]]))]])]])]))])]]]])]))]]))])])]])]]])]])))))])])))]]))]]]]])])]))])])))]]])])))))]))])))])])]]]]]))))))]))))])))]]))))])]))]]]]]]])))))]))]])]]])]))]]]))]]]))]))])])))))])]]]]])]]))))])])))]])]]))]]])))])]]])))])])]]))))])))])])]))]))])]])))]))]))])]]))]))])))]]])]]]))]]]]]))]]])))]]])))]])])])))])]]])))))])]))])])])))])]))]]]]])]))])))))])))))])])))])])])]]]]))]))]])))]]]]]]))]])]))))])]))))]])))))]]])))))]))))]))))]]]]])]]])))]])]))]))])])]))]]))))]]])])))])])))])))])))]]]])]]]]))]))))])])]))))]])]))))])))]))]]])])])))])))]))))]))]])]]]])])))]]]]))])])))))])]))))))])]]))])]])]])]])])])]])]]))])])])]])])]]]]])]]])))])))]))))]]))])))))])))])])])]])])])]])])]]]]]]]))])]]]])]))])))])]])]))]]))]])))]]])])]]))])))))]]]]))))]))))]]]])))])))]]))]]]))]])]]]]]))]]))]])]]))))]])]))]]))])]]])))]]]]]])))]]])))))]])))))]))]]])))]]]]]]]]])]])]]]]])]]])])))))]]])]]))])]]])]))]))]]]])])))]]))))))))])]))]])]]]))]])])))]]]))]]))))]))))))))]]))]]]])]]))])]]])]]])]))])]]]))))]]]])]])])))])]])))])])]])))])]]))]))]])]])])]])]]])]])]))]])))]]]])]]])))]])]]]))]])]]])])]]))))])]]]]]))]]]))])]])))))]])]))))))))])))])))]]))]]]))]))])]))]))])])]]))]])]))))])]]])]]))]]))]))])])]])])]])]]))])]]))))])]]))))]))]])]))]))]]])]]]))]))])]]))])]))]))]))))))])))])])]))]]))]]))]])]))]]]))]))]]]]])))]]]]])]))]]])))]])]]]])]]])))))))))]))]))])])))]]]]]))])]])]]]])))]]])]])]))]]]]]]))])]])))])]]]])))])]])))]]]]]])])])]]]))]))])))]])))])]]])])]]))])])])))]])])])]])])]]]]]]))]]))))]))]]))])]]]]))]))]))))]))]))])))))]]))]]))]))))))))]))]]])]]]))])]))])))))]]]])))])])])]])]]]]])]]]])]]]])]]]]]]))])))))]))))])])]))])]))])))))]))]]])])))]]]]))))])))])]])]]]]))]]]])))))]])]))]])))]])))])))]]))))]]]]))]))]]]]]]])))))))])])))]))]]))))]]))))])])])]])]])]))))]])])]]]]]))]))]))))))))]])]))]]]]))]))]]]])]]]])]))]]]])])])))]]]))]])))))]]]]]]))])))]))]]]]]))])))))]])]]]]]]])]))])))]]]])]])]]]))))]))]]]]))]))])]]]]]]))]))]])))]]])))))))])]]])])]]]])]])]])]]]))]])]]])]]])]))]]]]]]]]])]]))]])]]))]))]))]])]]))))))))]]))]))])]))])))]])))]]]])])))]])))))])]]])]])]]])]))])]))))]]]]]]]]]]])])))))))])))]]]])))]])])))])))]]))]]))]]]]]])]]]))))])]))]]])]]]]]))])]))))))]])))))]]])]]]]])]])))))])]]]]))]))]))]]])]])))]]))))])))]]))))])))])]]]))]]))])]]))])]])))))])])])]]])))))])))])]])])]]))])]))]))]])]]]])))]))])]])]]))))))]])))))])]])])]])]]))))]))])]]))])]]])]]])]])]]])]])])))))]])))]]])]]]])))))]]]))])]]))])]]]])])))])])]]])]]))))]])]]]]))))))]]]))]]]])]])])])])]]]])]))))))))))])])]])]])])])])))]])]]])]]]]]]))]]]]]))])]]]]))]))]]]))))]])])]]))]))]])])]]]]]])])])))])])]]]]]]]]]]]]))]]))])])]]))))])])))]]))))]))]))]])]))))])))]])])]])])]]]]))]))))])))])])]))])]])]]])]])]])]])]]]])))))])))))])])]]))]]])]))]]))))))]]])))]))]]]])]])]))]]]]]))]])])))]])))))]]))])]])])))]]]]]]]]))])]])])]]]))])]]))])]]])))]])]]]]))]])]])]])]]])])]))]]])])]]))]))))]))])))]])]])])]])]])))])))]))])]])])])])]]))))]))))])]])))])))]])))])]])])]]]])])]))))]])]]]]]]]]]))]))]]))))]]])])]]))])])]]]])])]))]]])]]))]]])]]]]])]]]]]])]]))))]]]]))])]]]]])])])])])]))))])))))]])))))])))))]]))])])])]]]])]]]])]])]]))]))))])])]))]]))])])])])))]))]])]]])])))]]]))))]]))])]])])]])))]]]))])])))]))]])])))))))]]]])]])]))))]])]]])]))]]))]])))]])]])))]))]])]]))])]))])))]))]])])))]]))))])))]]])]]))]])]))))])]]]))))))])))))]]]))]])]])]))])]]]))]))]]]]]])])))]])]])])))])))]])])]])]]]])]])]))]))])]]))])]]])]))))))]])))]])])])))])]]))]]]])]]])]]])]]]))))]))]])]]]))))])]]]])]))]])))])))]))]))])]]]]])]])]])])])]]]]]])))))]]]])])]])))])]))]]])))]))]])))))]])])))]))]))]))]])]]]))]]]]])]]]]))]]]]]]]]]]])]]]]]])))])])])))]]])]]]])]))]])])]])]]]))))]])))))])]]]])]]]]))))])])])]]))]]]))]))]]]]]))]]]))))]]]]])]))])]]]]])]))))]])]]]])]))]))]]]])))]])])]]]))])))))]]]])])]])]]]])]]]))]])]])]])])))])]]))))))))]]]])))))))])])])])))])]))])]]]))]])])]))))]]]])]))])))))])])]])]]]]]]]])))))]])])))))]))))))]]])]])))]))])]])]))]])]])]]]]))]]]])]]]]]))]))])]]))))))])))]]))])))])))))]])])])]]])]]])])]])]]])]]]))]))]])]]])]])])]]]))]])]]))]]]))]]]])])))))])))))]])]))])))))])])]])]])]]]]]))))))]]])])])))]])])])]]]]]))]]])]]])]]]]])]))])]))]]]))]]))]))))))]))]))]]]]]]]])])]]]]]]]))))]])]))))]])]))))]])]]]]])]))))])))]])])))]]]]]]))]]]]]])]]]])]]]])]))]))))]]])]])])]]))]])]]))])))]]]]]]]]])])])])]]]]))))]]))]]])]]))]])))]])))]))])))]))]]])]))]]])]))])]])))))]])]]]]]))])]])]]))]])])]))]]]]])))))])]]))]))]))]])]))]])]])]]])])]]])])]]))]])))))))]]])]]]]])))))]))]]]])]]))])))]])])))]))]]]]]))]))))))]])]])]])]]])]]]]]]]]))]])))))])])])))))]])))])]]))])]))])]])))]]])])))))])]]]]])])]]]])])]])]]])]]]])]]))]]]])]))]]]])])])]])))]]]]]]]))]])]]]]))))]]]]])])))]]]]])])]]])])))))))))))])])]]])]]))])))))))])]])])]]]]]])])]))]])))))]]]]]])])])]])])]))]]]]))]])]])))))]]))]]])))]))))]))]])])]]])))])]]]])])])])])))))]]]]))]]]]]))))]))]])))]]])]]))]]])))])]]])])]))))))]])])])]]))])]]]]])))))])])]]]])]))]])])]))])]])])])])]]]]))))]))])]))]))))])))]]]])]])])]]))))]]]))]]])))])]))])))))]]]))]])]))]]))]])]]]))))))])]]))))])]]]])]])])]]]]])]]]])])])]))])]]]]])))]]]]]))])])])))])])))])]]]))])))))]])]])))))]))])])]])]]]])))])]])))])])]]])]))))))]]])])])])]]])]]))])])]))])]])))]]])))]]])))]))))]))])])]]])]))))])])]))]))]]))])])))]]]]]))]]]]]))))]])])]])])])]))])])]]))])))])]]]]]))]))]]))))]]])]]])]])]])])]])])])]]]]]))]))))]))))))]])]])))])])))]]])]])]))]]]))]))))]]]]])]])))]]))))]]]])]])))]]))]])))]]))]]))])))]])]]]]))]]))))]))]]))])]))]])])])]])))]))])]]])])]]])])))))])))))))))]))]))))))))))]]]]]))])]]]])))))]]]]))])))])])])))]])]])]])]]]]])])]])]])]]]]])])]]])]]))]]]])]))))))]]]]))])]]])])))]]]])])]))])]]]])))])))))]))])])]]]]]]]]])]]))])]])])]]))]))]]]]])))]))]))])])]))])]))]])])]])]]))]])]]))))]]]]])])])])]))]]])]]]]])))))]))])]]]))]]))])))]))])]))))]]])))]))))]])]]))]))]])])))]]]]))))]))))))]])]))))))))])))]]]])]])])]]))]))])]])])]))]]])])))]]]))))]]])))]])])]])))])]))])))]]]))])])]]))]]]])))])))]]))]])])]])]]]]])]])]]))])]))))])]])])])])))))]))])]))]))]))])]])]])]]]))))))))])))]]))]])]]]))]])])]]))))]]))))]]))])]))])]]))))))]])))])))))))])]))))]]]])])]])]))]))])]]))]]))))])])))))]]]]]])]]))])]))]])])))])]])))]]]]])]))]]])))]]))]))])))])]))])))]))))]])]]])])]])))]]))))])]))]])]])))]]]])]])]]]]]]))))]]))))]])]]]]]])])]]]))))])))]]))]]]])])]]]]])))]]]]]]]]))])]))])))))]])]]]]))])])])]]]]])))))]]]])]))])]))]])))]]])]])]]])])]))]]])]]])))))]]])])]])])])))]))])]))))]]]]])]])]])))))))))]])]]))]]])]]]]])])]))]))]]])))))))))]]]))]]]])]]))))])]]))))]]]]]]])]]]]]]]])]))]]))))])]]))])])))])])))]))))))))]))))))])])]]]]]])))]))))])])])]]]]))))])))])])]]))]]])))]]]]]))))))))])])]))]])))]])))])]]])))])))))))])))))]])]]]]])))]]))]]])))]]]]]])]]))))]])]]])]))]]])]]))]))]]]]])]]]))))]])))))]]))])))))))]))]]]))])))]]])))]])]])]])]])]])))]]]])])]])))))))]))]])])))]])]))])]]]]])))))])))]]])]))))]]))]))]))])]]))])]))]))]])]])]]])))])])))]]]])]))]]]]))]]]]]]])]])])])))))]]])])]]])))]])]]]]]])))]]]]])])))))))]))])))]]]])))))]]]]]]]))))]]])]]]]))]]]])]]))]]))]]])]))]]))]])]))]]))]))))]]]])]]]]]))]]]))]])]])]]]]]))])])))]))]]])]])])])))]]))]))]]))))]]])))])]]]]]]]])))))])]]))]))])]))]]]]))]]]]])]))))])]]]])])))])))))]]]]))]))]))])))]])))]]]]])])))]])]])]]]))))])]])]))])]]]])]))))])]]]))])]]))))))]))]))]))]]])]]]))))])]]))))]]]]))]]))]])])])))])]])))])]]]])])))))]]))))))))))])]]))]])])))]]]]))])]])]]]]]]]])])]]]])]])]]])))])))])]]]]]]])])]]]))]])]]]]]))]]])))]))))])))]]])]))]]]))))]))])]])]]]))]]))]])]]))]]))))]]))))]]]]))]])))))))))]))))]])])]]]]])]]])]])])))])))]))))]]]))]))]]]))]]])]]]])]])]]]])]]))))]]))))]]]]]]]]]))))]))]])]))]))]])))])))])]])]])])])])]])])])])])))]]))))]])]]))]]])])])]]]])))))]]]]]]])]]]]))]))))]]]))])])])]])]]]]))]])))]]]))]]])))])))]]))))]))]]]])]]]))]])]])]))]))]))))))))]]))]))]]])])]]))]])])]))]]]])))))]]])])]])))))]))))])]]]])]))])))]])]]])]]]))))))]]])])]]))]]))))]])])])))])]])])]]]))))]))))))))])]))]]))]])]])])))]))]])]])])])])])])])]))])]]])]))]]]])])])))))))))])]]])]]))]])])]]))))))))))]])))]))]]))))))))))]))]]])]]]])]]))]))]]))))]]]])))))))))])])]]]))])])]]))])))]]))])]]])])]))])])])))])])])]])))]]))]))])))])]]]]]]))]]])]])])]))])])]]])]])]])]]])))])))))])]]]]]])))])))))]])]]]])]])]))]])))])]])])])))]))]]]]]]]]]])]]))))))])]])))))]]))]))]])))]]])]])])]]])]])])]))])]))))))))]]]]]]]))])))]))]]]])]])]])]]])])]]]]]]])))]]]]]]))]]]])))]]]]]))]]))]]]]]]))))]))))])]]]]))]])]))]]]]])))))]]]]]])])]))]))]))]])]])]])))]))]]))])]]])]]]))))]))])))))]]))]]]]]]]))))]])]))))))]]])])]))))]]]]]]))])]]]))])])))))])]))))])])])]])])])))))))))]]])]))))])]))]]]])))))])))))]])])))]))]]]])]]))))]])]]]))])]))])])))])]))])]])]])))])])]))]))]])]])])]))]))]]])))])))])])]]))))]])])])]))])]))))))]])]]]]]))])]])]]))))]]]]]])))]])])])])))]])])))]))))])))])])))])))]))])]))))]))]]]]]]])]]]]]])]]))])]]]])])]]]])]])])))]]]]))])])])]]])))]]])]]))]]]]]]]]]])]])))]]]]))]))])]]]))])))))))]))]]]])])]])]))])])))]]]]]))))]])]))]))))]])]]))]])))]))))])))])]]])]))]))]]]))))]]))]]))]))]))])]]]]])]])))]]]]))]])]))))]]])])))])]]]])]]))])))))])]))])))]])]])))))]))]]]]])]]]]])]]]))]))))))))]])))]]))]))))])]]]])])))]]]))])]]))])))]])))]]))))])))))]]]])]]]])])]]))])]])]])]]))))])])])]]])]])])]))]))]]])]])))]))])]]]]]))]]])])])]])))]))))]))))])))))))]]]])])))))))]))]))])]]))])))]]]))]])]]])])])]])))]]]]]]))])]]]]]))])]]])]])])))]))]])))])))]])))]])])]]]]])]])))]]]]))])))]])])])]]))]]])]])))]]))])])])]])))]])]]])))]]]]))]))])])))])]))]]))))))]))])]]]]]]]])])])])])))]))]))))))))]])]]]])])]))]))]])]])]]))))]))]])])]])]))])]))]]])]]])]]))]]))]])))]]))))])])]]])]]]]))]]]]]))))))))))))))]]))]]))]))]))])]]])))]]))]))])))]]]]]]]]))])))]]])]]))]])])]])]]]]])]])]]]]]]))]]])))])))]]]))]]))]))))))]]]]]]])]]]]])]]]]))]]))])]))])])))))))))))]])))]])]]])))])])]]]]]])]]])])]))]]]]])]))]))])])]]]]]))])))])]))])))]))])])]]])]]]]])]]]))]])]]))]])))])]])))))]]))))])])]]]]]]]])))]])))]])]]])])))])])))]]]]]]]]]))))]))]]))]]]))))]])])]]]]))]))))))]]]]))))))))]]]])))))])])])]))))]))])]])])]))))]))]])]))])]))])]]]]]]]))])]]])])])])])]])])))))))]]])])])]]]]))))])])]]]))]]]))))])]])])])])))]]])))])))]]]])]]]]]]])]]])])]]]])))])))])))]]))]))))))))])]])])]])]]]])])]]))]]]]])]))]])]])))]))]]))]]])))]))])))))]])))))])]]))]))])]]])]])))))))])))))]])]]]]]])]])]))])])])])))))])))]]))]]]])))))))]))))]])])]]]))]]]])])))]))]]]))]])]])]]])])]))))])]]]])))))])]]]])])]])]]])]]])])])])]]])))]))))])))]])))))])]]]))))))])))]))))]]))]])))))]]]))))])])])]])]]])))])]]]]]]]]]]])])]]))))]]]])]]]]])))]])))]]])]))))]]))]]])])))]])]))])]))]]]]))]))))])))])))])]]]]]]]]]]))])))])))]]])))])])]])]))]))]]])]))))]))])])]])])])))])))]]]])))]]))]))))])))))]]])))))))))]])]])]]])))]])]]]]]])]))])))))])))]])]])])])))]]]]))]]]])))]]]])]]]]]))]])]])])])]]])]]])))])]]])))]))]))))]]])]])))])]])))]]])))])])]))))]]]))))])]]]]]]))]]])))])))))]]])]])))])]))]]])))])]])]]))]]])]))]))]))]))])])))]])))]])])])))]]]]))))]]])))))]])]]]]]])])))]])]))]))))))]))]])])]))))]]])))]]])]]]))))]))))]))))))])))])]])]])]]]]))]))]))]))])]]]]])]]])])]])))])))))]])]]])]))))))))])]]))))]])))))))])))]])]))))]]]]])]]]]))))]))]])])))))]])]))]])))]]))])]]))))]]))])])))]]]])))]]]]]]]))])))]]]])))))])))))]]])])]])]]]])]]))))]]))))))]))])]]]]]]]))))]]])]])))])]))]])])]]]]])]]]]))]]]]])])]))]]]])])])])))]))]]))])]]]))])]])])]])]))]]]])]))]]]]]]]])])])]))])])])])]]])])]))])]])))])))]))]]])])]])))]]))]]))]])]])]]])))]))))]]])])))))]]]]]]))]]))))])])]]))]]]))]]))])]]]]))]))]]]))]))))])]]]]]))]])])])]]))))]))])]))]))]]]))]]])])]))]))]]))))]))]])]))))]])))]]))]])))]]]]]]]]]))))]]))]])]])])]))]])])))]]]])))]]))])])))]]]])))]))])))]]]]])])))]))))])))))))]]]]])]))))]]])]))]])])]]))]])))])])])]])])])]))))]]]))))]]])))])))])]]])]))])])))])])]])]]])]])))))))])))))]]]))]))))))])])]]])]))))))])])))])))]])]]))]]]]])]]))]]])]]]]])]])])])]])))]]]]]]]))]])))]]])]]])]])]]))]]))))])))))])])]]])])]])])]))]))))]]]]))])]])]]]]])))]]]]))]))))])])]])))]))]]))])]])))]])))))])])])))])))))])])]]])])]]]]))]])])]]]])))])))))])))]))])])])]]]))))))]))]])]]]])]))]]]]]]]]]]]]))]]))])])]])])]))]]))))]))]])])))]]))]]]]])]))]]])))])])])])]]]))))]]])])))))]])]]]])])]))]])]]))])))]]])))]]]))))))))))]])]])])]]]]]]]))))))]]]))])])]]])])]])]]]]])])))]))])])))))))]))]])]))))])]])])])))]])])]])))))]])]]))))]]])]))))])]]]])]]))])))])]]]))]]])))])]]]]]))))]])]])]))])]]]]))]]]]]]]))]))]]]]])])]])])]]]))])]]]])))]))))]))))))]]]]]]]]])))]]])))))]))]]]]]]])])]]]))]])))]]]))]))))]]))]]))))]]]]]]])))])]]]])))]]))))]]]))]]])])]]]])])]]])]))))]])]]]]))]])])]])])]))))))]))]))]))))]]])]))]]])]]]))]]]]])]))))]]]))])))))]])]]]]]])]))]])]])])]]]]))]))]]])])]))))))]]))]]]]))]])))])))]]]])]]))])))]]]))])]]])]]])))]]])])])]])])])]))])]]])])])]))]]]])))]))]))]))])]))])]))])))])]]))])]]])]]))]])]])])))]))]])]))))]))))]])]))))))))]]])])]]]))])])))]]))]]))]))]))]))]])])))]]]]]])]))))))]]))]]])]])]]]])])]])))))]))]])])]]]]]]]))])]])))]])]))]))))]))]])))])]))))]]))))))]]))]])))]))]))]))]])]])])]]]])]]]]]]])]]]]))]]))]])]]]]])]))])]))])]]]]))]])])])))]]]]]))]]))]]]))]))))]))))]]))]]))])]])])]))]))]])))]])]))])]])]]))]]]))])])]]])))]))))))))]))]]]]])))))])]))])]]]])))])]])]]]))]])]))]]]))]]]])])))])])]]])])]))]])))]]]]]])]]]])])))]])]])]))))]])))])]))])]]]]))])]]])])]))]]))]]]))]])))])]]]]]]))))])]])))))])]))]])]]]]]]]])])])]]]])]))]]]))])]])]]]))]]]]])]]]]]])))]])]))))])])]])]))])))))))]]))))))]))))])))])]))])]]]])]))])]]])]))))])]]]]))]])])))])]]))])))])]))))]]]))]]]))]]]]]]]])]]]]]]))))))]]])])]))]))])])]]]])))])]])]))])])])])))])]]]]]))]]]]))]])]]]))]]]]]]]]])))])]])))])]))))]])]))]]])])]))])))]]])))])]))]))])))]]]]])))]]]])])])]]))])))])]])])]]]]]])]]])]]])))])))]]]])]])]]]))]])]))])]))]])))])])])]]])))]))]))))]))]))))]])))])])]])])])))]]]]])])]]]]])]]]]))))]]))]])])]]]])]]))]]]]]]))])]))])]])])))))]))]]]])]]))]))))])])))]))]]])))))]])]))))))))))])))]])]])]]]]])]])]])])]])])])])))]))]]))]]]])]))])])])])))]])])]])))]]]])]]))]]]))])]]]]]]]))])]])]]]]))))))])]])))))))))])]]]]])))))])]])]]])))))]])]]]))))])]])])]])])))]))]]]]])])))])))))]]]]]]]])])))])]]))]]]]]]]])))]]])]])])))))))))))]])))]]]]])])]]))]]))])))])))]]])]]]]])]]]]])]))]))])]))]]]])])))])])]]]]]]))])])))])])])]]]])))]])])))]]))])]])]]))]]))])]]]))))))]]]))]]])]]])])]))]]]]]]]])]])]]))])))]]])]]]])]])]])])]]]]]]))]))])])]))])]]])])]))])))]]))]]]])))])))]])]]])))])]]])])))]]))))]])]))]]]])])])]]])]]]])])])]]]))]]))))))))])))])))])]]])]]])])))]])]))))))))])))]))]))))])]]]]])))))])])]))))])]])])]]])]))]]))))))]))))))]))])]]]]]))))])))]]])]]]))]])]]]))])])]))]))]))]]]])))]))]])))))]))]]))])])]]]))]]]]))]))))))])))]]]]))])))]]]]])]])])]))]])))]]]])]]]]])]])))]])])]]])]])))))))]]]))))))]]])))))])))])]])]))]]]]))]])])))]))])]]))]))]))))))))]))]])]]))))]])])]]])]]))))]]]]))])]))]]]]))])])])]])]]]])))))]))))]))]]]])]]]]])))]]]]])]])]]])]]]])])])]]]]]])])]))]])))]]]]]])]]]))])))])])]]))]]]))])]]]])))]))])])))))]))]]])]))]))))]])]]]]]))]]))]]]]))))]]]]))]]]]])])])])]]])]))]))))]]))]]]))))]))))]))]])])])]]]))])]]])])))))])))])])]))])]]))])]]]]]])]]]]])]))]]]])]))]]])]]]])])]]])))])]))]])))]]]]]]])])))))))])))))]]])])]])])])]]]])])]]])]))]])))))]])))]]))))])]]])))]])]]])])])]])]])]])))]])]]]]])))])]])]])))])))]]]]]))])))]]]]))])))])))]]])]])]])])]]]]]]))]]]]]]))]))])]])])]]]))]))]))])])])]])])))))]))])))))))])]])])]]])]))]))])]]))]))]])))]]]]]]]]]]]))]])))])])])]]])))])))]]))))))]]]]]])]))])]]])])))]]])))]])]])]))])])])))])]))])]]]))])))])))))]))))))]]]))]))]]]))))])]]))])]]]]]])))]))])]]]))))]])])]))])]))]]))))]]])]]]]])]]]]]]))]))))))]])]))]))]]]))])])])]))]))]]))])]]]]]))])])]]])]))])])))]]])]]]]]])))]]]]])])))])]))]]])])]))]]))]))]])]]])])]])])))])])])))))])])))))]]]]]])]))]])))))]]))]]]]]))])]])]]]))]])]]])))])]]]))))]]]])]])])])])])])])]))]])]]))))]]])]]]]]))]]]])]])])]])]]]))))]]]))))]]]])])]]]]]])]])))]])))])))]))))])])])]]]])))]]]])]])))])])])])]]]])]]))])])]))]]]]])]]]]]]]])]))))]]]])]]]]])))]])))]]])))))]])])))))]))]])))]])]]]]])]]])]]])))]])]))]]]])])))]))]])]])]]]]])]]))]))]]))]])]]]]]]]])])))))])])])]))])]])]))))))]]])]))]))))]])))]))))))]])]]))])])])))]])])])]]]]]]]))))]))]]])])])]])]]])])))])]])))])])]]])]]]))]]]]])))]))])]])]]))]]])))])]]]])])]]])))))])])]])))]]]))]]]])]))]]])]])]]]))))]]]))))]]]])]])])))]))]]]])]]]))]))]]]]]]]])])))]))])]]])))))])])))]])]])]]])]))))]))]])]))]])))))]))))]]])]])))]])]])))]))]))]))]]])])])])))]]])])])]])]]]])]]])]]])))]]))]))])]]]]]]]))])]))])])]]))]]]])])]))]])))]))]))]))])]))])]]))))]]))]]]))))]]))]]]))))]])])]]]))))]])]])])])))])]))))]]))]]]])])))]))))]))])]])]))]])))]))))]]]))]]]]])]))]))]]])]])]))))))]]))]]))]))))))))))]]])]]]]]]))]))])))]]]]]])]])]])])))))]]]]])]])])]]])])])])])))))))))]])]]]]]])])]]])]])]]])))]])])]])]))]])]]])))]]]])))]])])])))))])))]))))]]]]])])]]]])])])])])])])]))])))])))]))]])))]]))])]]])])))]]])]]))]]]]]))]]]))]]))]]])]]]]))]]))]]])])]]]])))]])))]])))]])]]])]]))])))]]]]]]]])]]))]]]]]])]))))])]])])])]))]]]]))]]))))]]))])])]]])])]]))))))]])]])))])]))))])])])])]])))]))]]]))))))]))]]]))]])]])])])))))]]))))]]]]]]]])]]]])]])]])]]))]])]))])]]])))]])])))))]])]])))]])))]))]]])]]]))]])))))))))])]]]]))]))]]]))))]))]]]]))])]])]])))])))]))]])))))))]]])]))]])]))]]])))))))))])]]]]])]]))])]]))]]))))])]])]]]]])]))]]])))))))]]]))]]]]]]))]]]])))])]]]]]]]]))))])]]])))))]])])))))]]])]))]))])))])))])))))])])]))]))]]]))]))]]]]]))]))])]]]))])]]]]]])]))]))]))]])))]])))]])]])]]]])]))])]]])])))]]]]]))]]))])]]))]]))]))))]]]]]]])))]))]]]]))]]]))]))]))])]]))])])))])]]))])))]])]]))))))]])]]))))])))]]))))]]])]]])]]]))))))))]]))]]])))])]]]]]]))]))])))])]))))])]))]]]])]]])])])]])]])])])]))])))]])]]]])]])))])))]])))]))])]])]]]]])]]]]])]])))]))]))]])]])])))))])]]])]))]]]]))]))]])]]))))])]]]))))]]]])))]]))]))])))))]))]])]])]]))])]))))]])]]))])]]]]))))))))]]]))))))])])])]]])])])]])]]]]))))]]))))]]]]])))]]))])])))]))))])]]))])])])))]))]))]]])]))))])))))]])])])]]])]])]])]])]]]]]])]]))]])]])])])))))]])]])]])])))))])])))]])]]])]]]]]))])))))]]]))]])))]]]])]))]))])]]))])]]])))]]]]])]])])))]]]]])]))))]))))]))]]]]])])]]]])]))]]])])]])]))]))]]])])])]]))]))]]))]]))]]])))])]]])])))]])])]]]])]]])))))]]]))])]])])))]])))))))))]))]])])))])]]))]))))))))))))))))])])]])))]])]]]])])]]])]])]]]])]))))]]))))]])]]])]]]]]]]]))]])]])]]))]])])]])]]])])))]]))))]])]])]))))))]]])]]]]))]])])]])]]]])])]])]]])))]]]]]])]]])])]]]]])]]])]]])]))))])]]))]]))]])])))))))])]])]])]])))]])]]))]]]])]))]])]))]]))))))))])))))]]]]])])]]]]]]))]])])))]])]])]]]))]]))]])]]]))]])])))))))))))))]]]))]]])]])]]]])]]])]])]]]))]]]]])]])]])))])]))]]))])]]]))])]]])]))))]])])]))])))]]])]]]])))]])]]))]])))])))])))))))))])])])]]])]]]]))))]]))]))))]])))]))))]]))])))])))]]))]))))))))]]]]]]]]]))))]))))]]))))])))])))]]]))))])))))])]))]]]))])])))])))]])]))))])))])]]]]))]])])])]))])])])))]))]]]])))]]])])])])]])]]]])))]]]]))))])])))))])]])]])))]]]]])))]))])]]]]]])))))]]])]))))]]]))])])))]))])])]))])]))))])]])]]]]]]]])))))]])))]]))]])]))])]])]])))]]))])]]])]])))]]))]]]])]]))]]]]])]]]]]]]]]]])])]]]))]]]))]]]]))]))]))])))]]]]]])])]])]]]])]]])])]]])))]))])))]]))]])]]]]]]]])))])]]]))]]])]]]])])]))))]])])]))]]]])]]))))))))]]])]]]))]]])])))]]))])])])))]]])))])]])]])))]]))])]))]]])]]]]]])))]]]])]))]]))]]))))])]))))])])]))]]]))]]]]))]])]))]))])))))])])]])])]])]))])])]))])))))))]]]]]])])]]))))])])]]]]))])])])))]]]]]]]]))]])])]))])]]))))]]])))))]]]]]]])]])])])])))]]])]]])))]]])]]]))])))]])])))])]]))]))))))]))]))]))])]]])]])]]])]]])]]]]]]]))]))))])])]])))])])))])]])]))))])))))])))]))]))]]))]]]]]]))]])])))]])))))]]])])))])]])])))])])]]])]))])))))))]]])]))])]]])]])]))))]])]]]]))]])])]]))])))]])))]])])))]))])])])]])))])])])]]]]]))))]))))])])]]]))]])]]])))]])])))]))])]])]]])]]]]))))]))])))]))]])])])]]]]]]))])])])))])]]]]))]]]]])))]))])]))]]))]]])]]]))]]]])]])])]])])])]])])]))]]]])]))]]]]]]])])]]))]]])]))])]))))))]])]))]]]])))]]]]]))]))])))]))))])))])]]))])]))])]))]]])))])]])))))]))]]])])]]]])))]]]]]))))]]])))]])]))))]]])])]]]]))])]]]]))])]])]])])))]]]]))]]])]])))]]])))]))])))]]))))])]]]]))))])]])]]))]])))])))]))))))))])]]]]]])))))))]))])]])))))])]]))))])])]]]))]])]]))]]]]]]]]])]))])]]]]])]])))]]]])]]]])])]]))]])])))]])]))])]))]]))]))))]])]]]]))]]]])])])))]))]]))])])))]])])]))]))]])]))])]]))])])]]])])])]])]])]]))]]])]]))]))]]]]]])]])])])])]])))]]]]])))])]))])))])]]))])))))]])]]]]]))]])]])])]]]))]))]))]))])])))))]]))]))]]]))))]]])]])]]]])]]])))]]))))])]]]))]))]))])]])]]))))]]]))])])]]])))]]])]]]]]])])))]])]])))])))])]]]]]]]]])])]])])]])))))]))]))]])])])]))])])))))]]]])))]])]]])]])]))]])]]))))]])]]]]]]))])))]))])])))))]])]))])])]]])]))])))])]]]])])])))]])))]]])]])])]]])]])])]])))]]])]))]]]))))]]]]]]]]]]]])]]])]]])])]]])))]))))]]])])))))]))])])))))))))])]))])]]]]]])]])]])]]))])])))])]])]]))))]]))]]]])))]])]]))]))])])))]]]])])]))]))]]]))))])))))]]])]]]]))]]]]))])])))))))))]]])])]])]])])]]]])))])]))]]]))])])])]]]))))))]]]])))]])))]))])]))))))]]]))])])]])]]]])])]])])]]]])))]]])])])))))]))]])))]])]]]])]]])))]))])]])]))]])))])])]]])]))))])))]]]]])]])]]))))]]])]]]])))))]]]))]))]])])]])))]]]]]]]))))]]]))])))])))))))]])))]])))])))])))]))))))])]))))]]]]]]))))]]]]])))]))])])]])]))])])))])]]])]]]])))]))])))]]])]]]]]])])])])]]))]]))]]]]])]]])))))))]])]]]))]))))])))])])]])]])]]])]]))])]])])]))))]])))]]]]]])]]]]))]))]])))))]]]))))]])))])]])))]])])]]]))))]))))))]]]])]))]))]]])]))])))])))))])])])])])]])])]]]))]]])]])))]])]]])]]))]]))]]]]])]]]])]]])]]])]])))])]])]]))])])])]])]))))]])]])])])]))]])))]]]])]]]])])))])]))))]]]])]]))))]]]]))])))))]))]))]])]))]]]]])]]])])))]])))])])]))]])))]]]])])]])]))]]])]]])])]]]])])])]]))))])]]]]])))]]])])])])))])]])]))))]])))]])))))))]))])))))]]))])))])]])]]]]]])])])]]])]])])]))))])]]]]])])))))]]])]))]]]])]))]]]))]])]))))))))]]])))])])]]])))])])]))]))))]))]]]]]))]]))))])]])))))]])))]]]])))]))))]]))])])]])]]))])]))))))]]])))]]]]]]]]])]]])]]]]]))]))]]])])])]]]])))]])])))]])])])))]))])]])))]]]]]]]]]]))])]]])])])))]])]])]))]]]))])))]])]]])]))])]]])])))])]]])))]])]))])])])]]]))]))])))]]])])]]])])])]))]]]]]]))])])))]]]])))))))]))]]]]]))))])]]]]]]))])]))]))]])))]]]])])))])]])]]]]]]]))]]))])]])])])]))])]])]]]]]]]]]))))]]]))))]))]]]))]))]]])])))]))])])))]))))]])]]]))])])]]])]])])])]]))]]]))]))]]])])]]]))]]]]])]])]]])]]]))])))))]))])]))]]]]]))]]])]))])))])))]])))])])]]))])]))])]]]]]]])))])]]))]])))))]]]))))]]]])))])]))))]]]])]))])]]))))])]])))]))]]])))]]]])))]])))))]]])]])]])]))]]]))]))]]])]))]))]])]))]])]]]]))]]]])])]])])])))))])])]]]]]])))]])])))]]]]]]])]]))]]]]))))]]])])]]))])]])])]]))]]]]]])]]]))]))])]]])]]]]])])])]])]]]])]))])]]]]]))])))]]]])])]]))))]])])])]]])])))])])))))))]]]]]]]])])))]]))])])))]))))])))])]))]]))])])]])]))])]]]))))))]]]])]]])])))))]])))]])))]]]])]))))]]))]])))]]]]])]]))]]])])])))])]]]]]])])]])]])]))]]]]])]]]]))]])]])]])])]]]))]))))]]]])))]])]]))]]])]])]]]])]))))]]])])]))))]))]]])]])))])]]]]]]])]))))])]]))))]]]])])]]])))])]]]]])))]]]]]]]))]]]]])))])))]]]))]))))]]]])]])]])]])])))])]]]))))])])]]]))])]]))])])))))]]])))))]))))])))])]))))))]]]]]]]]))]))))]))]]))))]])]))]]])]])]]])])]))]]])]]])]))))])))])]])]]]]))]]]])]))])))])))))]]))])))]))])]]))))]])))))])]))]]]])])))]]]]]))])))))])))))]]))]))]]))))])])))]])])))])]]])]))))]))]])]]]]]]]]]]]]]]]]])]))]]]])]])]])]]]])))))]]]]]]]))]]]]])]])]]]))]])]]]])]]])]]]])]))])]]))]]]])))])]]]]))])))])))))]))])]]])))))])))))]]))))]]))])]))))))))))]])]))]])])]])))]))])))])])])])])]]]])]]]]])]]])]))))])]))))]]])]]])]]])]]]]))]])]]))])]))]]]])))]])]]))])]))]])]]))))])])]])]))]])]])]])]]]))))])]))])))])]])])))]))]])]])]]]]))])]])])])]))]])]]]))]]]])])]]))]]])))]))]))))])))])]]])))))))))))]]])))]])])))]])))]])]])])]))]]])]]]])]]))]))]]])]))))]]]]]]])))])]])))))])])])]))])))]]))]]]])])]])))])])))]]]))]]]])))]]])])])])])]]])])]))])])]))]]]))]]])]]]]))]])])])))]))]]])])]]]])])]])))]]]))])))]]])]]])])]]]])]))]]]]]])])]]))]]])))]))])))])]])]]]]])]]])]])])])))))))])))))])))]]]))]))]))]])])))]]])))))])))]))])))]]]])))]))))])])]])]]))])))))]])))]))))]))]]))]))))]]))]))])))]))]])])])]]))])))]))])])]))]))])])]]])))))])]]]]))))]]])])))))]))))))]))))])]))]))])))]]]]]])))))]]))]))]]]]))])])])])])]))]))])])]])))))]])]]))])]]]])])]]])]]])))]))))])])]]]))])]))]))]]))]]])])])]))]))))]))])])]]]]))]))))]))]]])]]]]])])])]))]])])]))]))])]]))]])])))]]])]))))]]]])))])))]])]]]])]]]))]])])))]])]]]]))]]])])))))])])]])]]]])]]]]]))]))]]])]]]]))))])]]]])])])]]])]]]])]]])]]])]])))])]]))))]])]]]))]])])])]]])])])))))])])]])]))]))))]]]))))]))])))))]))]]])))]])]]]])]))]])]]]]]))))))))]])])]]])])]]]]))]]))))]))])]])))]))]])])])])]))])]])]]]]))])])])]])]))]))])])]))]])]))))))])))]])))]]))])]]]])]]]])]))]]))]]])]]])]])]))]]]))])]]))))]]))))])])))])))]]]])]])))]]))]]]))]]])]]]]])]))))))])])))]])]])))])]])]])]]])]]]))]]])]))]])])]]])]]]])))]])]))))))])])]])]))))]))]))]))]])))))))])]]])]))]]]))]])]])])])]]]))]]]]]]])]]]]]]))))])))])))])])]))])))))]])])))))]])])]]]])]]))]]])]]])])]]))]))])]))]]))]]]]]]]))]])])])]]]]]])]]))]]]))))]]))]]])))]])]]]])]]])]]))]))))]])]))]])))]]])])))))])])])))))))))]]]]))])])]])])]]]]])))))])])]]))))]]]]]]]])]))]])])))]]])]]])]))))]])))))]])]]]))]))]])))]])]])]])])])])]])]])))))]])))]))])])])))]))])]]]]]))])))])]))]])]))]]])])]])))])]))]]]]]])])))))))]]]])])]])]])])])]]]])]]]])]])])))]]))]])])]))]])]]]))]))])]]]])]))]]]))])])]])]])]]))]]))))))))])])]]]])]]]))))])]])]))]))]])))))])))))]]]))]))))]])]])])))))])]]]))])))]]))))]))]])]]))]))]]))]]))]))))])]])))])]])]]))]]]])]]]]))]])]]]])))])])))]))))])]]))]])]])))]]]]]]]]))]]])]))))])]]])))]])])))))]]))])]])))]]]]])])]))]))])]]]))]]]))))]]])))])]))])))])))))])]])]))]]])))]])))])]))))))))])]]]]))]))]))]])))))]]]))]]))])]))))]))]]]])))]]]]])]]]])]])]])]]]])))]]))]])))]]))])])])))))]]]))]]))))))])])]])]))])]))])))])))]]))])))]]])])])))]]))))]]])]])])])]))]])])))]))]]))))))])]]]]))]])]]]))])]])])]]))]))]]]])]))]]])])])])])])))]])]])]])])])])]])])))]))]])]))]])])]))]]))]]]]))))))])))]])])))]))))])]]))])]])))]))]))))]]]])]))])]]]))]))]]]])))]]])))])])]))]]])])])]]]]]]]))]]])))))))])]))]]]])]])])]]]))]]))]]]]))))]])]))])])])))]]])]))]]])]])]])]))]))]]))])]]))]))])))]]])))])])))))]])])])]]]))]]))]]))))]]]))]))))]])))]])]))]]))]]))]])])]))]]])]])])]]]])))]])]]]])))))]])]]))]))]])]])))])])])])))]]]]]])))))))])]))])))])))))))])]]]])))])]))])]]])])]]))])])]]])])]))])]])))])))]))]))])))]]])]]]]))))])]]])]])]]])]]]])])]))])])]))])]])]]]]))]])]))]))))))]))]))]))])])))))]]]]))])])]]))]))]))]]]])]]]])]]))]))])]))]]]]))])))])])]])))]))]]))])]])])]]])]]]]))]]]]))))]]]]))]]]]])))])]])]))]]]])])])]]]])])))]]])])]))])]))]))]]))))]]]])]])])))))]]))])])))]])))]))))))))])])]))))]]))])])])])))))])))])))]]]))])))])]]]]]))]))))])]]]])]]]])))]]])]])))])]))])))]])))])))))]))]))]]))])]])])]]])]]])))]]))]))]))])])])]))]))]))]]])))))]]])]]])))]]]]]])))])])]]))))]])]))]))])])))])]))))]])]))))]]))]])]))]])]]]]]])))))]))])]))]]]))))))])])))]])]])]]]]])))))])]])]]])])])))]]]]]]]])])])]]))]])])])))])])]))]])])])]])]]])]))))))])))]))]]]])]]]])]))])])))]))])]]))))])]))]])])))]])])))])))]]])]))])))])))]])))))))]])))))))])]]]]])))]]))))])]]])]))]])]))])])))])]]]))])]]])]])))))])]))])]])])]))]]))])]]]))])]]]])))))]]]))]))])))]])])]])]]))]))])))])])])]))])])]]))]]]]]]))])]]])]]])])])])]))))]]])]))])]))))])]]]))]]))))]])]]])])))])]])]))])]))]]])]))))))]]))])))))]])]]])))])]])])]))))))]]))))])])]]]])]))])]))]]]]])]])]])]))))]]))]]])))))]]))))))]]]])))))]))))]])]))]]]]))])]])))])]]]])]])]])]])]]]))]])])]]])]]))))]))))])))]]))])))))))]])])])])]))))))]]]]))))))])])]]]])]])))))]])])]])]))))]]])]))]])))]])]]]]))]])]]])))]])]]]))]])]]])))))]])])])))]))]]])]]]))]]])))])))]])]]]]))))]))])]]))]]])]]))]]))]])]]]]])]])))])))])]]]]))])]]]))]]]))))]])])]]))]))]))))))])]))]))))])]])]]))]]])))]]]]]))]])]]]])])]]))])))]]]]]]))])]))]]])))])]]])])))])))]]))]]))]))]))]]]]])]])))]])])]))))]])))])))])])]]]))]]]]])]]))]])))))]])]])])]]))])])))]]]]))]])])]]]])]])])))]]))]])])])]])]]]])]]]])])))]]))))))]])])])])]])])]))]]]]]]]]]]])]))]]]]))))])))]])))))])))]]]))]))]]]])])]]))]))))])]])))])]]])])])))]]])]]])))])])]]))]]]]))]]])))]]]))]])])))])]]])]))])]])))]])))))])])]]]]))])]]))]])]]))))])]])))))]])]]])))))]))))]]]]]]))))])]]))]))])))])]])]))))]))]))]]])]]))]]))]]]]))])]))]])])]]])))]])])])]])]])]])])])]]]])]])])])]])]]])]])))))]))]]))])])))))]))]]))))]]))))]))]]]))]))]]])))))]]])]]]])]]))]])]))]))]])]]))]])]])]))]])))])))]])]])]]))]]]))]))])))]])]))))))]))]]]))]]])]]])])])))))]])])])]])]])]))])))]]]))])])]))))])])]]])]))]]))]))]]]])]]]]])]]))])]]]]]])]]))])]]]]]]))))])]]])))]))])])]])]]))))))]]]])]]]]])))]]]])])])]))])]])])])]])]])])]))]])))))])))])]])))]]))])]))))]]]]))]])]))]))]]]))]]])])))]]]])]]]]])]]]])]])])]])])])]])]]]]]))])]))]])]])))]]])))]])))))))])]]]))]))]])))])))]))]))]]]]]]]]]])]]])]]])]))]]]])])]])]])]])]]]]]]])]])])))))]))]))]]))])))]]))]))))))])])))]]))])]]]))]]])]))]]]])])))]]]]])])])]]]])]))]]])]]]]])])]]]]))))))))]))))])))]])])]]))]))])]]))])])])]])]]])]]]]))]))]]))]))))))])]]]]]))]])])]])]))])))])]]])]]]]]))]])])))]])])])))])])))]]]]])]]]]]))]]])])))])]]))]))])]]]]))))])))))]]])]]]))])]]]))])))])]]]))]]]])]]]]]]]]]))))])]])])]]]]])])])))))]]]))]]]]])])]))]])))])))]])]])])])]))))))))]))))]]))]])]))]))])])]]]]])]])])]]))])]]]))))]]))]]]]]]])))]]))]]]]]))])]))))]]))]]]]])]))]))]]))))))])]]))]]]])]])])]]])))]]))])]])])]))))]]]])]])]])))]))])))]))]]]])])))]])]])])])]))))]])))]]))]))))]]))))]])]]))))]]))]]])))))))]])))))]])])]))]])])))))))])])))]])))]))]]]])]))]])]]))))]]]]]))]))])]])))))]]]]]))]]]]]))))))]])]]]]]])))))]]))))))])])]])])))])]])])]])])])]]]]]]]])])))]]])])])))])]]])]]))])])))]]])])])])]))]]))]))])))))))))]))]])]))]]]]]]))]))]))]))]])]]])]])]]]]))]])]]))]])]]]])))])]]))))]]]))]))))]])))]]))))))]]]))]]])]]])]]]]])]]]]]]])]))]]]]])])]]]])]))])]]]))))])]]))))]]]])))])])]))]])])]])])])]])]]])])))]]]]))))))])]]))]])])]]]))]))]]))))]]))))))]]))])])]))))))]]]])]])])]))]]]])]))))))])]])]])]))]])]]]))]))])))])])]]]]]]])]])))]])))))])]]]]])]))]))]])]])])))))])])]))])))])])])])]))))]))])])]))]]))))])))])]]])]]]]])]]))])]))]])]]])]))]))]]))])])])]))]))]]))]]))]]))])]))])])]]))]]]]]]]]]]])))]))]])]]]])]))]))]]]))]]]]]]]))]])])))))))]]]]]]]])))))])))))))]]))))))])]]])])))))]))))))]))]]]]]]]]))]))])]])]]))]]])])))]])]))]]])])]))]])]])]]))))]])))]]]]])]))])))))))]])]))))]]]))]]))]])]))]))])]]]))])]])]])]]))]]]]])])]))))))))]])))]]]]]]])])]])])]))))]))))]))))]]]]]]])]))]]])]]])]]]]))])]]])])))]])))])))])]]]])]]])]]]]))))))]]]]]])])])]))])))]])]])])])))))))))])]))])])])]])])))])])])])]]])])]]]]]]])])]))]]])])])]]]))])])]]])])])))))]]]]))))))]]]))]])]))])))]]]]]))))])))]]]])))]]]))]]]))])]]]])])]])))]])))])]))])))]]]]])]]))]))]]]])]])))]]])]]]])]))]]]]]])]))]]))])]))])]))]))]])]))])]))]])]])))))])]]]]])))])]))))))]]]])])])]])]]))]])]])]]))]]]))])))]]]]))]])])))])]]])))))))]]))))]]]])]]]]]))]]))))]]))])))))))]))))]]])])])]])]))])))))]]]])]]]]])]]))]]]]))]]))))])])]))])]]]))]]))))]))]))]]]])])]]))])]]]))]])]))]])))]))]]))]])))))]])]])])]]]])])))]]]])))])]])))))))))]])))]))]]])]))))])])]]]])])]])])]])]))]]]])))]))])]])])]])))]])])]])])))]]])]]))]))))]])]])])]]])]))]]]]))]))]])]]]]]])]]])])])])]]))])))))]))])))))]]]])]]]]])))])])))]]))]]))]))]))))]])]]))))]])))])))]]))]))))]))))])))))]]]]))])]]))]])]]))])]))]])]]]]])]))))]]]]]]]]])])))))]))])]]]])))]])))]])])])]))])]]]])))])])])]))])]]]]))]]])]])))])))])]])])]]))])]))]))])])])]]]])))]]]])]]))])))))])]]]]]]])])])]]])))])))])]]]))]))))]]))]))]])))]]]])])))))))]]]]]]]]])])))]]]]]]]))])]]]]])]]))])))]]])]))])])]))))])]])]))))]]))))])]]]))]]])]])])]]])))]])])]]]])]]))]]]]]])]]]])])]]]])]]]))])])))])]]]]]]]]]]]])]])])))]))])])]]))]])]))]]])]))])])]))]))]))]]]])])])))]]]]]]))]]])]]]]]))))]))])))]]])])]]]]]]))]])]]])))])])]])))])]]]))))))])))]))]))]])]))]]])])))))])]])))))]])))))])))))]]]])]]))]]]]))])]])])]))])]]])))))])]]]))))])))]))]])]]]])])]]]))))])])]])]))])]))]))]]))]))])])]))))]])])])]]]])]]]]])]))))]))))))]))])]))))]]]]])))])])))))]]]))))))]]]])))]))))])]))))]))]]]))))))])]]])]])))]))])))))])]])])]])]]))]])])])])])]]))]])]))))]])]]])])])))]))]))]]))]]])]))))))]]])])]])])]]])])])]]]]])]))])))))]))))))]])))))]])])]))))]])])])]])])]]]]]]])]))))]]]]])]]))))))]]))]]))]))])]]])])))]]]))])]))])])]]]]))))))))]]))]]])])])])])))]]]]])])]])]])]))])))]))))]))]])]]))]]]]))]]))]]])])])])]]])])))))]]]])])))))]])]]))))]])]))]]))])]))]]]]]])])))]]])))])]))))]]]])]))]]))]])]]]))])]]]]])]]))]]]])))))])))]))))]]]])]]))])]]])]]))]]]]))]]]]))))]]]]])])))]))]])))))]]))]]))]]))]]]))]])]))]))))))))))))])]])]]))])))]]])])]]))))))]])))]])])])]])]))]]))]])])]))))])])))])]))))]])]]]])]])]])))]])])))])]]))))]])))])])])])])]]))]]))]]]))]]))]]]))]])]))))]]))])])]))]))))]]])]))))))]]]]))]]]]]]])])]))))])))]]]])]]]]]])))]])])])]))])))]])]])])])]]]))))])]]])]])])))])))))])))]))))))])]))])]))])]))]))))]])]]]]]))))])]))))]))])])]]))]])])])))]]))]])]])])])]]))))))])]))]])]])])))]]]))))]])])))))]))]])]]))))]]])])]])]]])))]))))]))]]])]))))))]))))]))])])]]]])])])))]])]]]]])]])]))]))))]]])))]]]])]])]))]]])]])))))]]))))]))))])]))]]))]]])]])])]])])])]))))]]]]))]]))))])]))))]))))])]]])])]]))]])])])]))]]]])])])]]]))))))]))))]]]])]]]]))]])]))]]))))]]]))]))])]])))]])])]]])))))]))))])))]))]))]])))))])])))))]]]))]]))))])]]]])])]]]))))]]])])]]]]]))])]))))]))]]]]])))])]]])))]]]]]])])])))])]]])])]))))]]])]))))]]))])]])])))]]))]]]]]]]]])]]))]]]]])])]))])]]])))]))])]))))])))))])]))])]])))]])])))]))]))]]]]])]]]]))]]]))])])]))]])])]]))])]]))))]))]]])))]]))))]])]])])])]]]]]]]])))))]])]])))])])])))))])])]])]]]]]]])]))))))))]]])])]]]]]]]]]])]))))]))))])]))]])])])))]])])])))]]]])))))))]]))])))]))]]))))])])]))))))])]]))])]]])))]])))])]])]))]])]]]]]]]])))))]))))))])]))))]]]]])]])])))])]))))]])]))])])]]])])]]))]))]]]]]]]))])))]])]])]))))])))))]]]]])))))))))]))))]))])]))]])]])))]]])])])])))])])]]))]])))]]]]]))])])]]]])])])]]]]))])]]])]]]))])])]])))]))])]]))])))])])]]])))])]]]])])])]])])]))))))]))))])])))])]])))]))]))))]]]]]))])]]]))))))]])]]]]]))))]]])]]))]])]]]]]))))]]))])]]]))]))))))])]))))])]))))))]))))])])]]]]]]]]]))]]]))]])]))]]))])])]])])]]))]]]])])]]])])))]]])]))))]])]]]))))]])]))))])]])])]]))])]]])))]]])]]])])])]]))]]]))])])]]]])]]]]])])]))]]]])]]])])]))))]]]])))]))]))])])]]])]))]]])))]]))]]]])]))]))])))]])]])])))]]])))))))]]])])))]]])))]]))))])])]]]]]]]]]])]]))])))]))]])])]]]))]]]]]))])])))]]])]])]))])]))))]]]]))))))]))]])))]]])]]]])])))))))))])))])]])]]])))]])))))]]])])))))))]])])]]))]]]]]]))])]))]]]])]]))))]]])]))])]])))])))))])]))]]))])]]])))))])))))])))]]))]]])]]))))]]]])))])]]))]]))))]))))]])]]])]]]])]))])]))])]]])])]))]]])]]))]])]]]]])]]])])])))])]))]))])]]))))])))]]])])]]]]))]]))])])))]]))))]))]])]))]]]]))])]))])]))))])])))))))))]])])]])))]))])])))]))]]))))])])))))))))))))]]))]]))))]]]))]]]]])]]))]]))])])])])])])]]])]))]]])]]])])]]])]]))])]])]]])]))]))]])))]]]]]))))]]]]]]])]]])]]]]])]]]))))]])]])]]]])]])]))])])]))))))]]]))])])]]])])]]]])))]))]))]))])]]])))]]]]]])])])])])]))))])])])]]))))))])])]])]]]))]]]])]])])]])))]]]))]])))]])]])]]))])])]])])]))))])]]])))))]]))]]))))]))]))))]])]))]))))]])]))])])]]]])))])]]]))])))]])))]]]]))))]]))))))]))]))))))]]))]]))]])]]]))))])]))]]))))]])])]))])))))])])]))]))]])))]]])))))]])]]]))))))))]]))])))]])))]]))))))])])]]]))))]])]))]])]))])])])])]))]])))]])])))])]]]]]))]]])]]]]]])))]))]])]]))]))]]]]))))))]))]])]])])))))])])])))])])]]]))]]]])]]])]])])]))]))])])]]]))])]]))]])]))])]]])]]]]]))])]])]]))]))]))]])])])))])]))))]])))))])))))]]))))]]]))))))]])))]]])]))]])]]])]]])]]]]]))])))]])]]])]))])))]))))])))]]]])]))))])))))])))))))]))))]]]])]])]))]])))]])])]]]]]])]])))]))])])]])])])]))]))])]]]]])])]))]])])]))]])])])]]))]])))])])))])]))]]]]]]])])])))))))]]]]]))]]]))])])])]]))]))])])]))]])]]))]]]]]]]]]])])])]))]])])))))))))]]]])]]])]))]])]))))))))))]]])])))])))]]]))))]))]]]])]])]))]))]])))]]]]])]))])))))]]])]]])))))]])]]]])]])))])]])]]))))))))])]])))]))]]]])]])]]))))]))])]]])]]))))])))]))]]])]]]))]]])]])]])]))]))))])]]]]]])]))))])])))])])))])])))))]]])]])))]])]]])))]])]])])]))]]))]]]]])]])]]]))])]]])])])])]])])]))))]]))]))))]))])))))]]]]])])])]])))]])]])])]]]])])]]))])]]]))]))))])))))])]]])])]]))]])))])])))]]]])))))]])]]]]]]]]])]]))]])])))]])]))))))))]])]]))])]))]]])))))))])])]])]))))]])])]]))))]))])])])))]]]]]]]]])]))]])))))]]]])])))]]]])])])))]]]))))))]]])]]))]))])])]]]]]))))))])])]])]]]])]))]]]]]])])])]])]])]]])])]))]))]]])]])])])]])])]]])]]])]))])]]])))])]]))]]]]))]]))])])]]])])]]))))))]))))])])])]]))]])])))]]]))])]]]))]]]])]]]])]])))])])])))))])])])))])]])))))]]]))]]]]))]])])])])]]])]]]])]])))]))]]])]))]]))]])))]]]]])]]]]))))])]))]))]]))])]])))]))]])))))])]]))])]))))])]])])]])])]])))])])]]))]))]]]]))))]))))))]])))]))]]]])])]))]]])])]])]]])]]])])]]]])]])]))])]])]])]])]]))])])]])]]]))])])]])]])))]]])]]))]]))])]])]))]]))]])]]])))]))]]]]])))))]))]])]])))]]]]]]))])))])]))]]]])]]))])]))])]])]]))]]))]))])]]])]]]]))])))))]))])]))]]))])])]]]))])]])])])]]])]]])))]])])))))])])]]))))])))])]]]))]]]]])])])]]]]])]))]])])]]])])]]]))]))]]]))]]]])])]))]])]))])])]))))])])]])))))))))))]]))))]]]))))]]]]]]]]])]]]]]]])))]])])))]))]])]])])))]))])])))]])])]]])])]])])]]]])]]])]]]))]]]))]))]]))))]))])))]])))]])])))])])])]))]])))])]]])])])]]]]]]]]]))]]]))))]])))))]]]))]])]]))]))))))])]]))))))]]]])])])))))]]])))]))]))])]]))]])])))]))]))))])]]])]])))]))]))]])]]])])]]]])]))))]))))))]])]]])]]))]]]])))]))])]]])]])])))]))])])])])])])]])))]])]]))])))))])]]))]]]]]])]]]]))))])))])))])))]])])))))]])))))]])]]))])]]))])]]])]))]]))))])])]]])])))])]]]]]]]]]]))]]])))])]])))]]))])]])))])]))))]]])]])])]))))])]]])]))]])]))])))))]))))]))]])]]]]])]]]]))])])))])])]]))))])])])))))]]]])]]]]]]))))]))])])))])]]]])]]])))))])))))]))]]))]))))]))]]])]))]]]]))))]))])]]))))])))]))]]])]]])]))]]]))))])]])))]))])])])])]])])]]]])]]]]]]))]]]])])]]]])]]])]]))])]]]]]]]]))])))])]]])]]))))])]]]))]])]]))))))]))])))))])]])])))]]))]]])])])))]))]]]]]])]]])]]])]))])]]]])]))))]]]])]))]]]])]]))))]])])]))))]]])]])])]]]])])]]]])))])]])])]))))]]])))))])))])]))))))])))))))]]]))]])))]))]))]]])])]])]]]])])]])]])]])]]]))]))))]))))]))))]]])]))))]]]))])))))]])]])))]]]]]])]))))])])]]]]]])))]))])]))]]]]])]]]])])])])))]]])]])]])]])))]]]]])]])]]])]]))]])])]]])))]])))))]]])]]))]))))])]))))]]])))))))]))]])]]])])]))))))]))])]))))))]))))])]]]])))])]])])]]))])]])])))])]]])]])])])]])])])])])))]])))))]])])]])]])]]))]]])]))])]])))]))))))]]])]]))])]]]])]]))]]))]])]]]]))]]]))])]]]])]])))])]]]))]])])]]))))]]]])]])))]]]))]]]]]])]])]]]))])]))]]])])))]]]]))])]))])])])))]])))))))])]]]])))]])))]])]]]))]])]]]]]])])))]]]])]]]])]])))]])]]]))])])]])]]]))]]))]])]))]])])]]]]]]]]])])))))])])))]))])))]]])]]]])])])])]]))]]]]]))]]])])]]])]])])]])])]]]]])]]]]]))))))]])])])]]]))]))]]))]])])))))])])]]))))])))))]])]]))]]]])]])]]]))))])))])))]]]])])))])]))]))])])])]])]))]]]))))]]])])]]])]]))))])])]]]]])))]])))]))]))]]]]])]])])])]])]])]]])))]]])]))]])))]))))]])]]]]]]])]]]])]))))])]])]))))))]])]]))])]])))))]]))))]])])]))]]])))))])]])]))))]))])))]))))]]))))))])))]])]])]]]))]]))])]))]]])])])])]]))]))]])]]]])])]]])]]])]]))]]))]])]])]]]])]))]]))]]])])]]])])))))])])]]])]])))))]]]])]])]])]]])])))]])])]]]]]])]])])))]]]]))])])))])))))]]))]]]])))]]]))))]])))))))]))]]]]]))])))])]]))))]])]))]]]))])])))])])]])))])))))]])))]]]]]])])])))])))]]])])]]))])]))))]])]]))))))]]])]]])]]])])))]))]])]]]))]))])]]]]))]]))])))))])]]]])]]]])))])))]]]]]]]])]))))]]]])]])])]])))]))])]]))))])])))]])])])]]])]))]]]]]])]])]]))]]]]])]))))])]]))))])]]))))]]]))))]))])))))]))])])]]]))))]))]]))]]))]))))]]]]]))]]])])))]))))])]]))))]))])])))])])])])])])])]]]))))]]]])]]))])])]]]))]])))]]])]])]]])])))])]]))]]]))]]]])])))])])))]]]])]])))]]]])]]))])]]]))])]]))])]]]]])))]]))]])))])])))]]]]))])])]]])]]]])]])])))]])]]])))]]])]]]])]])))])))))]]])))])]))]))))]))]))))))])))]]]])))))]]]]])]])]]]]]])]])]]])])]])))]]]]))))]]])])]])]))])]))]]])))))]]))]]]]))])]]]))]))]]]])]])]]])])]))]]]]])]))]])]]]])))]))]])]])))])])])]]]]))]])]]))]))]])])))]]]]]]])))))])]]]]])))])])]]])]]))]])))])]))))])])]]])))))])))]))]]]]))]]))]])]]]])]])]]]])]]]))])])]))])))]]])]]])])))])]]))]))])]))]])]))])))))])]]]]])]))]])]]))]])])]]])))))]))]]]]))]])]])))]]))]]])])])])))])])]])))]))])]]]]])))]))))]])))))))])))]]])])])]]))))])])))))]])))]))]]]]])]])])])]))]))))))]])]))]])))]]])]]]])])]))])]]]]]])]]])]]]]]))])]])]))]))]])])]]))]]))])))]))]])]]])])]])]]))))])]]])]))]]))]]]]]]]]]))))])]]))]]])]]))])))))]))]])]])]]]))))])])))])))]]))])]]]]]]]))]))]]]]))])]]]]]]]])]])]]]])])))]]]]]]])]]]]]))))]])]))]])]))))))]))]))])])]]]))]]])])]))))]]]]])])]]]])]]]])]]))])]))))]])))]))])])]))]))]])]]]]]]]])]))]))])]]]))))))])))]))])))))])))]])])))])]])]]])]])]]])))]]]))]]]]]])]]]))])))))]))))]))]]))]]))))]]])))]])])])]]))))))])]))))]))]])])))])]]])))])]])])]])))]])))]])])]]))]]]))]]))])]]])]))]]]]]]))))]]))]]))]]]])])])]))])]))))]]]]))])))])])])]])))))]])))]])]])))]]))]])])]]]))]])])))]]])]]]])])))))])))))]))))))))]])]]])))))])]])))]))))]]]]]]]])])])]))]]))])])])])]))))))]])))])]])))]))]))]])])]]))])]))]]]]]))])]))])])]])])]])]]))]))])]))]]]]]]]])))]]]))]))]]])))))]]]]])])))]]]]]])))])))])])]]])))]]))]))]]))]))]))])]]]]))]]]]]]])]])))]))])]]))))]]))])]]]])))]]]))])])])]])))])]]])]]))]])]]])]]]))]]])))]]]))])]]]])]]))]]]))]])]]))])]]])]]])]))]))))])]))]))]]))))])))])]])])]))))]])))]]]))]]]))])])])]])))))])))]))]]])]]])))]])]])]]]])]])))] ((([[[[(([[([[([(([(((((([(([([([[[([([(((((([([((([(([((([([[(([[[([((([[([(([([[(([([((([((([(([[((((([([[([[([((((([[[([(([[[[([((([[[([(([((([(((([([(([(([(([((([[[[([([(((([([([(([(([[[((([[[([([(([[[[([[(([[[([[([[([(([[([([[[([[[[(((([([[[([([(([([[(([[[[(((([[([([[[([[(((([(((([[([[([(([([[[(([([[[((([((((([[[(([[(([[[[([((([[(([([[([[([[([(([([(([(([[((([(([([([[([[[(((((([[[[([[[[[((([[((((([[[(([[[([([(([[((([[([[[[([[[((((([(([[([[(([[[((([[[([(([[[[(([(([([[[(([[(([[[[[(((([[([[[([(([([([[[([(([[(([[[[(([([[(([(((([[([[(([[(((([(([[([(((([[[[[([([[([[([[[[(([[[([(([[[[[([[[[((((((([[[[[([[([[([([[[(([[([[[[([([[[[[[[([(([[([(([(([[[([[([([[[[[(([((([([[[(([[[[[(([([[((((([[[[[([[[([[[([((([(([[([[([([[[[([([([(([[[[[[([(([[([((([[[((([[[[[[(([[[[[([(([([[(([(((([[[[[[([[(([(([[([([[[[[[[[[[[[[[[(([([[(((([[([[(([((([([[([([[[((([[[[[(((([[([[[([([([[[([([[[(([((([(([[(((((([([[(([([[[[[(([(([([(([[([[([[[(([[([((([[(([[[[[[([[[[[(((([((([([[((((((([[((([([(([[(((([([(([[(([[[[[[[[([[[(([[([([([[(([[[[[(((([[([(([[([([([[((((((([[[[((([[((([[((([[[[[(([([[[[[([[[([[[((([[(([[(((([(([[([[([([[([(([[[[[((((([[[((([[([[([([[[([(((([([[(([[([([([[(([[[([[(([(([([[[[((([[(([([[([[([[[[[([[([([[[[[(((([[((((([([([[(([(((([([([[(([((((((([([[[((([[[(([([[(((([([(((([([[([([[[[[[[([([([([[[[[([[((([(([(([([([(([([[[([((([[([([(([([[([[[(((([[((([((((([[[(([[[[[[((([([[([[[(([[[[[(([[[(([([([[[[(((([[((([[([((([(([[[[[[[[([[((((((([[([[[([([((([((((((([[[[(([([(((([[(([(([[(([[[(((((([[(([(([(([((((([([[([[[[(([[([[[[([([[((((([([[([([[[[[(([[([([(([([[([[((((((((([[([[[[[(([(([((((((([[[(([[[[(((([[(([(((((((([([([[([[[(([((((([[[([[([[((([([[[[[[(([((([[[([[([(([[[[[[[[[[(([[([[[([(([[[([((([[[[[[[([([[[[[([[[([[(((([[(([[(([([[((([[([(((([[[[[[[((([([[[([([[[[[((((([[([[[[[[[(([(([[([(([[((((([[[([([[((([(([((([([(([[([(([[(((([((([([[([([[([([([(([[(([[(((([[[((([[[[[[([[(([[[([[[[[([[[(([([[[(([[[(((([[[[([[([[(((([([([(([[[([[[([[[[(((([[(([((((([(([[[[[[((([(([((([[[[[(([[([(((([[[[([[([([[[([((((([[[[([([((([[(([[[[(([[[[(([((([([([([(([(((((([[[[(([[(((([[[[((([[([[(([[([[[[[([[[([[([[[(((((((((([((((([[[([[((([[[([(((([[([[([[[[([[[([[[((([[[([[[[([(([([(([[[(([((([([[[(((([[[[([[([[[[([[[[[[((([[[([(([(([[(([((([[([[([[(((([[[[[(([([([(([[([[[(([(((([[([[(([[([((((([[[[[[((([([(([[[((([(([[[[(([([([[[[([(([([[([[[[(([[[((([[([[[([[[(((((([(([[[[[(([[[[[[[(([[([[(([[(([([[(((([([[([(([((((([(([([(((([(([[[[[[[(([(([[[([[[[[[([[[([[([[([[([[[(([(([[([[[[[[[([[([(([[(((([[(([[((([[((((([[[((((([[([[((([(([(([((([[[((([[[(((([(([((([[[(([([[(([[[([[([[[[[[([((((([((([(([[[((([[([(([[([(([[((([([([([[[([[(([((((((([[[[((((((([((([[(([([[([[[[([(([([(((((((([(((([((([([[([(([[((([[[([(([(([[[([([[([[[[[[([([([([[(([([(((((([([[[[([[((([([[((([((([[(([[((([([[[([([[(([(([([[(([([(((([(([[[[(([([[([([([[(([[([([[[((([([[(([(([((([([[((([[([[((((([(([([[([(([([([([([(((((((([(((([(([[(((([[[([((([[((([([[([[([(([[[([(([[(((([[([[[[[[[((((([[([(((((([((([([((([[[(((([[([(((([[(([[[[([([([((((([(([[([[[[((([([((([[[([[(([([(([(([([[[[(([[[([([[[(([[[[(([([(([((((([[([(((((([((((([([([[[[((((([[(([((([[[((([[[[([[(([[((([(([([[(([[([([((([[(([(([([([([[[[((((([[[[[[[[([[([[[[([[([([[(([[[([[[(([[[(([(([([((((([((([([([[([[([(((([((((([([[[([[[([[([([[[([((((((([[[([(([((([((([([((((([[([([([(([[([((([([([((([((((([[[[([([(([((([(([([[[[(([([(([(([((([([[[(((([((([[[[[[[[([[[[([([(([([([[(([(([([[([[[(([(([(([(([[(([(((([[[[[([[[[[(((([[([[[(((([(((([[[[(([[[[([([[(([((([[[[[(([[([[[[((((((((((([([([([([([(([([([[[[([([([[([([[[[[(((([([(([[([[(([[[((([[(([[[[(([((((([(([[(((((((([[[([(([([[((([[[[[(([[[[([[((((([[[(([[(([[[([[(([[(([([[([(([[[[(((([([(([((([[([([([([(([([((([[(([[[([[([((((([[[[[[(((([([[[[[[[[[((([((([(([[([[[[[[[(([[([[[([[([([([[[[[[(((([([([[[[[[([[[[([(([(([([[[[((([[[[(([[(([([(([[[([([(([[([[[[[(([[[[[[[([[[(([([[([((([([((([((([([[([[[(([(([[[(([[(([[((([[(([[[[[([([(([[((([[[[[([([(((([[[([((([[[[([[[([([((((([[([((([[([[(([[([[[[((([([((([(((([[([([[((([(([(([[[((([((([[[[([[(([[[([[[([([[((([[(([[([(([([[[((([(([[[[([[[([(([([[(([[[[((([([([((([[[([[[[[([[((([[[[[[([(((([[([[[([(((((([([([[[[[[[(([[[((((([[([[(((((((((((([(([([([([[([((([(([[[[[([([(([[([[((((([[([([[[[([[([[[([[([[[[((((([(([(((([[([(([[([((([[[[([(([([([[[([[[[(([[[[[[((((([([([[[[(([[[[[([[([([[[[[((([[[[(([([(((((([(([(((([[((([[[[[[(([([([[[[[[[((([[(([(((((([([[[(([[[[[(([[[((((([[[[[[[(([(([[[([[(((([(((([[[[([[[[([[([([([(((([[[[([(((((((([([[[[([([((([(((([([(([(([(([([([((([(([[([((([[([([(([([[([([[[[[[([[((([[((([[[(((([([[[([(([[[[[[(([[(((([[([([[(([([[([[(([[((([[([([([[[[(([([([([([[(([([[[([[[(([(([([((((((((([[[([([([([(([(([[([[(((([[[[[[([([[([[[[[(([(([[(((([[[((([((([[[[([([[[(((([(([[([([(([(([[([[[((([[[(((((([[([[([[((([((([(([((((([[(([([((([[([[([[[[[[(((([[([(((((([[[[(([[((((((([[(([[(([[[(([[[[[([([((((((([[([[([[([([(((([([(([([[(([(((([([[[[([([[[(([[[(((((((([(([([[([[([[(([[[[[([[[(((([[[([([[[(([[([[(([([(((([[[([[[(([[[((([[([(((([([[([[([[[([((((([[[([[[[[[[[[[([[([[((([([[[((([([([[(([([[([[([(((([(((((([[([((((([[[[[([[[(((([[[([([[[[[[[([([(([[([(([[[[[(([[[([(([((((((([([[[(((([[[(([([[[[((([[[([[[([[(([[[(([([[[(([[[(([(([([[[[(([((([([((([[[([((([[((([[[[[([(([([([([(([[[([([(((([[(([(((([[([([[((([([[[([(([(([[([[([([[[[[[[[(([[((((([[([([((((([[[([(([[([([[((((([([[[[[(([(((([((([[([[[((([([[[[[[(([((([([[([(((([[[[[((([([[([[[((([(([[[[[[[(((((([([([[[[([([[(([(([[[[[(([[((([((((([[((([[[[[((([((([[([(([[(([[[(([[(([[[(((((([((([[[((([(((([((([((([[(((([(([(([[[(((([[([[[[((([[[[([((([[([(([(([([([[([[[[(([[[[[[[([[[(([([([[((([([([((([[[[([[(([((([[([(([[[[[(((([(([[([[[[[([([[[[([[([(([(((([([([[([[[(([[([[[[([[[(([(([(([([(([[[((([([([[[([(([(([[([[([[[[[[([(((([((((((([[((([((([[[[[([((([([((([[(([(([([([[[[[([(([([([((((((((((([[([([[([[[[([((([[[[[[(((((([([(([((((([[[[[[(([[[[((((([[(((([(([(((([(((([[[[[([[[[([[([[[[([[([[[[([[([(([[((([[[(([([[[([(([([[([([[[[[[[([[([((((([([([[[(((((((([([[(([((([([[([([[[[[(([([([[[([([(([(([(([([([[(([([([[[([[[((((((([([[([([[[(((([[[([[[((([[[([([(((([((((((((([[[[(([([(([(((([(((([[(((((((([[([([[([[[[[[[[(([(([([[((([[(([[([(([([((([([[[([[([([([[(([[([(((([[[([[([[[[[[([[[([([[[([((([([(([([[[((([(([[([(((([([([(([(([[[(((((([[([(([([[[[(([(([[[[[[[(([([(([([[[[((([([[[([([[[(([([([(([([([[[((([(([([[[([([(([[[[[[(([[[[[[[(((([(((((([[(([(([[[([((((([[([(([(([(((((((([[[([([[[[(([([([((((((((([[([((([([[([(([((([[([(([[(((((([((((([([(([((([([((([([[[[(([(([[[[((((([([[[[[([(([(((([[[([[((((([([((([(((([[([[([[[[[(((([[([(([(([([(([([([([[([([(([([[([((((([([[(([[((([([([([[(([([([[((([[(([[(([[[([(([[(([([([([([[([([[[[[[((([(([([(((([[[([[([(((((([((([[([[(((([([([[[([(((([(([(([(((([([(((([[([[[(([([[[[[[[(((([([[([[(([[([[([([[((([(((([((([([((((((((([(([[[([([((([(((([[(((((((([[((([([(([([([[[[[([[[[(((([([[(([([[([[[[[[[((([[[[[[[(([[(([[([[(((([[[(([([(((((([[[(([[[([[[[([[[((([([[[[(([[([[[((([(([[(([([[(([[[([[[[([((([(([(([[[[(((([(([([[([[(((([[((([((((([[(([((((([[(([(([[((([([([[([[(([[([[(([[((([[([([(([[[(([((((([[([(([([([[[([[[[(([[[(([[[(([([[(([[((([([[[((([([[(([[(((([[[(((((([([[[[(((((([[(([[([[([[[[([(([[(([([([[([([([((([[([((((((([([((((([((([[[(([[[[[([[[((((((([((([((([([[(([[[((([([[((((((([([[[(([[[(([[(([[[[[[[([[((([[[(([[(([([[(((([[(([((([[(([([(((([[[[((([([[([(((([[(([[[[[(([([[([([([[([[[[(((([([([([[[([[[[([[[[(([(([([([[([[([[[[[[[((([(([[[[([(([[[([[([[[([(((([(([[(([[[[([(([(((([[[[([([((((([[[(([[([[(((((([[([([[[[[([[[[([(([[([([(((([[((([[[(([([([([[(([[([[(([[([([([((((([[(([(([([[[(([[[[([[(([((([([((((([([(([([[((([([(([[([[(((([([(([([[([((([[[[[([([[[[((([[[(([((([[[[([([[[[([[(((([([([(([[[(([((([[([[(([([[[[((([(([[(([[[[[([(([((([[((([[[[[([[(([(([(([[[[(([((([(([[([(([[((((([[[[([[((((([(((([[[[[([([[([([([(([[[[(((([(((([[[(((((([[[[[([[([([[[[[[[([([[([([[(([[(((([([(([(([[([([(([[[([[[([(([(((([([[[[((([((([[[([((([(([[[[((([(([([(((((([[[(([[((([((([[[[(([(([[(([[[[([([[[[([([([([(([(([([([([((((([[[[(([[([([[([[(([([([[[(([[[[[(([((([([([((([([((([[[(([[([([[[[[([[([[[((((([(([[([[[([(([[[[([[([[[[[(([[([[[[(([[[((([([([[[(([([([[(([(([((([[([((([(((((([[[[(([[[[[(([([([[[((([[[[[(([([([[(([[[([[[[[[(([[((([[[([((((([[[([[(([(([(([[([([[[[((([[[(([([[((((([(((((([((((([[[((([([([(([(([([[[[[[[[[[(([([[([(((([(((([[(((([[[[(([[([([(([(([[[((([[((([((([[[(((((([((([[(([(([[[[[[([[([[[[(([([([([[[([([(([([[[[[[[[[(([((((((([[[([[[([[(([[[((([([((([([([[([([((([(((([[[([([([([(((([([[([[[[[([[((([[([[[[([[[([([(((((((([([([((([([[(((([(([([([([[([(([[(([[[(([[[([[((([([[(([((([([[(((([([[(((([[[[([[[([(((([(([([([([[([[[(((([[(([[[[([[([[(([([[(([[[(([[([[((([[(((([(([([[((((([[[[[[[([(([([[([[[([[(((([[[[[[(([([[(([[((([[[[[[([([[[([[(([[(([[([[([[((([[([[[(((([(([((([(([[[[(((([(([([(([([[[([[[[[[([([[[[(((([([[([([([[((([([([((([([((((([[(([[([([[[[[([((((([(([[([[(((((([(([([([[[(([([([[[[[([[(((((([[[[[([(([[[[[[[(([(([([[((([(([[[(([[[(([([([((([[[(([[[([((([[([[([([([([(([(([([[([[[[((((((([[([[(((((([((([[(((([(([[([([((([[[[[([[((([[([[[[[[[[([[([[(((([((([[[[((([([[[[((([[[[[[(([((([((((([([(((([(([(([[(([([(([([([([(([[[[[([[[([([[([[(([[[[(([(([[[[[[([[[[[[[[([(([([([[[[[[[[[(((([[(([(((([(([([(([(([([[([([[[(((((([(([[([[[[([([([[[([[[([[(([[[(([[[((([[[([[([((([[(([([[[[[[([([[[[(([(([(([[[([(([[([([([[[(([[[[([([([[((([[((([(([[[(([([[[((([([([([([([([[([[([[((([[[[([([(([[[([([((((([([([[[[(([[([[(((((([[[[[[[(([[[[(([[([([([(([[(((((([[(([([[(([[((([([(([([([[[[[([([[((((([[[[[[[([(([[([[[[(([[[[[(([[[([((((((([([([[[(([((([[[[[[([([(([(([(((((([([([([[[(([(([(([[([((((([([([(([[[([(([[((([([(((([([((([[(((([(([([[([[[[([[([([[[((([((([([[[[([[[(([[[[(([[[[([([(([[([([([([[[[[[([[[(((([((((((([[[((([[[([(([[(([[(([([([([[(([([(([((([[([[(([(([([(([([(([[[[[((((([[([[[[[((((([[[(((([([[(([[(([(([[((([((([[[[[((([[(([[[([([((([([[([[[[[(((([[[[[[[[[[[([[[[[[((((([[[(([[([[[([([([[[[[[[([[[[([[[(([(([[[(((([((([[((([[([[[(([[([([[(((([[(((([((((([[[(((([[([[([(([[[((([(([([[[([[[[[[([((((([([[[([([[[[(([(([([[([[((([[[[[([[[([([[(([[[[(((([[(((([([([[[[[[[[[((([([([[[[[([[[[[[(([[([([[([[[[(([[(((([[[[[[([([((((([[[[[[[((((([[[(([(([[[[((([(([[[(([(([(([[([(([(([[([[[((((([[((([[[[[([([([([((([((([[[[[[([[[([(((([[(((([[((((([(((([([[[([[((([[[([[[[[(([([[(([([[(([((((([[[[[(((((([([[[[[[[([([[((([[[[[([[[((([[[[(((([[(([[[([(([[([[([[[(((([[[[[[[[[((((([[[[[[([[(([([([[(((([(([[[[(([[(([[([[[(([([([[[(([[([(((((((([[[[[([[(([[(([((((((((([(([[([([(((((([[[[([([[[[[[[(([[([[((((([[[(([[[[[([(([([[((([(((((((([[([[[[([([[[(((([(((([[[([[[([([(([[[((([[([[([([[([[[[([((([[(([[[([(((([[[(((([([[((([(((((([[[[(((([[(([([[[[(((([(([[[([((([[([(([[[[([[((([(([([(([[[[[[[[([[[(((([[[[[(([[([[([[[([[[([[[[([([[([[([([(((([([[([([([[([[[(([[[([[[(([((([([((([([[(([[([([[[[[[[((([[((((((([[[[[(([(([([(([[(([([([(([[[([[[((([[([[[([[[(([[[([[([[[([([([[(((([[[([[(([((([[[((([([([([[([[(([([([[[([[([(([(([(([[[[([(([([((([[([[[(([[((([[((([((([(([[[[(([([[[[([[([[[[[(([(([[[[((((([[[[(([(([([[[[([[([([([([[[(([([((([[[[[([(([[[((((([[(([[([((([[[(([[[[[(([([[[[([([(([[(([[[([([[((((([[[([(([[(([[[([[[[[(([[[[([[(([(([[([(([([([[[[([(([[([([[([(([([([[[[(([[(((([([([[((((([([([([([((([(([([[(([[(([[([(([[[[(([[([([([([([([[((([(([(([((([[[[(([[(([[([[([([([[[(((([[([(([[[[(([((([([[[(([[((([[[[[[[[[[(((([[[[([[([[([(([[((([[([(([[[([[(([[[([[[([(([([([(([[((([[([((([[[[[[[[[[(([(([[[([(([[[(([([[[[[[(([[[[[[(([((([[([(([((([(([[([[([(([[[[([[((([([((((([[[([([([[[[[(([(((([[(([[([[[[(([(([([[([([(((([[[[[(([([(((([([([[[([(([([([[(((([[((([([[([[[((((((([[(([(((([([[((([[(([(([[(((([[[[(([([[[[[(([([([([([([[((([[[[[[[[[([[[[[(([[[[[[([[[[[[[[[[([(([[(([(([([[[[[(([((([(((((([[[([(([[((((([(([(([[(([([([[(([(([[((([(([[[([[[[([[[[[[([[[[[[([[[[([(([[[[[([((([(([((([[[((((([[[[([[[[[[[[((([(([([[[([[[[[[[((([[[[[[([[(((([[((([(([[[([[([([[[((([([[[((((([[[(([([[(([([[(([[[(([(([[[(([([[([[([[((((((((([([([[([[[[[(([([(((([([(([[[[[([([([[((([[[(([[[[[[[((([[[[([[[[[[((([[[[(([([([[([(([([[[[([[([[(([([[[([[([([[[[([[(([[[([([(((([(([[([(((([([(([[([[(([(([(((([[[([[[[(((((([[([[[[(([[[[[([[((([(([[[([([[(((([[([((([([[([([[[((([[[([(([(([([((([[(([[[([[[[[(([([(((([[[([(([[[([(([([[[((([[([(((([[(([(([(([[[(([[((((((([([[(((([[[(((([([[(([(([[([([(([[([[((([[(([[([[[[[((([([([[[[[([([[(([[[[([[[[[[[[([(([((([([[[[[[[[[[[([(([(((([(([((([[[[[(([(([[([[[((([[[(([[[[([[([([[[[[(([[((([[[(([([[(([(([[([[(([(([(([([[[([([[([[([(([(([[[[[(([[[[([([([[(((((([[([([[[((([([([([[((((([(([([[[[([([((([[[[[[([(((((([(([((((([(([([([(([[([([[[[[[([[[([[(([([(([(([((([[((([[(([[[[[((([[(([(([([[[[([[(([([((([[[(([[[([[(([[[[(([(([([([[[((((((([(([[([[[([[([(([((([([((([[[(([([(([((([[[([([[[[((([[(((([([[[([(([[(((((([(([[([[[([[([[([(([([[(([[(((([[([((((([(([([((([[[([([[[([[([[[[([([([[((([(([[[([[[([[([(([([[(([[(([([[([((([[(([(([([[[[[(((([(([(([[(([[[(([(([[([[[([((([[([((([[[([[([[[[[[[([[[[[((([((([[(([([([[[[[(([((([([(([(([[[[(([[([([[((([(([([[[(([(([[(([([[(([[[[((((((([(([[[([[[[[([([((([[(([[((([([([(((([[[[[[[([([[(((([[(([(([([[(([([[[[[[([((([[[([((((((([([(([[((([[((((([(((([[([[[(([[[[[([([([[[[[((((((((((([(([(([[((((((([([([[(([((([[[[[[[[([([([([[((((((([([[[(([[((([(([(([[[[[((([[([([[([[[(([[([([(((([[((((([[([(((([[[(((((([([((([([(([[[(((([((([[((((((([[([([([([([([[[[(([[([(([[([([[([[([(([([(((((((([((([[([[[(([(([([([[(([[[((((([(([([([[([(((([(([[([([([[((([((((([([[[((([([([([(([(((([((((((((([[[([[((([((((([([[([[([([((([(([([(([[[[([([[([[[([([([[([[[[[([[[[[((([[[([([((((([[([(((([[[[[([[([[[[[[((([[[[[[((([[[(([[(([[([([[(((([(([[((([((([((([((([[(([[[[[[([((([[([[[([(((((([([[([[[(([([[(([(((([(((((([[(((([(((([([[[[((([[[[[[[(([([[(([((([[(([(((([[(((([[((([[[((([(([([([[(((([((((([[[[(([(([[([(([[([(([([(((((((([[(([[[[[[[[(([([([[(([[[[([[([[[([[[((([(([[[[[[[([(([[((([[(([[[([[((([([[(([(((([([(([([([([[([([[[[[[((([[[[(((([([([((((([[[([[[[[[[(([([([((([[[([([((([[[([[[[[[[([[[[([[[([[[[[((([([[([[([[((([([[[[[((([(([(([((([[([([[[[[(([[[[(([[[([[(((([(([[[[(((((([([([[[((((([([([([([[[((([[([[([[[((([[[[[([[[((([[([[([[[[[(((((([(([[(([(([((([[((([([((([[[([(((([[[(([(((([([[([((((([(([(([((((([([(([[((((([([[[(([[[([[((((([((([(((([(([[((([([[(((([([([[[([[[([[(((([([[[([([([[([[([(([[[[((([((([([[[([[[[[[[([[[[([([[(([[[[([(([[([[([[[[([[[([[((([([[[([(((((([[[([[[([(([[([([([([[((([([([(([([[((([([((([(([[((([((([([([[[[[[[(([([(([[[[[((([[[[([[(([(([((([(((([[([([([([[[((([([[([(([[[(([(([([[[(([[(([[[[((([((([[([[([[[([[[[[[[[([[[((([(([(((([[(([(([[[([[(((((((([[([((([[[([(([((([(([[([[[((([(((((([[(([((((([[[[(([[[((((((([[([((([[(([(((((([[([([[[[(((([[[(((([[(([[([[[[[[[[[[[[[[[[([[([([([[([[([([[((([([(((((([[([([[(([((([[[[([([[([((([[([((((([(([[(([[[([((([([[([(([[([([(([(((((((((([((((([[[[(([([((([([(((([[[[([(([[[[[[[[[([(([([([[([[(([([(([(([[[[(([([[([(([[[(((([([[[[(((([[[[([(([([([[((((([(([([(([[[[(([[[[[[[([[([[[([(([[([[(((([[[([([[[(((([((([(([([(([(([[([((((((((((([[([((([([(([([[(((([[(([(([[[[[[[([[[[((([([[([([[(([([[[(([([[((((([[[(((([[([((([[([(([(([([[([([[([([([[[[[[[[([([[((([[[([[[(([[([[([[(([((([[[((([[([(((([([[([([([([[[(((([[[[[[[(((((([[([[(((([[(([([[(([([(([[([[([([([[([[[[[([[([[[([([[[[(((([([(((([(([[[[([([[[[[[(([[([[(([((((((((([(([([[[[((([(([[(([([[[[(((([[[([[[((((([(([[[[[([[([[(([[(((([([(([[([[(([[[[(([[[[(((([([[([((([((([[([((((([([[[[([[[[[([(([[((([[[((([([(([[[[(([[[[(([[[((([[[[(([[((([[(([[[[[[[[[[[((((((((([[[([(([([([[(([[((([([[[([([(([[[(([(([[[([([([[[[(([([(([[(((([[[([[[[[(([[(([((([(([[[([[[[([((((([(((([([[[([([[(((([[[[([[[[[[([([[([[([[([[(((([(([([[[[[(([((([([[[([[[([[(([([([(([([([([[[[[[(((([([[([([[[[[[([[[(([[(([[(([[(([[([[([[[[[([[([[[[[[([[[[[(([[([([([(([([((([([((([([(([[([(([[(([[[(([([([[(([((([(([[[[(([[([[[[[(((([([[(((([([(((([([[[((([([(([[([[([[([[(([[([([[[(((([[[([[[((([[([(([([([([(([([([([[([[[((((((([(([(([[((((([([[(([((([[[[([[(([[(((([[(([((([([[([[[[[([[[([[((([((([((((([(([[[[[([((([[[[[[[((([[(([[[[[[[([([[[[([([[((([([(((([[(([([([[[(((([[((([[([[[([[(([([([[[(((([[([([(([([((([([[(([[[[([(([([[[([([[[[[(([(([(((([[[[([([([(([([[[[[[[([[[[[((([[([[([[((([[[[([[[([[([[[[(([([[(([(((((([(((([([[([[[(([(([([([((([[([([(([(([[([[([[(([[[[([[[(([([([([[[([(((((([([[((([[[([([[(((([(([([[[[[([[([[[([([([[[[([[([[[((([[[([[(((((((((((([([[[(([(((((([((([(([[((([(([[((((([([([([[[[([(([[[([[(([[([[(([((([[([((([[[[([[((([((([[(([(([([((((([[([[[[[([((([((([[[[([(((([([(([[((([((([([([((([(((([[[([[[[[[[[([(([[(((([[([(([[([[(((([(([(([[([(((([([([[([([(([((([[(([((([[((([[[([[(([[(([([(([[(([(([(([[[[(([[[[[[((((([[[[(([[[(([(([([[[[[[([((([((([([[[([[[(([[[([((([(([(([[[[((([([[([([([[([[((([((([[(([(([[[[(([[([((([[[(([([([([([([([(((([(([([(([([(([[[[([[[[[([[(((((([(([(([(([[[[[(([[([(([[([([[(([(((([(([[(([((((([([[(([[(([[(([((([[[((((((([(([(([[((([([([(([[([[[(((((([([[[[[[[[[[([[([([[[[[[[[(([[[[([([(([[[[[([([(([([[[(([((([[[([([(((((([((([[(([[([([(([((([((([[([([[[[([[[[[[(((([[(([[[([(([[[[([(([(((((([([[[[(([[[[[[([[[([[[(([[[(((((([[[[[[((([[[[[([([(((([((([[[[(([(((((([[[[[([([([[([((([((([[[[(([[[(([[(((([([([(([([[((((([[[([[([[[[[[([([(((([([[(([([(([[[[[[[([[[(([[(([([[([[[([[[(([[[[([([([[([[([((([[[[[[(([(((([(([(([[([(((([[[(((([[(((([[[[([[(([([[[([[[([((([((((((([([([([([([[([(([(([(([[(((([[((([[[([[((([(((([[([((([[([(([(([[[[(((((((((([[(((((([[[[(([[([([([([[[[(([(([((([(([[[[[[[[[((([([(([((((([[[(([[[([((([([([[[((([[([(([[([[([[[(([[(([(([((((([((([([([(([([[[[([((([[[[([(([([(((([(((([[(([[([((((((([([([[[[[[([([[[([[([(([[(([[[([([([[((([[([[([([(([([[([(([[(([([([[(([[[[([(((((([[[[(([([([[((((([([([[[[[(([(([[[[[[([[([(([(([([[[[([(([([(([([[[([([[[(([[[(([[([[([[(([([([(([[(((([[(([[((([[([(([([[([[((([[[[[[[[(([[([[([([(([[(([[([([[[([[[[([((([(((([[(([[((([((([([(((([[(((([(([[([([((([([([([(([[((((([([[[([[(((([(([(([[((([([([(((([((([[([[(([(([((([[[[(((([([((((([[[([([((([(((([[[(([[((([[((([[([[[[[[((([[[[((([([([(([[(([[(([[([(([(([[[[[[[(((([([([[[[(((([([[[([(([[[([((((((([(([([(((([([(([[[[[(((([[[[[[[[((([(([[((((([([([([([([((([[[[[(((([((([([[[([[(([[(([([([[[[(((((([[[((([([[[[[[[[[[[[[([([(([([((([[((((([[(([(([[((([((([(([([[((([[[([[((([[[[[((((([[[[([(([[[[([((([[([[[([[[([([(([[([([(([[[([([[([([[((((([[([[[([([([[[(([[((([(([((([(([([[[([([(((([[[((((([[[((([([[[([(((([[[([[(([((([([((((([([((([[[[[([[(((([[[[[[([([([([[((([[(([([[[[(([((([([((((([([[[([[[([([(((((((([[([[(([[[[([(([([((([[([[((((([[[[[[[(([[[(([([([[(([[[[[[[([((([([[[([[[[[[[[[(([[[([((((([(([[([(([([(([([[[([([(([[(([[[[(([((([((([([[[(([(([([([[[[[[[([([([[[[([[(([[[[[[[[[[(([[([([[(([[((([[(([([[([([[(([[[[[((((([[([((([[([(([[([(([[[(((([[[[(([[((([[[(([[[[([([([[[[[[([([(((([((([[[(([(([(((([[([((((([[[(([[[((([([[[([[((([(([((([((([[([[([[([[[[[([[[[(([(([[[[[(([[((([[[[([[([[[[[[((([([(((([((([([[(([([([(([((([([[([[([[([(([((((([[[[[[([[([(([([((([[(((((([[[[([[((((((([([[(((((([([[[[[[([(([(([([([((((([(([([[[((([([[(([(([([[[[([[[(((([([[[([(((((([(([[([([(((([[([[([[((((((([[[[[([([[(([([(([[(([[[[[[(([[[([((((([[[([((((((([[([((([([(([((([[(([[[([[[([[[[[([((((([[([[((([(((((((((([[[[([[([[[((((([([[(([[([[[[[([([[[([([(((([[([([(([([[(([([[[[((([[[[[[[[[(([([[(([((((([[([([[([[([([[([([([(([[[(((([((([[[[[[[[[[[([(([([[([([([[([[[[(([[[([[[([[[([[[[[(([[[([(([([[[[[((([(([[[[[[(([[([[(([[[(([[([[(([((([[(([[[([[(([[[[(((((([([([([[[(([[(((([[([((([(((([[[[(([([(((([([[((([[[(([(((([[(([(([([[[([[([(([(((([[[[[[([((([([[([([[((([([([([([([[[((([[(([[(((([([[([((((((([((([[[[[[([[([[([((([(([[([[[[[([([([(([[[(([([(([[[[(([([((([(([(([((([[([([[((([(([((((([([(([(((([[([(([([([((([[(([[[[[[[[[[[[(((([[[((([([[([([([[([(([(((((([([((([(((([([((((((([(((([[[[([[[[([([((((([([[[((([[(([[[[[[([((([([[([([([([(([([[(((([[([[([[[[[[((([((((([[([[([([(([([[([([[[(([(((([[([[([[([[((([((((([([[((([((([(((((([[[[(([([((([[[([[([[[(([[(([[([[[([(([[[([([(([[((([((([(([([((([([([(([[([((((([([[((([[([[(((([([[[[[[(([((([([([[[((((([[((([(([(([[[[((((([([((([((([[(([(([((([[((([([[(([[([([(([[[[[((([(([[[([([([((([[[([([([([[(([([[[([[(([(((((([(([[([[([(([[(([([([[([[([[[([[[[[((([([(((([((([[([(((([([((((([[(((([([[[[[[[[(([[(([[([[[[[(([([((([[([[(([[[[(((([([[([([([[[[((([[[[(([[([(([((((([[((((([([([[[([[[(([([[[([[[([[(([[(((([((([(((([[(([(([[(([[[[([(([[[((((((([[[[([([[[[[(([(([[([[[([([[[[[([([[[[[[([[([([([(((((([[((((((([(([[([[[[([([[[((([([([[(((([([([([[[((([([(([[([(([([([[([[([[[[[[[([(([[((([((([([(((([[(([[([[([[[((([[((((([([(([([((([(([[([(([(([[([([(([(((([([([[[[(([([([([[([[([(([(((((([([[[[(([[[(([[[[([[([[[[(([[((([([[[[[((([(([[([[([((([((([(([([[([([(((((([[[(((([([([([([[[((([[(([((((((([[[[[[[(([[([(([[[(([(((((([(([([[[(([([[([((([[[([[[[[(([([[((((([((((([([((([(([[([[(((([(([[[([[[([([[[[(((([[([[([[([([[[[([[((((((([[([(((([((([[[([(([([([([[([([(([[([[[(([[([[[[((([[[((([[([[(([([[((([[(([[[[[(((([(([([(([[[(([((([[(([(((([[[(((((([[[(([(((([[[[[[(([((([[((([[([(([[([(([([(([[(([[(((((((([(([(([[(([[[[((([(([((((([(([[([[((([[([[(([([[[[[[[([[([([([[(([(((([[(([([[[[[[[[(((([(([(((([[[[[(([[[([[([((((([[[[[([[(([[[[[([((([[[(([((([([[[[[([([[[[[([([(((([[[[[[([[[[[[([([(([([[(([[([([([[[(([[(((([([(([[[[(([(((([[[[[(([[[(([([(([(([[([[([[([([[(((([[(([[[([([[[[[[([([[((([((([[(([((([((((([(((([(([[(((([[([((((([[(([[[[[(([[([[[[([((([[[[((([[((([([(([((([[(([([(([[((([([([[([[([((([[([[[((([[([(([(((([[(([(([(([((([((([((([([([[([([[[[[[(([[([(([([([(((((([[([(([[[[[[([([([[(([[(([(((([((([([((((([([[([([([(((((((([[[[[[[[[([((([[[[[([[([[[(([([([[([[[[[[[[[([[[([[([[[[(((((((([[[[(([([[[(((([(([([(([(([([([([((([[(([[((([[[[[(((([(([[(((((([([[[[[((([([[[([[[([(((([([[([([([[[[[[[[[(([[(([[(([(([(([([(([[([[([([[([[[(([[[[(([((([[[[((([[((([[[([[[[[[((([([([([[([[[([[[(([[[(([[([[[(([([[([((([([(([(([[[[[((([[((([[[((([(([[[([([[((([((([[([([[((([(((([((([([[([(([([[[(([[[[((([([([[((([[([[[[(([(([([[([[[(([[[([[((((([[[(([[[((([[([((([([((([[[[([((([[[[(([[[[[[[(([[[[[[(([([((([[[((((([[([([[[[[[([([([[[[([[(((((((([[[((((([([([[[(([([[[[[([([([[[[([((([([([([[(((([((([[[([([([([([(((((([[([([((([[[([([((((([([[[(([[([([([[([([[([([([([((([[[[[([[((((([([[([(((([[[((([([[([(((((([([(([((([(([[(((((([([[(([[([[[[([((([[[([([[[(([[[[([((((([([[(([(((([(([([(([([[((([(((([([([[((([([([([([[[((((([(((([([[((([(([[([[([(([([[((([((((([[[[([[((((([[[(([((([[(([([(([(([[[(([[([([([([[[([([[[([([([([[([[[[(([[((([[[(([[[[[[([(([((([((([(((([[([[[[(([([[([(([((([[([(([[[[(((([((((((([([([[([(([([(([(([[([(([[([(([[[[[[((([([[(([([[([([[(([[(([[(([([[((([([[[([[[[(((([([[[((((([([[[[[[([([[([[(((([[[[([[([([[(([[([[(([[((([[(((([(([[[[[[((((((([(([((((((((([[[[[[(([[[[[[([[(((([[[[[[(([[(((((([(([((([((([[[[[[[[[[[([[([[[(([[[[[([(([([[[[((([[(([[[([[(([([[[((([([[((([[[[[[[[[[[([[(([([[[[([[[([([([(([[((([((([[([[((((([([[([([((((((([((([((((([[((([(([((([[[([(([[([(([[[[((((((([([((((([(((([(((((((([((([[[[([[((([[((((([[([([[[[((([([[[([([[[(([([(([((((([[([[([[([(([[[([[((([[[[[[([[(([(([([[(([[([(([(([[[([[([(([[[[[((([[[[[((([[[[(([[([[(([[[(((([[(((([[[[([((([[(([(([[(([[[([[((([[[[(([[([[(([[([(([((((([[[[[([[[[([[(([[([[[[([((([[((([[[[([([[[(([(([[([[[([(([([[[([[(((([([(([(([[[[((([[[[[[(([([((([([([((([([((([[(([((([((((([(([[([[([([[[(((([[(([[[([([[[[[[([[[([[[[([[[([([[(((([[[[[(([[[((([[([([(([([([[([[((([([([[([(((([([[([([(((([(([([(([[([[[[([[((([([[([[[[([[(([((([[[([([[([([[[([(([[[([[[([[[([[([[[(([(([[[([[[([[[[([[[[(((([((([(([[(([(([[((([[([[[(([([([[[[[[[([(([((((([[[[[((([[[([([[[([([[([(([[(((((([([(((([[(([(((([[[[(([([[([[([[([([[[[((([(([[([[([((([([([[((([((([[[[[[([([[[[(((([[((([[[([[([[([[[[[(([[([([[((((([([([((([([[[([(((([[[[[[((([([[[[[([(([([[((((([[[([[(([(((((([(([[[[(([(((([[[([(((([([(([[((([(([([[[[[[[[((([([((((([[[(((((((([(([[([[(([([[(([(([([[[[[[[(([([(([[((([[[([[((([[([[([([([[([[(([[((([[([[([([[[([([(([[([([[[[[([[(([(([([[([[[[[(((([[[([[[([[[([([[[[[([([([([([[([([([[(([[([([[([[[[([[([[([(([((([[(([[(([([(([(((([([[[(((([([((([[[[(((([(((([[([([((([(([[[[[[[[(([[(([[([([(([([([[((([([(([[([[[[[(((((([[[[((([[(([(([[((([([([[[((([([([[(([([[[([[[([[([(((([[([([[[[(([[[[[(((([[[([[[(([[([[[[[([([[([[[[[[[[([[[[((([[([([([([([[[[((([[([[([[[([([([(([[[(([[[([[[([[(((([(((([([[[[[[([[[[([(([[(([[[(([(([(([((((([[([[([[[[[(([[(((([((([(((([([((([([[[((([((([(([((((([[([[(([([([[[(([((([(([[[[(([(([((([[[[[[(([(((((([[([(([[(([((([[[((([[[[[(([[(([[([[[[(((([(([(([([([(((((([(([([(([[([[(([(([([([([[([[[((([[([([([[[((([([[(([([(((([(([[([[([(([[([[(((([(([[(((((([[[([[([([([[(([(([[[([((([(((([([[([((([[(([[([((((([((([[[([(([[[([[[([[[[(([(([[[[(([(([[(((((([([[[(([((([[[[[[[([[[([[[[((([[[([([([[(([(([[[([[[(([([[(((([[([([([[([([(([[[[(([((([[((([[[[((([[[((([[([[[[[((([((([[([(([[[(([[[[[[([((([[[([[((((((([[[([([[[([(([[(([[((([([([([([((((([([(([[(([[[[[([[[[[[[[([(((([[(([([(([([[[[[[([[[[(([([([([[[[(((([((((((([(([[[[[[([[[([([[([[[[(([([([([([(([((((([([(((([[(([([[[([[([[[([[([[[([([[[(((([[[(([(((((([[([[([((([((((((([[([([([[([([[[((([[[[[([[(([(([[[[([((([([[[([[[[(((([([(([([[([[([([[[[(([[[(([[[[([([([[[(((([(([([(([(([[((((([([[([[([[([([[([((([[(([(((([((([(([([[[[[([(([[[[[[([[[([[([[([((((([[([[(([[(((([[[[(([([([(([([[(([(([(((([(([[((([[[(([[(([[[[([(([[[[([[(([[([[([([[[(([(([([[(([((([[([(([(([[([[[(([([[([([[[[(([[[([[[((([[[[[[(((([[(([[[[([(([([[[(([(((((((([(([(([[([[[(([[[(((([([(((((((([[((([([([[[(([((([[[([((([(([[[([[[[[[[(([[((([[([[([[[([(([([([([([(((([([[([([[[(((((([(([[([(([[([(([[[[[[([([[[(([[((((([([[([[[(([[[([(([[[((([([((([([((([(((([[([[([[([((([[[([[(([[[([([(([[[[[[([[[[[[[(([[((([[(([[[([([[[[[[([([[[([[[[[[([[[[((((([[([([[[((([(([(([[([[[([[([(([([((((([[([(([[[([[(([([[([[([[[[[[[([[[[[[[(([[((([[([([([((([[([([([[[[((([([([([[[((([[([(([[([[[[([([(([((([[([([(([[[[(([[(((([([[((((([[[[[((((([(([(((([([(([(([([[([[(([(([[(([(([[(([[[[((([[[[(([([[([((([[[(([([[([[((([([[([[[((([((((((((([[((((([[[[[(((([[[(((([[[[[(([[(([([([(([([([(([[[(([[[[([[[[[[[[([([[([([[[(((([[([[[[[(([[[[([([[([[[[[[[([(((([[((([([(([([(([([([[[[[(([(([(([[[(([[([[([[(([[(([[[(([[[((([[[((((([[[[((([(((([[[([[([(([[[([([[[((([[[[[[[(([[[[[[[(([(([[([[([[([[(((([[[([([(([(([[([([([[[[((([[[[[[((([[(([[[([[((([((([((([((([([[[([[[(([((((([([[[([([[[([([[(([((([[[[([(([[[([([[(((([[([(([[[([[((([[[[[[[([([[(([([[[[((([(((([((([[([[[[([[((([[([[[((([[([[([[([(([(([[((((((((([((([[([([[[(((([[([[[[([[[([[[[([([[((([(([[[(((([((((([((([(((((([(([(([((([([[([[((([([(([[(([([([([((([((([[(([[(([[[[[[([[[[([[[(([([([[((([[([[([[([((([((([(([(([[[[[([([[[[([[(([[([[(([([(((([(([((((((([([([[[[[[(([([([[[([((([[[((((([[[([[(([[([(([[[[([[[([[[([(([[[(([((([([[([[([[(([[[([(([[([(([[[([[([(([(([[[[(([((((([(((([[(([([[(([[[((([[(([([([[([(([((([(([([(((([([(((([[[[[([([[[[[([([((([[([[([([(([[([[[([[([[(([[((([(([[([([[(([([[([((([((([[[((((([((([([(([[[[[([[(([[((([([(([(([[([[(([(([[[(([([[[[([([[[[[[([[[[[([([([[[(([[([((([[[([[([([((([(([(([(([([[[([(([[(([((((([([[[[([([((([[([((([[([[((([[[(([(((([[[[(((([([((((([[[([[[([(([((([[([[[(([[(([[[(([(([[[[[[[([[([[[((([[[(((([[[[(([([([[((([(([([([[[[([([([(([[[([[[([[[([([([[([[([[([(([([[(([(((([[[[[([[[([[([((([([[(([[([([([([([[((((([([[(([[[[((([[([[([((([([[[[[([[((([[((([[[[[((([([[([[[([[[([[(((([[[([((([(((([[(([[[[((((([(([([[(([[(((([[(([[[([[[[[[[([[(([((((((([([[[[([([([[[([([(([([[[[[((([(((([[[[[(([([[[([[[([[(([(([[(([[[[([([[[[([[([[[[[[[[[([[[([([[((([(([[((([((([[(((((([[([([(((([([[[[[((([[([[((([([([[[[(([([[(([((([([[[(((([((([(((([([((((([([([([[[(([(([((([[[[[([([[[[[[([([([[((([((([[(([((([[([([[(([[([(([[([(([[(([(((([[(([((((([(([([[[([[[(((([([(([([([([[(([([[([(([((([([[[(([[[(([[[([[[([((([[([[([[([[([[((([([[[[([[((([[[((([([[((([[[[(((([[([((([(((([((([[[(([[[[((([[[[[(([([((([[([[[(([[[[[[((([([[(([[[(([[[(((((((([(([[([[[[[([([([((((([[([[[([(([([[(((([([[[([([([[(((((([(([([[[(([[(([[[([[((([(((([[[[([((([(([((((((([([(([[([[[(([[([([([([([[[[([([[[[[[[[([((([((([(([[[((((([((([([([[([[[[(([[[([[(([([([(((([[((([(((((([[(([[([([[[([[[[[[((([[[([([([[(([[(((([([(([[((([([[([[(([((([([[[((([[[[((([[([[[[[([([(([[((([(((([[(((([((([[(((([((((([[[(([[[[(((((([[((([[([[([[[[([[[[[[[[[([([(([[(([[[(([([([([[([([[[(([[[([([([([[([(((([[[((([[([[([(([([[[(([[[(([([[[[(([[(([[([[[[([[(((([[[(([([(((((([([([([((([([[[[([[[[[[[[([([[([[([[[[[[[[[[[([[([([[([[([[[([[([([[(([([[[([(((([((([(([[[(([(([([([[[[[([[[[([[[[((([(([([(([([([[[[[(([[(((((([[[[([[(([[((((([((([((([(([([[((((((([((((((([([(([((((((([([[[(([((([([[[[(([(([[([([[[[(((([[[[[[(([([[(([([[((([[[(([[[((((((([([([[((([[(([([[([[(((([[[[[([(([([(([((([[([(([[((([(((([[[((((([(([[[([[[[((([[(([([([[(([([([(([([[((((([([([[(([((([([((((((([((((([([([[[((([([([([[[[([(([[[((([(([[[(((((((([[[[[[[([([(([([((([[([([([([[([[([([[[[[(([[[(([[(((((([[[[(([[[([([[(([[[[[([((([[[(((([[(([([(([[([(([[(([[[[(([(([[(((([(([[([([([[[[[[([([[(((([(((([(([([[[[[([((([(([[(([(((([(([[[[([[(((((([([(((([[((([[[([([([(([([[(([(([[[[([[[(([[([((((((([(([((([[[([([[(([((((([[((([([[[([([[[[((([[([(([[[([[[(([[[(([(([([[((([((([([([((((([([(((([[[(([([(([[[(((([([(((([[([(((([[([[([[[([(((((([[(([[(((((([(((([([([[([[([[([(([([[[(([[([([(([([[[([([[((((([[([[[[[[[((([[[[[[(([(([([[([([(([((([[([[[[[(([[[[((([[[[([(((([([[(([[[([[[(([[(([[((([([(([((([([[(([[(([([([[([(([(([[([(([(([(((([((([(([(((((([([[[(([[([[([[[([[[[(([([[([[(([[[([([([[[[[[[[([([([[([(((([[[([(([[(([((([[([([[([[[([[(((((([(([([[(([([[[([[([([((([[[[[([([[(((((((((([[[[(((([[([[[[([[(([[((([(([((([([[([[([[[(([([[[[(([[[((([[((((([[(([(([[(([[[(([[[([([(((([([[([[(([[([([[((([(([((([([[((([[([[[[([([([([[((([(([[([(([[(((([[[[[[[[([((([([(((([([([[(([([((([((([[[[[[([(((((([(([[[(([[[([([([[[([[([[([(([[[[[(([([([[[([[([([((([[([([[[(([[[[[(([[[[([([((([[[(([((((([((((([(([[[([([[[(((([[([((((([([[(([(((((((((([(([[([[(((([([[[(([(((((([([([[((([([[[([((((([([[([([[(((((([(([([[([[(([(((((([[([[[((([(([[([[[([[([(((([[[([([[[(([[[[[((([((((([[[([[[[[[([[[((([([([(([(([[([[(([(([([([((((([([([[[[[([[((([([[[[[[(((([((([[(((([((((([[((((([[[([((([([[([[[([((([[[[([((([[[((((((([(([[([[([((((((((([(([(([([[(((((([[([((([(([([[(([[[(((([[((((((([(([[[[(([([[[[(([([((([(([([[([[([[[[([[[[[[[[([[([[[((([[[([([[(([(((((((([[((([(((((([([((([[([([([([[[[([[[((([(([([([(([[((([([[(([[((([([([[[[[([([((([(([(((([[[([([[[[[([([[([[([[([[[[([[(([[(([[([(((([([[([((([([(([([[([[([([[((([[[[[[((((([([((((([([([([[(([[[[[([[[[[([[([[([((([([[[([[[(([[[([(([((((([([(([(([[[[[(([[(([[([((([[[([[((([([[(([([(((([((([[[([([(((([([[(([[([[[([[[([[(([[([([((([([[(([([[([[[([[([([((([([[[[[[[[(((([[([(((((((([[([((([[[[[[[([[(([[[(([([(([[(([([[[[[[[([([([([[((([(([(([([([[(([[((((([((([(((([(([[[([[[((([((([(([([[[([(((([[[[[[[[([[[[[[((((([[(((([(([([[([[(([[[(([[(([[([(([(((([[([(([([[(([([[(((([[[[[[[[[[((([((([[[(([([([((([([[[[([((([[([(((([[([([[([([[[[([([([((([[[([[((([([[[([([([([([[[[[[[[([[[((([([[[[((([([[[([(((([(([(([((((([[[([[[[(([([((([([(((((([([[([(([[([[((([((((([[[[((([[[[[[((([([([[[([([[[([([[[((([[[[((([[(((([[[[([[[[([[[([(((((([(([[[(([([[[((([(([(([(([[[(([((([([[[((([(([[(([([[[[[[[[[[[[[(((([[((((((([((((([([(((([[((([(([([([([[([([[((([[((([[([([([[[[(([((([([[([((((((([((((([((((([[[([(([([(([((([[[((([((([([[((([[(((((([[([[([[([([([[([([[((([[(([[[(([[[([[(([[([([[[[([[([(([[([[[[([[[[(([[([[[[[[[((([(([((([[[(([[([[[[([([(((((([[[[([[[[(((([([([[((([(((((((((((([[[[([[[[[([(((((([[([[[((((((([([[[[[[(([((([[[[([(([((([([([[([[(([((((([[[([[[[[([([[([([[((([[[([(([[(([(((((([[[(([([(([([[[[(([[(((([[[(((((([[([([[([[([[([[[([([([[([(([[[[((([(((([((([((([[[[[((((([[[([[[(((((((([((([(([[[[[[([[([[([[[[[(([[(([([(((((((([(([[([[[[[[[([([[[([[([[[[(([(([[[([[([[[([(([([[(([[([[[[([(([[[[([((([[(([[[[((([(([[((([[[(([(([([(([[[(((([[([([[[[((((([[[[[(([(([[([[[[((((((([(([[[[[((([[([[[[(([((([[(((([((([([[[[[(([([([((([[(([([[((([(([(([[[(((((([[([([[[[(((((([([[[(((([[(([([(([([([[(((([(([[((([[[[([(([([[([[[([([([[(([([[([[[[[([([([[[([([[[([(([[([(([[([((([([([[[[(([[[[([[[((([[(([[((([([[[[[(([[[[(([([[([([[([([[(([[[(((([((([[((([[([(((([[[([((([(([[[[([(([[[[((([[[[([([[([([([[((((([[([[[[[([([([[([[(((([[(([[[((((([(([([[[[([[(((((([([[[(([((((([[([[[[(([[([[([(([[([([([((((([((((((([(((([([(([(([((([(([[[[[([([([((([([[[[([(([([(([[[([[([[([[[([[((([[[[[[[((([[[([[(((([(([[([[(((([[([([([((([[(([([(([[[([([([[(((([(((((([[[([((((((([(((([((([[[[[[([(([[([([[(([((([([([[[[([(([([[([([([([([[([([((((([(((([([[[([[([[[[(([[([[((((((([([[[[[([(([[[[[[[([([((((([((([[[[[([([(([[(([[([[([((([[([[((([((([[([[[(([[([[[([[([((((([[(([((([(([(([((([([([[[[(([[[([([[[(((([[[[(([([[[([([(([[([((([(([[((([[[[[[[([([((((([[[[[[[[((([[(([[[([[([(([([((([[([((((([(([(((([([([((((([[[[[[[(([(([([([[[(((((((([([[([([(([([[([([((((([[([([[[(((([(((((([(([([(((([[([[[((([(([[([[(([[(([[([([(([[[[(([[([[[([(([([[[([(([[(((([([[(([[(([(([(((([(([((((([([([([((((([(([(((([[([(((([[[(([((([[((([(([(([([(([([([[[(([(((((((((([([(((((([([(([[[[(([[([(((((([[[((([[([([((([[[[((((((([[[[[[[(((([[[[(([([((([([([[([([[[[([((([([[((((([((([[[([([(((((((([[[([[[[([(((([([[[([[(([(([[((([[[[((([[[[[([([([[([[[[(([[([[([[([[[(((((([([[[(([[([((([([(([[(([[[((((([(([[(([[([[[(([[([([[([[[(([[[[[[([([[[([[([(([[((([((([[([[[([([[[[[((((([([([[((((([[[(([((([([[[[[((([(((((([[[[[([((([[(([((((((([[([([(([([([([(([([(([([[(([[(([[[([[(((([[[([[[[[[([[([(([([[((([(([([[[([[((([[[[[([((([[([[(([((([[[([[[((([[(([(([([[[[((([(([([([(([(([[[([(((([[(([([[[[[[[[[[[(([[(((([[[[[([([[[[([[((([(([[([[[[((((([[(([[[([(([[[[([[[[[[([(([[[[[([[(([([((([[[(([(([([([([(([[[[(([(([[[[[[[[[[(([(((([[[[(([[[[[[[([[([[[((([[([[[[[([([[[[[[[(((([(((([(([(([([[[([(([([([(((([(((([[[([((([(([(((([((([([[[[[[(([([([([[([[[([([([[[([[[[[(((((([[(((([((((([[([([[[[[([([([([([([[[([([((([([[(((([[[[(([(([(([(([(([(([[[((([([[[[([([(([([([[[[(((((([(([[[((([[(([((([(([[[[([[([[(([[[[[([([[([[([([[(([(([[(((((([[[((([([[[[[([([([([[[(([(([([[(([(([[([[([[[(((((((([(([[[[[(([([[[((([[([[([((([[[[([[[[[[(([[([([[(((([[((([([(([([[([[[[[((([[(([([((([([([[[(([(((([([(([[((([([(((([(([([([([([[[(([([[[[(((((([[([[[([(([((([([[[(([(([([[([[[[[([[(([[(((([[[([([([[[(([[[[[[[([[(([([((([(([(([([[[[([[([[[[[[[[[([[[((((((([(((((([([[(([(([([[([[[[[[[([(([[[([[[(([((([[([[([([[([[(([([(([([([[([(([[[[((((([[[([((([((([([[[[[(([([([([[[((((([(([(([[[([[[[([[([[(([[([(([([([((([[([[(([[[[(([[(([[([[([([((([(([[([([([([[([[([((((((((([((([[[[((([[[(([([[((([[[[((((((([([[(([(([[([[(([([[[((([[[[[[([([[([([([([[[([[(((([(((([(([[([[(((((([([((([[[[([(([([[[[([((([([[([[([[[(([([[[((([[[([[[[([[([[(((((([(([([([(([[[[[([((([(([[(([([(((([[(([[((([[(([[(([[([([([[[[(([([([([[[[[[[([([[[[([[([[[[(([([[[[(((([(([(([(((([([((([([(([([[([((([[[((((([[[[[((([[[[[[[([[[[[(((((((((([([(([(((([[[(([([[([([([[[[([([[([(([([[([[[[([[[((([(([[(([[(([[[([((((([[[[[[[([([[[([[([[((([[[([[(((([[((((([(((([[[([((([[[(((([(([[[[[[([[(((([[[([[(([[([[(((([(([(((((((([(((((([[([([(([([[[[[[[([[([((((((([[([([(((([[(([([[([[[[[([[[[[(([[[([[(([(((([[[([[[([((((((([[[([[(([([((((((([((([[(([[[[(([[[([[[([([(([([([[([([(([([[(([[[([((([[((([[([[[[[[[([([[[([[[[(([[(([[[((((([([(([[([[(([(([([[([(([(([(((((([[(([(((([[[[(([(([[[([(([[(([[(([([(([([[[((([[[[[[[([[(([[[[[[[[([[([((([(([[([((([(([[[([[((([[[([([[[[[(((([(([[((([((([((([[[(((((((((([[[[[(([([[(([(([[[([(((([(([(((([[[[[[((([([([([([[[(([[[([[((([([((([[[([[((([[[((([((([(((([(([[(((([[[[[(([([([(([([(([(([[(([(([[([((([([(((([[[[([[([[[([[(([(([[([(((([[[(([[[((([[(([([[(([[[((([[([([[[(([[[([([(((([[[(([[([([[(([[((((([((([[([[((([(((((([[(((((([[(([(([[[((([([[(([[[[([([([(([[(((([[[[([(([[[[[([([[([[([[[(([([(((((([((([[[[[([([([(([[([(([(([[([((((((([([([([[[[([[([[([[([[[([[[[[[([[[([[[(([[(([[[[([[[[([[[((([[[[[[[([[([([(((((([(([[[([((([[(([[([([([([[[[[([([(([([[[[(([([[(([(((([((((([([[(([(((([[[[[[[[[([[[([[[[([[[([([[[([(((([[[[([([[[(([[([(([([((([[[([[[((([[(([([[(([[(([([[[(((([[[([(([(([(([[[[[(([[[([[[[((([([[[[((([((([(([(([(((([[([([(([([([([[([[[((([([[(((([[[[[([([[([[(([[[([[(([[((([([([[[(((([([[([[[(([([(((([(([[([[((([([([[([[([[(([(([[[(([(((([((([([[([(((([[(((([[((([[[((([(([(([(([[[([[([[(([[(([(((((([[[(([[([[([(([(((([(([[[[(((([[[(([[([[[[[[[(([([(([(([[[[([(([([([(([(([(([[[(([(((([([([[[(([[[((([(([[(([[[(([[[(([[((([(([(((((([[[(([[[(((([([[[[[[((([([((([[(([[[[[[([[[([([[[([([[((([(((([((([[[([[[([[([[((([[[((([[[([([[([[[(([(([[([(([[[(([(([[[[([((([([[[([([[[[(([[([[[[([[((([([([([([[[(((([([([(([([([([[[([(([([[[((([[([([[(((([([(([([[[[[([[[[([[[[[([[(([(((([([[([([(([([([([(([(([[[([[[[[[(((([((([([[[[[[(([(((([[([([([([(([[[([[[(((([([[([[[[[((((([[[(([[[[[[[([[((([[[(((([(([[([([((([[([([[(([[((([((((([[[([(([([[[((([[[((([((((([(([([[(([([([(([[(((([[[(((([[[((((((([((([([([(((((((([(([[([[([([([[[[(([([((([(((((([([[[(((([([([((([[(((([[[[[(((([([(([([([[([([(([[[[[([[([([([[[([[(([(((([[([([[[([[[[[(((([([[[[[([[[[[([[[[[([[([[([[((((((((([[[(([[(([[((([([((((((((([[[[(([(([([(([([[[([([([(([[(((([((([(([[[[([[([[[((([[(((([[([([(([[[(([([([[((((([[(([[(((([([((([([[([[[(([([([[([[([([[(([[[[(([[[([([[[[(([[[(([([[(([[[(([[((([((((((([[(([([[([([[[([[[([(([[[[((((((([[([[[(([[[([([([[(([(((([[[(([([(([((((([[[([([[(([([[[((([[(([([[[(([[([[[[((((([[(([((((((([[(((([([([(([([[[[[[([[[([(([((([([([[[([([[[[[[(([[[((([(([((([([([[[([[(([([([[([[[([([[[((([([[[((([[[([[[[[[([((([[[[([[(([(([(((((([([([[[[([((([(([[([[([[[([[(([([([(([[((((([[([(([([[[([[[([[([(([([(([(([[([(([[((([([((([[(([[[[(([([([([([[([((((((([([((([([[[[[([[[[([[[[[([[(((([(((([([[[([(([[[(([(([[(([[(([[((((([[([[[((([([[(([([(([((([[(([[[[((([[[(([[((([([([([((([[[[([[([([[([([([[[((((([[[((([([[([[(([[([([[[(((([([((([[((([(([([([([[([[[(([([[[([([(([((([([[[([([[[[([[[[[[(([[[([((([((([(([(([[[(([([[[[[([([[(([(([([([[([[[([[((([([[[[[([(([(((([(([[[((([[([[[[([[([[[([[(([[([[[[[[(([[(([((([([(([[([[[([([[[[((([[(((((([[((((([[[[[[([([[[(([([[(([[((([[[((((([((([[([[[(([(((([[[[[[[([([(([(([[((((([[[[([([[([[[[[(((([(((([((((([([(([[[[(([[[([[((((([([[(([(([[[([((([[[[[[(([[([(([[(([[[(([[(([[(([((([[(([((([[[(([([([[[[[[[[[[[(([([[[(([[([((([(([([[[(([[(([([[[[[[[[(([[[(([((([([[[[(([(([((([(([[((([[[(([(([[[([([(([[[[([(((([[((((([[[([(([(([(((([((([(([[([[[((([[([(((([[[[([(([([[[[[[[[[(([([((([(([[[([([((([[[[((((([[([(([[[[([[((([([[[([[[([(([[([[([[[([[(([[((([[[[(((([(([[([([[[(([[[[([[([[([[[([([[[(([[[[[([[[[((([[[(([[([[[([[[[((([((((((([([[[[[([(([((([[([[(([((((([([[[((([[[(([(([[[[[([([([([[[(([([(([[[([[([([[((([((([((((((([[((([[(([([([((((([(([([[[((([(([[((([([[([([[[([[[[(((((([([[([[[([([([[[[[([[((([[[[((([[([([[([[[[[([[[[(((([([(([[([[((([([[([[[(([[[([[[[[([[[((([[(([([([((([[((([((([(([(((((([[[[[((((((([([[(((((([[([[[[((([[([[[[(([([(([[(([([([[[(([([((([[[[[[(((([(([[[([[[([((([[[((([([([[[((([[([[([([(((((((([[[([((((([(([([[[((([[[(([([(([(((([([((((([(([((([(([[([((([[[[[[(((([[(([[[([([(([(((([[[[[[[[((([(([([(((([((([(([([[([[[[([[(([[[[[[[[[[(([[[[(([((([((([[((([[(([[([((((((([[([(([[[([([(([[([([[([[([[(((([([[([[(([((((([([(([[[(((((([[((([[[(((([(([((([((([[[[[([(([([[[([[[[([([([[(([[[(([(([[([([([([[([((([[([([[[[[(([[([[([[[([(([[(((([([((([[(((([(([[[(([[(([[[([[[([([[[([([[[(((((([[([[(([[((([[[[(([(([[[((([([[(([(((([[(([([[[[[[([([[([[(([(([[([[((([((([[[((([((([[[(([([[[[([((([([[(([[(([(([[([([[([[[(([((([((((((([(((([[(([([(((([([[[[[[((([[[([(([(([([[(([[[[([(([(((([(([([((((([([((([[[[([([([[[((([[([([([[[[[[[(((([(([[[(([((([[[([([([((([(([([[((([[(([[[[([([[([[([([([([((([((((([[([[[[[([([(((([((((([([(([([[(([([[[([((([[([[[[[([([([(([[(([[([((([[((((([((((([([[([(([((([([[[[[(([[[(((([[([[([[[[[[([[[[[[([([[([((((([(([[([[(((([[(((([[[(([[[([[[[[([([[[((([([[(([(([([(([[([([[[[([((([[([(((((([([((((((([[[(([([[(((([([[([((((([[((((((([(((([[(([((([[(([[(((([[[[[[[[[((([([(([(([[((([(([[([([[[[(((([[(([[[([[([[[[(([[(((((((([[([[([(([[[[[[([[(([(([[[[[[([[[[[([[[([(((([[[[(([((((([([([([[([([([(((((([[([[([(((([([[(((([(([(([([[([[[[([(([[((([[[[[((([((([((([[(([[((([(([[[([[[[[[([[[([[([[[([[[[([([[([[(([[(([(([([([[(((([[([[(([[([(([((([([[[[[[[(([[[((([([([[(([[(([[([[((([((((([[([[[((([[(([([([[([(([[([[([([[((((([[[((([([(([[(([(((([[([(([([(([[(((([[[[[([([([[[[((([(([[[([[[[[[((([((([[([[([(([[[([(([((([[[([([[([(([[((((([[[(([[([((([[([[[[((((((((([[(([[([[[([(((([[[[[([((((([[(((([[[[(([((([((([(([([[([[[[([[[[[[[[(([[(((([([((((([(((([((([((([[(((((((((((((((([((((((([([([(((([(((([[[((([[([[([(((([((([[[[(([[[[[[([([([[[([((([[([((([[[(([[([[(([[[([[[[[[([[((((([[(((((((([(([[([([([(([[([[[[[[([[(([[(([([((([((([[[(((((((([([[(([(([([[(([([((([([[[(([(([[([((([([[([((([([[([(([[[[([[[[(([[([[((([[([[([([[([[([[[(([([[[[((([[[([(([(([([[[(((([[(((((([[[[[([([[((([((((([[[([((([([[([[([[[(([([([[[(((([([[[[(((([([(([(([([(([[[(([[([[([[(([(([((([([[(([([[[([[[([[(((([((([[[([([([[(([([(([(([[(([((([[[[([([([[([[(([[((([([(([[[[[[([([([(([([(((([[([[[(((([[[[((([(([[([(([[((([[([([(([((([([(([((([([[[[[[(([([[([(([(([([([([([[([([[[([(([[[(([(([[[[(((([[[([((([([[(([(([(([(((([([((((([[[[(([[[[[[([([[[(((([([[[[(((((([(([[[(([((((([([[([[[[[([[((([[[[[((([([([[([[([(([[([[((((([([(([[([(([[(([(([[([(((([((([(((([(((([(([([[[([((([([([((([(([((([([[(((([(([([(([[([([[[(([([[([(((((([[(((([((((([([(([[(([(((([[[[[[[(([[[(([[([((([([(([[[(((([([((([([([([((([([[([((((([[((((([(((([((([[[((([(([([([[[([[([([([[[[[(([[[(((([[(([((([[[(([(([([[[[[[[[[((([([([[([[(((([[(([([(([[[[([(((([[[([([(([[(([((((([[((([[[([[[[([[[[[([(([([((([([([(([[[(([[([((([[[[[([([[(([[([([[[[[[((([(((((([[[[[[([[((([[[([[[((([([[([(([((((([[([(((((([[([(((([([[([(([([[[[([[(([(([((((([[([[([([[(([[((([(([((([[[([([[[[([(((([([[([([((((([([[(([(([[([(((((([[(([[[((([(([([((([([([[([([[[[([([[((([[[([((([[([[([[([[[((([[((([[[[[[([([([([[[(([[[(((([[((([[([[([[([[([(([[[[[(([([[[[([(((([[([(([[([[[[[((([((([([[((((([[([[([([(([[[[((([[[[([(([[[([[[[(([[(([([[([[[[([(((((([[[[(((((((([[(([([[((([([([(([([[[([((((([[(([[[[([(((((((((((((([(([[[[[[([[((((([[[[(([(([(([[[(((((([([(([([[[[((([[[[((((([[([([[[[([[[(([((([([[([(([([(((([[[(([([[((([[([[([[[([(((([([([([[[[[(((([(([[[[([[((([[(((((([((([([(([[[(([([([([((([([((((([[([[[((([[[([([(([[(([([([([[[(([[[[[([[([([[[([[(((((([([[(([[[(([[(([((([(([[[([[[[[(([[[[(([(([(([([(([[[([([([[([(([([[[[((([([[[([([(([([[[[((((([((([([[[((([(((([(([[[[[([[(((([[([([([([([[((([((([[([([([((([([(([(([(((([([([([[[[[[[[((([[(((([[[[[[(([[[[[[((([(([[[([[(([([[[([[[[[([(([(([([[([[([[(([[((([[[(([[[((([(([[(([([[[([([([([[[[(([[([[[[([[([(([([((([[[(([([([[[([(((([([([(([([[[[[[[(((([[([([[((([(([[[([[([[([(([(((([[[[(([[([[[[(([[([(([[[([[[[((((([((([([[[[[[([([[[([[[[[[([[([[([[[[((((([(([(([[(([[([[([([[[[(([(([([(([([[(([[([([([[[([[[(([([[(([[[((([[[[([[([([([[[[(([((([(([[(([[[(([[[[((([[(([[[(([([([([([([[([[((([[[[[[[([((([(([[([[((([([[[((([[((([[(([([((([([[([[[[((([(((([[[(((([([(((([[([[([[([[[[([(([([(([([(([([[[[[([[([([(([([[([[([[([[[([[([([[[([[[[[[(([(((((([[([([([([[([[[(([([(([[[([(([[(([[([[[[((([[([((([[[([[((([[([(([([[[([((([[[((([(((((([((((([[(([[(((([((([[[[([(((((([([[[([[[[([([(((([[(([((((((([([[[[([[([[((([[[[([([((([[[((((([[[[[[[((([([(([([([[[[([[(((([([((([[(([([((([[[[[[[[((((([[([([[[((([[([[[[[(((([[(([(([[[[(([([(((([(([(([([[[[[[[(((([[[[([[[[[(([[((([[((((((([([(([(((([[[(([(((([(([[[[[[[[[[[[[[[[([[(([(([([(([[((([(([((((((([[[(((((([[(([(([[((((([([[(([((([[((([[[[[[(((([(((([([[([[[[[[[[([[(([([[([([[(([(([(([(((([((((([[[[([([[([[[(((([[((([((([[(([([[([([(((([(([[[(([([([([[[[(([([[([([[[([(((([([[[((([([[[[([(([[([(((([(([[[[[[([[[([([[(([[([([[(([[((([([[[[(([[([[[[([[[([([([[((([(([([(([[([[[[([(([[[((([(([[[(([[([(((([[[((([([[(([(([[[[(([((([[[[(([((([((((([([[([[[[([((([[([(([[[([((((([((((([(((([([[([[[((([(([(((([[[[[([[[(([[[(((((([(([[([([[(([[(([[((([[((([([[(([[([((([([([[[[[[(([[[[[((([([(([[([[([[(([(([(([(((([((((([([((([[(([(((([[[[[([([([([[[([[(([[[(([([([[[[([((([([([([[[([(((([[[[([([((([((((([[([[([((([[([(((([((([[[[[[[[[(((((([(([[[([[[[[(([[([[(([([[([[([[[([[([((((([[(([((([((([[[[[[([[([[[[[[[([(([[[[[[(([[[([([((([([[[[([([[[[[([([[([(([[((([([((((([[(([(([[[(((([(([([([(([[(((([[(([[[([[[(((([[((([([([[(([[[(([([(([[([([(([[([((((((([(([([([[([(([([((([[(([[[(([[[(((([((((([(([((([[[[([[[([([[[[([[([[[[(([[((([[([[((([((([(([[(([(((([[[(((([([[(([(([([[[(([[((([([([(([([([(([[(([[([[[([([[((([((((([[(((([(([(((([[([(([(((((([([[[[(([[([[[[[[((([([[(([[([[(([[[([((([(((((([[(([[[[[(([(([[[[[([[([((([[[[((((([[((([(([[[(([[([((([[[[[[([[[[[[[(([(([(([[((([[[[([([(([[([([[((([[[[([([[[[[[([[[([((((([[(([[[([([([[[((([[[[([[(([[(([[[(((([[[[((([[([((((([([((((([((([[([(([[((([[([(([([([([((((([(([((((([[([([[[([([([[((([[((([[([[(((((([(([[[[(([[[[((([((([[[[([(([[[(([[[(([[([((([([[[[([([[(((([(([(([([[([([[((([[([[[((([((([[[((([[([[[([(((([[[([[[[((([[[([[[(([([([([[[[(((((([[((([[[[[([([[[(([([[([(((([[[((([[(([[[(([((([[([(((([([(((([[[([[(([[((([[[([[((((([(([[[[[(([[[[((([([([([([[[((((([([([([[[([([([[((((((((([([([([[(([((([[[([(([[(([[(((([[([([[([[[([((((([(((([[(((([[(([([([([(([[[[([([([((([([(([[([[(([[[(([[[[([(([[([[[[([([[[((((([[((([[[[(([(((([([[(([((([([[(([(([([[[([(((([([(([(((([([[(([([[[[(([([[([[[[(((((((((((([[([[([(([([[([([[[([(([[[[[(([([([[([[[([[[[(((([[([[((([(([[[[([[([([([[[[[([[[((((((([[((([([((([([[([[([[([(([[((((([[[(((([([[[(([((((((([([([[[[([([([[([((((([(([([[[(((((((([([[([([((((([[([[(([[[[[([([([([(([(([[[[[[(([(([([[(([([((((((((([(([((((([[[(([[([[(([((([[[([[[([([[[(([(((([(((([[([([(([[[([[[([[((((([(((([[(([[[[[[[[[[[[([[(((([((([([([(([(((([([([([([[[([[((([[([[([([[[((([(([(([((([([([[([([([[([([([[[[([[((((([[(((([[[[[([[([([[((([[[(([[[((([[(([([([([(([((((([([(([(([([([((([(([[(([[(([([[(([[[([[[(([([[(((([[[(((([((([[[(([[[(([[(([[[([([[([([[((([[(([(([(([([[[[(([[[[[[[[[[([[[(([[([(((([([[((([([[(([(([[[[(([((([[(((((((((([(([[(((([[((([[[[([[((([[(((((([(([([[[[([((([(([[[(([[([([((([[[(((([[((([(([[(([((([([[[[[[([((([(([[[([([[[[(([[[([([(([(([(([([[[(([(([[[[[(([[[[[((([([(([([([[([[[[(((([[([([[[([([[(([((([[([([((((((([[(([[[[((((([[(([[([[[[((((([([([([(([((([([(([[[[[[[[([[([[((([[[((([[([[((([[([([[([(((([[[([[(([((((([((([(((([([([[([[([(([([[(([(([((([(((([([[([(([[(([((([[([(([([[[(([(([[[[[[[[(([([([([[([([(((((([(([[([(([(([([[([([(([[[((([((((((([([[(([(((([([[([[[[([([(((((([((([[(([([[[[[(([(([[([(([[[([[[((((((([([((([([[[[[[[[((([[[((([[[((([[([[([[([[[[[(((((([((([((((((([[([(([[[(([(([([(([[([((((((([[[((((([((([([[((((([[[[(([([([([[([[(((([((([[(((([[[[[[(([[[((((([[[[((([[[[[(([([([[[([(((((([([([[(([([((([[([([[((([([[(([(([[[([[[(([[[([(([(([[(([((([[[(([([[([[[(([((([((([[([([[((([[[[([([((((((([[(([([[([[[[[[[[[[[[[[(([(([[(([([([([([[([([[[[([[[(([[(([(([[([[((([[([(((([([(([[(([[([([(([[[([[([[[([[[((([[[(((([(([[([([[[[[[(([[[(([([(([[[[([[[([(([[(([[([[[[([[[[([([[([[[((([[[[([((([[[[[(((((([(([[(([([([(([([[((([[[[(([[[[([[[(([[(([[[([([[[([[[[((([[((((([((([[(([((([[[[[(([[[[[[(((([([[[((([[[([(((([[(([((([(([((((([((([[((([((([[[[[[(((([[[([[(([(((([([(([[((([([(([[((([([(([[[[[[(([(([([([[([[([[([[([[(([[(((((([[([([([([(([[([([([([[([[[[[[[[([[((([[[[(((([[(([[([(([((([(([([(((([([[[(((([[((((([([[((([([((((([([[[[[(((([[(([[[(([([([[[[(([[[[(([([[[((([[[[((([((([[([[(([([[([(([[[[[[([([[[([([[[[[([[[[((([[[(((([[([(([((([[[(([[[([(([[([([[((([([([([[[[((((([([(([([[([[[[[(([[[([([[(([(([((([[[([(([((([([[([[(((([(((([([((([[[[[[(([([([[(([[[([[(((([[[((((((([(((([(((([[([(((([[[[(([[[[([((([([(((((([(((([((([(([((([([[([[[([(([[[[[([(([[(([[((((([[[[((((([([[([(((([[[(((((((([([[(([[[[[[(((([([([((([(([(((((([[[([[[[[[[((((((((([[[[[[[[(([((((([[[[[[([[[(([([[[((((([(([[(([([[([[[[[[[([[(((((((([([[[([[[[[[[[([[([([([([([[(([(((([(([([((([[((([([(([[([([(((([([(((([[(([((([(([([[[(([[([(([([[([([([[[[((([[(([[[[([(([(([([[[[[(([[[(([[[[[([([[([(([[[(([[(([[((([([([([((([([([(([([(([(([(((([[[[([([[((([([[(([(([([[([([([(([([(([[([[(([([[([([([[[((([(((([([[([([([[(([([([((([[(([[[[[[[[((([(([([([([([([((([[((([[((([[[((([[[([[[([[(([[[(([[[([([([[([[[[([(([([[([(([(([([(([([([([[[[[[(([[[(([([[((((([[(([([[[([([[[((((([[[([[([([([([(((([[[([[[((([[[([[([[[([((([[[([[(([[[[(([[[([[[((([[(([[(([([[([[[[([([([[[([[([([(([[[[[(((((((([([[(([[([([([[[(([([([([[[[[[[([[([(([[[[[[([[[[([([(((((([(([(([[(((([[[([[([[(([((([[[[(([(([[[[(([([([[[[([((([([[([[[[([(([([[[(((([[(([((([([((([(([(((([([([[[([([(([[[([(([([[[[[([(((([[([[([([[[(([[[([[[[[[[([[[([[([((((([[([[[[[([((((([[[[(([([[(((([([(((([([[((([[([([[([([[[[[([([[([(([([([((([((([(([(([[[[(([(([(([([[(([(((([([((((((([[([([[((([[([[[[[([((([[[[[((([[([([[(((([[(([[([(((([([([[([([[(([[[[[[[([[[(([([[[[((([(([[([([([[(([((([[((((((((([[[((([[([([([[[[[(([((((((((([[([([([[([([(([((([([[[(([[[[[[[[[[[[[([(([([[(([([(([((((([(([([(((([(([(([[[[((((([[[[((([[([([[[((([[([([([([([([[[[[[[((((([(((([(([(((([(((([(([[[([([([[([(([[(([((((((([([[(([([(([[(([[[(([([[([(([((([(([([([((((((((([(([[(((((([([[(([[[([[[[[[([[(([[[[((([[([([[[(([(([(([([[[[[[[[([([(([[(([[[[[((((([[([[[((((([[(((((([((([([(([[([[((([[([[[[[(([[[[(([([([[[([[([([[[[[([((([((([([[[[(([([[[([[([[(([[[[[[(([[[[[[[[((((((((([(([[((([([(([([[(([([(([[[[([[([(([[(([[[[([([([[(([([[([[[(([(((([(([((([[([[(([[((((((([[(((([[([[(([([(([([[[[[[[(((([[[[((((((((([[([[((([[[((([([(([[[([[(([[[((((([([[[[([[(([[[(([([(((([([[([[[(([([[[([[[[([[[[[[[(([([([[[[[[[([[[(([([([[([[([([[[[(([(([(([([[([(([[[((([([([[([([[(((([[([[([([((([(([[[(([[([[((((([[[[[[[((([([[([[[(([[([(((([[(((((([[[([[([([[[(((([[[[[[[[(([([[([[[[[(((([([([[(([((((([(([(([[[([([([[[[[(([([[[(([((([(((([[((([[[((((([((([[([[[(([[[[(([[[([[((((([([([([[((([([([[[[([[([(((((([((([([((([([[[([[[([[([([[[([[(([((([(((((([[[(((([([[([((((([((([(([[(([([([[(([([([([[([([[((([(((([[(([[([[[[(([[([(([[[[([[(([[(([((([([([([[[[(([[(([(((([([[([([([([((([[[[([([([([[[[(((((([[([[(((((((((((([(([(([((([[[[([[[([([[[[((((([[[([(((([[[[([[(([[[[(([(([[([[(([[[((((([[[([([([((((([[((((((([[([([[[([[[[([[([((([[([[[[((((([((([[((([([([([(([(([[(([[[[[[([[[((([(([(([([[[[([([[[[[[[([(((((((([[[[[([[[((((([(([([[[[[[[([[(([[([([[(([[[[([[[([([[[(([[[([[[([(([[[([(([(([[[((([((([[(([(([[(([[((([((([[[(((((([[[[([[(([[([[([[([([[((([((((([([(([([[([[([([[((([(([[((([([(([(([[([(([([((((([((([[([([((([(([((([[((([[((([[[((([[[[[(([(([((((((([(([([[[[([(((([([([[([([[[[[((([[(([([([[[([([([([(([([((([[([[([((((([[((((((((([[([(((([(((([[([[[([([((([(((([[([[[([([([(([[([((([[(((((((([([[[[[[([[((([([[([[[[((((([(([[(((([(([[([[[(((([[(([[[(((([(([(([[([([(([[[((([((((([[[([[([([[((([[([[([(([(([((([([([([[[[[[[[[[(([[([[([[[(([([[(((((([(((([(([[[[(((([(([[([([[(([([[[((([[[(([[[(((([([[([([([[([[(([[(([[((([[([([[([[[[[[((([[(([([[[[[([[[[(([((([[(((([[([(((([([[((([(([[((([([((([([[([(([[(((([(([([[(([[([([(([([[((([[[[[[[[((([(((((([((((([[[[([(([(([(([([([[([(([[([[[([[([([[[[[[([[([[(([[[[[([[[([[[[(([[[(([([([((([((((([[(([(([[[(((([[(([[[[([[([((((([[([([[((((([[[[(((([[([[[[([[(((([(((([((([[([[[((((((([([((([(((([[([[[[[(([([(([(((([([([[(([[([(((([([(([[([[[[[[[(([(([((((([[([[[[[[[[[((([([([(([((([(([[[([((([((([(([[[(([[[(((([(([([([[((([[[[((((([(([(([([(((([[([([[(([[([((([(([[[(([[[(((([[([[([[([[[([([(((([([[([([(((([(([(([[[[((([[[[((([[([[[([[((([[([([([([[([([[[([[([(([([[(([(([([(([[([[(([((((([[[((([((([[([[([([[[((([((([[(([[((([[[(((([(([[[(([([([([(((([(([(((((([([([((((([[[((((([[(([[((([(([[[[[[[[[[([[((([([([([(((([[[[[([[(([(([(([([[[(((([([([(([[[[((([[(([[([(([(([[(((((((((([([[([[(([[[(([([[((([(([[([([(([(([[([(([(([[[([([[([([(([[((([((([[[[[[[(([([(([((((([[(([[[((([(([[[([([((([[([[[[(([[[[[[[([[[([[[(((((((([([(((((([[[(((([[[((([[((([[[[([((((([([[([[(([[([((([([[[[((([([[[[[(((([([(([[(([[(((([[(([([(([[[((([([([([((((([(([([((((([[[([([((((([[[(([[(([[[[[([[(((([(((([(([([[[[[([[([([(([(((([(((([[[([[[([[[[[[(([([(((([([[([(([[(([(([[[[([[[[[[[(([([(([([[[(((([[([[([[[([[[(((([([[[[[[[[((([([[[(([((([[([((([((([[[[[[[[(([((((([[([(((([([[([[((([((([[((([(([(([([(((((([([[[(((([[([([[(([([([[([[[[([[[(([((((([(([(([[[((([[[(((([([[[[((([[([(([[(([[([([((([[(((([([([([((([[((([[[[([[(((([([(((((((([(([([([[([([(([((([[[[[(((((([[((([([[[((([([[([[[[[([[([[[([([[(((([[([[([((((((((((([[((([[([[((([([[(([(([[[[[[([([(([((([(((((((((([([((((([(([[[[([([((([[[((([([([([[[[(([[([[[[[[([[[([[[[([((([([([[[(([[([([([[[([[[([([([[(((([(((([([[[((((([[[(([([([[(([(([[([[(((([(([([([[(([([[[([([[[((((([[([([[(([([[[(([[[((([[[[(([[(((([[([[(((((((((([(([[(([[([[([([([[(([[([[[([([([([[[(([([([[[[[[([[((([([([[((((((([[((((([[[[[[[([[[[(([[((((([[[[([[([([[((([(([[(([([[[[[([([((([([[([((([([(([[((((([[([([[([[[[[[[[(([[([[([(([([([[((([[[[([(([([[(([([[(((((((((([([([[[((([([[(([[((([(([(([([([(((([[((([[([([[[(([(((((([(([[[[[([([([[[((((([[(([(([[[([[[([[(([[([((([[((((([[((([([[([(([[([([(([[([[[[([([[([([[[[([[[([([[([[([([([[[([(([[([[(([((([[[[[[(([(([[((((([(([[((((((([((([[([[[[([[[([[(([[[((([[[[[(([([[[([[[([((([[([(([([((((([[[[[[[[(([[((([([[[[(([[([((([(([[[[[[[([([((([([[[[(((([(([([([([([([[[(([[([(((([[[([([[[[[[(([[[[[[([(((([(([(((([([([(([([([([([([([((([([[[[(([([[(([[[[(([([[([(([[[[([(([[([([((((([([(([[(((((([([[[[[([([([([[([[[[([([(((((([((([[(((((([[(((([[[[(([[((([[((([((([[[[[(([((([(([(([([((([([([(([[([[[(([([[([(((([((([(([([([[([[((([([[([[([[[(([[([[([([([[[[([((([[[[(([[(([([([(([[[[((([([(([(([[[[([[(([([[[([([([(([((([((((([[[([[[(([[(([(([[([[([((([[[[[((([([(((([[((([[(([[[([[([(((([[[[([[((([(([[[([([((([[[[([[[[[(([([(((((([([[[[[(([([[((([([[(([([([([[[[[(([[(([([[(([(([[[[(([[[(((([[([[[((((([([(([[[[([([(([([[[[[(([((((([[[(((([[((((([[([([(((([(([([([[(([((([([(([(([(((([[(([([((((([[([(([[([[([((((([[[[(((((([([[[([([(([[([[[[[[([([([[[[(([[([[([((([([([([(([[(([[[([((([((((([[[(([[(([[([[(([[([[[[[([[[((((([[((([[[[[[[[[[(([[[([[[(((([[[[[([([[[[[[[(((([(([[((([[[[[([[[[[([(([([(([(((([[[[(((([[[[[([([((((((([[([[[[[((([[[[(([[([(([([(((([([([(((([(([([(([(([[[[(([[[(((([([[[((([([[(([[((((([[([[[[([[(((([[(((([([((([[(([((((((([((([[(([([(((([(((([([([([([((([[[[[[[(([[[[[[[(((((([[([[[[([[([([[(([([([[((([[((([[([[[((([[((([[(([([([([[([((([(([[((((([([[([([[(([[[[([(([([([[((([(((([([(([[[([[[([[[((([[(([[([[([([(([((([([((([([[[[[((([[[[[[[[([((([[[(([(([([[((([((([[([((((((((([(((((([(([((([[[([(([([[[([([([[([(((((([[[((([[[([[([[(((([([(([[[[([[(([[[[([[[([([((([(([[((([[[[(((((([([((([[([([([(((((([([([[[[((((([[(([[[[[([([[[[[([([((([([[(([[[[[([[([([([[(((([([[([[[[[[[[([[([([([([[((([[[[(((([[[(((([[[((((([[[[[[([([(([[[[([([((((([[([([(([[([([([(([([([([([([(((([[[[([[[[([[([(([([[[[[([[([((((([([(([(([[[[([([[[[[[([([[[((([[[((([([[([[([[(([((([[[([((([[(([([([(([[([[[([[[([([(([[(([[([(([[[([[(((([([([[((([[[((([[((((([([(([(([[[(([(([[(([(([[[([[([([[(([([([[([[((([[[([[(((([[((((([(((([([[[(([([([([([[[[([[[[([[[([[(([([(([[(((([((([[([[[[([[((([([[(([[[[([([((([([[[[[[([([(([[((([((([(([([(([([((([([[[(((([[[((([[(([(([((([([([[(([[[[([[([(((([[[([[[[[[([[[[(((([(([[[[[([(([((([[([([[(([[(((([((([[[[[[(([([[((([[[(([[[([([([[([([(([[(([[[[[[[[[[[[(((([([((([[[((([[[([[[[[([[([(([([[[[([[([([([[[([[[[[([([[([([(([([[[([[([([([([([([[([[[[[([([[((([((([[([[[[[[(([[(([[[[((([(([((([(([[[[[(((([([(([[([([((((([[[[[[([([([[[[([([(([[([(([(([(([[[[(([[[(((([([[(([[[(([(([(((((([[[[([([([([(((([[([[[[[[[[(([(([((([([([([[(([[[[(([((([([[([([((((([[([(([[([[[[(([[[([[[([((([(([((((([([(([[[(([[(([[[[[(([((([[[[([(((([[(([([[(([((([([((([[[[[(([((([[[([[[(([[(([([[([[(((((([(([[[[[(((([[[[((((([[[((([[((((([[[[([[[[([((((([[[[[[((([[[[(((([([([(([([([((([([([((([[([(([[([((((((([([(([((((((([([((([([[((([((([(([([[[[([(([([([[(((((((([([(((([([[[[([[((([[((([[(((([[([[(([([[[([(((([[[[[[[[[[(([((([([[[[[[(([[[(([[(([[(([([[[(((([[[(([[[([[((([([[((([([(((([[([(((([((([[([([((([[(([[[[[[([[(([[([[(([((((([[[([(([([[[[(([([([(((([[([([((([(([([([[[[([(((((([[(([(([(((((([((((([[([[(([[([[[((([([[[[[(([([((([[(((((([([[[([(([[([[([[[[[[([[(([[([[[(([[[[([(([((([[[([([[(([[[([([(([[[[[([([([[((((([[([[[[([([((([([[([([[((((([((([(((((([(([[[([((([((([([((([(([(((([[[([[(((((([([[([[([(([((((([[([([[[[[[[([[((((([([((([(([((((((([([[[[(((([[([[([((([([[([(([((([[([((([([[([[([([([(([[([[([((((([[[[[(((([([(([((([([[[((([[(([(([[((([[[[[(([[[[[((([([[([(([([[[[(((((([[(([(((((([([((([([(([[([([((((((([[[((([([[([[[[([[[[[[[(([[[([(((([(((([(([[[[(([[[([[((([([((([([([[((([([[([[([((([(([(([[(([[(([([[[(([([[(([((([[[[((([([(([[([(([([([(([(([(([[[((([[[[[(([[[[((([[[([[[(([[[[((((([(([[([(((([[([[([([((([[[[[[[([[(([[[((((([[(([[(((([([[([[[((([(([([[[(([[[[([(([(((((([(([[([(([([(([[[([(([(([([(([((([[([(([[([([[[[([([[[[([([([[([(([([[([[([((([([((([[([[((([[([[[[(([([[([((([[(((([(([(([[(([([([((([([([[[(([([[[((([[(([([(([[[[((((([([((([[[[([((((([(([([[((([([([[[[[[([[[(([[[((([[[[([([[((([([[(([([[[(((([(([((([[(([(([([(((([[([([[([(([(([[(([[[[[[[([[([[([[[(([[[([(([([([(([([[[[(([([(([[([[[(((([[([([([[[[(([[((([([[[[(([((((((([[([[[[(([[[[[[([[[([((([[(([[([([(([([(((([[([[(([[((([(([[((([[(([((([[[([[[[[((([([[((([[((([[([[((([[[[[((((((([[[[[([[[([[([[(((([([[(([(([[((([([((([([([[(([[(([([[(([(([([(([[([[([((((((([[(([[([([[[((([([(([[(([[[[[[[([([(((([[([(([([[[[[((([[[[[[(([[([([(([([[(([[[([(([(([[[[((([([[[([(([[[[[(([[([([([[[[[([([(([[([([(((([((((([([(([([[([((([[((([([[(((([[[([(([[[[(([[(((([([[((((([((([[[((([[[[[([((((([[[(((([[[([[[[([[(((([([[[[([(((([[[[[[[[(([([[[(((((((([((([(([([(([(([((([[[[([(([[(([[(([[[([[([[[([[((([([([([[[(((((((([((([([[((([(([(([(([(((([[[[[[[((([([[([[([([[[(([[[((([([[(((([[[([([([[[(([(([[(((([[([(([([(([([[([[(([[[[([((([(((([[([[[[([([(((((([([[[[[([[(([[[[[(([(([[([[((([[[((([(((((([([[([([[[(([[[([[(([[[[([([([(([[([[([([[(((([[([(([[([[[[[(([([[([[([((([[[[([([[[([((((([((([[(((([[[([([[([[((((([(([[[[(([([([[[[[([([[[(([([[([([[((([([([[((((([[[(([[[(([[[([([(([[[(([((([[((([([[((([(([((([([((([([(([[[[([[[(([((([(((([[([([([([((([[(((((([(((([[[(((([[[((([[[([[([[[([[[(([([[((([[([[[((((([[[(((((([[[[([((([[(([([([[[[[[(([([[((([[[[[(((((([([[(((([([[(([([(([(([(((([[[((([([([[[[((([[([[([[((([[[[([[[(([(([[[[([([[[([([(([(([[([((((((((([(((((((((([[[([[[[[(([([[[(([(((([([[(([([[([((([[[[[([([[[[[(((([([[[([(([[[[[[([[[[[[[((([[(([([([(([((([[(([((([(([([[[(([([[(([(([([[[([[(([((([[[((((([[((([(([([([([([[[((([[(([[[[(((([[([((([[([[[([[([([((([[[(([(((([(([[(([[[[((([[[[[[([[[(([([[[[([[[[[(([[([(((([[(([[[[[[((([([(((([((([[(([([[([[(([([([([(([((([[(([[[[(((([(([[[([[(([(([[([([[([[([[(([[([[[[[(([[[[[((([((([([(((([(([((([[[[[([(([([[((([[((([[([[(((([(((((((([[((([[((([([[([[([[[[[[[[[[(([((([(([([(((([[((([[(([([[[([(([([([[([[([([(((([[[[(([([[((([[[[([[(((([(([([[[[[[([((((([[[[(([(((([[[[([[(([([([[[[(([[([(([(((((((([[(((([[[[[(((((((([[([([[([([((([([(([[[[([(([[[[[[[[[[((([[(((((([[[([[[((([([[(((((([(([(((([([(([[([((([[(([[([[[([[(([[((([((((([[[[([([[[[[([[[[(((([[([(([[[[[[[[[([([[(((((([[[([([[([([[[((([(([[((([[[[(([([[(([(([([[([(([(([((((([[[[[[([(([((([[[[[([[(([[([((([[[((([[[[[[[(((([(((((([[(((([([(([[([((([(([([([(([[[([[[([[[[(([[((([([[(([((((([([[(([[[([[[([(([([([(((((([[[([[((((([([((([[[((([([([[([[([[([[[([[([[([(([[([[(([[[([[[([[[((([([([(((([[((([(([[[((([([([(([(([(([((((([([[([[[([([[[[((((([((([([[([[((([[([[((([([[[(([[[([[((([([(([([[((([[[((([[[[([(([([[(([[[[([[[([[(([([((([[([([([[[([[([([[[([[[([[[([[[[([[[[([[[([[[([(([[[[[(([([([[[(([[((([((([(([([((([[[(((([([([((([([([[([((([[(((((((([([[[[[((((([([[[(([[([([(([(([[[[[([([[[((([[[([[[((([([(([[[(((([(([((((([[[[[([[[((([([[(([([[([(([([[[([((((([((((([(([[((((((([([[(((([[[(([[(([[[([[[[[([((([([([(([[[([[(([[(((([((([[([[[[[[([[[([([([(([[([((([(([(([([[(([[[([(([(([(([[(((([([[[(([[([[[[[([([(((([[[(((([[(((((([(([[[([[([[[[[[[(((([[[[([(([[[[[(([[[[(([[[[[((((((((([[[((([[[[([[((((([(([[(([(([([(((([([[([([([([([[[[[[([([[[([(([((((([(([([[([((([([([[([([(([([([([[[((([(([([([[([([(([([[[(([(([((([[([[[[(([[((((((([[([([[([[[[[(([([([([(((([[((((([([((([[[(([[[[([[[([[(([[([([[[[[[[[[((([[[[[([([(([[[((([[[[[[[[[([[[((([[[[([((([((([((([((([[[([[[([(([([(((([[([[[([[([([([[[[([([[[[(([(([((([([[[([[((([([((((([(([[[[[([(((((([([([([[[[[([[[[[([((((((((([[[([[[(([[((([[[[((([((((([([(([[([[([[[(([[([(([([[[[([([[([(((([[[([((([[[[([[[[[([[([[[[([[([([([[[(([[(([[([(((((([[(([[([([([([[[[[[[([[(([[[([(([[[[[[[[(([(([[[[([[([([[[[([[[([[([(((([([((((([(([[[[[[([((([[[[(([(([[[((((([([[[(((([[((([[[[[(([[([[([(((((([[(([[[([(([([((((([([([[([(((([((([[[((([[[[(((([(([[([((([(([[[([[[((([[[[((([[[[[(([([([[((([([([((((([[([[([([[((([[(([([((([[(([[((((((((([(((([([[[[([([[[[([[([[([([([[(([[(([[[[([([((([(([[[[((([[([([[((([(((((([((([[([([([((([[[[(([[[[[((([([[[[(([[([(([(([[[[[([[(((([[([(([(([[([[(([([((([((([[[[((([([[[[([[((([[(([[(((((([(([(([[(((([[([([[[[[([[[[(([[([[((([([[([[[([[(((([(([[[[((((([(([[([([(([([([([[[(([(((([((([(([((([([[([([[(([[([((((((([[[(((([([[[[((([([(([([[(((((([([((([[([(([((([[(((([([[[((((((([[([(([([[[([(([[((((([[[([(([([([([(((((((([[([((([[[([(((([(((([[([[[[[([(((([[[[(([[(([(([((([[[[((([[[(([(([((([[[((([([(([([(([((([([[([([([[(([(([[([(([[(([[[[(([[(((([[[[([((([(([([(([[([(([([([([((((([[((((([[[[[[[([[[[([[[[[(([([[[([[([([[[[[[[[[[[[[[(([(([[[(((((([[[[[([[(([[[(([[([(([((([([[[([[([(((((([([[[[[[([(([([[((([([[(([[[[(((((([((([([(((((((((((((([([[[((([[([(([[[[[(((((([[([([[((([(([([((((([[[(([[[[[[[([(([([[(([[[((([([(([([[([[((([[[[[[([[[([[[([[[([[[(([([((((((([(([(((([[(((((([[[((([[[[(((((((([(([[[(([(((([((([(([[[(((([(([([[[[(((((((([[([(([[(((([[[[((([((((([[[[[[[((([(([([[([((([(([[[[(((([[([[[(([(((((([[([[(([([[[([[[((([(((([(((((((([([[(([[[[[(((((([(([([[([((((([[[([[[[[([[(((([(([(([[([(((([[[[[([[([[([[[([[(((((([([(([(((([((([[([[(([((([(((([[([([([((([[([((((([((([([[[[([[([(((([[[[([(([[(((([([[([[(([(([[((([[[(((([([[([(([[[((((([[[[[[((([[[[(((([[[(([[([(([([[[([([[[([[(([[[[[[([(([([[([([[((((([[((([(([[[[[[[[(((([[((([[[[(([([[(((([((([[([((([(([(([([(([([([([[[[[([[([[([(([(([(((([[([[([[((([[[[(([[((([([[([(([[[([[([[([[([[(([[(([[[[[(([([[[[[[(((([[[[[([(([(([([([((([[((((([([[(([(([([[([[[([[(([((((([[[[([([((([[(((([([[([[[(([(((([[([(([[((([[([[(([([[[[([(([([([[[[(((((((([(([[((([((((([(([[([(([([([[[([([([(([[[[(([[(([[(([[[([([([(((([[[[[[((([[[[[[((((([[([([((([[([([[[[(([([[((((([([[(([[[[[((((([([[[[([[[[(([[([[[[[[[([[(([[(([[[([(([([((([([((((((((([[([([([(((([[[([([[([[[(((([[([([[[[(([((([((((((([([([[[[[[[([(([[[[[([(((((([([[[(([[[[([([[(([[([[(([([[(([([[([[(([(([[([[(([[[([[[([[[([([((([[[[([((((([([[([(([([[[(([[[[[[[[((((((([(([([[((([[[[((([[((([((([[[(([([[[([[[([([(([[[(([[([([[[[[[[(((([([[[[([((([((([[[[[[(((((([[[(([[[[([[(([([[[[(((([[[(([([(([(([[[[([[[[[(([([[(((([((((([(([[[([([([[[[([[([[[([[[((([(((([[[([(([[([[[(([([[([[(([[[([[[[((([(([([[([(([((([([[[[[((((((([[([[[(([[[(([[([([([([((((([([[((((([(([[(([((([([([([([(([([[([[(([((([[(((((([[(([[[(([[((([[[[[([[[((([((([[[([((([[([[((([[[([[(([(([[[[[(([([([[((([((((((((([(((([(([([([[([([((([([[[([[([[(([[[([[([[((([[[[[[(([[(([([((([[[[[([[([([([((([(([(([([[((((([(([[[([[((([[([(((([[[([[[[([[[[[[[[[(((((([[[[((([(((([[[[[(([([[((([([[(((([[[[((([[[[(([[[((([[([[[[([[[[([[([([(([[((((([[[[(([[[[([[((([[((((([((((([((([(((([([[[[[[([([[(((([([((([[[[[(([[([([([[([[[[([([[([[(([[[(([([[[[[([[[[[[[[[((([((([((([[([([(([[([[([[[(([(([((([[((([[(([((([((((([(([([([[([[[([(([[[[((([([((((([[((((((([(((((([[[[[(([(([([[([[(([[([(((([[[([[([[(((([((([[([((([[[[[[[[[((((([[(((([((([([([[(((([[((([[[[([([[[([[[((((([[[[[[[([[[[[[[([([((([[[[[[(((((([[([((([[([[[(([[[([(((([[((([([([[([((([[[([([([((([[([[[[([[[[[[(([[[([(([[[([[([[[(([[(((((([[((((([[[[([[[([(([[[[[([[[([([[(([([[(((([[([(([[((((((([[[[(([[(([[[([([[(([[((([([[[([(([([((([(((([[([([(((([[([[[([([[((([[([[[[(([[([([[((([([([[[([[[[([[((([((([([[((((([([((((([[[([([([([[(([((([[[[([[([([([[(([[(([[(([[[([([[([[(([([[([(((([[[[[[[(([([(([([[[[[[([(([([(([(([[(((([((([[([((([[[[[((([(([[((([([[([(([[(([([[[([([[[((([((((((((([((([(([[[[[[(((([[(([[(([[[((((([((([([([([(((([([[(([(([([(([((([([(([([(([((([(([([(([((([(([((([(([[((((([([[(([(([([[(([([[[([[(([[(([[[[([([([[[(((((((([(([[([[(([[[(([((((([[[([[[[((([((([((((([[([[[[[[[[[[[([(([((([[[[([[([(((((((([([([([[(([[[[([(([[([([[[[[([(([((([[((([(((([([([([((([(([[(([[([[[[([[[[[[(([([[([[[[[[[(([([(([(([([([(((([((([([((([(([[[((([[(((([((([([[([[([((([(([(((([[[[[(([(([[[[[[[[(((([([([((([[[[([[([[[[(([(((([[[([[([[([([((([[[[[[[[([[[([[[(([[([([(([([(((((([([(([[[[([([([[(([([([(([([[((((([[([(([[[[[([([[([(([[(([([[([[[([(([[([[[([[(((((([[([([[[[[(([[((([((([([([[[(([([((([[[(([([((([[[((([([[[([(([[((([([([[([([[(((([(([[((([([[[[[([[((([([[[(([(([(([[[([[[(([[([[(([((((([[[[[[([([[[[[([[[[([[([[[[([((([[[([[(([[[(((([((([(([[(((([(([[([([[[(([([(([([([[((([[([[[([[((([[[([[[(([[[((([[[([[(([[[[[([(((([([[([((((([[[[[[[[([[[([(((((([(((([[[[[[(((([[[(([((([([((([[([[[[[(([[([[([[(([((([[[(([[((([([(([[([([[([(([(([[[[([[(([(([[([(([[[[[([[(((([[[[[[[(([[[(([([[[(([[[[[[([(([([(([[([[(((([[[(((([(([[([[(((((((([[([[([(((((([[([[([[([[([[[[((((([([[[[[([[[([[[[[([([[([[([(((([[[(([([[[((([([[([([(([[(([([[[[((([((([([[(([[[([[[(([[[[[((([(((([(([([[(((([((([((([[((((([[[[(([(([[[[([(([([[(([[[[([[[[((((([[((([[[[[[[(([[[[(([([(([(((([[[[((((([([((([[([[(([[[([[([([(([[[([(([(((([(([([([((((((((([[[[(([[[[([([[[([((([[(([[([((((((([((([([([([[[[[[[([[[(([[(((((((([[([([([([[[[[((((([[([[[[([([([[([([[(([([[[(([[[[([[[[[([[[[(([([([(((([([[[(([[((([[[[[(([(([[[([(([(((([(([[([(((([((([(([[([[[[(([((([[[[(([((([([[[[([(([(((([([(([([([[([([[((((((((([([((([([([[[([[([([([([(([((([((([[(([[[[[[[[([((((([[[(([[[[([[[([([[[[[([[[[([[(([[([([(([(((([([[[(([[([[[[([([[([(((([[([[[[([[([[[([[(((([[[[[((([([([(((([([[[[[[[([(((([([[([[[[[[[([([[[(([([([([([[[[((([((((([(((([[([[[[[[([[(((((([[[[([[([[[[([[[[[(([[[[([[[((([[[[[[((([[[[([((([[(([[[([((([((([[[[([[[[[[[([[([([[(((((([(((([([([(([[(([[((([[([[[(([(([[(([[([([[[[((([[[([[[([[[((([[(((([([([[[([[[[[(([[[([((((([(([([[[[((([[((([[([([[((([((([[[((((([[[([(([((([([[([[[[[[[([[[(([[(([[[((([(([(([([((([([[(([(([[(([(([([(([([([(([[([((([[[[([([[([[((((((([((([(([([[[([((([(([[[[[[(([[(((([([[([((((((([(((([(([((([[[[(([[([(([[[(((([[[(([(([[[[[(((([[[[(([([[(([([(([((([([(([((([((([((([[[((([([[(([[[((((([([[[([[((((([([[(([[[[(((([([[(([[([(((((((([[[[[([[[((([[[(((([(((([([([([((([([([[[(([(((([[([((([([(([[[[([((((((([(([((([[((([(([[[[([[(([[([([(([([((([([([((([([[(((([([([[[([[(([([[[([([([[(([[([[([((([[(([[[[[(([([(([[((([[[((([[([[((([[([[[[([([([((([((([(([[[([(([[(((([([[[(((([[(([[[[([[(([([(((([[[[(([[([[[((((([([([[((([[([(((((([[([[[([(([((([(([(([([[(((([(([([[(([[(((([[[[[[(([(([[[([([(((([((([[([(([[[[[([([([(([([((([(([[[([[[([((([(([[((((([[[(([[([[[([([(((([((([[[([[[[[[((([[[(([([([[([(([[[(([([([[[((([[[([[((((((([[[([[([(([[([([[([[((([(([[[([[(([([[([(([[[[([[[(([[([(([([[[[[[((([(([((([[[[[[([([(([(([([((((([([[[(([((([[[([[[[[(([([(([[((((((([[([((([(([[((([(([((([([[[[[([[((((([[(([(([[[[[[([[(([[((((((([(([[([([(([(((([([([(([([[[[[(([(((([(([([[((([(([(([[([((([[((([[[[[([[[([[(([[[([([([[[([[(((([([[([(([[[[[[[([([[((([(([(([((((([[[[[[((([[[(([[[[([[[((((((((([([[([([(((([([((((([[[[[[((((([[([((([[[((((([[(((([([[([(([(([([[((([(([[([(((([([([[[([(([(([(([[[((([([([[([[[[[(([[[(([[([[[((([([[[[((((([[[[[([([[([([([[([((((((([[[[[((((((([[(([[(([([((((([(([[[([[([([([[[[[([(([[([[([[([[((([(((([[[([[[[([[([[[(([[[((([(([((([(([(([[(([((([([[[[((([[[((([[[([[([(([((([[([[(((([((([([[((([[[[[[[([[[[(((((([[([(([((([[[([[[(([[(([[([([([(([(((([[[((([[[[([[(([(([[[[([[((([[[[([([[[[((([[([[([[((([([(([((([([(((([((([([([([[(([([[(([[[([[[[[[([([[(((([([([((([[(([(([(([[(((([([[([[([[[[[((((([[[(([[(([((([([[([[([([[([([[[(((((([[(([([[[([(([(([[([[[((([([[[[((((((([((([[(([[(([([[[([(((((((([([([([[[[(((([((([([[[((([[([([([[([[[((([(([[(((([(((([[[[[([[(([[(([[[(([([(([(((((((((([[([[[[([[[([(([(([((((((((([([[[[([([[[[[([[[([(([(((((((([(([[[(((([((([([[[[(((((([([[[[[([[((([((([([((([[[[([[([(([[[[([[([([[[[(([[[[[[(([[[(([([(([[[([[[[[[[[[[[(([[[[([([(([(([[[[((((([[((([[[(([[[[[[((((([[([((((([([[([(([(([([((([([(((([(([([[[[([[[[[(([([(([([((((((([([([[((([(((([[[[([[[(([(([(([([[([([([(([[[[([([[((([[[(([([((((([[[[[[([[(([((([[(((((([[[[([[[((([([([[([[([[[[[[[[((([[(([(((([(((([[[((([([([[[([(((([[([(((((([([(([[[(([((([(((([[([((([[([[(([[[((([(([([([([(([[[[([[[([(((([([(([[((([([[[[[(([(([(([[[([[([(([[[[(((([([(([([([[(((([[[([[[([[([((([[[([(((([[([[([(([([[([(([[[[(([(([([([((((([[([(((([([(([[(((([(([[[[([(([[([(([[([([[([[([[[[[[[((((([[[([((((([([(([[([([[((((((((([([[[(((([[[(([((([((([[[[([[[(([[([[(([[[(([([([[([[([[(([([([[((([(([((([((([([([[((([([([[[[([[(([[[(((([[[[([[[(([[[[((([(([[(((((([([[(([[(([([(([(([[([[[[(([((((([(([(([[[(([(([(([[[(((([((((([[[(((([([[[[[(([[([([([[(([([[(((([[([[[[[([[[[((((([(([((([([([([((((([[[[[[([[(([([([([([([[(([([[([(([[([(((((((([(([([((([((([[([(([([([[((([(([([[(([[[[[([[[[(((([[((([[((([([[(([[((([[((([[[([([[[[((([[[(([([[[[([(([[[([[([[[[([([[(([[((((((((([([([(([([([[([([([(([[[(([((((([([[[[[[[[[[([([([(([((([[(((([[([[[([(([[((([([(([[[([(([([((((([[(([[([(([[((((([[[([[[([([([[[([([[([[([(([(((([(([(((((([(([([((([([([([[[[([[([(([[[[[([([[(([[([[[[([((((([(([([((((([[([([[(([([([[([[([(([((([[(([[[(([([[[[([[([((([(((((([[[([([[([([([[(([((([[(([([[([[[[[[[[([(((([([[([[(([[[(([[(([[[((([(((((([((((([([[(((((([[[([[(([[[[([[[(([(([([([([([([[([([[([(([([(([[[(([([[[[([((([([[[[((([[[[(((([[([[(([([[[([[[[[[(([[[[[[[(((([[[([[[[[(([[[[[(((((((([[((([([([([[([([([[([([([([[((([[[[[(((([[[[(((([[[((([(((([[[(((((([[[[([[(([(([((((([[(([([[([((([[[([[([[(([[[([[[([([((([[([[[(([([([((([[([[(([([[([[(([[([(([(((([[([[([([([(([([([[(([[(([([[([[([[([((((([[([[([[[[(((([[[[([(([(((((((((([[[([[([[(([[([([([([([[(([[([((([[[[[[[([[[[[[((([[([((([([([[([[((([((([([(([([(([[([([[[[([[((([([([[[([(([[(([([(((([[((([[([[[[[([[[[([[[[(([[[[[([([[([[[([[[[((([[[[([(([(([([[([([(([[([([[([[[[([[([[(((([((((([([(((((([[([([[(([([[[([(([[[[[[[([([[(([[[(([([[(([[[(((([((([[((((([[[([[[[([([([[(([(((([((([((((([([[[[([([[(([[[((([[([[(((([[((([[[[[[[[[([([[((([[[[([[[[[([[([((((((([(((([[(([[(([[[([[(([[([([([([([[[[([[([[[[[((([[([[(([[[[([((((([[([[[([[((((([[[([[([([(([[[([[[(([((([([[[[([([([((([([[([[[([[((([[[([([[[([[([([([[[(([((([[(([[[([([[([([[((([(((([([[[[[[(([[([[([((([[((([[([[([[([([(([[([[([[[[[([[(((((([[[((([([(((([((([(((([((([[([(([([[([[[([[([(([[[(([(([([([([[[(((([[[[((([[[(([([[([[([(((((([(((([[([[([((([([[[[(((([([([([([([[[([([[((([(([([(([[[[[(([((([([[[[(([([([(([[(([[(([(((([([(((((([(([[([[([([[[[(((((((([[(([([(([([((([[(([[([((([(([(([[[[[[[(([[((([[[[((([[(([([[([(([([([[([[(([[[([[[([[[[[(([([[([[((([[[([([(((([(((([([((([([[[((((([[[([(([([(([(([([([[([((([([[[(([[[[[[([([[([[[[[(([[[([[[(([(([([[[[(([(((([[[(([[([(([(((([([([(((([[[[(([(([[[[[((([([(([[[(([([[([([[[[[([[([[([[([[[[[[[[([[((([[[[[(((([(([[([[(([[([[([([[[[[(([[[[[([([[(((([(([[[((([([[[[[[([((((([[[([[([(([[(((([[([[((((((((((([([(([((((([([[[(([(((([((((((([[([([(([[[(([[(([[([[(([(([[([([[((([(([([[[((((([((([([[[[([[((((([[([[(([[[[[([[[([[[[[[[[[([(([[((((([[[(((([[[[([(([(([[(([[([([([[([([[([[([[[(([([[[[[[([[[((((([((([[[([[[[([(((([([([(((((([[([[[([((([([[(((((([[[[[[[([(((((((((([(([([(((((([[([[[((([[(([[(([([[([([((([([[(((([([([([([[[[[([[([(([[[[((((((([[[[[(([[[(((((((((((((((((([[([[(((((([[[[[[([[([([([[[[((([([(([[[([[([([([(((([[(([(([[[((([[[(((((([[[[[([([[((((((([[((((([[[[(([(((((([[(([((([([[[((([((([([[[([[(([([(([[([[[[(([(([([[[(((([([([([((([[(([[(([[[[[[([([[(([[[[[[([(([[(([[[[([[([[(([[(([(([[[[((([([([[[(([[[[[([(((([((([([[[((((([([[[[[[(([(([([[(([[(([([(([(([([((((([(([(([(([[[(((([([([(((([[[[[[[[[([[(([[(([[([(((((((([([[([[([[[[([(([[[((([[[((((([([[([[[([[[[[[((((([[[[[[[([[([[(([(([[[(((([(([((([[([([[(([(([[((([((([([([((((([[[([[[[[[(([[([[[[[([[[(([[[[([((([[((([((((([[([[[((([([([(([[[(((([[([[[[[[[[(([[[[([([([(((([[[[(([[[[[[(([[([([(([([[[([[([([[[(([[[(((([[((([[(([[([[[[(((([[[[([[[[(([[[((([([(([([[([[[[[(([((([[[[[([([([([[[[[[[(((([((([(([(((([[([([([[[([([([([([((([([([[[((([[([([([([([[[(([[[[([((([[[([([(([[(([[([(([(([[[((([[((([([[[[[[[((([[[[(((([([[[[(([((([[((([(([[[[[([((([([[[[([[(([[[[[[[[[[((([(([((([[[[([[(((([(([[[[([[[([[([[[[[[[[[([[[(((([[([[[([(((([[([[([[[([[([[[[[(([[[[[[([((([(([[[[([(([[([([(((((([(([((([([((((([[[([(((([([((([(([(((([[[[(([[[[[[[[[[[([[[[([[[[[([([[([[([(([[([((((([[[([[[[[(((([([([[[([[[([[([[(((([([[[(([((((([[[([[[[[[((((([[(([[(([([(([((([((([([[((([([[[[(([[([[([[(([[([[[(([[(([[((([(((((([([([[[(([[(([[([[[[(([[((([[(((([[[((([[([[[[(([[[[[([([[[([((([[[((([([[[[[((([([[([[[[((((([[([([[[[[[[[([[((([[([([[([(([[[([[[(([([[[[(([[[([[([(([(([[[([(([[[[([[((([(([([[[(([([([[([([([((([[[[((((([((((([(((([[[[((([((([([[(((([[([(((([[[[[[(((([([([[((([[[[((((([([[[([([[[([((([([[[[(((([[([[((((([[[([([[(([[[([[[[([[([(([(([[[([[((([([([[((((([(([(((([[([([[[([[(([([([([[((([([[[([[[[(([[[([([[([([([(([[[[[[(([[([[(([[[([[(([([([[[(((([((([[[[[([[(((((([[[[[[[[((([(((([[[([[(([[[[[[[[[[[[[[(((([(([([[(([[(([([[(([[[([[[[[[(((([[[[([[[[[[[[(([[[(([([([((((((([[[([[[(((([[([([[(((([(([([[[(([([[([([[[[[([[[[[(([((([[[[([([([[([[([([[([[[((([((([[([[(([[[([(((([[[([((([(([[[([([[[(((([([([[[[((((([(([(([((([[[(((((([((((((([([([[[[([[(([([[[((([[[[[[([(([([[([[[[[(([([(((([[[[((([(([[[([[[[[[[([([[[[([(([(([[[([[([[([[[[((((([[([(([[[([[[[([[([(([[([(((((([[[[((([([([[([([((((([(([([[[(([[[[[[[[[(([[([[[(([(([([[[[(([[[(((([(([([[([[([[((([[[([[[(([[[((((([([(([[([((([(((([[([([[[([[(([([[([[[((((([([((([[([[([[(([[([[([([(([[([[[[(([([[(([[[(([([[(([[([(([[(([([[(([([[(([(([((([([[[([([[[([[[((([[[[[([(([(((([[[([((([[([([[([[[(([[[(([([[[[[[((((([[((([[([[[[([((([[[(([([((([([[(([(([((([((((([(([(([[[([[[(([[[[[[[(([([[[[[([[[[[([([([[[(([[[[[[(((([(([[((([[[[((([((([(([([(((([(([[[((((([([([[[[[[([[[([(([(((([([[((([[[[([[[([[((([([([[([[[(([([([[([([[([[((((([[[([[[((([([[(([([[[([(((([[([(([(([[(([((([(([[([[[[([(([((([[([([[([[[[[[([([[[[[[[([[[[[(([[[((((([[([([(((([([[([([[(([(([([[[[([([[([((([(([([[((([(([([(([([[(([(([[[([(([([([([([[((([((((((((([[[[([[[[([([[(([[[[((([[(([[((((([[[[[[(((([[([[(((([[([[[([((([[[([((((([(([[[((([([([(([([([[(((([(([[(([[[[[([([[[([[[(([[([[[(([[[(([((((([[[[[(([[[(((([(([((([[[([(([[(((([[([([[[(([((([((([([[[((((([(([(([(([([(((((([(([([([[([[(((([([((([[(((([([[((((([[[[(([[((((([[[[((([[(([((([[([(([[[([(((([[([((([([(([[([[(([((([[[[[(([[[([((((([([[[([([[[((([((((([[((([([[(([((([[([[((([(((([(((([[[[[(([(([([[([(([[[((([[((([[(([([[[[[[([[(([(((([[[([((((((((([[[[[[(((((([(([[[[[((([[([[[[[[[[([((([[[[[[[[((((([[[[([[(([([[(([((([(([[([([([[([[[([((([[([([[[(([((([(([([(([[[[[((((((((((([([[[[[((([[[((((((([(([((([[[([[([([(([([[((((([[[((([((([[[([(([([[((([([([((([[[([([([[[((([[(((([([(([([[(([[(([[[[[[[[[(([[(((([[(((([([((([[[((([([([(([[[[[[[[(([[[[([(([([([[([(((([[[[((((([[[[([([[(([([([[((([([(((((([([[([([[[[[[(([([([[[(([[[(([[[[((([(([[[(([(((([[[[[[((((([[[(([([[([([([[([[[(((([(([[[[[[[([([[[[([[[(([[[(([[((([(([(([(((([([[[([([(((((([[([[[(([[[([[[([[[([(([((([([[[([[([([[[[[(([(((([[(((([(([[([[[[[[(([((([([[[[(((([[([(([([([([[(([[([(([[[[[([(([[(([[[([(([[[([(((([(([[(([((((((([(((([([[[((((([[[((([[[([(([[(([[[[(((((([[[[[([(((([[[[([[((([(([[[(([(([[[[([[[[[[[[[[[[[[[[[(([(((([[(([(([(([(((([([[([((([[[[(((([[([([([([[([[(((((([([[([[[(((([([([(([([[([((((([(([[[[([(([[[(([([[(([[([[([(([((([[([[[([[[[(([[([[[([([((([([[(([([[[[[[[[[(([[((([[[([[([[([(([[((([([[((([([[[[[[[([[([[((([[[([[[((((([(([([((([[(([(((([[(([[[[([[(([([[([[([([([([(([[[([[[[[([([([[[[(((([[[[([([(([(([((([(([((((([[[[[[((([([((([[[[[([(([[[((([[(((([[[(([[(([[[[[[([([((((([[[(([(([[[((([([(((((([[(([([([(([([(([([[[([(((([[[(([([[([((([(((([((((((([((([(([(([([([[(([[([[(([[((([([([[[[[[(([[([([[[[([([(([[([[[((((((([(([((([(((([([[[[[[([([[([([[([([[([([[[[[[(((([([[([[([([[[[[[([(([([([[((([[([([([([[((((([[[([[[([[(([(([[(([[[(([[[[(((([[[[(((([([[([[[[([[([((([(((((([[[([([([([[((([[([([((((([([[[[[[[((((([[([(([[[[(([([[([[[([(([(([[[([([[[([[[(([[(([[(([(([[[(((([[[[[[([[[(((([([[[([([[[([[[((((([[([[([(([[([[[(([([(([[[[[[(([[[(((((([([[(((([([[[([([([[((([([((([((([[[[[[([(([([(([[([([[([((([([[((([[([(([(([[(([(([(([(([[([([[(((([[[([[[([(((([[((([[((([([([((([(((((([[(([[([[[[[[([((([[[(([(([((([([[(([([((([[([(([([[((((((((((([([([[(([[(((([([[([(([((([[((([[(([(([[[[[[(([(((([[[[[([[([([([([[([[(([((([[[[[[[([[([((([((((([((([[([[(([[[[[(((([[(([([([(([[[((([(([[[[([([[([[([[[[([(([[[[((([([([[((([[[(([[[([(([[[([(([(((([[((([[(((((([[[[([((([([(([[([[[[[([[([[[[[[((([(([[(([[([[[((([[((([[[[([[((([(((([[(([([([((([[[(([(((([([([([(([([(([[[[([([([(([[(([([[[(([(([[([[([[(([(([([([[[[[([(((((((([((([([[[([[[[(((([(((((([[([([[[(((([[(((([(([([(([([((([([([((([(([[([([(((([([[[((([(([[([[((([(([(([[[(([[([[((((([(([([([[([[((((([([(([[((([[[[[([(((([[[(([([([[(([(([(([([([[([[[([[(([(([((([[[(([((([([[([(([([(([[(([(([((([[((((([[[[[[[([(([[([(([[[(((([[[(([([([(([[(([[[[([(((((([[((([[[[[[(((([[[[(([([([[[([([[[[[[[([(([[((([([[([([([[([(((([[([([[([(([([(((([[[([((([[[([([(([[[[[[[[[[[(([[(([[[(((([[([([[(((([(([([([(([[[([([([[([([(((((([([(([[((((([[(([[[[([(([(([(([(([[[[((((((([[[(([[[[[[([([(([([[[([[([[([[((((([(([([[(([((((([((([[[(((([[[(([[[[[[[(([[([[([([([([[[[(([((((((([[[(([[[(((([[[[[[[[[([[[(([([((([([[((((([(((((([[[[((((([[([([[[([([([([[(((([[(([([[[[(([[[[[[[[([[[[((([[[[(([[[((((([[([(([[(([((([([[[[(((((((([(([[([[[((([[[[[(([[((([(([([[([([[[[[([([((([[[([(([([(([(([(([([([([((([[[[((([[(([(([[[[([[[(([([([(([([[[[[([(([[[[([[(([[([[(((((([[[(([[((([[(([(((((([[([((((([([([[(([((([((([[[[[[([[([(([([[(([[([[[[[([([[[[[[(([[((([([[([((((([[([(((([[[[(([[[[[([([[[(((([([([[[[[((([([([[([[((([([(([([[[(([[[([[[[[[[([([[([[([[(([(([(([[[[[([[([[[[[(([([[[([[[[[[([([[[([[([[(([[(([([([[([[([[([[[(([([[(([([((([((([[([([[[([[[(([[([(([([[[([[(([[[[(([[[([[([((([(([[((([[([[[([[[([(([[[[[([(([[((([((([(([[([[[[([((([[([[[([[[[(([([(((([[(([(([[(((((([[[[[(([([[([[([(([((([[([((((([[[(((([[[([([[(((([[(((([([([[([[[(([[(([(((([[(([(([[[([[([(([([([(([([[[([([(([([[[([[[([((([([(([(([((([((((([[[(([[[[[([[(([(([[[([[(([((([([(([[((([(((([[([[((([[([(([((([((([[[((([[([[[(([([([((((([([(([[(([([(([[([[[(([(([([[((((([([([([([([(([[([[[((([(((([(([([(([([[([([[[([([((([(([[[(((([([[[[[[([[((([[[([((([([[(([[([((([([([([[[([(([[[([(([[((((([((([([([([((((((([[[[(([[([[([(([[(((([[([(([(([(([[([((([[([[((([[((((([(((([([[[[((([([([((([(((([(([((([(([[[((([(([([[[(([((((([([(((([[[([[[([([([[([[([([[((((([([([[[([[[(([(([([(([([[[[[(([[[[[([[[([(([[[(([[[([([(([[(([[(([([[[(([(([[([[(([((([[((([[[([([(((([([([[[((([([[([((([[[([(((((([((([[[[([[[((((([[([[([[([[[[[(([(([(([([[[([[([((([[[[(([([([[([([[[([[([((([(([[(([[([[[[[(([((([((((([([(([[[[[([[(([[((([(([[([([(([([(([(([((([([[[([[(([(([(([[[([(([[[([[([[[[[[[([([[[[[[(([([([[[[([[[[[((([[([[(([[(((([[(([([([[[[([(([([[((((([[([[[[[[[(((([[(([[((([(([(([([((((([[(([[[([([[[[(([[((((([(([(([[[([[([(([(([[(([((([[[[(([[(([(((([[[([[(([(([[(([[[[[[[[([[[(([[((([(([[[((([([([(([([[([[([[([([[[[[[([[[[([(([[[[[[[((([[([([[((([[[[(([(([((([[(([[(([([((([[(([([[((([[((([[[([[(([[([[([[[[(([[[[[[((([[([(([[[((([[[(([([([[((([((([[[[([[([([[[((([[[(([[[[[[[[([((([[[((([(([([[([[(([((([[(([[[[[[[[[[[((([((([([(([[(((([[[[((((([[((((([[[[[[([((([([[[(([[[[[[([[([[(([[[[(([[((([((([(([([((([[((([[[[[([[((([(([((([([([[([(([[(((([((([[(([(([([(([[([[([(([[[[[([[((([([([[[[([(([[(((([[((([[([([[[((([[(([[[[[[[[[[[[[[[[(((([[[[(((([(([[([((((([([[((((([[([[[[[(([(([[[[([([([([([[(([[[([(([([[[[(((([((([([([(((((([[[(([[([[[[([([([[(((([[((([[([[[(([[[[[(([([[(([[([[[[[[([((([(((((([[(((([[(([[([((([(((([([((((([(([[[[([[(((([[[(([(([([[(([[[[((([[(([(([((([[((([([(([[[([((([([(([([([[(([[([(([[([([((([(([[[[([([((((([([(([[[[([[[[[[[[[[(((([[([[((([[[((([(([(((([[(([[[([[[(([(([([([((([([([((([[[((((((([(([[[([[[([[([([[([[[[([[([(((((([[(([([[[(([([([([[([(([[[[[[[([(((([[[[(([[[((([([[(([([[[[((([([[(([[[[[[([[([([[[[[([([(([[((([([(([(([[[[[([([([[([[[[(((([[[(((([[([[[[([[(((((([[[([[([(((([(([[[([[([[[(([[[(([[[[((([[[([[[[[([(([[[[[[[[[[([[[[[[(([[([([[(([([[(([[((([([((([((([((([(([[[([(((([(((([(([[[[[(([(((([[[((([[[([([([([(([[[[[[[[([[(([[[([[(((([[[[[([[[[[[[([(((((([[[[[[[[([([([[[[((([[((([([[[[([((([[((((([[([[(([(([(([[[([[[[[((([[[[([(([[(([[(([([[((([(([(([((((((([(([([[[((([[([([((([([([[[([([([((([[[((([([[[[[[[([(([(((((([[([([[(((([[([[[[(((([([[[([[[([[[([([[([[([[((([[[(([[[[[(([([(([[[((([[(([[[(([(([([[([((((([[[[(((([[([(([[[[[(([(([([[[[([([[[(([([([[[[[(([[[((([[[[[[((([([((([([([(([[([((([[[[[((([([(([[[[[[[(([[([((([([[[[([([[[([[(([[(([[(([([([((([[(([([((([((((([[([[([[[(((([(([[[[(([[([((([[[[[[(([(((([((([[((([([[[([([(([((([((([(([[([([[[([[(([[([(((([[([[[[(((([(([([[[[[((([((([[([[((((([[(((([[[[([[[[([[([(([([((([[((([[([([([[[[((((([((([((((((((([[[((([([((([[((([((([(([[(([(((([[[((([(([[(((([[[([((([[[[([[[[([([([((([[[[([([(((((([[[(([(((([[(([(([[([([[[[(([([[([[[((([[([[[[[([[([[(([[[([(([[([([(([([[[[([(([[([((([[[[[([((([[[[[([[([[[(([((((((([[[[[(([(([(([(([((([[[(([[(([[(((([(((([[[([([(([[(([[(([[[([[(([((((([([(([(([[[([(((([(([((([([[[[[[[[[([[[(((([[([([[[([[(([([[(([(([[([[[[[[[[[((((([([([([([([(([([[[([[([[[[([[[[((([((([[[[[[[[([[(([(([[([(([(((([([(((([[[[[[(([((([[(([(([([[([[[[[[(([[[(([[(([([([([[[(([[([[(((([[[[([[([([(([([[([[[((([(([([(([[[(((((([([[([([([[(([[(([([[[(([[[[[[([[[(([([(((([(([[[[[((((((([((([[[[(([[([[[[[[[[[([[[(([((([([([[[(([([(((([((([([([[([([([((([[((([(([([[((((([([[[([([[[[(((([((([[((([(((([([[[([([[[(([[[([([(([[((((([(([([[(((([[(([((([([(([[(((([[((([(([[[[([((((([(((([[[([[([[([([((((([[[(([[[[((([(([[[[[([([(([((([([(([[[([[([[[((((([([[([([([[(([([[[(([([(([([((([[((([((([([((([([(((([[([[[([[[(([((([((([[[[[(([([(((([(([((([((((([[(([[[([([[([[[([([[[(([((([[[[[[[([([([[[((((((([[((((([([(([[(((([[([[[([(((([[[[[([([([[[[([[[(([([[([[[[(((([[[((([([[[([[[[([[([((([[[([([(([[([[((([[([(([[([(([(([[[[([[[[[[[(([[((([[[[([[([(((([((((([(([(([[[[([([(((([[((((([[[([[((([[[[([[(([((([[[(([[([[([[([[[[[[((((((([([[[(([(([([([[(([([[([(([(([[(([[(([[((([[[([[[([(([[[([[[[([[[([[([((([([[((([[[[[[(([([(((([([([(((([([([((([[([([(([[([([[([([(([[([([([[([([[[[((((([(((([[[((((((([[((([((([[((((([([(((([(([([[[[([([[(((([[((([([([[[[[([((([[[([([((([(([[((((([[[([([([[[((([[[[([([[(([[[((([((([[[[((((((([([(([([(([([[[[(([([[[[[(([[[[(([(([[[[(([[[([((([([((([([(([[((([([((([([(((([([((([[[[[[([(([([([([[([[[[(([(((([[([(([((([([[([[([[([([[(([[([[[[([([[([(([[[([[[(((([[[([[[[[[(([([([[[[(((([[([[((((([[(([[[[([(([[(([[([((([([(([[[(([[[[(([([([[[[((([(([(([([[[[[[([[[((([[(((([[[([[((((([[([(([[((([([[[[[([([[([[([[([[[([(([[(([[([((((([((([[([([(((((([[(([((([[([((([[((([([(((([(((([(([[[[((((((((([[([[((([[([[[([[[(([[(([[[[(((([(([[(((([[[[[[([[[[[[([[[[[[((((([([([[[[[([[(([(([([[(([[[[([(([[[(([(([([[(([[[([((([[[([([[((([(([(([[([(((([(((([((((([([[[(([((((([([[[[[(([[[[[([([[[[(((([([[([([[[[(([(([([([([(([[([([[(([[(([[(([[[[[([(([[[[((((((([(((((([((((([([[([([[(((([[[[[(((([([[([[[([(((([[[[[(([[((([[[[[[[[([([(([(([[(((([((((([([((((([((([[[[[(([(([(([((([([([([(([([(([(([(([([[[(([((([([[[([([((([[([[([[(([[(([((([([[[[[([((((((([[[(((([[[([([((([([((([[[([[[((([([((([([[((([[[[[[[[(((([([[[[([((([[[[([([[([[([[((([((([[[((([[([[[(([(([[(((([[[[[[([[(([[((([[([[[[([([(([([[([([(([[[[[([([([[[[([[(([((([([(([[((([(([([([[[(((([[([[[[[((([((([[([(([[([[([(([([[[[[[([[[[[(([([[([[(((([[(([[[[[([[[(([((([((([([[([(([[(([[[[(((([(([[[((([[[[[[[(((((([(([[[([(((((([((([[[[[(([[([[[([[[((([[[([(((((([(([[([[[(([([[([(((([[[([([((([([([[((([([[[(((([((([([([[([[[[([((([[[((([([(((([((((([[(((((([([((([[([([[[[[([([[[([[([[[([[[[(((([(([((((([[[[[([([[[((([[([(([[[[([[[[[(([(([[([([[(([[[[(([[((([[[((([([[([([[[((((([((([[(((((([[(([[([((([(([[(((((([[[((([[(((([(([([[([(([([[(((([([([([([(([[(([[[[(([([[([(([([[([((((([[[[[(([(([[[[([([(((((((([([[[[[([([[[[[[[[[([((((([[[([[[([([(([[[(([(((([([([([((([[([((([[([[[[(([(([[[[[[[([([((([([(([[[([[((([([[(((([(([([([([([(([([(((([[([[([(([([([[[(([[(([[[[[[([([([[([((([(([[[(([[[[[(((((([[([[[([[([([[[((((([(((([([([([[([([[[(([(([[([((([([(([((([[(([(([([(([[[[[([[([[(([([[([[[[([[([[[([[([((((((((([(([([(([([(((([[(([([[([[((((([[(((([([((((([[[[([[[([[[([(([[([[[[[([[[[[([[(([(([[[[[(((([[[[([(([[([[[[[[[[([([([(([(([[([[([[[([([[[(([[[([[[[(([([[[[[[([[[([[((([([[([([((([[([([[[((([((((([([[([[(([[[[[([([([[((([([([((([[((([[((([(([(([[([[([((([[([[[[(((([[[(([(([[([[([([([[[(([[((([(([([((([([([(([((([[([[[[((([([([([([[[[(((([([([[[[(((([[[[([[[(([((([[([[[[[([(((([[((((((([([[[[[([[[[([((([[[[[([(([[((([([[[[([[[(([[([[([((([([[[(([[([[[[([([[([([((([([(([([[[[(([[[[[([[((([([(([[([[[[[([([[[([[[[(([(([([([[([[[[[((([[((([[[(([(([[[[([[([[([[(([[[(([[[((([[([([[[(([([([[([[[(([[[([((([((([[([((([(((((([[(([([[[((((([[([[[[[(([[[(((([[[[((([[([[[([[(([[([[[[[[[([[([(([[[([((([[([[[[[([[[[((([[([[([[[[[([(([[(([[[[(((([([([[[(((([([[(((((([[((([((([(((([[[([[[(([([([([[([([(((([[[[((([([((([((([((([(((([((([[[(((([((([[[((([([([[[[[([[[(([[[([[((([[([(((([(([(([([(([(((([[[(((([([[(((([[[[[[[[(([[([[[((([((([[([((([[((([([(([(((([[([(([[[[[[[[(([(([((([((([[[([([[[(([([[(([[[[([[(([([(([(([[[(((((([(([([(([[[([(([(([([([(([(([[[([([(([[(([[(([[(([([([(([(([([([[([([[[((((([([(([(([[(([[[([[([(([((([[(([([[[[(([(((((([([([(([[(([((([[[[[([[[(([([((((([[([(([(([[[[[((([[((([[[[[([[([([([[[[((([((([((([(([[[[((([(([(([(((([([[(([[[(([[([[[[[[[(([(((([((([[[((((((((((([[([(([[[(([[(((([([[[([([[[[([(((([[([(([((([([[[[(((([([([([[[(([([(([(([(((([([([([(((([[([([[(([([[(((([((([([([([(([[[[((([((((([[([(([(((((((([[[[([[[([[[((([[[(([[[[[[[[(([([[[((([((([[[([([[[[((([[[([[(([(((((([([[[[([(((([(([([[((([(([[([((([((((([([((([[[[([[[[([((([[([[[[((([(([[([[([(([([[(([[[[([(([[[([[[[[([(([(([(((([[[([[[([([[[[[[[[([(([[[([[[[[[[([[([[((((([[(([[((((([[[[(([([[[[([((([[([((((([([[[[([([[([[([(([(([([(((([([([(([([[[[[[([[([(((([[(([((((([([((([[[([([(([(([((([(((((([[[[(([(([[[[([[([[(([((([(([([((([[[[[[([[((([[([(((([[[[([([[(([[(((([(([[[[[((((([([[((([[([([[[([([[(([([[[[((([([[[(([[[[[([[[((((([[([([[(([(([((((([[[([(([[([[(([([[[([([[[[[[(([[[[(((([[(([(([[((([[[[[[[([[[([([[[(((((((((([((([([[([[[[[(([[(([[([[([([([([[[([[((([((([(([([((([(([(([((([[((([[[(([([([[(([[((([[[([(([[(((([((([[[[[([(([[([[([(((((([(((([[([([[[[([[([[(([[[[(([(([([[[([[((((([[(((([[((([[([[(([(([[[((((([(((([(([[[([[[(((([([([[[[([([([(([[[[[[[[([(([[[[(((([(([([(([([([[[([([[([([([[([([[[[(([([[((([[([[((([[([[([([[[(((([(((([([(([([[((([[((([((([(([([([((([[(([[((([[[[[[[[[([([((([[(([(([[[(([([[[(((((([[(((((([[[(([(([(([[[[[[([(((([(([[[[[[(([((([[[([[[(((((([[[(([(([([[[[[([([[([([[[(([([((([([([[[([([(((([[(((([[([([(([([([(([([([[[[[([[(([[((((([[((([[[(([(([[[[[([[[((([(([[(([[[([[[[[([(((([[([[([[[([(([([[([(([((([[([[[[(((((([([([[[([((([([[[[([[[(([[(([[[((([[([([([[([([(((((([[([([[([([((([[([([([((([([([[(([[([[[[(([[[[[([((([([(([([[[[([[[[([([[((((([((([[[[([[([[[([([[[[([((((([[(([([[(([((([[(([[[([[((([(([([[[((([([[[(((((([[([[([[([[([[[[((([[[[(((([(([([([[([[(([[[[[([((([[[[[[[[([([([((([[([((([[([[((([[[([(([(([([[([[([[(([[[[[(([([[[(([(([([([[((([(([([([[[[([([([[((([([[[[(([(((([[[([((([([([((([[[(((([[[[[(([([[[[[([(([([([([(([([[(([[([(((([(([([((([[([[[([[[(([(([([[[([([([[([([((([[[(([[((([([[[([[([([(([([[([(([((([[([([[[((([[([(((([[[([[([[[(([[[[[[[([([[(((([[[[[(([((([([([[[([[[[(([(([[[[[([([([((([(((((([[[[[([[((([[([[[([[[[(([(([(([[([[([([[(([[([([([[([[(([([([[[[[[(([[[(((([[([((([[[(([((([[([([[[[[((([[((([[([[[[(((((([[(([[((([(([[(([[(([(([[[(([((([[[(([[([((([([(((((([[[[[([(((([((([(([[[(((((([(([[([([(([([((((([[(([[[[[[([((([(([[[([[[[[[[[(([[[[((([[(([([[([([([((((((([([[[(([[([[([([[([((([([[[[((([[[([((([[((((([([((([([([[[[[((([(([(((([([((([[(([[([[([(([[[[[([([(((([[[[(([(((([((([[([[((([([[([([[[[(((((((([(([(([([[[([(((([([(([[([([(((([[(([([((([([(([[([([(([([[(([[([[[[[[[(([[[([([[[(([[[[[[[((((([[[([[((([((([[[[(([[([((([[([[([[[[([[(([([[[[[[[[[[(([[(((([[([([[(([[[[([[(([[([((([[[[[([[[[[(((([[((([[[[[[[([([[([([[([[[[([([(([([[[[([[([[[(([[(((([([[[(([[([[([[[((((([[[[([([[([[(([[[((([[[[[[(([[((((([([[[[((([([([([[([([((([([((((((([([(((([([[[(([[[((([([((([(([([(([[[(([([[([((((([[[[([([[[[[([(([([([[[(([([[(((([(([[[([((([([[(([(([[[[[([([([(([[(([[[[(([[([([[([(((((((([[([[[[[(([([([((([[[([([(([[([([[([[(([[([[[[([[[[([([([([([(((([[[([([(((([(([[[[([([[(([((([[([[(((((([([(([[[[[[([([(((([[([(([(([[[((((([[[(((([(([(([((([[(([[([[[([[([(([(([([([(([[[([[([(((([[([[[([([([[([(([((([[([[[((([(([([([(((([[((([([[[(([([[[([([[[([(([(([([[([([([[((((([[[[[((((([([[[[(([[((([[([[(([((((([([[([(((([[[[([[[[(([[[[(((([[[([(([([([([[[[[[([[[[((([((([([((([[[[(((([[[((((((([[([[[([([[([[([[[([[[[[[(((((([([([[[[[([[(([[(([(([[[[((((([([(((([[((([((([[[([([(((((([([[[[[[[[[(([[([[((([[[([[(([([((([((([[(([[[((([[([[[[[[[[[(([(([[[[([[(([((((([[((([[[([[[[[(((([([(([([[[[([([((([([[[([[(((((([[([((([[((([[([[((((([[([[[[[((([([([((([[[[[([[[([([[[[[([[[[([[[(([([(([(([(([(([([((([([([(([([[[([([([[[[([([((([(([([[[([((([[[[[([([(((([(((([[[(([[([[((((([([[([([([[[[[(([[([((([[[(([([((([((([[([([([([[((([([([[[[[[[(([([[[((((([[([(([[([[(((([[[[((((((([[[([[([[[[(((([[[([((([([((((([([[([[[[[[([[(((([(((([[[((([[[[([([[([([(((([([[([[[[[(([(((((([([[[[[[([[[((((([([(((([((([(([[(([([([[[[[([[([((([[[[[([([[[([((([([(([(((([((([([[[(((([(((([(((([[(([[([([((([[(([[[([((((([([[[[((([([[([[[[(((((([[[[((((([([[[[([([[[[([((([[([[((((([[(([([[(([(([([((([[([[[(([([[[([[[[[([[([([[(((([[[((((([[((([((([([[[[([([([[(([[[(([(([([(([(([[[[[((([([[[((((([((([[[([[((([(([[([([[(((([[[[((([[[[([([[[((([[[(([[(([((([[[[[[[[([(([[[[((([([[([([[[[([(([[[[[[(([[([((([([(([(((((([[([[((([((((([([[[[[[[(([[([((([[([(([[[[[([(([[([(([((((([[[(([[(((([([((([[(([[(((([((([([[[[[(([[[[(([(([[(((([([([[(([(((([([((([((([[[((((([((([([[((([[([[(([(((([([[([([([((([(([[[[[[([(([[(([(([[([[[(((([[(([[((([[([[[((([[((([([[([[[((((((((([[[(([(([[[((([[(([([[((((((([[((([(((([(([[[[[([[(([[(((([[([([(([(((((([[([[[([((([(([[(((((([(([[([[[[[([[([[[(((([(((([(([(([(([[[([((([((([[[[([[(([[((((([[[([[[([(([((([[[((((([(([([[((([([[[([[((([[(([[[([[[[[([((([([(([((((([[[([[([[[[[[[[(([[[(([([(([[([([([[([[[([[([[[([(([([[[[[[[(((((([([[[[((([[[(([[[((((([[[([[([([((([((([([(([[[(([(([[[[[((([([[([[[[([(((([[[[[[(((((((([[([([[(((([((([([([(([([(([((((([[[([[([[([[[([(([(([[([[[[[((([(((([(([[[[([[(((([[((([(((([[(([([((([[[[([(([([[[[[[((((((([[((([([([([((([([[[([[([([([[[[(((([[[([[[([([((((([(([([([([([[(([[[[[([[((([([(([[[(([[(([(([((((([([(([([([[(([(([[([([[[([[([([([(((((([[[((([((([([(([[((([([((([[([([((([([(((((((((([[((([([[[[[[(((([([[[[[((([[(([[[[[([[(([((([([([[[[[[(([((([[[(((([([[([([(([[([[((([[[(([([(([(([([[((([[[[[([(([[(([[((([([[[[(([[([([[(((([(((((((([([[[[((((([(([([[[[[[([[((((([([[([[(((([((([[[[[[(((((([([[([([[((([([[((((([(([[([([([[[(((([([[[(([[[[[([[[([[(([[[([([([((([([(([[[(((([[([[(((((((([(([(([((([[([([(([[([([(([[((((([((((([[([[([[[((((([[([[[([[([[[[[((([[[(((((([(([[[(([(([([[([[(((([([[[([(([(((([[[[([[(([([[[[([[[[(((([([[([[([[([([((([(([(([([[(([([[(([[[([[[[[[([((([([[[[(([(([[([([[[(([(((([([([[(([([[[([(([([[(([[([[[[[([([(([[[([(([[(([[(([([([[([[([[[((([((([[[[[([[[([(([[([[([(((((((([([([[[[([[([[[[(([[((([(([[[((((([([((([[[[((([((([[[[[(([[([([[[[(((([(([(([[[[((((([([[[[([([[((([[[(([(([[((([[[([([[[[[[([([(([(([((([((([([([([[([(((((([[[(((([((([([[[[(([([(([([[[[(([([(([[[[[[([[[([[(((([((([(([(((([[((([[[[([[(((([(([([([([((([[[[(([([[([[[[([[[[[[[(([[([[[[(([[[[[([[[(([([(([([(([(([[[([[[([[[[([([[((([([(([[[[([[[(([([(([([[[((([[(([[([([[([[([[([[([[([(([[[([[[([[[([(([(([[[((([[([([([(([[[((((((([[[(([[[[[[[([([[[[[[([([(((([([([([([[[(([(([(([(([[([[([([([(((([[(([[[([[([([((([[((([[((([[[[[([[([[[[[[[((([[([([[[[([[[[((([[[[(([([[[(([((([([(([[[[([[[[[([[(([[[[[[((([([[[[(((([([[[[[(((([(([([[[(([([[(([[[[[((([[[(([[([(([[[([([(([(([((((([((((([(((([[([(([(((((((([([(([((([([([([[([((([[(([[[[(((([[([[(((([(([([([[[[([([[(([[[[([[[(((((([[[[[([[([[[[[([[[(((([((([(([[([[[(((((((([([[([((([[[[[[[[(((([(([(([([[[[[([([[[[[(([([[[([[([(([([([[[[[[[([(([(([([([[[([[(([(((([([([((([(([[([(([(([[(((([[((((((([(((([[([((((([(([(((([[[[((((([[([[([[((([([[[[([[[[[[([[((([(([(([([[(([[([([[[([(((([([((([[((([[([[((([([([([[[[(([[([(([([[((([([[([[[((([([[([(((([([([[([(([(([(((((((([([[((([([[([[(([[((((([[(((((([[[([([[((([(([[([[([[[([[(([([[([(([[[([(([([((([[[[([([[(([([[[[(([(((([[[[[[(([([[(([([[[[([([(([([((([(([([[[([(([[[([[[[[([((([[([[[[([[[([(((([[([(([[(((([(((((([((([(([[(([([[[([[((([([[(((((((((((([[[[[[[(((([[[([[[([[((([(([(([([([((([[(((([([([([[[[[[[[((([[([[[[(([(([[(((((([[[(((([((((([[([[([[((([[((([([[[[([(([[[[[[([((([[[((([([[(([[([([([((([[([(((((((((((([[[[[([([([([([((([(([([[(([([([[([(([[([([[[[([[([[[[[(([[[((([([(((([(([[[[[([(([[[([[([[[[(([(([((((([((([[[[[[[(((([[[(((([[(([(([([([[([[[[[([([([(([[([([[[([([(([(((([[[([(((([(((([([[([(([((([([[((([([(((([(([[((((((([[[[[((([[([[[((((([(([[[([[([[[([((([[[[(((([([([[[[(([(([(([[([[((([([[([(((([([[(([[[[[[([[(((([[((((([((([([[([[[([[([([[[[[[([([[[(([((([(([[(((([[[[[(([[[[[(([[[(([[(([[(([[[(([([(([[(((([([([([[(([([[(([[[[(([(([[[[[[((([([(([([[[([[((((([([(((([[([([((([([(([[((([[[[(((((([[((([[[([([(([([[(([([([([([[(([([([[([[([[[(([(([([[[(([([([(([[(([([(([(((((([([[[([[((([[([(([(([[[[[(([[([(([[[[(([((([((([([(([(([(([(((([[[(([(((([(((([[([[[[[[(([[((([([[[([[[([([[(([([([((((([[([([(((([([((([[[[[[[([[[(([((((([([(([([([[[[[[[[[[[(([(((((([[(([[[[((([(([[([[([[[([[[((((([[[([([([[[(((((([((([((([(([(([([[([[[(([[[[(([([[([[[([(([([[([((([[[[(([[([[([[[((([(([[([([[[(([([([[[([[(((([[([([(([[((((([[[([((([[[[[[[([[([[[(((([[([[[((((([[[(([(([[[[[((([([[([(([[(((((([([[[[[([([[([[[[[([([[[[(([[([[(([[(([[(((([[[([((((([[([(([[[([[[[[[([(((([[[([(([[([[[[[([(((([[[((([((([(((((([[[[[(([([[((([([([(([[([(([[[[([[([(([[([[((([[[([([([([[([(((([[([[(([[[[([(([[[[[[(([[((([(([[(([([((([([[([([((([([[([[([([[[[[(([[[[(([((((([(([[[[[(((([[(([[[(((((([[(([[([[[([[[(([[[[[[([[(([([(([(([[[[[(([([[([(([[[([[[(([((([([(([[(([[[[[[(([(((([[([([((([[[[([([[([(([([[[[([[[(([[[[[([([((([((((([((([((([([([([[[([[(([(((([[([[[([(([([((([[[[[[[([[([[[([([[([[(((([[[[([[([((([[((([((([(([((((((((([([(([[[[((((([([([((([([(([[[(([[(([[((([((([[([[([[([([([[(([([(([([[(((([(([[[([[([[((([((([(((([([(((([(((((([[([([[[([([([[[[([((((([[[[([[(([((((([[([([[[([(([([((([[[([[[[([[(([(([([([(([[[([([[[(([(((([([(([[(([([[(([[(((([[[([[([[([[((([([[([([[(([[((((((([([[([([[[((((([[((([([((([((([[((((([([[([((([[[[[[([[([[[([([[(([[([[[[[([[(([[([[(([(((((([([(([((([((([(([(([((([([[[(([([[([[([([([(([((([[[([((((([[((([([[(([([((([([([([[[((([[[([[[[[([(([([(([([[[[(([([[((([[((([(([([[([(((((((((([[[[([[([((([([[[[[((([[[((([(([[([[[([(((((((([(((((([([[[(((((([([[(([([[[[[((([[(([[[((([[([[(([([[(((([[[[[[(([([([[[[[((([[[[(([(([[(([((([[[(([[[([((([[[(((((([[[[[(((([[[[([([([([(([[([[((([(((([([([((((([([[([([[((((([[[[((((([((([(((([([([(([[[[((([([(([[([[[[[([([[([[(([([[[((([[[([[([(([[[[((([[[((([[(([((([[(([(([[([[([((([(([(((([[([(([([[[[([[[[((((([([[([([[[[[([[[(([([(([([[[[([[[[([[[[(([[[([([[([(([([[((([(([([([[[(([[[(([[(([[([(([[([((((([[[((([([[([([(([([(([[((((([[([([[(([[(((([(([[[[[(((([([[(([[[[([[(([[[([[[((((([([[([[[([([[[([[([([([([[((([[[(([(([(([[[[([(([([[[(((([([(([([([((([[[[[[(([[[(([[[[([[[[([(([(([[([[([([((([[(([(((([[(((([([[(([(([[([[(([[[[[[[[(([[[(([[((([[[((((((([([([[([[(([[[[[([(([((([[[([[[[[(((([(([[((((((([[[([([[([[(([[((([[([[([(([[[[([[[(([((([(([[([[([([[([([[[[[[[([[[([[[[[[[[[[([((([[[[(([([[([([(((((((([[(([[[((([([[[([[(((([[[[((([([([([[[(((((([[[(([([[([([((([(([(((((([(([[(((((([[(((([[(([[[[([([(([[(([(([[[[(([[(([[[(([[([[[((([[(([(([[([((([[[(([[(([([[(([[[((([((([[([[([[[([(([([([([[[([([([[[[[[([[(([((([((((([(([(([(([[(([(((([[[(((([[(((([(((([(((((([(((((([(([([[([([[([([[[([[(([(([([[[[[([(([[(([[([[([(([([[(([[[[[[(((([[([([[([[[((([[[[[[([[(((([[[(((([((([(([((([(((((((([[[([[[([(([[([[[([[[([(([[(([(([[[([[[[[([(([[([[[[([([([[[[[[(((([[([[[[[[([[[([([[([([[((([[[[(([([[[[([[([(([[([[([([[[[[((([([[[((((([([[(((([(([[(((([[[[((([[([[[(([[[[([((([([([([[([[([[[((([((((((([[(([([[([[[[[[(([[([[([[([((((([([[(([[[(([[([([[[([((([((((([[[([((([(((((([((((((([[[[(((((([([((([[[(([[[[[(([[[([[(([[[[((((((([[(([[[(([[[([[[[(([[[[([(([[[((((([(((((([[[[([[[[(([[((((([(([[((((([([[([[([([[[((([(([[([[(([([[[([[(([((([[((([[[[[([((([((([([([([([(([((((([([[[((([([((([(((([(((([[([(([(([[(([[([(([[[(([[([(([([[([(([[[(((((([[([[[[[[([[((([[[([[((([[[((([[[[([[(([[(((([[([[[(([(((([[[[([[((([[[[(([(([([[([[([[[[[([[((((([[((([[[(([([[(([([((([[[[([([([([[([[[[(((([[[(([([[([(([([[(([[[[[([([(([[[((([[[(([(([([([([[([[[(([([([[((([(([(([[([([[([([((([[((([[(([[[[[[[([[(([[([([([[[[([(([[([([(([((([[(([[[[[[[([(([[[(([[([[([[[[([([([[([[([[[[[[[([[((([((((([[[[(([([(([[(([([(((([[(([[[([[[(((([[(([[[([[[([[((([[(([[[(([([([[(([(([(([[[[[[[[(([([[(([[[([(([([(((([[[([[([(([[(([[[[[([[[([(((([(([(((([((((((([[([(([(([[[[(([[[(([[((([[[([((((((([(([[[([([[[((([[((((([[[(((([[[[([((([[([([(([[(([(([([[[[([[((([([[((([[([([[[[([[([(((([(([(([([([([[([[[(((((([[(([([[[([[[([[[((([(([[[(([[[[(([([[([[(([(([([([((([[([([(((((([([([(([[(([([[[[[[[([(([[(((((([[[[[[(([([(([([[[([([[[(((([[[(((([(([[[([[([([[[[([(((((([[[[([[([[[[([([[([[[[([(([[(([((([([[(([([((((([(([((([([([(((([[[[[([([[[([([([[[([[[[[[([(([((([((([[[(([[[([[(((((((([(([([[[[(([[((([(([[([[[(([[[((([[[([[([([[(((([(([[[(((([((([[(([(([(([(([[((([((([[[[[((([((([([[([((([([([[([(([[[[(((((([((([[([[[[[(([[([((([(((((([[[(([(([([[([([([[(([((([[[[[[((((([([[([[[(([([(([([[[[(((([[(((([([(((([[((([[[([[(((([([((([[(([[([[[[(((([[[[[(([[(([(([[[[[[[[(((([(([(((((([[(([[([[(([[[([([([(((([([[[[[(([[[[[([(([([([[[(([((([([[[([[[[[[(((([(([[([[[(([[(([[((([[([[(([[((([[([[(([([([[([((([((((((([[[[[[[[((([[((([[([[[([([[(((([[[[(((((([((([((([(([[([[[([((([[(((([([(([([[[((([[(([[(((([(([([[([[((([(([([[([([(([([(([[[((((((([(([([[[([[((((([[([((((([((([([[(([[(((([[(((((([[([([((([[(([((([([([[[[(([[[([[[[([(([[([[[[([(([[((([([(([(([[[[(([((((([[([(((([[[[(((([[[[(([(((((([[[(((([[([[(((((([[[(((([([[[([((([[[([[(((((([([(([(([(([[([([((((((([[(([[[[[(([(([([([([([([[(([(((((([(([[[([([[[((([[[([([(([([[([([([[((([[((([([([([[([([[[([[[[[(([(([[(([[([([[[([([(([[((([[[([([(([[[((([([([[[([[(([[((((([[[[((([[([[[((([[([((([(([([((([[(((([([[([((([[(([[[[(([[([[([[(([[([[[[([([[[[[[[(([[([(([([[([([(([([([((((([[([[[([[[[([([([((([[(((([([[([((([[([([([([[[([[[[((([[[[(((([([[[(([([((([[((([([([[[[[(([[[[((((([[(([[(([([[[([(([([([([((([[((([([[([[[([[(((([([((([([[(((([([[([([[(([[[[[([([[(((([(([]))]))))]])])]]]]]))]])])]])]))))]])])))])]))))]])]]])]])])))]])))])])])]))])]]])]))]]))]])))))]]]]))]]]]])])])))]])))])]))]]])]))))]]]])))]]]])]]])])])])]])))])]])]))))]])))])])])]]]])]]])]])))))])])]))])])]])]))])]]))]]]]]]])])]]]])]]))]])]])]]))]]]]))]])))])]])]))))]])))])]))])))])]])))]]])]])))]]]])))))]]))]])]]])])])))]]]))])])]]])))]]))])])]]])])]]))]]))]))]]]]])]]])])]])])])])))]])))]])])])]])]))])])]]])))]]])])]]]))]))))))]))]])])])])])]))]))]]]]]))]])))))))])])]]))]))]))])]))))))]])]]])))])]]])]))))]]]))))))]])]]))))]]]))))))]))]]]]))))]]]]))))])]])))))]))]]]]))]))])])))]]))])]]]])]]))])]]]])]]]))]]]])])])))]))]])))])])]]))))))]]))))]]))]])])))])))))])]])))))]])]]])]))])))))))]]]))])]))])])]])]))])))]])]])]))]))))]]))]])))]]])]))])]))))]])))])]]])]]))])))])))]))))))]]]]))))]])])]]])]])))]])))]]]]]]]])))))))])))])]])])]))]])]])))]]))]])]])))]]))]]))]]])]]))]))))]]]]]])]]])])))]))]]])])]))])]]]]]))]]]]])]))))])])])]]]))]])]]))]]))))))]))]))))]]]]]]]]))]))]]))]]]]]))))]]]])]]))]])))])]))))]])]]])))]]))))])]))))]]))))]]]])]))])]))]]])]])])))))]]]]]])))]))]])])])]])]))]))]]]))))))])))])]]))]]]]])]])))]))))))]]]]))])]])])])))])]])])))])))]]]]])))])))]]))]))]))]))]])))]))))]]]))]))))]])])]])]]])))]]]))]]])]]))])))]]))]]]])]))]))))))))]])]]]))]]])))])))]))])]]]]]])]]])])])]]])])]]]]]))))])])])))]))])))))])]))]])])))]))]]))])]]]])]])])]]]])]])]]]]))))))])]]]])])]])]]]))]))))]]]))))]]])])]]])]))])]))]]]]]]))))))]]))])]]]]]]])]))]]))])])]))))))])])]])))])])]))]))]])]])]))]]]]))]]]))])))]]])]]])]]])]))]]))))))]]])]])])])]))]))]))))])]])]]]])])]])))]])])))]])]]]])]))]))]]))])])]])))])]]]]))))]]])))))]])))]]])])]]]))])))))))])]]])))]]))]]]))]]]]))]))])]])))))))]))))]))]))))])]]])]]]]]))]]))])]])]]]))))])]))])]]]))]])]))]]]]]]]]))]))]))]])])]))]]]))]])))]])]]])]]]))]]))))]]])]]]))]]))))])]))]]))])]))]]]])))))])))]])]]]]]]])]])]])])])]]]])]])]]))]]]))])]]]]]]]))]])))]))])])]]))])]]]])])])]]))]])]]]]]]]))]])))]])))])])]])])]]))]))])))]])])]))]]])]])])])]))]))]]])))]]]))])])]]]]]))]])]))])]])]))]]]))))]]]])]])])])])]]]])))])]))]])]))]]])))]])))))]])]]]]])]])]])]))]))]]]])))]])]]]]))))]))]]])]]))))]]))]])]]]])))]]])))]])]]])))]])]]]]]])]]))))))]]]))])]])]))])]]))]]]))])]]))]]))]))])]]))))]))))])))])])))]]])])))))]))])])])])])))])))])]]]]])))]])))]))]])]]])]))]])]]))])))]]])])]])]])])))))]]))])))))]]))]]]])]]]]))))))])))))]]]))])]]]]))]]]])]]]))]]]))]])))))))]]]]))]])]]]))]]]]]))]]])))])]))))))]]]])))))))]))))))])))])]]])))))])))])]]])])]]))]]]))]])])))))])]])]])]]))]]]]]])]])]))]])))))))])))]]])]])]])])])])))])]]]]))]]])]])))]]]]))))]]))]))))]])])))))]]])])))]]]]])])]])]]))])]])]]]])]))]]]])))]])])]])])]]])]]]]]])]]))))]]]]]])])])]]]])]]))])]]]]])]]]))]))]]))])]]])]]])]]))])]]])]]]))))))))])))]))])))]))))]]]))))]])]]]]]])))]]])]])])]]))))]]]]]]))]])]))])]])]]))]]))])]]]]])]))]))]])]]])])]])])]])]))]))))))]))))))]))))]))))]]))))]]]))))]))]]))]))]))])))))])))]))]])]]]]]])])])]]])])])]))])]]])]])]])))])))]]]))]])]))]]))]]])))])]]))]))]])))]]])]]))]]]))]]))]]]]))]))]]))])])]]]]))]]))))]]))))))]]))]))))))]))])))])])]])]))]]]))))))]]])])])])))]]]]))))]])]]])])))]]]))]]))))))))])])]])]))]]]])))])]]]]]]]]]])]]])]]]]]]])])]])])]])]]))])))]))]]])]]]]))])]])]])))]]))]])]])])]]])))))))]]))]))))]]]]])]]])))]))])]]]]]))]])]])])])))))))]]])))]]))]]]))]]]]]]]]))]])]]))]))]])]))))]]))))]))]])))])])]])]]))]))])]]]])]]]]))]]]))]]]]]])))])])]))])]))))]]])]))])]]]]))]))]))]]])))]])])])])]])]]])])]]])]])])))))]]])]]]))]])]]]]))]])]))))]]]]]))]))))]]))]])])]])))))]]))])]))])])]])])))]]])))))])]]))])]]))]]))]]]))]]])])]))])))]])]))])]])])]]]))]]]])]]]])]]]])]))])]))]]])]]]]])])]])])))))]]]])]]]])]))])]]))))]))])))])]])]]))]))]])))]))]])))]]])))]]]]))])]])]]])))]]])]))]])]])])]]]]])]]))])])))]]]]))])])]))))])))])))))]]]])))))]])])]])])))))])])]))))])))]])]]))])])])])]]]]))))]]]]]))))))]]])))])]]]))]]])))]))]]))]))]]]])))]]]]])])]))]]]]]]))))]])]))]])]])))]]]))]])))]]]]])]))]])]))))))]]])]))))))]))))))))])]]])]]))])))]]])))]]]]])])))])]])]]]]))))))))))])]])]))])))]])))]])]))]]]])]))])]))])]]]]])]]])))]]])])])])))])]))]])])))]])))))])]]])))]))])])])]])]])]))]]])])))]))]))])))])))]))])]))))))]))]])]]))]])]]]]])]]))]])])]]])]])]]]]]])))])]])])))))]])))])))])])))]])))))]]])])]])])))))))]]))]])])]])])))]])]])]])]]]))))]]))]])]))]]))])]))))]))]]])])]]]))])])]))]))]])]]]])]]])))])]))])]]])])]])))))]))]])]]]])))))])]]]])])])]]])])]]))))))]))))])]))))])))])))]])]])]]]))]))))]])]))])]))]])])])]])]])]])))])))]]))]]))]]]))])])))])])])))))]]]]))])])))))))))]))])))])))]])))])]])]]]]))))]])]])])]]])]])]]]]]]])))])]))])]]])]]))))]))]])]]])])])])))])))])))))])))])])]]]]]))]]])]]]])]))])]])])]]]])))])])]]))))]))]]]]]]))]]))])])))]))]]])]]]))])]])]))]]]]]))]))])]))]])]]]]]]))]]])]]])]]))]]))))))]]]))]]))))]]]]]))])))))]))]]]]))]]]]])])]])]])])))])])]])])))])]))]]))])))]]))]]]]]]))])]]]]))]])]]))))])]])])])])]]])))]])]]))])]])]]]]))])]]))])])])))]])]))]]]]]))))))])))])))]]]))))])]]]]])]]))])]]]))))])]]]]]])]]]))])]])))))])]]]))))]]))]]))]])]]))]]]])])]]]]])]])])]]]]])]))))))]]))])]])])))]]]]]))]))]]])))))]]])]]))))]]])]])]]]]]]])))])]]])))))]]))])])]]))))]])]]])])]))]]])])]]))])))]]])]])]]))]]]])))])]])]))])]]])]])]))]]]]))]]])]])]))]))])))])))]))))))]]])])])]]])))))]]])]]])]])]]))])))]]]]))]]))))))]))]]]]]]]]]]])])]))])])))))]))]]])]]]]]]])))])]))))])])]])))))])])]))]])])]]])]]])])))]]))]]]]]])]]))))]))))]))]]]))))]))]))]))])])))])))]))]]]]))])]]))]]]]]))]))])]])))]])]]])]))))))]))])]))]]))])])]))]]])]))]))]]])]])]])])]))]])])])])]))]])]))])])]]])))]]))))))]]]])))]]))])])))])])]]))))])])))))]])]]])]))])])))]]]]]]))]))]]]]))]])]))]])])])]))))]]))])]))]]]))]]))]]))]]]))]]]]]))]]]]]))))]]))])))]))]]])])]]]]]])])]])]]])]])])))])))))]]))))]])]]]]]]))]])]))))])]])])))]])]]))]))]))]]]])])]))))]]]])))])]]])]])]]]))])))))]]])]])))]]]]])))))))]]))]))))])])))]])])))]))])]])]))))]))))])]]]))))]))])])]]])])]]))])])])]]]]])]])])]))]))]]))))]]]))))]]]]]]])))])))))]))]))]]]])]])]]]))])]]]]]))]))))])])))]]]))]]]]])]])]]]])])]]))])]])])]))]])]))])))])])])])])]]]]]))))))))))))])]])))])])])]]))]])])))]]])))])]]]]]]))])]]]])])))]])))]])]])]])))))]))))]]]))))))]]))]))]]]])]])))]]]]]]]])])])]))))]])))])])]))]))])))]])]]])]]]))))]]]]]]]))))))))))))]])])))]])]]])]))]]))])))]))))))]))))]]))])]]))))])]]])]]]])]])))])]]]]])]]]))])]]])]))])))])]))])])]]]])]))]])]))]]]]]]))))]))]]]])]))]])])]]]])))])]))])]]]))])]])]))]])]]])]])]]))])))]])])]]]))))))]])))))]]))]])]])])))]])]))))))))]))]))])]])])]))))])]])])))]]])]])])))]])]))])]]))]]]])])])])))]])]])))]])))])]))))])]]])])]]))]])]))]))])))]])]]]]]])]]]])])))]])]])]])))))]]]]))))]))])))))])]]))))])))))))]]))))]]))]))])]]))])))])])]))))]))]])]]])])]))]))])]]]]]]])])]))])]])]]])]))]]]]])])]]]]])]))]))]))))]]]]]]]])))])]])]))))))))]]])]]))])))]))))]]])]]]]])]])]]]]]))))))]]])]]]]))]])])]]]])])]))]))))]])]]))))]]]]))]])))])]])])])])))]))])]))))))))]))])]]))))])))))])))))]))]))])])]]]))])]]))]]])))]]]]]))]])]))]]])]))]))))]]]]])]))))]]]])])))]]]]]]))]])]]]]])]]]]))])])))]))]]])]))]]]])))]]]])]]]])])]])))]]]]]]])]])]]]]])))]])))]])))])])]])]]]))]]))))])])])]])]]))]))]))]))]]])])])])]))))])])]]]]]])])]]]]]]]))]]])))))))]]]))])])])]])))]]]))]))])]]])]]])]]]))])]])]])]])]])]])])]]))]])))]]])]))])]))]]])]]]]))])])))]])])]]]])]]])]]]))]))])]))])]))]]])]]]]]))]]]])]]))]]]]]]])]]]])]])]))]]]])))])])])]))]))))]])]]]])))]]))))]))])))]))))]])]]])]]]]]]))])]))]]]])]))])]))]]]])])))]))))]]]))))))])]])])])])))])))]))]))])])]]]]]])])]]])))]]))]))]]])))]])])]]]])])))))]]]]))]))]))))]]]])])]]))]]]]])))])))]]]])))])])))))]]]))])))]]))]]]])]])]]]])])]))))))))])]])]]))])]]])]]]]])))])))]]])]])]])])]))]]))]]))])]]]))])])]]]]])]]))]])]))])]]])]))]])])]))))]))]]])])]]))]))]]]])])))])]]]]]])]]]))]])]))]])]))]))])))])])]])]])]])]))))]]]])]]]])]))]])]]]]))))]))])]]])]))))]])]])]))]))]]]))]))))))]]])))]]]]])]])]]])]])))))]]])]])]])))))])))))]]))])])]]))])])]])))]))]))]))))))))]])]]))))]]]))])])))])])])]]]))]])]]])]]]]]))]]])]))))]]])])])]]))])))))]])])))]])])]])]))))))]]]]]])))]))))]])]])])))))]])]]]]]])]))])))))]]]])]))))))))]))))]])])]]))]]]])])))]]))]]))])]]]]])))]])]))]))])]))]]])))]])]]))])])]])]))))]]])))]))]]]]]])])])))]))]])]]]]]))]])))]]]]])]))))]]]]]])])))]]))))))))))])])))])])]])))])])))]]))])])))])))]]]))))))])])])]])]]])])]]))]))]])])]))])])))))]))]))]]))]]]))])])))]])]]]]]))]])])])])]))])))))])])]]])]]]))))]]]])])])]])]]])])))])])])])))]])))))))]]]]]])]))])]]]])))])]))]]))))])))]]))))]])]]]]))]))))])))]]]]])]]))]))])]]])]])]])]]])))))]))])]))])])])))]))))]])])]]))))))))]]]]]]))))])]]]])]])])))]]]]]))]))]]]))])])))])))])])]])]]])))))]]]))]]])))]]]])]))))))]]]]]]])]))])]]])]])]]])]])])])]]))])]))]]]))]]]]]]]])]])]]])))))]))])])))])]]]]])]]]))]])))]])]]])])))]])]))])))))]]])))]))])]]])]]])))))]]))]])]]]])))])))])]]]))]))]))]))))]))))]]])]])]]]]])]]))]))))))]]))])))])]]])]]))))))]))])])]]))))]]))]])]]]]]))]))))])))]])))))))]])]))]])))]]]))]))]]])))))))))]]])]])])))]])))]]])]])))]]))]]))))]]])]]))]))]]))])]]]]]]))])))])])])]])]))))]))]])]])))]])])))])))))]]])))])))])]))))]))]])])]))))]]))]))]]]]))]]]]])])))]))))]]))]])))])]))))]]))]]])))))]))])]]))])]]]]]))])]])))])]]))]]]]]]])])))))])))]])]]))))))]))])])))])]]))]]]]]]))])]]]])])]])])))]]]]))])]]]]]]]])))]))]]))]]])))]]])])]]]])))]]]]))))]])])]]))])))]])]]])))])))))]]])])))]]]]]))]))])]))]))]]]))]])])])]]]])])))])))]])))))]]]))))]])])]])]]]]])]]])]))]]])]])))])]))]))]])]))]])))))]])]])))])]]]])])]]]])])))))]]]]))))))]]]])]])])))]]]])])))))])]]]))]])))])])]]))]]))))]))))]))))]]])])))]))))]))])])))])]]])])]]]]])))])]])]]]]])])]))]]))])))]))))])])))))]]])]]]]]])]))))))]))]]]]])]])]))))])])]])])]]]])))]]]))))]))))]])]]]]]])]])])))))])])))])]]]))))]]]])]])]]])))))))]]]]))))]])]]))])]])))))]]])]))]]]]]]])])])))]])])])])]])))])))])]))]]])))])]]))]]]]])])])]])])))))]])]]))]]]))))]))))])])]]]]])))])]]])]))])))])])]]]])])])]]])]))])])])))])]))]))]))]))])]))]]])]]]])]]]]])])]]])]]]]])))])])])))]]]]])]])))))]])]])))]])))])]]))))))]])]]])])))])])]]]])]))])]))))]]]]])]]])))]])))))]))]])]]]]))]))]]]]]]]]])]])))]]]))]])))])))])]))]])]]])))]])]]))]]]]]]]]])]))))))])])]]])))])))]]))))])])))))]]]]))]))]]))]])]]]]])])]))))))]]]]]])]]])]])]])])]]])]])))))))]]]))))]]]])))])])))])))]]]])]]]]]])])])]))])]]]))))]]]]))]]]])]]]]))))])]])])))))]))]])]])))]]))]]]])])))))]]]]])))))]])])])]])]))]))])]]])])]]])]))]]])])))]]))))])])]))])))]]])]])))]))])]])])])]]])]]))))])]])]]]))])])]))]))])]])]]])]]))]])))]))]))]))))]]])))))]]]))]))])]]))))])])]]]]]]))])]))))))]])]])))]))]])])]]]]))]))))])])]]]))))])])])])])]]]])]]]])]]))]])]])])]]))])])]]])))])])]))]]]]])]]))))))))])]])])]]))]]]]))]]))])])])]]]]]))]))]])])))])]]]))]))))]])]))]]])])]))])]]]]])])]]]])))))])]])]))]]]))])]))])))])])))]]]))]]])]))))])])))))))])])))])])]])])])])))]]]])])))))]]))]]]]]])))]]]))]])]])])]]]])))))]]])]])]]))]]])]))))]]))]]])]])]]]])]))])])]]]])]])])]])])]]]]]]])))]]))))]]]]])]]]]])))])]]))]])]]]]))]])])]]))))]]))]]]]]]]]]])]))]])]]]])]])]])))])]]))]]]])))])))]])]]])))))]]]]]]]))]]])])]]]))]]]]]]])]]))]])]))])])]]))])])))])]))]]))))])])]]))])]))))])]]])]))]))]))))))))]]]])])]])])))]])]])))]))))]))]]]]))))])])]]]]]))])]])]]))]])))])]))))]))])))]]]]])])])))])])))))]])))])]]])))]]]])])))])]])])]])]]))]]])])))))))])])])]])]))]])))]]]]))]]]]]]]])]]]))])))])]]]]]]))]])))))])]))])])]]))]))))))]]]))])))]))))])]]]]]))))))])])))])]]))]]])))]))]]]))]))]]))]]))])))]]))]]))))))]]]])]])))]])))]]]]])])]])))]))]]])))])]]))))]]]))]]]]]])])]))]])]])])])]]))]])])]])]]))]))]))]]]])]]])]])))]])]]]]]))))))])))])])])]]]]]))]))]]]])]]])])])))]))]]]]]))))]])])]]]]]]]))]]])]])]]]))))])]])))]]])])]])))]))])]])]))])])]])]]])])))]]))]]])))])])]])])])]]])]))]))]]])]]])]])))])]))]))))])]]))]])]))])])])]))])]]]]])]))]]]]]))))]]])))])])])))])]]]))))]))]]]])])))]])])])]]]])])]))])))]])])]))]))]]])]))]]]]]))]])]])]])]))]))])]]])))]])]])))])]])))])])])]]]]]]]])))])]]]]]))]])]])])]))]))))]]]])))]]]])]])]])]])]]))))))]]])])))]]])]))])))]])]]]))]])))]))]])]))]])))))])]]]])])]]])]])]]]])))])))))]])])]]]])]]]])]))])])))])]]]]]))]]]])]]))]])])])))])])])]])))])])]])])]]))))))])])]])])])]])))]]]))]]))]]])]]]])])))])]]])])]))))))]]]])]])))]))])]])]))])]]])]])]]))))])]]]]])]]]))]]))])))]]])]]]]]))]))]]])))]])))))]]))]])]]]]])])]))])])]))])])]]))))]]))))])])]]])])])))])]))]]])])]])])]]]]])]))]))]]]))))))]]])]]])))]))]]]]]]))]))))])]]]]]]))]))]))]]]))))))]]))))))]]])]))]]]))]))]])))])])]]]]]]]]])))]]))]])))])])]))])))])))]])))]])]))])]))))]))))]]])])]])]])))]])]])))]])]))]]]])])]])])])]])])]]])])]))])]))]))))]]]]))])]]]]]]]]))])])])]]]])])]))))]]])]]]))]))))])))))]]]))]))]])]])))]]))))]])))))]])]]])]))]))]]]]))]])]])]]]])])]]))))]))))))])]])]]))])]]]]])))]))))]]))])]]])))]]))]])])]))]]])))]])))]))]))])))])]))])))])))]])]]])])])])]])]]))]]))]]]]])]])])))]))))))))))]]])])]]])]]]]]]])))]]))]))]]))))]]]]))]]]]]])])]]])]))]])]]))])]]])))))]))]))]])])]])))))]]])]]]]]))]]])])))]]]])]))]])])]]])])]])))]])])))))]]]]]))]))))]]))]])])]]]]))))])]])))]])]]]]]])))])]))])))]))]])]])]]]]))]))]]]]))))))])))]))]))])])]]])))])])))))]))]]))))])]])]]]]]])]))])])]))))])]))]))])]])]])])]]]])])))))])]])))])]]]])]))]]]])))))]]))]])))))]])]])]]]]]]])]]]))])]]]]]]]])])]]])]]]))))]))]))])]]]]])]]]))])]]]]))]])]))])]])]]))])))]]]])]])))])]]]])]]]])))])])))))])))])]]))])))]])]))]))))])]]]])]))))))]))]])]]])))]]]])])]]])))])))]]])]))]]]]]]]]))]]])))]]])]]])]]]]))))))))]))])]])))))])))]]]]))])])])])))]))))]])]))]])])]]))))])])])]))))]))]))])]))]]])])])]))))]]]])])))]))])]]))))])]]]])])]]])]))))]]))]]]))])]])))))))))))]]])))]))))]))]]]]]]])]]))]]]))]])]))))]))]))])))]]]]))])))])))])))]]]])])])]])]]]]])))]])))]]]]]))]))])]])))))])]))]]])]]]]])))]))]]))])])]))))))]))]]]])]))]])))]))])]])]]]))]]))]))])])))))]]])])]])])]))]))])])]))]]))]]))]]))])])]]]))]))])])]))]))])]]]))])]))]))))))]]]))]))])]))]])]]]]))]])]))]]])])]]])))])))]))]))]]]]]]]]))])]]))))]))])])))]])))])]])))])))]]])]]))]]]]]]]]))))]])]))))]]]))))]))])]))]))]))))])]])))]])]]]))]]])]]]]])])])))]]])))]))))]]])))]))))])))])))])))])])))]]]]))))])])]])])])]))]]])]]]))))])))])))]]))))))]])]))))]]])])]))))]]]]))]]))])]]]]])]])]])))]]]])]]]]])]])))])]]]))])]])]]]]]]])]]))]])]]])]])))]]]]))))]]]))]]]]])]])))))]]])]))]]))))))])))])]])))])))])]]]))]]])]])])]))]]])])]])))]]]))]]]))]])]])]])]]]]))]))]]])))]])))]]]]])]])])]))]))]]]])]]])])]]]]])]]))])])))]])]]]]]))]]]])]))])])))])])]])])]]]])]]))]]])])))])]])]]))]]])]]]])])))]]))])]]]]])))])]]]])]]]]])])))))))]]))))])]]]]])]])))]))]]])]]]]))))]]]])])]))))]]]])])])])])))]]]])]])))]))])])])))])]))])))]]))]]])])])]])]]))]))]]]))))]]]])]])))])]])]]))]))])))]])))]])))])])])))]])])])]]]]]))]])]])])))))])))]]])])]])))])])]])])))]])]]])]]]]]])]))]]]])]]]))]]])])]]])]])]]))]))])])])]]]]]]]])]]))])]]]]))))]]]]]))]))]])]]]]])]]]]])]]))])]]])]]])]]]])))))])]))))]])))))]])]])]))]]))))])]))])]))])))))))))])]])]]])]])]]]])]])]))]])]])]]]]]))])]))]))]])))]))])])))])]]))]))]]])])]])])])]))))])))))]]])])]])]]])]]))))))]]]]]))]]]))])))])]])])])]]]]]]))]]))]]])])]))])]])]]))))])]))])])])])]))]))))]])])))]])]]]))])])))])])]]]]]]]))]))]]]])]])))])]])))])])])]))))]))]]]))])])]]])]]])))))])]]]]]]]]])])]]]]])]))))))))])])]]]]))]))]]]]])))))])]])]))])]])]))]]]]))]]))])])])])]))))]])]))])]])]))]))))]])))]]]))))))]]))])))])]]))]]))))))]])))])))))]]])])]])])))]]])))]]))]]]]))]])])]]))]))]]]]])]]]]))])]])))]]])])]]]]])))))]))]))))]]]])]]])]])]]])])]]]]])])]])))])]))))))]])))))]))))])])))]]])))])]]]])]])])])))]))))]]])])))]])])])))])])]]]))))])]])]))]]])]]))]))))))])]]])))]]])]]])]]))]]]]])))]))))))])]]]))]))))))]]]]]]])))]]]))]))))]]]]))]]))])]])])))])))]))]]])]]]]]))]]))))]])]])]))]]]]])]]]]]])]))])]])]]))])]])))])))]]]]])]]))))]]])])]))])))]]))])])))]))]])]]]])])])]]]]]))])])]])]))])])]]]])]])))]]))]])]]]]]]))))]]))]))]]])]])))]]])))])))]])]])]])])]]]])))])]]]])]))))]]]]]]]])))]])])))])])))]]])]]])))])])))])])]]]))))]]])))))))])]]]]])])))]))]]))]])]])]])))])])]]])])))]))]]])]))]))]))])]))])])])])))]))]))]))]]]]])))])))))])])))))]))))]]))]))])])]]]]]]]])))]]))]]]]]))))])]]])]])]))))]]]]]))))]])])]])])))))]))))))])))))))]]]]))])]]]]]))]]))]]))]])])]]))])])])]))]))]]]])])]])]))))]]]])])]]]]]))]]]]])])))))]))]]])])))))]))))]))))])]]))]))])))]])])]]])))])]]]))]])]))]))]]]))])]]]]))]])]))]))]])]]]]])])])))))]]]]]])]]]]]])]]]]]]))))]]))]))))]]]]))]]))]]])]]])]])))]])]])))))))))]]]]))]))))]))))])])))]])))])]])))]))]]))))))])])]])))])))))])]]))]]))])]]])]])]])]])])]]]]])])))]]))])]])))))]])]]]))))]])))]]])]]]]]])]))]))])))]]]])])]))]]]]))]]]))])])))])]]))]]))])]]]]))]])))))]])]]))))]]]])])]))]]]]]])]]]))))]]])]]]))])]])])]]]])]]))]])])]])]])]])])))]))])]]))))]))]]]])]])])])]))])]]]]]])))])]))))])])))])])))]]))])])))])])))])]]]))]]]]))]))]]]]))]]]]])]))]]]])]))])]))])])))))))]]]])))])))]]]))]])])]]]])))]]])])])]]])))))]]))])))])])]]])))])]]]]])])])))]]))))]])])]]]])]))]))))])])))))]])))])))]])))))))]]]))))])))))]]]])])]])])])]]))])])]])])]]))])])]])))])])]))))])])]))))])]))]]]]]])))]])])))])]])]]])]]]])]]]))])]]])]]])))]]))]]))]]))]))])]])]))]])])]))]))]]])])))))))]]]]]])]])]])]]))]]])))]))]])]]]])))]])]]])))))]]))))])])]]]]))]))])))))]))))])]])]]]])))]]))]]]]]]])]]]]))]))])]]))])]])))]])]]))])])]]])))])]])]]]])]]])])))]]]))))]]]])]])]))]]])]]]])])])]]]]]))))])]]])]]))))]]))])])))))]])))))))]]])])])]]]]]]])))]))]]])])]]])]])])]]]))]])))))])))]))]))))])]))]]]]])))])))]))]]])]]])]]))))])])))])])))])))]])))])]))])]))]]])]))]])])])]])])))))]]])]])]]]))])])))]))])])]]]]]))])))]]]]))]]])))))])])]])]])]]]))))])))))])]]]]))])))]]))))]]))])])))]))]]))))]])]))])))))]]))])])]]]))]]])])]]])]))))])))]])))]))))]]]])])]]])])))))]])]))])))]])))])])])]])])])))]))))])]))]]])])])))]))]]])]]]]]]]]])]]))]]]])))])))))))]]]]]))]))))])]))]]])]]]]]]))]]])]))]]))]])])])]])]))))))]]]))])]))])))]]])]])]))])])]])]]]]))))]])]]))]]])])])]))]]))]]]))]]]]]])]])]))]))]])))]))]]]]]]))))])]))))]))])]]))]))]])]]]]]]]])))])))]]]])]]]])]])]]])]))])])])])])])))))]]]]]]]]])]]))]))]])]))]])]]])])]]))))]]])]]]]]]]]])])))]))]))))])]]]))]))])])))))]))]])]]]))]]))]]))])])]]]))))]))))]]))]]))]]])))]))]))]))]))]]]]])))))))]))]]])]])]]]]])))])]]]]])))])]]))])]]]])]))])])]]))])]]]))]])]])]]]]])]])))]]])]])]))]]]])])]]))]))]]))))]))]]]))))))])])]]]])))])])])]]]])]]]])))])]]]))))]]))])))]]]))))]))]]))])))])))]])))])])))]]])))))))))])))])))))]]]])])])]])))]])))])]))])]])]]]])]]]]))))]])))))]])]])))])))]]]]])]))]))))]]]])]]))))])]]))]])]]])])]]))])))])))]))])])]]])])))]])))]))))]))]]]]]])))])]]))]]]]))]))))]]])]])]])))))])))])]))]])))])])]))]]))]]))]])]]])])]]]])])))])]]))]]]]]]]))])])))]]]]])))])]]))])])])))])])))]]]]]])))]]]))]]]]])])]))]]])])]]]])]))]))]]]]]))])]]))))]]]])))))])]])]))]))]]]))]])))]]]))])]))]]]]]))]]])))]])]])]])])]]])]]])]]])]))))]]]])]]))))]])])]]))))))]))])]]]]]]])])))]]])))])])])]]])])])))])])]])))]]])]))])))))))]))]))])))]])]))]]))]]))])]]]])))]]]]])]]]))]))]))]])]])))))]])))])]]]])])))]])))]]]])])])]]]]]]]]))))))])]]]]]]])]]]]]))))]])]]]))]])]]]]]]]]))])])])])]]])))]]]))))]))]]]]]))]))))]))))])]]]))])))])))])))])])))]]))]])]))]])])]]))]]]]]])]]]]]]]]]]))])]]]]])]]])))]]]]))]]]))]]])]])]]]))]))))])]])]]]))))))]])]]]])]]))))]]]))))]]]])]])])])]]]]]))]))])])))]]))])])]]]]])])]])]]]]]]))]])])))]]]])]))]])])))]]]))]]]]))))])]]]]]]]))])]])])])]))]]])]))]]))))))])]])]]]])]])])]])]]])]]]))])))))))]]])))])])])))])])]))]))]]])]]]))]]))))]))])))]]])))]])]]))))]]]]]]]]]])]]]]))])])))))])])]]]]))])))])])]]))])]]))]])])]))])])))])]]]))])])))]])))]))]))]])))]]]]))]])]))]))]]]))))]])]]]]))])))))])]))))])))])]]))]]))))]]))))))])))])]]]]]])]]))]])]))]]]]]))]]])]])))]]))))]])])])]]]])]]))]]]))))))])])])))]))))]]]])]))])]]]))]])])])])])]]]]))]))]]]]])]])))))]])])))))])]]))]))))]]]]))))]]]]]]]]]]]]]]]]))]])))]]])])]])))]]))))]]))])]]]])])])))]])]]]]]))])]])]]))])]))]))]])))]))))]]))])]])])])))]))])))]])]]]]])))]])))])]))])))])))]]))]]]]))]])]])]]]]]]))]]])])))])]]]]]])))))]])))))]]]]))))]]))])])))])))]]]]]]]]]]]))]])))]))]])]])]))])))]]])))])]]]]]]]]))]]])))]]])])]])]]]])))])))]])])]))]]])))]]]))])]])))]]]]]]))]]]])]])]]))]])]]])))]])))]])]))]])))])]))]]))]])))]))]))]]]])))]])])]])))]]]]]]]))])]]]])]]]]]])])]])]])]])]))])])])))]]]))])))]]))]]])]]]]]]]]))]]))]))]])]]]))))]))]]))]]]])))]))]]))]))])]])]]]))]))])))))]]))]]]])])]]]))]])))))])]))]))])))]]))]]))))]]]]]]])]])))))]])]))])]]]])])]))]]))))]]))]])]])))]]]]])]]]])])]))]]]]]])])]]]]]]])]])]]]))])]]]))]))]))]])]]])])))]))]))])]))])])]]))])))]]))]])]]]]]))])])))))])))]))]]]]])]]))]]))])))])]])]]])])]])])]))]]]])))])]])]]])]))]))]))]]]]])]])]])]])))))]]])]]]])))]))))))])]]])))])]])])))]]])])]))))])])]]])))]])))]))]])]]))]))]]])]))]]))]]))])])]]]))]]]))])]]])]]]]]))]]]]])]))])]))]))]]])]]])])])))))]])])]])]])])])]]])]]]))))])])))))]))]]])]))])))]]]))])))]))]))))])))])])])))]]]])]))))])))))]])))]])]])))])]]))]))]))])]]))))]]))])]])]]))]]]])))))))])])])])))])))))]]))])]]]))])]]])])])])))])]]))]])])))])]]])))]])]]]]]])]))))]]]))])))])])]]])])]])]))])]))]))))])))]]])]]))])])])])])])))))]])]))]))]]])]]))])]))]]))])])))))])])]))]]])]])))]]])))])))]))])]])))]])]]))))])))]]))])])))]))]])]]]))]))]])]]]]]))]]])))))])))]))]))])])))])]]])]]])]))])])]]])]))])])]))])]])]]]))]))]]))))]))]]))]]])]])])]))))]]))))]])])]]]))))]]])))))])]])))]))])]])]])]))]]]]]))))))]]))]))]]))))])]))]]]])]]])]])))])]]]])]]))])))])))]]))])]]]]]))])]]])]]])]])))]]))])))])]])]]]))]]]]))]])]]])]))])]]))]]])]]])])]])))])))])]))]])]))]]])]])]])]])])]))]]))]])]])]]])])]]]]]])]]])]))]]]]])]])]]]]]))]))]))]])]])]])])]]]]]]])]]]))]]])]))])])))]])]])])])))]]]]])])]))))]]])])]]]]]))]]]]))))])]])))))])]])])))]]))]]]]]])])]]]]])]]))]])]))])]])]]]]]])))])))]))]])])])))))])]]))))))]))]])))]]))]]]))))))]])]]))]])]]]]))])]]]]])]))])])]))]]])]]]]))]))]])))]]]])))])])])]))]))]))])]))])]]])))])])]]]]])])]])]))])))]]))]]]]])))]]])]]))]))))))))]]]])])))]))]]))])]])))))]]]))]]]])))]]]])]]]]]]]]))]]]])]))]]))))]])])])])]]])])]])))))]]]]))))))])))))]])])))])]))]]])]]]]]]]]]))))]]]))]]])))))))]))]]]])])])])]])]]))]]]]]]]))]]]))))]]])))])))))]))]])]))])))))]])]])]])]]])]))])])]]]]]]))]]])))))))]]]]))]))]))]))])]]]]))]])))))]]))])]))))))])])]])])])]]]))])])]))]))))]])])]]))))]]]))]]))]]]]]]]]]]]))])])]]])))])]]]))))])]))])]])])]]))))])]])])])]])])))]]))])]]]]]]])])]]])])]))]]]]))))]]]]]])))]]))))))])]]]]))]]))])])]))]]]))))]]]))])]]))])]]]]]]])))))]])))]))]))]]))])]))])]])])))]))]]])))]))]))]])]]])]])])]))]))]))]])])]))]]]))))])]]]]])))]]))])])))))]])]])])]))])))))]])]]))]]]))]))])))]])]]))])))]]])]))))])])]]))])))])])])))])]))])]))]))))]]))))]]])])]]))))))]))))]]]])]]])])))]))))))))])]]]]])])]))]))]])]])]]))]))]]])]))]]))])])])]]]]))])]))])])])]))))]))]]])))])])]))]]))))])))]])]]]])))]])))]]])]]))]]))])))]]]]]])]])]]]]])]]))])])))])]]]]))))))]])))]]))))]))])]]]))])]]]))]]])))]])])])))]]]]))])]]]])]])]])])]]]]))])))]]]))])])]))]]))))]]]]]))]])]])))])))))])))])]])]]]]]]])))]))]])]])])])])]])]]]]]))))]))]]]]]]))]))]])))]])))]))])]])]))))]]))]])])])))))))))))]])]))])]])))])]))]])])))]))]))]]])))])]]]]]])]]))]]))))))])))])])])))]])))]]))))])]]])]]]))))]])])]]))]))]))]))]]))]))])]])))]])])))])]])])]]))])]))])]]]]]])))])))])])))]])])])]]])]))))]])]))))))]]]))]]]]]]))])]))]]])]]))])]])]])))))]]])]]])])]]])]))))]]])]]]]]]))))]]]))]))]]))]]))]]])]]])])]]]))]))])]]])]])]))]]]]))])]])))))]]]]]]])])))))])])]])))]])])])])]]]))))))])))])]])]]]])]])]))))]]]]))))]]]]))]]]))]]))]))]])]]])]]])))))]])])])])]])))]])])]))])]]]]]])])]])]])]))))]]]]]])])]])])]])])]])])]]]]]])]))))])))]))])))))))]]])]]))])])]]]])])]]))]]]]]])])])))]]))]])]]))]])])]))]))])))])))))))]))))])))])]])]))]]]))))])]]])]))])]))])])]))]]))))))])])))]]]))]))]]])))))])])]]]]]]))]]))]]]))))]])))]]]))])]]]]])))])])))]]]]]])))))]))])))]))]))])])]]]]))))]]]])])])]]]]])]]]))])])])])]])]])]))]])]]]]))]]))))]))]])))])]))])))))]]])]]])))]])]])]]]]]]])])))]])])))]]))])]])]])]]])))]]))]]]]]]]]])]))]])])))])])]]])]]))]]]])]]])]])))]))])]])]]))]])]))]]]))])]]]]))])))))])]])]))])])]))))]]])]])]))))))]])]])])])])]]))))]]]])))])]])]))))]))]))]))]]))))]))]]]]]]]]]]]]]]]]])]]]]))]))]]]))])))]])]]]]))))])]]]]]))))))]]]]))]]))])]]])))]]])))))]]])]))))])))))))]))]]))]))))])]]]))])]]]))]]))])]]]]]))])]]))]])])])]))])]]))))]]]])])))]))]]]]]])]]))]))))]]))))]))]]]]])])]])]]])])))]))])]]])]]])]]]))]]])]]))))))])])]]])]))))]))]))])))]]))]]]))]]])]]]])])]]]]]]]))]))))]]])]])])])]])]))]]])))))]]]]]]))))]))]]]))])))]]]]))]]]))]]])])]))]]]]]])])]])]))))))])])))]])])]))]])])]]]])))))]]]]))))])]])])]))])]]]]))]]]]]]]]))])])])))]]])))])]))))]]))))]]))]]]]]]]]]))]]))]])]))])]))))]])))]]])])])]]])))])])])))]])]))])]]])))])))]]])))))]])]))])])]])]]])))]))])))))))]]])))]]]]])])))))))))))]]]]]))])]))])))]))]]])])]])))])]]])]])])])]]))])))]))]])]))]])]]]])))))]]]]]]]])))])]]]]]]]])]])))]]]]]))]))))))]]]]]])))))))))])]]]))))]))]])]]]]]])]))]])))]])))]]]))])]])]))]))]]]]]))))]))))])))]])]])))]))]])])))]])))))])))]]])])]]])])))))])]]]))]]]]])))]))]])]]))])])))])]]))))])]]]))])]])))]))]])))]]]])))))]]))]]]])))))]])]))))]])))])]))))]])]])])]))]))))))])]))]))]))])))))]]])])))])))]))]]])])]]))))]]))])]]])))]))]))))]]]))]]]]])))))]))]]]))]]])]]))]]])]]])])]]]]]))]]))]))))]])])]))])])])))]]]))])))))])]]])))])]]])]]))))]])]]))))]]]]]])))))]]))]])))]]]]))]])])]]]])]]]])))))))))])))]])])])])]))])]]]))]))]])]))])]))])))]])]))])))])]])])]]]])]))]))]])])]])]))))])])]])))))]]]))]]]]])]]]]]]])])]]]]]])]])])]])))]))])]]]])]]))])))]))]]))]))])]]))))])]]])]))]])])))]]])]]])))))]])]])])]])])]))]]])]])])])))]])]]])]]]])))]])]))))]))])]]])]]]]]])])])))))]]]))]))))])]))])))])))]]]])))]]))]))))]]]]]]))]]])])])]]]]])]]]]])]))]]]]]]]))]]])]]]))]))])))))])))]))]))]])])))])]))]]])))])]]]])]])))]])))))]]]]]])]))]]]))]]])]])])]])))])]]]))))]))])]]]]])))]]])]]])])]]])])))]))]))]])]))]])]))]]))])]]))]])]))]]]))]])]))]]]])]]))])])]])]]))]])]])]])))])])))))]]])]])]))]])]]])])]]))))])))])]]))])])))))]]]))]]])]]])))]])]])]])]))]))))]]]))]]]])]))]))]]])]]))]]]]]]]]]))]]])]))])))))])])]])])])))]]]]))))))])]]))])]])]]]])]]]))])]])))))]]]])]])]])]]]))]))])]]]])])]]]]]]])]]]))])))]]]]))))])]))]]]]])]])]))])]]]]]])))]]])]))]])]]]])])])))))))]))))))]]])))]))]))])))))]]]])])]))))]]])])]]]))])))])]]]))))])]]]))]])]])))])))]]])]])])]])]])])])]]]])))]))]]]]])]]]]])])]])]))]]])]))]))))]])])]]))))]]])]]])))))))])])]))]]]))]]]]]]]])]]]]))))]]]]]])]]]))]])]))]]))]])]))]))))]]]]]]]]]]]]]]))]])]]]))))])))]]]]]]]]))))))]])]]]]])))]))))]]])])]))]])]]]))]])]]))]]]]]]))])])])]])])]]]))]]]])]]])])))]])])])]))]])]]])])]]))))]))])))))]])])])))]])]]]))]))])]])]]]])]]]))]])])]]])))))]])]]))))]]]])])))])]]])])]]])])))))]]]])))]])])]))))]]]]]]))))])]]))))]])])))])))]]]]))))])))))])))))]]]])))])])])]])])]))]]])]))])))]])]]]]))])]]]))]))])]])]]]))]]]])]))]]])]]]))])]])])]])))]])]]]]]]]])])]])))))]]]])]])])))]]]]])])))]]])))])]]])])]]]]]))]]]])]])))]]]))))]])))]]))]]]])]]))]]))]]])])]))))))])))]]))]]))]]])]]))]])]])]]))]]]])])))]])])))])))]))])]))]]))]])))))]]]]]])]]])))))]))]]])]))))]])]])]]])]]])])]))))]]]]])]]])))))])]]))])]])]])])]]]]])]]]])]]]]]]]]]]]))]]]]))))]))])))])]))))])]]])))))])])))]))]))))))])])]]))])]]]]))])))])]]]]]]))]]]]])]])]]])]])]]))))])]]])]]))))]]])]]]]]]]]])]])]]])]]]]))]))))]])]]]])))]))])))]]]]]]]]]]))]])]]]])])))])]]]]]))])))]])))]))]]]])]))))]]]])))]]]]]]])])))]])))]]]))]))])]]))]]))])])]]])))])]]]]))]]])])])])])]])))]]])])])))])])])])])]]])])])]]))))]))])))]))))]]]]]]])])])])]]]]])))]))]]]]])]])]))])])))]]]))]]]])]]]]))))]]]])]]))]])))]]))))]]]))]]])])]])]]])]))])])]]))]]]]]]))]]]]))))])])])]]]]))]]]]]]]])]]))))]]]))])])])))]]])]])))))])))]])))])]]]]))]]])]]]]])]]))]]]]]])]]])))))])])])))])))]]))]))]])])]])))]))]))))]]]))]))]])]])]]]]]]])))))]]]]]])]]])]])])))))]]])))]]]))])]]]])]])]])]))))))))])]]))]]))]])]]]]]]]]]))))])])]))))]]]))]))]))])))))])]))]))])]))]]))]])]))]))]]]]]])])))))]]])])))]))))])]]]]]))]]])])])))]]]]))]))]]))]])]])]]]]))]]))])]]]]]]))]])])]]]]]]))]]))]])))])])])]))))]]])]))]))]]]])]]))])]))]])]]])])))])))]]])])))]))]]))))))]))]]]])))))]])))))))]])])]]]]]))))))]]])))]]]))]))]]))))])])])]])]]]))])])))]]]])])])]])]]]]]]))))))]])]]))))))))))))))))))]]]))]]]]])))))))]]]]))])]])]]]]])])])])]))))]])])))])])]])]))]]))]])))]]])]]))))))])]))]))))))))))])]]]]]]]))))))]])])))])]]])]]))))))])])]))))])]]]])]]])))])))))]]])]]]]]])]))]]])]])]])])]])])])]]))]]))]))])]]]]))))]]])))))]]))])]]]]]]]]])]]])]]]]]))]])]])))))]])]]]])])))])))))]]])]))])))]])])]]))]))]])]]))]]))]]]))])])]])))))))]))))]))]]])])))))]))])])))))))))))]])]]))))]]))])]])]]])))))])]]]]]])])))]]]))]))))]])])]]]]]))]]]]])])]])]]))]])]]))]))))]]]]])))]])]]]]]]]])]])]])]])]]]]])])]])]))]]]))])])))]]]]]))]))]]]]))))])])]))))]))])]]))]]]))))]))]]]])]))]))]]])]]]))]]]]])]])])]]]]]]))]]])])))])]])])]))]))])]))])]]])))))]]])])))])]))))]))))])])]]])))]])]])]))]]]]])]]])]]]))]])]])])]))])]])]))]])))]]]])))]]))]]]]]]]))]))])))])]]))]])))])]))])]))]]))))))))]]]])])]])]]))]))))))])]))))]))]]))]]))])])]))]]]])])))]))]]]]]))])]))])))]])])]]])])])])])]))))]]]])])))])]])]]))))]))))))])]])]])]))]]])))]]]]))))]]])])])]))]))]]]))])]])]]])]])]))])]])))]))))])))]))))])])))]]]))))))]])]]]]])]])]]))])])]])]])]])))]])))])]])]]))]]]]]])]))))])))]])])]])])]]]))]])))]))]]])])])]])]]])])]]])))]])]]])]])])))])])])]]]])])))]))]]])]]]))])])]])]]])))))]])]]])]])))))])]]]]))]])]])))]]]]])]])]]]])])])])])]]))]])]]]))]]))]]))))])))))))])]])]]]]])]]]])))]])])]]]]]]]]])))]]))))]])]])))]]]))]])])]]]])])))))])))]))))]))]])])])]]]])]]])))))]])))]))))]]]))]])]))]]]))]])])]]]]]]]))])]]])]))]])])]]))))))])])))))]))))]])]])]]]])]])])]]))])])]])]))]))])]]]])))]]]])]]])]])])]]]]]))]]]])]]]])]]]]])]])))]]))))])]))]]))])]]])])])))]])]]]])])]]))])]))])])))])))]])]])])])))])]])))]]]]]])]]]]]]])))])]]))]])])])])])]]))]])]])]]]))))))))))]))])]]]]))))]]]])]])]])))))])]])]])]])]))]]))]])])]))])])])]])]]))))]))])]]))]])]])]))]])]])))])])]))]]])]])))])])]]])]]]))]])]])]]])))])]])]))]])))))]))]))]])]]]]))))))]]]))))])))]]]))))]]]]))))]]]]])))]])])])])]])])])]])])])])))]]))))))))]]]]]))]]]]])]]]))))]]]]]]]))]]]]]])]]])]))]])]]))))]]]])))]]]])])))])]]]])]))]]]))])]))])]])])]])])])])])]))]))]]])]]]]))]])]]]))))))]])])))))]))))))])))]]]))]]))]]]))]])]])]))))])]]]]]]]])]])]))]])))]))]])])])]])])]]]))))))])))])]])]]]])]))]]]))]])))]))])]])]])])]))]])])]])))))])]))])))))])]]]])]]))]])])]]]]]))])]])]]]])])])])))])]))]))))))]))]))))]))])]])]])])]]])])])]]])]]])))))]]))])]]))]])))))])]))])]]]))])])))]]))])]]])]]))))]])))]))])])])]]]]]]]]]])])))))]))]]]))])])])]])])]))])])])))))))))]]))]])])]]]])]])]]]))])]]]])]))]]])))]]]])])]]])))]])))]]))]])])))]])))]]))))]]]])]]]]]))]])]))])))]])])]))])]])))])))])]))]))))))))])]]))])]])]))]])])])])])]))]])]]]]]])))))])])])])))]))])))))]]]])]]]]])]]))))]])]))]])])])]]))]]]]])]))))]]])))))]))))]]]))]))]))]]]))]))])))))]))]]]])]]))]))])]))]]))]])]))))))]]))])))]]]]))]]])]]]]))))]]]))]])]]]])])])))]])])])))])))]))])))]])])]))]])]])]])])]))]]]))]])]]))]]])]]]])))])))]))]]]))))]]])])))))))))]])])]]))])])))))])]]])))))]]]]]]])]])]])])]]))])]]))])]]]]))]))))]]))])]))))])]])))))])])]))]))]]]]))])]])]))])]])]]))))])]]])))])]])]]])]]]))))]])])]))])]))))]]]]))])]])]]]))]))]))]]]]])])))]]))])]))))])]]])]]]]))])])])]))])))]]]))]])]])))])]]))))])))]))]]]))])]))))))])]]))))])]]])])])))]]]))))]))))]))]])))]]]]]]]])]])]])])])))]]])]]]]))))))]])))]))]])]]]]]])))))])]))]]])))]])])]]]]))])])])]])]))]))]))]]])]]]]))))])))]])])])))))))])]))])]))]]]]])]]]])]))]))))])])))])]))]))])]])])))))])]])))))]]]]]]))]]])))]])))))]]]]))]))])])]]]]))]]]]]]]]]]])]]]))])]))]]]))]]]]]]))]]]])])]])]]]]))])]])]]]])))])])))])))]])]]]]])]))))))]]]])])))]))))]]]))]))))))))]))])]]])]]]]])])]]]])])))))))))]))]))])]]])]]]])]]))))))))))]))])]))]]]))]]))]])]]]]]))))]))))]]))])))]]])]])])])]])))]]])])))]))))]]]])])])]))))))))])]]])]))]]))]])))])))))))]]]])])))]]])]]))]))])]]])]))]]))))))]]])])]])])]])]])])))]))]]))]]])))))]]]]])]])]])]))))]]))]))]))]])))])])]))))]])])]]]]]])]]]))]])]))]])])])])))]))))])])))]))])])))]])]])]])))]]]])])]]]])))]])]]]]))]))]])]]]])))]]]))))]))])])])]]))]]))]]])]]])))]))])]]))))))]]]])]]]]]]])))]])])))]))))]])]])))]))])]])]]])))]]])))]]]])])))]))]]))]))])))]))])))]]]))]]])]])]]]])]]]))))])))]])]])]])]]))])]]]]])])])]])]]]))])))))])]))]]))]])))))))]]]]])))))))])]])])])]])])]]]]])))))]]]])])))]]])]]))]]]))]]]]])]])])])))]]]))]))]))])]]])])]))))])]]))])))]])]))]))])]])]))))]])))))]]])))])]])))))]]]]]])))))])]))))])])]])])))))))))]]])]]]]))]]])))]]]]]])))))]))]))])))]])])]]]]]]]))])]])]))))]])]]])])])]]]))]])]]])]]]]])))]])))])]]))]))])))]])]))]))))]))]]]]])]))])])]))))]))])])]]))])))))))]]))]])]]]]]]))]))]])))))]])]]]]])])))]))])))]]))])))])]])))))))]]))])]))]]]]])]]])))]))]]])])))))])]))]))])])]]]]]])))]))])))]]]]]])]))])]]))]]])]]]]))])]])]))]])]]]))])))]])]])])]]))])]])]]])))))))]])]]])))]]])])]))]]]))])]])])]))]]])))]]]]]])]]])))]))))])])]]])]]))]]])))))]]))])))])]]])]]]))])))])]))])])])]]]]]))])]])))]))))])])]]]))]))]]]]]]))))]]))]])]))]))))]])]))]))])))]))])]]])]]))))))])]])))]])])])))))]]])]]))]]]]))))])]))]])]]]]))]]))))]]])]))))]]))])]]]))])))])))])])])]]]])]])))]])]])))]]])))]]))])]))]]]]]))]])))])]])]]))]])])])]]])]))]])]]])])]))))]])])))])])])))])]))])])]]))]])]]]]))])))]])))]))])))))))])]]]]))])])))])]]))))]))]]])])])))])])])]))))]))))]]])))]]])]]]]]))))))))])]]))]])]))))]]]]))]])])))))]])]]])])))))]]]))]])])))]]])))])))])))]))])])))]))])]))]])]))]]]]))))]]]]]))]))]]]))))]]]))])]]))]]]])))]))]))))])))))))])]])]))))]]))]]]]]]))])))])]]])]))])))])))))))]])]])])]]]])))])]]))])])]))])]))]))]]))]))]])])))])]))]))])))]]]))]]))]]])]]]]]]])]])])))]))])]]])))))]]])))])))]])])]])))]])))]]]])]))])))))])]]]))]]]]])]]])])]))))]])))]]])]]])]]])))]]]])])]]))]]))]))]]])]])))]]))]]))])])]))))]))))))]])])]])]]]]]]])]]]])))])))])]]]))]])))])]]]])))]]]]]])))]]])]]]]))]]]]])]]]])]])]]]]))))))]])]]]]]])]]))))])))))])))]]]])])])])]))]]])])]]]]]]])]])]))))])]]]]]]])]))))])])])))]]]]]))))]])]]])]])]]]])]]))))])]])])]]]])]]))]]])]))))]))])])]]))]])]]]])]]]]])])]]])]]]]))]]])))))])]]]]]]]]))]])))])))]))])])])])]])]]])])])))])])))))))))]])])]])])]))])]))))]))])]]]])])))]))]]]])))]))]]]])]]))])))]))))])]]))]))))]))])]]]))]))]]]]])))]]))]]])]))))])])]))]]]])]]]]])]]]]))]]])]))]])])]])])])]]]])]])))))]]]]])])])])]]))))))))]]))]]])]]]]]]])])])])))])))))))])]]))]])))])]]])])]]]]))]]]])))))))))])])]))]))))]))])]]]))])])]])]]]))]])]])))])])))))]]]]))))]))])]))]]]]))]]]]]]])))]])))))]]]])]]]]))]])]))])]]]]))]))]]]])))))]])))])))]))))]])]))]))))])))]]]]]))]]])]]]))]])])))])))]]]])]))]]))])])]])])))]]])]))]]]))))])]])]])])]]]]])]]])]]]]])])))))]]]])]])]])]])]]))))))])]])]]))))))))]])]]))]))))]]]))))]])]]))])]))])]]]]]]))]]])]))]]]))]]]]]]]))))]])]]]]]))])]]))]))]])]]]]))]))])]])])]]))])])))]]))]]])))]))]])]])]]))]]]]])]])))])])))]))]]]))))]]]]]]))))]))))))])]]])]]]]]]]])))))])]])]))))])]]]]]))]])]]])))]]]))]]])]]])))]])]]])]])))]])])]))])]))]]])])]]))]))))]]))])))]))))]]]))]])]]])))])]]]])]])]]]])]]]]])])]]]]]])))))]))]])]]))]]])]]]))]))]))]]])])))]])]]]]])])))]]))]))))]])])]])])])))]]))])]]])])))]]])))])]))]]])))])]))]]])])])))])))]]))]]]]])])]]))))))]])]]])]]))])]]])]])]))]]))])]])])]]]]]))])]])))))]])]))])])]))]])])])]]]]))])]))))))])]))])])]]))]]])]]])]]]]]]]])))])])]])]])]]]))))]))]]]])]])]]]])))])])]))))]]]]]]]]))]))]]]]]))))]))])))])]])]])])))]))))]])))]]]))])))])])))]))))])])]))]))])]))]]]]]]])]])]))]]]]]])]]]])]]))]]))])))])])])]))))])))]])))]))])]]]]])])]]))])]]]]))]])])])]))))))))])]])]]]])))]))])]]]]]]]]]]])]])))))])))])))]]]])]]])))))]))]]]))]])]]))]))))))))]]])])])]]]]))]]))]])]]])]))]])]))]))]])])))))]]))])))]))])))]))])]))])))]))])]))])])))]))])]))]))]])]))))])])])])))])))))]]]))]]))]]))))]]]]]]))])))])))))))))])))]]])])]]])]))]]))])]])])))]]))])))]]]]])))])]])))]))))]]))]))])]))])]]]]]])]))])]))]]]]]]]))))])]])]))]])]])])]]]))]]))]]))]])])])]])]]]])))]))]])])])])]]])))))])])))))]])])))])))]])]]]])]]])])])))]])])]]))]]]])]])))]])])]]])]]))))])])]]))))])))])]))])]]])])))]]))]])])]]]))]]))]]]])))))))]]))])]]))))]])]))]])])]]])]]]]]))])]]])]]]])))))]]))))))]]))]]])]])]]]))])]]]))]]]]]])]]]])]])))])])])]]])))])]])])])))]]))))])]]]))]]])]])))])]]))))))]]]]]])))])])]]]]]]])]]]]]]])))))]]])]]])])]]]])))]]))))]])])])))]))))]])))))]]]]]]]]])))])]])))]))))]])]])]]]))))])]]))]])]])]))]))]]]]]))))))])))))))]])))))])])))]]]]))])]]])]])])]))])))))])))]))]])))]])))]))]))]]])]])]]))])])]])))])))])))]]]]]]]]])]]]]])]))]]]))]])]])])]]]])]])])])]]))]]]]])))])]))))]])])]]]]]])]))))])))])))))])))))]])))]])]]]]))]]]])))))]]))])])]])]]]])]]]])]])))]]]))]]]])))]]]]))))]])])))]])]))]]]]]))))])))]]]]))))))]]]]]]]]])]]]])]]]))))])]])))]])]]]))])))))]])]))]))])))])])])]])]]]]])))])]))]]))]]]]]])))]])]])]]]))]])]])]]])])))])])]])])]))]))))])))))))))])))]])])]))]]]]]))]))]])]]])))]])]])))])]]])))])))]]])]]]]])))]]))]]]))]]))))))]])))]))]])]])]))])])])])])))]))]]))])))))]])])))))])])])])]]))]]]))]]])]])))))))]]]]])])))]))])]])]))])))]]]])]]]))]])]])]))]]])]]))])]]]))))])))]]])]]])]])]]]])])])]]]))])))))]))))]])]))]]]]])]]]]))]))])]))]]]))))]]]])]))]])]]]]))]]]))))))]]]]]])))])))])]]]])]))))]]]]]]])])]]))]]]))])])]]])]]])]))]]])))])))]])))]]]])))]])]))])))))))]]]]]]]]))]]])]))])]])])))))])]]]])))])])]]])]]])]]]))]])]]))]))]])]])]))]])]))]])]]))]])])]]]]))]]])]))))))])]]]]]))])]]]]]]])])])))))))])))]))]]]])])]]))))]]])]])])]]]))))])])])]])))))))))])])))])]))])]]]))]]))]])]]]]]]])]]))]]]])]]]])])))))]]]]]))]])])))))]])]))]]]])])]])))])])]])))))]]]]]])))]]]]]]))))])])])]]]))]]))]]))]]]]))])])])]]])])]))])]]))])))))])))]]))]))))))))]]]])])]))])]]]])]))]])]])))]]))])]]))))]))]]])]])]))))]])))])])]]]])))))]))]])]]])]])]))]))]])])))))]])))])])]))]))])]]]]]))))]]]]]])]))]]]]]))]]))]])]])]])]])]]]))])]])])))]]))]]]])))]])]])]]))))]))]))])]])]])]]]]])])])]))])]))]))])))])]])))]))))]])]))]]]])))]]))))]]]]]]]]))])))]])))))]])])]])]))])]]]]]]))]])]]])])]]])]))])]]))]]]))))]]]])))]]]]]])))))]]]))])]])]))))]]])))]]))]))]])]])]))))]]))])]]]]))))])]])]]]])])))])))))])]])))])])])]]))))])))]))]])]])))]))))]))])]))))))]])]]])]])]])]]]]]))))])]]))]))]))))]])]]]]])]]])))))])]])]))]))))))]]]]]))]])]))))))))]))))])))]]])]]])]))]])]]))))))]))]]])]]))))]]]]))])))])]])]))])))]]]]]]])))))])))]]]]))))]]))])]]))))))))]]]])]))]))))]]]))])))]))))]))]]]))]))))))))]]]])))]]]))))))]]))))]))])))))))])]))]]])]]])]]])]]])]]]]]])))]])]])]))])])))]]]))]])]))])]]]]]]]))]]])))))])]))])))]])])]]))))))]]]]]))])]])))]]])]))))))))))))))])])))]))))))]]]]))]])])))]])]))])]]]]]])]))))))])]])]]])])))]))])]]))]]]))]])]]]]]))))))]]]))]))]]]]]]]]]]]]]])])]])]]])]))]]]]])]]]])]]]]]]])))))]])))))])])])]))])]]))])]))])))])]]]]))))]]))]]]]))]]))])]]))]))]])])])]])])))]))])]))])])))]]])))]))]))]]])))]]]])))]))]))]]))]]]]))))])]]]]])]]))))]))))])]]])))])]]))))))))])])])]))])]]])))))]]))])]]])]))])]])))))))]]])]))))]])))]))])]])))])]))))))]])]))])])))]]]])]))))]]])))))))])]]))]])])]])])))]))])))]))))]))]]])])])]))])])]]))])))))]]]]))]))))]])]]])]])])))]])]]))]]]])]]]]])])]]))))]]))]))]))))))]]))]])))]])]]]])])))]]]])))])))])]))]])]]))]))])]]))))]])]]]]]))]))])]]))]]]])])))]]]]]))]]]])))])])])]])))]))))))])))]])])]])))]]]]))])))])])]]]]))]]))]])])])]])]])]]]])])]]]])]))))])))))))))]]))]])))])]))]])))]])])]])]])))))])])])))]])])]))]]]]])))]]]])))]]])]]]))])))])]]))]))))]]]])))]]])))]))))])]])])])))))])]))])]]]))]]))))))])]])]]))]]]]])))]]))))]]])])))))]]]))]))]]]])))])]]]]]]))])))))])]))))])]])]]])]]]])])]])]]]]))]))]]]]]]]]))])]]]))]])]]]]]]])])])])]]))]]))))))])]]))]]))]]])])])]])]]]])]])]]]]])]]]])))])]]]))))])]])])]]]])]))])]]))]]])]])]]))])])))))])))]]]])))]]))]]])]]])))))))))])]]]]])]]]]])])])]))))))])]]]]]))])))))])])))]])]]])])))]))]))]]]])])]]]])])])]])]]])]]))))])]))])]]])]]])))])))])))])))])]]]])))]]])]]]]]]]]])))]]]))])])]]]]])))]]]]]]]]])])]]))]])]]])]]]]))]]])))])])))))]]))))])])])]))]]]]])]])])]])))))))]]))]]]])]])))]))]))]]])]))])])]])])]))])))]]])])])]))])])]])])])))])]])]))])))))]))])]]])])]]]]]])])])])])]])]))))])]))]))]]))])))))]])]]]])))]]])))))))))]]]]]))]]]]))]]]]]))])]]]]))))]]]]]]])]])]]]))]))))))]]))))]]]))))])])]]]]])]]))]]])]))))]]))]))]))])]]]))]])]))]))])))])]]))])])])]]])]]]]]])]])))]))))]]))]])]]]))])])])))])]]]]])]]]))]]))]]]))))]])])))))))]]))])))))])))))])]]])]))])]])]))]])])))]]])]]]]])))))]))]))))]]]))])])))]]])]]])))]]])])]]]]]))]))])])]]))]]])])))))]]]]])]))))))))]])))])]])])])))])])]))))]]])))])]))])))])))]]))]]])])]))]]]]]))])]]])]]])]]]])]]]])]]])]]])]]])])]])]]])])])]])))])]))]])]]])]]]]))]])]))])]]]])))]]])))]])]))])])))]])]]]))]]])])))]])]])))]])]])])))])))))]]]])])]]])]])])))))]))]))]))])])])))]]]))])))]]))))])])])))]]])]]])]]]))]])]]))])]])]])]]])]])]])]])])])))]]])))])])))))]])]]]))))))])])]))])]]])]]]))]])])))))]))]])])))]]))]]]])]]])]]]))])])]))])))])]]))])]))))]]))))))]))))]]]]]]])))]]])))])]]))]])]]]]])))]))])]]]]]])))))]))]))])]])]))]))]])]))]]]])))]]))])))]]])])]])])]]]))))))]])])]]]]]]]]]))])]]))))]]]])]]]]])])]]]])))))])))]]))]])]]])]]))]])))])]]))])]))))]))]))))))]])])))]]])]]]))))))]])))]]]]]]]]]]))])]]]]))])])))])])]])])]]))))))))]]]]]))))]]))))))))]))])]]))]]]])])]))]])]]]]))))]))]]]])))))])]]]]]])]))]))))]])]]]])))]])]))]]]]))))])])]])]])])]))])]]])]))]])))]]))))])]))])))]))]]]]]]]]]])]])]])])))]])))]]))))))))]))))]])]])))]])))]])]))])]]]]])))]))]))))])])))])))]]]]]))]]]]])]]))]])]])]])])]]))]))]])]]]))]))))]]]]))]])))]))])])])]))]])]])]))]])))]))))])])))]]]]]]))]]))))])]]))]]]]])]]]])]))]]])]]]]]])))]]]]))]]))]))))]))]]])))])])]])]]])]])))])]]))))]]]]))]])))]]])])])])]))])))]])))))]]])))]))]])]]])]))]))]])]))]]])]))])))]))]])))]))])])]))]])))]]]]]]])]]]]]]))])]]])]))))]]]]])])]]]]])))])]])]))]])]))))]))]]])]))]]]]])]]]))))))))))])))))))))])]]))]))])])]]])])]]]]))]))]]])]]]])))]])]])]])))]]]])])])))]]]))))]))]))])]))]])]))))]])]))))))]]]]])))]])]))]]]]]])])]))]])))])]]]]))))))]]])))))]]])]])))]])]))]]])]]])]])]]])))]]]))))]]]))))]))))))]])))])])])])]]))))])))]))]]])]]]]))])])))])])))]))])))]])])))]])))]))]]]))])])]]]))]]]))]]])))))]])])])))]])])]])]))]]])])]]]]])])]))]]]]))])))))]])]])])]]]))))]])))])))))])]]])])]]]])))])]])]])]))]]]]])]]))])]]))))]])])]])]]))])])])]]]]))]])]]]))]]])])]])]))))))])))]]])))]])]]))]))]]]]]))]])]]]]])]))))))])])]]]])]]))))])))])]]]]))]])]])]))])]))])]]))))]]))]))]]])])])]]]))))]])])))]]]))]]])])]])]])])))]]]]]]]))))]))]))]))])))]])])))]))))))))]]])])])])))]])]]])]])]]]))]]))]]))])]]]])))]))]))])]))])))]))))))))]]])]))]]]]]]]]))))])]]]])]))))]])]]]])]]]))))]]])))))])]]]]])))]]])))])))))]])]))))]]))]]]]))])]]]))))]])])))]])))])]])]))])])))))]))))])])]]))])])]]]]])])])]]))]]]]]))])]]])])))]]]]))]))])]]]))]])]))])])]]))]]]]]])))]]]]])]))])]]))))])])]]]]]]]))]]))])])))]]])])]]))]])))))))])]])]]))])]))]))]])]))]]))]])])])))])])))]]))]))]])]))))]])]])]]])]]]]])))))))]]]]])))]])]])))]])))]])])))]]]]])]]])))]))]])))]]))])))]]))]])]]))))])]))])])]]))]])))])]]])]]]]]]))]]]])]])))))))]))]]]])])))]]))]]]])])])]]))))]]])]]))])]))]]]])]))])])]))])]]]))]]])]])]])]]]]]]]))]]))]))])]])])]]))))])]))]))]])))]))]))))]]])]))]])])))]])])]]]])))]]]))]]])]]]]]])])])))]])]))])))))])]]]])))])])))))]]]]))])]))]])))]]])]))]]])])])))])])]))]]))]))]))))]])))])]])]))]]]])]])))]])]])))])])))])]])]])]))])]])])])]]]])])]]]])])]]))])]])))]))])]))]))])]]]))])]))])]]))]))))))]))])]]]]))]]])]))])))]]])]])]))))]]))]])))))]]]))]])]]]]]]])))])])]])]]))))])]]))])))))]]]]))]]])]]])))]]]]))]]]]])))]]]))]))]))])])]))])]]))])])))]]]])))]))]])]))]]])]))]]))]]))]))])))])]])]])])))]])])])))])])))]])]]]))]]]]))]))))]))))])]]]))]]]]]]])]]]])]])])))]]])))))))])])]]))])])))])]))))))]))]]))))))]]]])]))])]])])))]]]]]))]]]]])))]]))]))]])))]]])])))]))])]))))]]]]])))))])]])]]))])])])]])]])])))])]])))]))])]])])))])]])]]))))]]]])])))))))]))])))])])))))]])]]]]]]])])]])))))]))])]])]])]))))))]])]]]))))]))])))])])))])))])]]]))]))))))])))])))))]])])]])])))])])]]]])]])))))]])])])]]]]]))])])]]]))]])])]]])))]))])]]]]))]]])]]))]])]]]]]])]])]]))])]]])]))))))]])))])]))]]]]])])))]]])]]))]])]])))))]))))))]))]))]]))))))])]]]])])]))])))])])]]))))])])]))]]]])]))])]]])))))]))]])]]))]])]]]]]]))]])))])])]])))]))))])]]))))])])))]])])))]])]]]))]]]))))]]])]))]]))]]))]]]))]]]]]])])))]))]]]]]]]]]]))))])]]])]))]])]]))))]])))]])))]])]]]])]))))])]))))))))]])])]))])]]]])]))])))])))]])])))])])))))))]))])])))))))])]]))])]])))])])])))])])]))])])]))))]]]])))]]]]]])))))])]]]])]]]])))))]])))]]])))))]]]]))))]]]]]))]))))))]])]])]))]]))]]])]]])))]))]]]]])))])])))]))]])]))]]))))])]]]])))]))]]]]]))]]))]]]))])])))))]))])))])]]])]]]))]]]])]]))])]])))))])])]])])))]))]]]]))]])])])])))]))]))]]]]]]]])]]))))])])])])]]]]))))))]))]))]]]))]])]))))]]]))]]]]))]))]))])]]))])])]]]])])])]]]]]])))))])])]]))])]))))]]]]]))])))]))])))]]]]))]]))]]]]]])]])))])))]])])]]]]])]])])])])])])]])]]])]))])])]])])]]]]])]]])])])]])]]]])]))])]])]]]]])]]])))]]])))])]))))]]]]]]]]]]]]))]]))])])]])])])]]]))]]])))]])]))]]]]]])))]))))]]))]])])]])))]))])]]]]]))]))))]]]])]]]]]])]]]))))])]])]]]]))]])])])))]))]))]])))]]]))))]]])])))])]))])]))])))])))]]))])])]]]]]])])))])])]]]]))]])])))]])]]]])]])))]))))]]))])]))]])]]])]]]])]]]])])])])]))]]])]))))])))))]]))))]])]]])))]])]])])]))]])])]])]]]))]))]]))]))]]]))]))])])))))]])))]]])))]])])]))))]])]]]))])]]))]]))])])]]])]]])]]))])])]))]])))])]]])))]))]])]])]])])))]]])))]]])])]]]]]])])]]]]))]))])])))))])]])]]]]])]))])]])]]]])]]]]))))])])])])])]))])])])]]))])])]])))))])])]]]]))])])]]]]]])))))]]]))))]]]))))]]]])))]])])])])]])]]]]]]]])]])]))))]])])])]])]]]]]))]])])))])])]]]]])])]]]]]))]])))))]]]])])]))))))])])])]])))])]))))))]]]])))]]))])))])])]]])]]]]))]])]]]]))])]))))]])]])]]])))]]]))))))])]])])])]]])]))])]]])))]))]))))))])))))))))])]])))])))]])]))]))]]])))])]]]]]]]])))]]]]])])))])])))]))])])]])]]))]])))]]])]]])]]]))])]))))])))]])])]))])]]]]))]])])]])])))))]]))])))])]])])])]))]])))]])))]]])]])))]])))]])])]))]])])]])]]]])]]))))))]]]]]]]))]]]]]]])))])])])])]))))]))))])]))]])))])))))))]))]])))])]))))]]))))]])]]]])]])))))]]))]])])))]]])]))))]]]))]]]]))]))])]))]))))])])]))))])]))])]]))]]]])))]]]]])]])))))))])])]]]]]))))]]]]))))]))])]))])]]]]])]]]]])))]]))]))))]]]]]]])])]]]]]))))]]])]]]))]]]]]]]]]])))]])))))]]])]]]]])]]))]])]]))]]))]]])))))])))])]]]))]]))])])])])))])]])]]))]]]])])])]]]]]])]]))])])]]])]))))))]]]])))))])]])]]))])]])))))])]))]]))))]))]))])])))]))]])])]))]))))])])]])))))]]))))]]])))))]))]]]]])]))])])]]]]))])])))))]]])]]))))]]]))]]]]))]))]])]))]]))]]]]])])])]))]])])))]])]))]]]]])]))))))])]))]]]]])]]]])))])])]]]))])))]])]]]]))))])]])]]]))]])))]]))))])])))]]]]])))])]])]]))]))]]))]]])]]])))))])))]))])])])]]])]))]])]]]]))]))])])))]]]]))])])]))]]))]]]])))])]]]])])])]])]]))]]])]])]])])))]])]])])]))])))]))))])]])]))]]])]]))])])])))])]))]))])))]))]]]]])))])))]])))]]))]]]]))))]]))))))]])))]))))))])])]]]])]])])])])]]]]])]))))))]]))])])))))])])]]))])]]]]))])]])]))]]]]))]])]))]]]])])))])])])])])])]))])])]))))]))]))))])]]]]]]))]]]]]])])]]]))))])]]))]]])])])])])]))]))))]]]])])))])])]]]]]]]))])))])]]))]]]])])))]]))]]]]]]]])))))])]))])]])))])]]])]]])]))]]]]])))]]]))]])]]])]]]])]])))])))))))]]))])))))]]))]))]]]]]])))]))]])]]))])]]])])])]])]])])]]])]]]])])]])])]]]])]]))])])]]))])]])])))]])))))]])))])]]))]])]]])]]]))]))]])))))]]])])])]]]]]))]))))))]))]]])])]])))]]))))])])]))]))])))]]))]])])))]]])])]))))))))))]])]))]])]))])]]]])))]])])]))])]])]]))]]]]]]]])]])])]])))))]]))])])))])]])])))])])]]]]])]))]]))])))]])])]])]]]])))))]]))]]]])]]]]]]])))))]])))))))]])])])))]])]]]]]])])]))]]])])])])]]])]]))]])])])]])]]))]]))]))))))))))]])]]))))]]))]]]])))]]]))]]])]))]])])]])))))]]])])]]])]))]])])]))]))))]])]]))]))]])])]))]]])))))]]])]))))]))))]])])])]]])]]])])])]]))]]])])])))])]]]])]]])]]]]]])]]))]]]])])])])))]]])))])])]]]]))])))))])]))))))))))])))]))])])]]]]]]))]))]])])))]])]])))]])))))))))))])]])]]))))]])])]]])]])]]]]])]])])))]]])])))]]))))))]]]]])))]))])])]])])]))]))))))))])]))))]])]]]])))]])))])])])]))))]])))])])]]))]]))])]])))]]]])]))))]]])))]]]))]))])))))]))]]])]]]])]])])]))]])])]]))))]]])]))))))])]))]))])))]])))])))]])]])]))))])]])))))]))]]]]]]]])))])))])]])))]))]]])])))]]]]]]]])]))))]]])]]])]])]]))))]]])]))])]))]]]]]]])]]]]))]))]]))])]])]))))])]))]]]]]])]]])]]]))))]))))]))])])]])]]]]])]))]))))]))))]])]]]]]))]]))]]])))))])])]]])))))])]))])))))])])])])))]]]))])]))]]))))]]))]]))])]))))]]]]])])))]]]])])))])]]))]])]])])))))])]]]])))]])))]]]))))]]]))))))])]))))))))]]])]]])]]]]]]]))]]]])]])))])])]]]))])))]]]))]])))))]))])]))]]]]]]])))])))]]))])])]])])]]]))]))])]]))]))])])]]))])))]])]))]]]))]])]])]))))))))))]]))]))])]]))]])))]]]]))])])]))))]]])]))]))]))]])]]]]]))))])])])])))]])]]]]]]]]]]))])))]]))]])))))]]])))))])])]))))))]))]))))])])])]))]]]))]))))]]])))]]))]])))])))]]])])]])]])))])))]]])))))]))]])]]))])]))]))]])]))])]])]]])])]])])])])]])))]])]]])]])))]]]])))]]]]))]))]))))])])]])]))))])])]]])]])]])]]))))]]]))]]]))])))])]]))]])])]]))))])]))]))])))))]]]])))]])])]))]))))]]]))]]]))])))])))])]]]))])))]))])])])))]]]]]]]]])]])))))]))]))]]]]]]])]]))])]))))])]]))]])])]))))]))])]))]]]]])]]))))])))])])))))))]]])]])))]))))]))))]])]]]])]]))))]]]])))))]])])]])))))])]])]]]]))]]))))]]]))]))]])))))])))])])]))]]]))]]]])]]])]]]]]))]])]])]]]]]])])]])]]])]]))])]])])]))]))]))])]]]])))))]))))))])))]]]]]]]])))]])]))])])]]))]])]))]))))]]))])]])])))])])))]]))])))]])]))))])]]))))]])))]))]]]])]]]]])]))]])))]]]]]])]])])]])))]]))]]))]])]])])])]])]))))]]]))]]])))]]])]))]])])]]))]))))]]]]))]))))]))))))]])]))]]])]])]]))]]]]]]]]]])])])])))]))]))])]])]])))]])])]])]]])))))])))]]]))])])]]))]))]))))]]]))]]))))]]])]]))]))))]]))])))))]]]])]])])))]])]]]]]])]))))))))]])))])]]))])])])]]])]]))))])))])])]]])]]))))]))))])]])))))))))]])))))])]])]])))])]))])])])])]]])])]))]])))]]]]])])]])])]))))])]]]])]))])))))))]))]))]]]]])))]]])))]])))]])))]))])))])])]])))])))))])]))])]]))]))])])))]]))])))]])])]])]])]))])])))))])))]])])]])]])]]))]])]]]]))))))]]])))])))]]))]]))]))]])))])))]]]))]))])]]]))])]]])]]]))]]])])]]])]]]]))]])])]]))]])]]]]]]])]))])))))]]])]]]]]))))))))])]]]]]]])])]]]])]))]))])))]]])]]]]]]))]]))]))])])])])))]])))])))))]]]])]])))])]])]]]])]]])])]])))))))]])))))])])])]]])))))]]]))]])]]))]))]]]]))]])]]]]))))])]]])))))]]]])])]]])]]]])))]))]))]))))))))))))]])]]))))))]]]])])])])]]]])))])])])])]])]))))]))]]))]]]])])])])))]))]]))]])]]]]))])]]))]]]])]]))]]))))])))]])])]])])])]))]])])]))]]))])))])))))])]])]))))]]]))))))])))]))]])]]])])]])]]])]]])])))])])))]))))))])]])]]]])])])))]])])])])))))]])]]]))]]]]))]]])]])))])))))]]])))]]))))])))]))]]])]))]]]]])])])]]]))]))])))))]))]])])]))))]]]]])]])]))]]]]]]]]))))]]])])]])]]]))))))]]))))])]]))]]])]])])))]]]]]]])))))]])]]))]]]))])))])])]])]]))))]])])]])])])))]]]))])]])]))]))]))]]]])])]])]])])]))]]])]]]]]]])])]))]]]]]]])]]]])]]])]))]]])]])]))))])]))]]]))]])]]]])])))))]]]))]])]]]))])])))]]])))]])]])))))))))]]]]))))]]]]]]])]))])]))]])]]))))]])))))))]]))]])]])))]))]))))]))]]])]])]))]])])])]]]]))]]))])]])]]]]))])]))]])]))])])))]]))])))))))))]]]]]]]]))]]]]]]))]])]])]]])]))]]]])])))])))])]]]]])])]])]]])])]))]]]]))]]]]])]])))]])]]))])])))]))))))]])))))]]])]])))))]]]]]))]]))])])]]]]]]]])]))]))]))]]])])]])))]]]]))]])]]]]]])]]]))]])]))))))]]))])))))))))])])]))])))]))])]])]))]]]))]]))])]))]])])))))))]))]]))])]])])])]]]))]))))]))))]))]))))])))))]]]]]]])])])])])])]])))]]])])]])))]]]])))))]]]]))]))]))))])]))])))))]))])]))]])]))])]]]]]]]]]]]]]))]]])])))]))])])]])])])]])))))))))]))]]]]])])])]])))]]])))))))))]])))]))]])])])]]))])))]]]])]))]]])]]]]]]]))]])])]])])]))))])]]))]]))))]])])]])))]]]]])))])]]]]])]])))]])])]])))))))])]))))]))]])]))]))]))]]]]))]))])))])))])])]))])]])])]]]]])])]])])]])))]])]))))])]))))]])]))]]]])))))])]]]]])]])))))])]])]]])]]]]]]])]]]))]]])])]])]]))))])]]]]])]))])]]]))])])]]])])]))))]))])))])])))]))]]))))]]])]))])]]]])]])])))])]]]])])]))]]]]))]))]]]])))]))]])]])]]]))))]]))]))]))))))])])]]]])]]]]]]))])]])]]]]]]])])])]))]]])])])]]))]])]))))))))]]]]]))])])]])]]])])])]]]])]])]))]]))]])))]]])]]]))]]]]))]])]]])))])]]])]])]]])))]]])]]]))))])])])])]])]]])))))]]])])]]])]))]])))))]])]))]]]))]]]]]])])])]))])]))]))])]])]))])]]]])]])])])]]]))]]]))]])]]])]]])))]]])))]])))]])))])])])])])]))])))]]]]]]]]))]])))])])]))]])])])]])]))))])))]]])])])]])]))]])]]))])]))])])])]])]))]))]])])))]])])]]]]))))]))]))])]))])])])))])])])])))]]))]]))]]]))])]])])]]]]]))]]]))]]]]])]))]))])]]]]))]])))]]]])])])]])]))])]]))]]])]))])))]))]]))))])]))))])])]]))])])))]])))])]))]))))]))]])])])])])]])]]]]]]]])]]])]))))))))]])]]]]]]])]])]))]]))])))))]]])]))]]])]]]]]])))))]))]]]]]]]])))))))))]]]]]]])]]]))))))]))])))])])]))))]]]]]]))]])]))))))))]]]))))])]])])))))]]]])))))]]))]]))])]]]]]))])]]])]])])))]))])))]))))]))))))])])))])]]]]))]]]]))))])]]))))]))))])))))))]]]))))]])]]]))]])])]))]]]]]])))])]))))]))))]])]])])))]))])]]])))]))]))]])])]]]))]]]]])]])]))])])))))]]]])])])])))]])])]]))])]]]))]]])))]))])]]))))]]])))]]]])]]]]])])]]])])]]]]]]))])]])]))]])]])))])))]]]])))]]])]))]]]]))]]]])])]))]]]))]]))))]]]]])])))))])])))]])])))))]]))))]]])]))))])]))])))]))])]]))]]))))]]]])))]])]]]]]]]])]])])])])]]))])])])])]]))))))]]))]])]])]])]])]])])]))]))]]]]]]))])])))]]))])])))]]))])]))))]))]])]]]))))]]]]]])))])))]])))])))))]))])))]))]]))))])]]])))]]])]))))]]]]]]))]]]]])))]))]])))])))))]])))]]]])]]])])]]]))]]))]]])]]]]))]]]])))]])]))])])]))]]))]))))))]]]]])))])]]]])))]]])]])])]]]])]]]])]]))]]))])]]])]]]]))])]))]]]))]]]]]])])]]))]))))]]])))]]])]]])]])]]]))])])]]))]]))])]))))])]])))]])]]))]))]]))]]])]]]])])]])])])])]))]]))]))]]]]]]]]]]]]]])]])]))]])))))))])])]]]])))]])])]])))])))]))]]])]])]))]]])))]))]]))]))])]]]))]]])]]]))]))]])])))]])])]])))])]))]])])]))))))])]]])])]))]]]]])))]]]])))))]]]))]]]]]]))))]])))]))))]])]])])])]))]]]])))))]])])))])))))]]])))))))])]]))])]))]))]]]))])]])))))))])))]))))))]]]]])]])]])]])))]]])))]]])))]]]]]]]])])))])])))))))]]])]]]))])]]))]))]]]]])]))]])))]))))))])])]]]])]])]))))]))]])])))))))])))]]]))])])]])]))]))])]]))]))))))])])]])])])]))]]]]]]]]))]))]]])]))])]])))]))]]))])]])]))))])))]))]))]])]))])]])]])])]))))])))])))))]))]])]]]))))])]])])]])))]])]])))]]])))]])]])]]]]]]]]))])])))]))])])])])))))]]]])]]))]])))))]]]]))]])))))))])])]])))]))]])])]]])])]]))))]]]])]])])]))])])))]]]]]))]]]]]))]))]]])]))]))]))])])]]]))]]]])])]]]))])))])]]]]]])])))]))]]))])))]]))))]]])))])])]]))]]]))])))])]]]])]))]))))))]])))]])]]]])))]]))))]]))]))))))))))]])))]))]]]]))]))]])])))]])]))))])]]))]]])]]]]]]]]]]))]]]])]))]))]))]])))]])])]])])]]]))]]))]]]))]]])))]))))]]]))))]])]))]]])]]]))]])]))]]))]]))])))])])]))]))])])))))]))])])])]))]])))]]]))]]])))]])])]])]]]]]))))]])))))]])]]]])])])]])])])]])])])))]))]))])))]]])])]])]])))]])]]])])])])]))))]))])])])))]))))]])]]]]]]]]]]]]))]]))))])))))]])]]])]]]))])])]]))))]))))]))]]])])]]])]]])))]))]])]]))]]])))))]))])))))))))])]))]])]))]))]]]]]]))]))])])])])]]]]]))]])]])))))])])]])]))))))))]]])]))])))))])]])])])]]]])])])))))))]))]]])]))))]]])))))]]))])]])]])]])])))])])))]])))))))]]])]]]]])])])]])]]]]))])))]])]]))))]]]])]]])]])])]))]]]]]))])]]])])]])]))])]])]]))))))))))))]]]])]])]))]]]])]))]])]))))]))])]))))])]]])]))]))]])])))]))]])]))))]))]]]])))]])))))]]])])]]]])]]))])]]]]))]]]))]])]]))])])))])])])]]]]))])])])]))]]))))]]))))])))))])]]])]])])]]))))]]))]]))])]]])))]))]])])])])))))))))]])])])]]])])])])))))]]])])])])])))]]]]))]]]]]))])))))]])]]])))]]))]])]]]))))])]))))])]])))]))]]]))]])))]]]))))])]])]))]]])])]]]]])))]]))))))]]]])])])]))]]])]]])))]]]])]]]))))])]]])]])))]]])))])))]]])]])))]])])]])]))]))]))))]])])]]]])])))])]]))]]]))]]]))])]]]])))])))]]]]))]]]]))]))))))]])]])))]])))]])])])]]])])]])))))]))])))))])])])]))])]])))]]))])]])))])))))])])))))])]])))]]]]))))]]]))]]))]])]]]])))]]])])])]]]))]])))))])]]])]]]]]])])]]]])))]])])]]))])])]]]])))]]))]))]))]]]]]]])]]]]]])))])]]))]]]))])))]])))))]]]])))])]])]]]]]))]))]]]]]))]]))))))])))])]]]))]])]]))]])])))]]]]]])]]))]]]])]))))))]))])]]))))]))]))))]])))))])))]])])]]])]]))]]))])])]))])])])))]]))]]])]))]))]])]))))]]]))))]))]]))])))])))]])]])))]]))]]]])]])]]]])])]]])]]]])))]))])))))]))))]]]))]]]))]])))])]))])]])])]))])))))))])]]))])])]]))])]))]]]))]])])])))]]))))]]])]]]))]]))))]]))])])]))]))))]]]))]))]])))))])])))]]))])]])])]]]]])])]]]])])))])])]]]))]]]]]]))])]]]]]]])]])]]]]]])))])))]))]])))))])]])]]])]])]])]))]])]]))]]]]])]]]))]))))))]]]]]]]]])))]))))])]])))])]])]])))))])))])])]]]]))))])]]])])])])))])]]]])])]))]]]))]])]]])])])])]]]]]))))]))]])))])])))))]))))]))]))]))]])]])]]))])])))]]]]]))]]]]]])])])))])]]))]])])))]])))]]))]]))]])])]]))]))))))]]]))]]])]]]]]))))]))])))]]])]])]))))])))))])))))])]]]))])]])))])]]]])]])])))))])))]))]]]])))]))]]]]))]))]])])))]]]))))])]]))]]]))])))]]]))])]]]])]]))])]))])))]])])])]]])]]]])]]))]]]])])))]]))]])])]]))]])])]]])]]]]]]))]))))])]]))])]]]])])))]]])]))))])]]])])]])]))]]]])])])]))]]]))]))))])])]])]))]])))])))]]))))]]])]])])]]]])))))]))))]))]))]))]])])]])]))]])]]]]]]]])]])]))))]))))]]]]]])))]])))]))]])])))))]]))]))]]))))))]]])))))))]))])))]]))])]))]))]])]]]]]]]]]]]]]]]]))]))))]))]]]))))]))])])))))))]])))]]))]]]]])]]]]))))]]]]]]])]))]))]))))])]))]]]]))]))]]))))]]]]])]])))]]])])]])))))]]]]]]]])))])]))]])))])]))))]])]]]])])]))])])))]]]]]]])))))]]])))])])]]]])))]])]])]]]])])))))))]))]]))))])])]]]])]]])]))))))])]]]])))]))))]]))]])))))]))))))])))]]])))])]]])]))])]])))]])]]])))])]])))]]]])]]))]]))])]]]))])]))]]])]])])])])]]))))))]))]]]]]])]]])])]])]]])]])]])]])]))])])]])]]]]])]))])]))])]))])]]]])]])]])]]))))])]))))]]]))))])))]]]])]])])))])]))]])))]])))]]])])))]])]]))])))])]]]]]]])))]])]])])])])])]))]]]))]])))]]]]))]]]))]]))])))]))]]]])])])]])]]]])))]]]))]])]))]]])]]])])])]]))]])]))])]))]))]]]])])]])]]))]]))]))])))))]]]])]])]])]]]]]])]]])])]]]]]])])))])))))]]]])]]]))])]]))]]]])]]))]]]]))))]))])]])]])]]]))])))]])])]]))))]]]]]]])]))])])]))))])]]])])]))]]])))])]))])]])]]]])]]))]]]])])])])]]])]))]]))])))]]]))]]])))]]))]])]])]])]))]))])]]]]])]]])]))]])]]]))])))]]]]]]))]]]]]]))))]])))]]]]]]]])])])]))))]))]))])])))])])])]])))])))]])])])])])]]))))]])]]]]]))]))))])))]]])])))])))))]]]])]))])])]]])])))]]]])]))])]])])])]]]))])]))]))]))]]]]))]]]]])]]]))])))]))]]))]]]))]])]))))))]])]]])])]])]]]]]))]]])])])]))]]))])])]]])))]]])]])))))])])))])])])]))]]]))])])))]))))))]])))]])]]]]))]))))]]]]])])])]))))])]]])]])]])))]])]))]]]))))])]))])]])])))]))]]])]]]])])]])))))]]]])))]]]])]))])]))))))]]]))]))]))]]]])))))]])]]]]]]))]))))))))))))))])]]]]))]])))))])]]])]))])])])))]])]))]]))))))))]]]]))))))])]]]])]])]))]]))]]]])]]]))])]]]])))]]]]))])])]])]])))))]])])))])))]]]]])]]))])]]))))])]]]])]))]]]]]))])]])]])]])]])))]]))))]]]))]]])])])])]]]]]])))]])))]]])]])]])]])))])]]])))]])])]]]])])]])])])))])]))])))]]]))]]))))))])]]))]))]])])))))])])]])]))))])]]]])])]]])))]))])))]]))]])])]])]])))))]))]))]])]]]])]))])]])]))))])]]))))))])]])))))]))])]])])))]]])]]])))]])]]]]]]))))))])))]]]]]])])]]))]])])]]]]])))])]]))]]]))])])])))])]))])]]]]])]]]])]]])))]])))))]))]]))])])]]]))))])]]]]))])]))]]))))]])]])])])))]]]]]]]]])]))]))]]])))]))]]))))]]]))]]]]])])])]])]]])])]))])))]]])))]))))])))))]])))))])]])])))])])])])))])]))))]]]))])])))])]]))]]]))]]]]]]]))))]))]]))])])))))]))))]]))))))])]])]))]]])])]]))])]))]))))]])])))]))])))])])])))])]]])]))]))))]))))])))]))))])]]))]))]]))])]]))])])))))]])]]))])]])]])])])))]]]]])))]])]]]]])]])])))))]))]]]))]))))))]]]])]))))]]])])]]]]]]))]]]])))))])]))))]))]))]))]])])))])]]]))))]]]]))]))]]]))])]]])])]])])])])]))]))])]])]))]]]]]])])))]))])])))]))])])]])))]]))])]]))])))]]]]))))]]])]]))))])]))])])])]]]]]]))])])))]]))]])]])])])]]]])))]))]]))]))])]))]])])])]]])))]))))]])]]])]]])]))]])])))]))]))]])]])]]))]]]))])]))]))])]))))]]]])]))))]]])])]))]]])]])]])])))])]]])))))])))]])])]]]]]))))))]]))))]]])]))]))])]]])))]]]])]))]]])]])]])])]])]])))]])]]))]]]])]]]]))])]])])))])]])])))])]]))]))]]])])))])]))]])]))]))]])]))))))))]]])))])))])]))]]))]])]]]]]])]]))])])])]]))]))))))))]])))))]])]]]]]])]]]))]])]]))]]])))])]])))])]]])])])]]]]]]))]]]])))]))))])]])]])))]]]))))]))))])])])))))))]))))))))))))))))]])))])))]))))])))))])]))))]]))]]]]]]]])]]]])]])]))])))])))]))]]]]))))]])))))])]]]]]))))])]]])]]))]])))))))))]]]])]])))])]]))]]])))))]]))])]])])]]])))]))])]]]))])]])]])))])))]]]]]])]]]))])))]]]])])])]]]]]))))]]))])]))])]]))))]))]]))])])))]]])))))]])])]])]]))])]])])]))]])))]]])]])))))])))]])]]))]]))]])])])))]]]))]]]]]]])])))]))])]]))]])]]))))]])])]))]))]]))]])]])])]]]])]]])]])]]])]]]]]])]]]))])))]]))]])))])))])))]]]]])))]]))])]]]])]])]))]))]))))]])]))))])]])]]))))))])])])]])])])])))))]))]]]]))))])]]])]]]]])]]]]]]))]))]])]]]]]]))])]])]]))))))))]]))]]]])]])]]]))]]))))]]]])])]]))])))]]))]))])])))]]]]]]]]]))))]]))]])))]))]]))))])))))))]])))))])]])]))))]])]))]]])))))))])]))))))])]])))])]]]])])]]))])]))]))]])])))]]])])]]]]])]]]))]]]))))]]))))]])]]))])))))])]])])]]]]]])]]]]]])]])]]))))]]]))]]]]])])))]))])]])])))))])))))]])))])]]))]]))])])])]]]]])]])))])]]])]))]])]))])])))))]))))])])]]]]])]])))))])))])])])])]])]])])]]]]))]])))]])]))])))])])])]]])))]))]]]))]))))]]]]]]])])])]])))]]])])])]]]])))])])))))])]))]))))]))])]]]]))]])]))]))])]]])))]]]]]])]))))])]))]]))))])))))))])))]))]]])]])])]]))]))]]))]])])))])]]]])]))]]])))])))]]])))])))]])]]))]))]])]])])]]]]]])]))]]))))]))]])])))]]]))]))]]]])))]]))]])]]))))))]]])])]]])])]]])]]]))]]))]]]))]))))]])))])]))))]]))])]]])]])]]))]]]]])])]])))])]])])])])]]))]))]]]))]])])])]]]])]]])]))])]]]]])))])))]))]))))]]])))]]))))))]]]))])])))))]))]])]])]))))]])]])]])])]]))])])]]]))])]])))))))])]]))]])))]])))])))]))]]]]))]]]]]]]]]]))]])]]]])]])]))])))]))))])]))])))]]]]]]]]))))]))])])]]]))]]))))]]]]]])))])]]))])))]))])))))])]))))]))])]))]]])))]]])]))])))))])]]]))))))))])])]])]])))]]])])])))]]])))])]]])]]]))]))))]]]]]])))])]))]]])])]))]]))])]))]]]])]])))]]]])]]))))))]])])))))))]]]]]))))))]))])))])))]])))])])]))]])))]]])]]]]])]]]))]]])]])])))]])]]))])]))))]]]])]]]]])]])])]])))]]]])))]])]]]]])])])]]])]])]))))))]]]])]]])])]])])))]]))])))]]])]))])))))])])]))]])))]])))))))])))])))]])])]])]]]))])]))]]])])])])]]]]]))]))]]])))]]])])))))]))]])]])))]))])]]]]])])))))))])))]]]])]]])]]))]]])))]]]])]]]]]))]]])])]]])]])]])]]]]))]]])])]]))]))))]]]])))]]))]])]]])]])]]))])]]])]]])])))]])]]]]))])]])))))]]]])))])])]]]))])))])]))]]]]]]]]])]))])]]]]))))])]])))]]])]]))])))]))))]))]))])]]])))))]]))))])]]]]))])])]]]))]))]]])))]]))])))]))]))]]]])])))]))]]]))]]]]]]]])]))]]))]]])]))])))])]]))]]])]))]]]]]]]]]]])])]))]]])))]))]])))]))]]))]]))]]]))]]))])]]))]]]]]])))])]]]))]))]])])))))]])]]]))]]]]))])])))))]))))]))))]]]]])]])])]]]])))))]]))]))])])]]]]]]]))))]))]]])]])))])))))]]])))]]))]])]))]]])])]]]]]])))))]]))))))]])))]]]])])]]])]]))])])))]))]]))]]]]]])]]))]])]]])]])]]]])]])))]]]))]))))]))])]]]]])])))]])]]])]])])]))]))]])])]]]]])]))]]]))]))])))])))])]]]))]]]]]])]]]])])]]])])))]))])])]]])]))]]])]])])])]))])))]])))])]))))]]])])]]))]])]])])))]]])))))]]])])])]])])]])]]]])))])])])])))]]))]]])))]]]]))]])))]))])]))]])])))]]])]])))))]]))]]))]]))]))]]]))])]]])]))))]))))]])]]]]])]]]])]]]]])])))])])))))))])]])])])])]))]]]]))]])))])])))]]))])]]))]))])]))])]])]]])]]])]))])]])))))]]))])])]))]])]]])]])]]))])))])]]]])])]))))))]))]))]])]]]])))])]]]]]])]]])))]]])])))]]])])]]])]])])]))]])]]])])])))]))])))]]]))]]]]]])])]]])])])))]))])]]])]]]]]])]))])])]))))]])))))))]))]])))))]]]])]]))]]])]))]])))]]])]))]])])]]])))))]))])]))]]]))))]))]])])])]]]))]]])]])))))))]]]]))])]]])]]])])]])]))]])))))))])))]]))]]]))]])]))]]]))]]]])])]]]))]]]]))]])])]])]])])]))]]])]])])))])]))))]]))]])))))]])])]))]]]))])])]]))))]])))]]])]])]]]]))])))]))))]]))])])])]]])]))])]))]))]]]])))))))))])])))]]))]]))]]])))))))))]])]])]])]]]]])]]]]])]]]]])]))))]]]]])]]])])]]))))]))]])]]])])])]])]]]]]))])])]])])]))])]))))]]]]]))))]])))])])]))))]]])]))))))])))])]))]]]])])])]])]]))]))))))))])])])))])))))))]]]))))]]]))))]]))])])]))]])]))])))))])))]]])))]]])]))])]]])))))])))]]))]])])]])))])])]]))]))))]]])))]])]]]]]]]))]]])))))]]]]])]])]))))]]])]]]))])])])])]]))))]))]]]]]])])))]))))]]]]]])]]]))]))])])])]))])])]])]))))]))]])]]]]])]]]])]]]]])]))])]))))]])])]])))]]])]))])]]])])])]))])])]))))]]])])])])])))]])]]]])]]))]]]])])]]])])))])]]]]))]))]]]))])]]))]))]]])]])])]]])))]]])))]])]])]]])]]])))]))))])))]])])]]])])]]])]]]]]]))]])))])])))]]]]]])]))))]]]))]]]))))))]))])))]]))]]]))]]]))]]))])))]]]))]]])])]))))]))]]]))]))]))])])]))])]]]]))]))])]))]]]]]]])]]))]]]))))]]]]))]))))]))])]])]]))]]]))))))]))]]))]])]])]]]))]))]))])))]]])))]]))))]]))))])]])])))]))))]))]]]))]))]])]])]])])])))]])]]))]))))])]))]]])]])]))))]]])])])))]]))]])]]]))]])]])])]]]]]))))]])])))]]])]])])])]))])])]]))))]))]))])))])))]]]])])))]]]])]]]))]]]]]))]))]))])]]]))))]]])]))]]))]])]))]])))]]])]]])))])]))])]]))]]])])]]]]))))])]]])])]]])]]]])]]])]]]]]]]]]))))]))]])])))))]))))]))]])]))]]]])]))])])]]]]])])])])]]))]])))])]]]))]))))))])])]])]]]]]]])))]]])]]]])]]]]))]]))]]])]]])]]]]]])]]])]])]])]])]]]])])])])))))))])]]))]))])]]))])])])]]]]])))]))))))])]))]]])]])]])])]]]]]))])]]]]))))]]))])])])]]]]))]])])))]]]))]))]]))))))]]))))))])))]])]])))])))))]]))]])])]]))]]]))))])])]]]))]]])])]])))]]]))]])]))]])))]]]))]]]))))])]]))]))]])]]])]])]]]]))))])])))])]]))]))]]))]))])]))])])]))]]]]]))))]]))]))))])))])))]]])))]])]]])))])])))]])]]]))]]])])])])])))]]]]]]))))]))]))))])]]]))]))]])]))]]]]]))))))))))]]])))])))])))]]))]))))]]]]])])]]])))]])]]]))])))])]]))])))])]])]]]]]]]]))]])]]]]]]])))]]])]))])]))]]))]]))])]]]))]))]]]]))))]))]]))))))]))]))])]])]))]))]])]]))])])))))]]]))]]))]]]])]]])])]]]]]]])]])))]])))])]]]))]])]))])])]])])]))])])]]])]]]))]]]]))]])))])))))))])]))]])]]])))))))])]]])]]]))))]))]])]]]))]]]]])]]]]])]])]))]]))))])])]])))))))])]])]]]]]]])]))])])]]))))))]))))))))]))]))))]])]]))]])]]]))))]])]]]]]]))]))))]]])))])]]]))))])))))]]))))]])]]])))]])]])]]])])]]]]]]])))))])]]]))]]))]]))])))]]])]]]])]])]))])]])])]]]])])])]])]))]]]))))]))])]))))))))))]]]]])]]]]]]])))]]]]])))))]]])))])]])]))])])))])]))))]))]))]))))]]]])]))]]]])]])]]]])])]]]]]]])])])]))]]]])])])]]))]]))]])))]]))]]))))])]))]]))])))])]]]]]))])])]))]))))))]])]])]]]])]]])))]]])]))]]])]])]])])))])]]]])]))])]]]])))])]))))))]])]]))]))))]))))]])]]])])])])]])])]]]]]])))]]])]))]])]]))]))]])])))))))]]]])))]])]))]]])))]]]])))])))))))))])]])]])])])])]]))])))])])]])]]))]]))]]]]))]])]])))])])]))])]]))]])]])]]]])]]]))]))])))))]]])])])]))]]]]])])))])))])]]])))))]]]]))])]])])]))])]))]])]])])]])]])))]))]]])]]]))])]]]]]]])]])]))]))]])]))))))])))))))]]])]]]]]]]]])]])]]]])]))]))])))])]))]])]]]]]]]))]]])])])]]]))))]]))]])]]]]])]])]))]))]]])])))]))])]]])]]))))))]]]])]))]]])])])])]))]))))])])))]]))])]))))]))]]])])])))])]))]])))]]]]])]])]))])])))]]))))]])])]]))]]]]]])]]]])))])]])]])))]]])]))]]]]]))]))))))))]]])]])]]))]))]])]))]))]]])])])])]]]]])])))]]]))))))]]))]))]])])]])]])])]]]]]))]])]])]]]]))])))]))]])))]]]))]))))))]]]])])]))])])]]]])])))]]]))]))]))]))]))]))]]]]))))]])])))])])]]])])])])])])]]]]])])]])))))]))))]]))))))]]]]])]]])])])]]])]])])])]))]]]]]])])))]))))]))])))])]]]))))]))))])])]))])]]])]))]))]))))]))))]]]]]]])])]]]]])]])))]]])]])]]]]]]]))]]]]))))]))]]]]]]]]]]))]))]]]]))])])])]))]))]]])))])]))]])]]]]]))])]]]]]])]]]]))])]]]))]])))))]]]])]]))])))]])]]]])])]]]]]))))]]))]]]]]]]]]]])]))]]))))])]]]))]))])])]))])))]]]])]))]))]])))]]])]]])))]))]])]])))])]]]]])))]])]]])]))])))]])]))])]])]]]]]])]]]))))]])]]]))]]))]])]))])]))])])])]))])])]])))))))]))]])))])]]]]]))))))])))]]]]])])))]))]]])))))]])])])))))]]]]])])]]])]])))])))]]))])]])]]])])]]]]]]))]]])]])])]]))]]])]]))]]))])))))]]]))]]))])])))])]]))]]])]))))))]]])]])]])]]))]]]])]])])])]]]]])))]]]])))]]))]))]])]]])]))))])]]]])]]]))))))))])])]]])))])))))]])])))])]]]])])]])])])))])]))]]]]))))]]]]]]])))))))]]]])))])])]])))]]]))))))])]]))]]]]))])]))))))])]))))))))))]))]]])])]))])]))]))])))]])))]))]]]))))])]]))))]))])))))])])])])))))]))]))))]))]))]]))]])]))))]]))])]]])]))])]]])]]))]]]]))])])]]))]]))]])]]))])))]]])]]))))])]))]))))))]))))]]])])]])))))])])]])]))])])]])]))))))))]]])])]))]))]]]]]]])))))])])]))))]))])))))])]])))])]))])]])]]]))]])))]]]]]]]])))))])])]]]]]]])))]]))])))])]]))])])]]])]))]]]]))))]]])])]]]))]]]])])])))]))]))])))]))]])))))])]])]]])]]))]]])]])))])))]])]])))])]])]]))]]))])])]]]]])))])))))])])]]]]]]]))])]]]]])])))))))]])]]))]]]])]])]]])]))))])))))])])]])])])])])]])]))])]]]])])])))]))]])])]]))])]]]]]])))]))))])))))))])]]]))))))]))))]])])])]]]))])]))]])))])])])]]))))]])]]))]))))]])]]])))]]]]]]])))]])]]])]])]])]]]))])]))])]]]])])))])])])]]]]]))])))]))]))])]))))])))))))])))))])])])]]))])]])]]))]]]])]])))))]))]]])]))))))]])]]]])]))])))))]]]))]]))))]])]])])])]]]]])]])))))]])])])]])])]]]])))]]]]))])]]]]))])))])]]]))))])]])))]])))]))))]]]))]])])]])])]])]))]]]]))]]]]])])))]]))]])))]]])]]]]))]]]])])])))])]]))])]]))])]]])])]]])])])]]]]])]])]))]])])])]]])]])]))])]]]])))]]))]))))]])])]))])]))]]))))]]])]))))))]]]])])]]))))))]]]))]))])))]])]))]])))])])]))]]]]])])))]))))]])))]))]]]])]])))]]]]]))])))))))]]]])]]))]))]]]]])))))]]]])])]]))))]]]))])]))]))]]])))]]))])))]]]]))]])))])]]]]))])]]]])]]))]])]))])]]])]])]]]))]))]]]])]])]]])])]]]]]]])]]))]))))))))])]))]]))]]]]])]])]])]]]]]]))])))]))))))))]]])]]])))))]]]]])))])))]))))])))]]]]))])]])])])]]])]])]])]])])]]))))))]]]))))]]))]]]])]))])]))]]]))))))]))]]))])]]])))]])])]])])]]]]])]]])))))]))]])]])])])))]))])]]]])))]))]]]]]])])))))))]]])]]))))))])]]]]])]]]]))))))))))))])))]])])]))))]]]])]]]]))))))])])]]]])]]))]]])))]))])))]]]]]]])]]))]]]])]]]])]]))])]])]]]])])]]))]])]]]))]]]))]])))]])])]])])])]])]])]]))))))]])))]])])))])))]]])))]))])]))])]]])))))])))))])))))))])]])])))]))]]]])])])]])))]])))]])])]])])])]))])))]]))))])])))))])))))))]]))))]]]]]]]]]]]]])]))]]))])))]]])])))]))]]]))]))]))])))]]])]))]]]))]))))))])]]])]]]])]]]]))))]])))]]]])))]]])])]]])])]]])])])))]]]]]])))]]]])))))])))]])]]))])]])]))))))])])))])]))]]]])]]])))))]))]))]))))])]]])])))]]]])])))]]])]]]]]]]])])])])])]]])])))]])]]])))])])])]]]])])]])])]]))))])]])))])]]]])])))])])]))]]])))])))]]]]]]]]]]))))]])]))]])]))])]]))))]))])]]))]]))]]]))]])]])]))]))))]])))))]]]]]])]]]]]]]]))))])]]])]))])))])))]]])]]]))]))))])))])))))]]))]])])]))]))])))]])])])])]]]]]]])]))]]))])]))]]]))]])]]]]]]])))])]]))))))))])]]))))]]]]]]]])])))])])]])]]])]])]))]])])))])])]]))]])]]])]]])]]))]])]))))])])]]])))]))))])]))]])])))]])]]])))])]]))]]))]]]]]))]))])])))))]))])]]]))]]])]]])])))])]])]])]]]]])]]]]]))]])])])])))))])])))))]]]]]])))]])])]])]])]))])])))])]])]))))])]]))]]))]])]]]])]])]])]])])]]]]])])]]]))))]))])))])])]]]]])])])))]]))]])])))]]))])])]))])))]]])]]]])])])])]])))])]))))))])))]]))))))))]))]])])]]])))]]])]])]]]]]]]])]]]])]])]])]))])))])]))]]]])]))]]]]))])))))))]]))))]]]))]])]))])))])]]))))))]])]))]))])))))))))])]])]]))])))))))]]])))])]]]])))])]]])]])])))])]]])))))]])))))]))))]])))]))))]]]]]])])))]])]]]]])])])))))])])]))]))]])]]))]))])])])))]]])]]]]]])]]])))))])))]]]]]))]]])])]]]))))])]])]]])]]))])))]]])]]))))))]))]])]])]))]))))))]])])]])])))))])]]])])))]])])]))))))]))]]])]))))]])]]))]))))))))))]))]])])))))])]]))))]]])])]]]))])))))])))))]))]]])))])])]]]]))]]]]]))]]])])]])))])])]])]]])])]))]]]]]))])]])]])]]])])])]]]))]]]))]))))))])]]]]]])))])))])]))]])])]))))])])))])]]]]]]]]))))]]))])]]))])))]])])])])]]]])]])))]])])))]))])))]])])]]))]])]])]))))])])]]]))]]]))]]))]))]])))))]])))]]]))]]]])]))]]])]])]])])))]))])))]]))]])]]]])]]))))]]]]))))))))))]])])]]]]])))])])]])]]])]))]])]))]))))))]])]]])]])])]])))]))]]))])]]]))))])]])])])]]]]]]]])])])]]]))]])]])]))]]]])]]])]])]]))]]])]))))))]))])))]))))]))]))])]]))]))])]])])]))]]))]])])))]))])])))]]))]]))]]])]]]))]])]))))])]]]])))]]]]))]]]]])]])))]))])])]])]))]))]]]]]])))]]]]]]])]])))))]])])]]])]))])])]]))]]])]))])]])]])]])])]))))]))))))]]))]]))))))])]]])]])]]))))])]]))))])]))))]]]))])]))]]]))))])])))))])])])))])))]])]))]))]]]))]]])]]]))])]])))]]]])])]]])])))]])))))]))]])])]]])))]))])))))))])]]))]]])]]]]))]))]])]))])])])]]])))]]))))])]))))))]])]]]]))]))))]))]]))])))])]]]]])]))]))))]))))]])])]]]]]])])])]]))]))))]]))]))]]]]))]]))])]]))])]))]]))))]]])))])]]]]]))]])])]]]))]]]]))))))]]))]]]))]]]]])])]])]])])])])]])))])]))])])]]]]]]]))))))))]]]))])))]]]))])]]]])])])])))]]])])])))))])))))))])])))]))]])])])))))]])]))])])]))]])])]))]])))]]]])]]]))])))))]]]))))])))]]))])]])))]))])]))])]]]]]))))]])]])]))]])))]])])])))))))]]]))]]])))]])]))]])]))]]]]]]))))]]]])])]]))]))]]]])])))]))]]])])))))))]))])])))))))])))))))]])]))])))])))])))))]]))]])]]]]))))))]]))]]]]])])]))])]))])))]]]])]]]])]]]]])])]))]))]]]))])))]))))])]]])]))]])])]])]]])]])]])])]])]]]]]]]]]]])]])]])])]]]]]]]])]]]])])))])])])]))))))])]))]]]))))]])]]]])]]))]]))]]]])]))]]]))]]])]))])]])]])))]]]))))])]])])])])]]]))]]])])]])])])]))]]]))]]))])])]]]]]]]]])]]]])]])]])))]]))))))]]]]))]]])))))]))))]])))]))))]]))))])))]]))])])]]]]])]])))]]]])))]]])])))]))]])]])])))]]))])]))))]]))]])])])]]])))]]]]]])]]])])]]))]]))))))])))]]))))])])]))]])]]]))]]]])]])])])))])))))]]]))])))])))])]]]]]]]])])]]]])])])])])]]))]]])]]))])])))))))]))])))])]]]]))))])))]])]]]))]]))]]])]))]))))))]])])])]]])]))))]])]))])]]])]])))))])])])]]]]])]]))]))))))))]]]))]]]))]])])))]]]]]]))]]])]])))])]))]]]]])))]]]]))]]])))]))))])))])]]))))]]]])))]])])))]]])))]])]]]])])))]])]])]])]])]])))])]]])]]]))]]]))]]])])))]))])]])]))]])])])]))])]))))]]])]]])]))])))))]))]]))))]))]]))])]]))])]]))]])])]])))]))]])))])))]])])])]]]]]])])]]]]])))]))]))]]])])])])))))])]))))])))]))))]]])])))]))]])]))]]]])])])))]])]])))]]]]])]))))])])]]))))))]])))])))]]))])))]])])]]])]]]]]]]]])]])]]]])])]]]]))]]))]))]])]]])]]])]))]]]]]))))])))]]]]])]))])])]]])])])]]]])])))))))]))]])]]]]]]])]]]))]]))))]]))]])]))])))))]]]]))]]))))])))])]]]))))]])]]])]]])]])])))]]]]])))]])))]])]]]]])])))])]])]])))]]]]))]])])))))]])])])])])]]))]])])))])]])]]])]]]]]))))]))]])]))])]])]])]])])])]]])]]])]]]))])])])]]]])])]))])))]])])]))]]]]))))]]])))]]])]])]]]]]]]))]))]]]))]]))]]])]])))]))])]]])]]])))))])]))))]]]]))))]))]]])))]])]])))])]])))])])]]]])])))))]))]]))])]]])]))]))]))])))])])]])]]])))])]]))]]])])])]]]]])]]]]]])])]]]])]))]]]))]))]])]]))]))])])))]]))]])]]]]]))])])))])))))]]])))])))])]])]))]])])]]))])))]]))]])]])]]])]]))])])]])]])))])])]]]]])])]]]]]))))])]))))])]))])))]))])]])])]))]])))]]]))]])]))]]))))])))))]))]]]]))]))])]])]]]))])]]))])]]]))]])]])]])])))]))]]]))])]]])]]])]]]]))])]]))]])]]])))))]]])))])]]])])]))]]]]]])])])))))))]))]))))])]))]])]]))]])]]]])])]]]]]))]))])))])))])]])]])]])))]])])]))]]])]]]])]]]]]]))]]))]])))])))])])])]))]]))])])))]])]])])))]))]))]))))))])))])))))]))))]]]))])))]])])]]]])]]])]]]])]]))))]]])])]])))])))))))))]]))]))])]])]])]])))]]])]])))]])]]]])]])))]))))])))]]]])]))]])])]]]]]]])))]])]]]))])]]))))]])])]]]))])]]]])))]))]])])]]])])]]])])))))]))]]])]]])])))])))])))])))]])]]]))]])))]]]]]])))]]]])])])]]))]))])])]]]))))]])]])]])]]))]))]]]]]]]))]]]]]]])))]]])])]]]))])]])]]]))))])))]]]])))))]]])))]]]))]]]))]]))]])]])]]))]]]))]))]))]]]]])])]))])]))])])))]]))))])]]]]]]])]])])]]]]))]]]]])]]))))]]])])]])])]]]]]]]])]]]]))]]]))])])]))])])]))]]))]]]]]))))]]]))))]]]]])))))]])))))))))])))]]])]])])))]])]])]))]]])))])]])]))]]]])))]]]]))]]))]))]]))]))]])]])]))]))])]))))]))])))))]]]]])))))]])]))))]]))]]]]))])])]])))]))])])]]]])]]))])]])))]]])])])])))]]]])])])]])))])])])]])))]]))]]]]]]])]]]]]]])]])]])]))]])]]]))])]])))))])]))])]])]]])]]))]))])))]]])])]])))))]]]])]]]]]])]]])])]]]]]])])]]]))]])))]]))]]]]]]])]]]]]]))])])]]]))]])]]])))])]])]])]]))))])))])])))])])))]]]))])]]]))]]])]])])))))]]))]]])])]]]]]]))])]]))])]]))]))))))]]])])]])]))))])])])])]))])]]])]])]])))]]))]]]]]]])]]]))])))])]]])))]))]]])])])))]]))))))))])]))))]]]))]]])]]))]))]))))))))]))]]])]))])]]]]))]]))))]]]]]])))]]])]]]))]]]])])]])]))]]])]]))]))])]])))]))]])]))]))]]])])]])]]))]])]]]]))])]]]]))]]))]]])))]]))]))))]))]))]])]))])])]))]]]]))))]]))]])]])))))])]])]])]]])]]]]]]))])]]]]])]))])))]))))]))]])))])]])])]])]])]])])))))]]))]))])]))]))))]]])])])]]]]))]]]))]]]])])]])]])]))])]))))]]]])]]])])))])]]]]))]))]])]]]]])))]]])])]])])])]])))))))])))])]])]]))))))]))]]]))))]]])])]]])]])]]])]])]]])]))]]))))])])))))]))])])])])]))]]]])]])])]]])]]]]]]))])))))))]))))]]]])])])]))]]]])]]]]]])]))])]))]]))))])]]]]]]]])]]]]]))]]))])])))))])])])])])))]]))]]))])]]])])]]])))))))]])]]])))])]]]]]]))]]]))])]])))])))]]]]])]])))]]])))]]]])))]])))]))]]]]))])])]])])])]]))))]])]))]]])]]]))]))]])])])]]])))]]]])]]])]]]]]]])))]))]]])]))))))]]))]))]]]]))]))]]]])]]])]]]))])]]])))])))))])]]))]])))])]])]))))])))])]]]))]))]])])])]])]]]))))))]]))]))))]])]]))])]])]]))]))))])]))]])])))]]])])])]])))]]])]])])])]))]))]])]]))])]))]))))))])])]))]))]))))]]]])]]))]]))]]]]])))]]])))]))]]))])]]))))))]))]]]]]])))]))]))]]]]))])))]))]]])])]))]])]])))))]))])))])))]]])])))])]))))])))]))))]]))]]]]])]])]])))))]))]))]))]]]))]]))])]]]])]]]]]])]))))]))))]])]]])]]]))]]]))])])])]]])]])]])))]]]])])])])])]])))]]]])]]]]]]]])]])])]]]]])]]))]]])]]]))))]]]]]))]]]])])]]))))])]])]]])]]])]))]])])])))]]])])])))]]))]))]])))]]]]))))))]]]]])]]))])])))]])])]))])])]]))]]))]]]]]]]]))])))])])]]))))]))))]]]])))])]))))]]])]))))]))])]))]]))]])))]))])]])]])]]]])]])])]]))]])])])]])])])])])]]]]])])]]])]]])]]]))))]]]]])]])]))]))]])]]]]])])]]))])])]]])])]])]])))]]))]])]])])])]])]])))]])]]])))]]))])]))]]]]]]])]))]))]])]))]])]]))]))))))))]]])))))])])))]]]]]]]])]))])))]]))])]))))])]]]))))]))]]]]))]))))))]))]])]]])))))]])]))])]]]]])])))]]]]]]))))])]]])])))])])])))))]])])]]))]]]]])]])]])]]])))]]))))]]]])])]]]]]])))])))]])])])))])]])]]))])))]]]])])]])]])]])]))]]]]))))]))]]))))])]))))))]]))])]])])]]])])]]])))]]]]])))))]))])]]]]]]])])]))]]])]])))]]))]))]]))])))]))))]]]])]]]])]]])]]]))]))]]])]])]]])]]])]]]))])]]])])]])])]]])))]))]])]]]])]])])))]])]]]])]]))])]))]))))])])]])]))))])]])])])))]])]])])]))])])]])))]]]))]]]]]))))]])])]]])]]]])]]])]]]]]])])]]]))]]))))]]])])]])]]))])))))])))]))]])))])])))])])])))])]))]]]]]])))]]]]))]))])]))))]])]]])]))])]]])]]))]))]]])])]]]])))]])))])]]]])]]))]])]]]])]]]]])))))]))])]]))]])]]))]]]])))]])]]]))]]))]))]])))])]]]]))))]]))))]]]))]])]]))]]]])))]]]]])))]]]]]))])]])]]]))]))])]]))]])]))]))]])]]]]]])))]])]]]))])]])]])]])))))]))])]))]]])])]]])])))]]]])])]])))))]])))]])]]]])))]))))))))]))))])))))])])))))))]]]]))])]]))])]]])))]))])))]])))))])))])))))))])])]])])))))]])]])))])))]]))])])])]]])]]]])]))]])]]]]]]]]]]])))]])])))]]])]))]])]]]))]])))]]]])]))])]]]]]))]]])]])]]]]]]]]]]])))])))]))]))))))]]))]]]]]]))))]])]]]]]]))]]]]]])))))))))]))])))))))]]]]]]))]))))]])))]]))]])]]))]])])]])]]]]))))]])]])])]]]]]])])))))]]])]))))]]]])]]])])))]])]))]]))]]))]])])]])]))]])])))]]]]]]))])]]))])]]))]))])]))])]])])])))))))]))))]]]]))])]])))]))])]])]))]]]])]]))))])))])))]))])]]]]]]))]]])))]]))]]]])]])])])])]]])])]]])])])])]]))]]]))]))])]))]])))]))]]])))))]])]]]])))))])))]])]))])]])]]))])))]])]))))])))))]]])])])])])))]])])]))))])))]])]))])]))]))))]))]])])))))])]]]]))]]])])]]])))])]]]])]]))]])]))))))]]))])))]))])]))))))])]])])))]]]))))])]])])))))]])]]]]])))])])])])]])])]])])])]]))]]])])))))])])]]])))])])]]))))))])])])])])]]])))]))))]])])])])))])]]]])])])]]]]])]))]]])])])))))]]]))))))))]])]]]])])])]]]]]])])]])))))]]])))])]))]]]]]]))]]]]]]]))]]]])))])]]]])))])])))])]])))]]]))]]])))))]])]]]))]]])]])]))]))]]]])]])))]])])])))]]]]))]]])]))])]])])))]))))])))]])])]])))])))]])])]]]))])))]]])))]])))]]]]]))]))])])))])]])]))]]])]]))]]]))]]])]]])]])])])])))]]]]]])]]])))]])))]]]])))]))]]]]))]]])]])])]])]]))])]))]))]))]]))]]))]]]]]]]]])])])]])]))))])]]])]]])])))]]]]])]))))))]]))]))))]]]]])))]]))]])))])])])]))]))])]))]))))]]])]))]]]]))))))))]]]])]])]]])]]]]]]]]])]])])]))]]])]])]]]]])))])]]]]]]]]]))))))))])])])]])])))))])])))]))))]))]]))]])])])]]]]]]))])]]))))))])])]))])]]))]]]]]])])]])])])))])))])))]))]))]))]]))))]))])]])))]]])]])))])]])]])])])))]]))])]))]])))]))])])))]])))]]]])))])]]]])]]))]]]]]))]])))))])]]))))]]))]))))])))))])))]))]])))])))]])])]]]]]])])]]]))]]))))]])])]])]])]]))]))])]))]]]))]]]]]))))]))]]]]))])]))))]]))]]])])])]]))]])]))])])]]]]]])]]]]]]))))])])]]]]])])]]]]])])))]))]]])))])]]]]]))]])]]]]])))))])]])]]]))]]]]]))))]))]))))]]]]]]]])]))]]))))]))]])])])]])]]]]]]])]))]])]])))]])]]))])))))]))])))]]]]))]]))]))]))))))))]]))]]))])]))])]]))])]])))]])))]))]]]]]]))))]))]]]))))))]]]))))]))]])))]))]]]))])]))]))))]]]]]))]])))]])]))]])]])))]]])))]]]])]]))]]])]]))])])]])])])]))])]]])))]))))])]])))))))]])]]]])])]])]])]]))))]]]])])]]])]]]))]))))]])]]))])))])])))))])))))]])]))]]]]])]]])))])]])]))]]])]))]))))))]))]]]))])]]))]]]]]]])))))))]))]])))]]])])])])]))))]]]))))))])])]])]))])))])))])]])]]))])))]]]]])])))]]))]]]])]])]]]]))]]]))]]]])]))))))]))])]])]])])])]))]]]])])]))))]))])])]]))]))])]]))])))])]))])])))))]])))]]])]])]]))]]))))])])))])))]]))])]]]]]]])]])]])])]))])]]))])])))]]])])])]))))]])])])))]]])])]]]])]]))])))))))]]))))))])])])]])]]]]]])])]]]]])])]]])]]))]))]]]]])])]]]])))))))]]]))])]]]]))]]))]))]]))))])))]))))]]))]])]]])]]])]))]]])]]])])])))))]])))))]))])]]))]]]])))]]]])])])]])]))))]]]]))]])]])))])]))]]]]])]]))]]))]]]]]]]])]))))]])))))])]))))])]])))]))))])])))]]]]])]]])]])]])])]))]]))])]])]]))]))))))]))]])]]])]))]])])])])]]])))])])])]]]))])))]]]]]))])])]]))]])])))]])))]))]))]])))])))])])))))]]]]))]))])))]])))))]]])])])))]))]]]]]])]))))]])]])))]])])))))])]]))])])])))])]))])))])))]]))])])]]]))])]]])]]))]]))]]])]])]]])))])]))]]]]))))))])))])))]])])))))])))]])]])]])]]))))]))]]])])]])]))])])]])]])))))])))]]]]]])]])]]))))]])]))])])])])]])])))])]]]]]]))]])))]]])])))))])])]]]])]]]]))))])))))))])]))))])))])]))))))]))])]])])])]])])))]]]))))]]]]]]]]]]]]))]])))])])]))])]]))))]))])])))))]))])))]])])]])))]))]))])))])]))]]]]))])]))]]]))])])])]]]]])]]))])))])]])]])]]]]]])))])))))))])]])]))))]]))]])))]]])])])])])])))]])])]])])))])]]]]]]))))]))])]])]]])]))]))]]))))]))]]])))]])]))))])]))]]]]))))])))])]]))))]]))]]])])])]))))))]]]]))]])]]]))]])))]))]])]]))]]]))]])]]))]]]]]]))])))]]]]])]))])]]]))]]]]])]]])]]])]]]))]]]])]])])])]])]))])]]]]]]]]]]])))]))))]]]))])])])]])])]])]])])]])))))]))]])]))]]]]]]]]])))]]]])]))]])]))])])]]))))])])]]])])]]]]])]]))]])])))))]]])]])]]]]))))))))))])))]])]])))))])]]]]])]]])]]]))]])))]))])])))])]])))))))])]]])))))])]]]))]]]]]]))]]))])]))]])])]]]]])))))))]])]])]]))))])])]]))]))))))])]]])]))))]]])]]]])]))]))]])])))]]])]))])))))])])]))]))])]]]]]])]))))))]])])))))))]])]]]]))))))]])))])]))])]])]]]]]])))))]))])]])]])]])])))]))])])]))]])])))]))))])])))]]]]]])]])]]]])))]]))]]]]]))]))]]]])]]]]])]])]])]])))])))]))])))]])]]])])))]]]))]]])))))])]]))))]))]))]]])))]))))])])]]]]]])])])]]]]))]]])))]]))]]]]))))]]]))])]]))])]])))])]])))))]]]]]))]])])]])]))]])))]]))]])])]]))]]]]]]]]]]))]])]]]])])])]]]]]]])])]))]))]]])])))])))]))]]]]))]]))])])]]])]))])]))])]]))])))))])]]]))]]]]]]]]])]]])])))])]]]]]]]))]])])]))]]]))]]]]]]])))))]])]])))])]))])]]]]))]])]]))))))))])])]]])]]])])))))])])))]))]]]])]))]])))]])])])])]]]]]]))))]])]]]]])))])])))))])])))]))]])]]]))))])]]])])))]]])))))]]]))))])])]]])]))])))]))])))]]))]]])])])]]])]])))))]])])]])])]]]))])])]]))])])]]])]]])]])))])]]]]))])]]]])))))]]]]])))]])]]])))]])]))])))])))]]))]))]])))))]])))])]))])])]]]]]]]]]]]]])])))]]]))))))]]]])])]))]]))]])]]])])))]))))]]]]])))])])])])])])))))]]))])))]]]]]]]]))))]]]]]))])]))))])]))])))))))])]]]))])]]])]))))]]]])])]))))]]]]]]]))]))])]]))]]))]]))])])])))]]]])))]]]]]])]])))]])))]]))]]]))))])))])])]]])))))])]))))]]]])))]))]))]])]])))]))))])])])))]]))]))]))))]])]]])])))))]]))])])])])))])])]]))]))))]]))))])])))])))]]))]]))))])))])]]]])]]])])]]))]]))])])]])]]))]]]]]]]])))]])]])]))])]])))]]))]]))))]]))])])]))]])]])]]))]]]))]]])])]]])]))])]))])]]]])]))]))])]])]]]]]]))]))]]]]])])])))))]])])]))]]]]))))))])]]]]))]])])]))]]))])]])]))])])]])]])))]])])])]]]))]]))])]])]]])])]]]]]])])])))))))])]]))]]))))]))))])]))])]]]])))])]]]])]))])])])))])))))]))]))]]))]]])]])]]))])]])))]]])])])))])]]]))]]])))))]))])])))]]]]]]]]]))])))]))]))]]]])])])])]]))]]]]))))))]]))))))))))]]]]))]))])]])))])]]))))])))]])]]])))]]))))]]))]))]))])]])])])])])])))))))])))])]]])]]])]))]])]]]]))))]]))))]]]))))])]]))]))]))))]))]]]]]])))])]])]])])])]]]]))]]])]]])]])]))]]))]]])]]]]]]]))])]))]])]))))])])]]]]]])]])]]])))))]])]))])])]))))]]))]]]))]]]])))])))])]])])])]]]]]))))))]))]]]])))]))))])])]]]]])))]]]]]]))))))]]]))]]])]]])]]]]]]))]]]])]))))))]))])]]]]))])]]]))]]))))]]]]]])]]]])])]])))])))]))])])]]))]])))]))))))])])]]])))]))]]])]))])])]]]]]))])])]]]]))]]]]]]]])])]])]]]]]]]]]])]))))))]]])]]))])])])))]]))]))])))))))]]])))]))]]))]]))]])])))))]))]]))]))))]))]])])]]))])]]))]]]]]))]))]))]))))))]])]]]]])]]]]))])]))])]))]))))])])])])])])]))]]])))])]]))]]]]))]))]])))])))]])]])])])]])])))]]]]))]))])))])]]]))]]])]]])])))])))])]]]]]])]))]))]]]))]]]])))))]]]]]]))]]]]))]))]))]]))])]))]]))]])]]])))]])))]))]])))]))])])]])])]))))])]]))]))]))))]])]]))])]]))))]]))])]]]]]]]])]]]))))])))])])])))])))]]))])]))))])]]]])))])))])]]]]])]])))))])]))]))]])))])))]])]]]])))])]])))]))]])]]))]])]]]))])]]]])])])])))))]]))])))]]))])))]))))))]))]]])]))))))))))))]])]]])))]]])]])]]]])])])]]])]])]]]]])]))]))))]])])]]])))]])]))))))])]]])])])]))]]])]]]]))]])]])]]))]))])])]])))])])]))]))]]])]])]))))]))))))]))]])]))]]]])]])]]])]]]])))]])]])]])))]]]]])]]]]]]])]))])])])]]]]))))]))]))]]]]])])]]])]))])]]]]))]])])))])]))])])]]))))]]])])]))]])]]])]])))]]))))]]])])]))]]))))])])))]])])]]]])])]]]]]]]))]])))]]]]]]])))])]]]]]))])))))])))])))]])]]])]]]]])]])])))]))]]))))]]))]])]]]])))]))]])])))))]]))]))])))))))]]])]])])])]))])])])]))])]])))]]])]]]))))]]])])]]))]])]])]])]]))])])))]]])]))))])]))))]])]))))]]]]])]]))]]]]))])))]))]])])]))]]]))]]))])]]))])])))])])))])]))])])])]]))]]]]])]]]]]])]])]]]]])]])]]))]]))]]))]]))]]])]]]]]])])]])]))))]]]]]])])])]))])])]))]])]]])]]])])))]))]]]]])]))]))))]])]])]])]])])]]]]]])]]]]))))]])])]]])]))))])))))])]]]])]]]))])))]))]]))]]]]])]]]))))]]))])]))]]]])])])]]]))]))]]]))])])]]])])))]]))]])])]))])]]])))))))))]]]]]]]]]]]))]])))]]))]]]])))]]]))]]]]))]]]]))])])))]]])))]]))])]]]]])]]]])])))))])]])))])))])]])]))))]]]]))]]]]))]])]]))])]))))]]))]])]])]]]]]))])))))]]])]]]))))]]]])]))]]))])))]]]])]))])))))))))]))]])]]))]]]]]])])]]]]))]))))])]))))]]]])])]]])]])]]]]])]])])])]])]]))])]))]])]))]]))))]])]]))))))]]]]]]]))))]]])])])])]])]))))])]])))]]])))]))]])]])]]))]]])]]])))]])])]]]]]]]])])])]])])]])]))]))])]])))])]]))))]]])))))]])]))]]])]))]])])]])])))]]]])]]]]]]]))]))]]))))]])]))])])))])]])))))))))))])]]))]))])]))])))]))))]]])])]]]))))]])]]))])]]])]])]]]]]]]))]]]]))])]))])))))]])])]))])]]]]))))]]]])]))))]]]))])]])]))]]]]))]))])]))]])]])])]))])]]]]]]]]]))])]]]]))))])])))])]))]]]])))))]))))))))))]))])])]]))])]])])))])]]]))]]))])))))])]])))])]])])]]]])))]))]])])]]))))))])])))]])])]])]])])])]])]]]]]]]]]]]]]]]])]]))]]))))]]]))))]]]])])]]))))))]))]])))])]])))))))]]]))]]]])))))]))]]))))))])))]]])]]))])))]))])]]])))])]]))))))))]])]]]))]))]]))))]))])))]]])]]]]]]]])]]])]])]])))])))]]]]))]]))]]])]))]))]]]))])]])])))]]])])])])]]))))])))]))]))]])]]]])))]]]]]))])]))]]]]]]])])])))])))]]))])))])])))]])]))])])])))]])])])])]]))])]]])]]]))))))])]]])])))]])]]])]]]])]])]]))])]]]]))]])])]]]])]]]]]]])]]])])))])))]]]]))])]])]])])])]]])]))))]])]]])]]])])]))))]])])))]]))]))))])))])))))]])]]]))]]])])))))]]))])])))))]))]))])))))])]])]))))]))]]]))))])]]])))])])))]])))]))]))]]))]))))))]]]]])]])]])))]]])]]]]])))]]])]])]])))]]])])])])])))))]]])])]))))))]]]]))]))))]])]]]))]]]]))]]]]])])]])))]))]))])))]]]]])])))]])]])]])])))]]]]])]]])]]]])]]]]]]])]]])))])])]]])))])])]))]]]]]]])]]])))))])])]))))]]]])))]]]]]])])]])])])]))])]))))]))]])])))]])]]]))]])))]]))])]]]]]]]))])))]]])]]])]])]]]]))]])])]))]]]]]]]]))]]))))))))])]))])]]))])]]))]))]]]])))))]))))]])])]))])))]]])))]]))))]]))))]))]])))]))]])]))]]]]]]])))]]]])]))))]))))]]))))))]))))]))]])]))]]])]])]))))))])]]])]])))])]]]]]]))]])))])))])))])))]]))]))))]])])]]))]]))]]])))]]]]]])))]]]]]])]])]]]]]))))])]])))))])])]]])))]]]]])]]]]])]])])])]]])]])])]]]]))])]))])))])])]])]])])))))])))]])]]])))))))))]))))]))])])])])))]]])])))))])))]])])])]]))]))))])]])])]))])))))]]]))]])])]))]))]]])]])))]))))))))])]))])]])]])])]]))])]]))]]]])])])])])])]])))))))]])))]))))]]]))])])))])]))))))]]]))))])]])))))]]))))])])]]))]]])]])])]])))]]]]]))]))])))]]))]]])])))))))]])])])])]]]]]]]])))]))]])])])))))))]]))]))])))))))))))]]]]])])])]]]]]))]]])]]))))])))))]])))]]))])])))))))])]]])))])]]]]]])]))]])]))]))]]))))]])])]]]]]]]))))])])])))]]))]])))])])]]]]])]]]))])))))))]]]]))]])]))]]))]))]]])]))])))]])])]]))]]]]))]))])])))]))]]]]])])]))]])))])))]]]]])]]]]]]])]])]]])))])]])))])]]])]]))]))]]]))]]))]))]))))]]]]])]))]))]])))])]])]))]]))]])]))])]])]]])]]]))])))]])])])]]]])]])]]])])]]])))])]))])))))])]]))))]]))]])]))])]])]])]]])]]))]))))))]]))])]]])]))))]])))]]]])])]]])))]))])]))]]])))])])))]))])]])]]])]]))])))))))]]])])]))]))]]]]))]])]]]))]]])))])]))]])]]]])]))]))]])))]]]]]))]])))]])))]))]))])]))]])]]])]]]]]])])]]))])])]))])))))]))]))))))])]]]]]])))])])]]]])]))])))))]])])])])))]]])])]]))))))]])])])]]]]))]]]]]))]))])]])]])])]]])]))]))]))]])]]))]))]])]))]]])))]]))]]]]])])]])]]]]))]]])))]]])]]))]))]]]]])))]))]))))]))])]]]]]]]]]]])])))]))])]]]]]]]])]]]]))]])])]]]]])])])))]]]]])]]))]])))]])]]))])])]]))]))]])]))))]]]))))]])])))))))]]))]]]))]))]))]]))))])]])))]]])]))])]]]))])]]]))))])]))]]]]])]]]))]])))])]))]))])]]])))]]])])]])])))])]]))))]])])]]]))])))]])]]]]]))]]]])]]))))))]]]])]]]))))]))]))]])]]))])]))))])]]))]))))])])]]]))]])]]]])])]])]]])]))]])]])]]]])]))])]])])]))]]]])))]]]]]])]]]])))]]]]]]]))]]])))]])])])]]]]]))])]))))])]))]]]]])]])])])))))))))]])]])]])]))]]]))]))]]]))]])]))]])]))]]])))))]]])])))]]])])]])]]]))])))]]))))]])]]]]]])))]]]]]]])]]])]))])))]]]]]]]])]]]])))))]]])))]))])))])]]]]]))])]]]])]]]]]])]]]]]])]]]])]]]))])))]]))]))]])])]))]]))]))])))))]]))])]]]))))))])))]))]]]]])]))]))]]))])]]]]]]]]]])]]]]]]))]]]]])]]]]]]]]])))]])])])])])]))]]]]])]))]]]]))))]]))]))]])))]])]))))]))]])))))))]]])]])])))]]))))]])])]))])]]])])]))))])]))]]]]]))))])])]])]))]))]]]])]]))]]))))]))]]]]])])])]]])))))])])))]])]]]]))])]])]]))])))]))])]])))]))]]]]]]))]]]]]])]))]]]))])]]]))]))]]]]]]]]]])))])]])))]]))])])]))])]]])]]]))]])]]]))])]])))]]))])]])]])]]]]))))]]]]]]]]]])))]]))]]])])))]))]]]]))])]]))))]]])])])]])]]))]]))]]]])))]))]))])))]])])])])])])]]))]]]]))])]]))]]))]])]))])))])])])])])))))]])])]))))]]))]]]])])]))])]])])]]))])]]]])])]))])]]))]))]])]]]]))]]]]])]]]))]]))])]]])))))]])])]]]))]]))])])]]]])]))]]]]]))]]])))])]]))]])))))]]]))])]]]]])))])]))]]])])])])]])]]]])]))]))]]]])))))]]]]))]))]]]]])]])]]]])]))]]]]))])))])))]])))]]))]]])]])))])]))])]]]]))]))]))])]])]]])])]))]])]])])])])))]]])))]))]])]]]))))]])])])]]])]])]]]))]]])]]])]])))]]])]]]))])])]))]]))])]))]))]]]]])))))))]])))]]]]]]])])]]))]])])))])])))]))]]])]]]))]]])]])])])]])]))))])])]])]])])]]]])]]])]]])]])]]))]]]]]))))]]])]]]]]]]]))])]))])))]])]]]]))])]])))])]]]))]))))]]]])]))]]))))]]]]))))))])))]])]))))]]]))))])]]]))]])))])]]]])]])])]])]])))]]]))])])]]])]]]))))]))))]]])])]]]])]]))))))))])))]])]))])]]]]]))]]])))))]])]]))]]]]]]])])]]]]))))))])])]]))])))))))))]))]]))]])]]]]]))))))))])]]))]]])])]))]]])]]))]]))]]]]))]))))]])])]))]])]]]]]])))))]]]]]]]]]))))]]])]])]]))])]]]))]]))))]]]])))]]])]]]]])))]])])]]]]]]])]))))))]]]]])))))]))]])]))]])]))]]]]])]]])))]])]]])]))))])))))]]))))]]))))])]]])]]]]]])))])))])])])])]]]]])))]])))))]]])]]))]))])]]))]))]))]]]))])))]]]]))]))]]])))))]]]]]]])))))])])]]]]]]))))]]))]]]])]])])]]))]]]]]])]]]]])])])))]]]]]]]]])])]))))]]))))]]]]))]])])]]])]]]]])))]])]])]))]))]]]])])]]])])))))])]]]]]])]]])]))])))]]]))])]])]]))))]]])))))]))))]]))))]])])]]))]]])]])))]])))]))))]]]))]))]]])]]]])]]]]]]])])])]]])]]))]]])))))]]]]]])]]]]]]]]]]]))))]]]]])]])])))])])]]]))]])))]]]]])))])))]]))]))]]))]])]))))]]])))))]]]]])]])))))]]]]]))])]))])]))]))]])]])))]))])]))]])])])]))]]))]]))])]]])))]]])))))))]))))]]])]]]]]])])])])]]))])])]]]]))]]]]))]]])]]]])])))])))]]])])]])]]]])]])]))]))))]])))])]))))])])))]]))])]]]))])])])))))])]]))]))]))]]])])])]))))))]))]))])])]]]]]])))]))]]])])])))))))])]]]))]]]]]))]]]])]]))])]]]]]]])))))]])])]]]]])])]))])])))]]))]])]))]]))))))]]))])])])]]))]]]]))]]]]]]]))))))]])]]))]]]])])])))))])])]]]))])])]]]])))]])]])]])])])])])])])))]]])]))]]]))])))]])))]])])])]]]]))]]])])])]]))])]]]))]))]))]]]])])]]]]]])]))]])))])]])]]])))]]]))]]]))]])]]])]]])])])]]]])]]))]))))))]]])])]])]))]))])]))]))))]))]]))))]]]]]]]]])])]))])]]]]]]]])]]]]]]))]))]]]]))]])]])])]]])]]]]]))])])])]))])]))]]))]))]))))])])))))])))]))]]]]]])))]]]])])))]]]])))]))))]])]])]]]]]]]])]])))]])]]]]])))])])]]))]))))]])))]))))))]])]])))))))]]]])]])]))]))])])])])]])]])))])]]]))]]])))])])]))]]]))]]]))])))]])]))]))]]]]]]]))])]]]]]))))))]])]]]]])])]))]]])])]))]))))))]])]]))])))))])]]]]])])]]))]])))))])])))])])])))]])])])]])]))))]]]])])]]]]]])]]])]))])]))]))))]]]]))])))]))]))))]]])]])))]])]])]]))]]))]])]]])])]]]]]])))]]))]])]))]]]]]]))))]])]]])]])]))])]]]]]]])))))]])]))]))))]])))]])]]))]]]))]])]))]])]])]]]]))]]))))]]])]])])])]))]))))])]]])]]]]))))]])]))))]])])))]))]])])))]])]]]))]]]))]]))])]])])])]))]))))]])])))])])]))))))))])])]]])]]]])]])))]])]]]]])]])]))))])])])])]]]))))])))])])]])])])))])])))]]]))]])]]])]]])))))))]))]]]]]]]]])]))])])]]])])])]))]]]])]])]]]]]]))]))]])))]))))))]]])))])))]])))]]]))]))])])]]))]]]]))))]]))))]))))])]])]))]]]]]]]]]])]))]))])])])))]]])))))]))))))])))))]])]))]]])))]]]])])]]))]))]))]])]]])))))])]]])))]]))]]]]]])]]]))]])])]))]]]]])))]]])])]))]]]]]))]]]]))))))])))])]])))]))]))]])])]))]]])])])))]]]))]]]])]]))]]]]])]])]]]]))])]]])]]))])))))]]])]])]]]]])])]]))]]])))])])))])])])))]))]]]]]))]]])])]))]])]])])]]))]]]])))))])])])]))]))])])])])]]]])])]]]]))]]))]))]]]])))])))]]))]]]))))))])]))])))]]]]))])))])]]])))])))]]]])]))))]))])]]])]]]))])])]]))]))])]))))]]))]])])]])])]]]]]]])])]])]]]]]))))))]]]))))]))))]]]]))])])])]])])]]]]]))))])))))]])]]]])))))]]))])]]))])))]))]]]]))]))]))]])]]]]])))]])))]))])]]]]]))]]))])))]]]])]))]])]])))]))]]]))])])]))))]])]]]])])]]]])))]))]]])))]]]])])]]]]])))])]])]))])]))))]])]]))])])))]])]))])])))))])])))]))]])]]]]))]]])]))]))]])))))])])])]]))]])]]))]])])])]))]]])))]]))))])])]]))])]]]])]]]]])])]]))))))]])]]))]]])))))])])]]]]))))]))])]]]]))]]))]))))])]]])]])]]]))])]]]]))])))]]]]]]])]])]])])]))]))]]]])]]]])]]])])])]))))]]]])]])])])]])]))]]]]]))]]))))])]])])))]]]]))))])]))]])))]))]]))))]])]))]]))]]])))]])]]]]]]]))]]))]]]))]]])])))))))]])])))]]]))]])])))])))])))))))]]])]]]]]))]]])))])))))])])))))))])]])))])])])]])])]))]]))])]]]])]])]]))]]))))))]]]])]))))))]]]))))]]))]])])))]]])])))]]))]])]))]]]))]]]))]]]])]]])])]))])]])))))]))]]]))])])]])))]]))]])]]))]])]])])])))]]))]))]])))))]))]])))))])))]]))))]])]])]))]))))]]]]))]))])))])]]]])]]]))]])]))]]))])))]]])]]))]]]])])))]]])]]]])]]]))]]]))))))])]))]]]))))]])]]))]]))]]]]]]])))]]]]]]])]])]))]])]))))]]]])]]]]])])]))])])))]]))))))))]]))))])))])])]]]))])))))))))])])))]))))])))]])])]])]]))]])]])]))))]]]]]]])]))]]])]]))))])]))))]))]))]))))])]]])])]))))]])]])))]))))))])]])]]]))))])]))])))]]]]]])])]])])])])]))]]))])]]]))]]))]])))]])])]))]])])])])))]]))]])])))))])]])]))])])]])])])]))])]))]))])]]))))]]]]])]])]]))))])))])])))))]])]]]))))]))])]]]]])])))))]]]]))]))]]]])])))])])))]))])])))))]))))))]]))])]])))]))])]])])))])]])))))))))])])]))]]]])])]]]))))))))]))]))])]])))))])]]]))]))]]))))))]))))]]]]]]]))]]]]]]))])])]]])]))])))]]])])]))])])]))]]])])]]])])))]]]])]))])]))]]]]]]]))]))]]]])]))])]]))))))]]]))]))])])]))))])]]))])))]]])]))])])))])]]])])]]])]]]]]])]])]]]))))])]]))]])])])]])]]])])))])]))])]]))]])))]])]))]))]]]]]]]])]])])]]))))))))]]))))]))))]))])]))]]]])))))))))]))))])])]]])))]]])]]]))))]]])])]])])))))))]]])]]])])]))]])])]))]))]))])])]]])])]))]]]]])])]])])))]))]])]))))))))]]])])])))))])]])]]]]]]])])]])]))])]]])]))]]])))]]))])]])]]]])]])]]]])]])]]]])]]]]]))))]))))]))]))))]])))))]]]]))]]]]]])))))]))])]))))))]]]]]])))])]]]])]])])]])))))))))))])])]))])]]]]])])]))]))]])))])])))])]]]]])))])))]])))))))]))))])]]]]]])]])]]))]))])]]])])])))]]]))])]))]))]))]]])]]]])]]))]]])]])])]))))]))])]])]]]])])]]]]])]]))]))))]]]]]))])]])))]))]])]]]])))])])])))]])])]))]]])]]]]]]]))]]]])]])])]))]))])]])))])]]]])))]]]])]]))))]]]))]))]))))]])))])))]))))])))]]])))]))))))]]]))]]))]]]))]]))])]])))])))]]]]])))]])))))])))]]))]]]]]))]))]])])]]]])])]))))))]]]]]]]))])))]]])]])])))]]]]]))))])]])])))]))]]]]]])])))]]])]])))]))))]))]]]]])])))))]])])]]))])]]])))))])])]])))))]]))]]]]]]]])])]])]]))]))])]]])])))]])])]]))))]))]]))))])])]]]))])])])]))])]]]]])))]])))])]]])))])])))]))]]]])]))]))]]]))]]])]))]]]))]])]]])]]])))]]]])]))]]]))))]]])])))))))]))])]]]))]]]]]))])]]))])])]]]]]]])])]]]))))]]])]]]]])))))])]]))))))]))))])]])]])]))]])])])))]]])])))]])]])]]]]]]]]]])]]])))))])]]])]])]])]))))])]])))]]]))]]])]]]))))])]))]])]]))]]])])]]]))))]]])]]]]]))]])]])]])]))]))))))))]]]))]]])])]]]])]))))]))]])]))])]))))])])]])]])]])))))))])])]]]]]))]]]))]]))]])))))))]]))]]]]))))))])]]))))]]]]]])]])]])))])]))]])))))]))])))])))]])]])]]))))))]]])))]]])]]))]))])])]]))]))))]]])])]]]])))])))]]]))))]]))]))]]]]])]])])]]]]]]))))]])]]))]))])])])])]]])))))))))])]))]))]]])]]])]))]])])])])]))]]]])])])]])))]]))]])]])]))]])])]]))))]]))]]]]]]))])]]])]))))]]])))]])))]])]]]]]])])]])]))])])]])))])]]))])))])])]))]))]))])]))))])))])])]]]])]))))))))])]]]]))))])])])]])]]]])]]]]))))]))))]])]]]))]))]]]]]]])))))]]]))]]]]]))]]])]))))))]))]])))]]]]]]])])]))]]]]]])))]]))))]))]))))))])]))]]]])))]]]]])])]])]]]]]))]]]])])])))))]]]]]]))]]]])]]])])]))])]]]])))])]]))])]]))))]))])))))]]]])]])]]])]])]]]])])]])))))]])]]))])])]]]]]))])))])]])])])]))]))))))))))))]])]])))))]]]))]]]]]]])])]))))))])]]])]]))))])]]]]]])))]])]]]]])]]])))])])])))]]]]))]])]))])]]])]]]]))])))]]])]))])]]))]])))]])])]]])]]]))]])]]]])))])))]]]))]))])))]])])]]))))])))])])))]]]])]]))]])]])))])]])))))])])]]])]]]])))])]]]))))])])]]]]])))]]))])])]]]]]))]])))]]))]]))]]]))]))]]])]])])))])))])])))])]])]))]]])]]]]]]]))]]]]])]]))])])]]]))])]))]]))]]]])))]]]])]))]))])]]]])]]]]]])])]))))]]]]]])])])]])]]])]]))]]]]]]])]]))])))])))]]]]]]]]])]))))]]]]]])))))])]])]]]))]])))])]))])])])])]])))]))])]))))]]]]))])]])]))]]))]])]]]))]]))]]])))))]])]]]]))]]]]])))]])]))])]]]))))))))]]))])))))]))]]]]))]])))]]]))]])]]))])]))))]]]]])])]])])])]]]])])]))])])])])])])))))))))))]]]])]]))]]]]])))]))]])])]]]]))]]]]))))]))))]]])]]))))]]]]])]]]]]))))]))]]))]))]))]))]]])]])]))]))]])])]))])])]]]])]]]]]]]])))]))))]]])])))]))]))])]))]]]])]))])))]))])])]]]])))))])))])])])))])]]))])])])]])))))])])))])))]))])]]])))))))])]]])])]])]]])]]])])))))]))))])]])]])])])))])))))])]))]))]]]))]]])]]]))]])])]])]]]])]])]]]]]]]])))))]]]])])])]))]))]])))])])]]))]])]))])))]]))]])]]]])))]]])))]))]])))))]]]])])])))))]))))))])]])))))]))])]))]]]]))]]])])]]]))]]]])]))]))])]))]])]]])))])])))]]]])]]))])))))])])])]]]]))]]))))])]]))))]]])))])])))]))))))])]])))))]]]]]]])]]))))]]))])]]]))])]])]])])))]])))])]]]))))]]))]))))]))))))))])])])])]))])]])]))])))))]])]])))]])])))]))]))]])])))]]])])]]))]])])])]])]))]]]]))]))))])]))]])]))]))]])])]]])])))]]))]])))])))]])])))]])]]]])]))))))])]))]])])])])]]]]]])]])])]]]))]))])]]])))]]))])]])])))]))))]))))))))])]))])]]]])]])]))]])))])))))))]]]])))))))]))]])]]])])])])))]]))])]]))])]])))]]]))])))])))))])]]]]]])]])]]]))]])]))]]])))]))]))))]]])))]]])))]))]))])))]])]])))))]]])))))]])))]]))]]))))]]))])]])]]]]]]])]]))]))]]])]])]])]])]]])]]]]]])]]]))]))]]]]]]]))]))))])]))])))))]))])]])]))))]])]))]]))]])]]))]]]]]]]))]]]]]))]))))))]]])]]])]])))]]]))]]]])]])]))])]]]])])]))]]]]))])))]]]))])])))]]]]]])))))])]]))]])]]))))]))]]])]]))])])]))]]]]]))))]])]])]])))]))]]))]))])]]])))]]]]]])]]]])]])]]]]))))]]])])))]))]]]))])]))])]]]])]]])))]]])]]])]]]])]])]]))))])]]])))]])]]])))))]))))))))))]]])]])]]])]]]]])]]))]])]])))]]]]))))]]))]]]]))))))]))])])])])))]))]]]]))]]]]))]])))])])]]]])))))])]]])])]])]]]]))))])]]))]]]]])))]))])))]]]]]]))])))))]))]]))))]]]])]]])]]]))])])]))))]])]])]]]]))))]]]))]]])]))]]])]]]]])]]]))]])]]]]]])))]]]))))]]))]]))])])])]])])]])])))]))))]]))])]]))])])))]))])))]])])]]])))))]]))])]]))]))]]]]]]])]])))))]]]]])])]]])])))]]]]]]]))))])]])))]])]))]]))]]))))]])]]])]]]]])])]]]]]]])))])]]]))])]]])]]))]]]]]]]]]]))])]])]]])))]))]]]]]])])))]])]])]]])))))]))]]])]])])]))))))))]))]]))))]]]]))]]])))))))]))]))]]]]])]])))))))))]])]])]))])])]]))]]]]])])]])])))))]])])]]]])]]))]]]])]])])))))]))]))]))]]))))))]]]))]]))]))]]))))])]))]]]])))))))])))])])]]])]])))))))]])]]]]]]]]))])))])]])))]]))))]]]])])]))]]]))]]]]]))]]])]])])))]]]]]]))]]])))))])))]]))))]]])]])]))])])]])))])]]])]))])])]))]))])))]])]]]]])])])])]]]]]]])])]])]))))])]))))]])]))]]])))]]])])))))))]))]])])]))))]))]])])])))))]]))))]]]]])])]])]]]]])]])]])]))]])))]]]])]))]))]])]]]))]])])])]]))]])]))))])]]])])]])]])))]]])))))]]]]]))])]])])]])]]))]))))]]))]])))]]])]]])]]]]])]))]]]]])))]])))]])))]]]])))))))]])])])]]))])]]))))]]]]]))]])])])]]))]]])]]]]]]]]))]]))])]))))]]))])])))]])))))))]])])))]))))]]]]])]]]]]]))]])))])]]))]]])]])]]))])]))]))]]]]])]))]])]))))))]]))])))]))]]])])]]])])])]]])]]))))]]]]])))]]])])]])])))]))]])]]))))]])]))]]]]]]]]]]]]]]])])]]))]))]])]]]]]]))))]))]])]))])]]]]]))]]]]]])))]]])))])]]))])]]]]]]))])])])]]]])])]])]]))])))])]]])]]])]]]]])))))]])]))]]]]]))]]])])))]))]]]]])])]])]]]))]))])]]))])]]]]]]])])]]]])]]))]]])])]])]])]]]]])))))))]]]])]]]]]))])]]]))]]]])]])]])])]]]]]))))])]]))]))))]]))]])]]))))]))]])]))]]]]))]]))])]]])])]))])]]])]]))))]]]]]))]]))]]])]))]))]]]]))])]]])))]]]))]])]]))])))))]]])]]]])]])))]]))])])]]]))]]])))))]])))]]]]])]]]]))))))]]])]])])]))])))]]))]))])]))])]])]])]])]))]])))])]]]]))]]))]]])))))])))]]])]))]]])]))])]])]]))))]))))]])]]])])]]))))]]]]))]])]))])])]]])]))))]]]])]]])])]]))])]])]])]]]))]])]]]]))])])]]])))]]]))]))])])]))))])])]]]])))]))]))]))])]))))])))]))])]]])))])]]]]))])]]])))))])]])]])])))))]]))])))])))])]))]])]))])]])))])]]]))]])])))]))])))])]))))))])])]]])])]))]))))))]))])]])]]))]]])))] [[((([([[([[[([([[([(([[([[([[[[[[[[[(((([[[[[([[[([([[(([((((((([[[[[[[([[((([[[[[(([([[([((([((((([[([[[[[[[(([(([((([([[([[(([[(([[[[((((((((([(([[(((([([[[(([([([[[[([([(((([[[([[[[[(([[[[[[[[(([[[([[((((([[[([[[[[[[[[[((([(((([[([((([[(([[[(([([([(([[[[([((([(([(([(([[([([[((([((([(([([[(([[([[[[[[(([([(([[[(([((((([((((([([[[((([[(([(([(([[([([([[([([[([(((((([[[(((([[(([(((([[[[(([([((([[([[[[[[((([(([([[[((((([(([([[[[[((((([[[(([[([(([[[[(([[((((((([(([[(([([(([[([[[([((([(((([[[((([(([((([(([[([(([([([[[((([[(([([[((([([[[[([[[(([(([[[[[(([[(((([[((((([[[(([([[[[([[[([([([([[(((((([(([(((([([[[([[([((([[((([[([([([[[[[[([([([([[(([[([[([([[(([[([[[(([(([[([[[[((([[[(([([[(([[([[((([([[(((([[(([((([(([((((([[[[([([([[(([[([[(([(([([((([(((((([((([[([[[([([([([(([[[(([(([([(([[[[[[((([(([(((([[[[[[[[[[(([(((((([([([[[(((([(((([[[[[([[[[[[[([(((([(([(([((([(([([(([(([((((([(([[[[([([(([[([(([[(([[([([[([([[[([[((([[(([[(([([[[([[[([([[[[[[(([([[[[([[[[[[((([[[[((((([([([[((((([((([(([([[(([[[([[((([((([[[[[[[[(([[[([([([[[[[(((([([(((([(([([[[[[([([((([(([([[(((([[((([([[[([[[[(((([[[([[(([[((([([[([(([[(([[[[([[((([([[[[([([[[([[([[[[(((([[[([([([((((([(([([([[([((((([(([[([[([[[(([([((((([([[([[([([([[[[[(([(((([([[([[((([[[([(((([[[([[[((((((([[[[[[[[[([[[[([(([[(([(([(((([[[([(((([[[[[[(([[[([([[((([[[[[[[(((((((([(([[[[[([[([([((([[[[((([[[[[[[[[((([[([(([([([[[[((((([[[(([((([[[[[([[[[(([(([[[([(([((([[[[[[[(([(([[([[[[(((([(([(([((([[([[[([(([([[[([[(([[[[[[(([[((([((([[([([[[[([[([[[[[[[[[(((([(([[[(([[([[(([(([[[[[[[[[[([([([(([([[[([[([[[[[[(((((((([(([[[(([[[(((([((([[[[[[([[[((((([([[((((((([[[[[((([[([(([[(([((([[(((([[((((([[((([(([[[([([([[[([(((([([[[[[([(([([[([[(([[[[((([[([([[[([[[[(([[[[[(([([[([([[[[([(((([([[([((([(([([[([[[([(([[(([[[([(([[[([[[([[[[((((([[[[([[[(([[[[[([([[[([([((([[[[(([([(([([[[([[[[[((([((([((([[([[[[[([[[(([[([(([[[[(((([(((((([[[((([[(((((([((((([[[([([[[[([([([[((((((([[(([[([(((([[[[((([[[(([((([[((([[([[[(([([([[((([((([[[((([[[[[(([[(([[(([((([[(((((([(((([(([[((([[(([([([[[((([((([[([(([(([((([[[([[[([[[([([(([[([([[[[[[[(([[[[(((([[([((([([(((([[((([[(([(([([[((([((([([(([(([([(([[[[[([[(([([[[[[[[((((([([[(([[((([((([((([([(((([[([(([(([[([[([([[(((((((([[([[(((([([([([([[[([([[((((([(([(([[([[([([[[[[((((([(((([([[[([([(([((([(([(([([(([[([[([[[(([[[[[([[[[(([[[([(((([([([[[[([(([([[([[[([[[[[([(([([(([(([[(([(([((([([[([[(([[[[[(([[(([(([(((([(([(([((([((([[(([((((([(((([[[[(((([(([[((([((([([([[[[([[(([([([[[(((([[[([[[[[[[[([(([[[[[((((((((([(([([([(([[[[([(([[[(([([([([[[((([([[[(([([[[([([(((([([[[([[((((([((([[((([(([[([(([((((([[([[(([[(((([(((([([(([([[(([([([((([([([([(([[([([([([((([((([(([([[((((([(([(([[([([[([(([[(([(([[[(([[(([[[(([[(((([[([[[[[[[([[((([(([(((([((([[[([([((([(([[(((([(((([[[[[([([[[[([([[([[([[(([((([[([([((([[((([(([(([[(((([((([(([[[[(([[([((([(((([([([(((((([(([((([([([[[([[((([([[[[[[((([[(([(([([([([[([[[((((([(([[([[([(([(((([[[[[([[([(([([(([[[(([[[([[([[[[[[[((([[(([(([([[[[[([[[([[[[[[[((((([([([([([[([[(([[((([([(([[([(([[[([[[[((([[[([(([[[[(([[[[[([[[[([([([[(((([[([[([[(([[[([[(([[((([(([[[([[((([[[((((([[(([(([[[([[(([[[([[([[([[([([[[(([[[(([[[((((([(([[[([((([((((([[[([([(([[[[([[([[[[(((([(([([[[((([[[[(([((([(([[([(((((([[(([[[[([((([[[([([([[(([([(([[([[[[(([[[((([[((([(((([[((([(([((((([[([[[[([[((((([[([[([([[[[[([([(([(([([[[(((([([[([(([[[[(([[[((([(([(((([(((((([(([[([([([((([([([[[([[[[(([([[([[[([[[[[([[([([(((([[((([[[([((([([[([([((([(([(([(([((([(((((([(([[([([(([([([[[([([([([(((((([[[[([([[(([(([(((([[[(((([[[[([[([([([((([(([([[([[(([(([[([[(([[([(([[([(((([(([[([(([([[((((([[((([[[[(([(([[([(([[[(([[([[((([(([[([[([[([(([([[((([([[[(([((([(((([(((([[([[((((([[[[([[[(([(([([([[[(((([[[[([[[[[([[[(((([[([[([(([[[[[[[([[[[(([([((((([[((([([[([[[[[[(([[(([[(((((((([[[[[[[(([[[[[(([[[[((((((([(([[([(([[(([[([([[[[(([(([[([([([([[(([[((([([([[[(([([([[[[([[[[[((([[(((([((((([[[([[(((([[(([[([(((([([[[[([((([([([[([[[[[(([[(([(((((([[[[([[[[[([[[[[((([((([(((([[[(([[(((([([[(([([(([[(((([[([[[((([(((((((([([[[([([[[[(([[[([[([((([((([[([[(((((((([([[([[([[[((((([[[[([([[[(([((((([([(([[((([[[(([[(((([[[[[(([[(([([[((([([[[(([([(([[([([(([[([([(((([([[([[([[([[[[([(([((([[[[(((([(([[([[[[((([(([(([([[[[([[(([[(([[[[(((([(((((((([[([((([(((([[(([[([(([[(((([[([(([((([[[[[([[(([([(([[([([([[[([[(([[(((((([[[[[[[([[([(((([[[(([((([(([(((([[[([([((([[[[((([[((((([[([[([[[([(((([[(([([[[[(((([([[([([[([[([[([[((([[[[[((([[([([[((((((([[[[[(([((([[(([((((([([[[[([[[[([(([[[((([[(([[(([[[[(([((([[(([[[(([[[(([(([([((((([([([[(([(([[([[([[([((([[([([([[(((([([([[[([[[(([([((((((([(([[[((((([[[[[([[([[([([[([[[([([([[(([[[[[([(((([[(([[(([[[[[([([[(((([([([(([[[((((([[([((([(((([[[(([(([([[[[([[((((([([[[[(([[[[[((([[([([[((([[([(([[[((([[[(((((((((((([([[((([((([[((([(([((([[[([([[((([(((([[(([((([[([[[([((((([([([([[([[[([([([[[[[[(([([[([[[[[[([([(([[((([[(((((([([[[([((((([([((([[(([([([[([([((([[[[[([[[[[[([([([[[[[[[[[[([[(((([[[([[(((([([([(((([[([[[[[[[([([([[(([[([([(([[[([(([[([(([[(([[((([([[((((([[[[[[[[[[([(((([[([[(([([[([([[([([(((([[(([([[[[[([[[[([[[[[[([[([([[[(([((([([[(([[[[([[[[[([([((((((((((((([([[[[(([((((([[[[(([[([([(([([[([[(([[[[(([((([[[[[(([(([([[[[([(([[((([[([[([(([([[([[[[([((([(([(([([[([([[(([(([([([[((([([[[[[[[(([((([(([([[[([([([(([(([((([[(((([[([[(([((((([([([([((([(((((([([((([[(((([([([([([[(((((([([((([[(([([(([((([([(((([[([[[([([([[((((([[(([[[[[([[[([[(([([(([([([[(([(([[(([[(([[(([((([([(([[[[[[[((((([[([[[[([([([[[[[[[(([[[[((([([[[[[((([[([([[(((([[[((([[[[[[[([[(((([([(((((([[(([[([[[([[([[((((([(([[(([[([[[([(([((([(([[[[[[[([(([[[([[(([[[[((([(([[[([([[[[[([[(((([[(([[[([((([[[[([[[(((([[[[[[[[([[[([([([[(((([([([([([([(([[(([[[[[[[(((([(([((([[((((([((([(([((([(([(([([(([((([[(((([(((([[(([[[[[[[((([([([(([[([([[(([([((((([([([[(([[((([([([[([[[(([(((([([[[[((((([(((([[((([[[((((([(([[[(((([[([[([[(([(((((([[[[([(([(([[[(([([[[([[([(([[[(([(([[[[(([[[(([[(([[[((([[[[([[[(([([[([(([(((([[([[[(([([([[[[[([([[(((([[([[[[(([[[[[[[(([(([[[[([([(([[[([([[(([[[[[[[[([([(([[([([[[(((((([[[[[[([((([(([[[([[[([((([(([([[([[[[[[[[(([(([([[([(([[([[[[([[[(((([(([([([[([(((([[[(([([(([[[([[[[(((([([(([[([([([[[[[[([[[((([[([[([([([([(([([([[(((([([((([([(([[[[[[[([[([([[[((((([[[([[(((([[[([[((([(((([([[(([[([[[[[([[([[((([(((([([([((([([([([([[[([[[[(([[(([(([[([[(((([[[[([(([([[[[[[([[[([[([([[[(([[[((((((([[[[[[[[([[[([([[[[([(([[((([([[(((([[[[([([[[((((((([[(([[[(([[[(((([[[[([(([(([([[[[[([([[(([([((([([([(([[[[([((([([[(((([[[([[([([[(([([([((([([(([[((((([[[[[(([[[((([[((((([[([((((([((((([[[[[[(((((((([((([[([((([[[(((([([(([[([((((((([([([([([([[[(([(([(([([[((((((((([[(((([[[[[[[(([([[(([([(([[[[((([(([([(([[([[(([[((([[([[[[[(((([(([[((([((((([(((((([(([(([(([((([[[(([(([[([[[[([([[([(([([[[[([[[[([[([([([(([[[[((([((([[([([(([[[[(([[(([[(([[(([(([[([[[[[[([[(([([[((([[([((((((([([([(((([[[([(((([([[((([([[[[([(([([((([[[[([((([(([[((([[([([[(([[[[((([(([[[[[([([([([([([[([[[[((((([[[[[[[([[([((([[[([[([[(((([[([([([[(([(([[([[[[(([[([(([((((((((([((([((([[[([([[([([(([([[[[((([[(((([[([([(([[([[([[(([((([[[[[(([[(([[([([(([((([(([[(((([[[(([[[[(([(([[[[[[[[[([([(([[([[[([[([[(([([[[[[(([[[(([[([[((([[(([((((([([((([[[([([(([[[([[[[(([[[(([(([(((((([[(([[([([((((((([((([[[[([([[([([([([([(([[([[[([((([(([([[[(([([(([([(((([((((([([[([([[[(([[[[[[[([[(([([([[[([[[[[([(((([[[(([[[([[[([(([(([([[([[(([[[[((([(([[[[([(([[((((((([[((([((((([[((([[([[([([([[[(([([[[[[[[([[([([[[((([[[[([[[[[((((([[((((([((([[[[(([([([([[[[[[(([([[[([([([([[([([[((((([[[([[(([(((([[([(([(((([([([[((([((((([([[[([((([[[(([[([(([([((([[[(([((([([[[([([([([(([(([[([(([(([([[([[[[([[((([[([([[[[((([((([([[([[[[(([[((([[([[(([((((([[[([([[[([[[([[([[[[[[[((([([(([([([([[[[([((((((([([([([[((((([[[[(([((([[([[([[([[([(([([((([[((([((((([[([(([([[([(([[[[(([[([([[[[([([([((([[(([[[(([(([[[([[([((((([[([[(([[([((([([([[((((((([[([[(([(((((([([[([([[[(([[[[(([[[(([((((((((([([([([[([(([[[[[([([[(([([([[[[(((([(([[((([([[([[(([[(([((([([([([(([([[([([(([((((([[[([[(([([[[[([[[(((([([(([([[[([([((([(([(((((([([[([[((([[([[(([(([[[((([[[[((([[[[((([[[[[(([((([([(((([([[([[[[[[((([((((([(((([[[([[[[([[([[((([(([[([([[([([([((([([[(((([([[((((([(([((((((((([[([([[([((((([([[([(([[([([(([[(([[[(([[([[[[[([(([[([([[[([[((((([([([([([((([[([[[([(([((([(([([[(((((([([([(([[([((([[[[((([([[(([([([([[([([[[([(((([[((([([([[[([([([([(((([[(((([(([([[([((([(([(((((([[[[[[[([([((([[[(((([((((((([[[[[(([[[[[[([[[([[[(((([[[[[[((([[(([[([([([((([[[((([((([[[((([([([[[([[(([(([((([([[(((((([[(((([([([[(([[([([(((([[[([[([[[(([[([[([([[([((([(((([[[(([([[(([[([[[([[[(([[[[[([[([(([([((([((([[[((([[[(((((([[[(([[(([[((([[[([[[(([([((([[([([[(([[(((((([([((([([([[(((((([([[(([(([[[[[([([([([[([[(([[(([[[[(([([([[(((([([([[([[[(([(([[((([[[([[([[[([([(([(((([[[([[[([(([[[[[[([([(((([([([(((([([(((([([[[[([([((([((((([[(((((([(([([[((([(((([([([(([([(([[([[(((([[(([[((((([[(([[[[[[([[[((([(([[([([([[[[[[[[[([([(([((([[[((([((([((((([(([([[[[(([([([[(([(([(([[([[([([([([([[(([([([[[((((([([[[(((((([([([[[([[[(([[[[[((([[[[[[(([(([(([(([([([[[[([[[[([(((([([(((([([([([[[[[[[(([([((([[(([(((([([(([([(([[((([(([((((((([(([((((((([[[[([([[[[[(([[[([[[[[([[(([([((([((((((([((([[([[[([([((([[(([([(([([[[[[(((([([(([([[[[[[[[[(([[([[(([([(((([[([((((([[[([([([((((((([[[[[[(([([(([[[[[(([[([[(([((([([([([[(((([[[[([(([([(([([((((((([[[[(((([[([([([([[([[((([[([(([([[([[[[[(([([(([[[[([[([[[[[(([[[(([[[[[[[(([(([[[(([[([[(([[(((([[[[(((((([([([(([[[((([[(([[((([[([[([([[((([[[[([([(((([[([[([([[(([(([([[([[[[([(((([((([[[([[([([[((([(([[([(((([([[[[([(([[([([([[[(([[([(([([[[([([((([[[[([[[[[[[(([[[[((((([[([[(((([((([((([[[[[[[[[([((([[[(([[(([[[([(([[[[(([(([(((([([(([([[[([[([[([([[[([[(([[[([[(([[[[[[[(((((([[[[([([((([[(((([([[[[[[([((([[([([[[(([([[([((((([(((((([[([[[[[[[[(([(([[([[(([[[[[[([([[([[((([[[[[[[([([[[(([((([[[(([(([([[(([([(([(([[([[([([([[(([[([[([((((([([[((([[(([((([(([[[([(((([([[(((([([([([([[[(([(([([((([(([[[((((([([(([([[((([[[(((((([[[(((([[[([[([[([(([([(((([[[((([([[([(([(([[[([((((([[[[[([([[([([([[([([(((((([[[((([((([[(((([[([[[[[[([(([(([([[[([[([[[[(((([([([[[([[[([([([(([((([[[[[[(([[([([([[[[[((([([((((([[([([((([(([([(([(([[[[[[[[[[[[(([[((([[[[([([([[(([[([[[[([([[[([([[(([(([[((([[[(([[([[[[[[[([[[[[[([[[[(([[(((((((([[[[[[([[[(([(((([[([((([[[[(([[[[[([([([[[[[(([[(((([[(([[[([((([([[[(([[(([[[(([[([([([[((([(([(([[[((((((((([((([(([(([[(([([(((((([[[[(((([[[(([([([([[[[([((([((([[([[(([([(((((([[[([(([[([((([([[((([[([((([((([([[[([[[[([((([([((([(((((([([(((([[[[[(([(([[[(([([[[[([[[(((((([([(([[[[([[[(((([([(([(([[([[[[(([[([[[[([[(([[(([(([(([[([([[(([[(((([[((([[(([[([[([[[[[([[(([[[[(([([[[([([[([((((([([[[(([[[([([[[[([([[(([[[[[[[((((([(([[(([[([[[(((([[[[[([(((([((([[([((([[[([[[[[[([([([((([(([[(([[([[[[[((([[(([((([[[([[([[([[(([[[[([[(([(([[[([[(([((((([((([([([[(([(([[[[(([((([[([[(([(([[[[([([((([[(([[(([[([[[[[[(([[((((([[[[(([[[[((((((([[((([[[([[[[[[[[(([[[[((([[[[((([([([[((([[(((([[([[(([(([(([[(([([(([([[(((((([[[[(((([[([[[(((([[[[[([((([[([([(([((([[([[(((([[[([([[([(([([([([[(((((([[([[(((([([[[((([(([[(([((([(((((((((([[([(((((([[[[([([[([([((([[([[[(([([(([[([((([[([([([(((([[[([[[([[[([[[(([([[([((([([[((([([([[[(((([[([[([([[(([(([[([([((([[[[[[(((([(([[(((([[[[([[[[[([[(([(([[[(((((((([([([(([(([(([[([[([([[[[([([[[([([[([[((([[(([[([[(([[(((([[(([[[(([[([[[[([(([((((([[[[(([([([[([[([(([[([[[[[([((((((([(([[[[[([[[[[[[([([[[((([[([[[([[[[[(([[[((([[[(([(([[[([[((([[(([(([([(([[[((([[[[(([[(([[[([[[([((([([[[[([[([[([(([([[((((([[([((([[([(([[[[[([[[[[([[([(([[([([[[([[((([[([[(([([(([([(([[[[([([[([([[[[(([([[(([[(([[([(([(([([([[[[(([(((([((((((([(([[([[([(([[[(([(([(([((([([((([[([[([(([[([((([([([[[[((((([[[((([[[[(((((([[(([[(((([[[[([(((([(([[[[(([[([([((([((((((([(([[[[[([(([[[(([[[[([([(([[[[[[[[((((([(([[[[([[([[[[(([([([[[[([[[[[([[[[([((((([[[(([([([[[[[([[[[(([[([[(([([(([([(((([((([(([[[[([[([[[[((([(([((([([([(((([[((((((([([[(([[([(((([[([[(((([[[[[(([([[[([[((([([[[([([([[([((([([[(([(([([[(((([([([[[((([[[([([[[((((((([[[(([((([([([[[((([[[[(([[[[[[[([[([[((((([[[([[([[[[(([[[[(([[(((([[[[((([((([((((([[((([[[[([([((([[[((([[((([((([(((([[([[[[[([[[[[[[([((([([[([(((([[[[(([[([([[([((([[([([(([([[(([([[([[([[[[((([((([([[([[([[((([(([[(([([(([([([[[[[(([[(([([[[[([[[(((([(([([([[([[([([[(([([[[[[[([(([[[[[[[(([[[([[(([([[([(([[[((((((([([(([([(([[((([([((([[(([([([(([(([[([[([([([(([(((([(([((([[[([([[([(([(([([(((([((([[(((([(((([([[([[((([(((([[[[([([[[(((((([((([([([[[([[([[([[((([[(((([([(([[[[(([[[[([(([((([[([[[[[[([[((([[([[(((([(([[[([([([([[[((([[([[[([[[((([((([(([[[[[(([[(((((([[([((((([(([((([[(([[[[([[([(([[([[([([[(((([[[((([([[([([[[([([[[[[([((([[((([([[([([[[(([[([[[([[(([[[[((((((([([[(([[(([[(([([([([[([[((((([[((([((([[[[([(([[[(([([[(([([[[((((((([[[[([(([(([([[[[(([[[((((([[[(([[(([[[(((((([([[(([[([[([[([([[[(([[(((((([(([[([[((([[[(([[(((([[([(([[[[(((([(([((((([[[([(([((([[(((((([([[[[((([[([((([(((([([([[([[[[[[([([[((([[(((([([[[((([[([([[((([([([((([[[[[[[(([([(([[[[([((([(([([[([[[([[[[((([([([([([((((((([[[(([[[[((([(([[(([(((((((([[[[(([[[(([((([[([[([(((([[[[(([(([[[([(([[(([[(([(((([([([(([[(((([((([([([([([[[(((([[([[([[[[[[[[([(((((((((([[[([(([[([((((([(((((([[[([[[[[[([[(((((([[((([[([[[(([[[[[(([(([[[[(([((([([((([(([([[(([[(([([(((([[([((([[(([((([([[([([(([([([[[[([[([[(((([(([([[[((([[([(((([[((([[([[[(([[((([[(([((([[[[[[([[([((([[(([[[([[[[(([[([[[[(([(([[((((([[(([((([[([[([((((((([[(([([([([[([(([([[[[[([[(([((([[[[([(([[([([(([((([[[[([(([([((((([(([[[(([[([[(([[([((([(([([[(((((([[(([[[[[(([([([[([(((([((([(([(([(([(([((([[[[[[((([([(((((((([(([([((((([([[([[([([([([[([([(([([(([([[[((([(((((([((([[[[([[(((([[[(((((([[[(([[((([(((([[[[[(((([(((((([[[(([(([[[[[(((((([([([((([[[[([[[[(([[[[((((([[[[((([([[([(([[[((((([((([[[[(([[([(([(((([[(([[[[((([[([([[[((((([[[[[(([(([(([([[[((([[[[(((([([(([((([((((([([[[((((((([(([(((([[([[[[(((((([[[([([([((([[(([[(([((([[[[(((([[[([((([(([[([(((([((((([((((((([[[[((((([([([((([[([([([[[[((([[(([[([[[((([(([[(([[(((((([[[([[([[(([(((([([((([([((([([((([([[([[([[[[((([[[[[(([[[([[[[[([[(([[[(([[(([(([[[([[([([([([((([([[((([([(([[((((([[(([((([([[[[([([[(([[((((([([[([((([([[([[([([([([[([(([((([[(([(([((([([[((((([((((([[([[[[((([((((([[([[(([[(([[([[(((([([(([[([([[(([(([(((((([[[[[([[([[([[(((([[[[[[[([([([[([(([([[(([[[([([(([[([([(((([[[(([([(([(((([[[[(([((([[(((([((([[[((([[[[(((([(([((([[[[((([(([[[(([[((([[([[([[([(([[[(([((([[[[(([([[[[([([[([([[([[[[([(([[[(([([[([[([([[([(([[(([[(([(((([(([(([(([([[(([[(([(((([[((([([((([[([([(([([[[[([[([((([[([[[[((([[[[(((([(([[((([([[[(([[((((([[[[[[(([[((([([(([([(([[[[[[[[[((([[([([(([([(([([(([[(((([(([([([[([([[([([[([[([[[([[(([[[[(((([([[[[(([((([(([([[[[[[[([[([([[([[[[[[[[[([(([[[([([[[(([((([[([((([[[[((([[(([[(([[([[([[([([([[[(([(((([[(([[[[[([[[[[([(([[[((([([[([[[[[([((([((([([[[(([((([(([[[[(([[[[([(([[[([[((([[[(([(([[[([([((([[(([[[(([[([([([[[[([(([[[([[[([([[[(((([([([([[(((([[[[[([((([((((([[((([[[[(([[([(([[(((((((([[[([[[[([(([[[([[[[[([(([[((([[([([(([([[[([([([(([[([(([[((((([(([[[((([([([((((([[[[[[[[([[[[([[[[([([[[[([((([((((([[([[[[(([(([[(((((((([([[[[([[[([[[[((((([[(([([([([[[[[([(([[[([(([([([(([[[([(([((([[([[(([(([[[[[[([[[([[(([[(([[[[[((([([(([[([([([[([[[(([((([([[[([[((((([((([[[([[[[[[((((([[[(([(([[(([([[(([([([(([[((([(([[[(([(((([[[[(([[[([[([([([([([[(((([((((((([[[(([[[[(([[[((((([[[((([[[(([([[(([[(([[((((([[((([([[[(([([[[([[[(([[[(([(((([[(([([(((((([[(([[[[(((([[[(([([[[[(([[[[([([[(([[((([(([(([([[(([[([(([[[[([[[[[(((([[(([[((([(([(((((((([(([[([[[([(([(([[[[[[(((((([((([[[[([[[[([[[([[([[[([[[(((([[((((([[([[(([([[[([([([[[([[([[((([(([([[[((((([[[([[[([([[([[(([([[[[[([((([[[[([(([((((([(((([(([[[(([[([[([([([[[[([[[[([([[[(((([([[[([([[[[[(([([[[[([(([[(([[[[[(((([[[[((((((([[[[[[([[[((([(((([([([[[[[([([(([((([[[[((([([[[([(((([[([[[[([([([([(([[([[[[((([((((((((([((([([[[[[(([[([([[([([[(([[[[[(((([[(((([[(([[(((([([[[[[([[[((([(([[[([(((((([((([[[[[[[[([([((([([[[([[(([[[((((([[[[[[(([[(([[[[(([[[[([[[[([[[([[([[([((((([(([[[[((((([([[[[[((((([[[[[[[[([([(((((((([[[[([[[[[(([[[([[([((([[[((([[[([(([([[[(([[[[(([[[((([[[[([[[([[([[[(((([[([[((([[[[([[(([[([([([((((([[[[[[((((((((((((([[[[[([([([(((([([[((((((((([([[((([[[([[(([(([(([[[(((((([[(([([[(((([[[([[(((((([[([[[[([[(([(([[[[[([[([[((([([[([([([[[(((((([([([(([(((([(([[(((([(([(([(([[[[[[[(([([((([([([(((([[([([([[([[((([[([((([(([([(([[[(([(((((([(([(((([(([(((((([([[[[((((([([[(([[[[(([([([[[[[(([([([([(((([([(([[[[[[([([[(([[[([(([([([[([(([[((((([(((([[(([([[[([[((([[[([[([[(([[[(((([(([((((((((((([[([[(((([([[[[[([[[[([[((([((([[[[(((([(([[[([[[[(([[[(([[[(([([([[(((([[[[((([[([([[([[(([([(([([(([([[[[[[[([(([([((([[[((([([(([([([[[((([(([([([[[[([[[[[[[[((((([[[([((((((([(([(((((((((([[[([([([([[[(((((([[[(((([([[([(([[[([([[[[(((([[[((([((((([([[[(([([[[([[[[[(([[([([([((([[([([[[[[([[([([[(([[[([([(([[[([([[[[[([[[(((((([([(([([[[([[[[[[([[((((([[[[[[[[[[[([[(([[([[([[[[((((([[(([[[[[[[[[[[([[([[(([([[[[([((((([[[(([((((([[[[[[((([(([((([[(((([[[[((((([(([(([(([((([(([((([([[[[[([[[[[([([(([[(([([([[[([[([([[[(([([[[[[[[([([[([([(([([[[[([([(([[([[[(([(([([(([((((([(([((([(([[([[[(((([([[[([([(((([[[([((([[(([[([[[[[((((([([(((([[((((((((([((([(([[([[[[[([[([([((((([(([[(((([[[(([(([[[(([([[(([((((((([[((([(((((([[(([([([([[((([[((([[[[[[[[[(([[[[([([([[((([([[([[[[([[((([[[(([[[([[[(([([[([(([([([[([[[[(([([[([(([[(([[[[([[([((([(([[([[[((([(([((([([(((([[([((([[(([[[((([(([(([[([([((([[((([([(([((([(([((([([([[[[[[([(((([[([(([[([(([[(([(([([[([[(([([[[(((([[(((((([([((([(((([(((([(((([[((([[([((([([[[[((([[([[([[[[((([[([[[[[[((([([[([((((((([[(([([[[([[(([[[[((([[[[[[[[[[[((([[(([((((([[[[([[(((((((([(([[((([((([([[[[([[((([[[[[([[(([[([([((((([([([[([([(((((([[[[(([(([[(([[([(((([[([([(([[[[([(([([((([[([([(([([[[[[[[((([([[((((([[([[[(([[([([(([[[[(((([[([[(((((([((((([(((([[([([[([(([[(([([([[((([((([([[[(([[[([[([[[[(([([([([(([[[[[((([(((([[(((([(((([((([(([[[[([((((([([([((([([[[[([([[[([([((([((((([[(([([([(([([([(([((([([[(([(([[((([[[[[([[([([[[[[[[[(([([[([[([[[[([[[[[[(([[([([[[[([[([(([[[([[[[[([((([[[(([([[[[[[[(([((([[[[[[([[[((([[((((((([[([[([([([([[(((([[([((([([[(([(([([([[[[[((((([([[([[((([[[([[[[[([[[([([([[([((((((([[[[[([[(([[([(([([([[(([([[[[([[([[[[[([([[[([[([[([(([[(([(([[((((((([[(([(([(([(([(((([[[[((((([[[[((((((([[[[([[((([[((([[([[([[(([([((([(([[[([[[[[(([[[([(([[[[([[([[([[([[[[([([[[[[[[([[[(([[(([[[[[(([(((([([((([[[((([[(([((([[((([[(([[((([[([([([[(([[(([[[(([(([(([(([([[[([([[[[([([[([[[[[[(((([([[[[([([(([[(([((([((([(([((([[[([(((([([(([([[(([([[([([([([((([([[((([[(([[((((([((([([([([[[[([([[(((((([[[[([[[[((([([[(((([[([([[([([[([(((([[[(([[[((([[([([([[[(([[[[[[(((([[[[[[([[(([[(([[(([([[([[([[[(([[((([(([(([[(([((([([(([[([[[((((([[(([([((([([([([(([([([[([(([[([(([([[[(([[(([((([((([[([([((([((([(((((([([[(((((([([[(([[([(([[([([[[([((([[[((([([[((([[([[[[([([(([[[((([([[([[([[([[[(((([[([[(((([([[[[([[([[[[(([(([([(([[[([([[((([[((([[(([([[((([((([[[[[[([[([([[(([[[(((([[([[([[[([[[[[[((([[(((([[([([(([(([(((([[([(([(((([(([[[(([((([[([([[[[[(([[([([[([([([[[[[[[[(([[[[((([[[((([(([((([((((((([([[[[[[(([[(([[[(([[[(([([[([([[([[((((([[[[(([[[([(([[[([(([[[([[([(([[([(([((((([((([[[(((((([[[[(([[[[[[[[([[([(([[((([[[([[[((([([(((([[(([[[[[([(([[([[(([(([((((([(([[[([([([[[([[[[[[([[(([[([([(([[([[[[[([([[[([[[[[[[([[([(((([[[[[(([([(([[([[[([[(([[[([[[([([([[[[[[([[[((([((([[[[[(([([([[((((([([([[[(([(((([([[(([[[(([[(((([[[(([[[[([[[((([(((([(([(((([[[[(((([[[([[[[[([[(([([[[(([[(([((([(([([(([((((([[(([((((((([[[[[(([[([[[[[[(([((([[[(([[[[(([([[([(([([[([((([[((((([([([([[[[([((([((([([((([([[([(([([([[(([([[[([[([(([[([(((([([((((([[[([[([([([[([(([[([[[[([[[[[(((([[(([(([((([[[((((([[(((([[[[[([([[(((([([[([(((((([((([[([[[(([((([([(([[[[[(((([(((([(([[([([[[((([[[([(([([(([([([((([(([[([((([([((([[[(([((((((([[(([(((([[[([(([[[[([[[(((([[[(([[([([[[(([[[(([([([[[([[([((([(([[((((([[([(((([([[[[[([[[([[([([[([([[([[([(((([[([([[([[[[[[(([([([[[([((([[([[(((([[[[[([[(([[[([((([((([([[([([[[[[((([[[([(((((([([[(([([(([[[(([(((([(((([(((([[[[(((([((([([[(([([([([[(((((([[((([[(([[(([([[(([[[([(([([[((([([[(([[[([[([((((([((([[[[([[[([[([([(([((([(((([((([[[(([[(([(([((([(([[[[([((([([([[(([([((([[([(([[[([(([[(((([((([([([(((([([([([(([([[[((([(([([([[[[[([[(([((((([[[[[((([([[[[[[[[([[(([([[[[([[[((([(((((([([((((([[[(([[[([([[(([([[[([(([(((([[([[[[[[((((([([([([[((([((([([(((([([([[[[([([[(((([([[((([[[([[([[[([[([[([([[[([(([(([([(([[([[((([[[[[[[[(([[[([(([([[([[[([[([([[([(([[[([[[[[[[((([([([[(((([[([[[(((([[([[[[(([[(([[[[[[([([[(((([[[([([((([(([[[[(([[[((([[[(([((([[[([[[[([(([((((([([[[[[[[[([(((([[[[[[((([[[[(([[(([([[[[[((([[[[[[([[([[[([[[([[[[([[(([(([[[(([[[(([[[[[[[(([(([[[((((([(([[([[[([(((((([[([([([([[(([[((([[(([[[(([([([((((((([[[[(((((([[([[(([([(([((([((((([(([([(([(([[([[[((((([[([([([([[([[((((([([([([[([([[(([[(((([([(((([(((([([(([[[[[[(([([(([([[([([[([[((([[[[([([([[[[[[(([[(([(((([[(([([[[([([(([([[(((((((([[[(([[((((([(((([(([[[[[((([[([[(((([[[[([[([([(([[[[(([([([([[[[([(([(([((([((([(([[(([([[[([[([[[[[([[([[([([[[([[[[[(((([[[([[[([((((([((([[[(([((([((([[[[[[((([([(([[(((([[[[([(([[(([[([[(([[(([(([[[([[([([([[([[[[([(([[((((([([[((([[[[((((((((([([([[([[([([([(([((([[((((([[(([[((((([((([[[(((((((((([([([[[([(([[((([[[[((([([[[[([(([([([[[[[(([((([[[[[(((([[(([[(([[([([(((([(([[[[[([[[([(((([[([[([[((([(((([[[((([[[(((([([[(([[[[([([[[[((((([[(([(([[[([([([(((([[(([[[((([([[[(([[(((((([[[(([(([[[[[([((((((([((([[[[[([[([[[[[([([[(([[([([[[(([[[(([[(([(((([[[(([[(([(([[(([([[(((([[(([(([([(((([[[[[((([((([[(((([([(([([[([[[([[[[(([[[[[(([[[[([(([[([[[[([[[[([([([[[(((([((([[[[[((((([(([[[(([(((([[([([[((([(((([([(((([[[[(((([(((((([([([[[[[(([[[[[[((([([[[[([[([[([[(([([([[[[[(((([([([[([[[[[[[[[([[([((([([([([[(([([([[[[[[[[[[[([[([[([[(([([[[[((((([([[(([([[([(([([[(([[([([[((([[[[([([((((([[([([([[[[((((((([[([([((([([([(([[[(((([[([([[((([[(([[(([((([[[(([[([[[[([[((([[[[(((([[[[[([((([(([[((((((((([[[[[[([([[[[[[((([((([([[[[(([[(([[[(([([([[[([[[(((([([([[([([[[([[((((([[([((((((((((([[((([([[(([(([([[[[[[([[(([(((((([[((((([([[((([[[[((([[[([([[([[[((((([[([[(([[([[((([[(([[[[[((([[[([([[[[([(([[[[[[[[[((([[([[([[[([([([[([[[(([([[[[(([[(([[[[((((([([[[([([(([((([([[(([[([[((([[([[([([(([[[[[[((([[[((([([((((([([([[[(([(([[[[(([((([([[([([([[[([([([(((([((([([[([[[[((([[[[(((([([(((((([[((([(((((([([((((([[([[[(((([([[(((([(([((([[((([[([((((([([([[((([((([(([[[([[([[([[([(((([([([[[([([([[((([((([[([[([[[[((((((([[(((([(([[[[(([([([[([[[[[[([[((([(([([[[([[[[[[[(([([[(((((([((((([([([[([[(([([[([(((([([([([([[[([([[[[([([([[([[(([(([[([[((([(([[((((([([([[[([[([([[[((([((([([[[(((((([[(([[[([([((([((([([[[[[[((([(([[[[([([([[(([(([[[[[((([[([[([([[[[([[[[[[(([[[((([[[(([[(([([[[(((([[([(([[([[([([(((([([[(((([[([[((((([((([[[(([[(((([[[((([([[[([[[(([[([[([([(([((([(([[((((((((((([[[(((((([[[[[(([(([([([[([[(([([[(([([[[[((([[[((((([([([(([(([[(([[[[((([[[([[(([[((([(((([[([([([([[[([(((([(((([[(([[(([[((([(([[(([[((([[[[[(((((([[[((([[[((([[(([((((([([([[([(([((([([[[[[[([[[(([([[([[(([[[[(([[([([(((([(([(([[[[[(([(([[[(([([[(((((([[[[([[([(([[[[[[[(((([((((([[[[((([([[[([(([[[[([[[[([[(([([([(([[[[((([(((((([[[([[[[((([[[[([(([[(([[[[((([([((((((([(([[(((((([[[([[(([([(((([(((([[([([([[([(((((([[([((([([[[(([(([[([[((((([[(([([[[[([[[[[((((([([[[[[[((([(([(([[[([([([(([[[[[(([([[([[[([[(((([(([[([[[[[((([[([[[[[[(([[[([((([[[[((((((([[([([[([[((((([([[[([([[[([([[([[[([([([[((([([[([(([[([([[((([((([[[((([[([[[(([(((([([(([(([[([[[[[([[[[([[(([[[[[(([[(((((([([[[([[[((([[([((((([([[[([[([(((((([((([[[[([((((([[([[(([[[(([([([(([[[[([([([[((((([([[[(([[([[[[[[[([[[([[[((([(([[[(([[[(([[[[[([[([[[[([[([([[((([[(((([([(([[(([[([(((([[((([([[[[((([[[(((([[[(((([[((([[(([[[([([[[[[([((([((((([([([(([[([[[(([[(([(([[([([((((((([((([[(([[[[([[[(([(([((([[[[(([[[(((((([([[((((([(([([[([([[[[(((([((((([((([([(([([([([[[[([([((([[[[[[[(((([((((([([(((((([([[[[[[(([[([((([([[[([(((([([[(([[([[[(([([[([(([([[([(([[[[[(([[((([[(((([([([[[([[([(([[((((([[[[[(([[[[[([[[(([[[[((([[[(([[[[(([[[((([(([((((([([((([[[([[[[[[[((([[[[([((((((([[[((([[[[[(((([[[([[[([[[[[([[[[[(([[(([[[[[[[((([((([[[[[([[([((([[([((([[[[[([[[[([(([([[[([[([[(([[[((((([[(([[([[[[[([([[[((([([([[[[[([((((([[[[((([([((([[(([[[[[([[([(([[(([((([([[[[[[([([([(([(((([(((([(((([[(((([[([[[[([[((([[[[[[(([([[[(([[[[[[([([[(([((([([[([([[([((([([[([([(([[[(([([[[([[[[([(([([([[([[([[[[[((([(([([[([[[[(((([[(((([[[([[[((([((([[([[((([([[([([[(((((([((([(([([([[([[([[[[(([[[([[(([[([([([[([[[[[[([([(([[[[[[([[(([([[[([([([[([[((([[([[[[[[[(([(([(([[([(([((([([[[(([[[([((([((((([((((([([(((([[((((([([[[((((([[[([(([[([[[[[([([([[[(([[[[[(([(([[(([(((((([[[[((([([[((((([((([(((([[([([([([((([(([[([(([[[([(([[((((([(([(([[[[([[([[((([(([[[([[[[([[([[[((([(((((([(([[[([([[(([[([([[([[(([[[[[[(([([((([([([(([[[([[([[[[[([[[[([[((([[[[[(([[[([([[((([[([[[([((((([[([((([[([[[([(((((([[((([(([[([(((([[([[([[[(([(([(((([([[([([([((([((([[(([(((([[[[(((([[[[([[[[([[[([(((((([([([([([[[[([[([([[((((([[([[([[[([(([[[(([(([([([((([[(([(((([([[(([(([(((([([[([((([([([[((([(([([(([[([[[[(((((((((((([([(((([(([[[[[[[[[((([([([((([(([[([([([[[((([([((([[(([((((([((([[[[([(([(([[((([[[([([([[[[[([([[[([([(([((([((((([([((([[[[([(([[[[((((([((((([((([[[([[[([([[(([[([([(([[[([([([([[([[((([[([[[[[([[[([(((((([([(((((([[[((([(((([[[[[([[(((([[([[[[[(((([[[(([(((([([(([[(([[([[[[([[([(((([[([((([(([[(((((([([[(([[(([([((([(([[([[([[(((([[([[([(([(([([[([[([[[[[[[(((([((((([[[[([[([((([((((([([[([([[[(([([([[[[((([[[(([[[[[[([([([([([[(((((([[[(([((([[([([[([([((([(([((([([[([[([[(([[((([[[((([[(([[([[[((([(((([[(([[(([([[[(([[[([(((([([(([[([[[[((((([[([((([[[[([([[([[((([[[[(([[[[[[[[[([[[([[[[[[([([([[([[[(([([(((([(([(((([[(([[[[([([[(([[((((([[[([[[([(([[[[([(([(([(((([([[[([[[(([[(([([[([[[(([[(((([([([[[[[([[((([[[([[[[[[[((((([[[(([((([(((([([[[(((([([[(([[(((((([(([(([[([[[[[([[[(((([[((([[[[((([(([[(([([(([((([([((([[(((((([[[[([[((([(([([(((([[[([([[([((([[([(([[[([((([(((([[([([[([(([[(((([([(([([((([[[(([[[([([(([[([((([[([[[([[[[(([([[([[([([[([[([(((([([[((((([([[(([([[[[[((([((([[[([([((([[[[[[((((([([[[[[([((((([[[[[([[(((([((((((([[[[[[([((([(([([[[(([((([[[([[(([([([[([(([([(([((([[[[(((([([[(((([[[(([[([[[[(([[([([([[([([(([[([([[(([[([(([[([([([((([(([((([([[((([[(([[[([((([([([([[[([[[(([[([(((([([[([[(([([[((([[[([((([(([([[([([(([((([([((([[(([[[(([([(([[[([((((([[[[[(([([[[([[[[[[[([([([[([([[([((((([([(([[[(([(((([([[[(([[[[[[([[([[[[[((([[([(([[[(([(([[([[[((((((([[((([([[(([[[([[((((([[[[([([[[(([[[((([([([([((([(([[[[[((([[[[((([([[(([(([[[[[((((([(([([[[[[[[[(([((((([[([(([[[([(([[[[[([[([[[[[[[([[([[[[(((([[([((([[([([([[[(((([[[((([[[[[[([([[(([((((((([[(([([((([(([([([[(([([[(((([(([([((((([[[([[([([([[((([[[([([(([[([[[[([[[[(([([([([[[[(((([([[[[[[[(([[[(((([((([([[[([(([[[((([((([[((([[([[([[([[[([[([[[([[[(([[(([([([([([((((([([([[([(((([([[[[([([([[([[[((([([[[[([([[[(([[(([((([(([[[[[[([([((([([[[[(([[([([(((([([(([([[[(((([([([[[[[[[((([(([([((([[[(([(([((([[((([([((([([(((((([[[(([[([([[([[[[(((([[[(([((([[(([[([((([[[[[[[(((([[[(((((((([(([[((([([((((([(((((([[([(([([(([[[([[(([[[([[(([[([(((((([([[[[(([(([[[[([[([([(((([([[(((([(([[[([[([[[[([(((([[[([[([[([[((([[([(([([[[[([([((([(([[[[[[(([[[([[([([([[([[[[[([(([([[[(((([([[[[[([[[(([(([(((([(([([[[((([[([[[((([[(((([[[[([[[[[((([[[([[[[[[[((([[[[[[[[(([([[((([(([([[[((([[(((([((([[[((([([[[[(([((([([[[[[[(([([[(((([([(([([[[[[[[((((([[[[[[([([(((([(([((([(([[(([([(([[[([[([([(((([((((((([[(([([([([(([([[([(([(([[(((([((([[[([[(((((([(([[[[[((([[[[[((([[[[((([[([(([[([[(([[[([[([(([([[(([((((((([([[([[([(((([(((((([[[([(([(((([(([[[[[((([[([(([[([([([(((([((([([[[(([[([((([(([[(([([[([[([[[[[([(([[[(((([[[[([([[(([([[[[(((((((((([([[([[[[([(([([[[[([([([([((([([((([([[([[[[(([((([(([([(([((([(([[[(([[[[(([([([(((([((((([[(([[([((([(([[(([[(((((([(((([[([[([[[[([([([[([(([([[[((((([[[[((([[([([[[([[(([([([([[([[[[[[(([((([[([[([[([[[[([(([(([[[(([([[[((((([[([[(([(([([[(([([[[(([((([[[[[[((([[[[(([(([((([[[[([[[([(((([((([[[[((([(([[[[[[([[[[((((([([(((([[(([[([[(([([[[((([[[[(([([[([([([([[(([[((([[((((([([[[([([[[[(([([([(((((([([[[[[(([([[[[[([([[[[([[[([(([[[[[[[([([([((((([([((([((((((([[[[[([([([[[([[[(([([[([([[[[[(((((((([([([[[[[((([(([[(([([[(([[([[[((([[[(((((([((([[(([(([[([(((([[[(((([[(([[[[[[[[(([[[[((((([([((([[([[[[([[(([(([(([([(([([([[[[(([[[[[[([((([((((([([(([[([([(([([([(([[[[(([[[[([[[(([[[[[([[[((((((([([[([((([((([[([((([((([((((((([[[(([[([(([[[(([(([(([[[[(((((((([[([[([((([[[(([([[[[((([[(([[(([[[[([[([([[([([[[[([(([([[(([([[[[[[[(([[[[([[[((((([([[[(((([([[((([[(((([[(([[[([([[([[(([([((([(((([([[([((((([[[[([[(([[(([[([[[((((([((([[([((([((([([([[([[([[[[[[(((([[(((([([([((([([[[[[(([(((((([([[([[(([[[([[([[([[([([((([[((([[[(([([((((([[(((([[([[([((([(([[[[((([[(([[([([([[[[(([[[[[([([[[[[(([[[[(([[[[[([[([(([[[([(((([(([([(([(([[[[[((([[([(((([([([[[([[(([[((([(([(([[([[[((([[([([[[[(([([((([([((((([[[([[((([([[[(([([[((((([[[([([([[[[([[([((([[[(((([(((((([[[[[(((((([([(((((([([[[[[[[([[[([[(([(([(([[[([(([([((([([[((([[([[[[([(([(([([[[[([((((((((((([([(([[([([[([[[[[[(([[((((([([[[(((([[([((([[((([[[[[[[((((((((([[[([([[([[[([[(([[([[(([[[[([[([([([([([([([([[[[[[[(([[(((([([[[[(([[[(([([(([[[[[((([[((((((([[[([([[[[[(([[[(([[(([(([[(([[([((([[((((((((([[[((((((([((((([[((([[(((([[(([([[[[[([([([([(([[((([[[([([(([([[[(((([([(((([[[([[([((((([[[[([[([([([[[([([([([[([[[([(([[[[((([([[[([((((((([([[([[[(((([[(([([[([[[[[(([([(([([([[(([((((([[((([(([[[[[[[[[([[([((([(([(([[([[([(([([[(((((([[[[[[([([([[([((([([[((([([([[[((([([[[[[([[[((([[(([((([[([[(([([[[[([[[(([([[(([(([[(([[[[((([[[[[[(([(([((((([([[([[([[([([[[([([((([([[(([([[[[[([[([[(([([[([[[((([[[((([([[((((([[([[[[[([((([[([(((([([(([[[(([(((([[(([([(([[[([([((([([([[[([[([[[[([(([[([((([([([[([([[[([((([[(([([(((([[[([([([[([[(([(([[[[(([(([[([((([[[[([([[([([([[[((([([[((([([[(([([([([[[([[[((([([([[(([[((([[(([([([[(([[([[[([(([[(([([(([[[([(([((([((([[[[([([[[([[[[(([[(([([([[[[[([[[[(([([[[(([((([[[([[[[([[(([([[[[((([[[[([([[[([([[[[[[(((((([([[[(([[[([(([[[[[([[([([((((([([((((((([[([([[([([[([[[[((([[([([([(([([([(([[(([[((([[((([[[(([[[(([[(([[[([[[((([([[((([[([([([[[([[[[[[[(((([((((([[[((([[[[(([[((([[[([[([[[[([([[(([(([(([([((((([[[[(([[[(([((((([([(((([[[((([(([([([[(([([[((((([([(([(([[((((([(([[(((((((([(([([[[[([[((([[(([[[((([[[[[[([[([([[(([((((([((([([([(([[[([(((([([[(([[(((([[(((([[([(([[([[([([[([[(([[[([([[([([[[((([[[[[(((([(([((([([[[[(([([[(([[[((((([[([((((([([[[[(([[[([[([([[(([(((([[([[[([(([[[([(((([([[[[((([[(([[([[[[[([[([[(([([[([[[([[[(([[([[[[[[((([([[(([[[([[([(([([[([(([([(([((([[(([[([[([((((([((([([[([([([([[([[([[[((([[(([[[[(([[[[[[(([([[[[[([([([[[[[([[[(((([[(([[([[(([[([([([([[((([(([([[[[[[[([((([([([[[[(([[([([[[([[[[(([[[([[[(([([(([(([[[[[[([[[([[[([[([[((([(([[((([([([([([[[[((([([[[([[([(((([(((((([[([((((([[([((([([(([[[([[[[(([([([[(([[(((([[[[[((((([[((([([[((([[[([([[([[[[(([((([([([((((([(((([[[(([[[(([(([[([[([[[[[[[[([[[[[((([(((([[([[((([([(([(([([([([[((([([[[(((([[([([((([[([([[[([(([([(((([[[[([([(([([(([[[([[(((([[[(((((([(([[[([((((([([([[((([[([[[(([([([(([[[[[[[([([[(([[[(([[[([[(([[(([([[[[[[([[([(([[[((([[(([[([(([(((([([([[([(((([[[([[([([[[([((((([[[[([[[[([([[[[([[[(([[([([[((([[[[(([([[[[(([[[([((((([(((([[[((([(([(([(([[[[(((([[((([[[([[[[([([([(([[(((([([([[[[[[((((([(((([((([[[((([(((((([[[[(([([[([(((([[([[(((([[[(([(((([[[((([[[[[([[([[[([([[[[(((((([((([(([([[[([[(([[([[(([([((([[([[[[[[[[[([[([[[(([[[([[[(([([[[([[(((([(((([(([[([[[(([[([[[[((((([(([([[[[[((([[([((([[[([[((([[([([([[[([[([([([(((((([([[[[[((((((([[[(((([[(([([[[[[[[[[(([[((((((((([[([(([((([[(([([(([([((([([([[(([([([(((([([[[[[[[(((((([[((([[[((((([[([[[[[[(([[(([[[([(([((([[[[[[[(([[[([[[([(([((([[(([[([([(([[(([([(([[([[(([((((((([[([[([[[[(([(([[(([([[(([([[([[[[([[(([[([[(([([((([([([[(([([[([([[([[(((((([[[([[[([([([([[[(([[[[([[([[[(([[(((([[[[([([[(([[[([[[[((([[(([(((([([((([((((([[(((((([[([[[([([(([[([[(([(((((([[[[(([[([([(([([((([[[(([([[[([[(([[((([([((((([[[([([([[[[(([((([[([(([([[([((([(([([[([([((((([[(((([[[((([[[([([((([[([([[[([([[[[(([([([((([[([[(([([(([(([[[[([[((([([[[(([([([[[([[([(((([([[([[[(([[[([((((((((([(([[([(([((((([[(([[([[[[[(([[[([[([[(((((((([(([([[[([[[[[[(([[[[[[([[([[([((((([[([([([([[([([([((([[(([([([([(([[[[[[[([(([[([([[[([[[([(((([[(([[[([[([(([([(([[([[([(((((((((([[[([(([([[[[([[([[([(((((([[(([([((((([(([(([[[[[(((([([(([[[([[(([([[[[[(((((([[([[[[([[([((([(([([((((([((((([[[[[[[([(((([((([[((([[(((([[((((((((([[[[([[(([[(([[(([[[[([[[([(((([[[[((([[((([(([[(([[(((([[(([[[[([[(((([([((([[[[[((([[[(([(([(([([[(([([[[([[(((((([[[([(([[([([[(([[((([[([[[(((((((([((([[(([[([[([[((((([[([[(([(((([[[(([(([[[(((((([([(([((([((([[[(([(([[(([[[[[([([[([(([([[((((((([([([[(([([[[[[[((((([[[[[([([[[(([(((([([[[([[((([[((((([(((([(([(([[([([((([(([[[[[((((([[[((([[([(([([(([[[(((((((([[[([([[[((([([[[([((([[[([[[[((([([([([([((([[[[([[(((([(([[[(([[[(([[((((([([(([[[(([(((([[[((([[([[[(([([[([(([[(([[[[[[[[(([[([[[(((([[[[([([[(((([(((([([(([[((([(([[[[[[[[([[([(((([[(((([[[[[[[(([[[[[[([([((([[([([([[[[([([[[([(((((([(([[((([[(([[([([[[[[([[([((([([[[([((((([[[[[((((([(([(((([[[[[(([[([([[([(([[((((([([[[[[[[[[((([((([((([(([(((([[[([((([([[[[[(([([[(((([[((([([[[[[[([([([[([[[([((([[(([(([[[[(((((([(((([[[[([[[((((([[[[[(((([[[([[(([[([[[([([(([[[((([(([[[[([[[(((([[[([((((([([[([[[[[[[([(((([[[([[([([([((([([[[[[[[[[[[[[[(((([([(([[[((([(([[[([[[((((([[[(([([[[(([([([[(((([((([([([[(((((([[([(([[[([[[(([[[[[[[[[[([[[[((([[((((([((([[([[([[[[(([[[[[(((([[(([[[[((([([[[(([[(([[[[((((([[[([[[([[((([[[([[(([[[[(([(([[((([[[[([[[([(([[[(([(((((([[(((([([[(((((([((([[[([((([[[((([(((([((([(([([[[[([([[[([[([((([[(([[([[(([[([[((([([(([([[[([(([([([[((((((([[((([(([[[[[([[(((([[([([((([[[(([[(([(([([[[((([[((([([[([((([(((([[([(((([((((([(([[[([((([([([[(([(([((([([(([[[(([([[([[(([(([([[[([((([[[(([[[[[(([((([(([[(([[[(([([[[(([[[[([([[(([([([([([[((([[(([([([[((([[[((((([[[[[((((([(([([[[[[([(([[(([([[(([([((([[([[[([([[[[(([([([[[(([[([(([[([([([[[[[(([([[(([(([([[[[[([[((([(([[[[[(((([[([(([[((([[[[([([[([(((([(([[[(([[(((((((([([[[[[(([(([(([[[[[([([([[[[((([((([([[((([[[[[[(((([(((([(([((([[[[[[([[(([([([((([((([[([(((([([([([(([([((([(([[([[((((([((([[(([[[([[[((([[(([([[((([([[[((([([((([[(([([([[([[[([[(((([((([[(([([[([[[([[[[[[[((((([(((([(((((([([(([([([[([([([[[((([[((([([([([([[[[[[[([([([([([(([(([[[([(((([(([([(([[(([[[[[(([([[(([([[(([([[([((([(([[([[[([(([((([([[[(([([[([[([[(((([(([[([(((([([[([[[[[[([[[(((([[([[([(((([[(([[([([(([([([([(([[[[[([(([[([((([([[[[((([[[[([([[[[((([[[[[[([([[([(([(((([[(([([[[[[[[([[[([[[(([([[[(([[[(([[(([([(([[([(([(([(((([[((([([[[[([[[[[[([([[([(([[((([[[[[[([[[[[(([[([[((([((([([([[[[[[(([[[((([([([[[([[[([[[[(([[[[[([[((([(([[(([(([[(([[[[[[(([([(([(([[(([(([([[[[[((((([[[[([((([([([((([(([([([[[((((([[[([([(([(([([[([[[[[([[[[[[[([[[[[(([([([[[[[[(([((([([(((([[([([([(([(([[([[[[([[[[([([(((([(([[((((([([[((([[[[[[[[[[((((((((((([[[[[[[[((([([[[([((([[(([[([((([[(([([(([((([((((([([[[(((([([[[(((((([[(([(([[((([[((((((([[((((((([([[[[[[(((([([((([[([([[([((([[(((([(((([[([([((([[[[([([[([[[[(([[(([[[([[([([([[(((([[(((((((([[(((((([([[[([([[((([([[[((([(([[([([([[[(((([([[[((([[[[([[[[[((([([([[([[[([([[(([[[([[[(([[[(((([[((([[[[(((((([[[([(([[[((((((([([[[[([(((([((((([[(([[[(([([[((([(([(([[[([[[[[(((([[([[[(((([(((([[[[[([([([((((([([[(([[[(([(([[((((([[([[((([([((([[[[[[(([((([[[((((((([[[[[[[[[[[(([([[[[[([(([([((([[[(([([([[[[[[(([[(([(((((((([[(([[(([[[([[((([(([[[[(((([[(([[[[([([(((([(([([([(([([[((([([(([[[(([[(([[([([[[([[((((([[([(([[(([(([([([[([(((((([[(((([([(((((((((((([[(((([[([(([(([[[(([[[[(([([[[((([[[[[(((([(([[[([[[([(([(([((([(((((((((((([[[[([(([([([(([[[(([[([[[((([(([([(([[(([[[([[[[[[([[[([[[([[([((([((([((([[[((([[[[([([((((((([[[([[[[[(((([([([([([((((([([((((([[([([[([([([([[([((((((((([((((((((((([[[([(((([([((((([[([[[(([[(((([([[[[(([((([([((((((([([((([[([[(((((([([(([[[[[[([[(((([([[[[([[[[[[[(((([([[([((((((([[([[([[[[[[([([[([[[[[((((((([[([(((([(([[((([(([[[((([[([(([([[[([[([([[[[([[[[([([(([[[[([[([[[([[[[([[((([([[[[[((((([([[((([[[(([(((((((([((([([[[([(([(((((([([[[[(([([[[([([[[(([([[(([((([[[(((((([((([[(([[[([([(([(([((([([([(([([(((((([[[[(([([([([[[[[[[([[[(([[([([(((([[(([([([[[[(([[[[(((((([[([((((([[(([[(((([([[[([[[(([((([[[((([([[(([[[[(([[[[[(([(([[[(([[(([[((([([[(([[[([((((([(([[([[((([[[([((([([([([((([([([(([(([[[(([([[([[[([([[([[[[([[[[[([(([(([(((([[[(([[[[[([((([([(([((([[[([([[(((([([([(([([[[([([[([[[((((([([[[[[[(([[([(([[([[([(((([(([[[([[(((((([[(((((([([([[[[[[([([(([(([([([[(([([((([[[[([([(([[[[[[[([([[([[[([([[([[([[[[[(([[([([[([[[[[[[[([(((((([(([((([[(([(([[([([[([[((((([[[[((((([((([[[(([([[[[[[(([[[[[[(([[[[(([[[[([((((([[([(([((((((([[(((([[[([([[[[[[([[[(([[([([((((((([([[[([([([(([[[(([[[[[(([[((([[((([(((([(([[[([[((([((([(([[([(([(([([(([[[(([((([([([[([[[([[[[[[[[((([([((([[[([([(([[[[(([[[([([([((((([[([([((([([[[[([[(([[((([[([[([([[([[([([(([([[[[[[([[(([[([((((((([(((([(([[[([([[(([[([(([[([([[(([([[[[[([[[[[([(((([[[([[[[(([[[[([[[([[([([(([([[[(([[(((((([([[[([[[[[(([([[[((([((([((((([[[([[(([([([[([[([[[([[[([([([(([((([(([(([([[([[(([([[([([[[((([([(([(([((([([[([([([([(([([[([[([[[([(([[[([[(([([[(((([(([[(([((([([[[[((([[[[[([([[(([((([[[[[(([([[(([[((([((([[[(([([(((([((((([[[(((([[[([[[[[[[[([[((([([(([[[[([(([[[[[(((([([([([[[[[[([(([(([([([([[[([([([[([([[[([[([((([(([[[(((((([([[([([[(([[([[[([([(([[([([([([[([([[(((([((([[[[(((([[[((([([((([(([([([[[[([[([([([((([([((([[[[[[(([[[[[(([[[([((([[[[[[(((([([[[([([([((([[[[((([[[([[(([([[([([[[(([((([((([[([[[([([[[[[[[[[[[[[[((([(([((([(([([([([[(([[([[([([[[([[[[[([(([([[([[[[[[[(([((([[(([[[([[([([((([((([([([([([([[[[[[[([([([[[(([[((((([[[[([([[[([[([[[[[((([[[([((([([[([((([(([[([((((([[[[[[([[((([[[[((([([(([[[[([[[((([[([[[([[([([[([([[[[([[[(((([[[[[[(((([[([([[[([([[[[[([(([[[[[[([((([[([([([[[[(([[([[[([[(((((([[([([[[(((([[(([[[(([[[([(((([[[[[([[[(([[[[([[[((([[(([(([([[([([[[(([(((((([[[([(((((([([[([[[[[[([([[[[[((((([([(((((([[[(([[[[[[(([[[((((([([[[[(([(((((((([([[[[(((([[[((([[([((([((([[[(([([[([[[[([([[[[[([([(([[(([([[[([[(((([[[(([((([([[([(([([(([(((([(([[[([((((((([([[[[([[([[[[([(([(([(([(((([(((((([[[([[[[[([(((((([[[[[[[[([(([[[[([[([[[([(((([[((([([[(([[(([(([[[[[([[[((([((([[[[([[([[[[[([(([([([[([[[(((([([((([[[((([[([[([[[([([[([([((([([[((([(([(([[(((([[([(([[[([[[(((([(([([[([[([[(([[[(([[[[([[[[[[(([[([([[[([((((([(([((([((([([([((([[[([[[[[[([([((([(([((([([([[(([((((([[[[(([[([([[[[(([[[(([([[(([[[[[([[[([[[([([[([[[([((([([([[((((([[[([[[[[[(((([([([(([[[[([((([[[(([[[([([(([[[[[[[([(([(((((((([[[[[([[[[[(([[[[(([([([(([((([([[[[[[([([[(([(([([[[[[[(([[(((([[[(([[[[[[(((((([[[[[[[([[((([(([[(([[([[(((([[([[([[(((((((([[(([(([[([[([((((([([[[[[(((([((([[[[[[(([(([[[[[(([([([(([[(((((([([((([[([[[[[((([([((([(([[[(((((([[([([(([(([([([[([[(([([[(((((([[[((([([(([[(([[[[([[(([[([([[((((([([[((((([(([((((([[([(([[[([([[[([[[(((([(([[[((((([[[(([(((((((([(([([[([[[[([(([[([([([(([([[([([(([[([[(([([([[([((([(([[(([(([([[[(([(([((((([[([[[([[[([([[[((((([[(((((([(([[((([([([(([([(([(([[(((((((((([([[[([([[[(([([([[[[([[[([[([([[(([((([([([[(([[(([[[(([[[([((([[((([([([[(([[((([((([([([[[([((((([([(([(([(([[[[([[([[([[(([(([[[[((([[((([([(([[([([[[([((((([([([((([[[[(([[((([([(([([[[[[[[[([[([[[[((([[([[([([(((([((((([[[([(([[([[[[([(((((([[([([([[[(([([[[([((([([([[[([(([[(((((([[(([[([[(([((((([[[[(((([[[([[(([(((((([[(([[[([[[(([[([[[([(([([[([(([([[[[([([(([(([((((([[([((([((((((((((([[(([((([[(((([([[[[[[([([[([(([(([[([([[((([[([[(([([[([[(([(([(([[[[(([([[[(([[[[((((([[(((([([(([[[([[[[[(([[[[([[[[([([((([((((([([[[(([(([[[[(([[[[(((((([[((([[[[(([[([([([(((([([[(((([(([[[[[[[[([(([((([[(([[[(((([[((((([([(([[((((((([[[[([([(([((([((((((([[[[(([([[[([((((((([([[[((([[((([(((((((([([([([[[[([(([[[[[[[[(((([[[(([(((((([((([[(((((((([[[(((([([(([[[[(([[[(([((([([([((([([([([(([([[[[([[[(([[[[[[[(((([[[((([[[[[([([[([((([(([[[(((([[[([[(([(([((([[[(([[((([(([[([[[(([[[(([(([(((([[[([[[(((((([[[((([(([(([[[[[([([[([((((([[([[[[[([((([[[(([[([[[[[(([[[(([([(([[[[([[((([(([[([(([((([[((([[[[[(([([[(((((([[((([[((([([([([[[([(([[((([[([[([(([[((([[(([([[[[[[[[([[[[(([[((([(((((([([[([[((([(([[[(([(([[([[[(([[[([(((([[[((([([([([[[[([([[[([(([[[([([[[([[[[((([(((([(([[[[[(([[([([[(([[([[[[[(([[(([[([([((([(([[[[(((([(([[[[[[[((([(([[(([[(([[(([[([[[[[[[([[([[[[([[([((([([([[[((((((([([(([(([([[([[([([([((([[[(([([[(([(([((([([[[([(([[[[[([([[([[((((((([[((([(([[(([[(([([[[[[[[((((([[[(([(([((((([(([[(((([((([([[([([[([[(((([[([(((([(((([[[([(((([[[((([[[([[([[[[[[((([[[([([[((([([([[[[(([([[[[[[[(([(([([([[[((([[([[[([[([[[[[[([[((([[([(((([(([([[[[((([(([([([(([((([(([(([[[[[([[[[([(([[(([[[[([(((([[[(([(([[(([([(((([[[((((([(([([((([[[[((([[([([(((((((([[[[([[(([[[[[(([[[((([[(([((((((([[([([[[[[(([[([([(([[(([((([[([([[[([([([[[[[((([(([[[[[(([([[([[((((([([[((((([([([[[([([(((([[[(([[[[[[([([([[((((([(([([((((([(([([[([(([(([([(([(([([([[[([[([([[((([[(([[[[([[[(([[[[(((([([([(([[(((([[([[([([([[(((([([([([([(((([[[(([[[[[([((([[((([[([((([[[([(((((((((([[([[[(([[[[[[[[[(([([[[[(((([[(([(((((([[([[[([[([[[([[([(([[[(([[[((([([[[[([[[((((([(([[(([(([([(([([[[(([[[[[[[[[[[[[[[[([(([[[[(([((((([[([(([[[[((([(((([[[((([[((((([(([(((([[[[((([(([[([[[(([[[[[[[[[[(((((((([([([(((((((([([([[(([[[[[([[(([([[[([[([[([[([[[[([[(([[([[[[([(([[[([(((([[[[([[[[[[([[(((((([((([[[[[((((([([[([[[(([([[(([[([[([[[[(([[[(([([[[(([[([(([(((([[[((([[([(([[[[[((([([((((([([(((([[[[([[([[[([[[[([(((([[((([((((((([[((((([([[([((([([[((((([[[((([[(((([[[([(([[(([((([[(([((((((([([[(([([[[[[([[[[[(((([[[((((([[[[[[([(([([[([[[(([(([(([(([([[[[[[[(([([([[[([(([(([([([[([((([([([[(((([[[[[(([([[[[([[(([(([([[(([[[(((([(([(([[[((((([(([[(([[(([(([[[[([([(((((((([[[(([[[(([(([(([[[[[[[([[[((([[[((((([[[[[[([(([([((([(([([((((((([([[[[(((([((([([([[([((([[[[([[[((((([[[[[([[([([(([[([([[([([(([[(([(((((([(([[([[(([(([[[([(([([([(([[(([[(([([[([[(([[((([(([((([[[(((((([[[[((([([((((([(([[(((([[[(([[([[([(([[(([[[(([(([[([[[(([(([([[((([([[(((([(([[((((([((((((([([[(([(((((((((((([[((([([[[([([([([(([(((([([([([[[[[((([[[[[[([[(((((([[(([([(([[(([([[[([[(([(([[([(([[(([[([[((([[[(([[([([[[[[([([[([([[[((((([[[[[[([(([((((([[((([[(([[(([((([(([((([[[(([((([([([[((([[[[[[[[([[[([([[[[(((([[[(([[[[((([[([[(([[[[[([([[[[[[([[(([[((([[[[[[[[([((([[[[[[([(([([[([[[([((((([(([[(([[[[(([(((([[[([[[(([((([[([[[(([[[([[[([((((((((([[((((([[[[[[[(([(((([([(([[(((([[(([([[((([[([([[([([[(([[(([[[[[[[([[([[[[([(([[([([[[([[[[[(((([(([((([[(([(((([([[[([((([(([[[([[[([[([([[[(([[([[([((([[[([[([[[(((((((([(([[[[((([([([(((((([([((([(([([[[([[[([(([[((([[(([(((([(((((([[[[[([[([((([[((([(((((((((([([[[[(((([(([[((([([((([([(((([[[(([(((((([(((([[[((([([[([[([(([(([[[[(([[(([[([[(((([([([([[([[[(([([[[[[([((([([[[[([[[([((((([[(([[[[[([([[([[([[[((([(([[([([[[[[([([[[((((([[([([[(((([[[[[([([[([[([((((((([[([[[[[[[[[(([(([[([([([[[[((([[(((([([[[([(([[[[([([([[[([([[[([(([[[([((([[((([[(([(([([(((([[[(([[[[([((([[((([(([([([(([[[(([(([[([(((([[[(([(([(([[[(([(([[(((((([[([(([([((([([[[(([[[[[(([[(([((([[[([[(((([((([[((([[(([[([(([((([[[((([[[((([[[((((([(([(((([(([[[[([([([[(([((([(([(([(([[([([([[((([[([([[[[(((([(((((([[(((([[(([([[[(([(((((([(([[([[((([[[((([([((([([[([([[(((((([(([([(((([[[[[[((([([([[((((([[([[[[[([[((([([(([[([([[(([[([((((([[(([([[([([(([(((([(([(([(([((([([[(([(([[[[((([[[(((([[([[[[([([([[((((([[[(([[[[[((([([([(((([([([((([[[[[([(((([([[(([[[((([((([([[([([(([([([[[[[(([(([[[((([(((([((([[([((([((((([([(([(((([((([[([(([([[(((((((([[([([(((([[([(((([[((((((([(((([[(([([([(([([(([([[[([([([(([[[(([([([[[([[[([([(([(((((([([[[[(([[[[(([(([[[([(((([[(([[[[([([(([((([([[[[[([([[[[[([([([[[([[([((([([(([[([([[(([[([[(([(((([[[[[[[([[([([[(([((([[[[[[[[[(([([[((([([[[(([[(([[([(((([([([(([([(((([([([((([([[([[([(([[((([(([[([[(([([([(([[[[[[(([[[(([(([[[(((([([((((([[[([[([([([[((([[(([[[[[[[((([[[([[(([[((([([[[([[[[((((([([(([[(([[[[[[[([(((([([[([((([[([([((([(([([[[([((([([[([[[(([([[([(([(([[(([[[((([(((([[([[(([((([[((([[([(((([((([((([([((([(([[([[[(((([[[[(((([[[(([[([([[[[[(([[[((([(([[[[((((([(((([[((([((((([(((([[([(([([[[[(([[[([[[[((([(([([(([[([(([([((([([[[[[[([[(([([(((([(([[([[(([[[([((([((([([([[(([[[[((((([([[([((([((([(([[(([[((((([(((([[([[((([[([[(([(([(([([([[[([[[[[(([[[[(([(((([[(([([[[[[(([[([((([[[([([[[[[[([[([([([[([[([([((([([[(([(([([[([(([([((((([[[([[[[([([([[(([[(((((([[(([[[[([[[[([[(([[[[[([((([[((([[[[(((([[[[((([([((([[[([([([((([[((([([[([((([[([[[([(([[[([[[(([(([([(((([[(((([[[[(([(([[([([[((([[[(([([[[(([[[([((((((([(([[(([([[([[[[[([[([((((([[(([[((([[([[([[((([(([[((([[([[(((([(([([(([([((([[[[([[(([[(([(([[([[(([[[[[[([([[[[[([((([([[([([[[[[[([((([[([[[(((([[[[([[[[[((([([([([([((([[[[((([[[([((([((([([([(([((([[[[((([[[([[[([([[[[([[([((([([([([(([(([[[([([[([((((([[(([[[([[[(((([[[([([(([(([[[([([[(([[[[[([(((((([((([([[[[[([[([[[([[(([[[(([(([[(([(((([([(([[[([(([[[[([[[((((((([(([([([[[(((((([([[((([(([[[[([[(((([[(([([(((([[[[[[(([(([[[(([[([([([[(([([[[(([[((((([([[[[(((((([([[((([([([([((((([([((((((([[[(([[[[([[[([((((([[[(([[[([[([[([(((([[[(([(([[[[[([[[((([[[[[[[(((([[(([([([([(([([(([[((([(([[([[((((([[[([[[((([[[[([(([([([([[[(((((([[(([[[([[[(([(([[((([((([[[[(((([([[(((([[([[(([([([[[((([([([((([[(((([[(([[(([((((([[((([[[[[([[[((([([([((((([(([[((([[([[[[[(([[[([([((([[((([[[((([([(((([([([[([([[(((([(([[[([[[([([([([(((([([[[[(([((((([[[[(((([[[((([[[[((([[([(([[([((((([([([(((([([(([[(([[[((([[([[[[([[[[(([(([[((([[[[[((((([[[((([(((([[[(([([[([(([(([[(((([[((([[([(([[[([([((([[([[[([[[([[[[[[([(([([((([([([[(([(([([[([(((([(((([[(([(([[[[(([[[[[(([(((((([((((([([([([([[[([[([([[((([(([[([[(([([((([([[[(([[[[([[[[[[([[[(((((([[(([([[((((([[[([[[[([[(((([[(([[[(([([[[([[[[[[([[(([([[([([(((([(([([[([(([(([(([(([(([[((([([(([[[((([(([[[[[[((([(([(((((([[[[[[[[[(((([[((([([(((((([([([[([[([([[(([([([((([[([([[([[[((([[[([(((([([[(([(([(((((([[[[[((([[(([[(([([([[[[((([[((([[([(((([[[[[(([(([((([([[(([([[[[[[[[([[([([((([[(([[((((([((((([(([(([[[[[[([[[[[([([[[[(((((((([(([[[[(([[[[(([[((([([[[([([[([((([((([([([([([(((([[[[(([(([[[(([[(((([[[(([(([(([[[(([(([(([[[[(([(([([((([(([([([[((((([[([([(([[[[[[[([(((([[((([(((([[[([[(([([(([[[[(([(([[[[(([[([[[([([[[[([([((((([[(([[[[([([[([[([[(([[([[(((((([([[[[[([[[(([[[[[(([[([[[(([[[([[[((([([((([[[[[[(([(([[((([((((([[([[[[[((([[([([(((([[[[[([[[([([[[([[([[((([([[[([((([([([[([([[[(((((([[[((((([[((([[[[[([[(([([[[((((([(([((([([([[([((([[[(((((((([([([[([([([(([[[[([([([((([((((([([([[[[([(([((((([((([([[([[((((((((((([([([[[[([[[[([(([([[[((([[[((([[[[([([[[[(([(([[[((([[[[((([((([([[(([[([[(([([[(([[[((((((((((([[[([([(([([[(([[([[[(([((([(((((([[((([[[[[([([[((((([[[((([[[([([[(([([[[[[[(([([(([(([[([([([[(([(((([[[([[([[([(([[[(([((([([[[(([([[([[[((([[[([([[((((((((([(([([((([([[([([[[[[[([(([([[([[((([(([((((([[[[([[((([((([([[[((([((([(([([[[[[[[(([(([(([([(([[[[(([([[[[[[([([[([[[[[[(((([[([(([([([(([[([[(([[[(([[([(([[([(([[(([([[(([[(([[[[[(([((([[([[[([[([[((([[([(([([(((([[[([([(([[(((([[([[[([([[([(([[[[(([[((([(([[((([[[(([[[[[[[([([(([((((([[[((((([([[((([([([([[(([[[([[([(([[([([[[([[[[[[[[([[([([[[((([[[[[[([(([(((([(([[([([[([[[[([[[[(([(((([[([[[[((([[[(([[[[[[[[(([[[(((((([(([([[[([([[((([[[(([[([((([((([[([(((([[([(((([[[(((((([[([[([((([[([[(([[(((([[[[(([[([[((((([(((([(([(([[((([[([(((([([[([[([((([[(([(([[[([([(((((((([(([([[([(((([[[(([([[[[[(([([[(((([[(([[[([[([[([(([([(([([[((([([[([(([[(((([[[([(([[[(([[([[[([([([[[([((([((([[(([[[(([(((([([(([[((([[([([(([[(([([[[[[([[([[([[([[(([[[[[(([[(([(([[(((([[[(([[[(([([(([((([([([([[([[[[[[([[[(((([[(((((([(((([[(([([[([[[([([[((([[[[((([[[[([[[[[([[[[(([[(((([(((([(([([(([((([([[((([([[[[[([[((((([[((([[[[[(([((([([((((([[[(([[([[[[([(([[(((([[[([[[((((([([(((([((([[(([[([[(((([[([(((([(([[[[[[[(([([[[(([([[((((([[[(([[(((([([[[[([((([[(([[[[([([[[[(([((((([[([[(((([([(([[([[[[[[(([([[[[([[((((((((((([[[(([[((((([[((([((((((([((([(((([[[[(((([(([(((([[[(((([([[((([[(([([(([((([((((([[([(([[[([[[([[[[((([([[[[[(((([[(((([[([[[[([[(((([[([[([((([(((([(([[((([[(([[[(([[([[[((((([[([[[(((([[(([([[[(([[[[(((([([[(([[([([[[[[([([[([[([(([[[[([(([([([[([([[([([[([[[([((([[[[[[[[[(([[[((([(((((([[[(((((((((([[([[((([[[[(([[([(((((([[[[([([([[[[[[[[([([[[[[[[(([([([([[[((([[([[[[(([[([([(((([[[([[[(((([[([(([([([[((((((([([[[(([(([([(([([([[[[(((((([[[[(([[[[[([((((([(((([(([[[(([(([[[(([([(([(((([[[([[(((([([(((((([((([([(((([[[[((([[(([(([(([[(([[[([[[([(([(([[([[[([[([([[(([[[((([[[[(([[(([[([[([[(((([([[([[(((((((([[([[[[([[(([([[[[[[(([[(([[[((([[([[[(((([[([([([([(([[[[[[[([([((([((([([[((([[[((([((([[(([[((([(([((([([([([(([[([[[([([[[[[[[[([([[([[[((((([[[(([[([(([([((([[((([[[[((([(([[(((([[((([[([([[[(((([[[([((([([[((((([([([[[[([[[[([[[(([[[((([[([([[[([([[[(((([[[[[([[[(([((([[([((((([[([([(([[[[[[([[((((([(((([(([[[[(([[(([[[([([[([(([([(([([((((((([[((([[[[([(([[[((([((((([[[[([[[[([(([[([[[[([[(([([((([[(((([[([([(([[[[[[[[[([([[(([[[[(([[([((([(([((([(((([[((([[(([[[[((([[[[([[[((([[(([([[((([[[[(((([([[[([([[([[[((([[[[[[((([([[([[([([[[[[([((([[[([([([[[([(([([[[[[([[[([(((((((([[(((([[[[[(((([[([[[[[(([[(([((([([(([[[[[[([([[(([([(([[([[[[([[(([(([[[([[[[(((([([([[([([([([[[[((([[[[[[[(((([[[([(([[(([([([(([[([((([[(([(([(([((([([([(([[([([([(([([[[[[((([[[[[([[([(([[[((([(([(([([[[[((([(((([[(([(([[[([(([(([((([([[(((([([([([(([[(([[(([[(([[([[(([[[[((([[[[([[[([((([([([([[(([([([[[[[([([(([[[([[([([[((((([[((([[[[[(([[[(([(([([[((((([[((([[[((([[([([((((([[[[[([(([[[[((([(([[([([[[[([[((([[(([[(((((((([[[[(([[[([([([[(([(([[[((((([((([[[[([[[[[([(([[((([((([[((((([[[[[(([[[((([[(([(([[[[[[(([[[[([[[(([((((([[[[(([[(((((([([[(([[[[[[([[([((([[[([[([(((([[[[[([[(([[[(([[[([([[[(([(((([[[[([[([([(((([([[[[[(((((([[[[[[((([[([[(([[(((([([(([[(([([([([[((([([([[[[([[[(([((((([(([((([[[[(([((([([([[[[([[([[[[[((((([(([[[[([[[([[(([[[[[[[[[([(((([([[(([[[((([[[([([([[[[[[((([([([((([((([[([(([(([[[[[([((([[([([([[(((([([[[([[[([([((([([[[[(([[[[(([((([[(([([(([(([[[[[([((([[[([[[[([[(([[([[[(([[[[([((([[(((([([([([[([(((([((([([((((([(([[[[[(([[([(([[[[([[[((([([(([(((([([([[[(([(((([[([((([[[([((([[[([([[([[([[[([[((([[((((([[[((([[[(((([[[([((([[[[[[([[[([(([[[[(([(([[[([([[([[([[[[(([[(((([((([([[[[([[([[[[[[([[[[((([(([[(([[[(((((([[(([[(([([[(([((([([((([(([[[(([[(([(((([[[([[(([(((([[(([[((([((((([[[(([[([[([[[[((((((([[[[[(([[[([[(([[[([([([[([(([((((([[(((([([[[[(([[([[(([[([[(([[[[([([[[(((([[[[[(((([([(([([(([([(([([[[(((((([([[(([[(((([([[([[([([[[([(((((([[[[[[[[[([[([((([([[[((([([[[([[[[[([[([(([[[(([[([[(([(([[[([[([[(([([((([([[((([((([[[(((([[[(((([[((([[((([[[(([(((([[[[((((([[(([[[[([[[[(([[[([[[([[((((((([([[[[(([([([[(((([[[([[[[[([([([[[([([[((((((([([(([[([[[[[(((([[([[[[([[[[([([[[(([[[[[([[[[[[((([([[([(([([[[[[[[(([[(([[[[((([([[[[(([[[[[(([((([(([([[(([[[[[([[[([[[([[[[(((([[[[[[(((([[[([((([[[[[(([[([[[([[((([[[[[[[[([[([(([[([[([[([[(([(([([([[([([(((([([[[([([[((([[(([([((([[([[(((((([[[([[[(([(([((([[[([[[[(([[(([([(((((([(([[(((([[[([(([(([[[[[[([[[(([([[[[([[((([[([[([(((([([((([(((((((([[[[[(([[[[[([[([(([[[[(([((((([[[[((((([([[(([[([[[([[[[([[(([([([[[(((((([([([([[[((([(([((([[([(((([[[((([[[[([[(([[((([[[[(([[[([([((([[[[[[([([[(((([(([(([[[[[[(([[[[((((([([[([([[(([(([[(((((([[[[[[[(([([(([(((((([([([[[[[([([[[[([(((([([(([[[(([((([[[([([[([[[[([([([([(([(([[[[((([([[[(([([([[[((((([[[([(([[[([[[([(((([[([([[[([([([(([(((([[[[[([[(([[[((((((((([(([[(([([([[((([[[(([([(((([([([(([[[[([[(((((([([(((([([[([[(([[([[([(([((([[[(((([([[([([[([(([(([[[[([[(((([[(([[(([[([[[(((([(([(((([[[[[[[((([([[([(([[[[([[([[[([[[[[[[([(((([(([[[[[((([([((([([([[(([([([([[([[([[[(((((([[[[[[[(((([(((((([[(([([(([(([[([[((([([([(([(([[((([([[[((([([([[(((([((([([[[[[[([([((([[([[(((((((([([[[[[[[([([[[(([([(([[((((([([((((((([[(([[[(([[(([([[([(([(([([(([[[[[(([[([[[([(([(((((([[(([[[(([[[([[[[([([(([([([[[[[[(([((([[[[[[[[(([[[(([[([[[([([[[([([([[(([((([[([([[[([([[[[([[([[[([((([([[[(([[[((([[[([([([[[[[([([([(((([(([([[[([(([[[([[(([([(((((([([((([[[[[(([(([[[[[[([([[(((([([[[(((((((((([([([[[[([([[(([[[([[[([(([(([[[[[([[[([([([[([([[((((([([[(([[((([([([((((([[[[([[[[((([[[[([((((([([([((([[[([(([((([(([[([(([(([([[((([((([[[(([[[((([[(((([(([[(([[([([[[((([[[[[[[[[((([((((([[([[[[([[([(([[([(([[(([[((([[[([[(([[[(([[(([[[[((((([[(([[([([((([(([(([((([([[[([[(([[(([([([(([([([[[([(([[((([(([[(([[[[(([(([(((([(([[[([([(([[((([(((([[[[[([([[(([[([([[([(([(((((([([[[[[((([[(([[[[([[((([(([[([([([([[[[[([[[[[[((((((((([(([([([[[[([[([([([[[[((((((([(([(([([([[((((([[[[[[([[[[([(([([[([[(((((([[(((([(([[((([[((((([([((((([([[(((((([[[[[((((([[([([[(([((([[[[[((((([[([([(([([[((([[[(([[[[[[[[([[[([([[((([[[([(([[((([(([[([[[[[([([[[((((([([([[[([((((((([[[((((((([[[[([[(([[(([(((([[[(([[([[(([(([(([[[([([[[([[[([[([((([[[[[[([[[[(([[[[[[[(([((((([[(([[([([((([[([[[((((([[((([([(((([([(([[(([[(((((([([[[[[[([[([([[([([[[(((([[[(((((([[[[[[([(([(((([([([((([((([[[(([[((((([[[([[[(([([(([[[([[[([[((((((([([((([[([([([(([((([([[[[(([([(([[(([[(([(([(((((([([[[[[[(([[((([(([([[[([(([[([(((([((([([(((((([[(((((((((((([([[[(([[([(([(([([[(([((([[([[[((((([[[[[[[[[([[[([[[[[(([[(([([[[([([((([([[([(([[([[[([[[[[([(([[[[((([(([([[(([[(((([[[([([(((([[([[([(([[(([(((([([[[(((([[[((([([((([([([[([[([[([[[[[(([[[[[([([[((([(([[[([((([([([[([[[[[([([([[[(((([(((([([[[[[[(([(([[((([(([([[[((((([[[((([[((((((((([[(([[[([((([[[(([(([[([(([[[(([[[[([[[([[([[([[[(((([(((([[[((((([[[(([((([[([([[([[[([([([(((([[((([([(([([[[[([[[(([([[([[[[[[(((([[[([(([[[([((((([[[([([((((([[(([[([[[[[[[([[([[[[[([([[[(([(([(([([([(((([[([[([[[[(((([(([[(([(([(([[([([[[(([[[(([[[(([[[(([[([((((([[[(([[[([((([([(([(([([([[[[(([[(([[[([[([[[[[([[([[[[([(([(([((([([[[([(([(([([[((([((([(([[((([[[[((([((((([[[[[([[[((([[[(([[([((([(([([[([[([([([((([[[[[(([[([[((((((([([[[(([([((([(([(([[[(((([(([([(([[(([(((([(((([[([[([[((([(([([[[(([(((((((([((([[[[[(([[([[[[[((([[([((((((([[[[[([([[((((((([[[([[[[[([[([([(([((((([(([(([([((((([[(((([([(([((((([([[[[[[[([(([([[([([([[[([[(([[[([(((([[[(([[(((([[(([([(([[(([([(([[([[[(([[([([([([([[[[(([((([[(([([([([([(([[[((((([[(([[([([([(([((([[[(([[[([([([[(((([([([(([([([[[[((([([(([[([[[[((((([[(([[(([((([(([(([([(((((([[([[[[([[((((((([[[[([([([[([((((([[[([((([(([[[[[([[([[[[[(((((([[(([[((([([([[[([([(((((([[([((([[[(([(([((((([[[[((([([([([([((([(([[[[((([[([(([[([[([[(((((([[([[([[([((([[[[((([([(([[([([[([[((([([(([[(((((([(([[((([[[[[([[(([([[[[[(([[[[[[[((([[[(((([([[((([(([[[[([(([[([(([([([[([[[(([(((([[[([[(((([[[[[(([[[([((([(([((([[[([[[((([[(([[[([([([([[([([(([[([[[((([((([(([[[(([([[(((([([(([[[[([[[[([[[[[(((([([([([[(([([([((([(((((((((([(([([[(((([((([[(([[((([([([[[(([([[[[[([([[([[((([[(([(([(((((([[[[(([[(([[[[[(((((((([[[[([(((((([[(([([[([[[[((([[[([(([([[([[([([[[[[[[[[[((([([((((([((([[[([(([[([((([(([((([[[[(([[(([[[([[([[(([(([([[[(((((([[[([[[([(([(([([[[([[([([[((([[([[[[([((([(((([([[[([(([((([[(([[((([(([[(((([([[([(([([[([(([[[(((([(((([[([([[(([[[(([[[[([([([[([([[[([([([(([(([[[(([[[(([[[[([[([[[([[(([(([[[([[(([([(([(((((([(([[[([[([[([[(((([([[([(((((([((((([([(((([(((([([([([(([((([(([([[([[[(([(((([([[[[([(([(([((([[[(([[[[[([[(((((([[[([(([([[([[(([[([[(([[([((((([(([([([(((([((((([[(([[(([[([(([[((([[[[(([[(([[[[[(((([[([[([([[[[(([[(([(([[(([[([([[(([[[[([[((((([([((([[([[[([[[([[[[((([[[[([([[[([((([[[(((((((([[[([([[([([[[([([([[(((([(([[[((([([[[(([[([([((([[[[[[(([((([[((([([((([([([[[([(([[([([[(([((([[(([([[(([[(((([[([[([[[([[[([[(([[[[[[[((([(((((((([[(([[[[[((([[[([(([(([[([((((([([(((((([(((([[(([(([[[(((([[((([[[([(((([(([((((((([[([[([[[[[[[(([((([[([[(((([[((([(((([[[((([[[((([[(((([[((((([([(([[([[((((([(([[[[[(((((([[([[([((((([[[([[[([(((([[[[([[(([([[([[(([[[([[([(([[[[([[[([(([[[(([[[([[(((([[[[([([(((([[([[[((([[[([((([((([((([([([[([[[([[([([([[([([[([[[[([((([[[[[([([(([(([([[([(([(([[[[([[(([[[([(([[[[([[[[[(([[(([[([[(([[((([[([[[([[[([(([[([(((([([([([[[([(([([([[[(((([(([([([(([((((((([([(([([(([[(((((((((([([[([[(([([(([[(([[[[(((([((((((((((([(([(([([[[([[[[(([[[[([([((([(([([[([[[[[[[[[[((((((([([([(([([[[[[[(((([[([[(((([[[(([[((([(([(([(([([[[[[([[([[(((([((([[([[[[[(([[[([[[([(((([([([(([(([(([[(([[[[((([([([([([(([[[(([[(([[(([[([([[((([[[((([[[([[[(([([[[(([([(([[[[[([[([(((((([([([[((([((([[([([[[([[([[[[[([[[[([([[[([(([(([([[[[(((([[[(([([(([([[[((([[[(([([([(([([([([[[([[[[(([[[[[[[[[(([(([[[([(([[([[[[[[([[(((((([[(((([(([[(((((((([[([[[([[[([[[(([[[(([(([[((([([[([[((([((([[[([([[((((([(((([([(([[([[([[([((([([([([([[(([([(([((((([[(([[[[(([([(([([[([([(((([[([[(([[((([[(([[[[[[([([[[([([(([([(([[([[([([([[((([[((([[[(([[[([((([[([([[((([[((([(((([([([((((([[[(([[([((([[[[[[([[[[[([[([[(([([(([[([(((([([([(([[(([([((([([[([([(([([[([(([[[((([([([[([([[[(([[[[[[[[[(([[([((([[[(((([(([([[[(((((([[[([[[[[([([([[([([([([((([([[[(([[[[([[[(((([[(([([(([[[[(((([(((([[([(([((([[[(([((((((([[[[[([[(((((([([((([([([((([(([[(((([([(([(((((([((([(((([[(((([([[[([[(([([([[[((((((((([([[[[[[[([[[([((([([[([[(([[[(((([(([(((([([([((([[([(((([[(([(([(([(([[((([[[(((([[[(([([([[[([[[(([([([(([([((([([[[([(([(([[[(((([[[[([[[([[[([[(((((((([[([([([[[[[([(([((([([[[([[[[[(([[(([([([[([([([([[[[[((((([((([[([(([([[((((([(([[[((((([[(([(([((([[([((((((([[([[([(((([[([(([[([(([[[(([[([(((([[([([[[[([(([([([(([(((([[[((((([((((([(([[((([((([(([[((([[[([(([[[[[(((([[(([([(([[[[[([((([(([[([[[[[([([[[(([[[[[[(([[(((([((((([(([([([(([[([([(([(([[([[(([[[[(([[[[([[[[([([(((((((((((((((([[([[([[([((([([(([([[[([([([(([((([[(((((([(((([([[[([(([(((([[[[[[[[[((([((([[[[[(([[([([[[(((([[([([[[((([((([[[[[([[[[[[[[[[(([([(([[[([[((([[[((([(((([[([[[[[([(([[((((([[[[[[[([((([[[[[((([(([[([[[(((((([([(([([[([[((([([([([([[([([([[[[([[[[([[[[([([([[([(([([([[[([[[[(([(([[([(((([[(([([([[((((([[[[[([[[([([[([([([[[((([[[((((([([[[(([(([([([[([[([[[[(([([(((((([[[[[([([([([[((((([[[(([(([[[([([[[[[(([[([[(((((([[([[([((((([([[((([([[([((((([(([[[[[[(([[(([[[[[[([[[[([([[[(([([(([[(([[[([((([[[[([[([[[[((([(([[(([[[([((([([(([[((([[[([[[([(([((([[(([((((((([((([[(([([([[[(([[([(([(((([[([[[[[[[([[(([((([((([[[[((([[[(((([[(((([[(([[[[[([(((((((([[(([[(([[[[(((([[[([((((((([([[(([[((((([([[[(([[([[[[([(([(([(([([(([[[([(([(((([([[[[([(([[([[[[(([[[((([([([[[[(([([([([(([([(([((([(([[((((([(((([[(((([([([([[[(([[(([(([[[[[[([([([([[[(((((((([[([([[[(([(([[(([([(([((([([[((((((([[[[[[([(([[[[[[[[((([([[[[(([([[((([([[([(([[[[[([([[(([[((([[[[(([[([([[((([((((([[([(([[[[[([[[[[[[([[((([[[[([[[[((([[([[[[([[(([[[[[[[[([([[[[(([[((([([[([([([[([(([(([(([[[([((([([([(([(([((([[(((((([[(([([[[[([[([[((([[(([([[[([[([(([[([([[[([(([((([[[[[[[[(((([([[[([[(([[(([[([((((([[([[([[[(([([[[[[(([[([[((((([[[[[([((([([[(([([[(([[[([([[[[[((((([(((([(([(([([[[[(((((([([([([[(([([[(([([[[(([[[[(([((([[[[[([[[(((([(([([[([([[(((([[([((([[[[[[[[[(([[[(([(([(([(([[([(([(([[([(([(((([[(([([[[[((((((([([[(([[(([(([[[[(([(((([[[[([[(((([[(((((([[[[([([([[[([[[[([[[[([(((([[(((([((([[(((((([(([[(([[((([(([[(([[((((([([([((([([(([[[([([[[[[([(((([((([[[[[[[[((([[((([((((([[(([(([([(([[([[(([([([[([[[(([[[[[[[[[(([([[([(([(((([(([[[(([(([[[[([[[(([[((([[[[[((([([[[((([[([([((((([((([[([[(([(((([[([[[[[[([((([(([[([[((((((((((([[((([(([[[(([[((([(([[[[([[([[[([[((([[[[[((((([([[[([[(([([[[[[([([(([[[[[[[([([([[[(([(((([([[[[([[[([(([((((([[(([([(([[((([[[[[[([([[[(([([[[[[[[[([(([([[[(([(((([((([(((((([(([([[[[[([[(([(([[[[(([(((([[[([[([([(([([([([[[(((([[[[(((((([(([((([[[(([[([(((([[([[[([[([[[[[[([((([((((([(((([((([(((([(([((((([[[(([[((([[([((([[[([[[([[(([((((((([([([[[[([[[[([[[([[[(([([((([([(([[(([[([([(((([[[([(([[(([((((([(([[(([((((([(([([(([([([(((([[([([[(((((([([(([(([[(([[((((([(([((((((([((((((([([([[[(([[[([([[[([(([[((([(([([([(((([((([([((([([[[((([([(([([[[[[[[[(([((((([([[([[[[[([([([(([[([([[[(([((([[([[[((([([([(((([[(((((([(([([(((([(([((([([(([[(([([[[((([([[[(([[[[[(([([([([(([(([[(([[[([((([[[([[([[([[([(([[[[[[[([(([([[([[(((((([(([([(((([([[(((([[([[[[((([((([[([[[[[[[[[([(([([[[([([(([[[([([[([([[((([([[([([((((([([[[(([[[([[[[[[([[[(([[[[[((([(((([[[([[([(((((((([[[[[(([((((([[(([(([([([[([((((([(([(([[[(([([(([[[([([(([[[(([[[[[[([[[[[(([([[[[[([([[[([(([([[([[[[([(([((([(([[[[([([((([[[([(((([(([([([[[[([[[[[([([([([((((((([[([([[[([[([([[[[([((([[[[([([[[[[([[[[([[[((([([[(([(([(((((([[[[[([[([[((((([[([((([[[(((([([[(([[[([(([([([[(((([([[[[([([(((((([(([((([[([(((((([(([([[[([[((([[(([[(([((([([([[((([[(([([[(([([[(([[[[[((([[([(([(([[((([[[(([[([([([[(((([([[(([[(([(([[[[((([[[[[[(((([[[[[[((((((([([((([(([[[[([([((([([(([([([[[[[[(([[[[(((([[((((([[([[[[(([[((([(([(((([[((([[[[([[[[((([[((((([[((([[[[(([((([[[[[[[([([[[([[[((([[[([[([[([[([[[([(([[([(([[(([((((((([[[[[[[[[[[(([((([([[([[[([([[[[(([[([[([(([[([[([([[([[([[[[[[(([[[[((([[[[[[(((((([[[[[[(((((((([[[([([([([[([(([((([[(((((([([(([[[[[[(([([([((([[[[([([([(([(((([([(([([([[(((([([[(([((([([(((((([[([((((([[[[[[((([[[(([[[(([[([(([([(([[[(([(([(([(([(([[[[[([([[([(([(((([[[[[([((([[[[[((((((([(([([[[([[[([(((([([[(([(([([([[[[([[((([([[([(([[((([[((([((([([[(([[[[((([([[((((([([(([[[([[([[[[[[([([([[(([([([[[([[(([[([[([(([[(([[[[[[([([[(((([(([[((((([(([((((((([(((([[(([[[(([(([[[(([(((([[[([[[([((([[[([(([[([((([[[[(((([[[[([(([(([(((([([(([([[(([(([((([([[((((((([((([((([(([[[((((([([([([((([[[[((((((([((((((((([[[[[[[[[[[[[[([(([[([([(((([[[[[(([([[([[((((([[([(((([((([[[[[[(([[[[([[[[[[[(([[([[([([([[[(([((([([([[[([[([(([[[[((([([[(([[[(([(([([[([[[[(([((((([(((([([[([(([[((([[((([[(([[([(([([[((([[(((([[([([(([[[[((((([[([[[[[([([[[([[([([[([((([[[(([[((((([[([[(([[[[[((([[[[([(((((([(([[[[((([([[[(([([[[[([[((([(([[[([([([[[(([(((((([((([(((([[[[([([([[([((([([[[(((([[([[[(([(([[[((([[(([((([[[([[([([[(([[((([[[([[[(((([[[[((([[([([[[[((([(([((((((([(([(([[(([([([((([(([((([(([[[(([([[([([([[[([[[([([[[[[(([[[(([([(([([[(((((([[((([[((([[[[((([([(([[([(([([([[((([(((([[[[(([((([[[[[([[(([[([((((([[([([(([([[[[[[((([[(([[[[[[(([[[([[[[([(([([(([((([([[(([(((([[(([((([[([[[(([[([((((([(([((([([([[[[((([([[[[[[[[[([[[[((([[[([(([[[[[[([((([((([[(((([[[(((([(((((([([((([[[([([((([((([((([([((([[([(([[[(([[([([[(((([(((([[[[(([(([(([[[[[[([[[[[([[[[[([([[[([[[([[[[[([[[[[[[(([[([[([([(((([([(([((([[(([([[[[[[[[[([[([(((([(((([((([[[[[[[[([([[[[((([([(([[[([([([[[[(((([[[([[[((([[((((([((([[((([([[([(([([(([[([((((((((((([(((([[[[((([[((([(((([[[[[[([((([(([(([([([[(([[([[[[(([([[[[[[([(([[[([[((([[([((([([[([([[([[[((([[(([[[[([[[(([(((((([(([(([((([([[((([((([[[((([(([[[(([(((([[([([[[[(([[[[(([([([[([([[((([[(([[[[([([[((([(([(((((([[[([(([[((([[[[[[([([[[[[([(([([([((((([(([([(([([[[(((([([(([[([([((([([[([([(([[[[[(([[([[[(((([((((((([([[[(([(([([([(([[[[[[[([([(([[[([(([(([([[([[[[([(((([[[[[([([[[([[(([([(([[[[(([([[[[((([[([(([[(((([([[((([([(([[([[[(([(([[(([([[[([([[(((((((([([([[[[(((((([((([(([[(((([[([[([(((([([([(([([[([([(((([((([(([[(([([((((([[[[[([((([[[([([([((([([(([[(([(([([(([((([[(([((((([[(([((((([[(((([([([[[[([[[[([[[[([([[(([[(([([[[[(([[(([[([([([[(([[([(([(([[([[(([(((([[[[[([(([[([([((([([[[([[[[[[([([([[([[([[[(([[([[[([([[[[[(([[([[[((((((([([([[(([[[([([([[(((((([[(([(([(([[([((([(([([(([[([([[((((([[[((([([([([[[[([(([[[[([([(((([[([[[([([([([[[[([([((([[([([[[([((([[[[[[[[[[((([([[[([((([[[[([[[([[([[[[[(([(((((([[[([([(([((([(([[[[[[((([((([[[[[(([([([((([[[([[[[(([((([([[[[(([[[(((((([([([[(((([[([(([([(((([(([((([([([[[[[(((([[(((([[[((([([[[(([[([[(((([[(([[[(([[[[([[[([(((((([[((([[([([[[(((((([([[((([[(((((((((([[[((((((((([[(([(([[[([([[[[(([[[((([((([([([((((([[[([[[[[([(([(([((([[(([(([[(([[[(((([[([(((((([[(([([([[[[[(([([(((([[((([[[[(([([[[[((([[((([[[([[[([[[([([(([[[([(((([([[([(([[([[[((([(([[[((((((((((([[(((([([((((([[[([[(([([([[((([([[(([([(([[(([(([([([((([[((([[((((([([([([(([[([[[[[([[(([[([[[[((((([[(([(([[(([[([[([(([[[[(([[[[[((([[(([[(((((([[([[[[(([[(([[[[[(([[([([[[[([(([([[(([(((([([[([([(([([([[([(((([[[[[([([[[[[[[[((([([[[[([[[[([[(([[(([[([([(([[([((([[((([(([([([[(([[[[[((([[[(([((((([(([([[[[[[((((([[(([[[[([[([([(((([[((([(([[[([(((([[([((([[((([[(([[[([[[[[((([[([(((([[((([[([[([((([([[[([((([[(([[[([((([[[([([([[([[[((([[(([([[[(((([[(([(([([[[((((([([[([[(([([[[((([[((([[[[((((([[([[((([((([[[((([(([((((([[[([[[[[[[[((([([[[[[[([[[[([([(([[([([([[[(([[([(([([(([[[[[[([(([([[([([([(([[(((([[[[((((((([((([[[[([[[(([[(((((([([(([(([[[([[([[[[(([[[[[[[([[([[((((([([([(((([((([[[((([((((([(([[[(([(((([(((((([((([[([(([([([(([(([[[[([(([([[([[(([[(([((([([([[([([([([[((((([(([(((((([(((([[([[[[([(([[[([[[(([((((([[[([([(((([(([([((([([([[((([[((((([[[(([(([([[[[((([[[([[[[([[(([([[([[[([((((([((([(([[[([((([([([[([([[[([[[[([[([[(([([[[(((([[([[[[((((((([[([[([[((((([(([[([([[(([([[[[((([[[[[[[[[[(([[((([[([([[([([[[(((((([(([[[([(((((((([[(([(([[((([[[((([[[(([([[((([[[[[(([([(((([[[((((([[(([([([(((((([([([([([[((([[[([[([[([[[[((([[[([((([((([(([[([[((((([[([(([(([[[(([(((([[([[[(([[[(([([((([[([([[([([[[[[[([[([[([[[[[((([([[([[[[[[[((([(([[[([([(([[([[[([([[(([(((([([[([[([[([[(([((([[([[([[(([[(((([([[([[[[[[[([[(((([[([([[[[[[(([([[[([[((([[(([([(((([[[((((([[([(((([([(((([[(((([([[([(((([[[[[[[[[[[[([[([((((([[(([([[[[([(((([[(([[[([[[([([[[[[[([([((((([((([((((([([[[([(((((([[([[[([((([([[(([[[[[(([[([([[([[[(((([([(([(([[[[[[(((([([[[(([[[(([(([((([[[([(([([[[[[(([((([[([[[([[([(([([([[(([([(([([[[([((([[[[([[[[[([[([([(([[([[[(([[[(([([([(([([[([[([[[[[([(([(([[(((([[([[(([([[[[([([([([(((([[(([(([[[(([[[(([[[[([([[[([(([[[([(([([[[(((([([((([(([[[([[[[((([([[(([[[([(([[(([[[[([[((([[[[(([([[((([[[[([((([[[[([[([([([([([((([[([([[(([((([(([((([([[((([([([[((([[[[[[[[[[((([(([[((((([([[(([([[[[[([[((([[([[([[(([[([[[((([[((([([[[[(((([([(((([(((([[[([[(([[(([[([[[[[[([([[([((([([[(([([([[[(((([(((([([[[[([[([[[[([([(([(([[([[[[[([(([((([[(([[[([[[[[[([[[[[[(((([(([([([(([[[[([(([[[([[[([[[((([([[([[[[[([([([[([([[[([([(([[[[[((((([[[[[([([[[[((((([[[[([((((([(([([[[[[([[([[[([[([(([[[(([[[([([[((([((([([([[[[[[((([[([([([([([[[(([([[[(([[[([(([[[[((([([[(((([[([([((((([([([([([(([[([[[[([[((([((([[(((([[[([(([[(([((((([[[[(((((([[[[[((([(((((([([([[([[([[(([[((([(([(([([(([[(([[[(([(([(([[(([[[[(([[([([[[(([[([[([(([[([([[([([([[([[((([(([[[[[(([((([([(([(([((([((((([[[[[[(([[([(([[[[[([[((([([((((([([[[([[[((([[(([([[[[[[[[[([(([([([[[((([[(([(([(([([[(([([[[((([[[((([[(([([([([[[[[[((([([[([[[(([[([(((([[[((((((([([[[([[[[[([([(([[([[([(((((((([[[(((([(([([(([([[[([([([[[[[([([[(((([[[[[([((((([[([(([[[([[([(([[[[[[[[([[[([[(([[((([[[[[([([(((([[(([((([[[(((((([((([[[(([[[([(((([[[(([(([([[([[[[[[([([[(((([((([((([([([[([[[[[((([[[[[[[[([([[[[[([[[((([[([(([[([[[([[([[[[([[[(([[[[[[[[([[(([([[[[([[((([[(([[[[[[(([[([[((((([[([([([([[((([[((((((([[(([([[(([[([[[[((([([(((([[[[([[[([(([[[[[([([[[[(([([[[[(([[([((([[([(([[[([[(([((([[[([[[[(([([[[[[([[[([[[([(((((([(([[([[([(([[[(([[([[[((([[[(([([(([[((([[[([([([[[([[[([[[(([([[[[(([([[[(([([[[[[([([[[(((([[[([([[([([([[[[[([([([[(([((([((([[((((([(([([([[([([[([[(((([[([([([([[[((([[([(((([(([[(([([[([[(((((([([[[((((([[[[(((([([([(((([[[(([[[(([[(((([(([[[(([[(([([([([[(([[([([([[((((((([([[(((([[[[(([[[[[((([[[([[[[[([([[[[(([((([[([(([((([[((([[[(((([[([([([[[[[[[[((([[[(([(([[(([[((([([[([[[([[[[[([[(([[((([(((((([([((([(([[[[([[([([[([((([(([(([((((([[[[([((([([[[[[[[((([([[(((([(((((([[([([([[[([([[([[[[((((((([((([[[[[((([[(([[(([([([((([([(([([[(([[((([(([[[((((([(([((((([([[[(((([[(([[[[([([([[([[([[((([[(([([[[(([([[(((([(([[(((([([[[[[[([[((((([(([[[[([(([([[(([(([(([([([((([[([[[([[([(([[([[(([[[[[[[([[[([([[[([[[[(((([([([(([(([(((((([([[(([[([[(([[[([(([(([(((([(([[([([(((((([(([[([[[(((((([([([[([[(([((([[([([([(([(((([[([([[[[([[([[[[(([((([([[(([(([(([([[[[[([(([((([([([(([(((([(((([((((([([[((((([([((([[[[[([[([[([([(([([[[[([([[[[(([[[(([[(((([[[[[[([[[[([((([(((([[[(([([([((([([([([[[([([([[[([(([((([[[[[[[(([(((([(([([([[((([[[([[[(([[[([[([[[([(([[[[(([([[[[((((([[([[[[([[([[(([[[(([([[([((([(([([[(([([[[((((([([([(([[[([[(((([((([([[(([(([[[(([[([[[[((([([([[[[[[([([[(((([([(([([((((((([([[([[[((([[(([[[[((([[[([([[(([[[[[(([([([[[((([(((([[[((([[(([((([[[(([(([(([[[(([([[([[[[[[[(([((([[([[(((([((([[([(([[([(([[[((([[((([([[[[[[[[[[([[[((([[[([[[(([[[[[((([([([(([([([([[[[[([(([([[[(([[[[[([(((([(([[(([[[[([([((((([([([([([(([[[([[([[([[[((((([(([((((((([([(([[([[((([[[(([[[[[[([([[[([([(([([[(([(((((([(([[[[[([[((((([(((([((([(([[([[[[[[[[([[[([((([[[([([[[[(((([([([[((([(([[[(([([[[(((([[[(([([[([([([(([([((([[(([([([([([[(([([[(([[([([((([[[((([[[[([([[([[[(([([((([[[[[((([[[([[([(((((([([([[(((([([(([((([((((((([[([[(([([([[[[(((((([[([((([[[[([(([[[[[([((((((((([(((([(((((((([[[[[([[([((([((([[[([[([[([[[[((([[[[([[([((([[(([([([[[[[[[([(([(([[[([[[[[([[[[(([[[[[(((([[([[[([((([([[(([[(([[([[([([((([([[[[[([(([([([(([[(([([[([((([((((([[(([[(([(([[([[[(([([[([([[([[([([[(([([([[[[[[(([[[[([[(([[[[[(((((((([(([([(([[((((([[[[((((([(((([[(((([(([[[[(([[[([((([([[([((([[[([[[[[([[[(([[[[([[(((((([[((([[([[((((([[([[([(((([[(((([[(([((([[(([[[[[[[(([[([[[([[([((([[([([(([[([(((([[([[(((([[[[[[([([[[([[([([([[([([[(((((([[[[((([(((([((([([[([([[[[(([[[[[[(([((([(([[((((((([[[([[[([([[([[[[[[([[([([[[(((([[(([([[[([[((([([[[(([([(((([[[([([((([([([((([[([([([[([[([[((((([(([[([[[[[[[[[[[[([(([[[[[[[(([[((([[[[([(([[[[[([[(([[((([[(([(([(((([[([[([(([(((([(((((([(([([([([[(((([([([[[([([([[([[[([((((((([([([([([[([[([[[[[[((([[[([[([[([((([[[([([[[([([([((([[[[[[(((((([(((([[[[[([[([[[(((([((([([(([([([[(([([[([[[([([(([([(((([((([[([([[[([[((([[[(([[[((([[([[[[[[[[[([[([([[[[([[[(((([([((([[[[(([[([(([([((([([[[((((([(([(([[([((([[(([((((([([(([([[([((([((((([[[([[(((([(((([([[([(([([[[([(((([([[(([[[[([([[(((([([(([((([[([([([[(((([[(([[[[(([([[[([[([(((([[([[([(([[(((([([[[((([(((((([[(([[[[([[([([([[([(([[[((([(([([([(([([[((([[([(([[[[[[[([((([(((([[[[([[((([[([[[[[([([((([(([[((([((((([[(([([([[([[[(([[((([([(([([[([[[([[[((((((([[[[(([([[([[((([[[[[[(([([[[[(([[[[[[[[(((([[(([[[[((((((((([[[(([((([([[(([[[(([[([[[([([([[([(((([[(([((([[([(((([([(([(([([(([[([(([(((([([((([[[([(([[[[([(([([(([([([([([[(([([([([([[[(([[([(((([((([(([([[(((([[[[[[[[([[([([[[[[(([[((([(([[[[[[([[[[([[(((((((([([(((((([[(([([(((([(([([[(([[([([(((([[[[[([[[([[[([([(([(([[((((([([[[([[((([[[([((([([(([([([[[([[([[(((((([([[(((([(([[((([[((([[((([([[[[([[([(([([((([[([[(((([((([[[(([(([([(([[[([[[(((([[([(([[([[[[(([(([(([[[([[([[[([([[((([[((([[([[[([(((([[[([[(((((([(([[[[[[[[(([([[[[([([[[[[[((((((([(([((([[[([[(([([[(((((([[[[[((([[[([((([([([((([[[([[[[([[([[([([(([([([[[(((([([[[[((([[(([([[(((((([[[([[[([[([(((([[(((([[([(([[[([([[[[[[([[[[([[(([([([[(([(([([([([([([[([[([([[[([[[(([(((([[[(([([[(([([((((((((([([[[[[([(([([((([(([([[[([[[[([[((([[[[[([(([[([[([[([[[[((((((((([([[([[[(((([[((([[[([[[((([[[([([([[([([(([[[([[[([[((((([([(((([[[([((([([[([[[[[[[[[[([[([[((((([[[(([[[[[[((((([((([(([[[((([((([([([([[[((([([([((([((([(([[(([[(([[[(((((((((((((([(([((((([[((((([[[([[((((([([([(([([[(([([((([([(([(([((((([(((([[(([(((([([[[([[([[([([([[((([[([([[(([(([[([[[([((((([[[[[(([(([([(([[([([(([((([(([((([[((([(((([(([([([([([[[[([([([[[([((([([([([((([[((([[([([((([([[[([[([(([[(([[([[((([(([[[([[([(([(([(([[([[(((([[[((([(([([(([([([[([[(((([((([[[[[(([([[(([[[(([[(([([[[(([[[[([[[[[[[([[((((([[([(((([[[[([[[([([(([([(([[((([[[(([([[((([[(((((([(((([([(([([((([[(([[((([((((([[[((((([(([[([((((([([(((((([([[((((([[((([[([([((([(((((([[(((((([[(((([[[[((([([(((([[[(((([(([(([(((([[((([([([[[((([([[([[[((((((([(((((([[(([(([[[([[[[([[([[(([((([[[[[([([([[[[[(((([[[[[[[[([[[[(([([[[([((([[[[([[[[[[[((([(([((([(((([([[([[([[([((((((([[([(((((([[[(((([([[((([[(((((((([[((((([(([[[[[(((([([(([[([(([[[[[((((([((((([((([[([((([([[([(([([((([([([((([([[(([[[([[[(([[(([[[([[[[[[[(((((([[([[[[([[[([[[[((([([[([[([(([((((((((([[[[(([(([[([(((([([[(((([[([(([[([([[([[([[(((([([([[([[[[[[([[(([((((([[([(([[(((([([[([([[((([[(([(([[[((((([(([(([([[([([((([([(([([(([(((([([[[(([([(([[[[([[[[[(([[([[[[[[([(([(([[((([[[[(((([[([([[((([([(([([[([([(((([(([[([([([(([([([((((([(((([([[(([[([[(([[[(([[[(([[[[[(((([(([(([[((([[[([([([[[[[([((([(([(([[(([(([([(((([(([(((([(([((((([[(([[(([[[[[([[([([([[[(([([((([([(([([([([([([[[(([[[[[((((([[[[[[([((([[[([((([[([[[([[([((([([[[([(((([([((([(((([[((([[((((([[[[([[([([([(([(((([[([[([[[[[[[[[[[([(((((([([(([[(((([([[(((((([[[[(([[([[([((([([([(([[(((((([[[[[(([[[[([[(([[[[[([[(([((([(((([[((([(([[([((([[[([([([[[(([(([([[[[[((((([[([[[[([[[[[([[[([(([([[([[([[(((((([[[[[[(((([[((((([[([[([[[((([(([[[((([((([[[((([((((((((([[([([[[[[(((([[([[([[([[((([[([([[[[[[[([[[(([[(([([[[[[[[[[([[([[([[(([[[([([(((([[([[[[[[(([([[([([((([[[[([(([[[(([[[[(([[[([([([[((([[[[([(([([[[([[((([[[(([([([[[[([[((([([([[[[[[((([([([[[[([[[(([[[[[(([([(((([[[(([[((([([[[[[(([(([(([([[[[[[(((([[([((([([[[[((((([((([([(([([([[(([[[([([[([([[[((([[([(([[(((([[[[[((([([[(([[([(((([[([[(([[[[([([([([([(([([[([[[[[([(([([[[[[(((([[(((([[((([(((([(([([([[((([([[[(((([([[((([([[(([[([([((((([(([(([[(([(([([[[[[((([(([[[[((([[[[([([((((((((([[([([((([([(((([[[[[(([[[([[[[[([[((([[[[[([(((([[([([[[([(([([[[[([[(([[[([[[(([[[([([(([([[[(([[[[([[[[[((([[(([(((([[([(((([[[[[([([[[[[(([[(((([(([[(([[[[(([([([[(([([[([[[((([[[([[[[(((([[[((([(((([[((([(((([([[[[([[((([[[([([[[([[[[(([[(([[[[[[[(([([[[([[([[([[[[[[[[([[([([[[[((([[[[([(([([[[[[[[[[([[[([(((([([[[([([(((([([([[[[(((([[([[((([[[[[[((((([[(((((([((([[((([(([[[([[(([[((([(([([([((((([[[(([([[[[(([[(([(([[(([[[[[[((((((([[(((([[([([([[((((([[[([([([(([[[[[([([[[[((([([[(([([[([([([([(([[[([(([([[[((([[[[[[[[[([([(([[((([(([([(([[[(([([[([([[[[(([[([([[([[((([([[((([(([((((((([[[([[[([[(([[(([([([[[([[[([([(((([[(([[[[[([(([([[(([(([[(([((([[([[([(((([(([(([[[(([(((([(([[[[[((([[((([([([[[[[[[([[((([[([[([[(([(([[[([([[[[[(((([[([[(([(([([[[([[[(([([(([[[(((([((([[([((([[[([[([([(([((((([[[[(([([[[(((([(([[([[([([[[[([[([((([((([[[((([[[((((([([[[([[((([[([[[(([[[[((((([[[[[([[([[[[[[[[([[[[[([((([([([(([(((([((((((([([[[[(([(((([[[([((([[[[([[(([([[[[[([[[[[((([[(([((((([([[([(((([[[([([([([[([[(([([[([([[[[[([[([[(([[[(((([[([(((((((([(([([(([([(([[[[[[(([(([[([((([([(((([[[([((([([(([([(([[[[[[([([[([[([[(([(([([([([([(([(((([[([[[[((([(([([([[[([((([[[(([[([[(([[([(([[[((((([([[([([([[[[[([([([([[[[([([[(([([[(([[[[[[(([[[(([[(((([[[[[([([(([[([[[([[([[[[([(([[[[(([((([([((([[(([([([[([[(([([([([([[[[[([(([[[[[((([[(((([(((([([[([[(((([((((((([[(([([[[([[([[(((([([[(([[[([[((((([[(([[[([[([[([((([[((([[[(([[[([([([([[([([[[[[([[[([[[(((([(([([[((((([[[[([[[[[(([(((([[(([[[(([([[([[([[[([([((([(([([[[[[[((([([([(((([[((((([[([[([[([[(([(([[[[[[[[([[[(([([[[(([[([([([[[[([[(([[[([[(((([[[([[[([[[(([([[(((([([[([[[(([([[[((([[[([([([[[[(([([((([[[[[[([[[([[([[([((([[(([[(([(([[[((([([((([((([((([(([([((([([([[(([[([([[([[[[[[[[([(([([([([((([([[(([[((([[[([(([([[[[((([([[[[([[[(([[[[[(([([[([((([((([([[[[(([([([(([[([([(((([[[((([([[(([([(([((([[[([(([((([[([[[[([([[[[[[([([(([[([[(([[(([(([([[[[[[[([(([[[(((([([(([[[([[(((((([(([([[[([[([([[[([[[[[[[[[[[[([([[([[([(([([([[([[[(([(((((([((([([[([([((([[(([(((([([[((([([[[[((([(([[(([([[([(((([(((([(([((([[[[[[([[[[([((([[(([[(((([([(((([[[[[[[(((([((([(([([((((((((([([([([([[[([(((([([([(([[[([[[[([[([([([([[([(([[[[((((((([[([[((([[[((((([[([([[[(([(([[([[[((([((([[([[[[((([[[(((((([(([(([[([((([((((([(((([([(([(((([[[[[(([([[[[[[(([[[[([[(([(([(([([([([((((([(([[[[[[([([[(([((((([([[(((([[[(((((([((((([([[[([([([[[([[(((((((([[(([([[((([[([[([((((([((([[([([[([([[[([(([[([[(([(([[[([(([([[[([[([(((([(([(((((([(([([(([(([([[[[(([(((([[[((([(([[[([[(([([([[([([[([[((([((([(([([(([[[[([([[((([[[([[([[[[(((([[[[(([([((([[([([((([[[([([(((([[[((((([([((([[([([((((([[(([[([((((((((([([[[([(((([[[[((([([[[(([[[([[[((([((([(([((([[([[[([[[(([[[[(([([[[((([(([[[((([([(([[((((((([([[([[[[([(([[([[[([[(([(((([[[([(([[[([([((((([[([([[([((([[[[(([[[(((([[[[([([[[([([[[[((([[[[((((((([[(((([((([[([(([[(([(([[[(((([[([[[[(([([([[([[([[(((((([[(((((((((([(((([[((([[(([[[(((((((([[((((([[([[[[[[([(([(([[([[((((((([(([((((([([[(([([([((([([[[([([[[[[[((([([[(([([[[[([([[((([((((([([([((([[[(((((((((([((([([(([[[[([([([[([[([[(((([([[[([[(([([(((((([[(([[[[([(([[[[[([((([[([[[[[([(((([(([([([[[[[[[[(([(([[[[[(([([(([([((([((([[((([([[[(([([([([([(([[[([((((([[((([([[(([([[([(([(((([[([[((([([[((([([[[(((([(([([([([((([[[(((([[([([([(([(([((([((([(([[[[[[(([[[[[[([[[([[[(([(([(((([[[(([([[((([((([[[[[[(([(([[[[[((([[([([[[[((([[[([([(([((((([([((([(((([[(([[(([[[([([[[[[(([(([((([((([[[([[(([[[((([[(([[[[[([([[(([([([((([(([[([[[([([([(([[[[(((([(([([[[([[([[([(([[([[[(([[(([(([((([[[[(([([(([([(([[[(([[([[([[[[(([(([((((([([[[([[[[[[[[[(((([[((([[[[([[((([([[((([((([[(([(([[(([([(([(((((([[(([([([([([[[[[[[[((((([([([[((([[([((([(([[[[((([[(((([[[(([[[(([([((([[[(([[[[((([[[[[[[[([[[[[(([[([[[([((([(([[[[(([([[([((((([(((([(([([[[[[[[((([[[((((((((([[[([[[[[((([[[[(([(([[[((([([([([((((([((([[[[[([((([([([[([(([[[([(([[[[([(([[([[(((([([[([(([[[[([[[[(([[([(([([[(([(((([(([[([[([[[[[[([[(([(((((([[([(([[[[([(([(([[[[([((((([[((((([[[(((([[[[([([[([(((((([[[[([((((((([[([(([(([[[[[[[[[[([(([[((((((([[((([[[(((([[[[([[([[((([([[(([[[[(([[([[[(((([(([[[(([[[[[[([[[[((([([[((([([[[[[([((((([(([[[[[[[([[(([[[([[[[(([([([((((([[([([[[[((([[[([([(((((([[((([[[[([([(([([(([[[([((((([([([([(([([[(([[([([[([([(([[(([[[(([[([[[([([([(([[[([[[([[([((([[[([[([[[(((((([(([([[[[[[([([[((([([[([[[[[(((([([([([[[([[((([[[[[[(([[([(([([([(([[(([[[((([[[(([[[(((([[[[([[((([[([[(([[([[[[[([[([[[(([[[[[[[[(((([[[((([([[[[[(([[((([[([[[(([[([(((([([(([([(([([[(([[((([[[(([[[[[[([(([[[([([(([([([[[[[([((([[[([[(([[[(([[[[([([(([((((((([[[[[[(([([[[((([[([[[((([([([(([((([((([[([[([[((([[([(([[[([([[[[([(((((((([[[[[([[[[[[[([(((((([(([([([(((([[[([([([[[([((([(((([[[(([[[[[[(([[(([(((([[((((([(([([[([[(([[(([(((([[([([([([(([[([([([([[((([([[((([([(((([[[(([([(((([(([[[([[([[([([[((([[[[[[([((([[[[((([[[[[([[([[[([((([(([[[([(([(((([([[(([([([[[([((([[[([([[(([([(([[[[(([(([[[[[((([(((([[[(((([(([[[[(([[([([[[[(([([[((([[[([([[([(((((((([((([[[(([([([([[([([([(([[[([[((((([([[([[[[(((((((([[([[[([(([([(([[([[(([(([(((([([([([((([((([((([[(([([[([[[[([[[[[((([([[[([([[([([[[([[([((([(([[([((([[[([([(((((([((([[[(([[(((((([([((([[[[([((((([[(([[[[([(([[[[[([[[[(([([((([((([[[[[[(([(([(([[[[[(([([([([(([[[[[[[(([[([([[[((([[([[[[[([[([[([[([((((((([(([[[(([(((((([[(([[([(([[[(((([[((([[([(((([([[([[([(([([[([([(([([([(((((([[([(((((((([[[[(([(([([[(([([((([([([(([((([([[([[[[[[([([[(([((([([((((([[[(([(([[([([[([[[((([([[((([[[([[(([[[(([[[[[(([(([[[[[[[[[([([([[[((((([(([[((([([[((((([[[[([[(([[[([(([((((([[((([([[([(([[[([[((((([[([(((([[([[[([((([((([([([[(([[((((([([(((([[(([[(((((((([[([([(([([(([[(([[(([[[([((((([[[([[[[([(([[[([[[(([(([[[([[[(([(([[([[[[[(([([[[((([[([((((((([[[[[[[(([[([([[((([([[[[[((((((((((([[((([([([[([[[[[([([[([[[[(([((([([([[[[[([([[(([([[[([((((([[[((([(([[([([[[[[[(((((([[[[(([[((([((([[((([[([(([([((([[[[(((((([([[(([[([(((([[[([[[[[[([[[([(([([[[([([[((([([((((([([[[(([([(((([([[[((([([([([(([[((([([[([((([([[([[(([((((((([([([[[([([[[[[((([[[([([([[([[([([[[[[([([[([[[[([([[([(([[([((([[[([([([([[([((([[[([((((([((([[((([[([(([[[[(([[[[(([[((([([([([[[[(((([[([[[((([([([(((((([((([[[(((([([([[[([[([(([[[(([([[([([(((([[[[(([([[(([[[([([[([((([[[[[[(((([[[([[((([[(((([[[[[[((((((((([(([[(((([[((([[[[[(([[(([(((([[[(((([((([([[[[([[[([[[[([[[[([(([[[[([[[[[[(([(([([[([[([(([[[[[[[([(([((((([[([[([([([([([([(([(([(([[([(([[[[([[([([(([([[([[(((((([[([[([[[[[(((([[[[[([[[([[([[(([([([((([(([[[(([(([((([[[(([[([(((((([([([[(((([[((([[[[(((((([([[[[(([(([(([((([[[([[([([[([(([([((([((([(([[(([(([[[(([([([([([([[((([[[[([((([[[(([([[[[(((([((([[(([([(([(([([[[[[((([([([[(([[([[[[[([[[[[[([[[([[([([(([[((([([([([[[[(([([([[[[([[[[((((([[([((([[((([(((((([([[(([[[([(([([((([[(([(([[[[([(([[[[[([([[[(([[(([[[[[([[[([(((([[[([([[[(([[(([(([[(([(((([(([[[(([((([((((([[[[[(([(([([[[([(((([([[([(((([[[(([([(([[(([[([[([([[(([([[[(([([([[((((((([((([[[([([((([([([[[((([[[[(([([(([(([(([[(([[[([(((((([([(([(([[[[([[([[[([([[[[([[[(([([[(((([([((([[(((((([[([[[[[([(([(([[[([([[[[[([([[(([[[(([[[[[(([([[((([((([[(([[[(([[(([([[(([[[(([[((((([[[[([([[([([[[((([[[[[((([([[[[[[([((([([([([([([[([[[(([[((([(((([((([((([((([[(([[([[(([[[[(([([[[(([([(([[[[[[([[([[(([((((([[([[[[[[[([([(([(([[([(([[([[((([([([([[[[([[([[[[([[[([((([[[[([[([[([(([[[[[(([[[[[[[([([(((([(((([(([[[[[(([[[[[[([[(([[[[[([[(((([[[(([[[[[[[[[((([[(([[[[(([([[([((([(([[[(((([(((([[((([(([([[(([((([[(([[([[[(([[([[(([([[([[[(([([([(([[([[([[[[(([([[(([([([(([[([((([([([[[[[((([(([[[([(((([[[[([([[((([[(([([[([([[(([[[[[([[([(([[[(([[(([[([([[([(((((((([((([(([([[[([(([((([([([((([[[(([[[(([((([([[[[[([(([([([[(([[[(([(([[(([([[[([(((([(([[((([[((((((((([(([[[[[([((([[([[[([[[([((([[([[[[[(((((([([([([[([([((((([([([[[[[([([([[([[[[[((((((((([([[[([(([([([([([([([((([[[([[(([[[[[(([[([([[([([([[[(([[[((([((([([[[[[((((([[[[([((([[(([([(((((([([[([[(([(([[(([([([[[([((((([(((([[[[[(([([[([[[[[([((((([([([[(([(([[[(([[[[([([([[(([([[([((([[[[([([[[[([[[[[[[(([[([([[([(((([(([[[([([[[([[[[([([[([[[[([(([([([[[[((((([([[([([[[([(([([[[((([[[[[[(([([(([((((((([((([([[[(([[(([[[([(((([(([((([((([[([(([[([[([[(([[((([(([(((([(([[[((((([(((([[(([([[([([[[[[(([([[[[[[(([(([[[[[(((([((([(([[([(([((([[[[(((([([((([[([[([([([([[(([[[([(([[[([([[[(([[(([[((([(([(([[(((([([[(([[([[[(([(([([([([[([([[([(([(((((((([([(([[(([[[([(([([(([(((([[([[((([[[[((([[(([((((((([[([([[([[[((([[(((([[[((([([[(((([(((((((((([[[(([((([[(([[([((([[([[(([[[[[[[(([(((([(([[[[[(([[[[[[([[[([[([[([([[[[((((([[[(([[[(((([((([([((((((((((((([([[[([[(([(([[[(([[([([([((([([([(([[[[[(([([([[([((([[[[[([[([(([[((([[[([[[[([[([([[(([[[(([(([[((([[([[([[[[([[[[[[[([[([[(([[[[([[([((([[((([[[[[[[(((([([(((((([[([[[[[[(([[[[[[(([(([([[[[[([[((([([(([[([[[([([((([([((([(([(((((([[(([[[([((([[([[((([((([((([[[[[([(([[([[[((([[[([(([((([[(([[((((([[([([[((([(([([[[[[[[[[([([([[[[[([[([([[([((((([[[([((([[(([(([[[(([(([(([((([[([(((([(([[[[[([[([[[[([[[((([[[[[[[([[[(([((([[[(((((([([[([([[(([[[[[([[[(([[[((([[([[([([[[[[((([([(([[[(([[[(([([[(((([[(([[[[([[[([(((([(((([[([(([(([([[[[[(([(([[([(((([((([([[((((([([([[(([[(([[(([[(([[[((([[[([((([[([(([([[[[(([[[(([[[[((([(([((((([[([[[[([(([[(((([[[[[[([[[[((((((((([([[[[(([[([[[[[[[([(([[([([(((([[[([[([[([[[[[[[([((((([([[(((((([((([[([([([(([[([[([[[[[[([[[[([([(([([[(((([[[(([([[[[[((([[(([[[([([[((([([[[(([[(([([[[[[([([[[[[([[([[([([([[[([([[[([[[[[[((([[[[([(([((([([[[[([[(((((([([([[[[(([[[(([[([[[[([[[[[((((((([[(([(([((((([[(([([[(((([([((([([([([([[((([([[([(([[[((((([[([(([[([((([([[[[[[[[[([(([[([([[[[(([[[([[([([(((((([([[([([[[([([(((([[([([((([[(([[([[[[([[([[(([[[(([([(((([[(([([([[((([([[[((([[[[(([[((([(([[[[(([[[[([[[[[[([([[[[([[[[[((((([[[[(([[[[([[(([([[([[[[[(([(((([[(([([([[[[((([[[[([[(([(([([([(([[(([[(([[(([(([((([[([(([[[(((([[([[[[[([([([[([([[[[((([(((([[([([(((([([[[[[[([([((([(((([([([[[([[[[[[[[([[([([[[[[((([[([(([[([[([(([(((((([(([([[([[([([[[((([[[[[[(([([([(([(([((([([[[[([(((([((([([[[[[[[[[[[[[(([[([(([[[((([[[(([(([[[([[[[[((([((((((([[([[[((([[(((([([[[((([(([[[(([(([[[(([[[([(([([([[[[(((((([[[([([(([[[[((([[([[[(((((([[[((([(((([(([[(([([[[[[[[[([(([[(((([[(((((([[([([(((([([(([(((((([[[[[[([[(([[([((([([[[[[[(((([([[[[(([[[(([(([(((((([([[[((([(((([[[(([[([[[[(([((([[[[([[[[[([(([(([([[(([(([([([(([[[[([([[(([[(((([([[[[([([([[[([([[([([(([([[([(((([([(((((([[((((([[[[[[[([[(([(((([[(([[[((((([[[([[((((([[[([([([((((((([([[([[[[[([([[[[[(([((([[[([[[([[[([([(([[([((([(([([([[[[([[([((([(([[([((([[([[[((([[(([[[[[((([([(([[([[[[[([[(((([[[([[([(((([[([([(([[[((([[(([(((([[(([[[[[[((([([[(([[[([[([((([([(([[(((((([(([[(([(((((([([([([[[([(([((([[([([[((([[([(([[[[[(([((([[(((([([[[(([[[[([([[[(((([(([(((([([(([([[[((((([[([([((([[[(([[([(([[(((([[([[([[([(([([([[[[[[([[((([(([(((((((([[[[[([[(([([[[(([([([[([([[([(([(([((([(([([([[[[([[(([([[[(([[([[((((([([[[([[(((([(([[([[[(((([(([[(([[([[[([([[[([[[[[[[([[[(([((([([([(([([([([(([[[([[[[([((((([([[([([(([([([([[[(([(((([[[([([[([[([(((((([[([([([[[[[([[[([[([[(([((([[((([(([[[(([([[(([(((([[(([[[[[(([([[[[([(([[(([[([[[[[[[[[[([((([[([(([[(((([[([([([[(([(([([[[[([[[[([[(([([[[([[([[[[(([[[(((([(((((([[[[[([((((((((([[[[((([(([[(([[([((([(([[(((([((((([[([[([([(([(((([(([[([([((([[[(([[[((([[[(([((((([((([[[([[[[([(([(([[([([[(([(((([[[([([[(([[([(([[((((((([((([((((([[[[[[([((([(([[[([([[((([[([[([([[[([[([([(([(([[[[([[([([[([[([[([([([(([[(([([[([((([([[[([(([([[[[[[(([([[[((([([[(((([(([[[([((([[([[[[[((([([[[([([[[([[(([([[((([(([(([(([([[([(((([[[[[[([[[[[[(([[[((([[[([(((([([[([[([[[([[([[([[[[[[((((([([[(([[[[[[[([[[((([[([([[[([[([([([[(([[([([(([[(((((((([[[[[[[[([((([([[((([(([[([(([[[([[[[([([[[(([[(([[(((([[[([([([[[((((([([[[([([[[[[[([[[[(([[[([(([(([[(([(([[[((([(([([[(([([[([(([(([[[[((([[(([[[([[(([[([(([[([(([([[[(([[[[(([([[((([[([[[(([[([[(([(((([[[[(([[([(([((([[((([([[[[[([[([[([[[[[[[(((([((([([[([[[([(([([(([[[[[([[[[[([[(([[[(((([[[[([([[(([[((([[[[[[[([[[([([[[[[[[[[[([(([([[[([[((([(((([((([[([([(([[[([[((([[[([[((([[([[[(((([(([[(((([((([[([[([(([[[([(([[(([(((([([(((([((([[[(([(((([[[([([([([[(([(([([((((([[[[[((([([[(((([((([((([[(([[[([([(([([([[([(((([[[[[[(([[[[[((([([(([[[[[([(((([((([[([([([[([((([(((([[[([[([[((([[(([([([([[[[(((([[([[((([[[[[([[(((([(([[([[[((([([(([((([[[[(([((([[[[[([[((([(([(([[[[[([([[[([(([[[((([(([[[(((((([((((([[[((((([([(([[([[(([[[([[[[[((((([(((([(([[[(([([[[([([[([[[([[((([([(([(([([((([(((([([[[[((((([[[[([[([([[([[((([[(([[[[(((([([([((([[[((([((((([[(([((((([[([(([(([[[(([([[(([[([(([[[[([[([([([[[[([[(([(([([(((([([((([[[([([[([[[([[([(([[([[[[[([([([(([[([([[[[((((([(([(([[[[([(([[[[([[[([[[[[[(([([([([([[([[[([[(((([([[[(([[([((((((((([[[[(([([([[(([([(([[((((([[([((([[(([[[([[((([[[((([([(((([(([[[[[([((([(([([([[[[[[[((([([([[((([((([[[(([([(([((([([[[(([([(((([(([[(([(([[([[[(((((([[[[[([((((((([(([((([[([(([[([(((((([[[(([[([([[(([[[[[[([[[([[((([([[([[(([([([([[[([([([([[[((([(([[([[(([[([(([[[[([([[(([([[[([([([(([([[[[([((([((([((([[[[([[[(((([[([[[[[[(([([[[((([[(([[[[[[[[(([([[[([((([([[(([[[[((([[[[(((([([[([[[[(([(((([[[([[[[[([[[[([[([([([([[(([([[([([(([[([([[[([[[[[[[[[[[[(([[[[[[[(((([([(([[[([(([([[[([[(([([(((((((([([[[[[(([([[[[(([([[[[((((((([[([([([[[(([[[(([(([([(([(((([([[([([([[[((([[([([([[[([[[(([(([[[[[([(([[[[[(((([([[([[([[[[[([([[((([[[[([([([((((((([([(([(([[[([(((([(((([[(([(((([[[[[([[([[[[((((([([(((([[(([[[[[[[[[[([(([[([[[[(((([[[([[[[[[[[([((([[(((([[[[([[([[([[[[[[([[[([[[([(([[(([[([[([(([((([(((([[(([[[([((([[([[[(([([[[[[[[([([(([([(((([[[([((((([(([[((((([[(([(([((([[(([([((([[(([[[[([([[[[[[[[(((((((([[[[[(([[[(((((([[[[((([[[[[(([(([((([([[([[([([[([[[[([([([[((([[[([[[[[[(((([((((((([[(([(((([(([((([([[([(([([[[[([[[(([([[([[[[[(([(((([([(([[(([[((([((([[[[(([[(([([[((([([([(((([([([(([([(((([(((([[[[((((((([[[[([(([[((([((((([(([[([((([((([[[(([(([[(([([[([([[[[([[([(([[[((([([[[([([[[((([(([((((([(((([[[([(((((([([[[[[[[[[([([((([[[(((((([([[(((([[([[([[(([[(([(([(((([(([(([[[(([((([[(((([[([[((([((([([(((([[([[[[([[((([([(((([[[[((([[[(([(([([[[[[([[([[([[([[([([([(([[([(([[([[([[[[((([([([[[[([([[(([([[(((([([((([[[[[[[[([[[((([[((([([(([([[[([((((([([(([[[([(([([([[([[[([[(([[[[([([((([[[([([[((([[[([[[[([([([(([[[[[((([((([([[([(([((([[[([[(([((([[((((([([([((([[[((([[([[[[((((([[[[(((([[[[[([([(([((([([(([(((((([[([[[((([([(([([([([([([[(([[[((([([([[(([((([[([(([((([[([[(((([([[[[[(([(([(((((([[[([(([[([([((([[((([[[(([[(([([(([(([([[[[(([(([(([[[([([(([(((([[[([[([[([(([[[(((([[([[[[[([[([([[(([((([[([((([((((([[([[([(((([[((((((([((([(((([([[[[[[(((([([([((([[[(((([[[([([(([((((([(([([[[(([[([[[[[[([[([(([(([(([(([([[([(([[[(((([[(([[(([[[(([[(([[[[[[([[(([([([[([[[[[[[([(([(([(([[[([((((((([[[([((((((((([(([[((([[([(((([[([[[[([([[[[([((((((([(([[([[(([[(([[([[[((([([(([([((([[[([[[[[[[[[[((([([[([([([[((([((((([[[(((([[[[([((([(([[((([[[(([[((([([([(([[(([[(([[[[([([([(([[([[[[[((([[([[((([[((([[[[(((((([[([([[[([[[(((([[((((([(([(([[[[[[[[(([([[(((([[((([([[[([((((([([([[(([([([((([([[[(([[[([[([[[([[[[[([[(([([((([[[([[(([[[[([(([(([[((((([([((([(([(([([(((((([[([(([[[[[(([([([([(([[[[[((([[[((([([[([[[(((((([[(([[([[[((([[[[[(([([([[[(([[[([([([[[[[[[[[[([[[[([[[[([[[[[((([([[[[([([([[[([[(((((((([[[((([[[([((((((((([[(([([[[[((([[((((([[(((((([[[[(([([[[[(([([([[[([[([([((((([[((([([[(([[[[([[(((([([(((([([[(([(([(([([[(([[(([([([[(([[[[[[[[([([[([([[[(([[(((([[[(([((([(((((([((((([[(([[[([(([[([[([(((([[[((([([([([[[([[[(([([(([[[(([[[((([[([([([(([[[([([([([[([[[(([([([(([[[[[(([[[([(([(((([[(((([[[((([[[[[([([(([(((([([[[[[((((([[([(((([((([[[((((([[((([((([[(([[([((((([[((([([([[[(([(([[[[[[[[[[[([([([((([((([[[(([[[(((((([([([([([(([([[([([(([[[(([([[([[[[([([[[[[[[(([[((((((((([[[((([([[([[([[([[[[([((((((((([((((([([([([([([[((([([[((((([[(((((([([([([(([[[([[([[[[[([[[([([[[([(([([(([((([(([[([[([[((((((([((([((((([[[[([[[(([((((((([([[[((([[[[[((([[(([([[([[[((([[(([[((([[(([[[[(([([[([[([([(((([(([[[([([[[([[([[[([(([([[([[(([[(([[[[[((([[(([[[[[(([([((([[(([[[[(((([([((([([([[[[[[([[(([((([(((([[([([(([[([((([([([[((((((([((((([([[[([[([[[[[[[([([((([((((([([([[[[(([((((((([[([([[[([[([[([([[[(([[([((([(([([[[[(([((([(([([[(([[((([[([(([[[([(([((((([[[[(([[[((((([[((([[[[([((([((([([[[([(([[([[((((((([[[(([[([[[[[[((([[([([(((([[[[([[(((((([[([([[[([[[(((([(((([[([([[[(([[([[((([[[(([([([[[[(((([([(([[[(([[[[[([[(((((([[([([(([((([[[(([(((([([[[(((([([([[[[[([([(((([(([[[[((([([[([[[([[(([[(([[([((([[[[(((([([((([([([[([[[[([([[(((([([[[((((([[([[([([(([[(([[((([((([[[([((((([[[[([(([[[[((([[([(((((([(([[(([([((([[([(((((([([((([[((([[[([(([[[[(([[[((([[[((([[([((((([([[[[(([[[([((([[[([(([(([[[([(([[([[[([([([(([((((([[[([[[[[(([(((([[[([[[[((([[[([([[[[[[[([([[([[[[(((([([((((([[([[([([([[[[([(([[[[[[([[[[([((([([([[[[[[(((([[([([([((([[(([(([(([[[([[([(([([((([[([[[(([[((([([[([([(([([([([[(([([([(([((([[([[([([[(([[([([[([([([[([([[[[[[((([([(([[[([[[(([([[[([(((([[(([(([[[[[((([[((([[[([(([([[[[[([[(([([(([([([([[([[[([([[(([[(([[((([(((([([[([(([(([[[([([[[[(((((([[([([((((([[(([(((((([(((([((([[[((([([([(([([[[[([(((([(([((((([[[[[([([([((((((((((((([(([[[([[(([([[[[[([[[[[([[(([(([[[[[[([([[(([[((([[([[(([[([(([([[(([[[((([([([([(([([([[([([[[[([(([((([(([((([((([[([[((((((([(([[[[[[([([[([[([[(([((((((((([[[((((([([[[([[((([[(((([[[([([([[[[[[([[[([([((((([[[[([[[[([[[(([[([(([([[[[(((((((([([[((([[([[[[[[[[(([(([[([([(([((([[([[((([([((([[[([[([[[[(([[([([[([([[((((((((([((([([[[(([([[[((([([(((([[[(([[[([[(([([([(([[[[([[[([(([(([[[((([([[(([[([([([([[[[([([[[[((([([[(([[(([[(([(([(([([(([[([[(([([([[((([(([[[([([[([[[[(((([[[[([[((((([((((([([(((((([[(([[[[[(((((([[(([([[[[(([[(([(([[[[[[([(((([([([((([([[[([([[((([([([(([[[([([[([[([(([([[[[[[[(([[[([([((([[([[(((((((([[((([(([([([[[((([(([[(((([[[([[[[[[([([(([(([([[[[([([[[([[(((([((([[[[[[[[[((([[[([([[[([([([([[([(([[[[(([[[((((([(([(([[[(([[[([(((([(([(((([([([[[[[[(([(([[[[((([[[([((([[([[(([((([[[[[(([[([([(((([[(([(([((([((([[(((([[((([[[[[([[((([[[(([((([[(([[[[[[([[[(((([([[[(((((((((([([[([(([[((([[([[(([[(((([([[(([[[(((([[([((([[[[[[[[[[(([([([(([[(([[[([[[(((((((([[[[[[[([(([[([[[[[[([((([([([((([(([[[[[[[[[((([[[[(([[([[([[[(([[[((((([[((([([(([[[[((((((([[(((([(([[[[(([((([[([[([[[[((((([(([[[[[[([[[([([[(([([(([([(([((([([[(([([[([[(([([[(([((([(((([[([[[[(([(((([[(([(([(([(([([[((([((([((([([([[([[([[[[[[[((([[[([([([[[[(([[([((([[([[[[[[[((([([(([[[[[(([[[[[([[[[([([(((((([([[[([[[(((([[[([[(((([[([(([([[([([[[[[[(([[([([(((((((([([([([[(([([(([([([(([((([[[(((((((([(([[(([((((((([([([[([[[(([[(((([(([(((([([([[([([([[([(([([[[(((([((([[[[([(([[[[((([[[[([[([([([[[((((([[[[([[((([((([((([[[[(((([((((([([[(([[[[[[([[[[((([([[[(([[(((((((([([([[(((((([((((((((((([[[([[[([([[([([[([[((([((([([([[(([[([([[[(([[[(((([([([((([[[[[[[(([[[[[[[([[[([[(([(([[[[[(([([(([[((([(([([(([[[[(([((([([[[[[[([([(([((((([([[(([(([([[[(((((((([[[([[[[(([([((((([(([[[(([(([[([(([[[(([([[(([[(([(([[(([(([((([(([[[[(([([([[((([([([([[([([(([([[([[[[[(([[([([([[[[[[[([([([((((([(([[[[[[[[[([[[[([[[([[[[[([[((([((((([[[[(([(([[[[([[([([([(([([[([[(([(([([([(([[[[([(((([[([([(([([[([(((([(([(([[[(([([((((([([[([((([(([(((([(((([(([[[[([[([(([(([([[([[([(([([([([[(([[[([([[[[[([[[[[((((([[[([[(([((([([([(([(((([[([(((([[[[([(([(([[[(([[[[([[(([[(([(([(([([[([(([([(([([([([([([[[([[(((([([([[(([[[([(((([[([[(([(([[([[(([(([(([[[[(((((([([[([[[((([[[[(((([[[[[[([([([[[[([[[(((([([([[(([[([[[(([((([([[([((((((([[[(([([[[[[([([[[(([((((((([[([[[(([[([([[(([[[(([(([[(((((([[([([[(([[([[((([(([(([([([([((((((([[[(([([(([[[[([([((([(([([[((((((([([([[(([((([(([(((([[[([([[[[[(((((([(([[[([[[[([((([(([[((((((((((([[([[[([[(([[(([([[[[([((([([([[[((([[[[([([[[([[([(([[([(([(((([[([([([[[([[[[((([[[[[([[[((([([[[(((((([[([(([[(([([[([[[[[[([((([[[([([([[(((([[[([([[(([(([(((([([((([[[[[[((([([[(([[[(([((((((((([([[([[[[([([[[[([([((([[[[(([[([[(((([[[([(((([[([(((([([[[(([[[([(([[[[[([([(([[[([[(((((([[((([((([([([([((([[[[(((([([[([[[[[([((([[[(([((([[[[[([([([[[[[((([[([[([([((([(((([([([((([([[(([([[[[([[[[[(([((((([((((([((([[([[[((((((([((((([([([[([(([([[[[[((((((([([(([(([((([(([[[([(([([([([[[([([([([(([[(([([((([([([[[[[[(([[[[((([([[[[([(([(([[([[[((([([(([([[([(([([[([[[(([([[[((([[[(([[[[(([[[((([([[[(([((([([([([[[([((([[([([[([[[(((([(([[[(([([(([[(([[[(([[(([(((([[[([([[([[((((([([([[[(([[[([(((((([([[((((([[([(([[(([[[[[[[([([[[(([(([[((((([[[(([[(([[[[((([[([([([[[(([((([[([[(([[[[([[((([(((([([[([([(([[[[[((([([((([[[[([[(((([[[[[([[[[[(((([([((((((([(([(([([[([[([[(([[([[([(([([[(((([[([([[([([[((([([(((([(([([[([([[[[[[[[((([([([[[([[(([[[[(((([[([[[[[([[([[((([[([[[[[([([[[((([[[((([[[[[[[([([[(([[[([(([[[[[[[([[([[[[[[[((([[[[([((([[[(((((((((([[[[[[[(([(((([(([(((([(([(([([[([[(([([((([[([[[[([[((([[((([([([(((([[(([(([(([([(([(([[([[([[(([[(([((([([((([[[(([([([([[([(([((([((([([((([((((([[[(((((([([[[[(([[[(((([[[((([(([([([[([[[((([(([[[([([([([((([[([([([(((([[[[[[[[([([(([(((([(([((([[(((([([[([(([([[[([((([([[[([([[[([[([(((([(([[(((([[[[[(([(([([(((([[[([[[([([[(((((([((([([([[[[((((((([([([[((((((((([((([([([(([[[(([(([[([[((([[([[[[[[((([[[([([(([[[[([[([(([[([[(([[[((([([(((((((([[(([([(([([(((([([((([([(([[[[((([[[[([[[[[([[([([[(([(((([[((([(([[[((((([[[[[[([[([(([[[[((([(([[[[([[[[(([[[(([[[((([[[[[([[(([(([[[(([(([(([[(([[(([[([[[[([([[[([[(([[[[((([[[[(((([([([[(([((((([[[[[(([[([(([[[[[[(([([[[[[[((([(([[[((([[[([(([[[[(([([[[([[((([[[([([([[((((((([((((([(([(([[[([[([((([((([[[([[([[[([([[([(([([[[[[([[[[[([([[(((([([([[([([[[([([(([((([(([(([(([[(((([[((([((([[([[([((([[([[([([(((([[([(([(([[[[[[([[([(((([[(([([[[[[[[([[((([[[([[((([[(([([[[[[([([[([[[([([[(([(([([([[([([([[((([(([[[[[[([[(((([[((([([[[([[[[([[([[(([[[(([([([(([(((((([[[[(([[([([[[(((([[[[([[[(([([[[[([[([[(([[[[((([[[(([([((((([([(([(([(((([(([[[(([[[[[[([(([[[(([[[[([[[[[([[[[((([[[(([[[(([((((([([[[(((([([([[[(([[[[[([[[[([[(([([((([[[([(([[(([[((([[[[[[[[(([[(([([(([[(((([[[(([[([[(([[[([([(([[[[([(([(([([([([([([[[([([(((([[[[(([[((((([[[[(([([[([([[([([((([[[([((([[((([[(([[([[[[((((([[([([[((([[([([[[[[(([(([[[[[([[[((([((([[([([([([(([(([((([([[([([[[[[([[([[[([([[[(([([([[(((((((([(([(([[[(([([((([([(([(((([[([(([[([([([(([[((([[[([[([([[[(([[[([[[([(([[[[[([([([[(((([([[[[([([([[((([[(([([(([((((([[[((([[(([[[[[(([[([[(([(([[[[([[((([(((([[((([([[((([[([([((([[[[(([[([(([(([[(([(([(([[([[([([[([([((([(([[[[[[((([([[[[([[(([([([(([[[([[[([[([([[((([(([([((([[[((([([[([([((([(([[[[([[[([[(((([[([(([[[[[((([([[[([([[[((((([(([([(([[[[[([[[[([(([[[[([((((((((([[(([[([[[(((([([[[[(([([[[(([[[[((((([((([((([[([([[[(([[([(((([[[([[(([(([([(([[[([([([(((([(([(([[[[((([[([[([((([[[[[(([([[([([([((([(((([([([([([([[[[([(([[[([((([[(((([[[((([([[(([([([[(([[(([((((((((((([([(([[[[([([[[[[[([[[[((([[[[([(((([(([(([[([[(([[([(([[(([[[(((((([([(([([((([([[[([(([[([[[([([[[[[([[([[[(([[((([[[([[[((([[(((([[(([(([([([(((([(([[([[([[(([([[[[[((([[([[([([(([(((((((([[[[([(((([[((([[(((([[[(([[([(([[(([((([(((([[[([[([(([([[[[(((([(((([[[[((([[([((([([([(([[((([[[[[[(([([(([[[[([((([(((([[([[[[((((([([(((([([[[[[((([[([([(([([([(((([[([(([[((([((([((([([((((([([((([[[[([[(((([[([((([((((([[[[[(([([([([(([(([(([(((((([[[((([[([[[[([([([[([((((([([[(([(([[[([[([[(([((((([(((([((((((([(([([[(([[([([[([([(([([([(([([[[([(([[((([[([[[(([[[[[(([[[[([[[([[((((([[[((([[[([([[[(([([([[([[([[[[[(((([([(((([([[((([([(((([([[([[[[((([([(([([[([[[([[[(([([([[[(([[([[(([[[[[(([([[[[([(([([([[((([((((([(((([[[([([[[(([(((([(([([([[([(([[[((([[([[(((((([([([([[[[[[[[(((([[[([(([([[[((([[[([[([(([[[[[[(([[(([[[[[([((([[[((([[[[[([[[[(([([([[((([((((([([[[((([[[[([[((((([((([[((([[(([[[([((([[([(((((((((((([([[(((([[((([([[(([[[([(([[(([([[[[([[([(((((([[[[([[([[[[([[[[((([[(([((([[[([([([((([[[([([[[(([([[[[([([([[([[[(([[[[(([((((([[[([[(([(([(((([(([([([(([([(([((([[[(([[[[[((([(((([[((([[([[((([[[([(((([([[(([([([[([[([(([((([[[[[[[[[[[([[[[((([[((((([([[[([[([[([([([[[(([([[[([[([[([[[(([((([[[[([[[([([(([(((((([((((([[[(([[(((((([[([[[[(([(([[[[([[[((((([[[[(([[([[(((([[[[[([[((([[(([[[(([([[[(([[[[(([[((([[((([([([[[[((([[([[(([((((([[[[(((([[[[([[([[([[([([((((([[[((([([([[[((([([[(((([[(([[[(([([[[[([([[(([([([(([([(([([[[[[[((([(([(([[[[(([[[[[[((([([[(((((((([[([([([([(([[[[[((((([(([[[[(([(([((([[[[([((([(([[[([([((([([([([([(([[(((([[(([([[((([([([(([[([[(([([([[[[[[([(([[(((([([[[([[([((([[[((((([[[(([([[(([[[[[[[[[[([([([[([[[((([([(([((([[((([[((((([[[[[[[(([[[(([[[[(((([[[(([[[(([([[(([[[([[([[[(([([(([([[([[((([[[(([[((([((([[((([[([[[[((([([[(((([[([(((([([[((([[([[[([[[[[((([[[(([[[[([[[[(([([([(([(([((([([([[[((([([([[((([([(([[((([(([((([(((([[(([[([(([[[[[[[(([([[((([[((([([[([([((([(([[((([[([[[[([(([[[[((((([[[[([([[[([[[[((((([([[[[[([(((((([([(((([(([[((([(([[(([[(([[((([((([([([(((([[((([[([[([(([[[[[[[(([[((([([[[[([[[([(([([(([([(([[[((([(([[((((((([[[(([[(([[[([[[(([[[[[(([([[[[((([[[[[[[[([[(([[[((([(([[[[[[[[[[(([([(([[[(((([((((([[[(((([[([[([[([[(([((([(([(([([([([((([[[((([[([[([([(([(([([(([[([[([(([[[[(([([[[([[[[([[([[[[[([((([([[[([((((([(([([[[(([(((((([([[[((((((([[([[[[[[[((([[(([[([(((([[(((([([[(([[((([[[[((([(([[([[[[(([[[[(([((((([[[([([(([[[([(([([(([[[([[[[([[[([[[[(([[[[([[[[[[(([([[(((([[([([([[[[[[(([[(([[([(([([[[[([[(([[[([[((([[([[[[([((((((((([([[((([[(([[([[[[[[(([([[([[[([[[[[([[[[[[(([([(([(([[[(((([((([[((([([[([[[[((([(((([[((([(([([((([(([[[(([[[(([((([[([((([([([([[(((([([[([[[[[([([[[[[(([[(([[(([[([[([[[[([([[((([[(([((([[[([[[[[[([[(([(([[([[[((((([[((([((([(([[[([[[[[([[((((((([([[((((((([((([[([(((([[[([[(((([[[[[([(([[[([[[([([(([[(((([(((([[[([([((([[([[([[([[(([[[[[[([([[[]]])])]]]]]]))]])]])]])]])))])])]]]))))]))))]]))])])]]])]]]))])]]]]]))))]])]]]))))])]])))])))))))]])])))))))]])]]]]])]]]))])))])))]])))))]]])]]))]))]])]]]]]])]]])))]))]])))]])])]]]])]])]]))]]))]]))]]]]])])]]]]])]])]))))]])])])])))])]])))]))]]]))]]]))])))])]))])))]]))))])))]]]])]])])))]])))]))))]]]))]))])]))]]]]]])]]]]])]]])]])]))]]]]]])]]))]])))]])])))))))))])]]]])]])))]])]]]))]])]]]])]))])]]))]]))]]]]]])])])]]))))]])]))]]]]]])]]]]))]]]])]]])]]]])]]]))])]))])]]]))])])]]])))))]))]]]]))]]]])]]))])))]]]])))]]))]])]))))]]))))])]]))]])))]]]]]]])]])))))))]]])]))))))]))]]])]))])))))])]]])])))])]]]]])]])]]]])]]])]))]]]]))])]])]]))])]))]))])])]])]])))]]])))])])])]))]))])))]))]])]])]])]]))))]]])))))]))))]]]))])]))]]]]]]]]]]))])))]]]))]])]]]]]]]])))]]]])]))]]]]]))]]])]]]))]]))]]])))))))]]))])))]]]))])]))])]))])]]])]]]])])))]]))]]]]]]]))])]])]])))]]))))])])])))])))]]))]]))]]))])))]]))]))))])]))))))])]]]]])])))))]]]])]]])])]]]])))))]]]]))])]]]])]])))]]))])))])])]])])))]])))]])]))]]]]]]]))])]]))]]))))])))]))])))]]))])])))]])])])))]]])])])))]))]))])])]))]]]])]]]]))]]])))]]]]])]]])]])))]])]))))])]]))))]])])))]]]])]])))]])))])))]]))]]])))]])]])]))])]))]]])]])]]]))]])]))]]]))]]]))))]]]]))]]]))]]]]]]])))))]])))]])))]))])])))]]])]])])])]]]]]]]]]]))]])]))]]])))))]]])))])]])]]])]))))]]))])]]]]]])])]))]])]]))])])])))]])]))]]))))]]))])])])])])))])])]]]))])))])]]]])))]))]))]]]]))])))))]]]]]))])])])])]]))))))))]])])))]]]]]]))]]]]))]))])))]]]]]])]))])]))])])]))]])])]]]])]))]]]))]]))))]])])))]]])])])))]]])))))])])]])]])]])]]]]))))]]]])))))]))]])]])))]]]])])])))]])))]]))]]]]))]]])]))]]]))]])))]])]]]]]))))]])]]))]]]])))))]]])]]]]))]))]]]])]]))))))]]))]]])))))]))))))]))])])]]])]]]])))]))]]])]])]])]]])]))]]])])])]])]])]]])])))))]])))]]]])]]]]]]]]]]])))]))])]])]])])]))]])]))))])]]])))]])]])))]]))))])))]]]]]))]]])))]))])]))])])]))]))))]))]))]])]]])))))]))]]]]))]]])]])])])]]]])]))]]])])]]])))])])])]]])))]))]])))]]]])]]]])]])]]]]))))))])]])]]]])]))]]))])]]]))]])])))]]))))]])]))))))))))))])]])))])]]]))]])))]])))])))))]])]]]])))]]])])))))])))]])])]))]]]])]]]]])))]]])))])]]]]]))]]))]]]]]]))])]])]]])))]]])]))])]]]))))]]]]]]]])])])]))))))]])]])))]]]))])]])])]))]))))]))]]])])]]]))))])))))])))]])])]))])]]]])]))]]]]]))]])]]))]]])])]))]]])]]])]])]))])])))]]]])]])]))))])])))]])]))))])]))))]]]]])]])]])])]))]]])])]]])))]]])))))]])]]])]]]]))]]]]]))]]])]])))]]))])]]])]))])])]))])])]])])]]))]])]))])))))))]))))])))))]))]])]])]]]))]))]])])))))])]])])])]]]])]])))]]]))))))]))]))]))])])])]))]]]]])))))])))])]]))))]])]]]])))])])))))])])))])))])))]]))])]]))))])])]))])])]])))]]]]])]))))])])))))]]]])]]))))])))])]]]]))])]))]]]]]])))]]))])])])))])]])))]]]]))))]))))]]]])]))])]])]]]))))])))]))]]))])]]))]]]))))]])))]]))))])]]]]))))))))]))])])]])]])))]]]]])]))]])]])]]))]))))])])]))]))]]))))]])))]]])]]])))]]))]]])]])]]]]])])]]])]]))])]]])])))])]))])]))))))]]]))]]))])]]))]])]]))]))]))))])]]]])))]]]])]]]]]])])]]]]))])])))))))))))]))]]))]])])]))]])])))]]]))))]])))])]]]))])]]]])])])])])]))))])))])])])]])]))]]]]])))])]])]])))]]]]))]))]))))])])])]]]))])]))]))]])]]]))))])]]))]]])])]])))])))])))))]]]]))]]])]))]]]])]))))]]])]]))]])))))))))])]]]]))])]]]])]]]]]))])]))])))))]]])])]]])])))]]]]]))])]]))))]])]]])]]]]))])))])])]])])))]]])))])]))])))]])])]])]]])]]]))])])]))]])]]]])])))]]]]]]))])))])])]])])]])]]))]))]))]]))]))])]]))]]]])))])])]])))]])])))]]))))])))]])]]]]))]))]])]]))]]]]]))]])))]]])))))]))])]))]])))]])])])]]]])]))))]])])])]]]]]))])]]])]]]))]]])])]])]]])))]]))])])])]]))])]]))))]))])])))])]))]]]))]))]))))))))]])])]))]]])])]]])]])]]]]])])]])])))]))]))])])])])]])))])))]]])]]]]]))]))]]]]])])]])))]])])]])))))]]]])]]))]])))]])))])]]])))])])]])])]])]))]]]])))))]]))]]]]))))])])]]])])])])])]))]))])]]]]))])])]]]))]])]]))]]]))))]]))])]))]]))]]]]]]]])))]]))]]))])]]])))])]))]])]]]])]]]]]))]]])])]))))]]])])))))]))]]]))]]])))]]]])]]]]])]]]]))]]]))])]]]]]]))]]]))]))))]))]))])])))))])]))]]])))]]]]))]])]])]]]])]))]]])]]]]))))]]])])]]))]]]]))))))]))])])]))]]]))]])]])]]]])]]])])))]]))))]])]]]]]]))])))]])])])]])])]))]))]])])]]])]])])]]]]])]))]])))]])]]])))]])]]]]]]])]))]]))))])]])]]]]]]))]))])]]))))])])]])]])))])]])]])))])))]]))))]]))]))]))])))]))])])]]])])]])])]))))]])])]]]]])]]]]])]))])]])])]]])]])]]])))])))])]])]]]))]))])))))])))))))]])])])]]])))]])]]])]))]]]]))])]]])))]]]))])))]]]]]])]))]]]]]]))])]]))]]]]])))))]))]])])]))))]]]])))]]]]))]])]]])])]]]])]]))]]))]]))]))]))]]]))]))]])]]]]])))]]]))]]]))]]]])]]]]))])))]]]]))])]])]]]]]])))))]]]))])))]]))))]))]])])]])]]]]])]]]])))]]]]))])])))])]))))])]))])]))]]))))))))])])))]]]))]])]]))])]])]]]]))])])]]])))]]]]]])]])))]])]]))]))]]]))])])])))])))))))))]])])])))))))]]]])])])))]))))))]])])]]])]]]))))])]))]))]]]]]))))]]))]))))])]])]]])])]]])])))])]]])]))])]])]))))]])))]))]))))]))])])]]]]]]]]))))])])])]])))])])])])]]]))])))]]])]])])]))])))]]]))))]]]))]]]])]))))))]]])))))])))])])))])))]))])]])])])]))]]])))])])))]))]]))]])]])]]))]))])]))]))]))]]))))])])])))]])))]])]]]])]])))])]))]])]])]))]))]))))]))]))))]))]]]]]]]))))))))))]]])))])]]]])))]]]]]]])]])]]]]]]]))])]]]))]])])]]]]]]])))]]])))]]])])]]]]])]])))]])]])]]]]])]]))))]]]]))]])]]])])])))]]]]]]]])])]])]))]))))])])))]])])]])])]]))))]])]))])]])]]))]])]])]])]))]))])))))))])]))))]]]]])]]]]]))))]])]]]])))])])))]]]]]))])])]])]))))])))]])]]]]))]])]])))]))]]])])])]])))]]]]))]]))]]])))))]]))]))]]])])]]]]]]]))]]))])]])))))]])]))))))])]]]))]]])])])))))]])]])])]]]))))]))]]))]]]))]]))])]))]]]))]))))]]])]])])]])))])]]])])])])))]))]]])])))]]]))]]]]))]]])))]]])]))]]])]])]))])]])]))])])))]]])]]))]))])]]]])])))]]]]))]]]]]])])])))])]))]]))])])])])]]])])])]))])]]]))])))]))]))])])))))))]]]]])]))])]])])])))))])))))))]]])]])))])))))])))))]))]]]]])]]]])]))]])])))])])]))))])))])])]])]])))]]]]])])])]]]]])))]))]]])))])]]]]])]])]))))]]]])))])])])])))])))]]))))))]])]]]))])])]]]]]))])]]]))]]])]))))])]]))))])]]]))))]])]]))]]]])))])])]]]])])]]]])]])])))))))))]))]]]))]])])))]]]]]])))])]))))]))]))]])])]]]))))]])])])]]])))])]]]]]])]])]))]]))])]]))))))]]])])))]]])]]]]])))]]]])]]])])])]]))))]))])]]))])]])]]])])]]]])))]]])])])))])]]]])]))]]))]])]]])]])))))))))))]]))])))])]]]])]]]))]))))))]]]]])])]]]))))]))])))]))]])])])))))))]])]))])))])])]]]]))])]))]]])))))))])])])]))]))])))]])]]))]])])]]))))))]]))]))]]]))]])])]]))]]])]])))))))]))]]])])]]]]])]))]]])))))))])]])])))]))]]])]]))]])])]))))]]])]]]])])])]]]]]]))))]]]])))]]])]])]))))))]]]]))]))]))]])]]))]))]])]]))))])]]]))]])])]))))]])]]])])])])])]))])]))])]])]))]))]))]]))]])]]]]))]]]))]))])]]]]))))])]]))))]))])])])))]))]])]]])))))]]]]])]]]]])])]]]))]])])])]))])]])]])]))]))])]])]]]]))]))))]))))]))])))])]])])))))])]))]]]))]))]))))])]])]))])])]]))))])]]]]))])])]))]))]])]])]))])])])]])]]]]))]))]]]])))))])))]])]]]]])]]])]]]])]]]]]]]]]))])))))])])])]]]]]]])])])]]))]]]]])]])]))])])]])])])])))]])])]))]]]]))])))]))]))]]))]))]]))]])]))]]]))])]]))]))]]]))])))))])]))]]]])]]]))))))))]]])]))]))]])])))))]))])])]]]]]])])))]))]]]]))])]))])))]]))])]))]]]]]))]))]])]]])]]]]]]]))]]]]]]])))])])]))))]]]))]]])])]]))]])])])))])))]])]])])]])])]]])]]])))))))))))]))))))]])])]))))))))]]))]]])])))]]]])]]]]]]))]])])))))]))))]]]])))])))])))]])]]]])))))]]])])])]])]]]])))]]]]))])]]]])))]))))]]])]))])]])])])]])])]))))]))]))))]]))]]])]])])])))))))]))]]))]))))))))]]])))]))])])]))])]))]])])])]))))))))])])]]))]]]]]])])]])]))])]]))))]])]]]))))]]])]]])]))))))])])]]]])]]]]]))]]]]]))])])))]]]]]]])]])))])]]))]]]])])])]]])))]]]]]]])]])]])])])))])))])))]])]))]))]))]))]]))))]))]]]])]]))))])))]))]])]))]])]])]))]])])))]))])]))])]))]])])]]])]]]]]]))])))))]]]])]])]])))]))]]]]))]))))]])))))))]]]]))])])))]])))))]]]))]]])]])]]))]]]])))]]]]]]]]]))])))])])])))])]]]]]])]]))])]]]]]]]))))))))]]])]]]))]]))])])]))]]]]]]]]]])))])]]))))]]]))]])]))))]]))]])]])))]]))])]])]))))))))))]]])]))))]]])]]]]]]))]])))]))]]])))]])]]]]])))]]))))]])))])))]))]))]]))))])])]]))]]]]])))]))]])]])))])]]])))]]]]))]))]]]]]])])]))))]))]))))])]]]))]]]))]))])))))]]]))]]]]))])]])])])])]]])])]]])))]]]]]]]]])))]))))]])]]])])]]]])]))]))])])]]]]]])]]]))))]]))])))]]])])]))])))]]))))))))]])]])))])])]]]))]]]]]]])]))])]])]])])]]]))])])])))]])])]]])])))])])]))))])]]]]]]))]))]]))]]]])]))]]))))))]]]]]))]]))))))])])))))])))))]])]]]]))))]]]])]])])]]]))])))]])])]))]])]]))])]))]))]))]]))]]))]])])))]]]])])]]]])])])])]]))]])])))]]]))]))])]]])]]]]))])])]))]])]]]))]]]))))])])))]]])]))]]])])))])))))))))]])])]])])]]))]]]])]])]]])))])])))]])]])))]))])])]]))]))]]]]]]]])]])))]])]))))))))]]]])]))])]]))]]])]]]])]]]])))))])])]]])]]]]]])])])]]]))))]])))]])]]])])))))]]])))))))))]))]])]])]])])]]]]]]))])))))))]])]])))])))]))])))]))])]]]])])]])])]))])])])])))]]]))]])]))])]]))]])]])))]]))]])])]]]]]]))]))]])]]]]])]]]]])]))]])]]]))])))))))))))))])])])]]]]])))))]))]))))])]]]])]))])])])))]]])))]))))]))))))]))]])))))])])]]))))))]]]])])]]]))]))])]])]))))])))]]))]]))]])])]]])]])])])]))])]))]])]]]]])]))])]]])))]])))]]]]]))]))]]))))])]]])]))]]])]]]))])])))]]]]]])])]])])])]])])]]))]])])]])]])))]))])])]))]])])])]))])])]])])))]]))]]])]])))])]))])]])]]]))]))]))]])))])])])]]))))]]]]]])])])))])]]]])]]]]]]))])]]]])])])]])]])))))])]))))]]]])]])])]]]]]]])])]]])))]]]])]]]))))]))]]]]])]]])))))]))])])])]]])]]))])]]]))]))])]]])))])]]]))]]]])])))))])]])))]]])))]]]))]]]]))])]]])))]])))])]))))))])]])))])]))]]))]))))))])]])))]]]]))])]]]])))))])]]])))])))]]))]]))])])]])]])))))]]])]))))]])])]]]])]])])])))])]))))]]]])))])]]))]]))]])]]])]])])))]]]]))]))))])])]]]]])])]))))]]])]))))]))]]])))]))])])]]))))))]])]]]]]))]]]))])]))))]]]])])]))]]])))]])]]))]]])])]]))))]))))]]])]]])])]]))))))]])]]]]))))])])]])))]]]]]])]]))]]])))))))]])]]))])]]])])))])))])]]]])))]])))))]]]))]]]])))))]))])]]]))])]])))]]))]])]))])))]))]]]])]))])))])]]))]]])])]])]])]]])])]])))))))]))]]]])])])))))])))])])]]]]]]])]])]]])])))))])))))))]])])])))])]]))])])]]))))])))]))]])]]]]]])])])))])]))))]]]]))]])))])]))]]]]]))]])))]]]]]))]]))]])]])]))])]]])]])]]])])]]]))]))))])])]])]])]))]]]]))]])))]]))]])))]]])]])]))]])))]]]]])))]]])])))))))]))]]])]]]])))))])))])))))))]])]])]]))])))]))])]))])]]])])]]])]]]]])]])]]]))])])])]))))))]])))))]])])))]])])])])])])))))])))))))))])]]]])]])]])]])])))]]])))))))))]]))]]]]]]])])]]]])]])]))]]]))])])]])]))])])])])]))))))]]]))]]])))])))])])])]]]]]]]]]]]))]))]]])])])))]])))))])]]))]])))])))]])))))]]])))]))))])]])))))]]]]])]))))]))])])]]]]])))]]]))))]]))))]))])]]]))]]]]]))])])]))]]])]])])])])]]]))])])])]])))]]]))]]]))])]))]]])]]])])])])))]]]))))])]])]]))])]]]))]])))))]))))))])))]))]]]))))]]))]]])])]])])]]]]]]]]))]])])]))]]))]])]))]))]))]])]))))])]))))]])]]]]))]])])))]])))))])])]])]]])])]))]]]])]))]]]]))))))]])))))]])))]]]])]))]])))))))))])]]])))]]]))))))))]])]]])])])]]]])])))]]]]])]]]])]]]])]]]]]]]]]])])])]]]))]]])])]))]]]]])))]]])]]))]]))))))]]])]])])))]]])))]]]]]))])])])]))]]]]]))])]]))))))])]))]))])))])])))))]]))]))])]]]]))]])]]])))])]))]])]]]]])]]])]])]]]))]]])])))])])]))]])])])))))])]]])])))]]))))]])]))]]]]]]]]))]))])))))]]))))]]])]]])])]]))))))]]]])))]])))]])]])))]]]]])]]))])])])]]]]))]]))]]))])])])))]]))]]])))]]))])))])]]]]))))]]])))))])))]])])])]])])))]]]]]]]]]])]]])))])]))])])))]]])]]))]]))]])]]))])))))))])]]]])])]]]])]]))))])]])))]]))])))))))))])]]])))))))])]]]))]))]))])]]]]]]])]])])]))]])]]]]]]))]]))]]]))]]))]]))))]]]))])]])]))]))]))]))])]])]]]]]])]]))]]])]))])))))]))])])]]]))))]]])))])])]))))]]]]]])]))))])))])))))))]]))))])]])]])))))])))])]])))]))]])])]])]]]]])]]))))]]]))])]])]])]]]))))]))])])]]]))]))]))]]]])]))]))])]))]]))]]])))]])))])])]]))])]]]))))))]))]))]]]]])]))))]])]])))]))])]])))]))]])])])))]]]))]])])])])])]))])])))]]])]]))))))]))])])))]))])])]]]]]))))]]]])))))]]]])]])))]]])))])])])))))]])))]))]])]]])))]))])]])])))])))]]]]]))])])])]]]])]]])))]])])]]])))])])]]]]))]])]]])]])])]))])]]]))])])))))])]]])]))])])))]])))]]])]]]]]]]])))])]))))]])]))]])])]]]])])])))]]]])]])]]))])]]))])])])]])]])]])]])]]]]])]))]))]]])))]]]]))))])])))]])]]]])]]))))])])))])))]])]]))))]])))]))]]]))]))]))))]))]))]]))]])]])]]))))]])]))))))]]])))])])]]]]]]]]])]))))))])]]]))))])))))]))])))]]])])]]])])))]]]))])]])]]]])])]])]))]]))]))]]])))])))])]]))])))))])))]]))])]]]])))))))]]]]))))]))))])]))])])]))))])])])))]])]))]]))]]]])))])))]]))]]))])]))))]))]]]]])]])]))]]])]]]])]))])]])])))]))]))))]))]])))))))]))))]]]]]])]]])))]])])])]]]])]])])]])]])])))]))]))]]]]])))]]]]))))))]]]))]]]]]))))))))]]]]]]]])])]]]]))]])))])]))]])))]))]))]])))))]]))])))))])]]]))))])]))])])]]]]]]])]))]]])]])))])]]]))]]))))])))]))])]])]]))]]))])]]])]]])]]]]]])]])]])]]]]))))]])))])]]]]]]]])]]]))))]]]])]]))])]]]]]]]]]]))]]))))])])))))]]]])]])]]]]]))))]))]]))))]))))])]]]))]))])])))))))])])])]]]])))]])])]]]]])]])]])]))))]]]]]))])]]]]]))]))]]])]]])])])]])))]]])])])]])]))))]))])]))]))]]]))]]])])])]])))))))]]]])]))]]]])]))]]]]])]))))))))])]))]])]]])]))])]]]))])]))))]]]]]]]))]]]]]]]]]]]])]]])])]]))])])]])]))]])])])])]])]]]])]]]]])]]]))))]))]]]])]])]))))]]]])))]]]]))]])])))])]]])]))]]]]]]]]))]])))]]])]))]]]]]])]]))))]]])]]]])))])))])))])]]]])]))])])])]]])]))]])])]]]]))])]]))]])]]))])))]]])])])])]]])])])]))]])]])])))]])]]])]]]]]]))]])])]]))]]]))))))])]]))])]])))]))])))))))])]]]]]))))))]]])]]))]))]]))]))))])]))]]])])))]))])]))]]])))])))]])])])))]]]]]]])])]))])))])]]]]]))]))))])])))]]])))]])]]]))]])))])]])))))]]))])]))]])])]))]]]])))))))))])]]))]]])]))))]])]]])]])])])])]))]]]]]])]]])]]]]))])]]]]))]))])))))]]]])])]]))])])])]]]]])]]))])]])]]])]])])]]])))])]))))])]))]))]])]]]])])])]])]]]]))])]]))]])]))]]]))]))])]])))))]))]])))))])))]]])))])])]))))]]]]))]])))]])]])])]])]]]])))))]]]])]))))])))])]))]))])])))]])]]])]])])]]])]))]]]))]))))])))))]]]]])]]]))]])]]))])])))))]]])))))]))))))]]]))])))]]]))])]]])])]]]]]))]))])))]])]]]]])))]))]]]])))]))])])))]]])]]))]))))]])]]]]])))]])]]))))]]]])])])]))]])))]])]])]]]))))])))])]])])])]])))]))))])]]]]]))])])))]]]]]))]]]]]]))))])]])])]))])])]]]))]])))])))]))))]])])))]]]]])))))])]))]))]])])])])]]]))))]))]]])))]))))])]))))]))]]))])]]]))])]])]])))]))))]]))]))))]]])]])))]])]]])))]])]]]))])])]])))]))))])))]])]]])]))])]]]]]]]]]])])]]])]]]]]]])))]]))]])])]]]]))))]]]))]])]]]]])]]]]]))])]))])]]])]])])))]))))]]]]]]])]])]])]]]]])])))]])))]))])]]))]]]]))))]))]])]]))]]])]])))]])]))]]]]))]]])]))])]]))])]]))]])]]]))]])))]]]]))]))])]])]))]])]))])))]]]))]))]]))]))])]]]))]]]])]]]]]])])]]])])))))]]])])])]]]))))]]))]]))]]])])]]]])]]]))])]]))])))]])])))])]]]]]]]]))))))))]]))])])]]))]])])])]])]]])])]])))]]])]]]]]]]))]])])))))]]]]]])]])]])]]])]])]])]))))])]]])))]]]))]]]]]])]]]]]]))))])]])]))]))]))])))]])]))]])]]])])]]])])))]]]]])]])))])]]]))]))))]])])))]]])]))]]]]]])]))])]]])])))])]])]))]]))])])])]])]])]])])]])]]]]))]))])])]])]]])])]])]])))]])])]]]))])))])]]]]]])))))])))])))))))]]))])]]))]])])]]]))))]))]])])]]))]))])]]]])]]])))])))))]))]]])))]]]))]]])))])])]]))]))))]))])])]])]])))))]))))]]))])))])]]))]]))])))]]]])))))))))])]]]]]))))))]))))]]]))]]]])]])]]])]))]])]]]])]]]])]))]))]])])])]]))))]]))])]])))])]]]]]]]]]])]]))]]))])]]]])]))]]]]]))]]))))]))]])]))]]]))])))]])))]))]])]])]]])]]]]])])])]]))))))])]])]])])]]]))))]))]]])])])]))])])]])])))))])]]]])]]]))])])])]))])])])))]))]]])]]]]]]])]]])])]]])]]))]]))]))))]]])]]))]))))]])]]])])))))]])]]))]]])]))]])]]]])])]))])))]))]))])]])])]])])]))]]])]))]])]]]]]))))))))]))])))]])]]]]]])])]))])]])]])]]))))]]))])]]))]]])))])])]])))))]]])]))])]))))]))]))))]]])])]]]]))]]])]))))]])))]))]]]]]))])]])))]])])]])))]))])]]])])])]))))))]))]]))]))))))]]))])])))])]])]]]))]])])))]]]]]]))]]))))]))]])))]]]))])])]]))))])]])]]]))))]])]]]]])]]))])])))]]]]]))]])))]]])]])))])]]))])))])]])]]]])])]))])))])]]))])])]]])]]])]]])))]))]]]]])])]]]]])]])])))))))])])])]]])))))]])]]])))))]]]))]]))))]))]])]]]]]]])))))]]))))))])]))))])]])]))])])]])])]]])])])]]]])]))))]]))]])])]]]]))])])]))]))]])]))]))])]]]]])]]]])))]))]]]])]]))]]]))))])))]]])]))))))]))]))]]]))]]]])]))))]]]]]])])))])]]))]])]]]]]]))))))]))])]))))])])]]))))))]]))))]]))])]]]]]]]])]))]]))]))))])))]]]))))))]]])]])))]]]]))])])]]]))))))]]]])])]))])]]]))]]]))]))]]]))])))]]])]))))]])))]]])]])))))))])))]]]]])]]]))]))]]])))]]]))])]]))]]]]]]]]]]]]])])))]))))])]]]])])))]))]))])])]))]]]]]])))]]])])]])]])]))]))))))]))])]])]]))])]])))]]]]])])]])]]]]]]]])]]])])]))))])))])])]]]]]])]))))])])]]))))])))]]]])])]])])])]]]]])]]))))]]]))])]])))]))]))]]))]]))]]))])])]))]))]])]]]])))]]]])])]))]]))))]))]]]]])]])]))]])]]]]))]]]])))))]]]]])]]]])])]]]]]])]]]]))]]]]))])))]]))]]]])))]]])])))]])])]))]]))))])]))]]]))]])]])]]]])]]))]])))])])]]))))])])]]])])]])]))))))])])]])]]]))]]]])])]]))])]]]]]]]]])])))])]]))])]])))))]]]))])]])])))]])])])])])))])]))))]])]))]])))))]))]))]])))))))]]]]])]]]])]]))]]]))]]]])])]))))))]])]]]])])))]))])]]]])))]]]]]])]]])])]]])])])]])]])]]]]])])]]]]])]))]]))]]])])))]])])]]]))]])))]]]]])]))]]]))))]])]))])])]]]])]]]]]])]])]]))])])])]])))]))))))]])])))))])]]]]]]])]])]])]]]))))])])]]))])]]]]]]])]]))]]]])])))))))))]]]])]]]]]]))))]]))])]]]])]])))))]))])))]]]]))]]]))]]]])]))])]])))])]]])))]]]))]]))]]))]]))]])])])))))]])])))]))))])]]))]))]]]]])]))]))])]]))))]))))])]]])]]]]))]]))))]])]))]]]))]]]))])])))]]]]])])]])]])))]]]))]]])]]]]]))]])])]])]))))))]]])))]))]]])]]]]]]])))]]])]]]])]])]]]]]))]))))])]])))]))]))]))]]]))]))]])))])]]])))))])]])])]])]]]]])])])]]]]]]]]])]))])))]])])]])))))]]))]])))]))])]]])))]]])]]))])]]]]])))])))])))]])]])))])]]]))]]))))))]))])))])])))])])]]])]]))])])))]])]]]]])]))]))]]]]]]))]]]]]])]]))))))])]))))]]]]]]])))]])))])]])]]]]))]])]])]]]]]]])]]]])]])]])))]]))]))]]]))]])])]])]]]])]]])))]]))])]])]]]]])))])]])])]))]]]]]))])])])))])])])]]))]]]))]))]])]]])])))))))))))))])])))]))))]]]))]]])))))]]]])])]])]])]]])]]]]]]))]]]]]))]))))]))]]]]]]]))]])]])))])]]))]])))]))]]]))))))))))]))))]])])))]]]))))]])))]]])]])])]])))))))]))]])))]]]])))]])]]))))]))])]))])]]]))]]))])]))))))))]))])]])])]])])])]))]))]]])]]))]])]))))]]))]))])))]]))]]))]]])])]]]))])]]]))]])])])])]])]])))])]))))]]]])))]))])]]))])))]))))]]]]]))]))]]]]]])]))]]]]])])]])]))]]))))])))))]]]))]))))]))])))]]))]])]])]]))])]])))])))]))]))))])]]]))]]))]]])])))])))))))]))])]))]]]]]])))]]])]))])]]])])]])])))))]]]])])]))])]]]])]])])]]]])]]])])]]]))]))))])]])])]]))]]]]]]])]]]])])]]]])))])]])]))]])])])]]]]))]]]))]))]])])])))))])]]]]])]])]))]]]]]))))])))))])]]])])]))]]))]))]])]])]))))))])]))]])))])]]]])))))]]]]])])))])))]]]))]]])])])]])])]]))]]]]]))]])]]])))])])])])])])]))])]]])])))))))))]]]]])]])])])]]]]])])])))))])])]])])])]))))))]]]]])]])))])]]])]]])]])))])]]]]]))])))))))))]])))]]))]))))])]]])]))]]))]))]]]))]])])]))])]]]]])])))]))]]]))]]])))])])])))]))])]]])]))])))]))))))))])]])])]]))]]))]]]))])]])]]]]]))]])])]])]))]])))]])])]]]]))))])]]]))])))]]]]])])])))])]]))])])]))]])]))]]]])]])]]))])])]))]]])]])]))]])]]))]]])]]))]])))]))]])]))])))]]))))]))))]]]))])))])]])]))]]]]))]])))]]]]]]]]]))]]]))))]])]]]]]))]])]]]]]]))]]]]]))]))))]))))])])]]]]]]]))]]]]]))])]])]])]]]])))])]]])]]]])]])]]]])])])])))]])]]))])]]))]))])])]]]]]]])]])))))]))]])]])]]]]]]))])]))]]])]))]]]]))]])]]))]])))])))])))]))))])))]]))]]])]])])])])])])))])]]]]]])])))]]]]])))]]])])]])])]]]])))))]]))]]]))]])]))]]))]]]))]])))])))]])]))]]]]]))]]]))]])])]]]]])])]]]))]))])]]]]])]]))))))]])))])]))))]])]))]]])]]]])])]]])]])]]]]))]))])]))))))])]]]))]]))]))]))])]))]]]])))]]])])])))])])]]])))])))))))]])])]))]]])]))]])])]])]]))]]))])]))]]]))))])]])]))))])]]])]))]))]]]]])))))])))]))]]]))]))))]))]]))]))]]))]]])])]]]))))])]]])]]]]]))]]))]]])])]]]]]))])]]]]))]))]])))])]))])]]]))]])]))))))])))]])))])]])))))]]]])]]]])])]))]]]])])])])))]]))])])]])]]])]]]]]])]]]]])]]))]])])])))]]]]])]))]))])]))]])))]))))]]]])]))]]])))])]]]])))]])])])])])]))]]]))]))]]))])))])))])]))])]])])]])]]])))]))]))]))]]]])]))))))]]]])))]]))))]])])]))))))])]]))]]])))]))]))]]]))])))])])]))]])]])]]])]]]]]))))]]]]])]])]]))))))]])]])]))])])]])]]]]))])]]))]))]))])])])])])])]])]])))))]))])]]]]]]]))])]])]])]))]))]]]]]])]]]]))])]]]])]]]])]]])]]]])])))]))))]]]))))]))]]))]]]]])))]]))))]]))])))))))))]]]]]]))))]])))]])]]]))))]]]]]])))])]])])]]]))]])]))]]]]))))])])]])]))]]]))])]])]]])])]))))]]])))]))))))])])])))]]])]]))))]]]])])])])))]]))]]]]))]]]]))])]])))]])))])))))])]]])))])]])])])])]]])))])]]))])]])])]]]])]])])]]]]])])]])]])])])]]])))]]]]])])]]])])])))))))]))]])]])])))])]])])))]]))])])])])))]]])]))))])]))]]])])))))])])))]])])]]])]))])]]])]]]]]])]]]))))])]]))]])]))))))]]]])))])]))])]])))]])))])))]]))]]]]))))))]]]]]])])]]))])))]]])))))])]]])]))]])])]]]]])])])))]))]]]])]])])]]]]])]])])])))]])))))))))))]]]]])])))]])])]]))]]]]]]])))))))])]])))]]])]))]]]]])]]))]))]]])]]]))]))]]])]]]))])]]]])]]])))))])]]]))]]))]]))])]))])])]]))))))))]]))]]))))])])))))]]))]])])])))])))])]]])]]))))])]])))))]])]]]))])]])])))]])))))]))])]]]))]])]]]])))))]])])))]]))])))))]]])])])]]]]]]]]]))]))]]]]]))]]]))]])]]])))]])])))]]])]])])]]))]))]]])))))])])))]))]])])]]]]]])]])])))]))])])])))])]))]])]))]))]]]]))))))))])]]))))))])])]))])])]])]))])]])]])]))))])]])))]]))))]]]))])]]))]]))))))]))]]]))])))))))])]])]])]])]]]]])]])))]]])])]]))]]]]]]]))])])])]))]]]]]))]))]))]]]]]])))])))])]))]]]])]]]]]))])]]]]))]])))))])]]]])))])]))))))]]))]]])))]))))))])])]]])))])]]))])))])]])]]])])]])])]]])])))]]]]])]]]])]])]))]])))])))])))])])])]))))]))]))]])]]))])]))])]]])]]))))))))]]]])]])])))))]])]]]))])])])]])])])]))]]])))]))))))))])]])])]]])))]])]))]]]])])]]))]]]]))]))))]]]))))])))]]]]]))]))]]]]))])]))]])])]]])))])]]])])]))]])]))))]))])]]]))])))])]]])]])]]]]])))]]]])))])]]]]]])))]])])]])]])]]]))]))))])]))]]]))))])])))]])])))]])])])])]]))])])])])]]))))]))]]))]])]])]))])))))]]))))]))]]))]]]]]]))]]]))))])))])]]])])])]]]))))])])]))]))))))])]]]]]]])]]]]]))))))))])]]]])])]]]))])]])))]])]])]])))])))]))])])])))]]])]])))]]])]))]]]]]])))))))]))])])]]]]))]]]))]])]]])))])]]]]])])]))])])]]]))])]]]]]]))]]])))]]))]])]))])]))])]))))])]]))]]])]])))]]))]]]]])])))]]]))))]]]]]]]]))]]])]])]]]]])]]))]])]])))]])]]]]))))]]]))]]])))]]]))]]))])])]))])]]))]]]]]])))]])]]])])])]))))]]]]])]])])))]])])]]]]]])]))]))))))]]])]])]]])))])]])]]])]]]))])])])]]])]]))]]]))]]))])])]])])]]))]])]))])])])])))))])]]]))])]))])])]]]])))]]))))))])])]]])))]]]])])]])))))])])]))]]]])]]]))]])]]]]]]]))])))))])]]]]])])))]])])))]]]])]]]]]]))]]]))]))))]]])]]))]]]]))]])])))]])]])]]]]))))]]])))]])))))))]]))])]]]]]]]]]]))]))])]])))))))])]]]]))))))])]])])]]]]))))]]])))))]])))))])]]]]))]))])]]]]))])]]))))))]))]])]]]]]])]])]]))]))))]))]])]))])]]))]]]])]]]]))])]])]))))]])]]))])]]]]))])]]]))])]])])])))])]]]]])))])))))])])])])))]]]))]))]]]])))]]]]])]]])))))))))]]])))]]]]]]])]))]))))])))))])]])]))]]]]))])))])]]])]]))]]]]])]]]]]]]])))]]]]))]]])))])]))]]]))]]]))))]])))]]]]))])))])]])))]])])])))))]]]]]]]])])])])]))]]))))))]))])]))]]))]))]])))])))]])])))]])]]]])))]]))))]]]]]]]]])]]])])))))]))]))]]]])]])]]))]]]))])]))])]))]]]])))]))]))]]))]]])]]))])]])]])]]])]))]))))]]]]))])])])]]])]]))])))])])]))]])])]]]]]))]])))]]]))]])]]])))])))]))]))]]]]])])]]]))]]))]]))))])))])])))))]))])])]]])))]]]])])]])))]]]]]))]))]]]]]])))])))]])]))]]]))))]))]))]]])]]])]]]]]]))]]]]]]))])))])))]))]))])])])]]))))]]])))])])])]))]))))]]])])))]])])))]])]]))))]))])]])]))]])])))]])))))])]]]))])])])])]))]]])])))]])))])))])]))])]))]]]]]))]))]]]]]]]])])]))]))))])]]]]])]])))])]]]]]))])]]]]))]]))))))])]))]])]]])]))))]])]])]])])])]]]]))])])))]))))))))))]]])))])])])))))])))]])])]]]])]))]])])))]]]]]])])]]])])))])])]))]])])))))]))])))))))]])]]))]))])]]]]]])]])))))]]))))))))]]]))]])))]]))))]))))))))))]]))))))]])]])]])])]))]]]])]]))))]]]))]))]]))])]])))]))))]])))))))]]]])))]]]])])]]])])]]]]))))]]]))]]]])))])]])])]])))))])])]]]))])]]]))))]))]])]]])]]))])]]]])]])])))))))]]))])])))]]]))])))]]])]))]]]]))]]])]]])]])))]))])))])))]]])]]]))]]])])))]]]]))))])]]])])))))))))])]]))]])))))])])]])))])])))))]]]))))])])]]])))])])]])))])]))]]]]))))]]]])]])]]])))]])])]]]]))])]))])))])))]])]])])]])])]))]])]]]))])))]]]))))]))]]]])]))]))])]))]))))))]))]))))])]])]]])]))])]]]))]))]])]]))])]]])])]])])]])))])))))])]])]])))]])]))]]))))))))]])]]])])])]]])])))))]))))))]]]))))]])])))))]))]])])]]]]]]))])))))])])])]))]))]))]])]]]]))]]]]]])]))]]]]]))))]))])]))))])))))])))])]]))]))]))))))]]])))]]]])]])))])))]]])]]))]))]]])])]])))))]]])))]])]])))))))]]]]))])]])])])])]])]]]])]]]))])])]))))])]]])])])])])))))))))])]))])))]))))]]]]]]]))))])]))))]]))]])))])]]]])]]]]]])))]))]))))]))))])]])]))]]))])))]]]])])))]])]))))]))]])))])])]])])))]))))))]))]]])]])])]))])]])]])])]]]]]]]]]]]])]]])])]])]]])]))]))))))]])]]]))])]))))]]]))])]]]]]]])]))]))]]))]])]]))])])]]]]]])])]]]])]])))]))])]]])))]))])]))]])])))]]]))))])])]]))])])]))]]]])])))])))])]])]))]]]]]))]]])]]]])])))]]]])]))])]]])))]]))]])])))])])])]))])]]]]]]]])]])])]]))]])])])))])]))])))])))])))])])))]]]))]))]]))]])))])]])]])]]])]]]]]])))])]))]]]])])])]]])))]]])]))]]])]])]))))]])]))]]])]]])]]]))))]])]]]))]])]]]])])])]]))]]])]))]]])]]]]]]]]))]))]])]])]])]])))))]]))))])])])))]]]]]])]))])))])])]]])]])]])]))]]]))]]))))]))]]]]])]]]])))))]])]))]))))]]])]]])]]]]])])]])])])])]]]))]]])))]])))])]])]])]]]))]])))))]])]]]))]])]))))]])]])]]])]))]])))))))]))))]])]])]))))]))))]])))]]]]]))])]]]]])])])])]))]])]])])]))]])))])])))]))]]]]))])]]]])]])]]])]]))])])]]]]]))))]]))]]]))]]]]]]))]])]))]])])]]]])])])])]]]]])])])]])])))))]]]))])]]))]])]]))]]])))])]]])])]))])))]]]])]]))))]))])])])])]))]))]])]])]])])]]]]]]))])]))])])))])]]]))))])])))])]]))]))]]]]]]))])]))])]))]))))))))])]]))))]]]))]])]])]]]]])])]])]))]])]])])])])]]]))))])]])])))))]))]])))]]]]])]]]]])]))]])]]]])))])]]]))))]))]]]])])))))))]))))]))])])])))])]]]]])]]]]]]]])]])]]]]])))))]]]]))]]])]])))]])]]])])))))]]])))]]])))])))])]])]]]])])]])]]))]))))]]])]))]]]])))))]))])])]])]]])))])]])))]))))]]]))])]))]]])]]])]))]))]])]]))))]]]]])])]]]))]))]])]])]])))]])]]]]]]])])])))]])))]]]]]))]))))]))]]]))]))]))))])]])]])))]))]]))]))]])]))])]]]]]))]]))))])])]]])]]])])]))]]))]])]]])]]])))))))]))])))]])])))]])]])])]]))]]]])])]])]))]]]))])]))])))]]))])])]]]]]]]]])))]]])]))])]]]))])])])])]])]))]])])))]]]])])]]]]]))])])])]]])))))]])])])]]))))]])))))))]]]]]]))]]))]))]]))]]]])]))]]])))))])])]))])))]]))]])]]]))])))]])))]))))))]])))))]]]]]])))]])]]))))]]]])])]))))])])]]])]))))])]]])]]]]]]]]])]))])]]]])))]]]])])]])]]]]]]]])]])]])]]])]))]]]]]]]))]]))]]]])]]])])]]])))]])]]]])]))))])))]]))))])))]]]))))]]]])]]])))]]])]])]))]])])]))]]]]))]]))]))))]]))]]]]])])]]]]]))))])]]))))]))]])))]]]]])]]]]))]]])]))])])]]]))]]])]]]))]])]]]])]))])]]])])]]))))])]]]]])))]])]]]]])]]]))]]]]]))))])])))])])]])))))))))])])]]]])))]]]]))])))]]]]])]))]))]]))]))])))))])])]]))]])])))]])]))))]]])])))]])])]))]))))])))]]))))]]))))]]]]])]))])]]]]])]])]))])])])])])]]]]))]])]]))))])]]))]])])))]]]]]))))]]))])]])))]]])])]])])]]]))]])])]))])])))])))))]]]])])))])]]))))]]]]]])]))]))]))]]]]])])))]]))]]]))))])]))]]]]]))]]])]]]])])])))]]]]]])])])))]])]]]])])]))]]])))]])]]])]))])]]]])))]])])])]]]))]]]]))]]]))])]]]])))])])]])]))]]]]]])]]))))])])]]]))]])]])]])]]]]]]]]])]))]]))]]])]]]]]]])])]])))]])]])]])]]))))]]]]])])]])))))))))])))]]])))])))]]]))])))]]])]])]])))))]]))))]]]]]]))))))]])]])]])]))])]]])]]]]])]]]])]])))))]]]]])]))]))]]])])])]]])))])]]))])))]]))))])))]))]])]]]]]))]])]]]]))]]]]]))))))]]))])])])))])]])]]))]]]]))))))]])]))))]]))])]))))))])]]]]]]]]]]])]])]]))))]))])])])]])]]]])))))]])))]]))))])))])]))))])]]])])))])]])]]])]])))])]]])))])]]]]]])))))]]]]]))]]])])])])])]))])])))])]))]]])])])]])]]]]]))]]))]])))))]))]))))]))]))))])]))]))]]))]))])))])]]]]])])])]]])))]]))]))]))))]]]]]))]]]))]]]))]])]]))]])]))))])))))])])]))])])])]]))]))))])])]])]))])])))]])])]]))))]]]])))]]))]))])]]]]]])]]))]]]]])]]]]))])]))]]])]))))]))])]))])])))])])]])]))]))])))))]]]))]))]])))]])])]])]))))]]))])]])))))]))]])]]]]]])]])])]))))]])]])]])])]]))])]]))))]])]))))])]]))]))]]]])))))))))]))])]])]])])))]]]])]]])]]]])]]))))))]]]]]]])]]]))]]))]]])]]]))]])])))])])])))])]))])]])])))])]])))])))))])))))]]]]]))])]]))])]))))]]]]]))])))))]]))))))))]])))]])]))))]]]))))))])]])))))))])]])]])]])]))))])))]))])))]]]]]]])]]]])))])]]])]))]]]])]]]]]]]]))))]]]]])])])]]]]])))]))]])]])]]]])]]]))]))]]))))))])))))))]]])]])])))]]])])])))]]))))]))]))]))))]]]))))])])))]]]]))))]]))))))]]))))))])))])])]])))]])))))]])]))))))])])))))])]]))])))))]]])))))])))]]))]])))])]))])]))))]))))))]])))]])]))]]])))]]))])]))])])]]])]]]]))))])]])))))]])]]]]]]])]]]]))]]])]))]]))]]]))]])]))]]]]])))]))))]])]])])]))])]))])))]]]))))]])]]))]))]))])]])]]]))])))]])]]))]]))])]])]]])])))])])]])))]])))])])])])))])]]])])])]]]])])])])]))]))))])))]])))]))])))]))])])]]))])]))]))]]]]])))))])]]])]]))]))]])])]])))]])])])]])]])]]])]))))]))]]))))])))))]))]))])])))])]))]])]))])])])))))]])]]])))))]])))))]))]))))))))))))))]]]))]]))]]))])))])))])])])))]]])])])])))])))]]]))])))])))))]]]]]]))]]])))))]])]])]]]]]]]]]])]])])))])]]]))))])])))))]])]]])]]]))])])]])])])]]])))]]])]]])))]]))))]]])]])])))))))))]]]])]])]])]]))])]]]]])))]])]]]])]]])]))])))])]))])]]]]])])))))))))])]))]])]))]]]))))]))]]])]]])])]])]])])])])])]))]))]])])]))]])]]]])]]]]]])])]]]))])]]))))]]))))])]])]]])]]]))))))]])]))]])))]]]])]))))]]])])]))])])]])]])]]]])]]])))])])])))])]]])))]]]]]))))))]])]))]])]]])))]))])))))))]]]]]])])]]]])]))]]]]]]]]))]))))))]])]]]))))])]]])]])))]])))]])])]]])]])]]]))]))]))]]]])]]))])]]))))]]])]]]))])]))]))]]])))]))))]])]])))])]))])]])]]]])])))]])))]])))]]))]))))]])]))))))]])]])]]])])]))])])))])]]])))]])]]])])))))]]))]))])])]]])]]])]]]]]))))])])]]))]])]))]))))])]))]]))))))])]))))))))]])]]]])]]]]]]))])))]]))]]]]])])]])]]]]]]]]))))]])]))])))]))))])]]))]]])])])])]))]])])])])]))])]))])]]]]))])]]])))])]))))]))])]]))])]))]))])]))))])]])))]))]]))))])]])])])]]])]]))]]]))]])])))]))]]])))))))))]]]]))]]))))]]]]]]]]))]]]])]))]]]]]])))]])]])]))]]]])))))))]]])]]])]])]))])])))]]))]]])]])])]))]])))))])))]]))])))])])]]]]])]])))]])]]]]))))])))])]]]]]]]))])]])))]])]))])])]))])))]]]))])]])])])]])]]]]))]]))))))])))]]])]))))]]))])]])]]))))])]])]]])]))]]]]))]]))))]])])])]])))]))])]))))]])])]]]]))]])]))))])]]])]))])]])]))))]))))]])]]])))))])))])]])]))])])))))]))]])))])]]))]))])))))]]])])))])]))])]]))]]]])))])]))))]]])]]]])])]])]]]]]]]]])]])))]]]))]]])))]])]]])])]])))]))))])]))])])]]])]])]))]])])]))])])))]))))]]])]])]]]]]))))]))))))]]]]]])))])])])]]])])]]])))])]])]])]]])))]]]]]])]])]])])])])])))))))])]]])]])])])]]])])]))))]])])])]))]))))))]))))]))])]])]]))))]))]))]])))]]))]])]]]]]))])]]]])))]]))]]]]]]]))])]]]]]]]]]]]])]]))])))))]])]])]])])])]])))])])])))])])]]]))))])]))]]])])))]])]]])]))]]))))]]])])]])]]]]]])]])])]]])]]])))))))]]))])))]))]]]]]]))]]]])])]])])))]))))])))]]]]))))))]])])]])])])]])]]])])]]]]]]))))]])]]))))])]]))])])]])))])]])]]])]]))]]]]]]]))]])))]))]]))))]]))))])]])]])))))]])]])))]]))))))]])]]]]))]]])]]]]])]]])))])]])])))])]]]))]]]]))]))))]]))))])))))]]]])))))]]))])]))]))))))))]]]]]))]])]]]]))]]]]]])])]))]])])]])]])])]])]))]]])]]))]))]]))]])))))])))])]])]))]]))])])]))])]]]]])])))])])]])]]))]]))]])])))])]]])]]))))]]]]]))]]]])]]]]])]]]))]))])]]]]]]])])]))]])))])]])]]]])))]]]])]])]])]]])))])))])]])]]]]]))))))))]))))])))))))))])]]]]]))])]]]])))])]]))))))]]]])])]))]])]])))))))])))]))])]))))]])])]))))))])]])]]])))]]]]])))])]))]]])]])])]]]])))]]])))])])]]))]])]))]])])])])]))]])))])]))])])])]])]))]]]))))]]])]))]]]))])))]])])]))))]]]])])]]])))])]]])]]]]]]]])]]))])))]))))])))))]])]]]]]))]))))))]))]])]))])])]]])])]]]]]]))]]])))]])]]))])])))))))]))])))))]]])]])]])]]]))])])])])])))))])])]]]]))]]))]))))])]]]]]))]]])]))])]]]]])])])]))])])])))]]]]]))]]])]]])))]]])]]]]]]]]]])])))]])))]]]))])]]))])]])))]))))]])]])))]))]]]]]]])]])]))]]]))]))]))]]])))]))]])))]]]))))])))]]])])]))]]]]]))]])])]]])))]]]]))]])))]]])]])])))))))])]))])]))))]])])]]]]]])])])))]]]])]]))]]]))]))]])])))]))))]])]]]))])])])))))]]])]))]])]))])))])]])]))]]]))]])]])]]]])]])))))]]]])]))]]]]))])]]])]])]]]))]]])]]])))]])])]))]))))]))]]]]]]])))]))])]]])])])]]])])])])))])])]))]]]))))])))])]]]])]]]]]]))))]]))]]]))]]]])])]]]])]))])])]])]])]]]]])))])])))))]])])))))]))))]))))]))])])])))]))])]]]]])]))]))]))]])])))]))]]]])]])]]]])])]]))))]))])])])]])))]))]])]])])]))))))]]])]]))]))))))])])]]))]))))]))]))])]]]))]])]]))]])]))))))]))]))])])]))))]]]])]]])])]]])]]]]]]]))]])]]))])]])]]])]])))])])]))]))]))]])]))])]]]]))])))))]])]]]]]])]))))]]))]))))]])]))]]])]))]])))]])]])]])])])]]]]))]]))))]]])])))))]))])))))]]]))])))]]))]])]))])])))])])]))]]))]])))]]]]])))])))))))]]]])]])])]]])])])]]))))))]))))]])])))]]]]]]])])))])]]]])))))]))]))])))])]])])]])]]]]))])))])]))))))])))]]))]])]]]]])]]])]])])))]]))]]))]))]]])))]]]]]]]])])])]]))))]]])))]])))]))])]])))]))]]]])])]]]]])]]])))]]]]]))]]]]))))]])])))))))]])])])]]))]])])])]))]]))]]]))]))))]]))]]]))]]]))))])])]))))]]]])))))]]])]))))))]])]])]))]]))]))))])]])))]]])])])])]]))))]])]])])]])])]))])))))]])))])))]))]])])])]]]]])])])]])])]]]))))]]])])]]]]])]))]]])]))]]]])]))]]])]]])]]])])])]]])))]]))])]))]]])))]]])]]))]]]))])]])]]))]))))))])]]])]]])]]]]])]))]]]])]]])))]))]])]]]))])]])))])]]))]]]])]))]]]])])]]]]]))])]]])]]]]))))])])))]]]])]]))]])]))]])))))))]])))]])])])])]])))))]])]]))]]]]]]))]])))]])]]]])]))]])]]]]]]]]))]]])]]]])]])]]])]]))])]])))]]])]]]]])])]]]]]]]])))]]]]])]])])])))])))]))))]])])]]]]]])]])]))]))]]]))))])]]]))]]])))]))))))]]])))]))]]))))])])]]]]])))]]))]])]]])]]]]]]]]))])]])]]]))])]])))))])]]]]]))))]])])]]]]])])])]]])]))])]))]))))]]]))))))))])]])]]))])])]]]]])]]])])))))))]]]))))])]]))]]])]])])))]]]]]])])])]))]])))]]])))]]])]))]])]))]))]))]])))]]])])]))])]]]]]]]]])]))]])))]]])]]])])))))])])))]])]]]]]))])]]))]]]]]])))))])))]))]))])])))]))]]]]]))])))]])]])])])]])])]]))])]])]]))]]])])]]))]]]]))]]))]))]))]]]))]]))])]))]))])))]]))]])]])]])])]))))))])))]]]]]))))))]]]])))))]))]]))])]]]))))]])))])))]])]]]])]]))])])])])])))))])])]]))))]])])))]]]]))])]]]))]]])]))]]])])])])])]])))]]]]]])])])))])))]])])]]]))]]]))])]])]]])]])]]]]])]))])))))])]]]])))))]]]])])]]]]])))))]]]]]))])])]]])])]])])])]]]]])]])])))]]])]]])]]]))])]]]]))])])]))]))))]]]]]])]]]]]])]]]))]])))]))])]]]]])]]))]))])])]]]])]])]]]])]))))]))))]]])])]))]])])))])]])])]]]]]])]]))]]))]])]]]))))]))))])]))))]]]])])))]])))]]])]]))]])]])]])))]])]]]]])]))]])])))))]]))])))]]]]]]]]]])))]])])])))]])])))]))])))]))]])])]])))])])])])])]])]]]])))])]]]])))]])]))]]]])))]])]]]]))]]))])]]]))]])])))]]]])]]]))])))])]))))]]])]))])]]]))])]]])])]]]]))]]]))]]]))]))]]))))])])])])]]]])]))]])]]))))]]))]))])]]]]])]])]])]))])])]))]]]))]]])]]))])])]])]]]]])]]]])))])]]])]))])]))]])])]))])]])]]])]])))]))]]]]])]))])]]])))]))]))]]]))]]])]))))]]]]]]))]))])]))))]]])]])])]]))]]]]]))]])])))])]]])]]))))))])]]])])))))])))])))))])])]]]]]])])]]])]]]))]]))))])]]]])]))]])))))])]])]]]]]]]]]]]]))))])]])]))))]]))))])]))))])]])))))]]]))))])]))]])))]])]]])]))]]]]]])])]]))))]])]]]]]]])]])]))))]]))]])]])]])))]))]])]])]])]])]))))]))]])])]]])]]))])])]]]))])))]]]]]]])]])])))]]]]])]])]])]]]]]])])]])])]])))])]))]]]))]]])]]))))]))]]]))]))])]])))))]])]]))])))])))])]]])))]]]])]])]])]]])))]])])])])]))))))])])]))]])))))]]]))))])]))]]]]])))]])]))]]])))]]])))]]))]))]]))))))))])]]]))]))))))]]])])]])])]])))]]))]]]]]]]]]])))]]]])]))]])])]]))])))))]])]])]])))))))]]]])]]))))]]])]))]])]])]]]])]]])])]])])])))])]]]))])))])))))])]]])]])]))]])]]]])]]])))]]]])]))]))]]])))))]])))]])])])))])]))]))))])])]]])))))]))]]])]]]))])]]]])]]))))]))))))]))])))))]])])])])]])])])))]))]]))]])]])]))])]]]]))]))])])]))])]])))]))))))]))))]))]]]))])))))])))]]])))]))))])])])))))]])]])]]]]]]]))]]]])]])]]]))]))])]))))))]]))]]])]]]])))])))))))]]]]))))]]))])])])]])]))])]]]]]]))])]))])]]))]]])])])]]))])])]]]])]]]]]])])))]]]]]]]])]]])))))]))])))]]])))])))]])]])))))]]]])))]])))]]])]))]])]])])))))]]])]))]))]]))))]]])]))]])))]]])]])])])]]])))])]]]))]])))])]]])])))])]])]])))]]))))])]])))]]]]])]]]))]])))]])))])]]))))])]]]))])))]]))))])])]])]]]]))]])))))]]]]]])]))])))))]))]]])))]]]]]))]])])]))])))]])))])]]))])])]]))]]))]])]]]])]]]])])))]]]]]]]])])]]]]]))))])]])])]))])])]])]))))]))]])]))])]]]])])]]))]]]]]))]]))]]]])]]))))))]]))]])))]]]]]))]]]]))])]])]]))]]))]))]])))))]]]])]]))]])]]]]])]]))])])])])))))]])))]])))])])]))]))]]))])]))]])])))]])])]))]])]]])))))])]))))]])))))))))))]]]))])))]]])]]))])]])]))))])]]]))])])]]])]]])]]])))]])))]]]])]))]]]])))]]))))])]))]]]]])])]))]]))))))])]]))))]]]))]]))]))]])))]))]))])]]]]])]]])))))])])])))])))]]]))]]]])])]]]))]))]])))))))))]]]))))))))))]])))]])]))))))]]])])]])))]]))))))])]]])]]]]))]]]))]]))))]])]]))]]])])))]]]))))]]))))]]]]])])])))]))]))))])]))])]]))))]])])]))))))]]]))]]]])])))]))]]]])]]])))])])]))]]]]])))])))]]]]]]))])))]))])])]]]))))))]))]]]]])]])]]])]]]])))])]]])])))]]]]]]]]]])))])]]])])]])))])])]]]])])])])]]])]]))))])])]]]]))])]]]])])])])))]]])))))]])])]]))])]))])))])]]))]))]))]]))))))]])])])]]]))]])])])))))))]]])]]))]]]]])])]]])]]))]]])]])]])])])]]]]]])]]])])))])])]]))])]]]]]))))]))]])]]))]))])]]))]])])])]]))]]))]]]])]))]]))]])])]]]])]]]])]]]])])]))))]])))))]))]])))))]))]])))]))])]))]))]]))])])))])])])]]])))])]]]]])))))])]))]]))])))]))))])])]])]))])])]))))])]])]]))))]]))])))]))))))]]]])])]))))))))]])])]]])]))]]))]))]]])]]))])])))]])]))))]]))])]])))]]]])]))]]]]))])]))]])]]])])]]]]]))))])]]]])]])]))]))])]]]))])])]]]]]]]))])])]))]))]]])])))))))]))))]]])]]))]]]]]))])])]])])))])])]]))])]))))]]])]))])]))])))))])])]))])]]]]])])]]]]]])))]]))])]]]))))))]))])))]])])]]]]))]])))]])])]])])]))]]]]))]]]])])]]))))]))]]]))])))]]])))])))]])])))]))]))]))))))]))]]])]]]]))]])))]]])]])])]])])))])]])))]])]]]))])]]]]]])]))]]]])]]))]])])]))]))])))])]]]]]]))))])))]])))]]]]))))])))))))))))])]]))])]))])]])])))]])))])))))]])))]]])]]]))))]]]])])])]]]))])])))]]]])])]]]]]]]])))]))))]))))])]])]]]]]]]]])]))]])))]))])]))))])])]])]]))]]]]]]])]]]]])]]])]]])])]]]]])]]]]])]]]]]]))]))]))]]]]))))]))))]])])]]))]]]))])]])))])])))])))])))])])]]])))])]))))))]))))]]]))))]])))])))])]]]]]]))])]]])))]]]])]]]]]]]]])])))]]]])])])))]))])))))])]]))]]])]])))]))]]))))]))]])])))]))])]))])]]]])]]]))]]]]]]))]])))]]]]]])]))])])]])))))])]]))]])]]]]])))]))]]]]))))])))]])])]))])]]))])])))]]]])))]])))]]))))))]])]))])]))]]]))]]]]])])]]])]]])])])]])]))]]]))])))]))])))])])]))]]))]))])))))))]))])))]]]])])]])))]]]]))))]]])]]])))]]))]])])]])]]])))]))]])))]]]))]))]]])]]))))]]])])))])]])])])]]]]))))])))]))))))]))]]])])])]]]))])))]])]]]])]))]]])])))]]]]))]))))))])]]]])))]]]]]))]])]])))))]]))]]])))])]])])]])]]])])]]]]])]])))))]]]]))])])]]))))]])))]])]))])]]))]])))]])))]]))])]])]))))])))))]))]]]])]])]))]))]]]))]])])))]]]]))])]])]]])])])))]))]]])])])]])]]))]]]]]]])]]]]))]]]]]])))]))))])]])))))]])]])]))]]]]]))))])])]]))])]]]]]]]]]]]]]])))))))))])))))))]]]])))])])])])))))]]]))])))])))])))))))]])])))]))]))]])]))])]))))]))]))])]]]]))))]]]])))])]]))])]]])))])]]])]]]))))]))]]]))]))]]]))]]))))])))))))]))])))))]]))]))))]])])]]]]]]))]]))])]])]]))]])]]])])]))]])])])]]]]]])]])]]]))])])))))]])])))]]]]))]])])))])))]])))]]))])]])])))]])]]]])])]))]))]])]))))])]]])]]])]))])))))))]]]]])))])]]]]]))))]))])]])])]]]]]))]))]))]))]))]]]))])]))])]]))]]]))]]])))]]]]]])))))])]]))))))])])))]))]])]))))]])])]))])]))))]))])])])]]]])))])])]))]]]]]]))])]))))))]])))]))])]])])])])]]]))))))))]]]]]]))))))]]]]]])))]]]]))]]]]]])]])]])])]])]]))])]])]]))]]]])])]]])]])])))]))]]]]]]]]]]])))))))]))]]))])]]))])]]])]])]])]])]]])))]]])]]])])]]]]]]])))]))]]]])))]])))))]])))]]]])]]]])))]]))))]))])))]]))]]]])]])))))]]))))]]]]))]]]]]])])]))])])))])])]]]]))])))])])))))))]]]]]]))))]]]]]])))]]]]))]))]]))]])]))))]])])])]]))]]])))]]))]))])]])))]]]]]))]])]))]])]))]])))]])])])))]))]]))]])))]])]]])]))]))))))])]])))]))]))))))])])]]]])]))))]])])]))])]]]))]])]))))]]])))])]])))))]])]])]]]]]))))))]))]))]])])))]]])]]]])]]]]])])]]]])))])]]]])])]])]]])])]])))))))])])])])]]]]])]]]])])]))]))))])]]])))])])]]]]))])))]))])]]]])]])]))])]]])])]]]]])]))]]]]])]]]]]]))]]]))])])]]]))])]))]]]))]))])))))])]])])]))]))]])))))]))]]]]]))))))))])]])]]]))))])))]]]]]))]]])]]]]]])]]]))]]])])))))])])]])])))]])])]])])]]]))])])]]])]))])]]]]]]]]])]])))])))]]]])]]))))]])]))))])]))]))))))]])]])]))])]]]]]]]))])]])]])]])]]])))])]]]))]]))]))])])])]))]]]]]))]]])])))]]])]))]]))])])))]))]))))])]))]))))))]]))))])])])))]]])]])))]))]]])])]]))])])])]]]]])]])])))))]))]]]]]]]])]))])])))]]])])))])])))]))))])])]))])))]]))])]]])])]]]))]]])])])))))))])))))))]))])))))]]))]]))]))])]))))))]])])]]))))])])]))])]))])))))]))]]))])))))]))]]))])]]]))))])])]]))]]))])])))])]))]]])]]])]]]])]]]])])])))))))]))]])]]])]]])))])]])))]]))]]])))))]))]))))])))]))))])))))])))])]]]]]])]])]]])]]))))])]]))]]])))]))]))))))]]]]))))]]])])])]))])])]])]]]))))]))]]]]))]))]])]]]]])]))]))))))])))]))))]))]]])]))])]]]]]]]])]))]]])])]]]]]])))]]))])]))]])))))]))])]]])]]]])]))))]))]]])])])]]]]]]]))])])]]]]])]))]])]]])])))))]]]]])))]])]]])]])]]]]))])))]]))]]]))])))]])))))))))))]])]]))])))])]]]]]])]]))))]))]])]])))])))))])])]])))]]])])))]]]]])))]]))]]])]]]]))]))]]]))]))))]))])]])]))]]]]]]]]]))]]])]])])]))]])]]))])]))]))]])))))])))]])))]]]]]]]])))]))))])]]]]])])]]]))])])))])])])))))]]))]]))])))]]))]]))]))))))]])))]))))]]))))])]]]])]]]])]]])])])]]]]))))))]]))))]])]]]]))))]))]]]]))]))]]))]])])))))))]]]])]))]]))))]))])]]))]))])]]))]))]))]))]]]))]]]]]]]]])))])]]))))]])])]])]))]))))]]])]]]]])))]))]]]]))]]])]))]])]))]])])])]))))))]]]])]))]))]))))])))))]]]]])])]]]))]])]))]])])))])]]]]])))))]])]]))]]]]])]))]]])]])]])))))])]]))]]))]])]]])]))))]]]]]]]])))]))])]]])])]]))])]])]]])]))]])))]])]])]]]])]))]]))))))]])))]))]))])])])))])]]]))]))]))])]])])])]])])))]]))]]]])])]]]]]]]]))]])]]]])]])))]]]])]]]])))]])]]]]]]])]]]]]))])]])))))])))]])])]]))]]]])))]]))]])])]]]]]))])]])])))]])]))]]]])])))]]]]]]]]))])]]]]]])))))))]])])))]))])]))]]))]))]]])])]]))))))))]]])])])])]]]]]]))]))]]))]]])])])]))))]]))))])))))]]))])))]))])]))])])])]))]]]])])])))]]]))]]]])]]))])]]]])]))))]))])]]]))])]))]))]))])]]]])]]))]]])])))))]]))]])])))))))])]]]))))]]]]))]]))]]))))))))])]]]]]))]]))))]]))))]]])))]]]])))])))]))]])]]]]]]])]]))))]))])]]))]]])])]))]])))])))))))]))]])))]))])]]])]]])))]]))])])))])]]]))]]))])))]]]])]])]]]])))])]]]))]]))])]))]]])])]]]])]]]]]]))]]))]]]]]]))])))))])]])])))]])])))))])]])]]))))))]])]]))]]]]])])]]]))]))]]])))))]])])])])]]]]]))))))])]))]]]])]])]])])]))]))]]])])))))]]])))]]])])])]])])]]])]]]]])))))]])])]))]]))))])]]))]))]]]])]]])])]))])]])])])]]]])]]]])]]]])])])]])])])])])))]])]])]))])]))))))]]])]]))])))]]]]])))])]]]]]]])))))]]))])]]]]])]]))))])))]]])))]])]]]))])]))]]]]]]]]]])]]]]])))])))]]])])]]))))]]])])]]))]]]]])))])))]]]]]]]]]))))]))])]]])]))))]))))))]])))]))])])])]]])]))])])))])]])]])]]))))))))))))))))])])]]]])]]]]))]]]]))]])]]))]))])])]]))])])]))])))))]))))]]))]]]]]]))]]])])]]]]])]]))])))])]]]]]))])]))]]))))]]]]]))])]]])))]]))])))])))]]))])))))])))))]]]))))]))])])]))])]]]])])]]))))])]]))]]]))])]]))])]]))))])]])]])))))))])]])))]))]))]])))))]]]))])))))]])]))])]])))])))))]]]]])])])])]])])]))]]))]]]]])]]])])))]))])]]]]])])])]]))))))))]])]]])]]])]]]]))))]]]))]))])]]])])))])]))])])]))]]])]]])])]))]]]))))]]])))]]))]))]))]))]]))))])]])))])])]))))]))]))))]]]))]])]])])))])]]])]]]]]]])])))))))))]]])])]))]])]]])]))))]]))))])))]))))))]))])]))))]]))])))])])])))])]))))))]])]]]]])))))))]))]]])))]))])]]))))]))))]]]]))])]))]]))))]]])]]]]))]]])])))])])])])]])])])]]]]])]]]))))))]]])]))]))))]]])))])]]))]]]]]]]]]))]]])])]])])])))]]]))])]])]))])])]])])))])]))]]))])])]))))])]]))])]))]])]])]]]]])]]]]]])))])]]))]]])))))])])]))))])))]])))]])])]])))])]]]))]]])))]])))]])])])]])]]))])]))])])]]])])]]]]]]))]])))]]))]])]]))))])])]])]))])]))]]]]))]])))))]))])]))]])])])])])))])]])]])]]))])]))))])))))]])])]]])))])))]])]])])))]]))]))]]]))]]])]]])]]])]]))))))))]]))]))))]]))))))]])]]]]]])]]))])]]]))]))]]]]]]]]]))]]]])]]])])])]))])])]))]]])))]]])]))])]))]]]))))]]]])]))]))])]]])])]]]])]]]]])]])]]])])]])))])))]])])]))))))])]])]]]]]))])]))]]])]))]]])]]])))]]])))]])])]]))]]))]]))]]]))])])])])])))]]]]))]]))]))]))])])]))))])]]])]]]))]]]]])]])))]))))]])]])]]]]])]))]))]))])))]]))]]]))))]])]]))))]]]]]])]))])])])))))))]]]]]]]]]])]])]))])))])])]]]]))]]]])]]])]))]))])))))))))))]))))]]]]))]]))])]))]])]])]))))))))))]]))])]))])])))))))]))])])]))]))))]]])])]))])]]])])])]))))])]]))])]]])]]])]])))]]))]])]]))]]))]]]]])]]]]))])]]]))]])]]]]))]))])]])]))]))])])]]]]])))])]]]])]])])]])])])]])]]])]])])])))])))])))])]]])))]]])]]))))])])]]]]))))]])]]]))]]]))])]]])]]]]))])]])]]]))]])]])]))]])]]]]))))])]]])]]])))))])]])]]))))))]]]]]))])))))]])]]))])])))))]]))))]])))]]])))]]]))))])))]]))))]])]])))]))]]]]]]])]])]])))))))]))]))))])]]])))]]))))]]]))]))]]))))]))))))])])))))])]]))]))])]]])))]]]]]))]]))))))))])))]]]]]]]))]])]]])]]])]])]]))))]]))]])]))]])))]))]])])]]))])]]])])])))])])))]])))]))]]]]]])))])])]]))]]])])))]]]))]))))]])])])]]])])]])])]]]))))))))]]])))])]]])])]]]])))]]]])]]])]]])]])))])])))))]])]]]]))]])])]]))]]))]))]]))]]]])])]])]]))))]]]]]))]]))]]]])))]]))])]]))]]))]])))))]))))])])]))])))))])]]))]])]]))]])]])]))])]]]))))))]])]]]]]))]]])))]))]))])]]]])]))))]))]]])]])]))])))]))])])])]))))]))))])])))))]))))))])]])]))))]])]])]])]]]))]))))))]))])]))]])]]]))]))]])]]])]])]]]]))]]]))]]]))]))])])])]]])])]])])])]]]]))]]]))]])])]]))))]))))]]]))])]])]))])]])]))))]]))])))]]))]])))]))])]]])]))))])))])]]]])]])))]])])]])]]])]))]))])]]])]]]))))))]]])]))]))]])]])]]]))]]))]]]])))]))])))])]]))])]]])))])))))])])))]]]]]]]]]])])]])]])]))])]]])))]]]])]])]))]]))))))])]]]]))))))))]]]]]))]]))]]]]))))))]))]))]])))]])]])])]]]]])]))]]])])])))]]))]])))]))))]])]))]))))))))))])))])])]))]])])])]))))]]]]])]]]])]]]]))])]))))]])]))]]]))])))])))]]])]]))])])]])])])])]]]))]])))]]])]]])))]))])))])]]]))]]]]]))))]])]]]))))]))]]])]])])]))])]]))])]]]]))])))]])]))))]]])))]]]]]]]))]]]]])]))]])]]]]])))]]))]))))))]]))])])))]])]])])]]))])])))]]]])))])]])]])]]))))))]])]])]]))])]])))]]]]))])))])])])])])))]]]])))))]))]))]]])))])]]))))))])])]]])])])))]]))]]))))))]]]]])]])]]]]]))])))])]]])))))])]])])])]]]])))))))]])]]]])]]))))))])]))]))])))]))]]))]])))))]]]])]]))])])))]]]])])]))])])]))))]])])])]]]))]]])))]))])])])]]))]])))))]]]))])])])])]))]])))]))]]]])])])])])]]))]]])]]))])]))]]))])]))]]))))]]))]]]))))])]]]))]])]]])])])]])]))])]]]]]]])])))))]))])]))))]])))))])]))]))])))))]))])])]])]]]]])]]])))))))]])])]]]]])))))))])]])))]]]]])]]))]]]]])))]))))))))]))]]])]))])))]])]])]]))))]))))]))]]))])]))]))))]]]))]))])))])]))]]])])))))))]])]]))]]]]])))])])])]])]])]))])))])]]))]]])))]]])]]]]])))))])))]]]])))]]))])))])))]])]))]))])]]])])))]))]))])]]]])]])]]]]])]])]]]))]]))]]]])])]))]))])])))])]]]))]]])))))])]]))]]]))]]]))]]]))]]])])]]))]))]))]]))]))))]]]])]])]]))))])])]))]))]))]]])])]]]]])]])]]]]]]])]]))]])))))])])]]])))))])]]]))])]]]))))]]]]]])]])]))]]])]]]])]))])])))]]))))])])])]]])]])])]])))]))]]])))))]]]))))]))))]]])]])]])]]])]]]]))]]]))])]]))]))]]])))])]]]))]])))))))))]])))]]])))))]]])]))])))]]))]))]]]]]])]))))]))))]]])])])]]]]])]])])])))])]]]))])))]])])]]]]]))]]]]])]])]])]])])])))])])))]]]))))]]])]))))]))]]))])]])]]))))])])]]]))))]]))]])]))])))]]]]))])]]]]])]]])]]))])]])])))])])]]])]))]]))]]]]])]]])]]]]]]]]])))))]]])]])))]))]])]))]))])]]))]]])]))))))))))))]]))))))])])))]))))])]]))])]]])]))])))]]))]]]]]])]))))))]))]))]]))]]))])]))]]]])])))]))])])])]])))])])))))))]])]]])]]]))])]))]]])]]])))))]]))]]])))])))])])]))))]))])]]]]]]))))))]]]))))]]])])]])])]])]]]]]])]))))))]]))]]))])]))))])])))]])))))]]])]])))])])]]))]])))))]))]]]]]]]))]]]])]]]]]])))])]])]]])]]])])]]]))]))]))]])]]))]]]))))]))]]))]])]]]])))))))]]])))))))])]]])])])))))]]])])]]]]])]]))])))]]))])]]])))]])])]]])]]]]]]]]))]]])))]])]))])])]])))))]]]]])))]))]])])]])))))]]]]]))))))]])])))))])])))))]])))]]))]))))]]))))))]])]])]))])]]]])]]]]]])))))]])])]))]))])))))))]]]])])])]])]]]])])]))])))))))))]]]]]])]]]]])])])])]]))])))]])]]]]))]])))]]]]])]))))))]))])]])])]]))]])])]]]]]))))])))]]))])])]]]))]))))]))]))]]]]))]]))])))]]))])]]])])]))])])]))]]))]])]]])])))]))]))])))])])]]))]])))))]]]]))]]))]]]))]])]]])))]]))]]))])]]))])]])]]]])]])))))])))]]]]]]]]])))]]])])]]))]]))]))))]])))]]]))]]])))])))]])]))]))])]]))])))]))])]]])))])])])))))])]]]])))]]]])]]]])))))])])])))]]))]])])))))]])])]])])])]]])]]]]]))]))])]]])]]]))]])])]]]])])]))))))))))]]])]))))]])])]]]]]]))]))]]]]])))])]))))))])]))]])]]]))])]]])]))]))))])])])]]]]])])])]]])))]]]))]]])])))])]]])]])]]]])])]]])])]])))]))]])])])]]])])]]])]]))]]]))]]]]]]]])))]))]]]]]])])]))])])]]]])]]]))]]]))]]))))))]))])]]])]]))]]]]]))])]))]))])]])]))]]))]]]))]])))))))])])))))]]))])]))]]])])]]]]]]])]))))))))]])]])))])])]]]]]])])))]))))]])])])))]]])])))]]))]))])])])))]])]]))]))])]))]]))))))]))))]]]]]]]))))))]]])]])]])])])]))]])])])))])])))]]]]]))]))))])]]]]]]])]]])]])]]]]))])]])])))]]]]]]]))))]))]))))]]])]]))]]))]]))))]])]]]]))]))])]])])]])]))))]]])))]))])]])]]))]])]])]))))])]))))))]])]]]]))])])]))))])]))]]])))]])])]))]]))])))))))))]]]))]])]]]]]))))]))])])])]]])])]]))))])]]])]]]))])]]])))))]]])])]))]]])])))]]]]))]))])])])])]]]])]])])]]])))]))]]]))])]))))])]]]])])]]]]])])]))))))]))])]))]]]]]]]))))))]]))]))]])])]])])))))]]]]))]]]]]]))]))]))))]])])]]]]]])))])])]]]))]]]])))]]))]])]]]])))]]]))))])]])))]))])))]]])])])]))))))]]])])]))]])]]]])]]])]]))]])])))))]]]])))))]))]]]]))])]])]]]]]))]]]]]))))))))])))])]))))])]])]])))]])]]]])]))]]])]]]]]]))]))])]]]))))]]))]))))))])]))]]))]]]])]]])))]))]))]]])]]]))))))]])]])))])]))]])))]])])]]])]))))])])]])])]))]))]])]])]])]]))])]])]]]]]]]])))]])]]])]]))]]]]])))])]]]))))]]]]]]))))]]]])]]])]]])]]]]]))]])]))])))]))]]]]]))]]]])])))]]]]))]]))]]]]]]])]))])]])])))]]]]]])]]]]]))]]])])]]]])]]]])]]))))]]]]])]]))])])))))))]])])]]])])])]]]]])]]]))))]])])]))]]]])])))))))]])]]])]]]))]]]])]]]]))]])))))]]]]))))]))]]])))]])))]]))))]]]))))]]])))])))]])])))])]))]])]])]]]))]))]])]]))]]]))])]])]]]]])]]])])))]]])])))])]])]]]]]]]]]))))))])]]])])]])]])]))))]]))]])]))))))]]])]))])]))])]))])]))))]]]]]))))]]])])]]]]))]])]]))]])]]))]]]])]))))]])))))]))])]])])])]]]))]])]]]))]]]]])))))))]]]])]])]]))]]])))))])))]]))]]))))]))]])]]]))))]))]]))]]]))])))])])))]))]])]))]]))]]))))))]]]))]]))])))]]]])]]]]]])]])]]]])])))]))))]]))]]]])]])]])])]]]))]))]]]]))])]]])]]]]]])))])]]]))))]]])))]]])))))]])))]])]]])]])]])])]]])))])]]])))])]]))))]))]]])])]))))]))])])))]]])]]]]))])]]))]]]]]))])))))])])))]))))])]])])])]))))]])))])]]]]))]]])]]))]])]]]])]]])))])]]]]]))]))])]))]])))]))]]]]))]]]])])))])])]]])]]])]))))]])])])]])))])]]]]]))]))])]])))])))])])])))]]]]]])])])]]])))]]]))]])]))))])]]]]]]]]]))]])]]])]]]]))])))))]]]]])]])]]]])])])))]))]]]])))]))])))))]))]]])]]]])])])))]])])])]))]]))])]))))]]))]])]])))]]]]]]))))))]]]]])]))))])])]])]]]]))))]))]]])])]]]))]]]))]])]]]]]))))])]])]]])))])]])]]]]]]))]])]))))))]]))]]]])))))]))]]])]]]]))]]]]]]))]))]])))]]]))]]]]])))))]])))])))]]))])]]]]])]]]])))])))))]]]))]))]])])])]]]))]]]]))))))))]]))]])))]])]]]])])]]))])))]]]]))])]]]]])))))])])]])))]]])))]])))))]])]))]))]]]))]]]]])))]])))))]])])]])]]]))])])]]]]])])]))]])])])])))])]]])]]]])))]]]]))]])]]))]]))]]))]]))])])])]))))]])])))]))]))])]]]))]))]]))))])))]]]])]))]))])))]]]))])]])]]]]])))]]]]])]))])])])]]))])])])))]))]))]))]])))])]]))])])]))]]))])]]]))))]]]]]]])))]]]])])])])]])])]))))]]]])]]]))]))]])]]]])]]))])]))]])])]]]]]]))])])))]))]]))]]]]])]]))))]]]]]))))]]))))))))])]]])]]]]])]))])]]])])])]]])))])]]]]])])]])]])])))]]]]]])))]]])]])])]]])]))))]]]])))]])]))]])))]]])]]]])))]]]]))]])))]]))))])))]))])))])]]))]]]]))]])])]]]]]]]]]))])])]]))))]])))])]))]])]]]])]]))])]]]])]]]])))))])))]]]))])]]]])))]])))))))])]))])]))])]])])]]]))]]))]]]]))]))))])))))]])]]]]]]))])])]])))))])]])))]))]]])]]]]]))))]]])])]]])])]])))]]]))]]])]]]])]]]])])])))))]])])))])]]]))))]]])])]])))]]))))]]))])))]]]])))]])))])]))])]]))]]])))))]]])]])])]]]]]]]])])]]])]]))])])])])))]))])))]]))]])))])))]]])))]])])))])))])])]]]]]]]))])])])])]]))))]]])]])))]]]))]]))]]]]]])]))]])]]]])]]))))))))]])]])]))))]])]])]]))]]))]]]])))]]]))]])])]])]]])]]))]))])]]])]]]))]]))]))]))]])))]]]]))))])])))]))))))])]))))]])]]]))))]))])]))]]]))]))]]]))]))))])))))])]]]]]))]]]]))))))]]]])])]))])]))]))]]])])))))))]])])]))])]]))))]]])]]]))))])])]]))]]]])]])))]]])])])]))]]]]]]])])]]]]]]]])])])]]]]))))))])]]))]]]])))]])]]))))))))))]]]))))))])))]]]))]]]]]]]]])))])]]])]])])]])])]])])]))])]]]]))])]])]])])]]]]])])]]))]])]))))]]]]))]]])]))]]))))]]])]])))))]]])]]))]]]))]])))]]))]))))])))])]])]]))))]])]]]])]]))))]]))))]]]]])])))]]]])]]])]]]))])]])))))])))]))])]))]])))]])]))))]]]))))]))]))))]]]]))))])))])))))))])))]])))))]]))]]])))))))))))]])]]]])]))]]]]]])]]))])]))))]])]])))))]))]]]])])]]]]))]])))])]]]])]))))]]))]]])))))]])]))]]])]))]]]]]]]))]))))])]]))))]])]]))]])))]))))])])))))]]])]]]))))]]))])]]]])]]))]]])))))])])))]))]]]]])))]])))))]])]]]]])])))]])])))]))])]))]))))]))))]]))]]]])]]]]])]]]])))]]]])))]])])]]])]])]))]]))))]))))))]]))))]]])]]]]]])]])])])])))]))])]))]]]))]]]))))]]))]))]]))]]]]]))]])]])]])]])]]]]])]))]]))])])]])))]]))])]))))]))]]]))]])))])))])]]])])])]]])]]))]]]))])]]]))))]]))])]])])))]])]))])]))])]])]])]]]))]]))))]])]))]]]]])]))]]]))))])]])]))]))))))))])])]]]))]))]])))])]])]])]))))])]])))]]))]))]))))])))))]])]]))]]]]))))]]))]])]])))])]])]]))))))]]]))))])]]))))])]])))])))])]]))]]])))]])])]]])]))]))))))]]]))]]]]]]]]))]]])))]]]])]]))))]))]]]])]]]])]])])]]))]))))]))])]]]]]])))]]])])]])]]]]]]]])]]])])]]))])]])]]]))]])])])])))]])])))))]]])))))]))])])]]]]]]]))]]])))]]))])))]]))]]]]))])]])])]]])]]))))]]))])])]]]))))])]))])]])))]])]])]]])]])))]))]]]]]))]]))]])]))]]))])]]))])]]))]]]))]])]]))])])]))])]]))))]]]]]])]])])]]]]]])]))]]]]))])]))]))]))]]]]]]])]))])))])))]]])])))])))]])]]]])))))]))])))]])]])]))])]]]]]])])]])])))])]))])))))))))]])])]]])))]]])]])]))]]])])))]))]]]))])]])]])]]]))))]))]])])])]]))]))])]))]]]]]])]))]])])]]])))]]])))))]])])]]]]])))]]))))))])))]))]]])]]))]])]))])])]]])))))))))))]]]))]])]))]])]]))]])])))])))]]]])))]]]))]))]]]])])]]]])))]]])))]]])]))])]]]])]]]])])])))))))))))]])]])])))])))))]))])]]]])])])))))])))])])])]]]]))])])])]])])]))))))))]]])))])]])])])))]))])))))]]])]))]])]]]]])))]])))))]]]))))))]]])])]])])])))])]]])])))]])]])]]])])]]])]]]]]))))])])]])))]]]]])]])))))])))]]))]))]]]]]])))])])))]]])]]]))]]])]]))]]]]]))]]])]]]]])]))))))]])]]))]])]])]])])]]]]))]])))))])])]]]])])]]])]]))]]]]))]))]]]]))])]))]])]]]))))])))]]))))])]]]]]]]))])])]])))))]])])]))])))])]))]))]]]]))]))]))]]]))]))]))]]]))))]]))]]]))]))]]]]))))])])])])])))])))])]])])]]])])))]]))]]]]))]]]]))]))))))))]]]])])]]]]])]]]]]]))]))])))))])))))]]))]])))])])]])]]]]]]]])]))]])])))]))]))]]]]]))))])]])))]])))]]]])])]))]]))]])))]]]]]))))))]))]))]])]))))])]]])))]]])]])])]])))])])]))]])])]])]])])]))))))])])))]]))))]]]]]]]]]))))))]))])))]]]]]]))])))]]]))])])))]]))]))]))]))]))])]])]))]))))])])]])]))]])]]]]]])]]])]))]]]))]]))))]])]]]])]]])))))]])]))]]))))))]]])]]]]]])]]]]))]]])])))])]))]])]]))])))]])])]])]]])])])])])))))]))))))]))]]]]]))]]]]))]))]]))))]))))])]])]))]))]])])])))])]))])]]]]]])]]])]]])]])))])])]]]))])]])))]]))))]]))]))])]])]))]]]))))])))]]])))))]]]]])))]]))]))]]]])]]]])]])))]]]))]]))])]))))])])])))))])]]))])]])))]]]])))]]]))))]]]])))))]))]]]])]))))])])])])]]])]]]))]))))]])])]])])]))))])])))]]])))]])))])])]]]))]]]]])]])))]]))])))))])])])))]]])]]]]])))]])))))]))]]))]]))))]])))])])])))]]])])]))]])]]))))]])]))))]]]])))])))]]))]))]]])]]]))]]))))))]]])])])]))])]]]])))]]])]]])))))]])]]))])))]]))])]))])])])]))]]))))]]]]]]])))]]])]]]]]))]))]]]))))])]])]])]]]))]]])))))])]]])]]]]))]]])))))))])])))))])])])])))]])]))))))]]]])])))))]]))]]])]))]])])])]]))]]]))]))]]]]]]))))])]))]]))))]])]]]]))])))]])]))))))]]])])]))])))))))]]])]]]]))])]]]))])]))))]))]]))]))]]]))]])]]])]])]]]]])])))]))))))])]]]]]))]])])]]]))]))])])]]]))))]]])]]]))]])))))])]])])]]]))]))])])])])))])]])]]]])])]]])]]])))]]]])))]))])])])))])))])]]])))]]]])))])])])])])))]]]]])]]]]))))]]])]])))])]]]]]])])]])])))])]]]]])])]]]]]]))]])]]))]))]]))]])]]]])))])]))])]))]))))]])]])))]]))])))]])]])]])))]]))]])))))])]])]]]]])]])]))]]))])))))))])]]]))]]])]))]]])))]])])]]))]))]]]]))))]]))))])]))]))]]])]]]))])]]])]])))])]])])))]])))])])])]]])))])])))]]]]))))]]]])))]])))])]]]]]))]])]]]])]]]]))]]))))))]]))]])])])]]]])]]])))))])]))])]])]))]))]])])))])])]])]])])])]])]]]]]])])]]])))])]]))]]]]])]))]]))))]))]]]]))]]]]])]]])])]))]))]))]])]])))]])]]))))])))))]]))]]))])))])))])]])])))))]]]]))]])])])))])))])]]]))]])]]))]))))])]))]])]]]]]])])))])]))])]]))])]))])))]]]])]]]))]]]])]))])]]))))])))))])))]]))))])))))]]]]))])))]]]))]]]]])])]]))]]]))))]]]]))))]]])]]))])))])])))])))]))))])]])))]])))]))]])]]))))])))]]]))]]))]))])]])]))]]])]])])))])]]])]))])))])])]])))])]])]))))])]]]]]]]))]]))])])))))]]]])]]])])))]]))]])]]])))]]]]]]]))]])))]])])])]])]]])))))])]))))]]]))]))]]]))]]]]]]))])])]))]])]]))])))]]))])]])]])])))])])]))))])]))])])]))))])]]))]]))]]])])))]])]))]]]]]]]]])))]))]])])]])]]]]]]]))))]))]])]]))]])])]]))])])))])]])]]])])])]]]]])])]]]]])])))]))])])]]]]))]]))))])]]]))]))]]]]))]]]])]))))))]))])])]]])]]])])]))]]]))])])])]]])]))])]))])])]))]]))))])))))))]]))))])]]))))])])]]))))))))]])]))])]])))]))))]))])])))))])))])]])))]))))])))]]]))]))]]]]])])]))])])]])])))])))]]]))]])]))))])]]]]])))])])]))))])])])))]]]]]))]]])))))]])])])]]]])]]))))]]])))]]]]))]))]])])))]))]))]))]))))]))])])]])]))]])))))])]]))]])])]]))])])))]])]]]]])]])))))]])])])))]]]]]]))))])]))]))))))]])])]])])))])])))]]])))]])]]))]))))))]))]]])]))]]))))]]))))))]))))]]]])])]])))]])])])]]))]))]))])))]))]])])])]]]]))]))))]))])))))]]])))]]])))]]])))]))])]]))]])))]])))]))))]])]]])))]))]]))]]]]]))]]])])))])]))])]]))))))]]))]))]]]))]))]))]]]))))])]]))]))]]]))])])]))])))]])))])]]]]))]]]))))])]))]))]])))]])))])]]]))])]]])])]]])])])]]]]))])]]])]))))]])))]]]])])])]]))]))]]]]]]]]])]])))))))])]])]])])]]]]]))))]])])]])))))]]])])]]]]])])]]))])))]]])]])]])])]]]]]))]])))))])]]])]]]])])))])]]]]])]))]]])]])])])]))))]])]]))]]))]]]]))]))])]])]])])))]]]))))]))))))]))]]]))))])])))])])))]]))]))))]]]])]))))))))))])))]])))])]])]]]]]))))))]))))]))]])))]]))])]]])]]])]))])))])]))))))])])])))]]]]))]))))))))]]])]])]]])))])]])]]))]]])])]])]]])]]]))])))])]]])]))))]))]])))]))]))))]]]]])]]])])]]))])]]]])]])]]]]]]]))]]))]])])]])])]])))]])]))]]))))]]))])]))))]))]]]]]]])))))]])))))))))])]]])]]]))]]])]])))]))]]])]]]))))]))]]]]))]]))])))))])]]])]])]))])]]]]]])))])]]]]]]]])))]]))]])]]]]]])])]]]]]))]])]])))]]]]))]]]))))]]]])])]]])]]]]]]]])))]])])])))]))]]])))]))])))]))]]))]])))]])))))]))])]]]]]])))))]]])])]])])]]]]])])]]))]]])))]])]]))]]))])]]))]))]])]]])]))]]))])]))]]))))))]])]]]]]])))]]]]])])])]))))]))])])])])]]])])))]]))))))))))))]))]])])))))))])))))]]))]))))]])])))]])]))]))]]])]]))]))]]]))]]))])]])]]))]]]))))]]))])))))])])))]]]]))))))]]])))]))])))]]))]])]])]))]]))]]))])])]))])]]]))]))]])]]))]))))))]))]]))])])]])])]]))])])]])]]]]])))))]]])]]]])))])]])])])))]))))]]]])])))))))])]))])))])]))])]]]]]])))))]]])))]]])]]]]]]]))]))]))]]]))]]]))))))))])])]]]]))]))]]))]]))])))))]]]))]))]))))]]]))]])]))]))]])]]]])]))]]]]]))))]])])])))])]])])]))]))])]]])])]))]]]]]]])]))]))]))]))]]])]])]))])]]]]]])))))]]]))))]]]]])]]]]])]))]])])))))))]))]])))]))]]))])]]]))))]])))]]])))))]])])))])]])])))))]])))))))])))]]))))])]]]])]]])]])]]]]))))])])))))])])))]]]]]))])]])))]]]))))]))])]]))]]])]))]]]))]]]])]])]]))]])]))]]])]])])))))]]]]])))]))))))]])]]]]]])]]]]))))])]]]))])]]]])]]))]])]]]])]])]])]])]]])]))]])]]]]]))]])])]))))))))])])]))))))))]]]]]]]]]]))]]])]]))])))]]]]))))]))])))))]])))]]]))))])))]]]]))])]])))))]))]]]]))])]]]]]]]]]]]]]]]]))]]])]))])]))]))]]))])))))]]])]]]])])))]]]))]]]))])]])]]])]])]]])]]))))))]))]]))))]]]])]))]]]]]]]]]))]]])]]))))))))))])]]])))])]])))]])))])]]]]]))]]]))))])])])])]))))]])])])]])]]))))]]))])])]))))]]]]))]]])]]]]))]])))]])])]])]]])])]))]))])]))]))])]])]))])))))])]))])))))]])])])]]]]]]))]]]))))])])]]])])])))))]])])))))]])]])]))]]]]]))])))]]]]])])])]]])])]])))]))]]))])])]]))]]]]])])]])))))))]))]])))]]]))]]]]]))]])]]]]))))))))])])]])))]]]])))])]))])))))]]]))))])]))]]))]))]]]))))])]]]]))]]))])]]]])]]]]]))]))])))]))])])]))])))]]]])]))]))))])]])))]])]]]]]])]])]]])]])))]]])])]))]))]]]]]]])]))]]]])])])))]])])]]])))]]]]]])]])]]])))]]]))))])]]]))))]))))])]]))))]])]])])]])])))]))))]]))])))))]))]))]]])))))]]]]]]])]))]]))]]))])))]])))))))]])]])])]]]]]))])]]])])))]))]))]])]))]]])))])])])]])]])]))]))])])))))))]]])])])))])]])]]]])]])]]]]]]])]]))]]))]]))]]))])))]]]]]]]))]))))]]]]))])))])])]]))]]))]]]]])]]))]])])]]))]]]]]))]))))])))]]]])]]])])]]]))])]]])])]]]])])])])))]]]))))])]]]))]]])]]))]))]]]))])))]])]])]))))))])))]]))]]]])]]]]]]]])]))]])))]]))])]])]])))]]))])]]])])])])))]])))]]))))))]])]))]]]]])))]])))]))])]]))])))]])]]]]))])]))]]]))]]]]])]]))]]])))])]]]]])]])))))])]])])]]]]]))]))])))]]]))))))]]])]]]))))]))]))]]]))]]])]]))])))]]))]]])))]))]))]])]]]))))]]]))])))])]])])]]]]])))]]]))))]]]]]]]))]]])]]]])]))])])])])))])])])))]))]]]))]]]]))])]))))]]]))))))))]])))]))))))]))]]]))))]]]]]]]]))])]]]])])])]))))))))])))]])))]]])])))))))])]]])]))]]]])))))))])))]))])])]]]])))))))]]))])])))))]]))))]]]))]])))]))])]]]]]]]]))]))))]])]))))])])])]]))]]]])))]]))))))]]]]))]]]]))]))]]])])))))])))])])]]]])]]]]))]]]]])]]]))])]))))]])))))]]]]))]]])]))]]]]))]))]))]])]])]))]])]])))]])])]]))]))])]])])]]]]]])]))))]])))]))]])))))))))))])))])]])))))]))]))])])]]]])]))])]])]))])]]])]]))]]])]]]))]]))))))]))]])]]]))))]]]])))))]))]])]]))]]))))))]]))])]]])])])))])]]])]))]]])])])]]))))))])]]]])]]))])]]])))))]))))])])]])]])))]]]])]])]]]]]]]])]))])])))]]))]]]])))])])])))))])]]])])]]))])])))]])))]]]]))]))]])]])]])]]]]))]))]))])])))))])]]])])])))])))]]))]])])])))]])))])]]]))]]]))]]))]])])])))]))]])])]])]]])]]]])])]))]]])])]]])]))))))))))]]))]))])]))])])])))]]))]))))))]])))))]]])])]]])]]])]])))))]))]))]]])]))]))]]))])))])]])])]))]])]]))])])]])]))])])])]]))])]]]])]])]))]))))))))]))]]])))))]]]))]))))]]])]]])])]]]))])]])))))]))])))))]])])))))]])])]]))]])]]]]))]]))])])))]]]))))))]])]))]])]])])]))]))])])]]))))))]]]))])))])])))]]]]])]])))])]))))))]]))])])]))]]]]]))]))]]]]]])))]))))]]]]])])))))])]])]]))]))]]))))))))]])]])]]))))]])]]))]]))])))]])]]]]]]]))))))]]]]]]))]]]))))]]))]]]]]])]))]))]])])]]]]]])])))]))])])]))]]]]))]]]]])]]]]]))))))))]))])]]]]]]]))])])]]]))]]])))])]]]]))])])]))))]]]]]])]]])))))]])])])))])]]])]])])]]])]]])]]]]]))]])]))]]]))]]]])])]]))]]]])))))]))]])])])))]))])))])])]]]]]])]]])))])])])))])))]))])))))])]]])])]]))]]]]]])]]]]))]]]))]])]])]])]))]))))]]])]]]))])]]))))]]))]))])))]])])))])])]])])]]])]])]])))]]])))])]))))]]])]])])]))])]]]]])]])]]]])))])))]]])]]]]]))]))]]))]])])))]]))))])]]])]])]]]]))])]]]]]]]]))))))])]]]]])]]]))))))]))))]))]))]))])]]]])]])]]]])])))))))])]]]))]))))]))])]))])]])])))]))]]]))))]])]]])]))]]))])])]]]]])])]]]])]])]))]]])))])))])]])))]]]))))]]]])]))))))))]))]]]])])))))]]]))]]]]]]))]]]))))))])])))))]]]]])])]]]]]])]])]))))))])]]]))))))]))]]])])]])]))]))]])))]]])]]]]))]]])]]]]]))))])]]]))]]]))]]))))]]])])]]))))))]])]]])]]))]]]])])])]])))])]]]]]]))])]]]]])])]]])])]]))))]]]]]]))))]]])]]]])])]])])]])]]])]])))]]])]]]]))])])))]]]])))]])]]]]]])))))])]]))])))])]])])))])]]])))]]]]])]])]]])])]]]])))))]]))]]])])])]]]]]]])])])])])])))])))])])]])]]]))]])))]))]]]]]]])]])]))])]]]]])]]])])]])]]))]])])])]))])))]))])))]]]]]]]]]]]]]])])]]])]])))])))]))]]])])]])]))]])]]])))]]]])))])])])]]])]))))]]]]]])))])]]]))]]]]]))]]]]]])))])])))])])])]])]]]])])]))])))])])))]]]))))]]]])))]))))]])])]])])])])]]))])])]]])]]))]])])]])]))))))]]]))])))])]])]]])])]])])])]]])])])]))]))])]]]]]])])])]))))]]]]]))])]]]]))])])))]])]]]]]]]])]]]))))]]])))))]))))])]))]]])))])))]]))]])]))]]]]])))]))]])])]]]]])))]]]])])))]))]]))]))))]])]))]])]]]))])]]])]])]])]))])])])])]])])))]))]))])])))]]])])]])]))]])]])]))]))])))]))])])])]]])]]])]])]])])]))]])]]])))))])))])))]]])]))]]]]])]]])]))))))]]))]]])]))])])]])]]])]]]]))]]]])]]]))))])]]]]])]]]]])]))]])])]]))])]]))]])])]]]))]))))])))))))])]]))]])]]]]]])]))])])]])]])])]])]])))]]))]])]]]])])))])])]])))))])])])]]]))]]]]))])])]]])))])])))]]]]]]]])]]])]])])])))]))]]]))])]))]))])]]))])))])))]])]]]))]))))])))]])))]]))]]]]]))]]]))])])])]]])])))))))])])]]))]]])]]]]]])])]]]))))]])))))))]))])]])))))])]]]]))]]]]))]]]]]]))]]]]]])]))]]])))])))))]]]])))))]])]])])]]))]))]])))]))]))))))])]]]]]]]])]])])]]))]]]]])]])]])])]]])]])])]]]]]]]))])])]]]])))])]))]])])]))]))])])]]]]]])])]))))))]]))))))]])]]]))]))))])]])]]))])]]))]]]]]])])))))]]])]])])]]])]))])])]))))]])])]]])))]))])])))])]]]]]))]]]))))]))]))])]]]]])]]]])]])])]]])]])]))]]]))]))])])])))])])])])))])]]])))]])]]))])))))])]]]))]])])))]]))]]))]]]))]))]]]]]))]]]]))]])])))]]])))]))]]])]]])]))))]]))]])))))])]]))))))]]]]))]]]])])]))]]))))])])]]))]]])]]]]]]])])])]))]]]]))))))])]))])])])))]))]))])])]]]))]])))]))))))]]])))]))]])]))]]])])]]])]))]]]])]))))))]))])]]])])))]))))))))]))]]])))]])])))))]]]]])])))]])]]]])]]])]])]]]]))])])]]]])]]]])])]])]]])]))])]])))]]]))])))]]))]))))])]])))))))]]]]])]])])]]]]]])]])]])))))))])]])]))))]]]]]]])]]]])]))))]])]]]]]]))])]))))))]])]])))])])))))))])])))]))]]]])]))))]]))]]])]])))))])]))))])]]])))))))))))])))))))))])]])])])])]])])]])))))])])))))])])])])]))))]]]]])]]])))))))])])]]]])))]]])))])))])))])]])]]])]]])]]]]]])]]]))]]))])]))])))]]])]]))]]]))])])]))])]]]]))))))))))))])))]))]))])]]])]]]))]))))]]]]])))]]])]))]]]]))]]]))]))])]]))))]]))))))))))))])]))))]]))))))])]])])]))]))]]))])]])))))]])]]])])]]))]]))]]]))])])))]])]))])])]))]))))])])]]]]))]]))))]]]]))])))]])]]]))]]))]]))))))))]))]]))]]]]]])])]))]]])))])]))])]]]]])]))]]]]]]]]]]])))))))]]])))]))]]]]]])))])])))]])]])))))]]))]))]]]))]])])))))])])])]]]]]))))]))))]]])]]))))]]]]])]]]))]))])))]])]))]]]))]])))))]))))])]]]])])))))))]]]))])]]]))))))]]]])))]]))))]]]))]]])]]]))]])])]]])]])])])))]]]]])]]]])))]]])]))))]]])])])]]))])))]]])])))]])])]]])]))))))]]))))))))]]))))]])])])]])]]]))]]))]]]])]])])]]]])))])])]]))))]))))]])))])]])])]])))])]))))]]]]]])])))))))]])))))))]])))]]))]))]]))))))]]])]))))]]])])))))])))]))])]))]])))])]]))]])))])]]])])))]]]]]]]])))))))))))]]]]]]]]]])))]])])))))]]))]))))])])]]]])]]]])]]))]))])])])]]))))])])))]))]]]]]])])]))]]]]])]]]]]]])]]]]])]])]))]))])])]]])))))]]])])]))])))])])])))])]]]])))))]]]]])]))]))]]))]))])]))]]]]]]))]]))]))]]))])))]])]]]]]))]]]])]]])]]])])])))]]]))]]]]]])])])))])))]])]]))]]]]])]]]]]])))]]))])]])])]]]]]])]]]])])))]]))))]))]))])]]))])]))]]))]]]))]]])]))]]])]]])]]]]]]])]))]]))))]))])]])])]]]]]])))]]]])])]]]])))]]]])])))])]]))])]]]]]))])])])]))])])]]))]]))))])]])]]))))]]])]]]]]])]])]))))])]]))]))))]])]])]])]))]]])])))]))])]]])]]))])))])]])]))]])]))]])]))]]]]]))]]))])]))]))))])]]]))]))])])])])])]]]]]]])])])])])))]])))]]])])])]])])]))])]))))))]))))])))))]]]]]]])]]])]])]))]])))]))))]])]]])]])])]))]])))])])))]]])])))]])]))]])))]]])]]]))]])))])))))]])]]))])))])]))])])])]))))])]])))])))])])]))]])]]]]]])))]))]))))]))))]]]]]])))]])])))])))]]]])])])]]]]]))]))]))]]]]])]))))))))]]))]]]))]))))])]])])]]]])))]]))])]]))))]]]]]))])))]])]]]]])]))]))]])]))]]]]])])])]]))])]]))]]])])]))]]]])])]]])]])))])]))]])]))]]))])]]]]])]))])))))]]]]])))))]]])))]])])]))]])))]])])])])]))]])])]]]]))]]])]))]]]))]]))])))]))]]]]]))]]])))])]]])]))]))]])]])]))]]]))])])))]))]))]])])])))])]]]))])))))]))))])]]))))])))])]])])))]])))]]])]))]))]]))]]])))])])]]))))]])]]]]]))])))]])))))))]])])]))])]]])]))])])))]])]]))]])]]))]])))])]])]]])])]]]])]))])))]))))])))]]])))])]]])))]))))))]])]))))]]))))))]))]]]))])]]])]]]])))]]))]))]]]]))]])]]])))]])]]])]]])))))]]]]))]]))]]])])))]]]]))]]))))]]]]]))]]]])]])]])))])))))]])))]]]])]]]]]]]]]]))]]])]]]))])]]))))))]])])])))]))))]])])]))]]])]))]]])))))]]])]]]))])))]]]))])]))))]]]]]]]]]]]]]])])))])])])]])]]]))))])]]]]]]])]])])))))])]]]))))]]])]]]]))])))]]]))])])]]])]]))]])]]]))))]]]]])))))]]])]]]]))))]))))))]]]]))]))]])))])]]])]])])])]]]]]])])))]]))))]])]))]]]]])])))])]]]))))]))])))])))])))]]]]]]]]])])))))]]))])]])])]]))]]]]]))))]))])))))]]]]])))))])]]])])))])]])]]]]])])]]))]])))]]))]))))))])]]])])]]]])])])]])))])])]]]]]]))]]]]]]]))))]]))))])]])]]]]]]]]))])))]]))])]))))]))))]])])]]]]))))]]])]]))]]]]]]]]))]]))])]])]))]]])]])))]]]))))]))]]]))])])))))]]))]]]))]]]))]))))]])]]]])))])])])])])))]]]])]]])))])]]])])))]]])])]]]))))))))]]]))])]))])]])))]]])))))]]]]]))])))])])]]))]))]))))])))))]])))]])]]])]))))]))]]])])]]]]])))))]]]]]])]))]])])])))))))]])]))])]])])]]]]]))]]))]))]]])))])))]))])]))))))]]]))]))]]]))))]))]])]])))))]])]])]]))]])))]))))))))]]])]])))]]))]])])]]))])]]]))))))]])]]])]))]])]))]))]))]]])))]]]]])))])]))))]])]]]]))]]))))]]))]]))])))]])))]]]]))))])]]])]]]]))]]))]]))]])]]]])))))))))]]))))]])))]])))]))))])]]]]]]])))))])))))])]))])))])]])]]]])]]))))))]]]]])]))]])]]]))])]))))]]]]]))]))])))))])]))]]))))))])]])]])]]]])]))])]]]))))))))))])]])]]))])]))])]])]]]))]]))))])]]])]]])])]]))])]]]]]]]))])])])]))]])))])])])]])])])])]])))))])]])]])]]]]]]))]]]]]])]]])]))]))))))))]])]])]]]))]]]]])]]))]])))))]))])]]))])))))))))])]]]))]]])]])]))))])]])]]])])]))]]])])))]])]]]]))]))])]))]])]])))])])]))]]]])])]]])])]])))])])]]])))]]]))))]])))))])])]])]))])))])]])]))])]])))]))]]]])])])]]])))))])])))]]))]])]]])]))]]])))])]))])])]]))]]]]))))))]))]])]]))])])]]])]]))))))]])))))])))])]))))]))]])))]]]])]]]))]])])]]]]))))]]))]]])]])]]]]))]]])])])])]]])]]]))))))]])]])])]])]))]])])])))])]))]])]]))]])]]]])]])]))]])]))]]))]))]]]])]])]])))))))]))]])]]))])]))]]))])])]]))]])))]))])]]])]]]))]]]]]]])))]))])]]]))]]))]]]]]])]])))))]]])))]]))))))]]]]]]])]))))])])]))]])])])))])]))])]))]])))]))])]])))))))))]]))]]]]]]]]])]))]]))))]]])))))))]]]]])]))))))])])])]])]]])])])]])))]])]]])))])]])))]]]]])]))])))))]]]])]]))]]])]]))]))))]))))]])]]])]))]]])]]]))]]])]])]]]]]]]]])]])))])]))]])]]))]])]]])]))])))]))))))]]]])])]]])]])]]]]])))]]]))))]))]]]))))]])]]))))])]])]))]]]]))))))])))]]])))]))))])))))]]]]]])])]))))]]))])])])]]]])]]])))]]))))]]]]))]))]))])))]]]))))])))))])]]]))]]]])]))]]]])))]])])]]))]]])]]]])])]]]])]]]])))))])]]])])]])]]]))))])]])])]))))]))])]]))]])))]]]))])]])]]]]]])]))]]))]])]]]))]]]))]])])]]]]]]]))])])]))]]])]])))]])])])))))])]]]))]))))))]]]))))]])]]]))])]))])])]]]]))))])]))])]]])])]])))])])]]))))]]])])))]])])])]))]))])])))]])]]))))])))]]]]])]]]]]]]])]])]]))]))]]]))]]]))))])))))])])])))]))]]]])]])])]]])))]])])))]])))))]]]]]))))]]))]])])]))]]]])]]]))])])))])]])))))])]]))))))]))))])]])]]])])))]]]])])])])])))]]))])))]])]])]]])]]])]]]]]]))]))])]))]]])]]]))]]]])]]])])]]))]]]])])])))])]]]]]]])]))])))]])])])])]]))]])]]))]]))))]]])]]]]])])])]]]]])]))]]]]]]))]]]]))]])))]]])]])]])])])])]])])))])))))])]])]]))]])))]))])]))])]])]))])]])]]]))]])])))]]]]]])]]))]]])]]])]])]))]])]])]]]]])]]))]])))]]]])]))))])]]]))])]]])]]))))]))]])])]])]]]))]]]])])))))])]])))))]]]))]])]))]]]])])))]))]))))]]]]])))]]])])]])])]]]))]])]])])]])]]))])]]))))]]))))]]))]])]))))])]]]))])])])))])))))]))]])])]])]]]]]])))]]]))]])))]])]]]])]))]))))))))]]))])))))]]))]))])])))))]])]))]])])]))])))]]]))))])])))))]))]]]))]]]])))))])]))]))]))]])])]]]])]])]]])))]]))]]]])))]]])))))]))))]]]]]]])]]])])])]])))]])])))]]])]]]))]]))]]]))]]])))]])))]]))]]))])])]))])])])]])))]]]])]])])]])])]])))))))])])))))])])]])]]]]]))])]]]))]]])]))))))]]]]]])])]]])])]]]])))]]]])]))]])]]]])]]])))]))]]])]))]]]])]]]]])])]))]]))]]]])]]])])]]]])))])))]))])]]]))])]))]]))])]]])]]))]])])]))]])))]]))]])])])))]]])]]])])])]))]])])))]])])))]]])])])]])])]]]])))])]]))]))]]]]))]))]])]])])])]]]))))])]))]])))])]]])])]])])])))])]]))])]]]])]])]]])])])))])])]]]))])]))]]))))]))]]]))])]))))])]])))])]]]]])]])))))]])])))]]])))]]])]])]))]])]])]]]]])]))]])])))])])]]])])]])]])]])])))))]))]))]]]]]])))]]]]))]]))]))]])]))]]])]]]])]))]])]])))]))]])))]]])]]]]])])))]]])])])))]])])))])]])])])]]]]]]))))))]])]))])]])]]))]))])))])]])]]]]]]]]]))])))]])))))]))]])])]))])]))]]]]])]])]))]]))))]]])]])])))))))])]]])])))]]]]))])]]])]])])])])]]])])])]])]]]])))))])]])]]]))))])]))))]]])]))])])]]])))]]))])])])])]]]]])]))]]))))]])))]])))))])))))))]]])))))))))]])))])]]))]]))]))]]))]]]))]]]]])])]]])))))))]])))]]]]]))])]))]]]))]]]])]))))]]))]]]]]]])])])])])])])])]])]]]]))]])]]))]])]]])]])])]]])))))))))]]]]]]])))]])))])]]))))]]])])))))]]))]]]]]])]])])]]))])])))))))))))])]]]])]))]))])]]]])]])))]])])))])]))])]]]))]))]))]])]]])]]]]]]])]))))))])]))))))]]]]]))))))]))))]]])))])]])]]]])])])]]])))))]])]))]]])])))]])]]])))))])])))])]))]]]])])]])))]]])]]))]))])))]]))]])]]])])]))))])]])))]]]]]))]))])]))]))))])]]]))])]])]]]]]))]]]]))]]]]])])]]]]]))]]]])])])]]))]])))]]]]))])))])]])]]))))]])))))])]))]]])))]])))])])]])]])]])]]]))]])]])]))))))]))]]]]])])))])])]))))]]))))]]]]]])]])]])])])))])))])]])))])))))]]])]]))]]))]])]]]])))))])]])]))))])))])]))]])]])])]]]))]]))))]])))]])]))))]]])])))))]]])]]]]))]]]]]]])]))]])]))])]]]])])]])])]])]]]]))]]))]])))]]]])]))]]])))])]])]]))))))))]]]]))]))]))]]]))])]]))]]])))))))])))])))])]])))])))])]])])))))))]]])]]]]]))]]])]]]]))]]]]))])])]))])])]]))])])))))])))])]]]]]]))]]]])])]))])]))]))]))]])]]]])]])))])])))))]]]]))]]]]]]]]))]]))))]]]))))])]]))]))]])))]))))))]]])))]]])]]))]])]))]]))])))]]]]])])]))))))))]]]]])])]])]))]]])]]])])])]]]]])))))))])))])])))))])])])]]]]]]]))])]]])]]]])])]]]]])]))]]]]])]))))))])])]))]]]])])]]])])))))]])))]]))]])])])])]])]))]]]])))]]])]))]])]]))]]))))])])))))]]]])]]]]]]))])))]]]])))]))))])]]])]]]])))]))]))]]]])))]]]]]])))]))]]])]))]])]))]))]])]])))))]]])]))]]]))]))])]]]])]])]])]])))]))]]]]]])]])])])]))]])]]])])]])))]]]])))))]]])]))])]])])])]]]])]])]]))))]))))))]]))]]))])))])]]))]])))))]))))])])]))]]]]))]]]))])))]))])]))])))]))]]]])]])])))])])))])])])])]]]])]))])]]]])]])]))))))))))]]]])]))]])])]]]]))))]]]))])]]]]])]])]])]))]]))])))])]]))]]])])))]))))])])])]]))])]])))]]]]]))]))))]))])]]]))))))]))))])]])]])])))))))]))]])]))])]])]]]))]])]]))])]])))]]]])))]]]]])))]]]]]))]))))))]])]]])))]))))]]))]))])]])]))])])])]))]])))))))]))))])])]])]]]))])]))]]))])))]))]))))])])]]]]]])))))]]]]]]])]))])]))))]])]))]]]]]])])))]))]]]])])))]]])))]))))]])))]]])]))])))]])]))]]]]]]]])))]]]]]]])]]])))]]]]])]]]]))))]])))]]])]])))]]])]))]))))]))]))]]])]]]]])]))))]]])]))])]]]]])]])])])]])]]]))]]]]]]))])))])])]]]])]))])]])))]])]])]])]]]))))])]]]])]])]]]))]))))]])]))))])])]])]]]]))]))]]]])]))))))])]]))]])]]]))]])]]]))])]))])]]))))))])))))])])))]]))]))))))))]]]))))]]]]]]])))])]]))]])))]))]]]))))]]]])]])])]]))]]]))))))])])))])])))]])))]))]))]]])))])]))])))]]]]]]])])]))))]]])]))])]))))])])]]))]]]])])))])])]]]]]]))])))]))]]))]]])])]]]])])))]]])]])])])]]]])]))))])]])])])))))])])])])]))]]))]]])]]])]])]]])]])]])]])))]])))])))]]]))])]]])])))]))))]]]))]]]]]]])]))))]]]])])])]))]]]])]]]])]]))])])]]])))]])])])]])]]])))))])]))]))))]])]))]])])]))])))])]))]])))))))]))]])])]]]]]])))]]]))))]]])])])]])))])]]))))]]]])]])]]]]]]])]])]]]]]))])]]]))])]])))))]))]]]]]]]])]))])))))]]]]]))]))]])])))]]]])))]]]]]))])))])])])])))]]]))]]])])]]]])))))]])]]]))]])])))]])))))))]]])]]))]))]]]))])]])))]]]]])]])]]]]]]))]]])]))))]))]]]))])])))))])]])])]])])])]]]]]]])]]])]))]]]]])))))])]]]))])]))]]]))]])))])])))]))])])]])]))])))])]]])))]])]))]])]])]))))])]]))]]])]]])])])])))])]]]))]])))]])])))]))])))])])])]]))])]]))]])])]]))])])]])])])]]))]]]])]]))]]]))))]])]))))]]]])))]))])]))])]])])]))]])]]])))]))]]])]))])))])]]]]]])))))))]))))]])]]]]])))))])]]]]])])))))]]]]]])))])])]]])))])))]]]]])]))]])])))))]])]))))])]])]])])]])]])]))]]]])]]])]])))])]]))])])]]]))]]])))])]))])]))))]]))])]])])]]))))])))])]]]))])]])))])]])])]]]))))])]))])))]])]]]]))))))]])))])])))]))])]))]]))])))]]]])))]]))))]]])]]]]])]]))]))]))))))]]))]])]))))]]])]))))])))]))]]])))))]]]]]]])]]])))]])]]]]])])]))))]]))]]])]])]))]]))]]])]]])]))))]))]))])]]]]))])]]])]]])))))]]))]])])]]]]))]]))))]))]))))])]))]]])]])])])]]]]]])]]])]]]]]]]]]))]]]])))]])]])])]]]])))])]])))))]]]])]]))])]))))])]]]))]]])]))]]))]]))))])))]]])]]))]])))]]])))]]))]])]])]])])))]))])))])])]])])]])))]))]]]))))))]])])])])])]]]]]]))]]])))]]]])])]))]]])])]])])))))])))])]])]]]])))))]))))]]]]]]])]])]])]))]))])]])]]))))]])]])]]))])))])]))]]))]])]))))))]]))])))])]]))))])]])]]]])]]))]]))])]))))]))]]]))))]]]]])]]))))]])]]]]]))))])))]]]))))))])]))))))])]]])]]]]])]])))]])]])])])])]]]))])])]]))]])])]]])]]])))])))))])))))]]]]))])]]]])))])])))))])))]))])])]]])])]]]]])])])]]])))]]))]))])]]]])))])))))]))]])))])])))]]])])])]]))])))])])])))]]]]]]]]]))]))))])]))))))))))))]]]])]]))])]))])))]])])])))])]])]))))]))]))]])]))))]))]])))])])]))]))]]]))])]]])]])]])))))]])])]])]]]])])])])]))))))])]]])]]]])]]]]))))]]]]))))]))]])))])))])])])]])]))))]))]))]]])]])]]))))])]]))])))]]))))))])]]])]])))])]])))))])]]])]])))]])])]]]))]]]]])))]])]]]])]]]]])]])]]]))])])])))])]))]]]]]]))]])]])])]]))]])])]]]))]))))))])))]]])]])]]]])]]]))])))]])]])]]]]))]))])))))]]))])]]]))])]]))])))])])])])]]))))])))])))))]])])))]]]]))))))]))]]))]))]]]]]))]]])])])]]]]])]]))])]]])))))]]])])))))]]))))])])))))])))))])))])]]]))]]])])))]))])]]))]))]))]]]]]]])]])))]])]])])])]]])]))]])]]]]]]))])])]]]]]])]])])])]]))]])]]]))]]]])]])]])])]))])))]))))))]])])]])])))]])]])))])))]]])]]]))))]]))))]]]])]])]))])))]]]]])]])]])])]))])]]]])]]])]))]]]))])])]])])))])]])])]])])))]))]])])]]]]]]))]]])]))]]]]]])))]])]]]])]]))))]]))))]))))]))))]))])])])]]]]]])])))]))]]))])]])]]]]]))]])))])])))]]]])))))])]]]]])])])))]]])])]]]]])]]))]])))))]]]))]])]])]]])]))])]]]])]]]]])))])]])))])]])]]]]])))])))]]]]]]]))]]))]]]]])]]]]])]]])]]]))))]]]]])))]]])))))))])]]]])))]]]]]]])]]])))])])))))]))])))]]]))]]]]))]]])))]]]]))]]])]]]]]))]]]]])))))]]))])]])]]])])]))))]])))]]))]]]]]))])]])]))])]])]))]]])]]))]])]))))])]]])])))])]]))]]]]]])]))))))])])))))]))))]]]]]]])))])])]]]])])])]))])])))])))))]))))]]]])])]])]))])))))]])]))))))]]]))]]]])))]))]))]]])]]]]))]])))])))))))])])]]))]))]]))]]])]]))])])])))))])))])]]]]])])]]]))]])))]]))))]]]))))]]])))]]]])])))]]))))])]]))]]))])]))))]])))]])])]])]]]])]])]]]]]))]]]))]]]))])))]]])]]])]]]]]]])]]))]]])])))))]])])])]]]]))])])]))]]]))]])]])))))])]]]])))]))))))])]])]]])])))))])]])))]]])]]])]))))))]]))]]]]]))]])]]]])]]]]])]]))]))])]))))]))]]])]])))]]])))])))]])])]]))])]])])))]])])])]]])]])])]]])])]]])])))))]])]])])]])))))))]]]])))])]]]))]]]]]])]])))]]]]])]]))]))))]])]]])]])]))]]]]]))])])])]]]))]))])))]]]]]])])))))]]]]])]]]])]))]])))))]])]]))]))]]])])))])]]))))))])]])])])]]))))]))))])]))]])]]]))))))]]))])))))))])])))]]]]))]]))])]]]])))]]]])]]]))))))])))]]]]))])])]))]])]]]])]]]]))])]]])])))]]]])))))]))))]]]]]]]))])]])]]]]))))))]])]))]]]))]))]]]]]))]))]))))])])]]))]]]]))]])]])]))]]])]]]]]])])))]))])]])])])))))]))]])))]]])))]]]))))))]]]]])))]]))]]))])))]]))]]))]]))))]))))])]]])])])])]]))))])))]]))]])]]])))]]]]))]]))]))])])])))))]]])))]]]])]))]])]))]])]])])]))]))]]]]]))))))]]])))))))))))]]))])))]))])])]])]]))]]])]]])])))]]]))))]]))]]])))])))))]])]]))))]])]))))])])]])]]))])]]))))]]])]))]]))]]])))]]]))]]]]]])]]]])])]])]])))]]]]]))]))]])])])]]]]))])))]]]]]])])))])))])])]]]))]]))))))]]])])))])))]]])])]])]]])])])))))]]))])))]])]]))]))]])]])])])]]]])])]]])])])])]))))])]])]))]])]])])])))))]))))))]])]))]]]]]]])]]])]))])))]])]]]]]])]])])]))]]]]))]))))]])))))))]]]])]])]])))])))]])])])]]])])]))))])]])]])]])]]]))])))])))]])])])))))])]])))]])))]))]))))]])]))))]]])]])))))])]))))))])))]]))))))])]))))]]]])))]]]])]])])))]))))])])])]]])])])]])])))]))]]]]))]))]]])])])))))])])))]]])))]]]]]]))])])]])]])))]])]]))]])])))]))])])]]])])))))]]]]))]]))]]]])]))]]])]])])])]]])]])]])))]]]]]]]]]))])]]]])])]]])))]]]]]))]])))]])]]))]])]])))))]]])]])])]]])))]]]])))]])])))))]]))))))]))]])]]]]]])]))]))]])])))]])))))))))))])]])))))]])]]])])]])])]))))]]])]]])])]))]]]))]]))]]]])])))])))]]]]]])])]]]]]])))))))))]]))])))])]]]]]))))]]]])))]])]]]])]]))]]])))]))]]))]])))]])])]]))))]]]))])])])))])])]])))))))]]]])])])]])))))])])]]]])))]])])]]))]])]))])]])]))]])])))))]]]])]))]])]])]])]]]]]]]]]]])])]))]])])])])))])]])]]]]]]]]])]])])]))))]]]]])])]))]])]])]])]]]])])))]]]]]]))]]]]])])]))))))]))))]]]]))))])]))))])))]])])]]))))]))]]]))])))))]]]]])))]))))]]])])])]]]])]]]])]]))])]]]]))]]]]]))]]]])]]])]])]))])]))))]])))])))]]]]]))))])]))]))]]))))]])]))]]))]))]]))]]]))))]))]]))]]]))]]])])]]))]])])]]]]])]])]]]]])))])))))))])]]]]]))]))]]]))))))]]))]]])])))]]]))]]))))])])])]]]))]))]])))))]]]])])]]]]))]])]))))]]])))]]]))))])))]])]])]]))))])]]])]]]]]))]))))])])]]))]]))]]))))]]]]])))]))]]]]])])]))])]]]])])))]]]])))]]))])]]])])]))))))))))]]])))])))))]]))]])))))]])))]))])])])]])]])])])))))))))]]]])))]])])))))]]))])]]]])]])])])]])]]]))]))]]))]])]]))]]))])]]]]))))]]))])])))]]]]]])))])))]))]]])))])))))])]]])]]]))))]]]]])]]])])]])]])]]]]])]])]]])]))]]))])))])))]))]))])]]]])])])]))]]]]))])])]])]]]]))))]])]])))]]]]]))]))))])))))]]))]]]))))))))]])]))])])]]])]))]]))))]))]]))]]]]]])])])]]]])))]])]])])]])]))])]))]]]]]]))])]))))]))))])]))))]]))]])])]])])])])))))]])]])])])])]])))))]]])]]))]))])]))])))))])))]))])]))]])]]))))))]]]])))))))])])]))]]]))]])))]]))]])])])])]]))))))])]]])]]))])))))]]]))]))]]]]]]]))]]]))]]]))]))]])]]]])]]])]]])]])]]]]]])))]]]]])]))]]))]]]])))]]]]]]))))])]]]]]]]])])))))]))])]]]])]]])))]))]]])))]]]))]]]]))])))])])]]]))))]])])]]]]]]))]]))]]]])]]))))]]])]]))))]])])])))]]]]]]])]]]))])]])])]])]]])]])]))])]]]))]]]]]]]])))]])]]))])]))]))])]]])])]])]])]]])]])]]])))]])]))))]])])]]]])])]))))])])))])))]])])])])))))]]]]]])]]))))]))])]]])]))]])])]]]))]]])))))])]))))))])))]]])]]]])]))]])]]]]]]]])])))]]]]])))))]))]])]]]]])])]))])))]]])]))])])])]))))])])])))]))))]]))])]]]))])]])))])]))]])])])))])]]]]))])))]))]))]]))]]])))]))))])))]))])])]])]]])]]]])))])))))])]])]]]))]])])))]])]))])]]]))]])]))]]))]])))]]))))))]])])])]))]])])))]))))]]]]))))]))))]))))]))]]]))])]))]])]))))))])]]])))]]]]])])]])])))])))])]]]))]])]]]]]))))]])]])))])]]])])]))]]]]]])]])])]]))))])]])]])])]])])]])]]])]]]]])]))))])]])))))]]))])))])]])]]])])]))]]]))]]])])]]))]]]))))]]])]]]]))])]]]))))]))]])))))))]))]]])))])])))])]]))])))])])]))])]))])]]])))]]])])]]))]))))]))))]]]]]))])])))]))]]])]])))]))))))])]])]))))]])])]]]]]))))]])))))]]])))]))]))]]))))]]]]])]]]])]]))])]])])])]])]]])))))])]))))])]]))])]])]]])]))]])])]))])]])])))])])))])))])]]]])])])])))))]])))])]])]))])]])]))]]]]))]]])))]))]]]]]])]]))]]]]])))))))]))]])))))]))])]))])))]))]]))]]])]))]])]]]]])]]]))))]]]]))))]))]))))])))]]])]]]]))]]]))))]]))]]]))]])]))))]))]]])])])))))]])])]))]]]]])))])))]]])]]]]]])])])]]])]]]))]])]]])]]))])]))]]]]]))))])]])]]]]]]])]]])])]]]]])]]))])])]]))]])]]]]]])]]])])])]]]))])))))]))]))]])]]))])]]]]]))]]))))])])))]]])]]])))]]))])]])]]]]]]]]))]]]]))))))]]])))])))))]))])]]))])]])]]]))])]]]))])]]]))]]]])))))]])]])])]])]))]]]))]]]))]]))]]]]]])])))))))])))]))])))]]])))]]]]))]]]]]]]])])])]])])]]))]]]]])])]])))]))]]]))]))))]))])]]))))]))]))])])]]))))]])))]]]]]])]]])]])]]))))]]]))]])])]])]]]]]])))])))]])]))]])))]])))]])])]]]))])]))]))]]]])]])]]]])]))))]])]]))))]]])]])]])]])])))]]]))])])]]]])]])))]])])))]]])))])]]])])]]))])]]))]])]))))))]])]))))))])))])))])])]])))])))]))]]))]]])]))])]]))])]])])]))])])])])))])]))]])))))]]])]]))])])))]))]]))]))])))]]))]]])]])]])]))]]))]]))]])]]]]]]))))]]]]]]))]]])])])]])))]]]))]]]))))])]])])]])])]]))))]])])))]]]])]]]]))))))]])])]]]])])])])))])))))]]))]])))]])])))])])])])]])]))]])]))])]))))])]]])))]))])))])))]))]]))])])]]]])]))))]]]]]])]])])]]]])])]]])]))]))]))]))]]]))]]))]])])])]])))]]))]])))]])))]))]])))]]])))])]))))]))]]]]]))]]))]]])]]]]]]])])]]]])]])]])]])]]]]))])]]]))]]]]])]]]))])))])]))]])]])]])))]])))]])]]]])))))))]]]])))))]]]]))))]))]))]))]))]])))))))]]))]))]]))])]])]])]]])])]]]]])]])]]]])]))]])])]))])]]))]])]]]]])))))))])]])])])]]])]]]]])]]])))]])]])])))))]]]]])])]))]))]])])))])]]))))]])])])])]])]])))))))]])))]]])]]]]]])))]))]]]]]]])]))]]])))])]]]]])]]]))])]])]]]])])]]))]]]]]])]]]])]])]])]))]]]]]]]])])]])]]]]])))]]))]))]])])))]))])])]))])])]))]])))))])))])])]]])])]]]])])))])])])))))])]]]]))])))]))))]))))]]))))])))]]]]]))])])])]))]]]])]])]]]))]]])])))])))]])])]))]]))])]])])]]))))])))))]))))))]])]]))))]]]]))])])]]))]]])]])))))]])])))]]]]]]])]))])])]])))])]))])]]]]))])])]]))))])]]))]]))]))]]]]))))))])])]])])])))))])])]]))]])]]]]])))]])]]]])])))])))]]))]))))))))]])]]]])))))]))]])))]]]]]]]]]]])))]]]]))]])]]])]))]])))))))])]])])))]]]]]])]])))]]]])]])]])))]]]])])))])]])))]]))))]))))]))))])))])]))))))]]))))]]])]))]])]])]))]))]]))])]]))])]]))))])]]]]]])])])))]))])))]))])])))]])))])])]]))]))])))]]]))]])))])]]))))])])))]))])))]]])]]))])))])]])]]]]))]]))])]])]))]]]])]])])]))])]])]))]]])]]]))]]])))]])]]]])]])])))]])])])]]]]))]]]]]]]]])))]])))]])])])]))]]))))))])))]])))))))]))]])]))]]]))]))]]]))))]]))])))))])])]])]]]]])]]))])))])))))))))]]))))])])))))]]]]])]]))]])))])]]]))))])])]]])]))))]]])]]))])))]))])))))]))])]))]))]]])]]))])])]]]])]))])])]])])]]]]]]])]))]]])])]])]]])])]))]]))])])]]]]])]]]]])])))]))])))]))]))]))])))))]]]]))))]])))]))])))]]]]]])))))]))]]])))))])]]]])]))]])]])]]]]]]]]]]]))]])))))]]]])]])]]))]])]]]]]]]]]]])))))]])]]]]]])]]])]))])]))))))]]])]]]]])])]]]))])])]]]))]])])]])]]]]])])]])))])])])]]))]]]]])]]])]))]]])])))))])))]]]))))]]]])])]]]))])]])]))))]]]))))))]]])])])])]]]))))))))))]))])))))))])]]])))))]]]]]]]])]]]])])]))])))]]])])]))])])))]]])))])]))])]]]]]]])]))])]))])]))]])]])])]])))]]]]))))]])])]))]]]))]]]))]]]])]]]))]))))]]]])))])))]])]]]])]]]]])]))))]])]])))))))))))]))]))))]]]))]])]])]]])))]])]]])]))]]))))])))))]]))])]])])]))])]]]))]])])]]]]]]))])]))))])])])]))]]]]])])]))]]]]))]])])))))]]]])]))))))]))]))))]))]))))))]))]]]))])]))])))])]])))]])]])])])]]))))])])])))])]))]]]]]]]))]))]))]))))]]))]))))]))])])]))))))]]])])])]])])))]])]])]]]]]))]))]])]]]])]]))))))]])]]]))))]])]))]]))))))]]]))]))]))]])]]])))]])])))))))))]])]))))])])])]]]]])))))))))))))]]]]]])))))])])])]]))]])]]]])))]])]]))))]]])]])]]])]]]])))]]]))]]]]))]]])]))])]]])))]]])))])]])]]]))]]]]])]]]]))))))))])])]]]]]]]])))))]]]]])])))))]]]]))])))))])]])]])]]])]]]])]]]]))]]]]))]]))]]]]]])))))]]]))]])]]])])))])])]]]]]]]])))]))))))])]]]))])))]]])]]]]])]))))]]))]]))))]]))))]]]]]))]])])]])])]]))]]]]])])))])))))))))])))]]]])]]))])])])])]]]])]]))))])]]])])))]]]])))]))])])]]]]])])]))))])))]]])]]]]]])))))))]]]]))))]]]]]))]]))])]]]])]))]]]]])])]]])]))))]]])])]]]])]]]])])])]])]]))]]]))]))))])))))]))])]]]])))])]]]]])]))]])]])])]]])]]])))))]]])]))])))]])]])]]])])])]]])]))]])]])))))]]))))]]])]]])]])]]])]]]])]]]])))]))))))]]]]]]))]))])]]])]]))]))))))))]))])))]]))]]))))]]]]])]]]]))])]]))]])]))]))])))]]))]])])]]]]))]]]])]))]]]))))]]]]))]]))))))])]))]]))))]))]]]))]]])]]])]))]]])])))]])))))]]))]]))]])]))]]])))]]])))))]]]))]]]]))]]])))))))]))))]])])])])])]])]]]))]]]]))))]))]]]))])))]]))])])]))]])]))]]))]))]]])))))]]]]]])]]])))])))))]])]]])])))]))]]])]])])])]]))])])))]]]]]))]]))]])]]])]]]]]]))]))]])]])))]))])]]]))])])]))])]]]))])]]]]])])])]))]])))))]]]])]]])]]]])]))))))))]]))]))]]]])]])))))])))])]]]])])]]]])]]]])]]]]]]]])))))])])])))]]]))])))))]]))])]]))])])])]]])]))])])]])))]]))])]]]]])]]]))])]]]])]]]))))))))]]))])]]))]]]])))]])))))])))])]]]]]))))]])])])]))))]]])])]]])]]]))])]]]])])])]]))]]]))]])))])])]]]))]))]]])))]])]]]))])]]]]))]]]]))])))]))]]])])))])))])]]]]])]])])))]]]))])]]]]])]]]]]))]]))))]))]]])])])]])]])]]))]]))]])))]]]])))])]])))]))]]])])]]]))])]]]]]]]]])]])])]])]]]]]]])]))])))]))]]]])]))))]]]]))]])]]])]])]])])]])])]])])]))]))))]]))])]))])]))])])]])))]]]]]]]]]))])]))])])))]]))]]]]]])))))]]))]]])])))]]))]))))]]]])))]]]])]])))])]])]]]])]))])])]])))])])))]]))))]))]]))]])]))]))]))]))))]))]]))]]))])]])])]])]])]))]]]))])]]]])]])])]])])]]]])]))]]]])))]))]]]))])]])]])]])))]]))]]]))])))]]]])))]))]))))]]]])))]]])))]))))]])))]))]]]]))))]))])]))]]]))))])])]]))])])]]]))]])]))])]])])])]]]]]]]))))]])]])]])]]]]]))))))]))]))]])])]]))])]))))]])]]))]]))]])]])))))])))]]]])]])))))])))))]])])))]))]))]])))]))])]])])])])]])]])])))])]])])))))]]))]])])]]]])])))]))]])))))]]))])])))]])])))])])])])]])]]]))]))]]))]]]))]])]]]]])]]]))]]]]])))]]]])]])]])])))])])))])])))])]))))]))]])]])]]]))))))]]))]]))])))]]])]]))]])))]]]])])])]])))])])])))))]]]])))))))])))))]))))])]]))])))])]]]))))]]]])))]))]]))]])))])])])]]]))))))]]]])]]))))]))])))))))]]])])))))])))]))])]))))]]]])))]]])]))]))]))]]]]])))))]]])])]])))]]]]))]]))))]))])]]))]]]])))])))))]]]))])]])])))]]]])))))]]]]))]]]])]]]])))])])]))))))]]]]]))]))]]]))))))]))))]]]]]))))])))]]))]]]))))))]]]))))]])]]]])))]))))))])))]]])]))])]))])])]])])])])]])]])])))))])]))]))))))))])])))]]]]]])))]))]))]))]))])))]))))])]])])]))]]]]]))]]))))))]])]))])))])]]))]])]]))]]]))])))))])]))])]]]])))]))])])]]))])]]]])))]))]])]]]]])]))])]])])])]))]])))))))])]])]])))]))]])))))]]))]))]]]])]]))]]]])]]]))]])))])]])]]]]]])))]))]])))]]))]]])]])))]]))))])]])))]]])]))]))))]])]])]]]])])]))])])]])])))]))]])))])]]))))])]))]]))]])]))])))])])))]))]]]]))]))]]]]]))]]])]])))]]))))))]])]]]]]])]]]))))))])))))])]]))])]]]))))))))))])]]]]]]]])]])]]))))]]])])])])])))]))))]]))])])]))))]))]]))]]))])]]]))]))]]]]))))])]])]])))]))]]]))]]]]))))))))]))]]))])))]]]]))]]])))))))])])])])])))]]]])]]])]])]))])))])]]]]))])]))]]]]]]])))])])])))]])])]])))]]])]))))]])))]])])]]]]]])]])])]))))])))])]])))]]]])]))))))]])))]))])]]])))))]))]))))]]]]))])]]))))]]))]]])))]])]]))]))))))]]))]]])])]])]])]]))]])]))))))]]]))]]))]]])))))]]]))]]]])]))]))])]]]])))))))]]])]))]])]))]]]))])]]]])))])))]])))))]])]])])])]))]]))]]))]])])))))))]]]]))]])]]])]]))]]])])]])])))]])))])]]]]])])]]])])]])])))]]]))))]])])]])]]))])]])]]]]))]])))]))])))))])]]))))))]]))]]]]]))])))])))]]])]]])]])))]]])])])])]]]))]))))]])]])))]])]]]]]])]])))]))])]]]]))]]]]))])]))))]])))]])]])]])]]])])])))]))))))]]])])]]]]))))])))]])]])]))))]))))]])))]))))])]))]))])]])])]]])))]))]))))]))])])])]])]]))]))])])]))]])))])])))]]))])]))])])))))))]]]))])]])]))]])]]]))]]]]]]]))])]]]]]])]))]])])]])]])])]))]))))]]])]]]])]))]]))]]]]])])]))])]))]]))])))]])]])]])])))])))]]]])]])]])]))]])]))])])]])))])]])])]]))]]]]))))])]])])))])]]]]]]])]]]]])]]))))])))])))]])))]]])))])])]]]])))]])))))])))])))]]]]))))]]))]]]]))]]]])]])]]])))))]])]])]]]]]]]))]]]])))]]])])])))]))]]])))))))]]])])]]])))]]])])]))))]])]))]))]])])))])]])])])]]])])))]])]]])]))]]]]]))))]])]]))))])]]))]])])))))))]]))))])])])))]))])))]]]])]])]]]]))])))]))))])]))])]))]])]]))]]]])]]]]])])]))]]])))))])]]]])]]]]])]]]])])]))]]]])]])]]]]))])))))]]]]]]]]))])])]]]]))]]]))])]]]]]))])))))))])))])])]]))]]]]))]))))])]]]]))))]]))]]))))))]]]])))]]])))))]]]])])])))])]]))])]])]])))])])))]))]))]))]]]))])]])]]))])))))))]))))]))]]]])])]))]))])]]))]]))]])]))]]]])])]])])]]]]))])]))])]))]])]])))]])]]])])]]))])]])]]]]])]]]]]))])]])))])]])))))]])]))])]])]])]]]])])))])]]])]]]))]]))]]]])))]]]))])]))]))]])))]])]]]))]))]]])))]]]))]]]]])]]])]])))]]])])]]]]]]])]]]]]))])))))))])]]]]])]]))])]])]])])]))]]]])))))]))])]]]])]]))]]]))]]))))]]))]])]]))]])))]])]])])]]])])]]]])])]])]]))]))]))])])]))))))))]]]))]))]])]]]]])]]]]))))]]))]))))]]]]]])))])])]]))]))]])])]])]]))))]]])])])))]])])))])]])]))]]])]]])]]])]]]))))])])])]])))])]]))])]))]]])]])))])])]])])]]]]))))))])]]))))))))))])))]))]]))])))]]])]))))]])]]))))))]])])])]))])]])])]]]))))]])]])))]))])])]])))])]]]]]))))]]])]]))))]]]]))))))]])]))])]))]]))]))]))]])]]))))]])))]])])])))]]]])))]]]]))]]]]]]]])]]])))]])))))))]]]]))]]]])))))]]))]]]]]])]]))]]))]])))])])]]]]))]))]])]])))]))]]]]))]))]])])])))])))))]))]])]]]))]))]])]]]]))]])]])]])]]])))]))]])))]]]]])]]))]]))])))])])])]]]]]])]]])))])]])))]))))])]]]]]))))]]])]]))]]))])))))]]]]]]]))]])])]]]])])]]]))]]])])))))])]])])]]])]))]]]]))]])]]]]])]])]]))]])))]]))))]]))]])])]]))]))]))]]))]])]]]])]]))]]]])]]))]))])]))))]]])]]]]))])]))))))]]])]]]])]))]]]))]))]]]]]))))])]))))))])))])])))])]]]])]]])])))])))])]])))]])])))])]]))])]]]))))))])]))]])]])))])))])]]]])])])]))]]]))))]]]]))))))])]))]]))]))])))])))))))))]]]))]))])))]])])])]]))]]]))]]))]]])])))])]]]))]]))))]]))]]]]])])])]]]]]))]]]])))])]]))))]))]]])]]]]]]))))))))]]))]]]])]]]]]])]]]]]]])]]))]]])))]]))]))]])])]]])])]]]])]]))]])])])]]]])))]]))]]]]]]]]]]]]))]))])]))])))])])]])))))])])))]]]]])])])]]))]]]]]])))]))])])])]]])]]])])]))))]]]])]])]]])]))]))])]]]]]])]]))))]])))])))]]]))))))])])]])])])]])])]]]]])))))])]]]))]))])]])])))]]]))))])]))])]])]])]]]))))]]]))))))]]])))]])]))])])))))]]]))])))])]))]))]]])])])])]))))]])]))))])]]]))])))]))]])))]])])))))])]])]]))]])])])]])]]))]))])]))]])]))]))]]])))]))]]])])]]]]]]])))]])]])])]]]]]]))]])]]))]))]]]]]]]])]]))))))])))))])]])]))]]])])]])))])]]]]]])]))))]])))])])]]]]))))))]]]]]]]))]])]]]))]])]]])])]])]])]]])]))])]))))]))]))]]]]))])]]]))]]))]]])))])]]]]]]]]])))])))]))))]])]])))))]]]]))]]]]]]])]]]])))])])]]])]))])]]))]]])])])]]))])]]]])]))))])]]))])))]])])]])]]])))]))))])]]]])]])]))]))]])])]])]]))))])])]]]])))]])])]])]])))]]))]])))]]]))])])]))))))]]]]))))]]))]])]]))]]]))]))]]]]]]]))]]]))]]]]])]])]]]]))])]))]]]]])]])]))])]])))]])]])])])])]]))))]]]])))))))])]))])]))])]]]]))))]])])])])))]))]])]]))]]]]]))])]))]]]]]])))))))])])])]]])))))])]]))))])]))]])]]))]]]]]]]]])]))])]))))]]]]])]))])]))]])))])])]]])]])))])))))))])))])]))]])]]]]])]]]))]]]]])])]]]])))))))]))])))))))]))])))]]))])]))])]))))]))]])))])]))]]]]]]])])])]))))])]))))])]]]])]]]])])]))]))]))]))]]]]]])))]]]]]))]]])]]])])]))))))]]])])))))]]])])]))]])])])])])]])]]))]))]))]])])]))]]]])]))])))))])))])))]]])))]))])])]]]]]]]]])])])]]))])))]]])]]]]]]))]])))))]]))]]))))]])]]))])]))])])]))))])))]])]))]))))))]])))))])))])])]]]])]))))])]))))])])]))))])])]]]]]]))])]]])]]]))))]))])])]]])]])]]])))]]))]))]]])]])])]))))]])])]))]]]]))]]))]])]])])])])]]]]]))]))]])]))))))]])])])))])]))))))]]))]])])]])))])]))]]])]]])))]]))]]))]]]))))))]]])))]]])))])))])]))])]])]]]]]))]]])]]])]]))]])]))]]]))))])))])]])])]])]]))]]])]])]]]))))])])]]))]])])]))))]]))))))]])])))]))]))]])]]])])])))]]])))])))]]])))])])])]]))]])))]]]]]]))))]]])]]])]]]]]]))]]]]])))))))]))))]]])))])])]]]]]]]))))))]))])))])]])]))]))))]]))))])])])])]]])])])))]]))))])]]])])]])])])]))]])])))]]]])))])]]))])])]))))))]])]))])))]))])]]])]])))])])])])])))))]])]]])])]]))])]]]]])]]))]]]))]]))])])]]))])]])])))))])]])])]])))))))))]))])))))]])]))))]])])))])])])]])])]]))])))]])]])]]]])]]]))))])))))])))]]]]]])]])]))))])])))]))]]]]])))]]]])))]]]])))]]]))]))]])]])))]])]])]))))))]))])))])])]]])]))])]))))]]])]]]])]))]])]]])))))]))])])]])]))])])])])))]))]]))]])]])])))]]))]))))]]]])])]))]])])]]]]]))])]])])])])))))))))]))]]]))]]]]))]]])])]])]))))))]))]])]])))))))]])])])))])]]))]])]])))))])]])]]]))]))]]]))]])))])])])]]]])])]]))]]]]))])]])]))])]])))))])))]])))])]))])]])]])]])]])))]))]]]])))))]])])])])))))))])]]]])])])]))])])))]]]]]]])]])]]])]]])])]]])))))]))]])]])))]]))]]]])]])])))])))]]]])])]])))]])]]]])]])]))]))])]]))]))])])])])]]])])))]))]]])))])]))])]]))]]])))])]]])])))))])))]])])]))))]))])]]))))]))]])]]])))))]])])]])])])])]]])]))]]]]]])])])]))]]]])))])))))]])))))]]]]])]]]])))]]])])]])]]]]]]])]))]]])])])]])]])))]])))))])))]])))))))]]))])]]]]))])))]]]]))]])]])]))]))])]]])]]]))]]]))))])]]]]])]]])])]))]])]]]]]]]))]]])])]])])))))]))))])]))])]))]]])]))])))])]]])]]))])])])])])]])])]]]])))])))))))])])]]))]]))))))]))]))]]]))]]]])]]]))])])]]])))])])))))]))]])))]])]]))]]]))]]]]])]))]])]])]]])]]))])])]]]]]]]]]))]))]]]]))]]]))))]]))])))]))])])]]))]]))]]]]])))]))]])]])]]))])])]]))))]])))]]]])]))])])]])])]]])))])))])))))))))]))])]]))]]]])]]))]))]])])])]]))))]])]])]]])))])]])]]]]]]])))))]]]])]])])])])])])]]]]]))])))]]]]))]])])]])))]]))])))])]]]])))])]))])]]]])])))]])]))))])]]]))))])])])))))))])]])))]])]))]])]]]]]])]]))]))]]))]]))]]))]]]]))])])]])))])))]]]]))])])])]])]]]])]]]])]))])]])])]]]])]]))]))]]])))]))]))]))]))))))])))))])))]]))]))))]]]]])]])))]]))]])]]))])]))])))]]]]))])]))]])]))]]]]]]]))))]])))))))))]])]))]))]))]]])])])])])])))))))])]]))])]))))]]])))])]])))]))))))))]]]]]])))))])))))])]])))))]])))]]]))]]]]])))))]]))])])))])])]))]])])]])]]]))))]])])))])]]]]))])])])))])]))]])])]]]]])]))]))])]]]]))))]]]))]]]))]])))))))]]])])]]]]))))]])])))]]))])]]]])])]]])]]]]]]]])))))))]]]))]]])])]])]]])]]]]]])]))])]]]]))))]])]]))]))]]))]]]])]]])])])])])))])])]))))])))]])]])]]]]])]]))]])]))))])))]])]]]))))]])]]])))))]]])])]])]]]]]]]))])])))])]))))]])])]))])])])])]])]])))]]])]]]]]])])])]]))])]))))]]]])]]]))])]))]]]))))])]])])]))]))))]]])]]]])]]))])]])]))]))]]]]]]]])]])]))])))])]]])]]]))])))])]]]]]]))))))]]])])]]))])])]]]]]]]]))]])])]]]))])])]]]]))]))]]]]]]]))]]]])]]))))]])])]]]]])])]))]]])]]))))]))])]])]))]]])]]]])))]]]))]]))]]]))]]]]))]))]]]))])]])]]])]))]]]))]))])]]]]))))))]))]])]])]]))))]]]))])))))]]])))]]))))])))))]]]])]))))]))]]])]])])])))]]))]])])])))))])]))]])])]]))])])])))]]]]]]]))]]))))]))))]])))]))])]))]))])))]))])))])))))]])))]))]))))]]]]]]]))]]))])])])])])]))))]])])])]]])]]]]]]]]))))]]])]]]])))])]]]))]]))))]])]]]]])])]]]))])))]]]]))]])]]]))])]]]]]]]))])))]))])]]])]]))]]))])))))]])]])]]])]]))]]))))))])]))))]])]]]]]]])))]]]))))]])])]])))]]]]])])))]]]]))]]]]]]])])])]]]])]])))))]]]]]]]))])])))]))]]))]]))]]))]))]])])]))])]))]])]]])]]]]]))]])))))]])])])]]])]]))))])])))]))])]))]])))])]))))))]])])])])]))))]])))])]))))))])))])])])])))))]))]])]]))))]])))]))]))])])])]]])]))])))]))]]]]]]])])))]])])]))]))]])])]])]))]))])))])]]]])]])]))])]])]])))]]))])]]]])]))]))]]]]])))]))]]]]))]])]])]))])])]]))]]]])))))]))]]]])])))))))))))))])])]]]]])]]]]))]])])))]))]]])])]])]]]]]])]]]])]]]]])]))]]))))])])]])])]])]))]])]]))))])]]]]]]]]]])))))]])])))]]))]]))])]]))])]]]))])])]]))]])])])]]]]]]])]]))))])])]))))]])]]]))))]])]]]]]]]]]])])])]]]]]])]]]]])))])])]])])]))]])))])])))))])]]])]))))))]])))]]))])])]]]]]])]])]))]]]]]])])])]]])]])])])])))))])]]])]])))]))]]))))])))]])])]]])))]))])))]])))])))]])]))))))))))))]]])))]]]))])]])))]])])]])))]]]]]))]]]])])))))]])]]]])]))]))]]]))))])))])]])))))]]]))])])]))))]])])]]]]]))]]))]]))))])]]]]]))]])])])]]])]])])]])]])]]]]])))))]]]))])))))))])]))]]])]]])])]))))]])])])]])))])]])]])]]))]))]])])])))))])]))]))]]]))]]]))]])))]))]]]]))]]))]])))]]]))])]]]])]]]])])))))]))]])))]))]]]]])))))))]])])]])))]]]]])))]])]])]])]])])]])]))))]]]])]))]]))))])]]])]])]])))))]])))]]]])))])])]]]))))]))])))]))]]]))))])]])]]]]]]]))))))]]))]])]]])])])]]))])]))]])]]]]])))]))])]]))))]]))])]]))]]))))])))])]]))))))))]))))]]]]))]]))]])]]]])]))]))])))]]]])]]))]))))]]]])))]))])]]]])]])]])]])]))))])])]]))])])]]))])]))]]])])))]])]))]]))]]]]]))))]]))]]])))]]))])])))))]))]]])])]]]])))))]]])]])]])]))))))))]])]])))])))])]])]]]))]]]])])]]])]))))))))])))]]])]]))))]]))])]))]])]))))]]))]]]))))])))])))]]]]])]]]]])]]]]))))))]))]]))]]]]])]])])])))])]]]])]))))])]]))]]))))]])]]])))))]))))]])))]]]]])]]]])])]))]]])])])))]]))]])])])])]]))]))]]]])])]]))]]))])]]))])))))))]]]]))]]]]]))]]]]]]]))))))))]]))]]))]]]]]])]])])))]])))))])]))]]]])]]]]]]]))])]])]]))))]]])]]]]])]]]]))))]]])])]))]))]]])]]]])))))]])]]))))]))))])))]))]]])])))]])]))])]])]])]]))])))]])]]))]]]))])]]))]))]]]])))]])))))]])]))])]]))]))))])]]))])]]))]])]]))]))]])]])]))])))])])])]])]]]]))))]]]))))]))]))]])])]]]]))))))])])])])]]])])]))])])]]))]))))))])))]))]))]))])))])])]])])))])]]])))]]))))])])]])]]]]])]]])]])]))]]]])]]])])])))])])])]]))]))))))]))))]))])))]]]))]]]]))])]])]))))]]])]))]))])])]]]]])])]])]])))))]])]]]])]])))))]))])))]]))))])))]])))]]]))]]]])]]))])]))]])])])]]])))])]]]]))]]))))))])]]))])))]))]]]])))]]])]))]))))]]]])]])]]]]))])])]]])))))])))])]]]))])))))]]]))]]]))]]])])]])]])]])]]]))]])]]]))]))]])))))]]])))]])]]]))])))]]))]])]]]))]])]])]]))))]])])])]]]])]]]]]))]]]]))])]]])))]]]])]]]))])]]))])])))]]))]])]])])])])])))))]]]]]]])]]])]]]]])]))]))]])))]]]]]]])]])]]]))]]]))])]))])]])]]]]]))))]))])]])]]))])))))]]])]])])])]))]))]])))]]]]]])])))]])]]])])])))]))]))))))])])]))))])))])]]))]]]]))])))]))))]]))]))])))]])))])])]])))]))]])]])]])])]]]])])]]]]]))))]))))]]))])))])])]]])))]))))]))])))]])]]]]]]])]]))))]]))]]]))]]))]]]))]))]]))])]])])]]))]))])))))]])]))])))])))])])])])]]))])])])])))])])]))]])]))])]))))]))))]]))]])]])))))]))])]]))])))]])))])))))]])]]])]))))])])]]])]))]]])])))]]])])])]))]]]))])]]]]))])])]))])))))))))]]]]]))])]]]]]]]])]]]))))]]])])]))]])]]]])])])))])))]]))]))))]]]]))))])))))]))]])))])))]))]))]))))]))]))]]))]]]]]))]])]])])))]))]))]]))]))])]))])]]]]])]]])]])]))])]]]])])]))))])]]]))]]]])]]]]]))]]])]])]]))])]))]))])))]))])])]]])]))))])))))]]]]])])]])]]))]))])))))]])])]]])])])])]))))]])]]))))))))]])])]])]]))]))])]]))))])])))])))])))]]))]])])))))]]]]]]])]))]])]]]]]))])]))]))])])))])))]])]))]))]])))]]))))])])))])]]))))]]]]))]]]]]]])])]]))])])]]])]]])]]])))]))]))])]])))])))]]])])]))]])))]]))]))))]))))))]])))]))]]))]]))]]]]])))]]])))])))]])])]))]]])]])))]])))]))]]])))]]]]))))])]]))]])))))))]])])])]]]])])]]])))))]))))))]])))]]]))))))]))))]]]]))])]]))]]])]]]]])]])))])))])))]]]]])]]])]))])]))]]]])))])])]]])])]]]]]))]]])]]]])))))]]]])]]])]]]))])]]]))]]))])]]])]])]))])))])]])]))))])]]]])])]])]))]]]]]))]]]])]]])])]])))]]]]))]])]])]))])]]]]])]))))])]]])])])]]]))])))]])))))]]))))]])))]))]]))])]])))]]]]])))))))]])])))))]]])]]]]]])))]))))]]]))]]]))]))))))))]]]]]])]])]]])]))])])])]]]]]]]]]]))]))]])]]))]]]))]))))]]]]]]]]])]])]]]])])]])))])))]]))]]]]]]))]])]]])]))])]]])]])))]))]))]))))]]]])]]))]))]]]]]]])))]))])]]]))]))]]]])]]]]])))]))]]])))))]]]])])]))])]])))]]]]]]]]])))]]]])))])])]])]]]]]))]))))))))]]]]]]])))]])])]]]))]]]]]]))))])]]]))))]))]))]]))])]]]])]]]]]]]]])))))))]]])]]]))))])]]])))]])]])]))))]))]]]]])])])]])]])])))))])]))]]])]])]]))])))))])]])])]))])))))])])])]]]))))]]]])]])]]])])]]]])])))]])]]]]))]]))])]])])))]]))]])]]]))))]]]])]]])])))]]))))]])]))])))])])]]]]])]))]))))])]))))]]]]])])])]]]))]]]]]]]])))])))]])]]]))]])]))])))])))))]])])])))))]]]])))]]]]]])]]]])]))]]]]]])])]]])]]])]))]]))]])))]])]]])])]])])]]))]]))])]]))])])]]]]))])))))]))]))])]))])))]))]))]))))])]]]]]]])]]]]]))))]))))]]])])]))))))]))]]]]]]]]]]))))]))])))]]]]]]))])]))]))]]]))])])])])]]])]])))]))))))])))])]))]))]])]]))]])])])]]]])))))]))])))]))]]))))]])])))]])]]))]])]))]]])))]]]])]]))]))]]])]]))]])])]])]]))]])])])])]]]]]])])])]])))]])))])]])]]])]))))]))]))))))]])])])])]]])]]]])]))]]])))))]]))))]]))]]]]]))]))]]])]]]])])))]])]))]])))]]])])]))])]]))])))]))])))]]]))))])))])]]])]]))])]))]]))])))))))]]))]]]]))])]]))]]])))))]]]]])]))])))))]]])]))])))]]]]]])]])))])]))]]]]))))]))]]))))]]]))))))])]])])]])])])]]))]))]))]])))]]])])))))])))))]))]]]))])]))]]]]]])]]))]])]))])))])))]])])]]))]))]))])))])]]]]))])])]))]]]))]])))])]]))))])))]]]]]]]]]])]]])))))]])]]]))]]]]]]]]))]]]]])]]]))))])])]]]])])]))]]])]))))]]))])))))))))]]]]))]]))]])]])])))]))]))]]]]]]])]])))))])))])]])]))]]]]])))]])]]]]]]])))))))]))]])])]]])]]]]]))))]]]]]]]]])]])]]))])]])])]]])]])]))]]) ([[([[(([(([([[[[([([(([[(([([[([[[[([([(((([[[((((([[((((([([[[([[[[[((((((([((([((((([([[[(([[(([((((([(([(([[[([[[[([[[([((([([([[((([(([(([((([[([[([([[[((([([[[[(((([[[(([[[((([[([[[([[[([[([((([((([[[[[[(([[([[[([[[((((((((([([([(([([([((([((((([[([[[[[[(([[[([([[[[[[[([[(([[([((([([[[(([[[[([([([([(((((([[[([([([([[[(([([(([(((([([([[([[(([(([[[(([(((((([(((([[([[[[([[[[[([[[([[[([[(([((([[[(([[[[[[((([[([[([[[[([((([(((([[(((([([((([((([(([([[([[[([(([[[([[[([(([(([[[([[[[([([[((([[([[([((([[([[[[[[[[[([((((([[([(([((([[([[(([[(([[((([([[[[[([(([(((((((([(([[[([((([[(((([((([([[(([((([([[[[[([[([[[([([([[[([([[[(((([([((([([([[([(((([[((([[[([[([[([[(([[[[[([((((([(([[([[([[[([([([([([[[[[((([([[([[[((([[([(([([(((([([(((([[([((((((([[[[[[([[[[([[[[[[([([(([([[[[(([[[(([(([((([[[(([((([[[[((([[[[([([[([(([([[[[[(([([[[([(([[([(([(([((((([[([[([[((([([[(([[(([[[([(((((([([([[[(([([[[(([[([[[[(((([[[([[[(([[[(([(([[(((([[[[[[(((([[([[(((([([([([[([[([[[([[[(([[([[[[([(((([([[(([[((([([(((([(((([[([(([[(([([[([[(([[[(([((([[[[([[[(((([(([(((([([[[[([(((([[[((([[[([[(([[[[[[([[([([[([[[(((([([[((((([[([[(([[[[([([[[(([[[([[([([[(((([([(([[[[(([((([[(((([[((([(([[((([[([(([[[[((((([[[([[(((([[[[[[(([([[[[(([[([([([(([(([([([(((([[[(((([[((((([[[((([([[[((([[(((([[[((([[[[([([[([((([([[([([(((([[[([([[[([[((([([(([([(([[[[(([[([[[([((([(([([(([(((((([([[([[[[([((([[[([[[([([[[[(([([[[([[[([(([[([[([[((((([([([[[(([((([(([(([([(([[[[([[([(([((([(((([[([[([(([[(((((((((([([[[[(((([[((([([[[([(([[[([[((([((([([((([([[[[[[(([([[(([([[((((([([([([[([(([[(([[[[(([[[([([[([[(([(([[(([(((([[(([([(([(([[(([([[[[([[[(([(([(([[[[[(([(([[(([[([[[([[[(([[([[((((([[([[[((([[((([(((([(([[[[((([([([([[([[([([[[([((([((([([(([[([([[(([((((([([[[[([((([[((((([[[((([[([(([[[(([[[([(([[([[([([[([[((([([([[[(([(((((([[([[[[([[([[[([[(([(((((([[[[[((([[[([(([([([[(([[((([[[[([[([[((([(((([((([[[((([(([([[[((([((((((([(([[([[([([(([([([((((((((([[[([[([([(([([[([(([[[[[[([[[([[([[([[[(((([([(([[[[[([((([([[([[[([[(([(([(((([(([[[([[([(([(((((([([((([([(([[[([(((([[([[[[(([([((([([[([[(((([((([([[((([([([[(([(([[[[(([[[([[[([([([[([([[[[([((((([[(((([((([([([(([((([[[[[(([((([[[[[([([[[[([((([((((([[[((([[[([[([([[([[[[[([([[([(([[[(([([([[(([[([([[(([[[(([[[[([[([[[[(((([(([([(((([([[([(([[[((([(([[[((([[[[[([((([([((((([(([((([(([(([[[[[[(([[[[[([[([[[([(([([(((((([(([((([[(((([[([([[[[[[[[[[[(([[[(([[[[[([[[(((([[[(([[[([[[(((([([[([([((([(([([[[(([(([((((([(([[([[(([([((([([([[[[(([([((([([([((([((([[[[(([[(([([([[[([([[[[[([[([([[([(([[[(([[((([[[[([((([([(((([[[((([(([([[([(([[[[[([[([[[([[([[(([([(((([((([(([(([[[[([(([[[((((([[((([([[[([[[([[[[[([([[((([[([[(([[([[[([(([([([([(([([(([[((([[((((([(([[[[(([[(((((([[[[([[([[[[[[([[[[[[[[(([(([([[[[[[[((([[([([([[[[[((([[[[[(([[(([(([[([[((([((((([[([[(([([[([(([((([(([[[((([[([(([((((([((((((([([(([((((([((([(([[(([(([([([([[[([[[[[(((([[[([([(([([[[[[(([([[[[([([([([((((([([([([([(([[[([(([[((([([[([[[[[([[([[([[(([[(([[([([[[[([[([[(([(([[[[[[[(((((([(([([[(([([[[[((([[[[[[[((([([([[(([([[[([[[[([([([(([([((([[[((([[([[[([[[[((([([[[([[[(((([([([[[((([[[[[([[[[[((((((((([(([((([([[[[[[([([[[([[([[(([[([([[((([[[[[(([[(((((([([[[[(((([[[[([[[([([(([([[[[([[[[[((([[([([[((([([[[[[[(([([(([(((([[[(([[[[([([([[[(((((((([[[((([[[[[([(((([[[((((([(([[[[([[([[[(([[[(([[(([(([(([(([[(([[[(([[[([[[([([((([(((([[[([[[[[(([[[(([[([((([[[([[[([((([[([([[[[[(((((([([(([[([([(([(([(((([[([[[[[[[(((((([(([([[([[[(([[([[([[((([[[([(([([([[[[((((([((((([[[[[[[[[([(([(([(([((((([[((((((([(([[((([[[[[([(((((([[[([(((([(([[(([(((([([([[(([[(((([(([[(([(([[[[[([([((([[[([[([([[[(([[[([[[[([[[(([([([[((([([([[[[((([([[[[(([[([((([[((([((([[([[[[[([[([[((([[([((([(([[[[[[[([([(([[((((([[[[(([[([([((([[((([[[([(([[([(([[([[[([[(([(((((([[((([[[[(((([[[([(([[[[[[[[[[([[[([[[(([[[([[([[([[[[((([[([([(((([[(([[[[[[(((([(((([(([(([[[([(((((([([[([([[[(((([([[[[[[(([[[[(([[[[((([([[((([([([[(([([[[([[(([[[([(([([[([[[[([[[([(([(([[[((([[([[([[(([[[([(([[([([(([(([((((([((([[[([[([((([[[(([(([(((((([[[[((([((((([[([[(([([([[[(([[[[([[[[[([([(([([[(([[(([[[(((([[([(((([([((([[[[([[[[[([(([([[[(([(((([((([(([[([[((([([[[([(([([[[[((([[[([[(((((([[[((([([[(([(([([([[[(([[([((([([(([([[([(([[(([([([(([(([([[([[[[(((([[[(([[[((([(([[[(([(([([[[[[((([([((([([[(([(([[[((((([([([[[[([[[[([[[[([(((([([[([[([([[[(([((([([([[[[[[(((([([[(([(([([([([[[[([[([([([[[([(([[[[[([[[[[[((([([(([(([[[([[[([[(((([[[[(((((([[(([([[[[((([[[[[(([[([([((([[(([(([[[((((([([[((([(([[(((((([[([[[[([([[(([[(([(([[[[([[[([[[[(((([[([[([[[((((([[[((([[(([([[((([([((([[[([[(((([([[([[(([[[[([(((((([(([[[[[[([((([([[[(([[(((([[[([[([[[[[[([[[([(((([[[[((((((([(([[[([((([[[[([([(((([[(((([[[(([[(([((([([[[([[(((([(([(([((([[(((([[([([(([((([[([[[([[[[((([([([(([[([(([[([([(([(([[((([[[([([[([[(([([(((([[(([(((([[([(([[([[([[[(((([((((((((([([[[[[[((([(((([[(((([[((([([(([([[[(((([[[(([([[[(([[[(([([[((((([([[[(([[[((([([([(((((([((((([[[([[[[([[([([([[[([[(([[[([([((([(((([([[(([(([(([(([[[[(([[(([([[(([[([(([[[[[([([[[[[[((([[[([[([([([([((([[[(([[[([([([[[((((([[(((([[[([([[[[(([(([([([([([(((([([[([([[[[[[(((((([[(([[[(([[([([[[[(([[[[([(([((([([(([[((([[[[([[[[([([((([(((([((([([([(([[[(([[(([((([[(([([([[([([([[(([([((((([((((([([[[[((([[[([[[[(([[[((([([(([([[(([[[[((([([[[((([([[[[((([(((([([[[((([([((([[[[([([[(([(((([([[[((([([[(([[[((([[[[(([[(([[[([[((([[(([((([(((([[[(((([[(([[[([[[((([[([[[[((([(([[([[[([(([[([([(([((([([[[[([(([[[([([[([[([([([(((((([[[(([(([[((([((((([[(([[([[(([[[[[[[[([(([[([[([[([[[[[[([([(([([[[(([[[([[[([([[((([([[[((([([([([([([[[([[(([[[(([([((([[[[[((([((([[[[[[((([(([[(([[([[([((([([[[(([[(([[([([[((([[[([[[([[((([[[[[([[([[(([([[[(([(([[[([[[[((((([((([((([([[(([(([[[[[[[[[[([([[([[(((([([[[(((([[[[(((([(([(((((([[[[[(([((([[[(([[((([[([([[(([((([[([[([((([[[([(([[((((([[[[[([[(([[((((([((([([[(([[[[[(([(((((((((([[[([[([((([((([[[[([([((([[([(([([[([([[([([([(([([([[(([[(([([[([(([([[[(([[[((([[([(([[(((([[[([[[(([[[[((([[[(([[([[[(([([([(([[[[([((([[[[[((((((([[([[(([[[[[[([[[([([([[[[[[(([([[[[[[([[(((([([[([[([[[[(((([([(((([[([[([[([(([[[[((([([([((([[([[[([[[(([([[(([[[[[[[(([(([[[[[[([([[[([[[[([([(([([[[[(([[([([[[[[[[[[[[[(([([(((([[((((([(((([([[([[[[(([[(([(([((([([[[[(([([((([([((([[((((((([[(([[(((([[(([[[([((((([(([[([[[(([[([[([[[([(((((([[[[[([(((([((([([[[[[[([[[([([[[(([((((([[[([((((([([[((([[([[(([[([([([(([([[([(((([[[[([[((([[[((([(([([[([([((([([(([((((([(((([[[[[[[((([[[[((((((((([((([([([[[(([[((((([(((([(([([([(([[[[([(([((((([(((([[[[(([[(([[([[[[[[[([[[(([(([((([[([[([[[([[((((([([(([([([[((((([[[(([[[[[(([([([([(((([[[([(((([[(((([((((([(([[(([([[([(((([[[[([[([([[[([(([([[(([[[[[(([((([(([(([[((([([([((((([(([[([((([[((([([([[(([([[([[((([[([[[([(([[[([[([[((([([[[[(([[[(((((([((((((([(([[([[[[[[[[([[([[[((([([[[([([([[[([[(([([(([([[(([[(([(([((([([[[([[[[([((([([[[([[([([[[([((((([([[[[[((([(([[((([(([(([([[([(([(([[(([([(((((([[([[([[([[[[(([(((([[[[([[[[([((([(([([[((([([[[((((([[((((((((([([([(([((((([[[((([[(([([[[([[[((([[[([[[([([[[[(([(([([[([[(([([([[(([((([[[[[([(([[[[([[[[((([(([([[[[([[([[([[(((([([[[[([(([[[((([[[[[[[([([(((([[(([(([((([[(([([[[(([(([(([[([(([[([(([([(([(([((([((([([[([((([[(([(((((((((([[[([[[(([[[[[(([[[[([[([([[[([([[(([[([([([[([[[((([[[((((((([[[([([[[([[([([([(([[(([((((([(([([[[[(([([[[[[[[(([([[([[(([[[[[[[([([(([(([[([[[(([[[[[(([[[(([((([(([[([([((([([([[[[(([[[([[[[(((([[[(((([(([((([[([[[[[[[([(([(([([([[([([[(([([[[([[([(([((([([[[([(((([[(([(([[([[(([[(([((([[[([[[[[([[([((([[([([[([((([([[[((([([[[[[[(([[[((([(([[([((((([[[([[[[(([([([[[([[[[(([([((([[(((([[(([(([([[([([(((([(([[((([[(([[[(([([[[(([[([([[([(((([((([[([[([((([[[([([([((([([([([[([(([[[[[[[([(((((([((((([[([[(([[[[((([([(((([(([(([(([[([([[[([[(((((([((((([(([[(((((([(([[[((([[(([(([((([[(([[[[[((((([([([[(([([[([([((([([(([[[[[[([[[[[([[[((((([[([([[([[([[([(((((((([([[((([[[[[[[((([(((([(([[[[(((([([(([([[([[[(([[(([[(([(([[(([[[([([([((([[((([[((((((([[[([[(([[(([([[(([[(((((([((([[[(([[(([[([[[[([([([([[([[([([[[[(([[[((([[(((([([[(([[((([([([([([([[([[[([[[(([[([([[[(([[(([([[(([[(([[[((([([[(([[[[(([([[(([(((([([((([[[((([([[[(([[(([([[([[[[([[(((((([((([([[([((((([([(((((((([[([[[[((([[[(([((([([[[[(([[([(((((([(([(([[[([[[[(((((((([([[([[([(([([[(((([[(([[[[([(((([([[[[[([(([[[((([([[((([[[([[([([(((([[(([[[((([([[([[[([[[[[[(((([([([(([[((((([[((([(([([([([([[[[[([([[[(([[(([[[(([([(([(([[[[([([((((([([[[[(([([[((([([[(([[(((((([(([[[[((([[[([(((([([([[[([[[[[[[(((([([([[[((((([(([([((([((([[[[[[([[[[[([(([[[((([[((([[((([[([([[[([[([[([[(((([([(([[(((((([[[[(([(([[(([(([[[(([[[[[([(([([[([([[[((([(([(([((([[[((((([(([[([[[[[[[(((([[[([([([(([([[(([[([[([(((((((((((([[(((([[[([([[[[[[[[([[((((([((([[[((([(((((([([([[(([(([((([([[([[([(([[([([[[(([[[(([[((([[[(([(((([(((([(([([[[[[[[[([((([([((([([([[[[[[[(([([(([(([[([[(([((([([[([[([[[[([(([[([[[([[(([((([[[([([[([[((([[([[(([(((([(([[[([((([(([([[[[[[[([[(([([[[([([[[([[[([[([(([([(([((([([([[([([[([[([[(([[(((([([[[((([(([[[[([((((([([[(([[((([[[[[([[[((([([[[[([([([([([([[([(((((([[[([([[[[[[([[[[(([([([([[[[(((((((([([([(([[([([[((([((([[[([[(([[(([(([[[[([[([[[([[[(([(([[[([[([[[([(([[((((([(((([([(([[[[[[[[[([([[[((([[(([([([([[([[[[((([((((([([([(([(((([([(([[[[(((([[(([[[([((((([[((([[(([[(([(([[([[[((([(([[([[[[([[[[([([([[([[((([[([([(((([[([([[(((((([(([[[[([[[([(([[([[(((([[(([(([([([[[([(([[[([([([[([((((([([([([([[[((([[[[[[[((([[[(([([((([([([[[[([(([([[((([[([((([[[([[[[[[[[[((([([([[[([[[([((((([(([[[[[[(([[[[(([[(([[[([([([(([(((([([([[[((([(([[([([([([(((([[[[(([[[([[((([[[(((([[[[[[([[([[[[[[[[([([[([[[([[[[[[[[([(([[(((((((([([[[[[[[[[([[[[[[((([[([[((([[([([[[([((([[[(([[[(([[([([[((([(([((((([[((([(([[([[([[[(((([(([[([(([[((((([[(([[[((([[(([((([[((([[[(((([[[(([[[([(([(([[[[[(([[[([(([[[[[([[(((([[[(([([(((([[(((([((([[[([([[((([[(([(([[[(([[([([((([(((([(([[[[((([([([[[[[[([[[(([[[[(((([[[(([[[([[[([[[[(([[[[(([[[[[[[[([[[((([[([[(([(([[[[[[[([[[((([[([(([[[([(([([[(((([((([([(([(((([(((([(([[([(([[([((([([([[[[([[([[[([[[[(((((((([[((([(([[([[((([((([[(([([((([([((((((((([([[[(([[(([([[([[[[[([([[((((([([(([([([([([[([[[([[(([([(([(((([[((((([(([[[([[[(([(((([[(((((([((((([([((([((([[([(([((([((([(([[(([[([[[[(([[(([[([[([([[[([[[[[[(([[[((([[(([(([[[[(((([[((([[((((([[(([[[[([(([[([([([([[[[[([([[(([((([[([((([[[([[[[[[[(([(([([((((([([[[[[([(([[[[([(([[[([[[(([[[([[[[[([[([[([[(([(([[[([[([[[(((([[[(((([[((((([[([[(([([([[[([(([([(([(([([[([[([[([[(([([([((([[([([[((([[([([([[[([[((((([[[(((((([([([(([[[([[[[(([[[[[[[([[[[([[[[(([([(([(([[[([[((((([[[((([[((([[[[([[([((([[[(([[[[[[[(([(([([(((((([[(((([(((([[([([[(((([([([[[[[([([([([((([[[(([[[[[([(([[[((((((((([[[(((([(((((([([(([[[((([([(((([[[(([[[(([(((([(([[[([([[([[((((((((((((([([(([[[[[([([[[([[([(([((([((([[(([[((([([[[[[[([([[[[[[([[[((([((([(([([([(((((([(([([([([([[(([[(([[[([[[(([([[(([[[([([[([([([(([(([[[(([[[[([[((([([[[(([([[(([(([[([(([(([(([[[[[(([[((((([[([(([([[((([([([((([[[[([[[[[[((([([[((([(((([[[[[[[(([(([(([([([((([[(((([[[([((([(([[(((((([(([(([([([([[[(([[(([[([[([[[([([[[([[([[[(((([(([([[[(((((([[([[[([([([([[([([([([[(([([((([((((([([[[([(([[([[[([((([[[[([[([([[[((((((((([([[((([[([([(([[[[[([[[[[[[([[[([(([([[([(([((((([([[([[[[(([[([([[([[[[[[(([([[[([([[[[[([[([(([(((([([(((([([([[[[(([(([[([[[([[[[([([[((((((((([([[([[[[([[[((([(([(((([[((([([[[(([([(([[([((([([[[[(([((([[([([[([((([[[[(([([(([([([([[([((([[[([(([([([[([[[[[([[[[[([([([([[(([([([([([[[(((([(([[[([[([(((([((([[[([[([[[[[([[(([[[([[(([[[[[([[([[([[(([[((((((([[(([([[[([[([[[[[([[(([[([(([([[([([([[[[([((([(([[[[([[([[[((([(([([(([(([[[((([([((([([[[[(([(((([[(([[((([([[[[([[([(([(([[[((([(([[([([([([(([[[[(((([((([([([([[[[[[(([(([(([(([(([[([[([[[[([[([[[(((((([[(([[[([(((([[[([[([[[((([[([(([[([([(([((([[[[(([([[[[(([[[[[([[[((([([(([([[[[[((([((([[[[(((([(([[([[[[(([[(([((((([[([[[[((([[(([[[([[[([[((([[([[([[([([[[[([([((([[([[[[[[[[([(([(([([[[[([[[[(([[[[(([[(([[[[([[([[([[([((([[(([(([([[[[([(([[[(([(([(([[((((((([[[[[[(((([[([[([(([[[(([[[[[[[[((([(([[[([[[[[[([(([[[[[(((([([[[([((([[[(((([([[([((([[([[[[[[([[[((((([[[([[[[(([(((([[([([([(([[((((((((([(([[(([([([[[[[[(([[[[[(([[[[[[[([[(([[(([[[[(([(([(((((([[([([[[[([([[([[[(([[(([(((([(([(([([[([([[([[[[[([([[[[([(([[[((([[([[[[(([([(([((([[(([(([([[([[([[[(([[([[[([([[((([[[([[[[((((((((([[((((((([([([[((([((((((((([[(([(([[[(((((([[([[([[[[[((((((((([(([[([((((([[((([[([(([([((((((([(([[[((([[([(((([[([[[((([([([[[[([((([[[[[([([[[([(([[((([([([[[([[(([[[[([[([[[[[([[[[(((([([((([(([([([(([[(([([[([[([(([[[[[[([[[[([[[(([(((([(((([[((([[[[(([[((([[(((([[[([([(((([([(([[[[[[[([([([(([[[([[((([[((([[[(([([(((((([[(([[([(([[[[([[[[[[([[((([[[[[((([[(([[([[([(([[[(([([(([((([[[([[([[[[[[(([([[([[([(([[[[(((((([[([[([[[[([[((((([(([(([(([(([(((([(([[([[([[(([[[([[[[((([[[[[[[[((([[[([((([(([[[([[([([[(([[[[([[[[[((([[[([[[[([[([((([([([[[([[[([([[((([[[(([[([((([([(([[[([[[(([([(([(([[([[[[([([(([[[(([(((([([[([([([(([([[[((((((((((((([(([(([((([(([(((([[((([(([((([[[[[([[(([[(([([[[([[[([(([[((([[([[[([[([[([[[([([[[[(((([([[[([(([[([((([(((([(([[[([(([(([[[[(([([[[(([((((([[(([(([(([[[((((([[(((((([[([[[([(([[[[((([(((([(([([[([[([(([[[[(([[[[([[([[((([[[(([[[(([[(([[(([[[[((([(([([([(((([([((([[([[[((((((([(([((([[(((((((((([[(([[[[([[([[[([([(([((((([[[[([[[(([[(([[(((([[[[((([[([[([[[[([[(((((([([([[[[(((((([([[[[[(([[[[([[([[[((((((([[[[[[[[(((([([[(([[[[[((([[[[[[[[[((([([[([[(([[(([[[(([([[((([([[[[[[[[[[[[(([([(([([[[(([[[(([[[([([(([[[[[[[[([[((([[[(([[(([([[[([[[([[[((((((([([([([((([[[(([[(((([((([([[(([([[[(((((([((((([[((([((([[[([[[[(([[[[([([((([[[([[[[[[[[[[([[[([([[[(([[((([[([(([([([([[(([([[(([[[([[(([([(([[((([[(((([((([([[[([(([(((([([(((((([[[[[[[(((([[[[(((((([(([(([(((([([[([(([(((([([[(((((([[[[(([[([([(([[[([[(([([[[[((([([([[[[[[((([(([[[([[[[(((([[[(([[[([(([([(([([(([([[[[([[[([([([[[[[[[[[([(([(([([([([([([[[[(((((((([[(([[(([[[([(([(((([([([[([[[[((([([(((([(([(([([((([[[[[[(((([((([(([((((([[[[[[([[[[(((([[([[[[[[[[([[[([[([[[((((([[(([((([[[[([[([[([((((([((([([([[[([(([[(([((([((([([((((([(((((([((([([[[([((([[([[[[((([([((([([(((([(((([[((((([([([((((([[(((([[(([[[([((([[[[[[(([([([([[([[[[([((((((((([[([[(((([([[[[(((([((([((((((((([[(([([(([(([[[((([[[[([(([[[(([((([[[(([[([[[[((((((([[([[([[((([([[([(([[([[([[[(([[[([[([((((([((((((([(([([[(((([[[(([[([[([[[((([(((((([([([[[[[[([(([[[(([[([[([[[[(([[([(((([(((([[[[([([[[(([[(((([(([[((([[[[[([([(((([(((((([[[[[((([([[[([[[((([[[([([[[(([[([[[(([[(([(([[[[([[[[[([[[[[([(([[[[([[((((([[(([[[[[[(([(((([(([(([((((([[[(((([((([([[(((((([([[[([[[[[((([[[(([([[(([[[(((([[((((([([(([(([([[(((([[[(([[([(([[[(((([(([((([[([[(([((([[([([([((([[[[(([[(([([(([([([(([(((([(([[[([([(([([[[((([[([((([([([[([[([((((([[[[((([((([(([([[(([([[(((([[[((([[(((([[[([[[[[[([[(([[[[[([[(([((([((([(([[[(([(([[[([((((([[([([[(([(([[(([([(([((((((([[(([[[[[[(([[[[([[(([(((((([[[[[[[(([[([[[[([((([(([[(([([([[[([(([[(((((([[((([([(([[([([(([([((((((([(((([[(([[[[(([[[[(([(([[((((([[[([[[[[([[[(([[((([((((([([(([([[[((((([[((([[(([[[(([((([[[([(([[(([[[((([[[((((([[(([[[[(([[((([([(((([[[[[[(((((((([[([([[((([[[[[[[[[((((([[((([(((([[[((([[[(([[(([[(((((([[[[([[[[[[([((([([((([([([[[[(([[([[[[[([[[([([((([[[[([[[([([([[[([[((((([[[[[(([[([(([[(([([[[((((([[([[[([([[[[(([((([(((([(([((([[[[(([[[[[(([([[(((([([[(([[([[[(((([[[[([([[([[(((([[[((([[[[((([[[[[[([[[((((([[((((([[(([([(([(([[([[([[[[([([[[([([[[([[[[([[[(([[[[[[([[[[([[[((((([([([((((([([[[(([[[([([([[((([[([((((([(([[[[(((([[([([([[(([[([[([[[(([[([((([[[[([[[[(([(([[[([([(((((([[((((([[[([([[(([((([[([(([[(([[[[[(([[[[[[[[(([([(([([[[([[(([[[[[[([(([([(([([(([([((([([([[[[[[(((([[[[[[((([([([((([([((([[[((([(([([([(([[[[((([((([([[([[[(([[[[[(([[[[((([([[((([[(((((([((([[((([[[[(((([[(((((([(((([([[([([[[((([[(([[([([(([(([[([[[([([([[[((([[[[((([([(((([[([([[((([[([(([([[[(((((([(((((([[((([[[([([[[([(([([([([((([[((([([[((([([([[(((((((([[(([(([([([(([[[([(((((([([[[[[(([[(((([[[[[([((((((([(([((([((([[([(([[[[[[((((([[([[([([((([[([[(([(([[(((([[[([[(((((([(([((([([((([([[[[([(([(([[[[[([([[[[([([((([[[([[([[(((((([([[((((([((([[[[(([[([(([[((([[(([[(([[([[([[[([[[[[[[((((([((([([[[((([[([[([(([((([[(([(([(((([(([([([[[[[([[(([([([([[([((([[[(([[(((([((([[([[[(([[[[((((([[(([[((([[(([([((((([[(([[[(([[[[[(([[((([[(([[[[([(([(([[([(([([[(([(([[[[[([(([(((([((((([[[([(([[[[[[([((([(([([([((([(((([(((((((([([([(((((([(([(([[[((((([((([[([([(((((([[([[((([([(([(([([[(([[([([([(([([[([([[[([[[[[([(((([(((([([(([[([(([([(([((([[([[([(([[(([[(((([([(([((([([([([[[([([[(((((([([(([[((([(([[[([[([((([(([((([([((([([((([[(([((([(([[(((((([[[([[([([[[(((([[(([[[[[(([[(([[[(([((([[([[[[[([[[((([[[[[[([((([([(((([([[[[[[([[[[((((([([([[[[[[[[(([[[[[([([([[[[[((([[[([(([[([(([[([(([[[[([[[(((([(((([[([((([([((([([[[[(([((([[(((([(([[[([[(((([[([(([((((((((([[[[(([([(([[[(([[(((([([(([[([[[[[(([([([[([([(([([((([([(([([[(([[[[(([((([[[[[[((((([(([[[[[(([([([([[([[[[[((([([[([(([((([(([[([[[([[[([(((([[[((([([((((((((([[([[(((((([(([(((((([([[[[[[[([[[([[[(((((([[((([[[(([(((((([[(([[([[(([[([(([[[([([(((([[[[([(([[[(([(([([[[[(([[[([[([[([[([([([([(([([([([[[[[(([[[(([([[([((([(((((((([[([([[[[([[([[[[[([([[[(((((((([[(([[(([([([((([(((((([[[[(((((((([[[[[[[[([[[[[[((([[[([[([[([[[[([[[[([[[[[(((((([[([([[([([[([[([([[[[(((([[[(([([([[([(([([[([[[[([([((((([[[((((([[[[[[[(([(((([[[(([[([((((([[[(((([[((((((([[[(([([(((([(([((([([[(([[[[[([[[([[[[(([(((([[(((([(([(([(((((([[[((([[[([([(([[(([(([([[([[[[(([(((([([([[[((((([[[((([[((([(([[([((([[([[([(((((([([[(([([[([[[([[[((([[[[[[([[([(([[(([[[[([(([[([[[[[[([[[[(([(([(((((((((([((([([(([([([([[([[(([((([[([[[[[[[[([([[[[[([[(((([(([[((([(((([[(([(((([([([(([(((([[([[[(([([[([([[[((([[((([[([[[([(((([[(((((([[[([(([((([([[[[[[[[[([[[(([[((((([[(((([(((([[([(([[([([((([((([((([[(((((([([((((([([[[[[((([[(([(([[([(([[[[([[(([[(([((([[([[(([([[([([[[([[([[([[([[[[[[[(([[([([[(([([([[[[[[[[[(([[[[[(([((([([[[([(([(([[(([((((([((([((([(([[[([([([([([([[[([[(([([[[([[[[(([(([[[([[[([[[(([[(((([[([[(([(((([[[([[(([[[[([([(([([[(((([[(([[(([([([[[[(([[((([([([[([((((((([[[[[[([[([[[([[([[(([[([([(([([[[[[((([((([[[([(([[((([([[(([(((([[[[[[[(((([([[[[[([[[[[(([[((([([([[(([[[(([[(([[([([(([([([[[((([(((([([[[[[((([[([[[[[[(([[[([(([[([[[[((([(([[(([[([(([[[([((([[[(([(((([[[((([[[(((([[[([((([[[[[(((([[([[((((((([([(([([[[[((([([(([([[[[([((([([[((((([[[([[[([[[([(([[[[[([[[((((([[[(([((([(([(([((([[[[(((((((([[([[([([[[[[((([[([[[([[([[([[([[(([[[([((((([((([[((([(([(([([[[([(((([[[([(([[[([((([([(([[[[(([[[((([([(([([[[(([((((([[(((([[[([[((((([[[([([[([[[(((([(([[[[[([[[[([[([([[[[[(((([(([([(([((((([([(([((((([[([([([([([(([[(((([[((([[([(((([([([[[[((((([([[([[[[((([(((([((([[([[(([([([[[[([[[([[[[(((([[([([(([([([[[[[(((([[((([([[(((([(([([((([[([[([[(([[([[(([(([(([([([[(([(([((((([[((([[((((((((([[([([[[[[[((([[(((([((([([[[[([[[([((([([((([[[([((((([((([[(([[[(([[[[[(([(([([([[(([[(((((([[(((([(((([[([[((([[([([([([((([([[[([[[((([[[[([(((((([[(([[([(([(([[[([(([[[([[[((((([([[[[((((((([[[[([[[([[[[((([([[[(([(([[[((([((([[[[[((((([((([[([[(((((([(((([([[[((((([(([([([([([(([([[[((([[(([([[(([[[([[[((([[[[[[[([(([([[[(([([((([[[[([[[(([[([((((((([(([([[[([[([([[[[([[([[[(([([[([[[[[((([([(([[[[(([[([[([(([[([((([[((((([([[([([(([([[[[[[([[[([[[((([[[((((([[[(((([[[([(([[[[([[[[[((([[([((([[([[[[([[[(([([([([((([([[[(([(((([[([[[(([([([([[([([(([((([[[((([(([((([([[(([((([[((((([[(([([([([[[[([(([[[([[((([(([(([[([[([[[((([(([[(([[(([[[(([([(([[[([(([[(([(((([([(([[([(((([(((([[[((((((([([(([([[[(((([[(([[(([[([(([([(([(([[[([((((([[[(([[([([(((((([[((((((([(([((([[(((([[([[(([[(([[(([([([[[(([[([([((([((([[[(([[((([([[[[([[[[(([[[[(((([([(((((((((([((([([([([[([((((([[([[[[([[((((([[[(([(([[(([((([[[[[[((([[([[([[[[(([((((([([[(([[([[((([([[[[[[[(([(([[([(([([[(((([[[([(([((([(([[(([[[([[(([[(([[[[[[(([[[(((([[[[([[[([[[([[[[([([((([(((((([(((((([[((([([([(([[[[(([[[([(([([((([((([[[(((([[([[(([([((((([(([((([((([[[(([(((([(([[([(([[([[([(([([(([([[[([[[([(((([[([(((((([[[(([((([(([([(([(([(((((([(((((([(([[([((([[[(((([[([((([((([((([[([[[[(([([([[(((([(((([[[[([(([((([[(((((([(([([(((([[(([[([((([(([[[((([[(([([[(([([(([[[[([([[((([[([[[[(([((([([[(([([(((([[([(([[((([([(((((([[[((([[[[((([([[((([([[[([([[[(((([([([[([((([[[((([([([[([[(((((([[[(([[([[[[([(([[([[[((((([((([([[[(((((([[[[([[[[[[[([[(([([[((([(((([[[([(([[([[([[(([([((((((([(([[[([(([[([(((([[([[([[[[[(((([[([(([[([[([([[((([[[([[[(([[[(([([(([[[([([([[[[(([[[[[((([(([([[(([(([[([[(((([[([(((([[([[[([(([((([((([([([([([[([[[(([[[[[(([[[[(((([(([(((([[[([((([(([[[(([[[([((((((((([([[[((([[[[([[[[((((((((([[((((((((([[[((((([[([[(((((([((([[([([[([[[([(([[([([[([[([[[([(([[[([(([[[(([[([[[[[((([([[[[([[((((([[[[([[([[[[(([[[(((([[([[([[[([[[[(([((((([([(([[(((([((((([([([[[[(([([((([[[[([[([(([((((([[((([((([([[((([[[((([(([([[([([[([(([[([[(([(([([[[[[(([[[[([([((([[([(([([([([(([[(([[[([[(([[([((((((([[((([((([[(([[([[((([[((([(([[([[[[([(([[(([([[[(([((([((((([(([[([(([[[[[[(((((([([(([(([[[[([((([[[([((([((((([[[[[[([(([[((((([([[(((([[(((([([[[(([((([[[[[[[(((([[(([([(((([(([([[(([(([([[[[[([[[[[([(([[[[[([[[([[(((([[[((((([([[[([[[[[([[(((([(([[[[(([[(([(((([(([((([(([([((([([[[(([((((([[[([[[(([([[[((([[([[(([[[[[[[[[[[([((([(([[[([[((((([((((([(((([((([([([([[[([([((([((((([(((((((([[[([[([[[[[((([[((([([(([(((([(([[([[[[[((([[([([(((([([((([([[[[([[((([[[([([((([([[[(([((([([(((((([(([([((((([[([[[[([(([([([([[(([(([(([[(([[[([(([(([([((([(([[(([[[([(((([([[((([([(([[(([([[[((([((([[(([([(([([[[[[([([[([(((([(([(((([[[[[((([([[([([(([((((((((((([[[([[[([[((([([[([[([((([[[([(([([((([((([[(((((([[([[((([[[[[(((([[[([[([[([[[[[(([[[(([([(([[([(([([([[[[((((((([[[([[((([[(([([[[[[[(([[[(((([(([[[[[[[[[[((((([([[(([[[(([([[((([[(([[((((([([[([(((([([[[[([(([(([(((((([[[[[[[([[((([[[[[[[([([[[[[([[(([([[[([[[[(((([(((([[([([((([[(([[[([(([([(([[(([((([[([[([(([[(([([[([([(((((((([[([[([[[([[([([((([(([(([([(((([[[[((([(((([[[[((((([(([((([[(([[([[[([((([((([[[[[[([((((((([[[(((([[[[[[[[((((([([([[(([[[(([([([([[(([(([([[[([(([([[(([([[[([([(([(([[(([[[(([((([([((([[[[[([([[[[[([([[([[([[([[([[[[(([[[(([([[[([[(([[[([((([(([[(([[([[[([([([[[(([((([[[(([[[[(([(([([[([[(([[([(([[([(([(([[([(([([([[[[[[[[(([[[(([[(([[((([[[(((([(((([((([[([(([[[[((((((([[[(([(([[(([[[[(([(((((([([([(([[[([[((([[[(((((([([[([((([(([((([[((((([[[((([([[(((((([([((([([[[([(([[[[[(((([(([((([[([([((([[[(([[[[[(((([([((([[(((((((([[([([(([[[([((([[[[(((((([([[([(([[[([((([[[([(((((((([[[[[([[([[[[[[[[[([[([[[[((((([([[(([[((((([[[[[[[[[(([[[((([[([((((([[[((([([(([(((([[[[([[[[(([(([[([([([[([([([(((([[([[[([(((([([[[([([([((([[([([[[((((([([([([[[(((([[((((((((([([[([([(([[([([([([[[(([[([((([[(((([([([((((((([([[[([([[[[(([(([[([([[([[((((((([(([[[(((([[[([([[([[[[([([((([([[(([[[([([[([[[([[[((([(([([(([[[[([[[(((([((((([[[[[((([[[[(([[[([([(((((((([((((([(([[[[[(([[(([[[[[(([[([(((([(((((([((([([[((((([[([(([([((([(([[[([([[[[(((([[([[(([([((([[[([([[[([[([([(([[[[(([([[((([[[((([[[[((([[([([([((([([[([[(([(([((((([[([(((([[(([((((([[[[(([[((([[[(([(([(([[[[([[[[[(([[[[(([[(((([([[[[([[(([[[[(([[[((((([[[[[(([[[([[(([[[[((((((([[[[[[([[([[(((((([[[((((([[[([[([[([([[([(([[([[[[(([[([[[[(([[[[([(((([(((((((([[(([([[[(([[(((([(([(([[([([[[[[(([([([[[[[((((([[[((((((([[([[([([[[(((([([[[[[[[(([([[(([[[[[([[([[[[([([[([[([[(([[((((([(([([[(([[(([([([[([([[([(([([[([(((([[(([[(((((([(((([[(((([(((([[([[[([[([((([([([(((([([([(([(([[(([([([((([(([([([([([([((([([[(([[[([(([((([[(([[((((([[[[[([[[[[([[[(((([((([(([([[([(([(([(((([([[[(([(((([(([(((((([(([[[[([([([[[[([[(([([([[[([[(([[[([[[[((([[([[([[[([([[[[[[((((((((([[[[([(([([([([(([[[([((([[([[([([([([[[(([([[((((([([(([([([((((((([([([[([(([([([[[(([[[[((((([(((([[(([((([([(([([[([([[(((([(([[[[(([([[[([(([(([(([([([(([[([(([([([([(((([[([(((([[(([(((([([[(([([([([[([([[[[[[([([([[([([(([([(([(([[((([[[([[([(([([((([[([[[[([[[[[([[([(([(((([[[((([([(([[([(([([(([(([(([((((([(([[([((((([[[[(((([[[(([([[[(([([(([[[([[((([[((((([([([([([[([[(((([(([[([[[([(([(([[[[(((((((([((([[([(([[[((([[[[[([((([((([([(([[([([[[(([((((([[([([[[(([([[[[[((([(((([([(([[([(((((((([([(([(((([(([[(([([((((((((([[[[((([[[[[[[(([[(((([[(([[[([[(([([[([(([[[([([[[(([(([((([[(([([((([[([(([[[[[[[[[[[[[[[([([[(([(([[[[[[(([[[[[((([([(([[[[[((([[[[[[[([((([([(([[([([[((((((([(([((([[([[[([([[([[[[(([[([[[[[[(((([[[(([([([[(([[[[([([[(([[[[(((([[([(([([[([(([[[(([[([((([[([[[([[[[[[[(((([([[(((([[[([[[[[[(([([[([[[[([([[(([[[[(((([[[[[[(((([[(([[[(((((((([([[([(((([[[((([[[((([[[[([[[(([[([([(([((([(([[[[[(([[[[((((([([[([(([((((([([[[([(([(([([([([([(([(((([[([[[[[[[(([[([((([[([[[([[(((([((([(((([([[[[[((([(((([(([([(([([([([(([[(((([[((([[(((((([[([(((([[([((((((([[([([((([[([[[[[[([[((([[[([[(([([[[[((([((((([(([((([(([([[[[(([[[[(([([(([[(([[([([[([(((([[([([(((([([(([[[[(([[[[(((([[([([[([[[([((([[[([((([[[[([(([[([([([[[[([[[[(([(((([(([([[[[((((([[[[(([(((((((([[[[[([(((([([[([([(([(([(([([([([(((((((([([([[((([(([[[[[([((([[[(([((([[[(((([[[[(((([(((([[[([([[[[(([[(([(([[([[((([[((([[[[([([[([[[[([([[[[([([[[[[[([[(([[[[(((([[[[(([[([[(((([[([[(([[(([([[[([[([[([[((([[((([((([[([(([([([([[[([[[[[([([((([([[[((([[[[[([[[[(([([[((([(((([(((((([[[(((([[([[[[([[[([[(([[[[((([[[[[[(([(([([([[(((((([[[([[(([[[([([([[[([[[((([(([((([[([[(([[(([([([[[[[[[((((([([[(([((([[([([[([[[(([[[((([((([[((((([([[[[[[[[[[([(([([[[([([(([(([[[(([[[[(([([((([[[([[(([[([[[[[[((([(([[[((([[[([[[(([([([([([[[((([[((([([(([(([[((([(([([([([(([((([[[(([(((([[[(([[(((([([((([([[[[([[((([([[[([(([[([[[[(([([[((((([[((([([([[(([([([([([[[([[([[([[[[[[[(([[[[[[(([(([([[[[[(([[(((([([([[[[[(([[(((((((([((([[(([[[[[(((([((([[[([[[([([((([(([[[[[([([([(((([[[(([(([([([([[([[[[[[[[[(([(((([[[(([[(([([[((([[[([[[(([(((([[(((([[((((([([([[([(([([[[[([[([[([([(([[[(([[[[[[(((([[[[((([((((((((([([((([([((([[[(([([([[[((([(([[[[[((([[[[(((([([(((([[[[[([([([(([(((((([[[[[[[(([[[[[[(((([([[[([[((([(((([(([[[[[(([([[[((((([((([[(((([[[([[[([(([((([[[(([([([[[(([(([((((([((((([(([([[([[[[[[(([([(([([([[[[[[([[([((([((([([[[[[([((([(([([[[([[([([([((([(([(([([([(((([(([(((([([[[[[[(([[[[[((((((([[[[([((([([[[([((([((([((([(([(((([[(([[[[[([[[(([((([(((([[[([[[(((((([[((((([[([([((([[(([(((([[[((([(([((((([[[(((([(([([([([[[[(([(((((([([[(([[((([([[((([(([[([([[[([([[((([[[(([(([((([[(([[[[[[[[([[[[([(((([[[[((([[[(([[(((((([(([[([(([((([[([(([((([[(((((([([[[((([[([(([[(((([[[([((([([[([([[[[((((((([([[[(([([([([(([([[[((([([[([[([((([[[([[[[[[([(((([[[[[(((((([([(([(((((([((([[(([((([[[[[([(((((([([[[[[[[(([((([([(([[[[((([[([[([[[([[[([([[([[((([[[[[[[((((([([[[([[((([[([[([((([[([([([(([[[((([[[[[[[([([[((([((([([([(([[[([[[[[((([(([[([[[([[(([([((([(([[((([[[[[[((([[[(([[(([((([[([[[[[([(([[((([[[([[(((([((([[((((([(([([[([[([([((([[((((([(((([[(([((([([((((([([([[[([[([([([(([[[([([((([[[([[[[([([([[[[([(([([([([((([[((((((([[[[[(((((((([[(((([[[[(([([[(((([[((([[([([[([([([[[[[[[[[[((([[([([([([[[[(([(([(((([[[[((([[((([([[[([[[([(([[[[[[([[[[[((((([[[([[[[[([[[[[[[(([(([[[[[([[(((((([((([[[((((([([([((([(([((([[[[([([((([([[([((([[([[(([(([([[[((((([([([(([((([[([([((([([([(([([[[([(([(((([[([(([[[[([([([[(([[(((([([(([([([([(([([(([((((([[[[([[[[(((([([[([(((((([[[((((((([((((([([[[[([([([(([([[[([[[[[[[([([((((([[([(([[[([((([[([(([[[[[[[(([([[([(((((([(([[[[[(([[[([((((([((((([([[(((([[[[[[[[([(([([[(([[[([(([((((([([[(([([[[([[([[((([(([[[(([[((([[([[([[((([([([[([(([[[[[[([[([[[(([((((((([[([[[[[([[[[([[[([(([(([([[([([[([[([[([([([[([([[(((([[[(((((([[[(([[([(((([[[((([[[([[((((([(([[[([([[[[[([(((([[([[[(([([[[([[[((([(((([([[((([[(([([[[[(([([((([[[(([([(([[([(((([(((([[([([((([[[([[(([([([([[(([[[([(([([[[([[([([(([([[([([(((((([[[[[[[((([(([[[[((([([[[(([[[[[[[([[[[(([[((([[([([[([[[[[((((([[[(([([([[((([[[(((([[([[([[[([[(([[[[(([([((([[([[(((([[((([[(([[[((((([([([[([(((([[(([[([[([[(([([(([(([[[([([((([[[([[([((([([(([([[([([[[(([[([[[([([([[((((([[[([([[(([[((((((((((((([[[[[([[[[[([(((([[([((([[([(([[[([(([[([(([[[((((([[([([[[[[(([([[[((([[[([(([[[[[[([[[[([[([(([(([[[[[(([([([([[[((((([[([[((([[[[((((([(([[[[[([[[[((([[[[[[([[(([[[[[[[[[((([([[([[[[[(([((([(([[([([(((([[[([([[([([[([[(([[((([[[[([[[([[([([[(([((([[([[([[[((([[[([(([((([[([(([([((([((([[[([([((([([([[[[[(([([[[[[([([[[[[(([[([[([[[[(((([([[([[[([([([[[[((([(([((([[([[(([([([[[(([([(((([([((([([[([[(([([[([[([([[[(([[((([((([[[[([(([[((([((([([[[([[[[(([([(((((([[[[[[((([[[([([(([[[([((((((([[([((([([[[[[([[(([([([(([[[(([(([([[(([[[(([([[[[((([((([[([([[[[[([([([(((([([(([[[(((([(([[(((([[[[[[(([([[[([(([[[[[[[([(([([([((((([[(([[([[([([([[[(([([([([([([[[([[([[([[([(([((([[[[((([((([([[([[([(([[[([([([[[(([[([[([((([([[((((([[[(((([[((([([[[[[(([[((([[([[[([[[([((([(([[[([(([[[[[([(([[[([(((([[[(([([((([[(([(([([([(((([[[[[((([[[([[[([(([([[[(([([([([[([[[[(([((([(([[[[[(((([((([([[([[(([((([(([(([(([[([[[[(([(([((((([((([[([([[[([[([(([[([([[((([([(([((([([(([[[((((([((([[[([([([[[((([[[(([[[([[[([([[([[[([[([([([[[[(([[(([[[[([[([[[[[[[([[(((([([(((((((((([[[([[[([([[(([(((([[([(((([((([([[[(((((((([([[([((([([((([[[(([[((([[(((([([([[[((([(((([([[[([([[[(([([[([([[[[[([[(([([[([[[[[((((([[([([[[([(((((((((([[[([[(([(([([[(([[(([[[(((([([[[[[(([([((([[[(([[[([(((([[[[[([[(([(([[[[[([[[((([[([([(([[[[(([[[(([[[[[[([([[[((([((((((([([([[[[(([[([[[((([[[(((((([[(([(([([[([(((([[(([[([[(((([(([(([(([[((((([[([[[[[[[((((((([[([[[[([[[[(([((([[([([[[(([([([[([(([[([([([([[[(([[([[[(([[([(((((([(([([[[((([(([[([(([([((([[([[(((([([[[(([[[[([[(([[[(([[([[([[(((((([((([([[[[[(([[(([([([[[(([(((([[(([([[(([[([[[([[[[((((((([(([[[[(([(([[[[[[[(([([(([[[[((((([([[((((((((((([((([((([[([([([[([[([([[([[(((([[((((([[[([[[([([[([((((([[([[(((((([([(([[[([((([[[[([[[[[(([[[[([([[[[[((([[[([[[([(([[([(((((([(([[[(((([([((([([[([(([(([[(([([[([[[[([([[([[([([[(([[[[(([(([([[[([([(((([[[[[((((([[((([[[[[(([(([[([([([[[([((([[((([[([(([((([([[([([[(([[([[(([[[[(([[([[(([[([[([[[[[[[[[[(([[[([[([([[[[([[[[([([[((([(([[[([(([((([([[([(([((([[[(((([([[((((([(((([[(((((([[[[[[([[[([([[((([[[[(([[[[[((((([(([[[[([((([(([[([[[[[[(([[(([(([[([([[([[[([[[([(([[(((([[((([[[(([[[([[([(([[((([(([(((([[[[(([[([(([[([([[(((([(([([([([[[[[([([[[[((([[((((([[([(((([([[[[[((((([(((((([[[[([[[([(([([(([([[[(((([([((((([[((([((([((([([([[(((([[[([[[[([[(([[([([[([[[([[[([(([[((([([[[[[([[(([[[([[((([[[[[[([([((([(([([([[[[[[([((((((([[[[[([[[(([[[([([((([[([[([[[([([[[([[([((([[[[(([((([[(((([[([([[(([[[((([[[([([((([((([[(([([(([(((([[([([[(([([[[[[(((((([[[([((([(([(([([([([[([([(([([([[[([[[([([(((([[([(([[[([(([[(([[([([([((((([[([[[[[[([[((([([((([([[[[((([[[[[(([(((((([((([([[[[[[(([[[[[[((((([[[[([(([([([[(([[[[([[(((([((([[([[(([([([[[[(([(((([([[((([(([((((([[[((([[(([[[[[(([([[([([([[[[[[([[[[[[[[([(([[(([((([[[[[([(([[([([[[([([[([[([[[(((([((([[([(([[[[[([([(([[[[([[[[([([[[(([([[([([[(([[([(([[((([[[[[([(([(((([[(([[(((([([([[([([[(([((([([[[[((([(((((([[((((([(([([[(([(([([[((((((((([[((([((((([[[[(([([[[((([([[[[([(([[[(([((([[[[([([(([[([[[([[[[((([[[[[([[((([[((([([[[([([[(([[[[[([[[([(([[((([([[([[[([([([(([[[([([[[[([(((((([(([(((([([[[((((([([((([([([[([[[[([((([(((([([[([(([((((([((([(((((([[((([[[((([([(([[[[[[[([(([[[(([([(([(([(([([[((([[(((([(([([([([([[[[[[[[([[[[([[([(([[([((([([(([[[[(([[([[[[((([[[[([[((([[([[[((([[[[[[[[[((([([[((([(([([[[([[([[[[((((((((((([[(([[[([[[[[[([[([[((([[([[([(([[[[[[[[[([([[[([[[[[([(([[(([[(([[([(([[([((([[[[[(((((([[([(([([[((([[[[[[[([([([[[([((([(((([[((([[([([[[[((([[([[[([((((([[[[((([[([[[[(((([[([[[[[(([(([[([[[(([[((([((([[[(((((([[([([([[[([([[[[([[[[([[(((((([[[([([([[[[([[([[([(((([[([[([[([([[([([([([([([(([[((([[[[[[([[((([(([(([[[[[[(([(([(([([[[([(((([([(([[[[[[[[[[([[[([[[[([([[[[[[[[[([([[([(((([[((([(([(([(([[[[((([[([[([(([[[[[[[(((([[[[(([[[[((((([[[[([[[(([(([[((([[[([[[[([[[[[[((([[((([(((([([([[[[[[(([([[[[((([[[[(((([[[(([(([([((([[[[[(([((([([(([[[[[([([([[[(((([(([[(([[[([[([(([[[[[[[[[[[([([(([([[[(([(([[[(([[[[([([[(([([[[((([(([[[((([[[((([[((((([[([[[([(([(([[[[[(([(([[(((((((((([(([[(([(([[[[(([([((([[[[[([[[(([((((([[([([[((([([[((([((([(([[[(([[[([(((([[(((((((((([[[([[(([[(([[[[(((([(([[[(([[(((([(([[[[([[([((([[([[([(((([([[(([[[[[([[([[[[[[([([[([[(([([([([[[[(([([(([[((((([[((([[[((([(([((([[([[[(((([[([([[(([[(([[(([[((([[[[[[[((([[[(((([(([(([[[([([[(([[([[([(([[([((([(((([(([[[(([[[((([([[[[([[([([([(([([(((([(([([(([((((([[[[(([[[(([[(([[([(([([[(([[[[([[([([([(([[(((([[(([(((((([((([([(((([(([(((([((([[([[[[[(((((([((([(([(((([([([([([([[[([(([([[(([[([[[[[([[[([(([[[(([[[[[[(([[[([(([([((([[[[([[(([[(([([(([[[[[([(([[(([[([(((([[[[[[[(((([([([([([([[[[([[(([((((((([[([[[(([(([[((([[(([([(([[(([[[([([([[[([([[(([[(([([[[[[[(([(((((([[[[[([[[([[([[((([((([[[([([([([[(([([([((([([[([([[((([[[[[([[[[[[(([[((([([[(((([[[((([((([(([([(([([[([[([[[[([[[([([[[[[[[[(([([[((([([[([(([[(([([((([[(([[((((((([[([[((((([[[([[[((([(((([((([([[((([(((([(([([[(((([([([[[([([((((([(([([((([[(([([[[([[[(([([[((([(((([[[[[(((([([[[([[((([(([[[[(((((([[([[(([(((([[[([[[[([[[(((([([[([(((([([(([[[([([([(([[([(((([[(([[([((((([[([([([([[(([[[[[(([(([[[((([[[[[[[([[(((([(([([[(((([([((([([[[[([[(([[([[[(([[([((((((([[([[([[[[[[[[(([([((([[[(([[[((((([([[[([([[[[[(((((([(([([(((([[[(([[((((([([[(([[(([(([[[([[[[((([[(((((([([((([((([[[((((([((([[(((((([[[([[[[[([[[(([([[([((([([([(([([[[[(([[([([[[[([[([[[([[[((([([([((((([[[[[([[[([([[([[([([([[([[(([((((([[([(([[[[[[[([[[([[((((([[[([[(((((((([[[([[[([([([([[[[[(((((((([[[[[(((((([[[([[(((([[[[(((([[([([([[(([((([([[[((([[[[[[[(([[([[(([(((([[[([([[([((((((([([[[([[([[[([[[([(([(([([[[[((((([(([[[(([[[(([[[((([(([(([([[(((((([([[(([[[[[([((([(([[([[(([((([[[([([[(([[[[[([([[([([([[([([[([[([([((([[(([(([[[((([(([(([[(((([[([[([((((([[(([([[(([[[((([(([[((([([[([([(((([([[([[([([(([[(([[([[(((([([[[(([[(([(([(([([([[[((([[[[[(((([((([[([((([([(((([[(([([((((([[[([[[(([(((([([[((([[(([([(([[[[(([((([(([[((((([(([[[[[[([[(((([([(([(((([([(([[[[[[([((([([[[[([([[((((((([(([[([[([((((([[(([(([(((([[([([[[(((([([[[[[([((([([[[((([[((([[[([((((((([[([(([([(([[[[[[([[(([[(([([(([(([((((([[(([[[(((([([[([[[[[([(((([[[([([[([[[(([[[[([[(([[([[[(([(([[[[((([((([[[((((([[(([(([[[[[([(([([([([[([[(((([(([[[([[[([[([[([[(([[[([[[(([([([((([([[([(((((([([((((([[((((([(([[(([((((([[([[(((([[([([([[([([[[[((([[[[((([[[([[[([[([([(([[([[(([[(([(((((([(([((((([(([(([(([[[[[(([((([(([([[([[[[((([[([(((([[(([[([[[[([[[[([([((([([(([[([[[([(([(([((([[[([(([([[[([[(((([(([(([[((((([[(([([(([[[[[((([(([[[[(([([[([[[[(((([[([((([((([((([([[((((([([[[(([[[((([([[[[[([((([(([(([([[[([[[((([[([[[[([((([([[((([[[[[(([([([((((([((([([[(([[[[[[[[([[[(((([([[(((([[([([[[(([[[([[([[([([((([[(([(((((((((([([[((([[([((([((((([[([(((([[[(((([([((([(((([[[(((([[((([[[[[(([[[([([[(([[(([([[[(([[[[[[((([[([([(((((([(([[([([[(((((([(([[[([([[[[[[[((((([((([([(([[([[[(([[[(([[[[[(([([[(([[(([[[[[([(((((([((([([[((([[([[((((([(((([(([(((([[(([((([[[([([([([([[[[[(([[[(([([[([([[([[[[(([([[(((([([[(([[[[([(((((([[[[(([[[[[[([([[[[[[[(([[[(([[[((([(((((([((([([[(([([([([[[[(([(([[[(([(([[((([([((((([[(([([[((([[([[[(((([[[([[([[((([([[(([([(([[[(([(([[[(((((([[((((([[[([[[[[[(([[(([(([((([((([(([[[([[((([([([([((([[[(([(((((([[((([[((([(([((([([[(([([(([(([((([[([[[([[[([(([([[[[([(([(([(((([([[([((((([[([[[([([((([[(([([(([([([[[[(([[[([((([[[([[[[([[([[[(([(([[[([[[[[[([(([(([([([[((((([([([[(((([([[[(((([[[[[([([[[([(([[[[[[(([([[[[([[[[[([[[[[[[([(([[((((([(((((([([((([(([[[[(([([[[[[[[[[((([[[((([((([[(([([([[([((((([[([((([[[[[([[(([[[(([(([[([([([(([[[[[[([[[((([[[([[([([[[([(([[([[((([[[[(([(([([[(([([[[[[[[(([(([[[((([(((((([(((([[[[([([[([[[[[([(([[[[[(([[([(((((([(([[[[([((((([[([[[[(([([[[([(([[[((([[([(((([((([[[[[([[[(([((([[[(([(([([[([[[((([((([([(([[(([[[([[([(([(([[(([[[[[(([((([[((([([([[(([[[[[[[[(([([[([[([([(((([[([[([([([[((([[[(([[[[((((((([(([[([[((([([(([([((([[[([[[[([([(([[([([[(((((([(([[([[[(([[([[[([[(([([([[[([((([((([([[([[([[(([[([[((([[([(([[((((([[[[(((([(([(([[[[[[((([[(([(([([((((([[(([([[(((((([(([([((([[[[[(([[(((([[[([((((([[[(([[[([((([([[(((((([[((([(((([[[[((([([[([[[[[([([[(([[[[[[([([([(([[([[(([(([[((([[[(([[([([(([([[(([((([(([[((((([((([(([([[[[[([([[([([(([([[([[([(([((([(([(([[([[(((([(((([([(([([([[((([[((([(([[[([[[[([(((([(([([([([([[[([([(([([(([([[([(((([[([((([[[([[[((([[((([[(([[([[[[((([((([[[[[[(([(((([[[(([(([[[[[(([[(([[[(([([[((([[(([(([[[[[[(([(([([[[[[(([[[[(([([([([[[(([(([[[(((([((([[[(((((([[(((((([[[[[([([((([[([([[([[(((([[((([[([[[([(([((((((([([([((([[([[(([[([([[[(([[[([[([[[[([[[[(([([[([((((([([([[([[(([((((([([((([[(((([(((([((((((([([[[[(((((((([[(([((((([(((((((((([[([(([[([[[([(([([[[([[[[(((((((([((([([([[[[(([[[[[[[[[([([[[([(((((([([[([[([[[(((([[(([([[[(((([([[[(([[([(([[((([[[[[(([([[(([[([(([(([[[(([[([([([[([(([[((([[([([((((([[[([(([(([[[[([([[[[([[([((([[(((([[[[((((([[[[([([[[[((([[[(([((((([([[[[[[([[[(((([([([([([([[([((([[([[(([((([[[([((([([[(([[[(([(([[[((((((([([(([[(([[(([([[[([((([[[[[([[[(([[[(([[[([[((((((([(([([((([([[([[[[([(([[([[[((([([([(([(((([((([([([((((([((([([([(((([(([([(((([([([[(((((([[[([[((((([([[[[[([(([([[[[[[(((([([[((([[([([[([((([[[[[[(([[([([(((([([(([[([([((([((((([[([[([([([[[[[[[[([[(([[[[[[((((((([[([(([(([([([(((([([([([[((([[((([[([([(([[([[(([[(([[([[(([([[([[[(([[([([[[[[(((([([([[(([[([([[[([([[[([([[((([([([(((([[[[(([[([((((([[([[[[([(((([(([[(([([([[[((([[[[((((([[[[[[([[[((([[[([[[[(([[[(([([(([(([((([[[[[([([([(([(([[((((([[(([[([([[((([[([([([[[[[([([([[([([(([[[(([[([[[[[((([(([[(([(([[(([[[([[[([[[(([[(([([([[([[([[([(([((([(([((([[([([([[[[((([(([([[[[([[(((([[([[[([[([[([(([[[[((([([([([[[([((((([([(([([[(([[([([[[([[[[[[[[[[([([(([[[(([([[(([(((((([[[([([([[[([((((([[([[[[[((([((([((((([([([[[([([[((([([[[(((([[([[[[(([[[[[[(((([[(([(([((([(([[[([(([([[([([(((([([[(([[([[[[((((([[[(((([([([([[(([((([([[[[(([[([(((((([[(((([([[[[[[[[[[([((([[([([(((([([((([[[(([[[[[[(([[(([((([[([([([([[([[[[([[(((([(([((([[([[([[([([[([([([([[[[([((([([([[(([(((([(([([[(([(((((((([[(([([[([[([[[([((([[([[((([[(([[[[[[[([([((([([([([[[([[[([((([([(([((([[((([((([((((([[[([(((([((([(([[[[[(([[[((([(((([([[[[[(([[[[[[[([([([[[((([(([[[[([(([[[[[[(((((((((((([(([[([([([[((([(([((([(([[[[[[((([([(([[([[[([([[[([[[([((([[[[[([[(([([[[[(([[[([[[([(([((([([([[((([(((([[[([(([([(([[((([((([[[[[[[[(([[[[[((((([[([([[[[[((([(((([[(([(([[([[[((([[(([[[((([[[(((([([[[([[[((([([[(([[[[[[(([([([[([[([[([[[([[[([[(([(([([[[([((([([([[[(((((((([[[[[[([((([([[([([[[((((([[(([[([[[[([(([([([([((([((([[([(([[[((([(([((([[[([[([[([[((([[[(([([[[([[[([[(([([[(([[[[((([(([(([([([[([[[((((([(([[([([([[[[[[[(([[((((([[[((([(([[([([([[((((([[(([[([[[[(((([[[[(([[(([[(([(([[[(([[(((([(([((([([([[[[((([(([(([(([(([((((([[(((([[(((([[([[[(([[[[[((([([(([([[[[[([(([([[[(((([([[[[[[[[([(([([[(([(([((([([[([([(([[[((((([[[[[[([[[[[([[((((([([((([[[[[[[([((([((([(([([[[([((([([([[([[[([[([([(([([[([[([(((((([([([[[([[[[[[[[([([[(([(([[([[((([((([[(((([[([[(([[[([(([(([([(((([[[([([[[([[[([([[[[([([[[([[[[[([[([[(((((((([[((((([((([[[([[(([([([([[[[[[[(((([(([[[([([([[[([([(((([([[[[(([[([[([[[(([[[([[[((([((([([[((([([(([[((([(([[([([(([([[([([[([(([[[(([(([[[[([([(([[[[[([((([[(([[(([(([((([(([((([(([((([[[([([(([([[((([[((((((([[([([((([[[(([([(([[[[([[([(([[[[[[[[[[[([[(((([((([(([([[[([([([[(([[[[[((([([([[[[[[[[((([((([[([(((([(((((([([[([[([[[[(([[((([[([(((([(((([[[([([(([[((([[([(([([[([([[[([[[([[[[[([((([[[[[((([[([(((([([((([(([([(([((([[[[[[[[(([[([([[((([[[((([[(([[[[(([[((([[([[(([([[(([[[((((([[(([[[([([[([((([([[[([[[([(((([[((([([(([([[([[[[([[[([((([[[(([([[([(([[[[[[([((((([[([([([[[(([[[[[([([[((((((([[((([([[[[([[[((([[((([(((([([([(((([(([[[(([([[[((([([[([([(((((([[[(([[((((([(([([[(([([[([[[[[[((([[((([([((([[(([(([[(((([[(((((([(([[[[([[([([[[([(([[([(([[([([((([(([(([([(((([[([([([[([[([([([[([([([([(([[(([[([(([([([(([((([((((([[[[[((((([[((([(((([[[[[((([((((([([[[[[[[([(([[([([[[[[[[[([(([((((([[((([(([([[[[[([[(([[([[((([[([[([([[([[((([(([[([[([[[[(((((((((([([[[[([[([((([[((([(([[([([[([[([(([(([[[(([((([((([[(([([[[(([([((((([[(([(([[([[(([([([(([([[[((([([((([[[[([[(((((([[(([[(([([[[(((([[([((([[([[[[(((([[[([([[[[[[[(([([(((([([[[([([[(((((((([(((((([((([[(([((([([[[[([([((([([[[([([[([[[([[[[((([([[[(((((([((([[[[([[[([[[[[((([(([(([[(([[[((((((([(((((([[[([(((([([[([((([(([[([([(((([((((([[[([([([[[[[[([[[(((((((([[[[([[[((([[([[(([[[[(([[[(((([(((([([(([[(([[[((((([[([([(((([[[([([([[([[[[[([(((([[[[[(((([[[[([([([([[[((([[[([[[[[([[[[((([[[[[((([[([[([((([(([[([([([[([[[([(([([([[[[((([((([([([[((([([(([[[(((([[[([(([([[(([(((((([(([(([[(([([[([((([[((((([(([([([([([(([([[[([([([[[(([((([([((([(([[(((([[[(([[[([(([(([(([([[[[[[([([([[(([((([([([[[(([[[((([([[(([[([[[([(([(((((([[[((([((((([[(([([((([[([[[[([([((((([[([((([[([([[(([([[[([[[([([([([[((([([(((((((([[[[[([(([[(([[([([[[[((((([[(([((([[[[[[([(([[[[(([[([((([(((([([([((((([[[([((((([[[[([([(([(([([[[[([(([([(([((([([([((([([(((([[[[[([((([([([[[[([[([(((([((([[(((([(([[(([[(([[([([[([([([(([[[((([[([([([([([[[[[[[([([((([[[(([[([[([[(([[([[([[([[([([[(([[([[[[[[([[((((([[([[[((([(((((((((([([[(((((((([([([[[((([(([(([[([[[([[(([[[[([[[[((([([(([[((([[[([([((([(([([[[[[[([[[([([[[(([[(((([(((([((([[([([[(([[[[[[((((([(((((((([[[[[[[[([((([((((([([[[([[([([[([[[[[[([([(([([([[[[[([(([[[[[([([[[[[[[((([([[([([(((([([((((([[((([[(([[[(((([[([[[([[[[[([[([([((([[[[([((([[((([[((([([[[[[([[(((((([[[[(([(([([[((([[(([((([[[[[[([[[(((([[[(([[((((([([([[(((([(([((([(([([[[[([[[[[([([((([[(([([[[(([((([(([[(([[[([([[([(([((([[[([((([([([(([([([(([((([[([[[[[((([([(([[[([([[(([[([((([([(([[(([[(([[[(([[([[(([[([[([([[[[[[[[(((([[[[[(([[[((((([[[[[(([[([[[(((([[[[[[[([([[[((([[[([[(([([[[((([[[(((([((([((([[([[([[[[([[((([[[(([(([((([([[[((((([((([[[([([[[([(([([([([[[[[[[([[(((([[([[([[[[[([[[((([[(([([(([[([[([([[(([(([([(([[((([([[([[([([([[([(([[[[(([([(([((([[(((((([[([[[[([(((([(((([(([([[([(([[[([([[(([([([[[((([([[(((([([([(([[(([[([(([[[[[([([[[[[([[([[[([[([[([(([[(([([[((((((((([[([([[((((((([([[[([[([(([[(((([[[[([[[([[[(([[([((((([[[[[(((((([[[((([([((((([((([([[[((([([((([[(([(([(((((((([(((([([[[[([([[([(([[(([([[[([([((([([[([(([([([(((([(((([[([([[([(([([[[[(([[[([([[([[(((([([((([([[[(([[((((([([[(([(([([[[[[[([([[[[[([(((([([([((([((([([[[[[[([((([[(([[[((([[((([[(([((([(((((([(([([([(([(([((((([[[(([[[[((([([(([[[((([(([([(([([(([[(([[(([[[(((([[[[[[[[((([([(((([[[([([[([(([[[((((([[([[[[[[([([([[([((([([[[([[[([[([([(([[[[(([[((([([([[[([(((([[[[[[[((((([[([[([[[([([(((([([[[[[([[(((((((([([([(([[(([([([([(([((((([[((([[[[([[[[[[[([[[[[[[([(((((((([[([[[(((((((([([(([[((([([(([([[((([[(([(([(([(([[[([[[([[[((([(([[([(((((([[(([(([((([[([[([([[(([([[(([([[([([([((([[((([([[[[[(([[([(([[(([[([[([[(([[[[[(([[[((([((([([[[((([(([((([[(((([([((([[[((([[[(((([[((((([[[[((((((([[([[([([[((([[(((([[(([([[(((([[[[([(((([([([([[[[(([[[[[((([(((([[(((([(([(([[[[[([([[[([[([([([[([(([([((((([(([(([[(([(([([([(([[[([[[([[((([[[((([((([[((([((([([[[[((([([[[((((((([[([([([([[([([(([[[((([[[([([[[[[[[[([[[[[[[([([([[[([[((([[[((([[([([([(([[(((([[((((([((((([[(([[(([[([(([[([([(([((([[[([([(([[[[[(([[([([(([[([([([(([([(([[(((([([[[[[[([[[([(([([([[(([((([[[[[([[[(([[((([[[([((([[[(((([[(([(([[[(([((([[([(((([((([(([[[[([[[([[[((([[(([[[(([[([[[[[[[((((((([[[[(([(([[[[[((((([[([[((([([([([([([(([([([([([[([[(([(((([[((([([([[[(([(([(([([[([(((([[(((([([(((((((([([([[[[(((((([[[(((([([(([[[((((((([[([[[((([[([([([((([([[[[([(((([[[(([(([([((((([[([([[([([([([[[[[((([[[([[[[[([[([[[((([[[[([[[[[([([[(((([([([[((((((([(([([([([[([([[([[([[(([[[([[([[([(([(([(((([((([([([[[((([((((([[([[[((((((([([[([[[[[([[(([[([([[([[([[([[[[[[[([[[((([([[[[[[((([((((((([[[([([[([[[[([([[[[[([(([[[[([[(([[[(([([[[[[[((([[[[[[[([[[[([[([((([((((([(((((([((((((([[[[((([([(([[((([[[[[[((([[(((([[([[([(((([(([([([([([(([(([((([[[[[(([((([[[([[([[[(([[(([([(([([([((((((([([([[((([[[[[([[[([[[([[[[[((((([[[[((((([([[(((([([((([[[([([[(([([[([([([[((([[([([((((([[([([([([[(([[[[([(([[(([([([[[[[((([(([([((([(([([([([(((([([(([([[[([[(((([[[(([[[[([[[(([[([([([[[[([([([[[([([[((((([(([(([[(((([(([[[([[(([[(((([([[([([(([[((([((([([([((((([[([[([(([[([[[[[[[(([([([([([[[[(((([[[(([[[[[([([((([([[(((([(((((([([[[([([[[([[[[(([([[((([([[([[([[((([[[(((([([[[([[[[([[[([[([(([((([((((([[[(([[[([[(([(([[[[[([(([([[[[[[[((((([([((((([[(((((([[[[((([[([[([[(((([(([((((([([(([([[([(((([[(([(([[([((([[[[[[[[[(((((([[(([([((([(([[[[(((([[([[[((((([((((((([([((((([(([[[[([([[([[[[(([[[((((((((([[([(([[((((([(([(([[(([(((((([[[((([[([([(([([([([([((([[[([([[[[[(((([[(((([(([([(((([([[([([([((((([([[((([[[(([([[[(([((((([([([[(([([[[([[[[[[(([([([[[((([[[[[([([([[([[([[([(([([([[([((((([(([[[[[([([[[[[([[([[([[[((([[[[([[[[([(([(([[([(([[(([[([([[[[(((([((([[[[((([([[[[(([([[(((([((([([[(((([(((([[[[[[[[[([([([([(([([[[[[([[([[((([([[(([(([[[[[([[[((([[(((([[(([([[[[[((((([(((([(([[([(([(([[([(([([[[((((([([[((([[([([([[[[(([([(((([[[([[([([([(((((([[([[[[((((((((([[([[[([[([[[[(([([[([[[([(([[(([([[[[([[[((([[((((([[([((([(([([[[[[((((([([((([[[(([((([[[[[[(([[(([[[[([[[[[[(([((([[[[[(((([((([[[(([[([((([[[[([[[[[([[[[(((((([[[((((([((([[[(((((((((([(([[[(([[[[[[[(((((((([(((([[[[[([[((([[[([[[[[[([((([([[((((([(([[([[[([((([[((((((([[[(([[(([[([(([[[[([[[[[(([([([([[(([[(([[[(([([(([([(([[(((([[[[(([[(((([[([([([[[([[((((((([([[(([(([([((([([[([[(([([([[((([[[([(([[([[[(([[([[[[[[[(((([[((([[[[[[([[([([[[[((((([[((([(([[([([[[((([((([[[[([[[(([[[([([[[((([([(([([[(([[(([[(([[[([(([[[[([[([((([((([[[([[(([((([([[[([([[(([(((([[[([[([([[[([[([[([[([([((((([(([([((([[([(([[([(([(((([[([(([(([(((([[([[[([[[([([[([([[[([[[[(([(([[[[[[([[(([[((([((([([[[[([[[([([[[(((((([[[([([[[[[([[[[(([([[[([([[[(([([([(([([[([((([[[((([(([[([(([(([((([[(([[[[[(([[[[[[[([([([[([((([[[[[((((([[([(([[[([(([[[((([[(([[[[([([(([[([[([(([[[[[([[[(([[([([(((((([[[[[(([[(([([([(([[([[([[[(([[[[[([([(([([[[[[[(([[([[([([(([([[([[[[([[[([[[[((((([[(([([[([(([([(([(((([[[(([[[([[([[((([[[[(([(([([(([[(((([([[[[[[[([[[(((([[([([([[[((((([[[[((((((([[([[[[(([[[(([([[((([[[[[(([[[[[(([[[[[((([[[([([([(([((((([(([[([[(([[([([(([(([[((((([(([((([(([[[[[(([[[([([((([([[(([([[[(([([[[[[[[((((([(([([([([[[([[((([((([[[([[[([(([(([(([([[[(([[[(((([[[(([(([[([[[[(([[[[([[(([[[[[[[([[([[[(([[[([(([([[([([(([[([[[(((([[(((((([[[([((((((([([([[([(([[[[((([([[(([([[[[([[[(([[(([((([[([(([([[[(([([[([([([(([((((([([([[[[(((([[[([[(([[[[[([((([(([[[[([(((([[([[[[[((([((([([((([(([((([[([(([([(([[(([([[[(((([[([([[[((((((([[((([[([(([((([[(((([([(([[[[([[[((([([((([(([[(((([([[[([(([[([([[[((((([[([((([[[[[[[([(([[((((([([([[((([([([((([[[(([([[([[[[([((((([(((((((((([[[[([([[(([[(((((([[([([[[[([[([[[[[[[[(([[([([([((([[([[((([([[(([[((([(([(([((([[[((((([(([(((([((([[[(([[([[((([(([[[([[(([([([([([([[[[[([([[(([((([[[[(([[((([([([([(([[[[(([(([[([[[((([(([(([[[(([[([[[(([[(([((([(([[([(([[[(((([[([(([([[([[([(([[([[[[[[[[[[[(([(((([((((((([[((([[(((([[([(([[([((((([[[(([[([([((((([[((((([[((([((([([[([[[(([[(([([(([(((((([[(([[((((([([[[([[[((((([[[(((([[([[((([([[([[([(((([[([[[(((((([([([[([[([([[[([[[[[[([([([[[[[((((([[([((([([[(([[[([[[(((([(((([[[(([([[(([[(((([((((([([[(((([[((([([[[[[[[[(([([[((((([([[([[([[[[[[[([[([[(((([([[[[(([[([[([[(([[(([(((([((([[[[([[(([([[[[[([[([[[[(([[[[([[[[[([[(([[([[(([((((([[[[(([[[([((([(([[([(((([[(([([[[[[[[[([((([([[([[([((([[(((((((([([[(((([([[[(((((([([(((((([[[(([([[([([((((([[[[[([((((([((((([([((((((([((([[[([[[[[((([(([(([([[([(([[[[[([[[[[(([[((((([[[(((([[((([[[([[(((((((((([(((([(([[((((([[[[[([([[([[[([(((([([[[[[((([[([([([[[[([(([([[([[[[[(([([[(([((((([([([[((([(([([([[([([(([([(([[([([[(([(((((([[[[[([([[([[([([((([(([[(([([[[[[([[((([([[((([[((([[((([(([(([(([((((([[[([(([([[((([((([[[([[([[[(([(([([[([(([(([[([[([([((([((((([([(([(([([[([([[[([(([(([[[[[((([(([[[((([(([(([[[((([[([[[[[([([(([(([([[[((([[([[[(([[[[(([[([[([[[[([[([[([(((([[[[([(([([[([(((([[(([[([[((((([[([([([[[([(([((((([([([([(([(((([[[[(((([[[([[((((([[[[((([[[([[([([(([[([[[([([(((([([([[[([[([([[[[[[[(([[[([[[([[[([([([[(([([([(([([([[[[([[(((([((((([(([[[[((([([(((([[(([[((([[[[([[[(([[[[[[([([[[((((([([(([[[[[([[[[[[[[[([[[[[[[[[[([[([[((((((([[[[[[[(([([(([[[([[[(([([(((([[[((([[[((((([[(((([[([([([([(((([[([[[[([((([([((([((([[[([[([([([[([(([(([[((([([[(([[[((([(((([([((([([((([((((([([(([[([[([[(([([([[[([([[[[[([([([[[[([[((([[[[[([[[[[[((([[([([([[[((((((([[[(((([[(([(((((((([[((([[[([[[[[[(([[[[[[[[([[[[[[([[((((([[(((((([[(([[([([(((([[([[([([[([[[[([(([([[[(([[[[[[([([[[[[([[[((((((([([[[[([[((([(([[(((([[[(((([((([[([[[([([([[[([[[[[([[[([(([([([([([(([(((([[[[([[((((([[[((([[[[[(([([((([([(([([([[[[([(([(([[(([([[[[[([(([(([([[[((((([[([[[[[[[[[([[[([(([[([([[[((([(([([[([[[[[(([([[((([(([[([[([([([([([[([((((([([[((((((([[[[[((([[(([[[([([[((([((([((([[[([([[([[((([(((([[([([([[[[([[[(((([(([[[([([((([([([[[[[([[((([([([[(([([([([(([([((([[[[((([(([[[[([((([[[[([(([[([([(([([[[[[(((([([([[([(([[[(([([((((([([(([([[[([(((([([[(([[(([([(([[[[(([[[([(([([[(([[([(((((([(((([[[[(([[[([[([[[((((((([([[[([[((((([[[[([([((([[(([[((([([((([((((([((([[[([(([[[[([[[[(([([[[([[[[(((([[([(([[[[[[[[([(((([[([([[((([([[((([([([[[((([([(([[[([[[([[[[(([([[[((([[([[[[((((([[[[(([([[[[([([[[[[[[([[[([[[([((([((([[((([[[(([((([(([[(((([[([(((((([([(((((([[([([([([[[[([([((([[([(([([[[[[[[([(((([([[[[([[[[[([((([[[[(([([([[([[[[(([([((([[(([[[(((([[[[[([[[([([[([[((([[([[(([(([([[([(((([(((([(([[[[(([(([[[((([[((((([([[[[[[[([[[(((([([[[[(((([([([[[(([([([[[((([(((([([[[(([[([[[((((([[[([[[[[[[([((([([[[[[[(([[(([[[[([[([(([((([[([(([([[([[(([[[([[[([(([([[[([[([[[(((([[[[[(([[[[(([(([[[[(([([([[([[[[[[([[([([(([[(([([(([[([[[([[[([((((([[[([([([[([[([[([[[([[[([(([([(([(([[((([[[[[([((([(([[([(([[([([[[[([([[[[([(([[([([[[[(([[([(([[([(([[(([(((([[(((([[((([(([[([((([[[[((([[(((([[(([([[(([(([([((([[[[[([([[([(([(([[(((([(([[([([[(([(([[[([[([[[[[[([([[[([[([((((((([[([[[[(([([[(([[[([[[[((((([(([[[[[[([([[[[((([[([([[([[[(([[[((([[[[[(([(([(([([(([[([[[(((((([(([[[[[[([[((((([[([([[([([[((([([[([[([[[[((([[[([(((([[([[(([[[[([[([(([([([[(([([[[([([[[[[[[[[[([[[[(([[([[[[[([[([[([([((([([[([((([[[[[([[(([[[[(([[[[[[[[(((([([([[([[(([[([([(([([(([([((([[[(((([((([(((([[(([([[(([([[(([[[((((([(([(((([[([([[[((([[(([([[(([[[(([[((((([((([[[[([(([[[[(([((([[([((([([[[((((([(([(((([[((([[[[([([[[[[([[(([[[[([([([[(([[((([[([[([([[[([[([([(([(([[[([([((([([[[(([[(([[((([([((([[((((((([[([([(([[((([(([(((([[(([[[[[(((([(([[([(((([([([[[(((([[[[[([([((([[([([[[([[(([(([([(([[((((([([((([(((([([(([[[(([[[[[[([(([[[[([[([([(([([[([([[[(([[(([(((([(((([((((([([[([[[([((([[[[[(((([((([[[[[[((([[[[((([([(([([[((([[((([[((([[[([(([[[((([([[((((([[[([(([([[[(((([[(([([[[(((([[(([[[[[[(([[[[([[(([[([[([[[[([[([[([([(([[[[[[([[[[[[([([[[([((([([(([[[[[(([(([[(([([[(([([(([([([[([[[[[[[[[(([[(((((((([((([([[[[[[([[((([([([([(([((((([[[[[[([(((([(((([((((([(([[[(([[([[[[[[([(([[[[(((((((((((([[[(([[([((((((([([[([(((((([((((([((((([(([([[((([(([[[([[((([[([[[([[[([([[[([[[((((([[(([([[[[[[([[[(([[[([[[(([([[([[[[[[((([[[([(((([[[([([[[[([([[[(([([((((((((([([([(([(([[[([[((([[([([([[[[[(([([[((([(([([[[[((([(((([[([([[[[([((([[([([[[[(([((([([([([[[([[[[(([[([[[[([([([(([((((((([(([[[((([[[[((([((([((([[[[([[([([(([[[[[[[[[[([([(([[[[[((([(([([(([[([([[[([[[([((((([[([[(([[(((([[[[(([(([[(([(((([([[((([[([([[([([([(([([[[(((([(([(([([[[[([[[([([[[([[[(((((((([([[([([(([[([(([((([[([[([([[(([[[(((([(([[[[(([((([([([[[(([[([[(((([(([(([([(([[(([[([(([[([([[(([([[[([(([(((([[[(([[(((([[[[[((((([((([(([[[(([[[[[([([((([(((([([[[[[[([[([[([[((([(((([(([(((((((((([([[([((([[([[[([[(([[(([[(([([[[[([[(([[(((([(([[[[[([[(([[[[(((((((([[[([[([([([[[[[([([([[[[[(([([((([[(([(((([(([(((([((([[[([([[([([[(((([[[[[([[[([[(([[[[(([(((((([((([([[[(([([(([([[(([[[([((([[(([[(([[[[((((([([((([((([[[[((((([([[((([[((([[[([[(([([[[[([[([([(([(([([[[([[[([[[[(([(([(((([[(([((([[(((([([((([[([([((([((([([[[([([[[([([[[(([[[[[[[[(([(((([([([[(([[[[([([([([[[[[(([[((((((([[[[[([[[[([[[[(([((([[[[([([[[(([(((([([([([(([(([([[([[[((([[[[(((((([[[[[((([([(([[[[((([(((((([[[[[([((([(((([((([((([[[[((([(([[(([[[([[[(([([[[([([(([[(([[[[[[(([((([[[[[[[[([[[[[[(([([(([([[[(([[[(([(([([(([([[([[(((([((([[[([[[([[([[(((([([[([(((([[[[(([([([[[([(((([(([([([([(([(((([[[(([[(([[([(((((((((([(([[[[[((([([[[[[[([([[([(((([((((([[(([([([[[[[[([([[[([[[([([([(([[[(([(((([([[[((((([([[(([[[[[([([[(((([((([[((([[[[[(([([(([(([(([[[[[(([([[[([[((([([[[((([[(([([((([([((((([(([[[[[[[([((([([[[[(((([([(([([[([[[([([[(([([[[[[[(((((([((((([[[([((([([((((([([[[[[[((([[([([([([[[[[[[[([([((([[((([[[[[[([(([[[([([([((([(([[[((([(((([[[[[[([[[([(([[[([[[[[[[(([([[(([((([((((([([[[[([(((([([((((([[([[([([[([[([(([[((((((([[(([[[[[[([(((((([[[[([([[[([[[[[[(([((([[[[((((([([(((([[([[(((([[([[((([([[((([[[[[((([([[[(([[([[[([([([[[[[[[(([(([([([[[([[((([([([(([(([[([(((([((([[[[[[(([(([([([([[[[[([(([([(([(([([[[[[(((([[((([[[(([[[[([[((([(([[[(([[[(([(([[[[([([[(([[[(([[((([[(((([(([[(((((((([[(([[[[(((((([(([([[([([([[(([((([[([(([([((((((((([(([(([[[([([[[((([[[(([[[[([[[[(([[[((([([([([([(((((((([([([([[(((([[([[([(([([([([((((((([[([[([[[[([(([[([((((([([(([[[[(((((([[[(((([[[[[[(([[[[([[[(([[[((([[[(([[([[(([[((((([[([[[(([([[[[([[(([[(((([([((([([([[(((((((([([([[[(([[(((((((([(([[([[[(([[((((([((([(([(([([(([[[([([[[(([[([([[[([[((([[([[([(([([[[([[[([[[([[([([((([((([((((((([([(([([[([((([[(((([[[(([(((([(([[([(([([[[([[[(([[[[[([((([((([[[(([[([((((((([([[([[[[(([[[[[([([([[([[((([(([[[(([(([([[[(([[[([[([([[[[(([[[[[(([([([([[[([(([(((((([[[[(([([[(([((([[([[[[[([[[(([[[(([[(([(((([[([([([([(([[([[[[[([((([([[[(((((((((([[[([[([[[[(([[[[((([((([[[[[(([[(([[[[(([((([[(([([[(([[[(((([[[[[[[[[[[[([[([[([([[[[[[[([[([([[((([(([([[((((((([[([[(((((([[(([(([[[(((((([(((([[[[[[[([([[([([((([(((([[[[[([[(((([[(([[(([[[[([((([(([(([(([[[(([[[[((([((([[[[[([[([[([[([(([[((([[[([[[[[[[[[((([[[[[(((([([[([[[[[[(([[(([[[([(((([[[(((([[([[(([(([([([([[[(([((([((([([((([((([([(([[[[[[[((([(([([((([(([((([(((([([[([([([[[[(([([[([(((([(([[[(((((([(([[[[(((([((([[([[[[(([[[([[([([(([(((([(([([[([([((([([((((([[([(([[(([([[([(([[[[([(((([[(([[[([([[[([([([[[(((((([([([[[((([((((((((([([(([(([([([([([[([[([[[[[(([([([[(([[[([([([[[[[((([[[(((((([[([[[[[((((([([[[([(([((((([[[([([[((((([[(((([([[([(([(([([[[(([[[([([([([(([([[[[[((([[([([[[(([[[[([(([[[(([[[([[[(([[([([[(([[[(([[(((((([([([[[[[([([(([(([[((((([([[([((([[(([(((((([(([((((([([[(((((([((([[((([[[[([([(([([(([([(([((([[(([((([[[[[[([[([([((((([[[[[(((((([[([[([([[([([([[[(([[[[((([[[[([([(([[[(([(([([[[((([(((((([([((([(([(([([[([[[(((([([([[[(([([[[[([((((([(([([((((([([[((((([([[([([[([([[(((((([[(([[(([((((((([([([([((((((([[(([((((([[[[[([[([[([([([(([[[((([[[(([([[[[[[(([[(([([([[(([[((([[((((([[[(([([([((((([(([(([((((((([[[[(([[(((([[((([[(([(([[([(([([[(([[[([(([[[[[([[[(([([[([([((([[[[([(((((([([[[((([[(([(([([[[[((([([[([[[([(([([(((([([(((([(([(([[[(([((([((([[[[[([([([(([(([[([([([[([[([[([[([([[((([[[[[([[[[([[[(((([(([[([[([(([([[([(([([([[[[[([[([[(([([(((((([[[((([[([[([(((([[([[[(([([[[(([[(((([[[[(([([[(([((([((([[([[[(([(([([[[([([((([[[[(((([[[((((([[(((([([([[[((((([[[[(([([[[([[([[[([[[([[[((((([(((([([[[[([[[([[(([[([([[((((([[([[[(([[([([[[([((([[((([[[[([[[(([[((([((([[[([[[[[([[[([[[[[[[[[(([[([([(([((([([[(((([([(((([((([([(((([[([([(([(([(([([([[(([[[[[[((([([([[([[([[([[[[[((([[[[[(([[[[[[(((([[(([((([[([([[[[[([((((([[[[[[[([(([(((([((([((([((([[[[([[([([([[[[[(((((([([(([(([[(([([[(([[[([(([([[[[([(((([(([([([(((([([(([([[(([(([[([(([[(([[[[[[[[([(((([(([[(([([([(([[([([(([[([[(([((((([([([[([[[([[(((([((((((((((([[((([([[[([[[((([(([[((((([(([[([[[[[([(((([[[([[(([([[[[[[((([(([([[[[[[([[(([[[([[[([([((([[((([((([((((([[(((([((([[[[([[[([[((([[([[((([([[[(((([[[([[[[[((((([[[[([((([([([[(([[([[[[(([[([[([[([(([(([((([[[[(([([[([[(([[([([([([([[[[(([(([[(((([(((([(([[(([[[[[((([([([([([(([[([[(([([[[((([([([[([[([[((([([(((((([[([((([([[[((([(([([([[[[(([(([[[[((([(([[[[[[[((([([[[([[[(([[([[([[((([((((((([[([[[[[[([([[[(([(((([(([[[[([(([[(([[(([(([([[[[([([[(([[(([([[[([[[([(((([([[[((([((([((([[[([([[(([[[([([(([[((((((([[[([[([[(([[([(([[([([[[([[((([[((((([[[([([([(((([[(([[([((([([[[([[((([[[[([[[[[[([([((([[([[[([[[([[[[[([(([[([((([[([(([([((([(([[(((([[([([[(([[(([[[((((((((([[[[((([((((([[((([([[([([([[[([([([[(([([([(([[([[(((((([[((([(((([((((([([[[[[[((([[[(((([([[(((([([([([[([(([(([[(([(([(((((([([[([[[(((([([[[(([[(([[[[[[([[[([((([[(([[[((([[[(([[[([[[([(([([[[(([((([([([((([[[[(([(([([(([[[[[(([[[([((((([[[([([[([(((([([[((([([([(([[(([[[([([([[[((((((((([[(([[((((([([([([(([[[([([(([((([[(([[([[([(((([([((((([(([[[[[([[[[([[([[[[(([((((([(((((([((([([[([([[[[((([([((([(((((([[[[(([[((([([([[[[([([[(((([((((((([[([[(([((((([[([[[((([[[[([([(([([[([[([[[([(((([[(([[[([([[(([(((([[([[[(((([(([[(((((((([[[([([(([([[([[[(((((([([([[[[([((([(([[((([([([[[((([([([[[[[((([((([[[([[((((([(((([[[[((((([([([(([[([([[(([(((([[([([[[[((((([([((([([([([([[(([(([[(([[[(([[([[([[([([([(([([[[[[([(([([[([[[((([([[(((([[([([([((([([([[[[[((([(([[(((([[[[(([[[[([([((([[[[[[(((([[(((([([([([[(([([[(([[((([(((((((([[(([[([[[[([[(([(((((([[[([[[[(([[[[([([(([[[[((((((([((((([[([([[((([([([[[([((([(([[(([[[([[[[[[((([[[([[[((((((([(([([[[[[[(([([(([([[([[[[[(([[[[(((([[[[[([[(([(([[[[([[((((([[(([[([((([[[([[[(([(([([[([([(([[[[([([([([[[[[((([(([[[[[[([([(([((([[[([[[[([[(([([[([[[[[[[[[[((([[([[[([([[[[([([(([((([((((([(([[(([[(([[[[[[[[[((([([[([[[[((((([((([(((((([[([[[[(([([[[[[([([[[([(((((((([[[((([((([[(([[[([(([((((([[((([([[(([([((((([[[((([(([[[[[([[([[[[[[[([[[(([[([(([(([([[[(((((([[([([([(((([[[([[([[(((([([[[[[[[[[((([[[[(((([[([[(([[[(((([([[([[[(([(([([[((([((([(([[[([([((([((([[[((([((((((([[[[((([(([[(((((([([([[([((((([[[[([((([([(([(([(([([[[[(((([[[[[(([[[(([[[(([(((([([[[[(([[[[[[[[((([[([(((([(([[[[([([[[[((((((([[((([[(((([[[([[((((([[[[([[[[([[(([[([((([([((([[((([[[[([[([([[[[(((([([[(([[((((([((([[([(((([[((((([([(([[[[[[([(([[[([([[[[[(((([((([((([([[[(([[[[(([[(((([((([(([[(([([[([[([[([(([[[[[(((([(((([[[([(((((((([[(((((([((((([(([[[[[(([((([([[[([([([[[(((((([[(([([([([[(((([[[([(([[((([[([[([([(([[((((([((([((([[[[[(([[[[(([([(([[(([([([([[[(([[[(((([[([(([((([(([(((((([(([(([[[([[((([((((((([([([[[(([([[[([[([[[[[[[(([[([([([([[((([[([((([[[(([[((([[[[[[[([[[[[[[[(((((([((([[(((([[[([[((([[[(([(([((([[(((([[((([[(([[[(([([(([([([[[[([(([[[(([(([(([[((([(((([([[([[([([[([[([([((([(((([[([((([([[(([([[[[[(((([(([([[(((([((([[[([[[([((([[[[[[(([[[(([[(((([[(([(([([([[(([([((((([([[[[(([[[(([[[[((([([[[((([(((([[[((([([[[[(([([[[[[(([[([([(([(([([(([[([[[([[([[([[[[[((([([([[[([[(([[(([([[[[[([[(([([([([(([(([[([([([[[(([[[([((((([([[[[[[(([[[[([(([[(([[[[(([([[[[(([([[([[([[[[([[((([([[[(([[[(([([([[((((((([([([([([[[[[(([([(([([[([([([[([((([[[[[[([[[[([[([((([(([[([[((([[(((((([([[[[([([[[[([([([[([[[(([[[(([([(([([((((([([((([[[(([(([[(([[[[((((([[(([(((((([(([[([(([[[[[(((([([([([([[[([(([[(([[[((((((((([((([([([[(((([[[[([([(([[[((([[([[(([[[[[[((((([([((([[([([((([([[[((([(((((([[[[[[[[[([([([([((([[[([[(([(([([[[([[[[([[(([[[([((([[([[(((([[[[([[[[[[((((([([([([([((([([[[[[(([([((([(([[[[[([([[[(([[[[[([((([[(([[([((([((([(([(([((((([[[([([([((([[[([[((((([[(([[(([[[(([[[((((([([([([[(((([[([[[([[[((([([[([[(([[[[[[([(([[[([(((([(([(([([[((([[[([[([[[[[([([[(((((([[([([[([(([[[[(([(([([[[[[[[[[([(([[((([[(([[([[[[([(([[((([([[([([((((([((([([([([[(([[([[(([[([[[([([[[[([([([[([[[(([[[((([([([([(([([([[([((([([[([[(([[[([[((([(([((([[[[[[((([((([((([((([[([[([[(([[[[([[(([([((([[[(((((([[[[[[([[[[[(([[(((((((((((([[(([(((([((([[([[[[(((([([(([(([([[(((([[[[(((([(([[[([([[([(((((([[[(([([[(([[[[([([([([[([[([[([[([[[(([[[[(([[([([([[[[[[([((([[[[[[(((([[([(([(([[([[(((([[[([([(([(((((((([([[([[(([(([[(([([[[([[[([[[[([[[([([([[[((([[(([[[(([(((([[((([[[([(([[((((([((([[[([([((((([[((((([(([([(((((([[[([[[[([([([[([(([([(([[[([[[[[[[((([((([([([(((((([[((([(([[(([[(([[[(((((([(([[(([[[([[[(((([((([(((([([([[(([[([[[[[((([([[((([[[[[[[((([([[[[([([[[[(([([[[(([([[([([(([[((([[([(([[(((([([[([(([[[(([[(([([([[([([[[((([((([[(([[(((([(([((((((([[[[[[([(([((([(((([((([[[[[((([(([(([([[(([[((([[([[[[([[([(([([(([[[[[(([[[([[((([[(([([([[[((([([(([(((((((((([[[[(([[[[[[(([(((([([[[[[([(([([([([((([[(((([(((([([[[[[([[([(([([[(([[([[(([([[((((([[[[[([([(((((((((([[[[[(((([(([[(((((([[(((([(([[[[(((([([[(((([[[([(((((([[([[([([([[([([([(([[(([[[[([(([([[[[[[([([[[[(((([[(([((([(([((((([(([((([[((([[[[[(((((([[[([[((([([[[([(((([[[[([[[[[[(([([(([[[[[([([([[((([(([[[[([[([[([([[[[[[([[[[[[[(([[([([[[(([[[[(([(([(([([([[[[([[([([(((([(((((([([([[((([[(([[([(([(([((([[[[((([([([[([([[[[[([(([[([[([([[(([(([[((([[([[[[[([([(((([[([[[[((([[[[[[(([[([[(([[[[[[([([[([((([[[([[[([[((((([((([[[[([([(((([(([[([(([((([([[([[([([([[[[((([((([[[[[[([[[[([[([(([[[([[((([[[(([[[([[((([([([(([[[[(([[(([([(([((([[([[((([((([[[(([[([[((([[([([[[[((([[(([[([[((([[([(((([[(([([[[[[([[[(((((([[[(((([(((([(([[[[((((((([([((([([([[[((([[(([((([[([(((((((([([([[([[((([[[([[[([[((((([[([(([[(((([[((([[([([[[(([[(((([[[[((([[[[[(((([([((([[[(([[[[[([([([([([[(([[((([[[[[[([[((([[[((((([([([[((([[(([([[(([([(([((([([[([([[[[(([[(((([([([((((([[[[([[([([[((([[([[([([(([[((([(([((([[(([[((([[[[([((([[([((([[[([[[(([([((([[(([([[[(((([[[[(([(((([((((([([[([([([[[[[[([[([([[((([(((([[[(([[([[[[(([([((([[[[([[(([[((((([([[((([(([([[(((((((([(((([((((([([[[[([[((([[([([([[[(([([([([[(([[([[([((([([[(([[([[(([([[[([[((((([([([[[((((([[([([([[[[([([[((([([([([(([[([(([(([(((([(([[(([([(([([[[([([([[[[[[[(((((([[([([([[(([([([(([[((([([[(((((([[([([(([(([([[([([([[(([(([[[((([[[(([(([((((([(([[[([([[[([(((((([([([[(((([[[(([[[([[([(([[[[[([(([([(([(([(((((((([((([[([[[[(([(((([([[(([(((([([([(([(([[[([[[(([[[([([([[([([[[[(([((((((((([([([[([([((([[(([((([[[(([[[([[((([((((([(((((([([[[([((((([[[[(((([(([((([([([([([[[[[[(([[[([((([[([([(([[[([([([([[([[[[((((([([[[[[[([([[[([([((([([((([[[((([[([(([(([([[([[[([[[((([([[(([[(([[(([[[(([((((([([[(([[[[[([[(((([[([(([[([(([[[[[([[(([((([(((((([[[(([([([[([([[(((((([((([([[(((((((((([[[[(((([([[[(([(([([[([[([[([[[(([[(((([[((([([((([[[[[(([((((((([(([([((([([[([(((([[[(([(([((((([(((((((([(([[([[[([(([([[[[([[([[([([[[([[([(([[(([(([[(((((([[(([([[[([[[(((([[[(([[[[[[[[[(([(((((((([([[[[[([([[((((([[([[[(((([[(([((([([[([[(([([[[([[([(([[([([[[([[((([[([[[([(((([[[(([[(([(([[[[(([[[([[(((((((((([[[[([[((([(((([([([([([(((([(([[[[((([[([(((([((([([(((([[([([[(((([(([(((((([[([(((([(((((([(((([((((([(((([([([([[[([[(([[([([([([[([[([(([(([[(([[[[[([[([(((([[([((([[([[([[([(([([((((([[((([((([[[(((([[[([([([[[[[([([[[[((((([([((([((([([(((([[([[[[[(([(([[[([[[[(([([[([[(([(((((([([[([[[[(([([[[[[((([[(([[[[([[([[(([[(((([([[(([([((((([[([([[[[([(([[[[([[[(([[[[[[[[[([((((([([[[(([((([[[[[[[([[[[[([([([[([((([[[((([[([[([([[[([[((([[([([[(([((((([([[(((((([([[[(([[[(((((([([([([([([([[[(([[([([(([[[([([[(((((([[([([(((([((((((((((((([([([[(([[[([([[([(([([[(([[[[(([[(((([([(([[[([([([[[[([[((((((((((([([[([([[(([[[[[([(([[[[(([[(((([(([[([[([[(([[(([[[([([([([([([((((((([(((([(([([([([[[([([[[([(((([[([[[[([[([([((([[[((([([([[([([(([[[[(([([((([[[[((([[([[([[(([([([[[[[[[[[[([([([([[[[((((((([[(((([[([[(([(([[((([[(([[[([(((((([[(([[[([[[([[([(([([[([(([((([[(([[[[[([[([([[([[[[((((((([([([([(([([[[(((([[[(((((([(([[[((([(([([([[[[([([([((([([([((([([[[(([([(((((([((([[(([([[([[((([(((([([(([(([(((([(((((([(([[[((([(([[([[[(((((((([[[[([((([([[[(([([([[(((((([(([[([([([[[([((((([[[([[([[([[[(((((([[([[[([[([([[((([[[([((([(([(([[[([((((((([([[([[[[(([((([[([[([([[[[(([(((([[(([(([([[([[[(([([[((([((([[(([[[[[[((([((([[[[[([((((([([([[[(((([[[([([[[([(([[([[[([[(([([([[(([(([(([[(([(([([((([(([([((((([(([[[(([(((((([([[[([(((([([((((([[([[((((((((([[[(([[[([[[[(([(([([(([([([[(([[[[[([[[(([(([[[([([([[(([([([([((([[[[[([([[((((([([[[((([[([([[(([[[([((((([[([([[[([([[([[[(((((([(([(([[[([[[[[[(((([([[(([[[[(((([[[[(([([[[((([[((([[(((([[([[[[([([[[[[[[([(([(([[([([([[(((([([(([[[(((([[[[([([[([[([(([[([(((([(([[[(([[([[([[[((([(([[[[[[[([(((((((([[[([(([[([([((([((([[(([[[(([[([[([([([([[[((([[([[([[[([[(([([[[(([(([([([([(((([[(((([([[(([[[(((([[((([[[([[[[([[[[([[([[([[([((([([[(([(([(([[[([[((([(([[(([([([(([([[[[[[([[([((([[[(([[(([[(([[([[(([((([[(([[[[([(([([((((([[(((([[[([[[([[([[[([[([([[[([[[((((([[((([([((([([([(((([([[[(((([(((([([[(((((((([([[[[((((([[[[(([[[([[((((((([[[((([([([[(([[[[([[[(((((((((([[[([[[[[[[[[((([(([[[[[(((([([[[(([(((([[((((([[([[([([[[[[([[([(((([[([([[(([[[([[[[([((((((([[(((([((((((([[[([(([[[[([[([(([([(([[([([[[(([[([[[[[((((((((([[[((((((((((([[([([[(([(([[[[[[[[(((([[([((((((([[[[([(([[(([[[[[[(([[(([[(((([([([(([[[[[([[[([[[([[([(([([(([[[(([([([((((([[([[[([[[[[[([[(((([(([([[([[([[([[((((((([[([[[[((([([((((([((([([(([[[[([([([[[[([[[[([([(([((([([[[((([[([([[[((([((([[((([(([[([[(((([(((([[[[[((([([(([[(([[([[[[(([[([[[(((((([((([[[([((((([[(([[[([((((([[([([((([[([(([(((((([([[([([([[([[([[[((([[((([[[[(([((((([[[[([[(([[(([[([((([(([[(((([[([([((([[[[(((([([[([(((((((([[((([[([(([[[[[[[([[([[([[[([([((((([[([[[[[[(([((([[(((([([[[[[[((([([[(((([[[([[([([(([[[(([[[[[((([[(([([[[([([[([[([[([[(([([([[([(([[([[[[(((([(((([(([[([([[[[([[([([[[[((([([([([([[[(([([[[((([((((((([(([([[([[[((([[([[[[([([[((((((((([(([[[[([(([(([((([[[[[[(([([([([([([(([[[((([[[[([[([[[(([((([[((([([(((([[[[[(([[[(((((([((([[[[((([[([((([(([(((((((((([[[[[((([[[([([([(((([(([[[(((([(([(((([[[([[[[[[([([[((([(([([[([([[[([[[[(((((([[([[[[[([(((((([[(([(([([(([([[[(([[[[(([((([([([[([[([[[(([(((((([[([[((([([([[([[([[([[([((((((([[([(([([[[([[[[((([[[(([[(([(([(((((([([([(([([[(([((([[[[[([[(([(([[[([[[([(([((([[(([[(([([[[[[(([(([([([[((([[[[(([[([[[([((([((([[[([[([[[[[[[([([[(([([((([[((([[[[([([[[((((([[[[([(([([(([([(([[([([([[([[([[[([[(([([[[[((([(([[([([[[([[[[(([((((((([[[[([[[((((([[([[([[[([(([[[(((([([[[(([([([[([[(([[([[[(([([[(([[([([(((([([([(([[[(([([((([([[[(([(((([[[(([([[[([([((([(([[[(([[[((([((([([[((((([[[[[[((([[[([[([[((([([[([[[[[[[(([[(([([[([([[[[[(([[[[([((([(([[[[[[([[(((([[([(([([((([[([(([([[(([((((([[([[([(([(((((((([[[[([[(([[[[[([[[[[[([[([([[[(([([([(([[[([([([([([[[[[(([[[([[([[(([([[[[[[(((([([[([(([(([(([[[[[[([[(([(((([[[[(([(([[((([(([[[([((((([([[[[[((([(([[[([(([[(([((((((([(([[[([[[((([(((([[(((((([([(([[[(([([([[([(([([[[[([[([[((([([(([[([[[((([([[[([[([[((([[([[([((([[(([[(([([([([(((([[[[([((([([[([([(([[[([([(((([([([[[[[[[[(([(([([[[((([([[((((([[[[[[[((((([([(([[([(([[[[[([([([([[([[[((([((((([[(([[[(([([((([[[([(([([[([[[([([[[([(([[[[[([([([([[[(([[((([[([([[[((([((((([(([[[(((([[[[(([((([(([[[[([((([[[((([((([((((([[([([([([[[[[([[(([([[[([[[[[(((([[[[(([[[[[([([[[[[[((([[([([((([[([[[[([[([((([((((((([([(([[[[[([[([([(((([[[(((((([((([[(([[((([[[([[[[((([(([[(([(([[[[[((([[([[([[([[[([[[[[((([[((([[((([[([[[[[[(([((([[[((((([[([(([[(([[([([([([[[[((([[([([[([[[[[[([([[[[(((([[[[([[(([[[[(([[[[[[[(([[((([[[[([([((([[[([([[((((([[[([((([[(([[(([((([([([([([([[[[(([(([[([[(((([(([[(([[(([[([[[[[[((((([[[[([[[[(([((([[[[[([[[((([((((([([(([[([[([([[[([((((((([([([[(([[[([([([(([([[[[[([[[[([((([([[(([([(([(([(([([[[[[[[([([([[([[((([([[[(((((([[[[([(((([([[[[(((((([[[[[[[[([[((([((((([[[(([[[([([[[[[(([([(((([[[[([[([[[(([[(([[[(([[[[(([((([(([[[((([[((((([[[[[[[(([[[(([((([[(([([(([(([((([[(([([[[((([[[([[(([[[[[[(([[[(([[([[[[[(([[([[(((([[([([([([([[(((((([[(((([((([[([[(([[([[[([([[[[(([([((([[[([(([([[[[([[([[([([[([[[(([[([[((([[(([(([[([([(([([((([[[(([[[[[[[(((([[([[((([([([([([[[((([([(([[[([[([[[((([[(((([([[[[[[([((([(([([[[(([[[[((([[[[(([(([(((([([[[([(([[([[[(((([[[([([([([((([[[[((([([([[[[[[[([([[(((([(([([(([([((([(((([([([([([[[[[[([[[[[([[([(([[[[[[[(((([[(([[[([((([[[[(((([([[[[([([([(([[[[[[[([[((([([(([([(([[([([[[[(((([[(([[([[[(([([([([[((([((([(([[[[[(([([[(((([[((([(([(((([(([([([((((([(([[([[([[[(([[(([(((([[((([(([((([([([([([[[([[(((([([[((([[([[(([[(((([(([([[[(([[[([([[[(([[[([([[[[(((((([[([([(([(([[([[[[[(((([[[(([(([[([([([[[[[((([[[[([[[(([[[[[([[[[([[(([[([(((([(([((([((([(([[[[(([([([([([((([[[[([((([([[((([[[([[[([([(((([[[[((((([(((((([([[([[(([[[[[(([[[[[[((((([[[[[((((([(([[[([([([[[((([[([[[[([(([[((((([[((([[[(([([[([(([([([([[[[((([(([[(([([[[([[([[[(((((((((([((([(((((([[(([[([[[((((([[([[([([[[[((((((((([[[(([[(([[(((([((([[[([([(([([[(([([(([(([[((((([[(([(([[[((((([[[(((([(([[((([[((([[[([[[([[(((([([[[[[[([([(([([[[[[[([[([((([[[[[((([[([([[[[[(((([([((((([[([[([[([(([(((([((([[[[(([[([([[([[[([(([[(((([([[[([[[((([[[[(([[[(([(((((((([[(([[((((((([(([[[([([([[[[[([[[[([[[[[(([(((([([([[[[(([((([[[[[([[(([[([([([[(([[[[((([[([([[([[[([[[[([([([([[([(([((([([[[([[(([([[[[[[([[(([[[(((([(([([(((((((([((([[([[[[[([[[(([(([[[[[(([(([[([([[[[[[[((([(([([[(([[(([([[[([[[[(([([[[[[([(([([([[([([[(((([[((([([((((([(([[[[[(([[([[([([([[[(([[([([((((([[[((([(([[[(([[[((([((((([[[[[[(([([[(([([[[[[[(((((([[(([([(([[(((((([[([[([[[((((((([([([[[[(([(([(([[([([[[([[[[(([[([[((([[[([[(([[(((((([((((((((([[[[[[[[[((((((((((([((([[([(([[(((((((([[[([(((([[[[(([[([([(([[[((([([(([[([(([([[((([[[[(((([(([[[[(([([(([([[[(([(([[[([[((((([[[([([(((([([([((((((([[([([((([[([[(([(([(([([(([(((([[[[(([(((([((([([[((((([([([([[([[(([[([[[([[(([[[[(((([[[([[([(((([[([[([((([([[([[((((([([([[[[([[([([[([((((([([([[([([([(([[[[[[[[[([([[[((((([((([(([[[[([[(((([[((((([((([(([((((([[[([([[([([((([(([[[([[(([((((([[(([([[((([(([(([((([[[[[([[([([[[([[[[([[[[[([((([[([[([[[(([(([[([[((((([[[(([[[[[[(([(([([[((([([([([[[[(([[[([([[([(([[(((((((((([[([[((([[[[(([[(([([((([[([[[(((((((([[[[[[([([[[(([([([(((([(([[([[([[[[[[((([(([[[([((([[([(([[[([([[([([[[[[(([((([[[([[(((((((([[([(([(([[[[((([[[([[([[([([([(([[((([(([[((([[[[[([[[([([([[(([([[(((([[(([([[[([[(([[([[(([(([([([((([((([[[(([[(([(([[(([([[([(([[([[(((((((((([([(([(((([[(([[[[[(([((([(([[[(([[[[[(([([[([([[(([(([[(([[[([[[(([[[[[[([[[(((([[[[([[((([(([[((([[[[([(([[[([[([(([((([[[[([[(((([[[((([[[[((((([[[[[([([([([[(([[[[[((([(([[(([([[[(([[[([[(((([([((([[[([[((([(([[[(([(([(([(([(([[(([(((([[((([(([[(([([(((([([[[([[[([[(([[[[[([[(([([([[[([(([[[(([([([[[([(([[((([([[[[[([([([(([[([[[([[[([(([[[([[[([(([(([[(([(([(([[([[([[[((([(([[[[[[[[[((([[[([[[[([[[([[([([([(([([[(((((([(((((([([[[[[[[((([[[[((([(((((((((((([((([(((([([[((((((((([[[[[[[[[[[[([[(([[(([[(([(([([(([((([[[([[[[((([[[[[[[[[([[[(([([(([(([((([[((([[[[((([[[[[((([(([[[([[([[((([[([(([[[(([(([(([[[(([[(([([(((((([(([[[([(([(((([[((((([((([([[[(([[(([(([[[[[[((([[[[([((([[[[([[[([[[(([[[[([[[((((([([(([[([[[[[(([([[[[(([[(([(((([((([((([[[((([([[[[[[[([(((([([[[([((((([([[(([((([[(([[([((([[[(([[((([([[[[([[[[[(([[(([[[[[([([[([[[([([[[(([[[[([(([((([[[[[[[([([(([[[((([[(((([(([[[((([[[(([[(((((([([[[[([(([[(([(((((((([(([([[([[([([[[(([(([[(([[[[([[([(([[[(([[[([([([[((([[[[[[[([(((([((((([((([([([[((([[([([[[[(((((([[[[[([([[((([[[[([[[[((([([(((([[[([[[[[[((([[(([[[([([(([[[[([(((((([((([[((([([([([[([(((([[(((([[[((((([([(([[(([[([([[[([[[[[([[([[([[[[((([([[(([[[([[(([(((([(([(([[[(([(([(([[[[[(([(([[((([[([([[[[[[(([[[([[([(((([([([([([[(((([[[[[[([((([[[([([(([([[([(([([[[([[[(([[([([[([[[[[([[[([[([[(((([[[([([[([[(([([[[((([[(([(([(((([[(((([(((((([([[[[([[((([[(([[(((([(([[([((([[[[[[([(([(([[((([[([[(([(([((([[(([([(([[[([([(([([(([[[(([[(([((([((((((([([([([[([[[[((([([[([(([([[([[[[[[[[([[([[[([[(([[(([(((([(((([[[((([(([([([[[[([([[(([[([([[(([[(([([[[[([((((([([[(((([[((([[[[[[(([((((([([[[((((((([([[(((((([[(([[(([[(((((([[((([((([(([[[(([([[[[([([(([[(([[((([[(((([[(([[[(((([[((([[[[([(([[[([(((([[([[((([[[(([[[(((([[[[(([(((([((([[([[[[[([[([(([[([(([[[([[[(((([([[[([[[[[[[(([([(([[(([[[[([([[[[((([(((([[[([[(([(([([(([[((([[([[[[[([[[[[[((((((([[[[[([([[[([(([(((([[[(([(([([[[[[[[[[([(((([(([([[([((([([([([(([[(((([(((([([[((([((([[(((((([[[(([([[(([(((([(([[([[([((((((([([(([[[([[(((((([[(((([(([(([((([[(((([[([(([[(((([[(((([([([(([([[[[([([(((([[[[[([[[[[[([(((([(([([((([[([[[(([[(([(([[(([([[(([[([([[(([[[([[[([[([[([(([[[[[([([([(([([[(([(((([([[(([[([[[(([[(((([(([[[[[([([[[[[([[([[([[([([([[[[[[(([(([([(([[([([([(([(([[([[([([([[[[[[(((((([[([[([(([[(([(([[[[[([(([([([((((([([[([([((([(([[(([[([[(([[[(([[[[((([((([([[([[[([([(((((((((([([([(([[[(([[(([(([[[([[([([([[[[[(([([[(([[[[[((([[((([[([(((([[([(((([([((([[(([[[([[[((([[[([(([[(([(((([[([(([([((([((((((([([([(((([[([[([([[[[[([((([((((([[([[((((((([((((([[[(((([[[([([[(([(((([[[[([[((([[[[[[(([([([[([[[[([[[[[(([(([[[(([(((([([((([(([[(([[([(([(((([([[[[[(((([(([(([[(([[[([[[([[(([[[[[([((((([[(([[[[([([[[([[(([[([[[[((([[[[[[(((([[(([(([[([[(([[[(([([[([[([[[[[[[[[(([[(((([([[([(([[[[([[[(([([((([[([([([((((([([[(([[[([[(([(([[[[((((([(([[([[[[[([[(([[[([[([[[([[(([[([([([([[((([[([[([[(([[[[((((([([[[[[[(([(([((([([[[[([[[[[([(([[(([[(([[((([[[((([([[([([([([[(([[([(([[[((([([[([(([([[((((([[[[(([[([([([[([[[[(([[[(([([(([[(((([[([[[([((([[[(((([[([[(([[[(([[[[[([[((([[([[(([((((([[[[[(([(((([[[[[(([([([([(([[[[([([([[[[([(([([[[[(((([[((((([([[[[([((([(([(([([[([[([[((([[((([[([[[[(([[([(([[([((([((([[(([([[[[((([([((((([(((([[[[(([(([[[[[[[[[((([([([([(([[[[([[[[[([((([(([[(([[[([([(((([[([([[[([([(([(([([([(((((((([[([(([[((((([([([([(([((([([(([((([([(([[[[(([[((([(([(([([(([((([(([[([([[(([[((([(([[[[(((([([([([([([[[(([[[[[([(([((([[(([[[((([([[[([[([([[[[[[[[([([([([([[((([([([[[((([[((([(((((([([(([[(([([[[([([[([(([([((([([[[[([[[[(([[(([[((([[[([[(([([[([[[([([[([[[[[[(((((((([([([(([([[[(([([(([(((((([(([[([[(((([([([[((([([([((([(([[[((([[([[[(([([[([[((([[[([[[([[[[((([[(([[[([[[([[[[[[((([[[([[[[[[([[[[([([[[[((([[[[[([([[[[[(((([[((((([[[(((([([((([[[[((([([[(([[[[(([([(([[[([[[([(([([[[[((((([((([[([[([(((([[[[(([(([([((([[([(([(([(([[[(([[([[[[[([[([[[[([[[(([([([[([[([(([([([[[[[[([[([[[[([[([[[[(([[[[([([[(((((((([[[([((((([(([([[((([[(([[[[(([([((((([[[(((([[((([(([[[([([(([[[([[((([[[([(((([[([([[[[[(([[([[[[([[([((((((([[[[[[[[[[(([((([[(([([((((((([([[[[([[(((([([[[([((([([(([([([([[[[([(([([[[([[[[[([[[(([[[(((([[[[[[[[[(([[[(((([(([([[[[((([(([[[(((((([[[((((([[[(((([([([((([(([([[([[[[(([((([[([[([[([[[(([[[([(((((((((([([[[((((([(((([((([[[[((([[([([[[(((([[(([([[(([[[([([(([((([([[[([[(((([(([[((((([[[(((((([[[[[((([(([[[[[([([([[(([[(((([[[[[[((([([[([[[[[([[[([[([[([[([[((([[([(([[([((([[(([[([([[[([(((([[[((([[((([[((([[([[[(((((([([([[[[([[(([(([[([(([(([[(((([[([(([(((((([(((([(([[[[[[[(([(([([[((([[[[[[[[[[([(([[[[[[(([((([([([[[[[[[[([(((((([([[(([((([[[[((([[[([([([[[[(([[[[([[(([([(([(([(((([[[([[([[[(([[(([([((([[(((((([[(((([[[[[[((([((((((((([[[(([[([[[([[[[[[(([[[((([([[([[([[([([((([([((([[[([(([(([[(([[([([((([(([[[[[[[[(([[[([(([([([[(([[[[(([([(([([[((([[([[(([([[[([[[([((([[[[([[([[[[((([(([((([([(([(([((((((([([([((((([(((((([(((([(([[[(([(([[([((([[[[[[([([([[[[((((([[[((([[[([[[[[(((([([[[([[[[[((([[(([(([[(([((([([(([([[[[(([[[[([([([([(([((([[[([[[([([(((([((([[([((([[((([[([[([([([([[([[((([([(((((((([[([((([([[[[(([[([([[[(([((([([[[[[([((((([([[[([([[([([[[[([(((([[(((([([([[(([(([([([([[[[[(((([(([[[[[([[[[[[[(([([[(((((([(([([[(((([[([[[[(([(([([([([[[[[[(([([([([([([((([[[[[([([[[[[[[(([([[[[[[[[([[[([(([([[(([(([[([((([[[([[(([[([((([([((([[((((([[[(([[(((([([[[[([([([[(([[[[((([[[[([([(([([([(((([([([((([([([(((((((([[[(([([[[[[[[(([([([[[[[[[[(((((([[[[([[([[((([[[((([((([[(([([[[[([([[[([(((((((([[[[[(((((([[[[[[([([[([[[(([[(([[([[[((([[[(([([([(((([(([[(([(([([((([[([((((((([([[([([[([[[([((([(([[([(((([([[([([[(([[(([(([[(([[([(((([((([[[([([[[[[[[(([([[[[(([[[[[[[[([[[[[[[([(((([([([([[(([((([([[((([(([(((((([[([(([((((([[[[[[((([((([[([[(([[[([([[[([[((([([[(([[(((([[[[(((((([[(([[([([([[([[[([([([(([(([[([(([([((((([(([([[([([([[[[[[([([[((([[((([[[[[([[([(((((([(((([([[[[([[(([((((((((((([([[([[([[([[((([[([(((([[(([[[[[[[[[[[([([[(((([[(([[((((([[((([[([(((((([[[([(((([[(([([[(([([[[[[((((([[([([(([[[([((([(([(([([(([(([([[[[[(([[((([(([([(([([[(((([(([([((([([[(([(([[[[([[[([((([[([[(([[([[([(((([[([((([([[[([[([[[([([(([(((((([[([([(([[([([(((([(((([([[([[((([([[([[([([((([([[(([[[([[[[[[((((([((([[[[[((([[[[([[([[([(([([([(([[[([[(([[((([[([([(([[[([[(([[([[([[([(([(((([([[([[([([([[([[[((((([([[(([[[[[((([(([(([[([[[[[[([([[[[[(([(([([[[(([(((([[(([[([[(([[[[(([(((([[([[((([[[(((([[[[(((([[[[([[[[(([[([((([[[(([([[((([[[([([(((([((([([[([[([[([([[([[[[[[[(((([(((([([[[[[[([((((([([(([[[((([([[[[([[[([((([(([(([[([[(([[[[[(([[([[([[(((([(([[[[[[[[([([(([(((((((([[[([[[(((([(([[([[[[[[([[([([[[[([[[[(([([([[([[(((([[([([[[([[[[(([([[((([([(([([([[([((([[([[[(([[[([([((((((([[(((((([(([[[[([(([[[[[(([[((([([(([([[(([([(([([[[[(([([(([[([([[([[[(([([(([([[[[(([[[[([[([[[[[([([[((((([([[(((([([[((([([([(([([([(((([(([[[[([([[[[([[([[((([[(([([[[([[([([(((([([[(([((([[[[[(([(([(([[([([([[((((([([[(((((((([[(([((([(([(([[[[[[[(((((((((([([[((([([([[[[([([[([([(([((([([([[[([([([[[[([[[([(([[[(([[([[([((([((([[[(([(([[[[(((([[((((([(([[([[(([[[[([[[([(([((([[(([[([[([[[(([((((([((([[(([[[([([[[(([([([(([((([[[([[[[[[([[(([([[([[[([(([[[([[[[([[[[((((([[[((((((((([[([[([([(([[[[[[((([((([[(([[([[([([[((([[(([([[(([((([[[([((([[[[([[((((([[([(([[(([[((([([[([(((((([([[((([[(([([[([[[([[(((([((((([[((([([[[[([(([[[[((([([[[[[[(([([[[[([(((([[[[[((((((([([([[[([((([[(([([([([[[[[(((((((([([[[([([[[((([[[(([([(([[(([((((([([((([([((((([[([[[([([[[[([[(([([([[(([(([(((((((([[[(((([[((([[((((([([[[([[[[[([(((((((([[(([[([(([[((([([([((([[((([[[(([[([([([[([[[[(([[([[[[[[[([[[[(([([[(([[([[[[([[([[[[[[(([([[[([(([([[([[([(([([(([[([[[[[([[[(([(((([(([([[([([(([((([[[[([[[([[([(([((((([[(([([[[[([[[[(((([[((([([[([(((([[[(([[((((([([(([[(([[([(((([((([([([[[[([[([([([([([[[[[[[([([[[[([[[([([([((([(((((((([((([[[[(([[[[[[[([[[[(((([[([[[[(((([[(([[[([[[([([([[[[(([[[(([(([(([(([([([(((([[[([[(([[[([[[([[[([(([([[(([([[[[((([[(((([(([[[[[[(([(([([[[(([([([[([[[[[[[[([[([[[([[([[(([([([[[[((([[[([[([(([([([(([[(([[([([((([[([[(([[(((([[(((((((([([(([[(([([([[([[([([[[([[[[((([[((([(([[((([(([[[(([[[([([([(([[(((([[[((([[(([[([[[([([[(((((([(([[([[[[([(([((([[((([(([[[[([((([[([[([[[(((([[[[[([[[((([[[(([[((([[(((([(((([[(([([((([([[([[[([([([[((([[[((([[[[[([([[[[[(((((([[(([[(([[([(([([([[([([([(([((([[([[([((([([[([[([[(((([((([[[((((([([[[(([[(([[[(([([[[((([[[[[([((([[[(([[((([([(([[([((([((([[(([(((([[[([([((([[[(((((([[[([(([[([(([[([[[((([([[(((([([[(([[[[[((([([[((([[[[([(((([[[[([[(((([([[[[([[(((([([[([((([([[((((([[(([([([[[([(([(((([(((([[([[[([[([[(([[(([[(((((((((((([[([(((([[[([([(([[[[(([(((([([[(([[([[([[([[((((([[[[[[([((([[[([(([[(((([([[[((((([[[[[((([[[([([[[[((([(((([[(([(([([([([[[([[[[[((([[([[[(([((([(([([([(([(([([([([[[[[(([[[((((([([(([[[((([([([[[([[(([(((([([[[[(([[[[[([[[([(([(([[((([[([([[([[[([[((((((([((([([[(([([[(((([([([(((((([([([[[([([([([((((([[(([[([((((((([(([[[[((((([[((([((([(([[((([(((([([[[[([([[(([[(([[([[[[[[[(((([[([[[([[[[(([[([[[[([[(([[((([[[[[[((([([(([([([([(([((([([[[[(([[(([[[[[([[[((((((((([([((((([[([[[([([((([[[((([[([[[[([([([[([[((([[[((([[((([[[([([[[(([((((([[((([([[([((([[((([[[[([([[((((([(([[[([(((([[([[[(([(([[([[[([([(([[(([[[[[([([([[([(([[(([([((([(([(((([([[([[[(((((([[[([(((([([[[[([([[[[[[([((([[[([([(([([[([((([[((([[([[((((([[(((([[[[[[[[([(([((([(([[((([[[([([((([[(([((([[[[[[[((([[(((([([([([[[(([[(([([[(([[[[[([[[[[[[[[[[(((([([([(([([[([[(([[([[[[(([(((([[([[[[((((([(([([[[[[[(([([(([([([[[[[(([[[[[[[[([[(([(([[(((([((([[[[([[([[(([((([[[([(([([([(([[[[([(((((([([[(([[[(((((([((([[[[[(([[[([[((([[((((([([([[([[[[[[(((([[[[((([(([[(([[((((((([([[[([[(([([([[([([[([([[([[([[([([[(((([([([(([([[([[([([[([((([((([[[[(((((((([[((((([[([[(([([[([(((([(([[[([(((([((((((((((([([[([([([([((((((([([[([([([(([[[[((([([[[[[[([[[[((((([(([[[[([[[([[[[((((([(((([[([[([[[[([(([((([(((([[([[[[[([([([[[[[(([(([[((([(([([([[(((([([([[[(([[([[(([[(((((([([(([([(([[[[([[([[[[(((([((((([[[([[([[[((([(([((([[(([([(([([[[([[(([[[([([(([[[[(((((([([[[[(((([(([((([((([[([([(((([(((([([(([([[[([(([[[([[[[[(((([(([[([[([[(([((([[(((([([[[(([([[[([[[[[([[[[[[[[([(((((([[([[[[[[[([[(([[[[((([(((([((([[[([[[([([[[[((([((([([[[[([([[([[[[[((([[[[[([(([[[[[(((([[([[[(([[[(([[[([([[((([[(([[([([[[[([((([([([[[[((([([([[[(([([((([[[((([(([((((((([((([(([[((((([[[[[[([(([[([([[(((([[([([[[((([([((((([(([((([[([[([((([([[((([([[([[((([(((((([([[([[[(((([[((([([([([(([([([[([[(((([[([(([([[(([[[((([[([(((((([[(((([[[[[([((((([[[[(((([([[(([[[([[[(([([[[[(([[[((([[(([[((([[[(((([((([[((([([((([([(([([[[[[([([[[[([[[([([[[[[([[[[[[([((([[([[[((([([([((([[([[(([([([[(([[[(([(([((([((([[[[([[([([[[[([((([[[([([([[([[[([([([[[[[(([([(((([([[((([([[(([(([((([([[[(([([((([([([(((([[([[(((([(((([[[[[[(((([[([(([(((([[[[[(([[[((([((([[[([[[[[((((([[[[[((([[[[[([[[[[(([([(([(([[((([([([[([(([(([((((((([[((([([([[[[(([([([[[[([([[[[[[[[(([([([((([[[((([[[([[[((([[([((([[(([([[(([[([[(([([([([(([([((([((([[(([([[[([((([([((([(([[[([[[[((((((([[[(([(([(([[(([((([[((([[[[[[([[(([((([[(([[([[(([([([[[[([([((((((((([[[[([[[[[[[(([([[(([(([(([[[([([[((((([[([((([[([([[[[[[((((((([([(([[[([[(([[([(([[[[([([[([[(((([[([([([[[([[[[([([([[[([[[[([[[[[((((([[(((([(([[((([[((([([([([[([([[((((([[[(([(((([((([[([(([([[[(([[[[[(([[[([(([[[[[[(([[[[([[[[(((([(([([[[(([[[([(([(([[(((([([[([[(([(([((((((([([[[[[([[[[(([(([[([(([[([(([((((([[[[[[[(([[(([([[([[[([[[((([[[[[[[([(([[([(([([([([[([[[([(([[(([[[[([[[([[([[([(([[(([[((([[[[(([(([[[((([[[[[([([[[([[[[[[[[([[[(([([((([([[(([[([[[([(([(([([([[[((((([([[(([[([[[(([(([[([([[([[([([([[[([((([[([([([((([([(([(((((((((([[[([[((([(([[[([([([([[[(((([([(((([([[(((([(([[(([([[(((([((([[[[[(([[[[([((([[[(([[(([(([[((([([[((((([(([([[[(((([([([((([([([[(([((([(([([[([[((([[[[((([[[((((([(([[([(([([([((((((((((([[[((((([[([[[((([[([((([(([[[[[([[([([[[([[[([((([((([([([[(([[([[[(((((([((((([((((((([[[([(([[[([([[[[([[[[[((([[[[([[(([(([[[([[([(([[[([([[[([(([[([[(((([[[([([[[[((([[[[([((((((([([[[([[([[(([([((((([[(([[[[[[[(([(([((([([([[[[[[(([([[(([[([[(([[([[[(((((([([[[[[([[([((((([[([[(([[((((([[[[(([[[((((((([[[(([(((((([[[(([[[[([[[[((([[((([([[([[[[([[[[([(([([[([[([([([([(([([[(([[([[(([([[[([[[[[[([[([[[[[[[([[(([([(([[[([[[[[([[([(([(((([([(([([[(([[[([((([[([([[[[[((([[[[([((((([[[[([[[[(([[[([[([[(([[([(([([[[((([[[([((((((([[((((((((([((([(([[((((([[[([[[[[([[([[[([[[[([([[[(([[[([[[[[[[(([([([([[[[[([[[(([([([[(([[([([([(([([[[([([(([([[(((((((([[([[[([([([(([([((([[(([((([[[([[([[[((([([([([[[([(([[([((((([([[([((([[[[[(((([[((([((([[[([[[[((((([([([(((([[(((([((([([(([[[[[((([[([[([(((([([(([[([(((([(([[[[[([([[[[[([(((([([[[([[([([([([(((((((([([[[[([[((([([(([[[((((([((([(([([[[[[[((([[(([[([[[[((([(([((((([[([[[[((([[([([([([(((([[[([[(((((([[(([[([(((((((((([([[[[[[([[(([(([[(([([[(([[[([((((((([([[([(([[((([[([(([([(((([(([([((([(([(([[[(([[[([([[([([[((([([[[[(([([[[[[([(([([((([[[([[[[((([((([[[[[[[([([([[(([([([[[([[([[(([[(([((([[[([[(([([(((([((([[([([(([([([([[(([([[((([((([[(([[([([(([[([((([[([[([[[[(([(([[[(([([[([[(([(([((([[[([([(([[(([[[(((([[([(([[[([([((([([([(((((([([[([[(((([[[((([((([[(([((([[(([([[[((([[[[[((([[((((([([([[((([[[[[[[[((((((((([[[[(((([[([([(([(([(([([[[([([[(([[[[[[[[(((([[[[[[[(((([((([([[[(((([[([([[([((((((([(([((([[([[([[[[((([[([(((((([((((([[[[[((([((((([(([([(((([[[[[(([(([(([([([[[[[[(([[(((((([[[[[([[[[(([((([[[((([(((([[[[((([(([([(((([[[([[[[([([[[([([(([[([[[[(([([[[[([([(([([[([[(([[[(([((([([([[[([([([[([([[([[([[[[((([((([(([((([[[(([([[[[((([([[([([([((([[[[((([(((([(([[(([[((([((([[[(([[[[[[(([([(([([((([(([([[(([[([[[[(([(([[[(([[[[[[[[([(([[(([[[([[(([[[(([[(([([([[([[[[[[[[[[[(([[[([(((([((([([[([(([([(([[([(([([[[(([[[[([(([[[[((((((([((([((([[[((([([(([(([[(([([[([([[(([(([[[([((((((((([[[[([(([([((([(([([[(([([(([(([[[([[[[(([[(([[((([([(([[([[(((([[([[[([[([[([[[[((([[[(([[[((([(([([([[[[[([[([[[[([[((([([[[[(([[[[[[[[((((((((((([[([[((([([([(([[([[[(([([[([[[[[[[[[(((((([([[[[[([[[(([(([[[([([[[[([[((([([(([([[([(([(([(([[[[(([[([[[[[[[([[(((([[[[[[([([[[(([((((([((([[(((([(([[[([([([([((([[[([[([[[((([((([(((([([[[(([[[(([([([([(([([((([([[[[[((([([[[((([((((([[[[[[[[[[[([[[[[[([((([[([((([([[([[[[((([(((([[[(((([((([[[([(((((([[[([[(([[[([([[([((([(([([([(([((([[([[(([[(([([[[([(([[[(([([[(([[([[[([[([(([[([([([[[(([([[[((((([[((([([[[((([[[[([([((([[(([[([[[([(([[(([[[[[[((([(([(((((([[[(([(((((([[[[(([([([([([(((([[[[(([[([[[[[([(([[[(([(([[(([([[([[([[[([[[[[((((([(([[([([[[[([[([[[((([([[([([([([((([[(([((([[([(([([[[(([([(((([[([[([([[[[(([((([([([[([[[[[[(([([[[[[((([[[([([(([((([[(([[[([([([([[([[((((((([((([[[[(([([(([[(([([([([(([[[([[([((([(([([[([([((((([([[[[([[(((([([([(([[[(([([[[[([([[[(([[(([[[((([[[(([(([(([[((([((([[[((([([[[[[(((((([([[[[(([((([[([[([(((([((([([[[((([((([([([[[([[[[[[([(((([(([([((([([([[((((([((([(([[[[(([[(((((([(([[[(([(([(([([[([[[(([([[[((([[[[((([[(([[([([[(([([[[[[((([[([[([[([[((((((([([([[(((([(((([([([[((([[[(([([((([((([([([[(([([[(([([[[((([([[([[[[[(([[[([[([[[(([((([[([([[[[(([[([[[[[[[([[(((([[((([[[([[([([(([(([((((([(([[(([[([([[(([[(([[([([(([(([[[[(((((([([[[([[([[((((([([[(((([[([[([[[([[([([[((([(([([[([[[[[[[([[[[((((([(((([(([[[([(((([(((((([(([([[((([[([[[[((([([[[(((([([[[[([[[[[[[[[([[([([(([([([((([([([[[[[[[(([([[([[[([[[[[[([[[(((([(([([[[[[[[(([(([(([((([([[((((((([[([([[[[([[([[[[[([([([((([[([[[[(([[([[([[([[[[([([[[(([(([[[[[[[(([(([[[[(([[(([([[(([[((([([[([([[[((([[[[((([([[([([([[([((((((([[[([[([(([(([[([[[[[[[([[[([[((((([([(((([(((([(([(([[[(([[(([[[[[[[[((([([[((([[((([((((([[[([[(([[(((([(([[[(((((([[(((([[([(([(([(([[([[[(([[(((([[((([[[[[[([[((((((([(([[[[[((([[([[(([[([([([[([[([([(((([[([(([(([[[(([[(([([[((([(((([[[[([([(((((([[[(([[([[((([(([[([([([(((([([[([([(([(([(([([[([(([(([([([[([[([[[([([([([[([[(([((([([(([[[[[([[(([([[[([[([([[([[[((([(([(((([[[([([(((([([((([([[([([([[[[([[([(([((((([[[[([[(([[([[[([[(([[[[[([(([[((([[(([([(((([[(([([[([[[[[((([[([((([([([[[[[[[[([(((([[[([[(((([([[[[([[[([((([[((([[[([(([[[(((([[(([[([([(([([((([([[([((([[((([[([[([[[[[([((([[[(([[[[[([[((([(([[([([((((([[[[[[[([[([[([[([(([(([[[[[([((([([([([((([[(((([[[(([(([[([(([([(([((((([(([[(([((((((([(([[[(([[[[([([[(([[[([([[(([[[((((([(([[((([([[[[([[([([([([[([((([[[(((([[[[[([([(((([(([[[(([[([[(([([((([((((([([((([[[(([([([(([([([(([([([([[[[(([([[[((([(([[(([(([[[([[[[((([[((([(((((([((([[(((((([((([[([([([([((([([([([[(([[(([[[(([[([[[[[(([[([[[((([[[((([([[[([(((((([(([[[(((([(([([[[((([(([[([[[[(([[([[[[[([[[(([((((((((([(((([[(([[((([(((([([[[([[[(([[([([(((((([([[[[(([[[[[(((([[([[([[[[[[(((([[[(([(([[([[[([([(([((([(((([[[[(([([([[([[[[((([([(([[([((([[[[[[[([[([((([([[[((([[([(([([([([([((([(([[[((([((([[(([((([([[[[([[[(((([[([((([[[((([[[[[((([(([[[[([([[[([([((([([([[(([([[((([[[((([[([[[[[([[[[([((([[[[[(([[(([([[([((([(([([(([[[(([[([[([(([[[((([[(((((([(([[[[((([((((((([(([([[([((((((([(([[([[[([(([[((([[((([[(([[[([[[(([(([((([[[(((((([([[[[([[[[[([[(([(((([[[[[[([[[(([[[([[[(([((([([[[[[(([([[[([[[((([([[[[[([([[([[[([[([[([([(((((((([[[(([([[[([(([[([([[(([(([([[[[([(((([[[[[[([[([[(([([[(([(([[((([((((([([([[(([[([[[((([[[([[([[([[[[[(([([(([[([[[[([([[[(([[([[[[[(([([[([([([[[(([[[(((([(([([[[([([(([([(((([[(([[(([[([[(([([(([([[(([(([[[[[((([[[[[((((([[(((([[[[[(([([[(([([(([[[[([[([([[[(([[((([[([([([((([[(([([[([(([([([(([[[((([((((([[(([([([([[[([[[(([([[((([([([[(([[(((((([([([[(([([[[[[[([[[[(([[[[(([(([([[[[[([[[[([([([(([[[[[((((([([(([([[([[([[(([[(([[((((([[[([[(([[([((((([(([[([[[((((([[([[([[[([[[((([[[[([([[(((([((([[(([[(([(([([[[[(([[((((((((([((([[(([[([(([(([[((([[[[((((([(([[(((([(([[[[(((([((([(((([([[(([(([(([([[(((([[[[[[([[(((([([[([[[(([[[(([([[(((((([[[([([[([[[((([[([[(([[[([([[([([(([([(((([([[((([(([([([(([([([((((((((([((([([((([[([[(([[[([(([[((([[[[(([[([([[([(([[([[(([[[[[[[(([(([([([[((([[[[(([([[[([[([[([[[[([(([([[([([[[[[[([((([([((((((([([([(([([[[[[[[(([([[([([((((((((((((([((([([([[[(([([(((([([([(([[[((((((([([((([([(([[([[(((([(([[[([(([[[([[[([([[[([(([(((([([(([([([(([[(((([(([[([(((((([([[[[[[[[[[[((([[(((((((((([[[[[([[([((([((([((((([[([[([([[[[([[[[(((([[[([[((((((([[(((([[[[(([(([[[([[[[([[[(([[[(((([[[((([[[[[(([[([([[[([[[([[([([[([([([(([([(([([[(([[((([[([(([([[(([[[((([[(([[[([[([(([(((([((((([[([[([([[[(([([[(([[[([(([[(([((([((([(([[([[[[[([(((([[(([[[((([([[([[([[((([((((([((((([[(([([(((([((((([(((([(((((([[[[[[(([([((((([[[[([[[[[(([((([[((([[[[(((((([[[[((([([((([([(([([([([([([[[(([[([[[[(([[[[((([[[[[([[[([([[([([((([[[[[[(([([([(([(((([(([(([([([[[[[[[([[[([((([[[(((([[([([((((([([([([[([((([((([[(([([[[((([[([([[(([(((([((([[[([[([([[[([[(([[[[[(([(([[[(([([([([[([([[[((([(([[([[(([[[[[([[[[([[[([[(((((([(((([[[[[([([[(([[([[[[[[(([[[[(([[[((([(([[[(((((([[[([[[[[([([([([[(([(([[([(((((((([((([[[[[[[[[[[[([(([[([([[[[(((((((([(([(([[[[[([[[[[[[[[[(((([(([([([(([[[([((([(((([((([((([[[(((([([[[(([(((([[(((([[[[(([[[[((([(([((([((([[((([[[(([[[[([(((([([[[([([(([([[([[[[[([[[(((([[(([([([([[[(([[[(([[[([[[[((([[([[[((([(([[[[([[((((((([((([[[[[([[[[([([([([[[(((([[([([((([[[([[([(([(((((([([[(([(((([(([[[([([(([[[([([(([([[[[[(([[(([[(([[[([([(([((((((((([[(((((([[[((([(((([([[(([[([([((([([[([(((((([(([[[([([(([([((((([(([([[[(((([([(([[[[([([([[([([([((([[[[[(([[((([([((([[((([(([([([(([(([[[((((((((((([(([(([([[(([([[(([(([[[[[([([[([([[(([(([[[([([([([[[((([([[(([[([(([[[((([[[((((([[[[(([(([(((((([([([[([([([[[(([(([[[(((([((([[(([([[[([(((([((([((([(((((([[([(([(([((([(([[(((([[([[(([[[([(((([[[([([((([[[[(([[(([[(([[([[[([([([[[[((([((((([([[[[([[[[(([[(([[([[([([[[[([(((((((([(([(([((([(([(([[([((([[([([(([(([[(([((([[[[[([([(((([([[[(([(([((([((((([[([[[([[[(([([([([[([[[[([([[[[[((([[([[[([(((((([[[[[[[(([[[(([([[[([((([(((([[[[([([[([[([([[[(([([[[([[([((([[([([[((([[([[[([(([[(([[((((([([[[([([[([(([[(((((((([([[[([[([([((([[[([([[[[[[[((((((((([[(([(((((((([((([[(([([[([(([[[[[[([[(([[((([[[([([(([[[(([(((([(((([[((([[[[(([[[(((([([[([([([[[([((([[[[([((((((([([[([([(([[([([(([[[[[[([((((([[[[((([([(((((([[((([[[[(((([[(([([[([[(((((((([(([[([((([(([(([[([(([[[[[[(([(([[((([(([[[([[[([[[(([[[[[((((([([((([([[[[([([([([(((([((([(((([[(([[[([[[(([((([(([(((([(([[([[[([(([(([[((([[[([[[(([((([[[[([[[((([([[([([([([[([[([[[[[(([[[[([([(([[((([[[([[[[[[((([([[((([[([(((([[[[[(((([[(([[[[([[((([[[([[([([[(([[[[[[(([[[([[[([[([[[([(((([([(([[([[([(([([(([([(((([[[[[[[[[([(([(([[[([[(([([[([([[[[([([([([([([([(((([((([[[(([([((((([(([[(([[([(([[([(([[[[([(([(([[([(([[(([((([[([([[[[((([[[[([[(([[((([([(([(((([[[((([[[[([[([([(([[((((([((((([([[[([((([[([[(([([[[((((([([[[(((((([[(((([[([[[[[(([[[(([((([([([(([[(([(([[[((([[[[((([[([[[([[[[[[[(([((([([((([[[[[([(([[([((((([([[[[([([[[[[[[[[[[[([[[((([[[([[[[[[[[([(((([((([[[([([[((([(([((([[[([(([(((([([[([[(([([([[(((([([([[[([((([[[[((([[([(([((([([(([(([(((((([[((([[(([((((([[([[[(([(([(([([[[([((([[[[[[[((([[[(([[(([(([([[[[([[([((([[[(((([[[((([(([(([[(([[[(([([((([([([((([((([[[([[[[[[([[[(((([[[([[([[((([([[[([[(([([[(([[(((([([[[([([([[[(([[([([([((([([[[([([[(([[[[[[(([[([([((((((([([[([((((((([[([[[[(((([[[([(([[[(((([[([(([[(([[[(([([[[([[[[([([[[([[[[(([([[[[[(([[[([[[[(((([[([(((([[((([((([[([[[[(((([[([(((([((((((([[(([[([[([[[[(((([[[[[([[[[(([([((([[[((([[[((([([((([[([[[([[((((((([[[([(((([[((([([[(((([([[(([([((((((((([(([[(([[([[[[[(((([[[[[([([(((([(([[[([([(([[([[([[(((([([(((([(([[(([([[[([[[(((([([(([([(([([[[[[[[([[[((((((([[[((([[[[([([[([([[([([[[([([[[[[(([([(([((([[([(([(([[[([[([(((([([[(([(((([[[[[(((([([[[([([((([([[[([((((([[[([[[[(([(((([[([[[((([((([(((([([[[[[(([([[[(([[(((([((([[[[(([[[([[[([[[([(([[([[[([((([(([[[([[[[([[([[([[[[[[([(([[[(((([(([[(((([[((([(((([(([([([[[(((([[([[([(([[((((([[[[[[(([[(([((((([[[(((((([[[((([[(([((([([(((([((([([([(([([[(([[[([(((([[(([[[[[[((([[([[([[[[([(([[[((([((((([[(((([([[[([[[(([(([(([[([[(([(([(([[([((([[([[[[(((([((([[[[((([(([([([[[[[[[[[([[(([[([([[([([(([[[[[([[(([[(((([[([([[[(([((((([[[(((([((([[[[[[[((([[[[(((([[([[[([([[[[[[[[(((([[(([[[[([((([(([([(((([[[([[(((((([([([([[[[[[((([[(([[([[[[([[(([(([[([(([([((([[[(([(([(([[([[([(([[[([([(([(([[([[((([([[[[[[[[([([[[[([[(((([(([([([[[(([(((([[(([(([([([[[[[([[([(([((([[(([([([[([(([([[[(([(([([[[([[(((([(([((([((([([(([([[[([([[[(((([((((([[[((([(([([[([(([([[[[[([[[(((((([[[(([(([[(([((([[[([(((([([(((([[((([[[[((([([(([([[(([(([([[(([[(((([([[([[([([[([[((([((([(((([[[[[[[([[(([([[(([(((([[[([([[((([([(([([[((([[[(([(([(((([[([[(([([[[[(((((([[(([[([([[[[([([((([[([([(((([[[[[((([(([[([([([([[[[[[[(((([([([([[(([[[((([(((([[[[([((([[[[([(([([[(([[((([[[([((([[[([[([[((([[(((([[([[[[[[[([[[[[([[[((((([((([[[(([(((([(([(((([[([(((([[(([([([[[[([[[([(([[[(([([(((([(([(([[([([(((([(((([[[(([([([[((([[[[([[([[([[[((([[([([[[([[([[[([[(((([(([([[[([[((([(([[((([[((([([[((([(([(([[([[([[[([[[((([[[[[[(([([([(([(((([[[[[[([[[(([[[(((([([([([(([[[(([([([[([((([[([([[((((((((([[(([[[[[(([([(((([([[[[((([[[[(((((([[([([([[[[[([([([[[[[((([([[[[(((([(([[([[((([[[([[([(([[[[([[[[((([([([([(([([([([[(([(([(([[((([[[[[([[[[[[(([[[[((([[((([([[((([([[[[[[[([[((([(([((([[([[([(([[([[[([([(([[[[(([([([([([[[(([[[[(([[(((([[(((([[([[([[[((([[[((((([[[[[(([((([[([(([([([[[([([[[[(([[([[[(([[[[((([(([((([[([([((((([((([([([[([([[(((((([[[[([([([[[[(([([(([[[[((([[[[(((([([([[[((((([(([([([([[[[([([[((([(([(((([((((([([[(((([[((([((([[([([[[[[[([[([[([([(((((([[[([([[[([([[([([((((([([(([[[(([[((([[[[[((([[[[([[[([(([[([[[[((([[(([([([[([[[((((([([[[[[[((((([((([([[([[[(([(([(([((([(([([([(([(([[([[(([(([[([([(([([([((([([(((([((([([((([[[[([((([((((((([[([[(([[([([([([((([(([((([[(([[[[([[[([[[[[[[[[([[[((([[[(([[[[[[([((((([[[[[[[[[(([[([([((((([[((((([([[([((([(([[([[[((([[(((([((([((([(([(([(([([[[(((([([[[[([[[([((((((([[[([[(([[(((([((((([((([[[((([((((([[[[(((((([([([[(([[((([([[([(([([[[([[[[(([[[(([(([[[[[(([([[(([(([[([[(((((((((([([[((((([([([(([((([(([([[[[([[([[[[((([([[([[([([([((((([([[[(([(((((([((((([([[([[[[[[([([(([[[([[(([([([[[[[((((([[[[[([(([[(([([[((([((([[((([[[(([[([(([[((([[[(([(((([[[(([[(([[(([[([([[[[(([[[((([([[([[(([(([[[[([([[(([[([(([[[(([[([([([[([((([[((([(((([[(([[[[([([([[(([[[[[[(([[([[[[[[((((([([(([[([[([([(((((((((((((((([[([([([[([([(([[[[(((((([[[(([(([[[(((([([[([([[([(([[[[([(([([(([[[([[[((([(([[[(([[((([[[([([[[([[[((((([([[([(([((((([[[([[[([[((((([[(([[[[[(([((([[[(([[[[[[([[([([(([([([((([[[([([(((([[[(([([(([([([([(([[[[([([[[([([([([[(((([(([(([[((([[([((([[[[[((((([(([[[([([(([[[([[[([[[((((([[(((([(([([[[((([([[[[(((((([[[[[([[[(([[[(([[([([([(([[((([([((([[([[(([[[(([(([[[[(([([[(((([(([((([(([([(((((([[([(((((((([(((([[[[(([[((((([[(([(((((([([[[[(([[[([([(([([[[([[([[((((([[((([[[[([[[[(([(([([([[([(([[[([((((([[(([([([([([([((([[([([[[((([([[((((([[[([[(([[([(([[((([([[((([([([[[((([[[((([([[([[[(([[[((([(([(([[[(([[[([([[[[([(([([([[[(([([(([[[((([[[(([([[[[[[[[[([[([[[[((([(([([((((([[[[([([[[((((([[[[[[[([([[([[[((([[[((((([((([((([[((([[[((([(([(([(([(([[(([[(((([([[[[(([([[[[[[([[[(([[(((([([([[[[[(([[[[([([[([(([[([([[([(([([([([[([([(((([(((([[([([[([([[[[[[[[([(((((((((([([[[[(((([(([((((([[[([([([[[[[[(([[(((((((([([([([((([((([[(([[[[(([[[[(([((([(([([[[([([[[([[([([([(([(((([([(((((([[[(([[([[((([[[[[[[(([[([(([([(([([([(([[([[(((([([(([([(([([([((([[(([([(([([([[([(((([[(([([[([(([([([[[[(([[[([([([(([[([([(([([[[([[([[([((([((((([[[(([[(([[[[([[[[[[(([[((((([[[[(([((([[[[[[((([[[[([[[[(([[[(([[[[(([([([[[(([[[[[[[([([[[[[([(((((([[[([[[([[([((([[(((([[((((([([[[[([([[[[[[[(([[(([(([([([[[([[(((([[[((([([[([([([((([[([([[[[(([[([(([[(([((([[[(([[[((([(([[[((([([[([([[[(([([[(((([([([((([[[[[(([[([[[((([[[([([[[(((((([([[[([[[[[((((((([[[[[([[((([[[(([((((([[((([[[[((((([(((([([[[((([[[((((((((([(([((([[(([[[(([((([[[((([[([[([([[[[[([([(([[[[[(([[(([[(([([((([[((((((([([([[[((([(((((([(((([((([([([[([(([[[[([[[[[(((([[[([(([([[([([([[[[[[[[((([(([((((([([(([([([([([([([([((([((([((([[([[([[((([[([([([[[[[[([[(([(([([[[[[[([([(([(([([[[[(((((([[[(([([([[([(((((((([[(((([(([([([([[((([[(([[[([([[(((([[[((([([([(([[(([(([[([[([[[[([((([[[((([((([(([[[[[[(([[([([[(([[((([(((([[[[[[([[([[([([([[[[([[[[(([[([(((([[([[((([[([[((([([[(([[((([[[(([((([[([([[[((([[(([[([[((([[[([([[((([([([(([[[[([[(([((((([[[[[[[[[(([[([[[[[[([[([[(((([([[[([([(([([[[[[(((([([[[([[[[(([([[[[[([[[(((([[[[([([((((([[[[([[[(((((([(((([[[[[[((((([[[[([((([(([[([[[[([[[((((([([[[(([([[(([[[[[[[[[(([([([([[[(([([[(((([([[([[[([[[[(([([[(((((([[[[[[[[([[[((([[((([([(([[[[((([[[([[(([[([((([[[[[[([([[[(([[([(([(([[[[([[((((([([[[([([[[([[[[((([[[[[[([[(((([(([([[([([[([[[[[([[[([(([(((([[([[(((([([([(([[(([[((([([[[([[[(((([(([[([[[[([([([(([([([[[(([[(([([((([[((([[([[(((([[[[([([[([[[([(((((([[[[(([([([[([[[([[([[[[((([[((([(((([([([[[[[([(([(([[([[((([[[([[[([([[([([([([[(((([[([(([(([[[(([(([([([[[[(([[(([([[[[((((([((([([([([[([(([([[[([([[((([([[([((([([[([[[((([([([([[[([[([(([(([([([[((([(([((([([[[([[(((([([([(([[[[[[(([([((([((([([[([[([[[[((((([([[[(([[[[[[([[((((([([[[([[[([[(((([(([[[[([[[([((([[[[([[(((((([([([(((([([[([[[[[[[[((([([[(([[[[(([[([(([((((([(([[[[[([[(([[(([([[([(([[([[[[((([((((((([([[(([([[[[[([[[([[(([(([[([[([(([([([([([([(([([([(([[[([(([[((([[[([[([[[[[[((([[([(([[[([(([[([[([([[((((([([[[(([[(([[(([(([([((([[[([(((([[[(([([[([[([([([((([[[((([((([[[[((([[[[[[[[([(([(([[([(((((([[[(((((([[[(((((([[[(([[(([[([[(([[[[[((([([(([[[([(([[[[[(([([[([([[(([[([[[([(([(((([[([[[[[[[([[[[(([[[[([[[([(([(([[(([([([[[[([(((([([[[[[([[(([[([[[[[(([(([(([[[([(([[[[[([(([[((([[[([([[([(([([(([[((([(((([[([[(((([[[[([[((([((((([[([[(((((([[[([[([[[[(([[(([[[([([((([([[[[[([(([((([((((([([([[[([[(([[[(([[[[([((((([[((([[(([[[[(([((((([([[([((((((([[((([[[([([[([([[[[[[[[([([([([[[((((((([[([((((([([(([[((([((([[([[(([([[((((([(([[[(([[([([(((([([[[((([((((([[[((([((([(([[((([((([([[(((((([((((([(([[[(([[[(((([[[[(([[(([(([[[[(([[([([[[[[[[[[[[((([(((([[[([[([((([[([[(([([[[([((([[(([[(([[[[([[((([(([(([[[((([[(((([[[(((((([[[((([(([((([((((((([([[[[(([([[[[([([[(([(([((([(([[[([(([[([([([(((([[[[((([([[[(([(([[([[[[[([[[[(([([[([((((((([[(([[[([([[[[([[(((((([([[[[([([(([(([[[[[([([([[([[([[[(([[[[[[(([([[(((([[([[([[([[[((([[[([[[((([([[[([([([([[([([([[[[([(([([([([([([([[(([[[([[[[([(((([[([[[[((([([[([[[([[[[(([[([([[[(((([(([[[[[([([[[[([[[([[([[(((([[([((([((((([[([((([[[[[[[(([[[[[[[[[([[[[[([[([([[([([((([[[[((([((([(((([[[[[([[(([[[[[[((([[([((([([([[[([((([([[[(([([[([[[(([((([([((([[[([(([[[[[([[(([(([[([(([[[(([[([[[[[((([(([([([(([[[([(([[(([([(([([([[[[([(((([((((([([[([((([[((([(((([[[[([((([(([([[((([[[([([[[(([[([([[[([[(([[((([[[(([(([(([(([([([[((([([[[[((([[[([([(((([[[([[([([([(([[((([[[(([[((([[[(([[[([[[([[[[([[[([[([[[[(([[[[(([[[(([[[[(([([[[[[[[[((([[([([[(([([([([[[[(((([[((([((([(((([[[(((([[((((([[(((([[[([(([([(((([([([[([[[([[[[[[[(([[((([[[[(([[[(([[[[[([([([[([([[[[[[[[([[([[[[[[[[[([(([(((([[(([(([((((([([(((([([([([[(((([([[[[[([[[[[(((([[[[(([([((((((([[(([((([([[((((((([[[[(((((([((([([[[[[[([[(([([[[[([([([([((((([([[[[([([((([([((([([[(([[[(([(([[([([[(([[[(([[((([[((([([[[(([[[[[(([(([[[(([[(((([[([[(([[([(([[((([([([(((([([[[[([[(([(([[[[(([[[([[([(([[([([([([(([([[([[[((([([([[([[[[]]]])]])])])))]]])]])]))])])])])]]))])]])]]]))]]]]))]))]])]]]])]))))])])])))]]))])]]))]])]]))))]]))]]]))]))]]]]]))]]])])))]])))]]))]]]))]])])]]))]))]]]))]])])))])])))])])]]]])])))))])])])])]]]])]))]])]]]]]])])))]))))))]]]])))))))]])])))]))]])))))))])]))]]]]))))]]]]])]]]]])]))))]])])])]))))])])))))]))]))]]))))]))])]]]]]]]]])]])]]]]]]]])])]])])])]]]]]))]]]))]]]])))]]))]]]]]]])]]])]])])]))))])]))])]]]))))]])))))]]))))]]]))))])))])))]]))))]]]])])])]))]])])]])))]]]]]]]])]))]]]]))]]]))]]]]))]]]])]])]]])]]]])]]])]]]))]]])))]]))]]])))]]))])])])]])]]]))))])])]]])))]]]])])))]])])]))]))]))]))]]])))]]))]])]]])])]]))]]])])]]])))]])]))])))])]]]]))))])))]])))])]])])))))]))))])]]]])])]))])]))]]))])]]]))])])]))])))]]]]])]]))]]]))])]]))]))]])]]]]]))])]]])))])])))]))]]])]])]))]]])])))])]]])])])))])]])))]]]]]]))]])]]]]]))))])))])))]]]])))])])]])])]])]]]]])]]]]]]]]]))]]]]]]])))])]])))))])))])]]))))]])]])]]])]]]])])]]]]]))]))))]]])])]]))]]]])]]])]])])))]]]])]]))))])]]]])]]]))]])])])])])])]))])]]]])])])]])])])])]]])])))]]])]]])))]]])]])]])]]))))]])]))]]]]]]))]]])]])]])])])]]]]]))]))])])]]]])]))))))]])]]]])])]]]))]])))))))])]])]))]]]])]]]]])]]))]))]]])])))]]]]))))])])])]]))])]]]))])))]))]))]])])]]]])]))]]]])])))))))])))]))])))]]]))))))]]]))))]])))]]]))]))])))]])]]]]))]]))]])))])]]])]))]])]])))])]])]]]))))])))]]]]]]]]]]])])]]))]]]]))]))]]))]]]]))))]]]))]]]))])))))]))))))]])])))])))]]))])))])))]]])))))])))]]])]))))])])]]))]]]))])))))]])]))]])]])))])))]]))])])))))])]])))))))]]])])])])]]]]]]]])])]])])]]])))]])))))))])]])])))))]))]]]]))]])))]])))))])]]]]))]]]))]])]]])])])))))])))]))])]]]]])])))])])]]]))]]))]]]])]])]]]))))))]])]])))))])))]])]]]]))))]])]]))))])))]]))])]))])]])])]]])))]]))])]]]]]))])]]]))]))]))]]]]])]]))]])]]]]])]))))])]]]])])]))]]))]))])]]])]]]]))]]]])]]]]]]])]]))))]))])]]])]]))]])])]])]))]]]]]))])]]]))])])))]]]]]))]])]]))]]))]]]))))))]]]))))))]]]))))))])]]))]))])]]]]]]]])))]]]])))])))]]])))])])])]])]])]))]]]))))])]]])))])]))]))]]))]]))]]])])))))]])])]])]]))])]]]))])]])))]]]]]])]])]]])))]]))])]]]))])])]))])])])])])]))])]])]]))]))]])]]])]]]]])]))]])])))))))])))]]]])]]))])]])]))]]))]])]]]]]))])))))]))])]]))]]]]))]])])))]]]]]]]])]])]))))])])]))))))]])]]]])))])]]])]]]]))]))))]])]]])]]])])))))]])]]]]]]))]]])])))))]]]])]])]])])))])))])]))]]]]]]))])])]))))]])]]])])))]))])))]])])]))]))])]])]]])])])])))]]])]])])))])]])])))]])])]]])]))])]])])])])))])))))]]]])]))]]))]]]])])]))]))]]]))]))])]]))))]])])])])]])])]]])]]])))]])]]))]))])]]]]])])]))))])))]])))]]]])]])]]])]])])]))]]]]))))))])]]])]])])]]]]))))]])]])))]])))])]))]]))]]])])]))])])])]]]])]]))]))))]]])]]])])))]]))]]))])])]))))]])]]))))]))])]]])]]]]])]])])]])]))]))))]])]]]]]])))]]]])]]])])]]])])))))]])]]]]))]))])]]))]]])])]]]]]])))])]]))]])]]])))]]]]))])])))]])))]]])]]]]]]]]))))))]])]))]]]])]]])]])]))))]])]))]]])])])]))]]]]]]]]]))]])]))]]])])))))]]])]]]])]]))])))])]]]])))))]]]]]]))))]))))))]]])]]]])))))])])]]]]))))]]])]]]]])]))]]]])]]])]))))]]]]])]))])])]]])]))))]])]])]]]]]])]]))]]]]]]]]])))))]))]])]]]]))])])])))]])])]]])))]])]]))]])))]]])])]])))]))]]])))]]))]])])))]])]])))]])]]))))])]]))]]]])]]]])])])]])]])]]]]]]))))])))]]))]])])]]))]]]]]]))])))])))]]])))])]]]])]])]]))]))]]))])])])))]]]))))]])])]]]))]])))]])])])]))]))))]]))))))))])]])])]))]]]))))))]]]])]))]))])])]]]]]])]))]))]])]]]]]])])])]])))]])]])]])))])))])))])])])])])])])]))])])))))]))])))]]]]]]]])])])]])]))])]]]))))]]]]])]]]]))])]])])])))]))))]))))))])))]]])])])))))))]])))])]))]]))]]))]]]]]))])])]]]]])])]])]])))]]])))]))]]]))]])))]))])))))))))]]])))]]])]))))])))))]]]])))]])))))]))]]])))]])]]]]])))))))]]]]])]]])]))))))]]])])]]])))]]])]]))]]]]])))])])]))))]])]))]]])])]])])))]]]))])))]]]))]]])))]))]]))])]]))]]]])])]])))])])])]])])))]]]))))]])]]])])]))]))]]))]]]]]]])])]]]])])))))]]))))]])))])]])]]])]]]))))))])]]]]])])]]]]]]]))]]])])]))]]]]))]]]))]]]])]]]])))]]]]]])))]))]]]])))))]]))]]]]]])]]]]))]]))]]])))))])))])]])]])]]])]))])])]]))])])])]]]))]]]])])]))])]])]))]]))))])]])])]))])]))]])))])])]))])]))])]))))]])]]))])])]))])]))])]]))]]]]]]])))]])]]))]]]))))))])]))))]))])])])]])]]])])]]])]))])))]))]]]]))]]]]))]])))])))])])])]))))))))]]))]]]]]])])])]]])))))]))]))))]]]])]))))))))))])]]]]]]]])])]])])]]))))]))))])])]])])])]))])]])])]]))])]])])]]]]))]]]]])])]))))]]))]]])]]]]]])]))]]]])]))))]]))]]))]))]))]))])))]]])))]])))])))])))))]]])))]]])]])])]]]]]]])))))]]])])]]]])))))])]))])))]]]])]])]]]]]]]]])]))]]])))]]]))])]))]]])])]))])]]]])])]]]))]]]))]))])))]]]))]]])]])])))]]])))]]])])])))]])])))]]))])]]))]])]]])))))]])])))]]])])]])))])])])])])]))]])))))])]]]))])]])])]))]))]]]])]]]])))]])))))]])]])]]])]))])])]]]))]]]])]))))))]))]])))))]]))]]]]))))]))))))))])]]))))))])]))])))]))]))))]])]))]]]]))]))]]]))]])]])))])])))]]))])])])]]))]]]))]]])]]]]]))))))]]]])])))]]])]))]))))]])))))]]])]]])]]]))])])]]]))])))))]]]]])))])]])))]]))]))]))))]])])])])]]])])]]]]))])])])]))])]))]]]))))])])]]])))])])]))])])]])]]]]]]))]]])))]))]]]]]))]])))))]])]]])]]])))))]))])]])])))))]]])]]])])]]])))]]))]]]))])))]]])]]]))])]))])]]]]))])]])])]])]))))]]]))]))]]]))))))]]]]))])])]])])])]]))))))))))))))))])])]])]]))])])))))]]]]]])]]))]]]]]]))]])])])]]]]))]]))))])))]])))])]])])])]]))]]]))])]]))]])])]]]]))]))]])]])])))]]]))]]]])])]]))]]))]]))]]]))))]))]]])))]]))])]]))]]])))]])))])))]])]))]]))])]]]]])))))]]]]])])]))]])]]]))])])]]]]]])]])])))))]))))))]))]]])])))))])])])]])]])])))]]]])]])]]]])]))])))]))])])])))))]])]))))))))))]])]]))]))]])]))]]]]]))]))]]]))]]]])]]])]))])]])])))]]))]])])]))))))]]]])))))])))]]])))])))))]))))]]))]])]]])))))))])]]])]]]])]))))]]])]))]))]))])))])))]))))]])))]]])]]))])))])]])])))))]])))))])])]]))]]]]]]]]])))))])]]]]]]))]]])))]]])]]]]]]]]])]]])]]]]))]])))]))])))])])])])]]))]])]])))))))])))])]]]])))])])))]))))])])))])])]))])])]]))]))]])]]))]))])])]))])))]))]))]))]]])]])])))])))))]]]]]])])))))]]])]])])]))]])))]]]])]]))])]]])]]]])))]]]]])))]]))]]]))])])))))])])]])])]]])])]]]))))))])])]])]])]]]]]])])]])))])))]]))))]])])))))]))))]))])))]])])]]]])])])]))])))))]]])])]))))]]]])))]]]]))])]))]]]])])])]]]]))))))]])])]])])])))])))))])])]])))]))])))]]]]))]]])]]))]]]])])]]])])]))])]])))]))]]]]])))))]]])))]]])]])]]))))]]))))]]))]]]]))]]])])])])]))]]]]))])])]]])]]))])]])]])))]))])))]])]]]]]]])])))]])])))]])))]]]]))]]]]]])]]]]])))]]))]))]))]])])])]))])])])])))]]]])]]]]))])]])]]])))]])]]))]))))]]]])])))]]]]])])])]]]]])])])]]))))))]]]])))]]]])]))))])]))]]]]]))]])))))))))]])])]])))])]])])]))]]]))])])])]))))]]]))]]])]]]]]]))))]))])])]))]]]]]])))]]])]]])]])]]))]))])))]])])))]])))]]))])))]])]]])]))]))))]])]]])]])]]])])]])))]]])]])]])]]]])))]])])]))]]]))))]))))])])]]))]))]))))])]))]]]))])]]])]]]])])]))]]))))])]]))))]))]))))]))]]])))])))))]]])]]]]])]]]]]]])]]))))]])))]])]])]]])))])]]])))]]))]])]))])]]]])))])]]]]))))])))]]]))]])])])]))))]]]]]]])])])])]]))])))]]]]]))))])])]])))])])]]]])])]]))]]))))))]]]])]))]])]]))))]))]))]]])))]])]))])])))]])])]]]))))]))]])]))]])]]]]]]]))))])))])))]])]])])]])]])]))))]]))]])]))]))]])]))])])))]]]])))]]))))])]))))])]]])))]))]]))]))]]]))))))]]])]]]]])]))])]])]))])))]]])))))]))))]]])])]]])]))])])))])))]))]))))]])]]])]))]))]]])]))])]])])]))]])))]))])]])]]]]])])]))]))]]))))]))]]])])]))]))))]])]]]])])]]]]]]]])])))]])]]))]))])])]]]))])]])]]))]))]))]]])))])]))])]]))]))]])]]]])]]))]])))]]]]]])])])]))))))]])]]]))))])]))])))])]]]]))]]))))]]]]]]]])])]]])]]))))]]]])))]]]]]]])))]))))]]])))))]))]]])])]]))))]]))]])]]]]]))])])]])])]]))]])]]]]]]]]])])]))])))]]]])))]))))]]]])]])))])]]))]))]))]])]]))]))]))]]])]]])]))))]])))))])))]]]))])]]]])]])]])))]]]]]]))]]))))])]]]))]])]))])])])))]))))])])))]))]])))]]]))))))]]])))))]))]]))]]]]]])))))]]))])]])]]))))]]])])]))]))))])))]]))))]]))]))))]]]))])]]]]]])]])]])]]]])]]]))])))])]]])]]))])]]])]]])]]]))]]]])))]))))]]))]]])]))]]]]])]))))])))])))]]])]]))))]))]]]])]]])))))])]]])])))])])]]])]))))]]]]]))))]))]])]))))])]])]]]))]))])]])))]))])]))]]]]])])]]])])]])])]])])]]]])))]]])))))))]]])]]]]]]])]))])]))])]))))]]])]]])]))]]))]))))])]))))]])]])]]))])])]]]))]))))])])]]]]]))))]]]]])]]))]]))])))))))))])]))]])]))))]])])))]]))))])]]])))))))]])]]])]])))])])))]]])))]]])))])]))]]]])]]]]]))))]]]])]])]]))]])))))))]))))])]]))))]]]])]])))])))]]))))])]]))))]]]])]]]))]]]]])]))]]]])]]])])]]]])]]])]))]]]))]]))])]]))))]]]))])]]]))))]]]])]])))))))])]])])))))))])])]]))]]]]]]))]])])]]])])))])])])]]))]]])])])]]])]))))]]))]])]))]])]]])])))]])]])]]]))))]]])]]]]]])]]])))])))])])])))])]))]]]))]]))]))])))]]]))))]]])))])]])]]]])]))]))]]))]]])))]]]]]]])))])]]])]))]))]))]]])]])))))]))]])))]]))))))]))]))])])))]))])]])))]]]])))])]]])])]))))]])])]))]])]])]))))]))])]]])))]))])))]])])]]])))]))))])]]]]]]]])]]])))]]])]]]]]]]]]]]])])]]]])])))))])]]))])]]]]])))])])))]))]]]]]]])]]])]])))]]]])))]]]))]))]]))])])])))]))]]]))]]]]])]]))))]]))))))]]])])))))]]])]))]])]])))])]]])])))))])))))]]))])])]])]]]])))]]]))))]))])])))]]))]])]]]])))]]]])])]])))]))]]))])]]))]))])]]]]))])]]))])]]))]]))])))))])]))]]])))]))))])])])])])])])]]]])])]])]))]])]]]))]))])]]]]]]]]]))))])]))])]))])]])]]))])]))))])]]])]])]]])]]]))]]]]]]))]])])]])]]])))]])]]]]))]]))))]]]]]))))])]])))]])])))]]]]]])]]])))]]))])])]]]]))]]]]])]])]])])])])]])])))]]])]]]])))]))]]])]]])))]]))]))])]]])]]))]))))]))])))]))]]])]]]))]]))))])))]))))])])])])]]]])])))])])))))]]]]]))]]])]]])]]]))])))]]))]))]]]]]]))])]]))]))])))])]]))]))))))))]])]])]))]]))))]]]])))]]))))))])])))]]]])))))])]]]]]]))])])]]))])])]])])))))))])]]]])))])]]])])])]])]))))]]]))]]]])))]]))))]))))]))]]]))])])]]])))]]))]])]]]]]]))])]])]))]])))]))))))))]))]])))))))))]]]]]]])])]]])))])])]])]]])]))))))))]]))])]])])]]])])))))]]))]]))])]]])]])))]])])]])))])]])]]])]))]]])])]])]])])]]]]))))])))])]]])]))]]]))]]]]]]]))))))])]]])]])))]]]]])])]]]])]])])])]))]]])]]])]])))))])))]))]))]]])]))))])])]]]]])))]))]]))]))])])]])))])]]))]))])))]))]))]))))))))])]]]])])]])]]))]]))]]]])]]]])])))))])))]]]])])])]]])]]))]]))]]))]]]])))])])]]]))))])]]]))]])]]))))]]))])))]))]))])]]))))))])))])))]))))])]]])]))]])))]))))]]]))]))]]])])])]])])]))))))]))]))]]]])))))]]])))]]]))])]]))]])])))]]])])])])]]]))]))]])])]])])]]]]]))]))]])]))]])]))]))])))))))))))]]]))]))])])]))])))]])))])])))]]))]]]]])))])])])]])])])]]]]))])]))))]]])]))])))))])]))])])]]]))]))))))])]])])))])])]]))]])]))))])))]]]))))))]])))))))))]))])])]]]))]]))]]))]]]]])]))])])]]]))])])]]]))]))))]))]])]))))))]))])]])]]])))])])]]))))]]])])])])]]]])]]]]])))])))))))]])]]]]))])))]]])]])))]]]])]]]))]]]))]]])])])]))]]))))]]])]]]]])]])]))])])]]])]))))])]]]]))]]])))]])))])))]))])))]]]]))]]]]))))]]))))]))]]])]))))]]])))])))]))))])))])]]]))])])]))]))))]]]]]]]]]])]]]]]))]))]))))))))]]]])])]]))])]]]]]]]]]]]])))]))))))))])]]))]))]])])])])]]]]])]]]))))))]]]))])))]]]))]]]]))]]]]]])]]))]])])]]]]]))))]))))))]])]]])]]]])]]]]]))]])]]))])))]]])])]])])])]))]]]))]))]]]]]))]])]]])])]])]]])))]))))]))]])])]])))]]])]))]])))])))])]])])])])))))])])]]))))]]])))])]]])]]]]]]])])]))]))]))))]))])])]))]]]]]])))])])]])])]]])]]]]])))]]]]))]]]])]]))]]])])])])])]))])])))])])))]]]]))))))]]]])))]])))]))]]]]])]]]])))))])]))]]]]]]))))))]))))])))))]))))])]))]])))))])))))])))]])]])]])])))]]]))]]))))])]]]]])]]))])))])))]))]]))])]]]))]])]))]]])])]])]])))))]))))]))])]])]]]))]])))]]]))]])]))])]])))]]))]])]))])]))])])])]])])]])]]])]]])])]]))]]]]])))]]]))))]]]))]]])]]]])]]]))]))]]]]))))]])))))))]])]]]))))]]]])]]]])])]])]])))))])))])))])]])]]]]]))))))))))]])))]]]]]]]]]]])]))))))])]]))]))))]]))])])]))])]))))]))])]]])])]]])]]]))])]]]))]))))]])]]))])])))])])))))))]]]))])])]))))])]))]]])])])))])))))))))))))])])]])]))]]]]]]])]))])])])))))))])])))])]]]]]])])]])]))])]]]])]])]])]]])]))]]]])))]])])]))]))]]]]]]]))]])]]))])]])])]]))]]]])))]]))])]]]))]])]])))])])))])))))))))])])]))])])]))])))]])]))))])]))])])]])])]]]))]])]])))]]])]])])]]]))))))]])]))]]]))]]])]])]))))]])]]]]]]))))]])]))]))]))]])]))))])))]))))]]]]))]))))]]))])))))]]]])))]]))]))])]]))]])))])))))))))]]))]]]])]))]))]]))]])))]))))]])])]]]])))]]])]]])]])]])))))]]])]]))])))))])]]))]])]]])))))]]))]]))]])]])]])]))])])))))]]]]]))])])])]]]])]]]]])]))]))]]]]))]]]])]]]]]])]))]])])]))))))]]))]])])])))]])]))]]])]]])])])]))]])))))])))]]]))])])]))])]])]))]])))])])])]])))]]))]]])])]])]]]]))])]))]])]))]]]]]))))]])))))]]]]])))]]]]]))]))]])]))])]))]])]]))]]))]]))))])]))])])]]])]))]))))]]]))]]])])])]])]))]]]]])]]))]]])])]]]])]]))])]))]]]]])]])]])]]])))]]])]]))]])])])))))])))]]))]))]])]))]])]])]]]]]]))))])]]]])]))]))]])])]]))])]]])]))]]]))))))))])])]])]])]]])]])])]]]]])])))]]])]]])]))]]]]])])))]))]]])]]]))]]])]]]]]]))))]))]])]]]]])]]]])]))))))]]])))]))]))]]])]]]))]])))]])))]]))])]]])]]))])))))))])]])]))])))))))])))]]]]))]))))))]])))]]]))])]])]]))]]]))])]))])))])]])]))]]))]]]]])))])]]]])]]]]])]])))]]])))]])]))]])])])))])])]]])])]]]]))])))]]]]])))]]])))])]]))))]]])]]]])])))]))]])))])))]]]))])))])])])])]))])]])))]]])])))])]])]]]]]]])))])]]))])])))]]]])]])])]))]]]]))))])))]))])])]]])]]))]))]]]))))]]]]]])]])]]))))]]]]]))]]]])]))))))])])]]))]]])]]])]))))])))]]))]]))))])))))))))]))]]])]]]]])]]))]]]])]]))])))]]])]))]))))]]]))]))))))])]]])])))]]])))]]])]]))]]]]])]]))]]]))]]))]])])])])))])])])])]])))]))))))]])))]))))))])))]])))]]]])]]]))]))]]))])))]]])]))]]]])])])]))])])]))])])]))]]])))])])))))])))])]))]])]]))]]]))]))))])])]]]]]))))]]])))])]])])])])]])]]]])])))]]))])))))]]]))]])])]]]))]])])]]]]))]]]))])))))))]))]]))])))))]))])]))])]]))]))]]]))))]])))])])])])))])]]]]]))]))])]])]])]])]]]]]]])))))])])]]))])))]])]]]]]))]]])))])]]]]])]])]])))]])))])]])])))])]))])])]]))]]))))]]]))])]]])))]])))])]]])]]]])]))))]])]]]))))])]]]]]]]])])])))])]])))]]]]])]])]))]]))))])]))]])))]]))])]]]]]))]])]]])]]))]])]]]])))))]))])]])]]]])])])]])])))])]))))])])]]]))))]))])))]]])]])])]])]]])]))]])]]]]]))])])))]))]])]])])])])]]])]])]])])]))]))])]])]))]))]))])])]])]))))])])])]]))])))]])]]))]]]))))))])])]]]]))))])))]])]))]]))]]]))]))])]]))))])])]])]])])])]]))]])]])))]]]]]))])))))))]])]]]]]])))]]))))]]))]]])]]))]))]))])]]))))]]))))))]]]))]))))]]))]])]]])))))])))]])))]])])))]]]]]]]]))]]))]]]))]))]))))]))))])])))))]])]]])]]]]]]])]]))]))])]])]]])))))))])]])])])]])])))]]]])))]]])])]])])))]]))]])]))]]))]]]]))]))]]]]]]]))]))]]])])]]]])]])]])]]))]]]])]])))])])])]]]]])]])]]]])])]])))))))]])])))]))]))]))]]]]]]])]))]))))]]])]]]]]])]]])]])]))]]]]]]])])])))])])]))])])]])]]]]]]]]])]]]])]))))]]])])))]]]])]])))]])]))]))))))]))))])]]]))]))))])))))]]]])]]]]]]])]])]))])))]])])]])]]])]])]]))))]])])))))]])]])]]])]))))))]]]]))]))])])]]))]]))]])])]]))]]))])))))]))]))])])]])]]])))]]))))]])]]]]]]])]]))]]]])])]])))]))]]])]])]]]))]]]]])]])])))]]])]))]])]))]])])])))])))])]))]]])))]])])]))))]))))]])])])))))))]])]])]])]])))]]]]])]))]])])]]))]])))]]]])))]]])]))]]])]])]))]))]))]]]))]))))))]]))]]]]))])))])))))]])])])))])]))]))))])]]]]]])]]])])])))])))]]])])))]))))])]])]])))]))]]]])]))))))]]]]])])))]]])))])))]]))]))]))]]])))]]]))]]))]]])])]]]])]))]]]))])])]))))]])]]]])])))))])])]])]))])))])]])]]]))])])])]))]]))])]))]]]])))])))))))]])]])])])])]]]))]])))]))])])]]])))]]]]])]))]]]]]])]])])])))]))]]]])])]])]]))))])]))]]])]))])]])))]))]])))])])])])]])])))]]])]])]]]])])]]))])))))]]]]])]]])]])]])]))]]))]))]]]))])]]]]])]]))]]]]))))])])])])]))]]]]))))))]))]]]))))))]))])))]]]]]]))]]))])]]])]]))]])))])])]]]])))]]])])))]])))))]]])]))]]])])])]]))])]])]]])]]))]])]))]]]))])]]])]))]]))]])]])))]))])])]))])))])]])])]]]))]])]]]))))))])]]])))]))))]]]))))])))]]]])]])])))])]])))])]]]]]])]]]]]]]]]]])))))])))]]])])))]]]]])])))])]))])])])]))]]]))]]])]))))])))])))]]])]])]]])))])])])])]]]))]))))]])))])))))]))]]])])]]]]]]))))]])]]]]]]])]]))]]]]))]))]))])]])]))])])))]])]]]])])]]]))]))]]])]]]]])]))))))]]]]]]]]])]])]))]]])]]))])])])))]])]])))))))))))]]]]]]]]))]]]])])))]])]]]])]])]]]]])])]))])))]]]))]]])))]]]])]])]])]]])]]))))]])]]))])])))]]))]]))]]]])]]]))]))])]))]])]))])))])]))])]]]])))))))))])]]]))]))]])])]])]))]]))]))])])))]]])))])))])))))))]]]]))])]]]]))]]])]))])]]))])]))])]])])))]))))])]]]))]]]]]]]]]]])]])])]))]]))]]]))]])]]]))]]))])]]]]]]]]))]]]))]))]]]])]]))]])]))])))])]))])]))]]]]]]))]]])))])))]]))]]))]))))])))]]]])))])])])]])])))]]]])]))]]])))]))])))])))]]]])]])]])])]])])])]]])])])))]))]]]))]])]])]))])])]]]])]))]]]])]]))])])]]])])]]]])]]]))))])]))])))]]]]))))])))]]])))]))]]]])]]]]]))))))]]))]]]]]])])]))]))]))]]]]]))))])]))])))))])))]]]]])))))]))))))])]])))]]]])]])]])))]))])))))))])]])])]]))))]]])])))]))))]]]]]]]))))]]]]]]]]))]])])]]])]))]))]))])])]]))))]]]])))))))))]]]]]]]])))]])])])))))]])))]]]]])))]]])]))]])))]))]])))])))]]]))))]])]])]))))))])])])))])])]]]))])]]))))]]]))]]))])])]]])))]))]))]])]])]))]]]))]))]]]])]])]])))])]]))])])]]))]])))])))]])]))]])])])]))])])]])))]))))])]))]])]]])))]))]]))]])]])]]])])]))]])])])]]]]]]])))])))]]]])]]])))])]))])]]]]])]))]]]])])))]])])]])])]]]))]]]))]))])))])]))]))))])]))])]])))]]))])]])])))))))])]]]))]])]))]]))]))]])]]]]]])]))))))))))])]]))]]))))))]])]]]))))])])])])]])))]]]])]])))))]))])))]]]])]]))]])))]]]]]])]))])))])))))]]]))])])))]])]]]])]))))))))])])])])]])]]])]))))])]]]]])])]]]]]))]))))])]]))])]))))])]])]])))]]]]]))])])))]))))]]))))])])])))))]]]])]]])))])))]]))))]]]]])))])]])])))))])]]))])]]])])])])))]]])]])]]])))]))]])))])]))])])])]]])]]))))))))]])]))])])]]])]))])])])]]))]])])]))]]])]]]]])])])]))]]]]]]])]]]))]]])])]]]])]]])]])]]]]])]]])))))]]))])))])))))))))]])))))))])]]])))]]])]))])]]))]])]])]]]))]]]])]]]])))))])]]]])))]]]]])])]])))])]]]))]])]))])]))))]))])]])]]]]])]]]))])]))]])]]]]]]])]])]]]]]])]]])]))]])]]))]])]))])])])])]])]])]))])]]]])]]]])]])])))]])))]]]])]]]]))]]]))))))]))]]])))))))]]]))]]]])))))]]))]])]])))))])]])]]]]])]))))))]]])]]))]])]]))]])]))]]]]]])])])))]))]))]]]]]]]))]])))))])]))]])]])]]])])))))))])]]]])))]]]])])]]]))))]])]]))])]]])])]]]))])]])]]]))]))]])]]]])))]]]]])]]]])])]]]))])]]])))))))])))))]))))))]]])]]))]])])])))])))])]]])]]])])]])]]]]]))])))])]])))]]])]])))))]]])))))))))))])])]))])]]))])))))]]])))]]]])))]])]])]))])))]))]])])])))])])]))))]]])]))])))))]])])))]]))]))]]))]]])))])]]]]))]]]]])))]))))]])]))]]))]))))]])]))))])]))))]]])])])])]]]))])))]])]]]))))))))))]))])])))])])])]])))])]]])])])]])]])])]]))]))]]])]]))]])])))))]]])])]))]))])]]])]]))]])])))])]))]]])]]]]]]]])]]])])]]]]])))]]]))]))]]]])))]]))]]))])]])]])]]])]]]]))]]))])]]])]])])])]))])]]))])]]]]]]])))]]])]]])]])]))]]))]]]]]]])))))]))])]]))])]]))]))]]]])]]]]])])))))))]))]))]])]])]))))]]))]))])]]]))]]])]))]))))]]]])]]]]))]]]]]]))])]]]))]]]]]))]]])]))])]])))]))))]))]]])))))]])])]])])])])))]])))]]))]))))]])))))]]]]])]]]])]]])])])]]]])]]])])])]]))))]])]])])]]]]))])]]))]])]]]))])])))))))]]]]]])])]])))])]])))))]])])]]]))]))]))]])]))]]]]]]])]]]])))))))))])])]]]])])]))]])]]))]])))]))]])]]]]]])))]])))]))]]))]))]))]]])))))))]]]])]]]))])))])])))])]]])]))]])))])))])]))])])])]))]])]]))]])]))]])))])]])))]]])]]])))]]])))])])]))]]]]]]]])])]]]])])]))]]]])])])))]])))))))]))]))])]])])])))]]))]))])]))]]]]])]]]]])))]]]]])))))]]]]])]]])))])))]]]))]]]]]))))]))])]]))))]]]]]]))))]))))]])]]))))])])])))])]))]]])])))]))]))]])])))]])]))))])]))]]]]])])])]]])]])])])]]])))])]]]])])]])]]]])))])))]))]))]]]))]])])]))]])]])))])])])))]]])]])))])]]]]]])]]]]])])]]])]]]])])]]]]])]))])])))])])))]])))]))))]]])))]]))]])))]]]))]]]])]))]]])]]]))]])]))))]]]])))))])]]]]]))))]]))))))])]])))]]]))]])]))])]]))))]])]])])]))])])])])))]]))))]]])]])]))))))])))]])]])])))]])])))])]])]])))]))])))))])])))]]])])]]))))]])])]]))])]]]]]])))))]]))])))])))))))]))])))]]])))])]))]]])])])))]]]])])])))])]]]])])]]))]])))]])])]]]))]]]))]]])]]))))]]]]]))])]]]]])))]]]]])]])])]]]])])))])))]]]])])]]])]]])))]))))])))]]]]))]])]]]]]]])]]))))))])]]]]]]]])]]]]])]]])]))]]])]))))]])))]))]])]])]]))]))))]]]]])]]]))])]]])]))])]))))]))))])])]])))])))]))]))))]]]])]))))))]]]]))])])]]]))]])]]])]))])]))]])))]))])))]]])]])]]])))))]))))]]]])]])]]]]))])]))])]))))))]]))]])]]))]]])])]))))]])])]))])))]]))]))]]]]])])])]]]]])]]))))])))]))])]]]])]])]]))))])))))]]]])]]])]]]]))])))))]]]])]]]]]])])))]]]]))])])])]])])))))))])])])])]])])))))))))))]))))])]]]))]))))])]])]))]])]])))))]]))))))))]]]])))])))])]])])]])]])]))])])]))))]])])]])]])]])])]])])]])])]))]])]]])])))))))]]))]]))])))]]]]))))]]]]]])]])])])))))]])))]])]]]))]]]]])))]))))))]]]))]])]))))))])]]]]))])])]))])]]])))]))]])]])]]]])))]))))]]))]))]])]]]]]]]]))]]]]])])]))])]))]]]]]])]))])))))]]]])]]))))]))]]]])]]))]])]])]))])])]))))]]]]]]]]]]])]]]]]))]])]))]]))]]])])])]))))]])))]]]]]]])))]))]])))])])]]])))]]))])))]))])]]]]]]]]))))]])))))]])]])))]])))])]])]))])])]]])))])]]]]]])])]]]])]))))])]]]))))))]]])]])]))))]))])))])]))]]))])]])])])]]]]]))]]))])])]]])]]))]))]]])]]))))])]]]))])))))]])])]]]])))]])))])]])])))]])))))]))]]])])]]])))]])))]]])))]])]])])])]]]])]])))]]])))])])]]])]])))))])])))))))))]]])]]]]]))]]))]]]])])))]))])])])]))])])))]]]]]])))]]))]])]]]])]]))]]]])]]])]]))))]]]]]]])]]))]]))]])])]]]])]))))])))]]))])))])))]])))))]]]]))])))))))])]]))]])))))])])])])]]])])]))))))])])]))))]])]))]])])))])))))))]])]]])]])])]])))]]))]))])]]])]]]]]))]]]])]))))]))]])]]])])])))]]]))])])))))]]]))]]]]])])])]))]))])])]))])))]))]]])]])))]]]]])]]])])])]))]))]]))))])))]]]])])]]])))]]]]])))))]]])]))))]]))])]]])))])]]]]]])))))]])]])]])]]))]])]))))]))]]]]))])])]]]))))])]]))))))))))))]]))]]))]])]])]]])]]))))]))))]))])]]])])]))]])))))]])])))])]])]))))]])]]]])]))))]])]]]]))))])]]]])))]])])))]]]]]))]])]))))]])])))]]])]]))])]]))])]]]))))))]]])))])])]]]))))]))]])))])))])]]))])])))]]))]]])))])]]]]])))]]])]))]]]))]]))]]])])))))]]])))]))))]])]])]])])))])]])]])))]))])])])]])])]))])]]))]]))]]))))))]]]]])])]]]]])))]]])))]])])])]]])]])])))])]))]]))))]))))]])))]]))]]])))]]])]]]]]))))]]])]])]])))])]]]]))])))]])))]))])]]]])]]))]))))))]])])]]])]]))]])))]]]))))]]))])])])]]]))]]]))])))]]))])))]])))]]]])]]])])]])]])])]))]]))])]))))))))]]))))]]))]])]])))])])]]))]]))])])]))])]])]]])))]]]])])]))]])]])]]])]])]]]]]]]])]])])]))]]])]))]))]]]]]]))]))))]])))]]]])]))]])]))])]]])]]])]]]))]])]]]))))])])]))]))]))]))]]]))]]]])])])]]])]]]))]]))))]]]])]]))))]]]])]]]]]]]))]]]])))]))))))))])))])])])]]])]]]])])]]]]]]])])])])])]])]]]])])])))]))))])]]))]]))])])))))]]))]]]))))])]])])))]]))))]]]])]]]])]))]])))))]))])]])]]])]]]])))]))])])]])]))]))))]))]]])]]]]])]]))])]))])]])]])]))])]]])]))]]]]]])]])]]]])]]))]])]))]]]])]]]]]]])]]))]]]])]])])])]]))]]])))]])))])])])))]]))])]]))]]))))))))])]]]]])]]])])))))]])))]]))))]]]))))))))]))]))]])])]))]])]]]])])]]])]])))))])])))])])))))]))]]))])]))]]])))]]])])]]])]))))))))]]]]])])])]))]])))])]]])])])))))))]]]]]))))])]]]])]))]]]]]])])))]]]]))])]]]])])))]])))))]))))]])]]])]])]))]])))]])]))))))])]])])))]]))]]))])]])))))]])]]]])))])]]])))]))]])]))]])))]])])]])]]))]])))])))]]]]]]))])])]])]])))))))))]]])))))]]]])]]]])]]]))])]]])]])]))]])]]]]]])]]])))]))])])]))]]])])]]]))]])))])))))]))]]])]])]]))]])))]))])]]])]]]]))]])]]))])))))]]))))]]]]))]))]]])))])))])]])]]))]]]))])]]])]]]])])])]]])])])))]))])])]])])]]]])])])))]])]))))))))))]]]]]]]))]))])))]))]]))))))))]])])))))]])])])]]))]))]))]]]]])))]))]])]))))])])]])]]])]))]])))]])]])]]]])])]]]]))]))))])])]))])])])))]])]))))]])])))))]])])]]]]])]])]]]]))]]]])]))])]))]]])]])])]]))])]))]]]])]))])]))]])]))])])))]]))]]]]]))])]]]]))]))))))]])))))))])])]]]))]]])]])))])]])])]))])])))]])]))]]]])]]])])]]))))]])]])])]))]]]])]]]])])]])]]]]]])]]))]))))]]])]]]))))))))]))])])]]]]]]]]))]))))]])]])]]))]]]]]))]])]]))]))])))])]]])]]]])])))]]]))])])))))])]]]]]])]))))]))))]]]]]]])]])])]])]])]])])))]))))])])]]])))]])]))]]])))])]]))]]]])]]]]))))]]]]))))]]])))]])]]))))]))]]]]))]])]]))]]))))]))]]])]))]))]]]]])])]]]]]])]]))]))])))]]]]]))]])])))))]]])]])])])]])]])]))))]))])]])]])]]))]])]]]))])])]])))]]))]])]]]))])])]))])]])]])]]]])))]]]]])))])))))]]]]]])]]]))]])])))])])]])]])])))]])]])]))))]))))])])]]))])])]]))))))]))])])]]])]])]]])])))])]]))))])]])]]))]])]])))])]]])]]]]))]))]])])))])]))]))))]])]))])]))])))]]))]]]]])]))]))])]))]))])))])]]]))])])]])))))]]]]])]))]])]))]]))))])]]]))))))])]])))]])))))]]))]]))))]])])]]]]]]]]]]]))]]))))])]])))]])]])]])]])])))))))))))]))]])]]]])]))))]))))))])]])]]]]])))]])))]])])]]]]]])])])]])]))])))))])]))])]]))]))])])])]]])]])])])]]))]]))))))]]]]))))]]))]])])))]])]]])])]]]))]])]])))])))]]]]]])))))]))])]]))))))]))])))]])])))]))]])])])]))))])]]]]]]])]]]]]]]]))]]]])]))]]]]]]])])]]])))]))))])]]))]]))]))]]))]])])]])]))))])]]))])))])]]])]])])]])])))))))])]])))])]))]))]]))]))))])])]))]]])))]]])]]))]]))]]])]])])]]]]]]))))))]]]]]))))))))])]]])])]]]])]))]])))])))]]])))]])]])]]]]))))))]]]]]]]])])]))]]]]]]])]))]]]))))))))])])])))])])]))))])])]))])])]]]])))]]]]))]])])])]]]])]))))]]))]]])))))]])))])])))])]]))]])]]])))])]]))]))]])]))])]]])]]]]]]]])]))]]]]]]])])]]]]])))])])])])])]))]]]]]])])])]))]))]]]])]]))))]])]))]))))))]])]))]]]]]]])]]]]]))]))))]]]]])])])]))]))]])])]))))]]))))])]]]])])]])])]]])])))))])]]]]])])))]))]]])])]]))]]]])])))])]]))))))))])])))]])]])])])])]])]])))]])))])]])))]))))])])]]])]]])))]))])])])])]]]]))]]]])]))])])))]))]]))]))]])))]]]]])]]])]))))]]]]])]]])))]]])))))]]]])])])]]]]]])))])]]))]))]]]))]))))]))))))])))))])])])))))))]))]))])])))]))])))]]]])]])]]]])))])]]])]]])]))]])]])))]])]))])]))]]]]))]])])]))])]]]))]]]]]]]]))])))])])]]))]]))]))])]]])))])])))])])]])]])]])])))]]]))]]]]]])]]])]]))]]])))))))))])))]]]]]]))))]]))))))]])))])]))]]))]]])]])]]]))))]))]))])]))]])]]]]))]]]])])])]]])))]]]])))]))]])]))))))])]]]]]]]])])])))]))]]]]]]))])]]]]]]]]]])))]])]))]))]]]]]]]))]))))]))))))]))])]]))))]]))]))])]]))]))]])]]]])])]))))))]]])]])))]])))]])))]]]))))])]]])])]]))]])))])]]))])]])))]])]])]])]])]]])]]]]])]])])))]]]]]]))))]]))]])])])]]]]]))])))]]]]]))))))]]])))))]]))]))))]])]]])])))]))])])]]]))]])]))]]))))]]])])]])))]]]])))]))))])))))]]])]))))))))))])]]]))]]])]])]])]])))]))]]]])]])]))])))])])]))))]]])))))]]]))))))]]]))])))]]]])]))]))))]]]))]]]]]]]]]))))]]]))]]])]]]]])]]])]))])]]]])])])]))])])))])]]])]))))]])]]]])])))))))])]))]])))]))]]]]]]]]]])))))))])]])]]]])]]))]]]]])])]]))))])]]])))]])]]]))])])]]]))])))]]))))]]])))))])]))]]]]))]])))]])]))])))))])]]]))))))))]])])]]]]))]]]])]])]]]])]])]]]]]])])]))])]])]])])]))]]])]]]])]])]]]]])]]))]]]))]))]))])]])))])]))]))]]]]))))])]])]])))])))))]]]])]))])]]])]]]))])]))]]]]))]])])))]]]])))])]))))]]])))))]]))))]]]]])])]]]]])))]]]])])]]]])]]]]]])]]])))]]]]]])]]])]]]))]])))]]]])]]])]]])))]])]])]))]]])]])))]]]))])))])])])))]])])]))))]])]]))]))))))]))])]))]]])]))])])]))))))))]]]]]])]])])]]])]])]))]])]]])))]]))]]))]]]])]]]])])))])]))])]])])]]])]))]]))])]))))))])))]])))]]])])])))]])])])])])]]]]]]]])])]])]]])])))]]]))]])))]))])]]]]]))]]])])])])])]))))]]]]))])))]]))]])])]]))])))]))])]))]))])))]]))]]]]))])])))]))])])))]))])])])])))))]]))])]]))))))))])])]))]))])])]]])])]]))))])])]]]))]]))])))])]]]]])]]]]))])])])])))]]]]]]]]]))]))]]]]))))])))))])])))]]]])]))]])))])))])]]))])]]))]]]])]])))]])))]])]])]])]))]))])))])]]]])])))))]]))))]]]])]))])]]]])])])]]]]))])])])]))]]]]]))))]))]]]]])))))]))]])]])))]])]]]]]))]]]))]])]]))))]]])))])]]])]]))))]]))])]))]]]))]]]])]])])])]]))]]]])))))]])]))])]])])))]]]))])]]))]])])])])]])])))]]])))]]))]]))]]))])]]]]])]]]])])))]))]))]]]]]])])))))]]]]))]])]])]])))]])])])])]]))]])]]])]])]]]))]])]]]]])]]))])))))]]]]))]))]])]]]))]])])))))])])])]])))])]))]]])]]]]))])]])]))))]]))]]]]]]]]])]])]])]))]]]))]])]]))]))]]))))]]]]]])))]]]])]]))]])]]])])]]]]))]])))))])]]]]]))]])]]])]]]))]]))]))]))))]]]]])]))))]))])]]))]]))])))])]))))]))]]]))]))]]]]])]]]])]])])]))]]]]]])))]])]]]]))))]))]])])]]]))))]]])))))])))))))]])]])))))])))])]]]]])])]])]]))))])])])))))))])))])]))])]]))))]))]]))])]]])))]]])]]]))]])))])]))))])]]))))])]])))]])))]]]]]))]])]))]]]]])])])]])]]]))]))]]))]]]))])])]))))))))))])])]]])]])])))])))]]]]))]]]))]])]]))]]))])))])])]])])))))])])]))])]]]]]))]))]]))])]])]]))))))]]]]]])])])]])]]))]))])])])]]))])]))]))]]]]]])])])]])]])]])]]]]])])]]]]]))]))))]]))]]])]]))]])]))))]))]])]))])])])]]]]]))])]])]])]]])]]]))]])])]]))]])]))]]))]))]]))]]])]])))])]))]))))])]]]]]])]]]]]))))])])]]]])]))])])]))))]]))))]]))])]]))))]])))]))]))]))))]]))))))]])]]]))])])))))))])]])]]))]))))]))]])]))]]]))))))]])))])))]])]))))]))))]]))])])])])))])]])]))]))))])]]]]]]]]])]))]))]]]))))]))])]]])])]]]]])))))))]]]]]])]]]]])]])))]]))])]))]))]])]]]))))])))]]]])])]]]]))]]))])]))]]]]]]])]]])]))))]]])]]]))])]]))])]])]]]]])]])))]))))]))]]]]))))]]]))]]])))]])]]))))])]]]))])]]]])))]]))))]]]))]]))))]])))]]))]]))])])]]]])]))]]]))])))])))]]))))))]]))]]))]]))))))]])])))))))]]])])))))]))]]]]]])))]]))))]])])))))])]]]])]))]]))]])])]]))]])])]]]])])]))])))]]]))))]))))]))]]))]])]]])]])]]]]]]]])]])]))])]])])))]]]])]])])])])))))))])))]))]]))]]]))])]))])])]]]))])]))]])))]))]))]])]])))]]))]))])]]]]]])))])]]))]))))]]))]])))]])]]]])]))))))]))))]]))))]))]))]])))]]])]))]])]])])]]]))))]])]])]]])]]]]])]])])]]))]]])]]])]))])]])]))])])]]])))])]]]]]]))))]])])])])]))))])]])]]]))]]]]]])])]])))]]))]))]]]]]))]))]))]]]))]))]))))]))]])]]]))]])])))]]]])]])]])]]]]])]]])])]]))]]))])])))))]]]))))]]))))])]])])])])))]])))]))))))])]]]]))])])]]]))]])))]]]]]])]]]))))])])))]]]])]]]])))]])])]]]]]))))))]]]])])]])))]])])])))])))))]))))])]]]]]]])))]])])])]]]))]]]))])]])]]]]))]]))]))]]])])]])]])]))]))))))))]))]]))])]]]])]))))))]]))]]])))]]]))]))))]])))]]]))])])]]]]]]])))]))])]]]]))]]])])]]])]])])]]]]]))]]))]]]]])]]]])])))]]))]]])))])]]))]])))]))]])])))))])]]])]))))])]]]]]]])])))]]])))])))]))))]))]]))]]]])]))]]]]])]]))])])))))]]])]]]]))]]])]]])]]]])))])]]]])))]]]]]]))]))]]))]]])])))])))))]]))))]))])]]]))]))))))])]))]]))]]]))]))]))]]]))])]])))]])]])]]]))])))]]]]])))]]]])))]])))]))]))])]))]]])]]]]]]]]])))]]]])]]])))]))])]))]))]]))]]))]])]]]]]]]]]]]])))))))))]])]))))])))]))))))))))))])))]]]])))]]]]]]])]))))))]))))))]])]))])])])]])]]])]]]])]]])))]]]]]]]]]))])))]]])]])]]))]))]))]]))]))])]]])]]]))])]]])]]])]]))])])])]]]]])])))]]))])]]])])]))]]]))])]]])])]))]])]]]]]))]])]]])]]])]))))])]))]]))])))]]))))]))]]))]))]))]))]))]]]))])))]])]]])))])]))))]])]]]))]]])]))]]))])))]]]]]))]])])])])]]]]])))))]]]])))]]]))))]])]]]])))]))])]])]]]))])]]]])))]]))])))]])]]]]))))]]])]]]]]]))]]])]]]))]]))]))]])])]])]))]]]]]))]]]))])))]))]]]]]))]]))))]))])]))))))))))]])]]))])]])]))]]))]))]]))]]])))])))])])]))]))]])]]))]])]]])]))]]))))]])]))]])])])]]])]]]]])))]]))])))]]))])])])]])]])]]])))]]]]))]))])]]))))))))]])]]])))]))]]]]])])]])])]]]))])]])))])]]]))])))]]]]]])]])]]))]))))])])]))]]])])]]]]]]))))))))]]])]])))])]))]]))]]]])))]])]]))))))))))]]))])]])])]]]))]]]])])])])))]])]))]))]]]]]]))]]])))))]])]]))]))]]])]])]])))])]]]]])]]]])]]])])]])]]]]])))]))]))])))]])]))]])))))]))]])]]]))])))])])]])])]]])))))]))])))])))))]]))))]])]]]]))])))])))))]]])])]]]]]]]]]))])])])]])])])))))])]])])]])]]]])])])))))]])]])])))])]])]]))))])]])]]]))))]]]]))]])]]])]]))]])]])])])])))))]])])))]))))]))]]]]))))]))])]))]))]))]])]])))])])]])))))))])])]))))])])]]])))))]])]]]))]))]]])]))])]))]]]]))]))))]]]])))]])]))])]]))])])))]]]))])])]]))]]]]))))])]]]))))))))]]))])]])))])))))))))))]]]]]]]]])))))))))]))))))]]))]])]]])))]])]]))]]]])]]])])]]))]))]))]]]])])])))))))]]])]])]]))))))]]))])]))]]))))))]]]]]])]))]])]))]]]]]])))))])))]]]))]]]))])))]]])))))])])]]))]]])])])]])]]))]]]]]))])))))])])))]]))))]])])]])])]))])]]]]])]))]]]])]]])]))]]))]])]))])))]]]]]]])])]]))]))]]]]]))]))]]])]]]]])]])))]))))))))])]))]))))]]]))]])]]]]]])]))]])]]])])))]))])]])])])])]]]])]]])]])])]])))]]]]))]])])])]]))]])]]]]])))]))]]]])])]))))]))]]]]])]]]])]]]]])])])]]]))])))))))]]))]]))))))))]))]]]))]]]])))]]])]]])]))))]]))])]]])]])])]]))]]]])))]))))]))])]])]])]])))))])]))))]]]]])])]])))]]]]])))])]])]]]]]])]))])])]]]]]])]))))]])]]])]]])))]])))]]))]))))]]])))))]]]))]))]])))))]]))]))])]))]])]))])])]]])))]))))]]))]]))]]])))))))))]]]])])]])]])))))]]])]]))]]))))))])))]))))))))))]]])]])]]])]))]]))])))]]]])])])]))])]])]))]]])))]])))))]]))])]]]])]])))]]])])])]]]))])))))]]]]])))))]]]]]]))]]]]]))]])]])]))))))])))))]]]]))))])])]]])]]])))]])])))])]]]])))])])])])]))]]]]))])))])))]))]))))])]]))]])]]]])]]]]]))]]])]]]])))]]]]])])])]]))]))]]]))))]]]]])]]))]))])])]]))))))]]]])])]]]))]]])])]]]))]]])]))]))))]]))]])]])))]])]))))]])]]])])])])])))]))])))]]))))]))]]))]]])]])]]))])))))])])]))]))))]))])))]]))))]])]))]]]]]))])))])))]])])])]))]]])]]))]]))))]]]])])]]))])]))])])))]])]]]]]]]))])])])]]]])]))))]]]])))])]]]))]]))))]]]]]]]))])]])]]]]])]]]]]])])])])]))))])))])]))])]))]))))]])])]]]]]]])])])))]]]])))])])])])]]]))))]]])]]))])]]])]))))]))]))]]]])))]]]]))]]])]))])))])]]]]]])]))))]])))]]])]])]]]))])])))]]])])])])])))]])]]))))]]]]]]]))]]])))])]))])])]]))]))]])))]])]]))]]])]])])]])]])]]]])]))])]]])))])]))]]]])])]]])]]))]])]])))]))))]]))))))]])])])])])]]))))]])]]))]]]]])]]))]]]))]]]]]]))]])]]])))]]])]))]])))]))]))])]))]])))]))]]]))]]]]]]])))))]])))]]]))])))]))]]]]))]]]))]]))]]])]])]]]]))))])]))]]]]])])]]]))]]])))))])))]])]]]]]]]]))))))]]]])]))))])]]]]))))))]]])])))]])]])])])]]]]]]])]))]))]))])]))]])])))])]]]])]]]]])]))])])])]]]))]])])])))))))])]]])])]])]]))])])))))])))]]])]]]]])))]))]]]])]]]])))))]]]]]])]]))]]))]]))]))))]])]]))]))]]]])])])])])])))]))]]))]])))])]]])))))]])])]]])))])])]]]])))]]))]]]]]]]))]]]]))]])]]]]))))]]]])])]]]]]])]])])]])))]]]])])])])]]))]]))])]])))))]]])))]))]]]]]])]])))]])))]])))]]]]])]]])]])]])]])))]]]]]))]))]]))])))]]]])]]])))]]))]])))]))))))]]]))))])])]])]]]]]))])])))))))])))])]])]]]])]])))])])]])))]]]]]])])]]]]]))]]]]))))]]]]])]]])]))]])]]]]])])])])]])))))])))])))]]])))])]]]]))])))]))]]]]))))]]]))])))))])))]]])])]])))]]))]]])])])])]]]]]))])]]])])]]])]])]))])]]])))])]))]]]))]])))))])))]]])]])])])])]]]]]))])]]))])])))))]]]]]]])))))]])])))]]])]))]))]]]]]]]])])]))))])])]]]))])])]])])))])]]]]))))])])])]))]]))]])))])]])]])))]])]])]]])])))]]])]]))])])))]])]])]]]])]))])]])])]))]]]))])]))))))]]))))])))]]])]]]))])))))))]))]]))])]]]))])))]]]]])])))))])]]]))])))]]))]))]]]]))))]))]])]]]]]]))]))]))])]])]))))]]]]]])]))]])]])]]]))]]]]])])])])])]]]))])])]))]]])])]])]]]]]])]]]]]))]])]]]]))))))))]))])]])]])))))]))]])]))])]])))])]))])]]))))]])]]]]]]))])))])]]]]))]]]]])])]])]))]]))]]]]]]])]])])))]])]])]]])))]]]]]])))))]])])))])))]]]))]]]))])))])])]]])]))]]]))))]))]]])])))])]))]]]))])])]))))])])]]))]])]))]]])]]))]])]])])]))]]])]))))]]]))])]]])]])]])))))]]])]]]])))))))]))]]]])]]])])]]))])))]]]])]))]])]]])]])]])])])]]))])]))])]))])]]]])))))]]])])]]]])))]])))])]))]])])]]]]]]])]])]]])))])))])]]])]]))]]]])))]])])]))]))]]]]])]))]]))]])))]))])]]])]]]))]))]])]]]]])))]))]])]))])])]))))))]))]))]]))]]])))]]]])]]])]))])]])))))))])]])]])]])]])])])))]])]]))))))]))]]])]])]])])])))]))]]]]))]]])]))])]))]))]]))))))])]]]]])]]))))))]]]])]]])])]])]))])))]])])]]]]]])]]]))))]))]))))]]]))]))))])])])]]])))]]]]]))))))))))]))])))])]])))]]]])))]))))))]]]))]]]]]))))])])))]])))]))]]])]])]]]])))]]]))])])])])])]))]]]]]])))]))]))])]]]]))])))))))))]])])]]]])]])))]]])]])]))])))))))])))]]])]))]]])])])])])))]]]])])]])]]]])])]]))]))))]))))]]]])]]))])]])])]))]])]])]])]])])]]])]))]])))]]]]]))]]]))])])]])]]]))))]])])))]]]]]])]))))]])))]))]]]]]])]])))))])])]]])]])]])]]]]]]]))])]])))]]))))))))])]])]))))]]]])))])])]]))))]]))])))])]]))]]))]])]]]])))))]))]]]])))]])))]]])]])]])])])]])]))))))]))])]])))])])]])))))])]]]))]])))))])]]])))]))))))]]])]]))]]]])]]))]]))])])))]]]]]))))]))))]])]]))])))]])))])))]]])])]])))]]])])))]))])])]]]])]]]])])])]]]]))])])))])))))])])))]]]])]])))))))]])]])]])]])]))]))))]])]]]]]])]]])]])))))])])]))]]]))])]))])]])]]])]]])]]]]]))])])]))))]]))]]))]]]]]]))]]))])]]]])))))))])]]))))]]]]]]]]))]))]])])]])))))))))))]]])))))))))]]]]])]]))]]])])]]))])]))])]])]]]]))])]]])))))))]))))]])))))))])]]]])]]]))]])])]]))))])]])]]]]])])]])]])))))]]))))]))]]])]))))]]]]]))])))]]]]]]]]])]]]))))))))))]]])]]]]))]])])])))]]])))))))]])]]]))]]]])))))]]]])]))))))))]])]))))]))))]]])]))))])])])))])])))]])))))]]])]]])])]])]]])]])]]])]]]))))]])))))])]))])]]]]))]])))]))]])]]))]]))]]))]]])))])]])]]]]]])]))])])]))]]))])))]])]]]))]))]))]])])))])]])]])]])]]]])]]]])]]])))]]))))]]]))]])]))))]]))))])])])]))]))]]])]))]])]]])]])]])))]]])])])])]])]]))]]]))]])))])))])])]]))])]]]))))))))])]]]]]]]))])))]]])]])]]))]]]))]))))])]]))])]])]])])]]]]))))]]]))])]))))]])])])]]))]))])]]]]]]])])]]]])]]))))]])))]])))]]])]))]]]]))))]]]]))]])]))))]]]]]])]]]))]))]))))))]]])]])])]]])])]])))))])]]]))]])])]])))]]])])))))]])])]]]]])))])])])]))]])])])]]]))]))]]])]]]]]))]])])]))])]))]))]]]])]]]))]]])))))))))]])]])))))])]))))])]]])]))))))]))]]]))])))))])]))])))])]))]))]]))]))]))]])])]))]])]]])]]))])]]])])]]]))))]]])])])))))])]]]]])))])))]]]]]]))]])))])))]])]))]]])]])]))]))]]))))]))]]]])])]])]])))]))]]]])]])])))))))])]]]))]))])))])]]])))]])])]])]]])]]))))))]]])]])]])]]])))))])]]])])])]]))]))))))]])])]))]]])])))])]]]]))))))))]]])]]))])))]]]))]))))))]))))]))]))])]))))])))]])]])]))]])))]))))))])]))]]])])))])])])))])])])]]]])])]))])))]]]))]))))))]]]))))]]])]))])])])])))))))]]]])]])])]])]]]]]))]])))]))])]])]))])]])]]])]]]))]]))))))])]]]))]])))]]))]))]])]]))))]])))))))]]]])])])])]]]]]]]]]])])]))]])]])]])))]]]])))])]))]]]]))])])]])])])))]]])))])])]])]]]])]]))))])]]])])]]])])])]))]))))])))))))])])])])])])]]]))]]))]])]])]]))]))))]]))]]]]))])]]]]]))]])])]])])))))))))))]])]]]])])])]]]))])]))))]]))]]]]))]])]))])]])])]]]))]])])])))))))))))))]))))])])]]))))))]])])]]]))])])]]))]]])])])])])])]))))))]]]))]]])]))))))]])])))))]))]])])]])))]])]]])])]])]])))]]])))])]])])])]]]]])]]]]]]])))]))]]])])))))])]]]]]]]]]))]]])]]]]))])]]]])])]])))))])]))]])]))))]]))]])]])]]]]))]])))]]]]])]))]]]])]])]))))))]))]])]])]))]]]])]]]))]))]]]]])]]))))])])))])))])])))))]]]])])]]]]])])])]]]))))]]])))])))]])))))])]))])]])]])]])))])]]))))])]])]]]]]))]]))]))])]])]])])])])]]))]])]]])])])]))))])))))]))))]))))))]))))])]]))))))]))]))))]])])]]))))])])))]))))])]])))]]]]))]))))])])])])]))))])))]])]]]]))))))))))]])]]]))]]]]))]))]]))]]]))))])]]])]])))]])]]])])]]))])]])]]])]))]])]])])))]))]]))))]]])]])))))]])])]]]]])]))))))))]))]]]]]]]]]))]]]))))]]])]]])]))]]))))))]]))]))]]))])]])]]])])]])]])]]]])]))])]]])]]))]))))))))])))))]))]))]]]))))])]])])))])]))])))))))]))]]]]])))])])))]]))))]]))]]])]])]])]])]))]))]]])]))))]]]]))))))))))]])])))]))))))]])])]])])]))]]]))))))])))]))]])]]]]]))])]]))])]]))))]])]]]]]))]])])))))]))]]]))]]))]]))]])])))]]])]]])]])]))]))])]])))]]])))])])))])])]]])])]]]]]])])))))]]]])]])])])])]]]))])])]])))])]]]))]]]]]])])])])])))]))]))))]]]])))))])]]])]))))))])))))])))]])]]]))]]])))]))]])))])])]])])])))))))))]))]]]])])]])])])]]]))]]])]]]))]))])])]))))]))]])]))))]))]]]])]])))]))))))))]))]))])]))])]]]]]))])]])]]]))]]]))))]])])]))))))])]]])])]]]))])))))]))]))]]])))]]]))]))]])])])]])]))]))])])]]))))))]])])))]]))])])]))]])])])]]))))))]]]]]]])])])]]])]))])]))]]))]))))]))]))])]]))])])])])))]])])]]]])])])]])))))]]])])])))))]])]]])]))]])]]))]])])))])]])]]))]])])])]))]]])])])]])))]])]]]])])))))]))))]))))))))]])]))])))]])])))))]]))]])]]]])))])]))]]]])]]))]]]))))])))]])])]])]]]]]])])])]])])))))]))))]))]]]]))))]]])]))]])))])]))]]])]]])))])]])))])]]]])))]]))]])))]))])))]]))])])]])]])))]])])]])]]]])))))])])]))))]]))]]]])])]])])))]))])]))]])]))]])))]])])])))))]]])))]])]]]]]])))]]))]])])])])])]]]]]))]]])))])]))))]]]]])))]]]]))))]]))]]])])]])))]]))))]]))])]])))))]])]]])]]])))]])]])])]))))))))])]])))]))]])))]]])])])))])])))))))]]]]))]))))]))))]]]))))))]]])]]]]])]))]]))))])]])))]])]]))]])))]]]])])]])))]])]]))]]])))])))]])]])))]))])]))]]))]]]]))])])])))]])]]]))]]])))]])]]]))])]])]]]])]]]]]])))])))]]]])])])]])]])])))]))])]]))]))))])])]]]])))])))))]])]]])]]])))])]])])]]]]]]))]])]]))]]]]]])))]]]])]]))))])])]]]]])]])))]]))]))]])])]])]]))])]]]]])])]])])])))]]]])))]))]))])]]))]])))]])])]))))))]))))])])]])]]]])])]))]))]))]]]]))]]])])]]))]]]]]]])]]]]]])])]])]])]]]]))])))]])])])]]]]]))])]))]]]]]])]]]]))))])]]])])))]])]]]))))))]]]]])))]])))]))])))))]))])))]))]]))))]]]])])]]]]]])]))])]]]]))]]))])])])]])])])]])]]))))))])]]]))))]])]))))]]]]))]))))]]))))))]]))]))))]]]]]))))))))))])])]]]]])))))]])]))]])]]))]])]))])]])]]]]])]))))]))))]])))])])])]))])]]]]])]))))]))]]]]]]))]]]]))))))))))]))])])))]]])])]))]])))]])]]]))]]]]]))])]))])]])]]]])]])))]]))]])]))]))])))]]]]])))]))))])))]))])]]]]]])))))))]))]))))]]))]])))])))]]])])]])])]))]]))]]]))])]])]))))]]))])]])))]]))])])]])]))]]])]))]]]])])]]]])])))]]]]]]])))]])])))]]]]])]]))]])])]))))])))]))))]]])]]]))]]))]))))))]]]))]]))]]))])))]]))))))])])])))])))]]]]]]])]]]))])]))])]])])])]]]])]]]))))))])]))])))))]])))))])])]]])))])))))]]))])]]])))]]))))]))]]]))]])))]]])])])]]])]]]])]]])]]])]))]]))]))]])]])]))))))))]))])])]]]))))]])]]))]))])]]))))]]]]]])))])]]]]]])])])]]))]]]]))]]])]])]])]])]])])])])]]]]))]])]))]]]))))))])]])])]]]))]))))]]]]))))]])]))]))])]))))]]]])]])))]))))]))]]))))))))))))]]))]]]]])]]]]]]))))))]]])))])]))]])]]]]))]])]])]])))])))])))])))]]]]]])))]))])))]])]]]))]])]])])))])]])])]))])])])])))]]]))]]])]])])])]]]])])]]])]]))]])]]))]])])])])))])))))])])]])])))]]))])]]]])]]))]])))]]))])]]]]]]]]])]))]))]]]]))])]])])]]))))))]])])]]]]])]])]]])))]])]))]))]))))])]]]))])]]]]]]))]])]])])))]]])]]])]]))))]])])])])))))]]]))]]]))]]))]])))))]])]]])))])])])]]])))))]))]))])))])))])]]))]])))])]]]]]))]]])])]]]]]))])))])]))]]]]])])))])])])])])))))]]]]]])]]]]))))]])]])))])]]]))]])]]]])]]])]))]))]])]]])))])])])])]]]]]]]]]))))))])))]]])])))])])]])))])])))))]]]]]]))]])]])))]]]))])])]]]]))))]])])])))])))))))))]]]))]]))])]]])])])])]))))]]]]]))])]]))]))))))]))]])))))]]]]))]]))]))]]])))])])))))])]))])]))]]]))]]])]])])])]]]])])]]]])]))))))]])))]])]]))])))])]])]]]])]]]]]])))])]])])])]])]))])]))]]]]])])])])])))))))]])])]))]]]))]]])])))]])]]]])]])]])]))]]]])]))]]]]))]]))])]]]]))]]]]]])])))))])]]]))]]])])])]]))]))])])])]))]])]]]]])]))]]))]])]]])])])))]]]]])]])]])]]])]]))])]))]))])])]]))]]]]])]))]]]])])))]]]))))])))]]])])))]]]]))]]]))]]]])])))))])]))]])])]))]))]]))))]]))]]]))]]]]]])))])]]])]]])))]))))]])]))]))))]]]]])]))]])])))])]]))))])))])])]])]])])]])]])]))))])))]]))]))]))]]]))])]]]])])]))])]))]]]))]])))]]))))]])))]))]))]]])))]])]]]))))]])))]))))))]]]]]]]])]]]]]]])))]]))]]])))])]])))]])])])])]]))]]]]]]])]])]]])]))]]])])])))))))])))]])]]]))]))]))))))]))])))]))])]]))))]]]))]]])])])]))]]))])]))]]]]))]]]]])))])))])))))]]))])])]])]])))]]))])]]]))))]])])])]))]]))))))]]])])])]]])])))]))]]]]]))])))))]))))))]]))))))))])]]]))))]))))]]]]]))])]])]])]])]))]]))])))]))))]]))]]]]))]]])])))])))]))))]]]]])])]]]))])]]]]]]))])])))))]]))))])]])))])))))]]))]])]))))]]]])])]])]]]])))]])))])])))])]]))]])]]]])]]]])))))]])]]]))))]])))]])))))))]]]])])]]]]))]))))])]])))]]]]]]]]))]]]])]))))]))]]]))]]]))]]]]]))))]]]])]))]))]))])])))])]]]])))))])]])])]))))))]]))])))]]]])))))))])))]]])))])))])])]]]))])))])))]])]))]))]]])]])]))))]]]))]])]]))))]]]])))]]]]]]]]])]))))]])]])]]]))))])])])]]))))))]]])]))]))])]]))]]])]]]]]]])]])]]]]]))])))]]])))))])]))]])])))]])))))]))])]]]))]])))])))]]]))))))))])]]])])]]]]])]))]]]])]]))))))])))])))))]]]])]])])))]]]]]]]]]))]]))]]))])))))])))]))])])]]]])])]]])]])))]]]]]]]]]])]])]))]])]]]])]]])))]))])])]]]]]]))])))]]]]])])])])]]]]))])])]])]))]))]]])]]])))])]]))]])))))]])]]]]))]))]])]]]]]))))]]]]))]]]]])]])]))])]))]]]]]])]))])))))))]]])]]])))]]]]]])]]]))]]))])))])]]])])])))]])])]])))))])))))))]]]]))])])]]]]))]]]])]]]))))))]))]])]]]])]]))]]))))))))])))]]))]])]))]])])])]))))]]))))]]]]]])))])])]]]]))]]]]))))]]))])))]]]]])])])))])])])]]))))]])])))]]])]])]))])]]]]])]))])])])]])]])]]))]]]))]]))]))]])])])])])))])])))))]]]])])]]))))]))]])])]]))])])])))))]]]]))))])))))]])]]])))])))]]]]])])])))]]])])])))]]))])))])]]]])])]))))))]]])]])]))])])]]]))))))))]]))]))))]]])]]))))]))]])])]]]))]]))))])]]])]])]])]))])])]]]])))]]])]])))))]))]])]])))))))]))))]])])]]]])])])))]]))]]]]))))))])))])])))]]]])])]])])))]))))))])))))]))]]]])]])]]]])]]]]]))])))))])]))))])]])]]))]])))]))])])]]]))])])])])))))]]))]])))))))))]]])])])]]]))]]))])])])))]])]))))])]])])]]])))))])]]]))]]]]]))])]))]))]]]])))])])])))]))]]])]))])]]])]]]))]]])))]]]))]])))])]]])]]]]]]))]]))]]])]))))]]])]])]))))))]))]))]]))]))])]])])])]))))]])]))))]]])))]]]]]])])))))]))))])))]]))))))]])]]))])])]))]])])])]]])])])]])])))]])))))])))]]]])))))))))]]]))]]))]])])]]))))]]))])))])]))])]])))])]]))])]]]]])]]])]]])]])))])])]]]]]])]]]])))]])]]])])))])]]))]]))))])])])]]])))))]])))]])]]])])]]))])]]))]])]])]]])))))))]]))])])]]]))]])])]]])))])))])))]]])]))))])]]])]]])]))]]))]])])]]]])]))]))]]))]]))])]]]]))]))))]))]]])])]]]]]])]])))))))])))]])]])]]))]]])]]])])))]]]]]]]))])))]]]]))]))]]]])])]))])))]]])])))])]]))))))])])))]])]])]])])])))]]])]))]])]]))])])])])])))]]]]]))]]))]))))]))))]]))]))]]]])])])])])]]))]])]])]))]]]])))]))]))])]])]])]]))]]]])]]))]])])])))])]]]])))))]]]]])]]]))))]]])])))]])]])))]])]]])]]]])))]))))]])))))])))])))]])))])])]]])]]]))]])]]]]]])]))])))]]]]]])]))]])]]]))))])]]]]])]]))])))))]]))])))]]])]]])])))]])))))))))))]))))]])]]])]])])])))))]))]])]]))])])]]))])])]))]]))]))))])]]]]]]]]))]]))])]]))]))]])]))])]))))])])]))]))))])]]]])]))])]]]))]])]))]]))]))])]))))))]]]]])])])]])]]]])))])))])))]))))]))])]]]]]]])))))])]]]]])])]])))]))]]))))]]]]]]))]]]]])))]]]]])]])]])]])])])))]]]]]]))]])])]))]))]))])])]]))))])])))]))))])]))))]])])))]))])])]]))]]]]]]]]])]]])]]]]])]]])))])))]]))]]])]]]])))]])))])]]])])]]))]]])]])))))]])])]]))]])]]])]]]])]))))])))))]]])]]])]]])]])]]])]))]]]])))))]]])])]))))]])))))]]]))))]]]])))])])]]])]))]))]]])]])))])))]))]])]))]]]]))))]]))]]])]))]]])]]))))])]])]])))]]]))))))])]))]])]])]]]]])])]))])]])]))])]])]]))]))))]]])]]]])]]]]])))]])])]])]])]])]])])])]]))]))])])])]]]]])))])))]))]]]))]))]))))])]))))])]))])]]])]])])))]]]])]))]))]])))]]])]))))))])]]]])))])])]])]))]]])]]]]]))])]]]))]])]))])]]))]))]])))]]))))]]))]]]])))))))]))]))])))))])])]))]]])))))]])))]]))]])])]))]]))]]]]]])]))]]])))]]]))])])])]])]])]]]]])))))]))]])))))))])])])])))))))]))]]))]]))))))]])])]])])]])])))))]])])))))])]))])))))])]]]])]))]]])])]))))]]])]])]))]))])))])]))))))])))]]])]))]))]]]))])])]]]])))]]]]))]]])])])]])])]])]]))))))]]]]])))))])])]])]]]]]])))]))]])))]))])]))])]))])])]]]])))]])))]))))))]])])))))]))]))))))]))]])))])]])])))))]]))]))])])]]]]])])]))))))]]))]]]))]])])]]))]]])]]]))]]]))])]]]]))]]])])]])))]]]]])]))])])])])]]]))]]])]))]))])]])]))))]])))))]])])]]])))))]))])]]])])))))]]]]])]]))))))]]])))]]]]])])])]]]))]])])]))]]]]])]])]])])])])]))]))])])))))))))])))]]])])]))))))]]])])])]]])])]]]))]]))))])]]]]))])]])]))]]))])]])))))])])))])])]])]))]))))]))])])]])]]]))]]]])]])))]))))]]]]))]))))))]]]))]))))])]])]))]]]])])])]])]))))])))]))])))])]))])))]]]]]]]))])])))])))])])))])))]))]]])])])]))]))]])]]))))]]]))))])]]]))]]))]]]]]])]])]))))]]]]])))]]]]]]]]])]]])))]]))])]])]])]])]]]]])))])))]]]]))]]]))]))]))])))])]]]]))]]))]]))))]])]]]]]))))])))])])]])])]]]]]]]))))]))))))]]]))]))]]))))))]])]])))))))]])]))])))]])])]])]]]]]]])])]])]])]]]]]]]]]]]]))))]]]))]])]))]])))]))]]]]))]]))]]]]])))])))]]]]))]]]])]])]]]))))))))))]]])])))])]]]]])]]))])])])])]]))))]))]]))]]]))]]])]]]]])]])))]))]])]))]]]]))))))]))])]]])])])]))]]]]]))]]]])])]])]]]))]]])]))]))]]]))])))]])]])])])]]]]]))]]]])]])])))))))])]]))]]])))])))])]]]]]))]]])]]])]))])]]))]))))]))]]]))))]])))])]])]))])])))))))])))])))])])]])]]])]]])]]])]))])]])]])))]])]]])])]]))]]])])]]]))])]))]))])))])))))]]))]]])]]))]))))))))]]))]]])])]))))))))]])])])))])]))))]]))]])]]]])]))]]])]])))))]]))]])]]))]]])))]]]))]]])]]]]))]]]]]]))))]]]))))))]]]]))])])))))])]]))])]]]])]])]])))))))])])])]))])]])]]))))]])])])]))))))))])])])])])))]]]))]]]])]]]]))]]])))]]])])]]]))]))])))))))))])]))])]])))]))]])])])]])]))]))))))]]]]))]]))))))))]]))]))))]])))]]))]]]))]])])]]]]))]))]]]))]]]))])))]])]]]]))]]])))]]))))]]]]])]))]))])]))])]]]]])])])]))]))]]]]]])))]))))])]]))]))])])])))]])]]])])]))]))]]]]]]])])])]]])]]))]]])])))]]]]])))]])])))]])]]))))]])]]))))])])))))]]]])))]))]]]]]])]]])])]]]]))))))])]]]]]]))]])))))))]]))])]])]])])]])]])))))])]))))])]]]])])))))])))]))]])]))]]]]]]])]]]))])]]])]]]]]]))))])))]]]))])))])])])]]]))])]]]]]])))]])))])])]]]]]]]])])])])]])))]]]]]])])))))])])))])]]])))))]))))))]]]]]])]))]])])]]])]])]))])]))))]]]])])))])]]]]]]]))])))))])])))])]))]])))]]])])))]])]]])]))]]]]]))]))]))])]))]]]]])))]])))]))))]])])]]]]]))]])])))))]]])]))))]))]]]))])])])]]])]]])])]]]]]])])]))]])))))]))))])]])])]]]]]])])))]]]]]))]))))))))))])]]))]]))]]]))))]))])])])]))]))))])]]])])]))]]]]))))])]])]))))]])]])]]])]]])))]))))]])]])]))])]))]))]]]))]]])]))])]))]]]]]])]]]]]]]])))]))]]]]]]))]]))])])]]])]))]]])]]]))]]))])))]]]])))])))]))))])))])]]]]]))))))])))]]]]))])])))]]]]]))))))]]]])))]]])]])]))]))])])])]))))]))]]])])]]]])))]))]]]])]]]])]]]]])))))))]]))]]]]])])])])]]]]))]])])]))))]))]]]]]]]]))]]])])]]])])]]])])))])))])])]])))])]))))]])))]))]]))))]))]))]]]])]]])]]])]))]))])])]])]]]])]))]])]]])))]])))]])])))))]]]])))])))])])))))]]]]))]]))]])))])]]]))]])]))])]))]]])])))]))))))]))]]]]))]])]]])]]]]]))))]])])]])])]]])))]))))]))]))))]))]])))])]))]]]]])])])]]]]])])])]])]]]))))))))]]]]))]])]]]]]))]))))]]))]])]]]])]))]]))]]))]])]]])]])))])]])]))))))))))]))]))))])))]])]])]])]]]]]])]))))])))])])]]]]]))]]]))])))])))))]]]]]))))]]))]]]))))]))])]]])]))]])])]]))])]]))]]))])]))]))]))))]])]]))]]])])])))]))]]]]))]))))]]]))]])])]])]])))]))])]]))])])]])]))))))))]]])]]])])]]])]]]])]))]))]))))]]])]))])])])]])])]])))]])]))))]))]]))]))]]]]))))]]))]])]])))))])]]])]]])])]]))])]))])))]]]]]))])])]]]]]]]]]]))])])]])]]]])))])))])))]]]])))]]]))])))))))]))])])])]]]])]]))]]]])]]])])])])))]))]]]])])]])))])]]]])])]]))))])))]]]])]))])))]])]))]]]]])])])]])))]])]]]))]))])])])))))))))])]))]]])])]]]])])]]]))))])]]])))]]]]]])]])]))]]])]]]))]]])]]]]]])]))]])))))]]])]]])])]]])]]])]])))]])]]]))])))]])]))])))))])))))]))))))])]])])))))))])]]))]]]))))))))))))]]]]))])]]]]]])]]))]]]))])))))]))))]))))])]]]]]])))))]))])])])])))]])]]]]]])])))]))))))))]]))]]]]]]]]])]])])]))])]))]])]))]]))]))]]]]]))])])))])]]])])]]]]]])]]]]]]))])])]])]])]]]])]])]]))]])]]]]))]]]]]]))]]))))]]])]))]]))))]]])]))])]]])))))]])])))]]]))])]]])))]])))]])))]])]))])])))]]]])))]]]]]])))]))))]]]]])))])]]])]])])))))]))))]))))]))]]))]]])])]])]))])])]])]]]]))])]]]]]]))]]]))])]))))])))])])))))]]))])]))]))]])]]])])]])))])])]]]]]))))]]])])]))))])]]))]))))]]]]]))]]))))]))])))]]))])])]])))))))]])))])])))]]))]]))]]])])))])])]]]))]))])])]])]]])])]])]])))]]))]])])])]]]]))]])]]]]])])]]]])))]]))))]))])))))]]])])))])]])))]))]]]]))])]]]])))])))))]]))]]]))]])]))]])))]]])])]]))))]))])))))]]]))]])]))]])]))]]))))])))]))))]]])))])]))])]))])])]]))]])]])])]))))]]]]]]]]))]]]]))]])]]]]])))])]])])))])])]])]])]]]]])]]))]]]])]]]]]]]]]])])]]])]))]])])]))])]])]]]]))]])]]))))])]]])))]]]])]])]])])))]])])]])])]])))))]])]]]]]]))]))))))]]])]]))])]))]))]))]]]]])))]]]))]]])]])])]])))]]]])])]]]]]]))])))))]]]])]]]))]])]))]]]])]])))))))])]])]]])])]]]]]])]])]]]))]))]])])]]))]))))]]))]))])]])])]]]]])))])]))]))]])]))]]))))]])))]]]])))])]]))])))]]))))]]))))]))]]))])]]))])]]))]]]])])]]))])]]]])])]]]])])]]))])]]))])))])]]]]])))]]))]))])]))])]]])]]])]])]])]])])])]]])))))])]]])]]])]]))])]))]]))])])]])]]]]]])]])])]))]]]]))]))]]]]))]]]]]))))]]])]])]]])]))])]]])]]]))]])]])]))])]])))]))])]])]]]]))]]))]]]]]])])))])]]]]]]])]]])))))]]])]]))]]])]))))])))]]])])]))]]])])]))))]]]])]))))]]])]]]]]]])])))))]])))]]]))]))]]]]))]))))]))))])]])]))]))]])]])))]])]])])]]])]]]]]))))]]]))]])))])]))]]]])]])])]))]]]])))])]]]]])]]]])]))))])]]]]]]])]))])]])))])])]]]])])])])]]))))))])]))))))])]]))))]]))])))]))]]])))]])))])))])]]])]]])]]]]]]])])]]]])]))]]]])))))]]]])]])))]]])]))]]]])]]])]]]))])])))]]])])])))]])])))]])])]]))))])]]]]]]]]))])]]))))]]]])]]])]))]]]])]]]]))])]]])))])))))])))])])))]]))]])))])])]]]])))))]])]]])])))))))]]])]])]]]))]]]]))))]))))))])]]))]])]))])]]]))]]]]))])]))]]))]])]))))])]]])]))])])))))])]))]]]))])]])])]))))]]]]])]))])])]]))])]]]])))])]]]]))])))]]]])))])]))])])])]))]])])])))]])]]]]])])])))])])]]]))]))))]]])]]]])])])]]))))])))]])]])])]]])))])))])))]])])]]]))]])))]]]]])))))))]])])))))])]])])])])])]])]]))])))]])]))]]]]])]])]))])))]]])])]]))])]]])]]]]]]]]])]])))))]]])]))]))])]]]]])]))]]))]))])]]]])])]))])])))])]))]]]]])))]]])))))]])]]]]))))]))])])])])]))])]]])]]]]])]]])])])]]])]])))]))))]]]))))]]))])))]])]]]])])))))))]]])]]]]])])]]]]]]))]]])]))])]]]])]])])]])]]))))])])]]))]]))))))]])))))]])]]]]]])]]]]]]]]))]]]]]])]]])))]]))))))))]))]]))))]]])))))))]]])])])]])))]]]]]])]]]]])))]])]]]])])])]]]]])])]]])])]))]])]])]]))])])))))])))])])))])]))))])))]]]))]])])))]]))]))])]])])])]])]]])))])))])])))])]]]])]]))))])])])])]]))))]])))))]]])))]]]))))])]))]]])]]]))])]))]]]]]]])))))))]])]])]]]]]]]]]])]]]]]]]]])]]]]]))])])))))]]])])]]]]]]))]]])]]]])))]]))]]))))])])))]]]]))])))))]))))]])]]]])])]))])])]))]])])])]]])]]])]]]))]]]]]]])])]])]]])])]))))])])]]])]]))])])]])]]])))]]]])))))]])]]]))))]]]]))))]))])])])])))))]))])]]])])])]])))))]])]]))]]))))])]])]))])]]]]))))])]])]])]]]])]])]]))]]]]))]]])]])))]]])]))]))])])]]]]])]])))]]]))]))])))]]]))])))]]]]]))]))])]]])])]])]))]))])])))))])))])])]])]]))]))])]])]))]))]]])]])]]])))])))]])]))])]]])))))]))]))]))])))]])))]])))]])])))]])]]]]])]))]]))])))])])]])]])])]]]]]))))))]))]])])]]))])]))])])]])])]))])))]])])])))))]))]])]))]]]]])]])]))])]]]])])])]])))]]]]])]))))])]]])]])])]]]]])))))]]))]))))]))))))))))]])]]])))]]))))]]])))))]]))]]]]])]]]]]))])]])]))]))])))]]]]])]]])))])))))))])])))))])))))])]]]]])))))])])]])]))]]]))))))])]))))))]]])]))))]])]))))))))]])))])]])]])])))])]]]]]]]])]))]]))))])]]))])))])]]]))]]]])))))]))]])]]))]])]]]]])]]]]))]]]])]])]]]]])]))]])]]]])))]))))]))]]))]])]])]]))]]]])]))))]])]])]]]]]]])]])]])])))))]])]))]]]]]]]])])))]]))))]])])))))]))))]]))]])]))]]]))))]))))]]])]]]))]])])))])]])))))]]]]])])])]]]]]])]]])])]])]])])]))))))]]])]]))))])]])]])])))]])]]))))]]])))))]]])]]])])))))]]))]]))))))]))])]))]]))]]])]])])))])))]])))))]])))))])])]]))]]])))))])]]))])]]))))]])))]])))))))]))))]))]]]]]]]]]]])]]))])]])]])]))])]]))))]]]))])]]))])))]))]]))]]])]]))]]]))]))])))]]])]]))]))]]]]))])])])])))]]))]]]])))]))]])])]]]]])])])])])]))]])]]]))])))]])]]))]]])))]))))]))])))))]]])))]))]))])))]]))]])])))]])]])))])])])]]))]]]]]]]])]])]]]])])]]))))))]]))]])])]]]]))))))))))])))))])]]]])]])]))]]])))])])])))]])])])))))]]))])]]]]]]])))])]])))))]]])])]]))])]]])]))))]]))])))])])))]]])]]]]))])]))))]])))]))])]])))]])))))))]]])])]]))))]]])]))]]))])]))])]])))]))])))])])))])))]]]]])]]))))])]]]]))])))])]]]]]))]])]]]))))]]]])])])))))]))])])])]])]))]]])]))])]])))]))]]))]]])]]]])]))]])])))]]]]))])]])])])))))))])]]]))))))]]))))]]])]]))])])]])]))])]]]))]]])]])]]]]]]]))]])]]]]))]]]])]]))]))]]]))))]]]))]]])]))]))]))])]]])]]])))])))]])]]])])])]))])))))]]]]]]])]))]]])]))]])])))])])]]]))]]]]]))])))]))])))))]]))]))])])]]))]])]]))])))))]))])])])]]])))]]]]]))]]]]]))]]]]])))]])]))]]]))]]]])]])))))))]]]])))))]]])])])]]))))]]])]]]]]]])]))))]]))])]))]))]]]])))]])]])]]]))]]]))))]))])]))])]])]))]])))))]]]])]]])]]]])]])]))])])]])]]))]]]]]])]))])])]]]]]))]]])]])]]))])])]))]]))]]]]]))))))])])]]))]]])]]]]]))])]])]]))])])]]]]))]])))]]]))])]]]))])]])))))]]]]])))])]])])])]]]]]]]))]]]]]))]])))]))]))])]]))])))]]])))])]])]))])])]))]]])])]]])]))]]]])]]]]])])]]]))))))]]])])]]])]]]])])))])))]]))]])]]]]]]))]))]]]])]]])])]])])]]])]]])]]))))]))]))])]]))))]))])]]))])]])))])]))])))))])])]])]])]])]]])])]])]]]))))]))]])])]]])])))]))]])]]])))])))])]])]]]]))])]]]))]]))]]))]])]))])])))]]])])]]]))]]])]]]])))])))]]])])]]))])))]])))))]]]])])]])]]]]]])))]]))))]]]]]]])]]))]]])]]))])]]])))]])])]))]])]])])))])]))]))]])])))))))]])]]])])])]]))))]]))]]]]))))]]))])]))])]))]]]))]]))]])])])]))]]]]])]]]]))])]]))]]))]]])))))))]])))])]]])]]))])))))]])])))])]]]]]])]]])))]])]]]]]))))]))))))))]]]]]]]))]]]))]))))))))))]]])))])))))]]]))))))]]]])]]]]])]]]])))])]]))]]])))]))))]]]]])))]))]]]]]])]]]]))]]))]]]]]])))]))]]])))])])))))]]]]])]))])))])]])))))]])))]]])]]]])]))]]))])]]])]])]))]]]])]])]]])]])))))))))]]]])]]))))))])])])]])]]]))))])]))]]]])])])]])))]])])))))]]])]))])]]))]))])]]))]))))])))))]]]]])]))]]))))]])))]]])]]]]]))]))]])])))]])]])]]]]])]))])])])])]]]]]]]]]))))]))))]])])))]))))]])]))]]]])])))]]]])))]))))]]]])])]]))]]))])]]))]))])]]]])]]]])))]]])]])]])]]]]])])]]]]]))])))))])]])])]))])]])]])]])])])]]]]])))]]])])]))]]]]]])]]])]))]])])])))))]))]]])]))]]])))]])])))))])])])]])]))))])]))]))))]]))))]]]]])])]]])))])])])])]))])])]])))]]]))))))]))]]))]))])))))]]))])]])))))))))]]]))]]]])]])])]]]]))])))))])])))))))])))))]]])]]))))]]]]))])))])]))]]))))))]]]]]]]]])))])]]))]))]]))))])]])]))])])))))]))]))))]])]])]])))]]]]))))))]])))))])])))))]]]]]]])]))])]]]]]))]))]])]]]))]]])))))])))]))])]])]]])]]]])]]])]))))]]])))]])]])]])])))]])]))]]]])]]])])]]])]))))))]))))]])])))])])]]]]]))]]]))))]]]])])])])]))]]]]]]])]]))])]])]])))))])])])))])))]]))])])]])]))))]]))]])]]]))]))))]]))]))])))))]])])]]])])])]]]])])])]]))]]])]]]]))]]]))))]])]]])]))])]))))])])])]))])))])]))])))]]]]])])]))]]))])]]]]))]])])])])]])))))])])]])))]])])])]])]))]])])]]])))])]))))]])])))))]]]])))))]]]]])]]])]]])]]]]])))]])])])))))))])])]))])]))]]))]]])]])]]])))]))]]]]])))]))]))])])])])]))]))))])]])]]))))]])))]]]]]])))]]))])])))]]]])))))))]))))))])))))])))])]])]]]])]]]]]]])))]]]]]])]))]]]))]])]]]]))])]]]]])])]]]])]])])]]])))))))])))]]]]]])])))]]])]]]]]]])]])]])]])])]]))]])]]]]])]])])))))))]]])]])))))])))]]])])])))]))))]))]))])]])]])]]]))]])]])]])])]])])])]))])))))))]])])]))))]])])]]]]])]]]])))]]])]])]]]]])]]])))]]]]])])])])]])])]])))))])]))]))]]]))))])]]]])])))])])])]])))]]])]])))))))]]]))])]))))]]]))))))]]]])])]))))))))])]))))]]))))])]])]))]))]))]]])])])))]]))))]))]])]])])])])]))])])])])])])))]])]])))))]]]]]))]))]]]])))))))]]]]]]])]]))]]]))]])))]]])]]])]]]]))])))]))))])]])))]))]]]))]))]]))))]]])))])]]])))]]))]]])]]]]])))]))]])])]))])]]])]]]]]])]))))]]))])]))])])])]]))])])]]))]]]]]))])])]]])))]))])])]]))])]]))]]))]])))))])))))]]))))]]))])])])]])))]]])))]])]]])])])]]]]]]])]]]]]]]])])]]])))]]]))])])]])])])])]])))))))]]])])))]]]])])))])))]])))])))]]])))]])]]])]]]))])])]))]))]]))]))])))))])]))])]])])])]])]]])])]]]]]))]))]))))]]))))])))]]]]]))]]]])])])]))))])]]]]))))]])]))]]))))]])))]])])]])]])))))))]]]])))))]]))))]]])))]]])))])]))))]])))]))])))]]])])))])))]]]))]]]]]))]])]])]]))]]))])]]))]]]]])])))]])))])])])]])]))]])]))]])])]])]])))]))]))]]))))))])]]))])))]]])]]])]]]))]))]))]))]])))]])]))])])))]]))])]))))))))]]])]]))))))))])]]]]]]])]]]]]]])]]]])))]])))))]))])])])]))]]))])])]))))))))]])]]]]])]))))])])]]])]])]])))))]]]]]]]))))])]]])])])))]]))]]]]))])])]])]]])]]])])))])]])])])]]]]]])]])))))]]]))])]])])]]]))))])])))]]]]]]]]))))]]]))]]))]]))])]))])]))])))]]]))])])))]]]]))]]])))))]))]))])])]))]))))))])))]))]])))]])))]]]))]])))])]]]]]])])))])))])])]))))])]]]]])])]]]]]])]))]))]])])))))]]))]]])])))])]))))]])]])])]]]))]]]])]))])]])])]]))))]))))])])]))])]])])))])])]]])]))]]))])]])])]]]])]))))]))))))))]))]))]])))])])))]]])])))])))))])])))]]]))))))]]]]])))))])]]))]]])]]])]]]]))))]]))])]])]]])])))))))]])])]])))))))))]])]))]]))])]])]])]]])]])]]]]])])]]]]]))])]]))]]))])])]))))]])])))]]])])]))]])])]]]))])]])]))]))))]))))])]]]])]]))))))]])))]))])]))]]]]))])]])])])]])]])])))]]))])]))]))]])])]])]]))])]))]])))]]])]]]]])]])]]))))]])]]]]]]])])])]))])]]])])]]])))])))))]]])])))]))]))]]])))]])]]]])]])]])))])))]))))]]])))]]])]))]])]]])))]]])])]]]]]]]))))]]])]]))]]]]])))))]]]))]]]]]))))]]]]]]]])])]])]]))]])]]))]]]))]]))]]))])])))])]]))]])])]]]))])])))]]]]])]])))]))])])]))])])])))])]]])))]))])]])])]]]))]]))])))]))]]])]))]])))])])]]]]])]]]])]))])))]))]))))]])])])))))]]))]]]))))]]])]]]]]])))]))]])))]])]))]))]]]]))))))]])]]]]])])))]])))]])))])]]]])))])])]])]]]]])]]])]]))))]]]))]])))]])))))])]))))])])]])])))]]]]]]])])]]]]]))])]]]]])])]))])])]]]]]])]])])]])]]])])))))])))])]]]]]]]]))))))))])))))]]]]]]))]])])]])))]))))]))))]]))]]])])]]])]]]]]])]))])))])])]]])))]]))])])))]]]])]]]]))]])]]])]]))]))])))]]])])]))))))))]])]))))))))))])))]]])]])))))]])]]]]]])]]))]])])]])]])]])]]))]])]])]]))]]])))])])]]]]]]])])])])])]])))]]]))])])])]])])]]))]]))]]))]))))]])))]))))])]])]]]])])])))])]]]]]))))])])))])])])))]))])]))])]]]])]))]))])])]]]])))))])]]])))))])])]))))])))])]]))]]]]))])]]]]]])))]))]])))))]]]])])]]))]]))])]]]]]))))))))])])))]])])])])]]])]]])]))]])])]])))])]])))))])])]]]])]])))])]))]])))))])))]]]))))))]))])]]])]]))]])])))]]]))]]])])])))]))]])])])]]]]]])]))]))]))])]]]))]]]))))]]))])))])])))]))]]])])])]]])]))])])])])]))])))))]])))])]])]))]]))]))]))))))]))]])]))])]]]))))]]]))])])))]])])])))])))]]]])])]))])]]])]])])])]]))])))])]])]])))]]]]])))]]]])]]]]])]]])))]]])])])])]]]]))))]]]]]))))])]]]]])]])])])]]]))))])])]])))))]]]))]]))])]))))]))))]]]))]]]]))]])]])))]]])]]]]))))))))]]])]]]]]])])])]]])))))]))))])])]]))])))])]])]))))])]]]))))))])))))))]]]))]]))]))])))]]]]])]]])]]]])))]))))))]]])])))]]]])]]])]])])]]])])))])])]]]])])))]))]])))]))))))]))))))))]])])]]])]))))])]))]]]]]]])])]]]))))]]]])]])))])]]))))]]])]))]]))]]))))))]])]]]])))])])))]]])]))])])]))]])]]))]))]])))))])]))]]])]))]])))])))]))]]]))]))])]])]])])]]))])))]])))])]])]]]])]))))))))))]]]])]])]]))])))]])]])])]])]])))]])]]))]])]]]]])]))])))]])))))]))])]]]]]]]])])]]))])]]]]]]])])))))])))]]]]]))))])))]])))))]]]]])))))])))]))])])]))])]]))]]))])])])])]])])])]])]])])])]]))))])]))]))])))])])]]))])]]))])]]])])]])]]]]))]))))))]]))))]]))]))]])))])])))]])))]]]]]])]])]))]])]))])))))]]))]]]))))))])])]])])))]]])]))]]]))]))))])])]))))])))]])))]]])]]]])])))]])))))))]])])]]]]]))]]])])])]])))))])]]]]]]))])]])]))]]])))])]]])]]]])]])]))])])))]]))))])]]])]]])])))])]])])]]]))]])))))]]]))]])]))]])]])))]]))]]]]))]])))]]])))]])])]]))]]]]]]]])))]))])]))])))])]))))])]])))]]]]])))])]]]]])]]])]]])])]])]))])]])))]]))])])]]]))))]))))])]])))]]))]]]])]])]])]))))))]))))])]])))])))]]]]]]]])])])))]]]]]))]])])])]]])]))])))]))))]])]]]]]]]]]]]))])]])]]]]))])]))]]])))])])]])))))))]])))]])]))])])]]])))]))])))]))])))]))]))]]))]])))])]]]]]))])])]]]]))]))]]]))])]])])]])]))])])]]))])))]]))])])))]])])))])))]]])]]]))]]])]])]]))]]]])]))))])])]]])])])]]]))]))))]]]]]]])])])]))]])]]])))])))))]]))))))))]])]])]]]]])]]])])]]]])])]]])]]])])]]]))))])]))]))])]]]))]])]]))))]])))])))]])]]))]))]])])]]]]]]]])]]])])]))))))])]])]])]))])])]])]]])]])])])))])]]])]))])))])))])]]]]]]])))])])))))]])]]]]])]]]]]])))))]]]))])])]])])))]))]))]])]))])]]]]]]]])]))))]]])]))])]]]]])]))])])))]]]]]))]]])]]))))]]))))]])))))]))]))]))]))])))]]]])])])))]))]))))]]))]]]))]))]]))]]))]]]]))))]]]])]]))]])))))]])])])]]))])))]]])))))]]))]]]]]]])])])]]))])))))]]])]])])]))]))])))]]]]))]])]))]])]]])]]])]))]]])))]])]])]])]]])))]))])))]]]))])]])))])))])])])]))])]]]])]]))]])))))]]])])]])])))])]]]]]]))))))))]]])])])))])]]])]))]))]])]]])]]])]])]])]])])]))]]]]]]))]])])))]]])]]])]))))]]])))]]]))]])))]]])]]))]))]]))))])))]]]]])])]])))))]]]]]))]]]]]]]])))])))]]))])]))])]]]))))])))]])])])))]))])]]])]]]))]]]])]))]])]]]]])))])]]])]]])])]]])]]))])])))]]]]]]))])))]))])))]])])])]]))]))))))))))))]]]]]]))])]]]]))])))]]])])])]]]]]]]))]]]]])]))))])))]]]))]]]]]))])))]))))])]]])))))])))])))]])))]))])])))])]]])]]])])])])))])])]]]]]]]))]])))]])]])))])]]])]])]])]))]]))))))))]))]])]))]))))]))]])])])))])]]]])])])])]])])]])]])]])))]))]))))]])]]]])]])])])])]])))]))]]))]]]]]]))]]])))])]))))])])]])))])]]]]]]]]]])]))))]]))))))])]]))]]]])])))]))]])])])]))))]]])))))]]]])]]))]])]))))])])]])]))])]]]))])))]))]))]]))))]]]]]]))]]]])]]))))]]])])))]])])]]])])])))))])))])))]]]]])]])))))])]]])])])]]]))))))]))]])]))]]]))])])]]]]]]]]]])]]])])]]))]])]))])])))))])]]])])])])))]]]]))])]])]])]]])]]))))]])]]]])]))])))]]]])])])]])))]))])))]))])]])]])]])])]))]]))]]])]]])]]]))]]))]))]]))])))]]]]])]]))]]]))])])]])])])]]]]])])])]])))]])])]]))]])))))]]))]))])])])]]]]])))]))]))])]))]]]))]]]])]]])))]]])]]]]]])))))]]]])))]]])])]))]]))]))))])]]]])]])))))])]]))]]]]))))])])])))]])])]]])])]]])])]]))]])])]))))]]]]])])]]))]]])]])]))]])]]))]]))]])]]))])])]])))]])))]])])])]))))])])]))]))])]])))))))]]]]]]))]])]]]]]]]])])])]])]])))))])))])])]]))])]))))])])]]))]]]]]])))])]])])]])))]])]))))]]]]]])]))])]]]]])])))))]])]]]))))))]])])]))))])]))]))))])])])))])))))])])])))]))))]))])])])))]]])]]))])]]]])]])])))])]))])))))))]])]]]))]]]))]]])]]]]])))])]]])]))]]))]]))])])))))))]]]))]))]]]))]])])))])]]])))]))]])]])))])]])])])])])]))))]]])]]]]]])])))))]))]]])))]]]])])]]]])))))]]]]))))]])))])]])]]]])])]]]]))]))])]]])))))])])]])))]]))])]])])])]]))]]]))]))])]]))]])]))]]]]])))]]))])]]))]]])]))))]]])]))]]))))]]])]])]])]))))))])]]])])]]]]]]]]]))]]]])])])))]))))))))]]]])]]])]))])]]])]]))])]]))))))))))])))))]))]]))))))))]]]])])))))))]))))]))))]])))])])))))]))]])]])])])))))])]])]))]]]])]]]])]])]]]))]]])])]]))]])]])))])])])))))))]))])]]])]])))]]))))]])]])])]])))])])]]]]]))))))]]))))))]]])))]))))]]]))]))]]])])])]))]]]]))]]]]])]))]))]]]]]]))]))]])))]])]))]]]))]]))]]]]]))]))]]]))))]))]]]]]])))])))]]]])]]))]])))]])))]]])]]])))])]]))))])]])]))])]))])])]]])])])])]))]))))])]]]])]]]))])))]])))]])])]))])]))))]))))]])]]))]))])))]))])]])]])]))])])]])])]]]]])]))])))])))))]]))])))]))]])]))])])]]))]]])))]]))]))]])]]))])])])]]]]]]))]])])]]]]])]])])))]]]]))))])))]]))))))]])])))])]]]))]]])))))])]]]))))]]))]]]]])))])]))]))))))]])]))]])))))])]))]))]])))]]]]]]))]))]))))]]]])))))]]))])]])))]])]]))]])]])]])])))])))])]]])])]))]])]]])]]))]]])]]))]))))))]])])]]))])])]]]])]]])))])]))])])))]])]]))])))))))]]]]))]]])))]])])])]])]]))))])])]])]])]))]]]]]]]]))]])])])))]])))]))]]]]]))]]))]))])]])]]]))]]))])])))])))]]])]])]))]))]]])))]))]]])]]]]])))]))))])]])))]]]))])]]])]))]]]])]])))))])]]]]))]))))))])]]))]]]]]))])]]]]])]])])]]]]))))]))))))])))]]]))]))]]]]]]])]))]])]))]))]]]])))]])]]))])]]])])]])]]])))]]])]]]]]]))])])])]]))]))]]]))]])]]]]])))])]])))))])]])])]))]])))])))]]])))]]]]]]]]])]))]]]]))])))])]))))))])))))]]))])]]]]]]])]]]]])]]]])]))]]]]]]))])]]])])]]]]]))))]]])]))))]])])])))))]])])]))]))])]]]]]])]]]))]))]]])]])]]]])]]])))])]]]))]]]])])]))])]))]])))])])]]])]])))))])]])]))))]))]))])]]]])]))])]]])]]])]])))]))]))])]))]])])))]))])))]])))]]))))))]))]]])))])])])])))]])]]]))])))])))]))]))]]))]]]]]])]]])))))]]))))))]]]))]))]]]))])]))]])])))]])]])]]]))))]]])]])))]])]))]])))))])])))]]))]))]]]))]))]]]])])])]))]])])))]))))))])))]]]))]]]))]]]]]]])])]]]]]]))]]]]))))))])]]]]))]])]))))]])]))]]]])]])])]])]))]]]))]]]]])])])])])]]])))]))]]))))]))]))))])))))]])]])))]])])))]))))))])]]]]]))]]))]])]))]]]]]))]]]))]]])]]))])])))])))))]]]]]]])])]]]))]))))))]])])]]))]))))))])])]])))]]]]]]))]]])]))]]))]])])]]]))]]]]])))]]))))]]]))))])))])]))))]]]))))])]])))))])))])]])))]])]))))))))))]))]])))])])]])]])]]]))]]])])]]))))]])]))))]]])]]]]]]]]))]])])))])))))])])]))]]]]])))]])])))])]]]])]])))]]])]]])]))]))])))])]]]]])])))]]]))]]])])))))]])])))])))])))])]]))))]]]])]])]))]]]]))])))]]]]]))])]))]])))))]]))]))]))))]])]]])]))])]]])))]))]))])]]])]]))])])))])])]]]])]]]])]]))]]))))])]])))]]]])]])]))])))]))]]]]]))]))]))])))))]))]))))))]))]]))]])]]))])])]])]]])]]])))]]]])))]]]])])]])])])]]))))]])]])))))]))]]))])))))]])))))])]))))))])]])])))])])]))]]])]]]))]])]])]])]]])]]]))]))))]])]])])])]))])]]]]]))]))]])))))]]])))])))]]]]))]))]]])]]))]])]]]]))]]])]])])]]]))))])]]]]])]])]))))]]]))]])))))]))]))])]))]]))]])]]]]]]))])]))])]])))))))])]]])))]])))]]])])))])]]]]])]))))]]])])]]))))]))]))]])))))])]])]]))])))))))]])])]]]])])))])]]]]]]))])]))))]))])]))))]])]]]]]]))])))))]]))])))]))]]]]))])]))]])))]])]))))]))]]])]]])))))])]))]]))))])])))])]])))]))))]]]]])))]]])])]))]))]))]]))]]])]))))]])]]))]]))])])]])]])]))))])])]])])))]]))])))]]]))]])]))]])))))])]])]]))))]]))]))])))]]]))]))]])))])])]])]])])]])])])]])])]]]]]))]])])]]])))]))]])]]))])))])]]]]]))]])]))))))]])]))]))])))]]]))]]]))]]]))])))))]]]])]))]))])]]])]]])]])]]])])))))))])]])])]]]))))]))]])]]))]]]]]]])))]]])])))]))]])])])]]))))]]]]))))]])]]]))))))]]]]]))))))))]]]]])])])])]]])]]]))))))))]])]]])))))]])]]])]]]]]]]))])]])))))]))]])]])])])]])]])])]]])]]]]])))))])])])))]]])]]])]])]]]])])]]))]]]])]))])])])))])]])]))]]])]]]]])]]]))))))]])))])))))]]])))])))])]))))))]])))]]]])]]]))]))]]))]])])))))]]))]]]))))])]))]))))))]]]]])])]]])])))))]]]))]]])))])]))]]]]]]]])]])]])))))))])]]))]]])]]))]])]]]])])))])]))))]])]))]))))]])]]]]]]])))]]]))]))]]]]]))]])])])])]])))))])]]))]]))))])]]))])])])]]]))])]))))])]])]))))]]])]]]])]]]))))]))]])]]))))))]]]]))])))]])]]])]))))]]]]]))))])))]])]))]]])]]])]))]])))])]))])))))])])]]])])]))))]])]))]))))])))]])])))]))))])))]]])]]])))))]])]])))))))]]))]])))])]))]]))])]])])))]])]))]]]]]]]])])]]])]]]])]])]])]))])]))])))])))]]]))))]])])))]]))]]]]]])]]]]])))]])])]])])))])])]))]])])])])]]])))])))]])]])]]])]]]]]))))))]))]]]]]])]))]]))]])])]]])])])]]]))]]))])]))]])))]]))]))]]])]])))))))]))]])]]]])])])])])]))))]]]]]]]))))])]]))]]))])]]]]]))])]))]]))]])]]]])))])]))])]]]))]]]]]]))]]]))])]]])]]]]])]]))]])]))])]]])])])])])]))))]))])))]))))))]]]]])]])))]))))]))]))))])])))]))))))]))]]))))]]))])])])]])]]]]))]])]))])]]))]]))]]]))]]]])))))]))])]))]))))])]))])])])]])]]]])])))]]]))]]]))]))))])))])]]))])]])]]))]])])]]]))]))]))))]]])))]]]]]]])))]]))]]))]]))]])])]]))))]]])]])))]))])))]]])))]])))))]]))])]))]]]])])])]))]])]])])]]]]]])]])]]]]]))]])]))))])]])]])))])]])]]]]))]))))]]))]]]))]))))]]]]))]]))]])]]]))))))))))]]))))])]]]))]]]))])))])))]])])))]])])]])))))]))]]])]]]]])))])]))]]]]))]))]]))]))))))))))]]))]))]]]]]))]))])]]])]])))))]])))]]])))]]]))])))]]])]))]])])]]]]))]]]))]))]]])]))])])]]]]]]]]]]]))])]])]]]))]]))]))))]]])])])]]]]]))])])))]))]]]]])))])]))]))]]]))))]]]])))]]]])]))]]]]]])])]))))])))]])))]]]]]])]]]])]]])))]]))]))]]])]]]])))))]]]]))]]]]))))]]]]]]]))])]])]])))]]]]))]))]))])))]]))))])]])])]]]]]]]]])])]]]])]]])]]]]]]]]]]))])]))))])]]])]))]))]))]]]]]]))]))])))]])]]]]]])))]]))])])])])])])]])])]])]])]]))))])]])]])]]]])])])]]]))))))]])]]]])]]]])])]]])])])]]))))))]]])))])))]]))]]])]]))]))]]]]])]]))))]]]])]])))]]]])))))])]]])]])))]]]])])]])))]]))))])))])]]])])])]]]]]]])))]])]))])]]))))))]]]]])))])]]))])]]))]]))]]))])]]]]])]]])])]]]]]]]]]))])]])]])))]])]])]]]]]])]]]))]])))))))))))]]]])]])]]])]))])))]])])))]]]]]]]]])))]]])]])))]])]]]])))]]]])]]))]]]]))])])))])]]))])]])]]]])]]]]]]]])])])])]))]))))]])))]])]))]))]))])]))]]]))])]]]]]]]))])])))]]])))]]))))))])))])))))]))])]])]))))])))])]]]])]])])])))])])))))]]])]))))]))]))))))])]]]])])]]]))])])])]]])]])])))]]))])]]])]]]]]))]])])]]])])))]])))]])]]]]])))]]]])]]])]]))])])]]]])))]))]]]))])]]]])])))]]])]))]]]])))))])))]])))))))))]])]))]))]])]))])))))]]))))))])))]]]])])))]))]])])]])])]))))]]))]]))))]))])]]]]])))]]))])]]))]])])]])]))]]])])]]]])]]]]))])])]]]]]))])]])))]))))]]])]])]])])]]])])]]))])]]]]])))]))]]))])]]]]]]]])]]]]]])])])]])]))]]]]]))]])))]]])))))]))])))]])]))))]))]]]])])]))]])]])))]))))]])]]]]))]])])]))])]]]])))))]]]]]]))]]]]]])])))]))))))]))]]]]])))]]]])])))])])))]])]]]]]])]])))))])])])]]))]]))])]]]))])]]))))])])]]])]]])])]))])])]])])])]))]))])))])]]]))))))]]]]])]))]])])]]))))]))])]))]])))])))])])]]])))]]]))]])])]]))))]])))]))]]]])))])]])]]])])]]])]])]])))])])]]]))]]])]]]]])))))))])]]]]]])])]))])))])])]]]]]])))]])]]]))]])]]]]])])))]]))])]]])]]])]])])]]))]])]]]])]]]))))]])])])))])))])))]])))))])]))))]]])]))])]))])]]])]]]]))))))])))))]]]]])]))))])]])))))]])))]]]])])]]]]])])])]))]))))]])])]]))])]]))]]]]))))]))])))]]))])]])]]]))]]])))]]))))]]))])]]])]]])]])])]]))]))]]))]]]]]])]]))])))])]]]]))])))))]]]]]))]]]])))]])])]]])]]]]]]))))))]]))))])))))]])]))))]]])))]))])]])])))]))])]]]))])))]])])]]]])]]]])])]])]]]))]]]]]]]]]])]])]]))]])]]))]]]]))]])]]))]])])]])])))]))])]])))]])))])]]])])])]]))]))]]]]])))]])))))]]]]]))))])])]]])]))]))]]]]))]])])]])]])])]]]])]])]))]]))]))])]])])))])]))))]]]))]))))))])]]))])]]])]]])))]]]]])])]]]]))]]]]])]]]])))])]]]))])]))))))]])]])))))])]])])]]])]]])))))]]))))]])]])])]])]])])])]])))])))])))))))))))]])])))))]]]]))])]))]]]]]]]))]))]]]]))])))))))]]]])]]])]]))]])]))]]))))]))]]])])]))]]))]]]]])])))]))))))]])]])]]))]]]))]])]]]]))]]])]))))]])]])))])]))])]]))])))]]])]))]))))))])]]))]]])]]))]]])])])])]]))])]])])]))]]])])]])))]))]]]])]]]])]])))))))]]]]]]])]])))))]]))]))]))]))))]])]]))]]))))])]])]))]))]]))))))]]])))]]])]]))]]]])])])))))))])))]]])])]]]]]]))]]]))]]]]))])])]])))]]])]]]]]))]))]])]]]]]))))])]]]))]]])))])]))]]]]])]))))]]]))]]))]])]))]))]])]]]))))))))))])]]])])]])))))]]]]])]])]))]])]]]]])])]])]))]]])])]]])]))))])))]]])])]))))]])))]]))]]])))])])))])]])]))))))))]]])])))]))))])]]))))]))]])])]]])]]]))))))))))])]))))]])]]]]]]])]])]]]]))]]))]]]])])])]])]]])]])])]]])]]]))]]])))]]])])])]]])))])))))]]]))])])))]))])])))]])])]]))])]])]]])])]])))])))))]))]))]]]])]]))]))]))])))]))]])]])])))]))))]]]]]))])))]))]]]])]])])])]))]]])]))])]]])]]])))]]]]]))))])])]))]))]])))])]))]]]))))])]]]))])]]]]]))])]]]))])))])]]])]]])]])))]]))]]]]])])))]]))))]]])))))]])])))])]])]]))]]])])])]]]))])]])]])])))])))]]]])))]))])]])]])]])]]])])])])])]))]]])])])]])]]))]])))))])])]))])]]]]]]]))])]]])]))]]]]]]))))]]))]))))]]]))])]))))])])])]]]]])])]])))])))]]]])]))]]]))]])]))]))]]]))])])]))]])]]]]])])))])]])))))))])]]]))])])]]])))]]]]]]))))))])]))]]]])]]])])))])))]]))])]]]])))])))]]))]]])])]])]])]))]])]])])))])]))))])]))]]])])]))]])]])))]))])))]]]])])])]]])]])]))))]]]])]])]]))]]]]])])]]]]])]))]]]]])])])))])])]]])))])))])]))])]])))]))])]]])))]]])]])]])))]))]])])]])]]])]]]])))]]))]])]])])]])])]]]))))])])]]))])))]))]]]]])]])])))]]]]]]]]]))]])]]]]]])))]]]])]]]]]))])))))]]]])))]])]])))))]]])])])]))]]]]]))]))])]])]]]])]]]]]]))])]]])))]]])]))]]]]])])]])))))]]]))])]]))])]]]))])]])))])]]))))])]]]]])]]]]])))))))))))))]]))]])])]]])))))]])])])]]])]]))]]])])]])]))])])))])]])]]])))])])]]]))]))])]))]])]])]]))]]))))])]])])])))))]]]))]])))]]))))]])]])))])]))]]]]))]])]]])]])]]))))]]])))]])])]))]]])))))]]]]])]])])]])))]]))]]]])]]]]]]]))]]])])))]]]]))])))]]]]]]]))))))])])]])]))])])]])]]])]))])]]]))]])])])]))]])]]])))])])]]))))]))))])]]))])]))]]])))])]))]]]])]))]])))]])]))))])))]]])]]])]))]]])]]))))])]]]]])])]]]))])))))]])]]])))]]]))))])]]))]]]))))))]]]))))]])])]])])])]])]])]])])]])]))]))])]]])]]]])]]]]])]])))))))]))]]])]])]]]]]]))])]])])])))]])]])]])))]]))]]]))])))]])]])]]])]))]])])))))]))])]]]))]])]))])]]]]]]]]))))]])])))))])))))])]]]))]]]]]))]))))))])]])]))]]]]]]]))])]])))])]]]))])]])))))])])]]]]]]])]]])]))])])])]]]])])))))])))))))]]]))))))])]])]))))]]]])]]]])))))]))])]))])])])]))])]))))]]))]])])])]]]]))])]]))))]))])]]])]))])])])))])])]])))]))])])])))))]]])]))]))]])]])))])]])])))])])]]]])))]))])))])])])))))]]])))]))))))]])]]]]]))]))]]]]]]])]]]]])]]])))))]]]]])]]]]]]))])]]])]]])])))]])))]]]]))))]))]))]]]])])])])]])))]]]]]]]]]])])])]])])]])))]]))))]])]))]]]]))))]]))))))))]]]]])))))))]])))])])])]))])]]]])])])]]]])]]])))])])]]]))])])])]])]]])])])))))])])))]))]]))))])))))]])))])])]])]])]))])))))]])))]))))]])]]])))]]))])]]]]])]])))]))]]))]]])))]]]]]])))]]))])))])]))]])]]])]]))])))]]]]])]]]))])])])))])))]])])]]]]]]])))]]]))])])])]])))])]])]])))]])]]])])))))]]]]]]])))]])]])])]]])]]])]])]])))]]]]))])])))]))]]]]]]])]))))))])]]]]])))]))]])))]))))))]))])]))))))]]]]]))))])]]]]]])]]])))])]])]])])))]]])]))])])])]))]]])])))))))]]]])])]])])))])]]]))))]]))])]])))]]])]))))))]])))]))])]])))]))])]]))]))))))]]))]]])))]]]]))))])]]]])]]]]]]]]))]])))]))]))]]])))]])])]]])])]]))])))]])])))]]))]])]))))))]))]]]])])])]))]))))]]])))))]))])))]]]))))]))]])))])])]])))))]]))))))]]])]]]))))])))]))]]])]]]]]))]]))))]))])))])))])))])]]])])))])]]]])))))))]]]]]))]]]]]])]))))]))]))))])])]))]))])))])])])]])]]])]))])))])]]]]])])))])))])]])]]]]]])])]))])]))]]]]]])]])]))])))))])))))]))]))]]])])]))]]])))]))])]]])]]]))))]])))])))))]]])]))]]]]]))]))))])))]])]]])]))))]]]]]]))]]]]]]]))))))]))])])])]]]]]))))])]))))]]]])))]]]]]))])))]]])])]))]]])))])])))])])))))))))])))]]]]))))]]]]]]))]]]))])])]])]])]]]])]))])]])])])))))]]))))]]))))]))]]])]]])))]])]))]]))]]]))))]))]]]]]]]]])]])])])]))]))]]]))))])])])]]]]]))])))])])]]])]]])))]))))]]]]]))]])))]))))))))]]))]]]]])])]))))]]))]]]]])]))]))]]]]]]))]]]]]]])]])]])]]])])])])]))]])])])))]])))))]])]))]]]])]]))])]]])])))]])]]]])])))])]))))]]))]]]))))]))]]])))]))])])])]))])))]]))]))])])))]])))]]])])])])]))]]])]]])))]]]))])))]]]]]])]]))]])]]])))])]))]]]]))]]]))]))])])]]])]))])]]]]]]]]]])])))))]])))])))]]]))]]])]])])]])))]))]])])))))]]]]]]])])]))]]))]])]])))]))])))]]])]]])])])]]]))]])]]]))))))]])])]))]))]]]]]])))]]]]))]])]]])]]]])]]))))]]]))))))]))))])))]])]))]]]])]]]]])))]]])])))])])]]]]])]]])])])]))])]])))])))]])))]])]])]])]]])]))]]))]])]]))))]])]]))]]]]))))]]]]))]])]]]]]])])]]]])])]]]])]])])]]]])))]])))]])]]))]))]]))]]]])])]]]))))]))))]]]]))))]]])))]))]]])))])]]]]]))])))]])])]))))))))])])])]))]))]))])])]])]))))])]]]]]))))))))]))]]]])))))]]]])]))]))))]))]]]])]]]])])])]]))])]]]])))])]]])))])]]])]])])]]))))]]]]))]]]]))])]))))])])]]))))])]])])]]))]]))])]))]]]]))]]]])]))])))]))])))))])))]]]])]))]])]]])))]])]]]]]])]])))])])]])))))))])]]))))])]]))))))]])))]]))))]]))])])])]))])]))]))))])))]]]]])]))))])))]))))]])]]])]])))])]]))]]]]]]])]]))))]))])])])])]))]))])]]])])))))]))])]])])))))]]]]))]]]]]))])))]))])])]]))]]])]]]])))]]])))]]]))))])]])]))))))))]]]))]]))))]]]]]]))))]]]]))]])])]]]])]])]))]]]]]])]]]))))]])]))))]]]]]]])]]])]])))])]]))]]]))])]])]))])]]))))]]]]))]])])]]]]))]])])]))]]]))))]]]]]])]]))]]]])]])])]]])]])))]))])))))))]])])]]))])])))])]]]]]]])))]]]]]))])])))]]]]]))]]]]]]))]))]])])]]]]]]]]]]]]]]]))])]])))])]))]])))]))]))]]])])]]]))])]])]))]])]]]))]]))))]]))]]]]]]])))]]]])))))))))])]))]]))]))))]))])]))))))))])]]))])]))))])))]]]]])]))]]])])]])))))]))]]])])]]))])])))])))])]]]]])))]]]))])]])))]))))))))]]]]))]))])]]])]]))]))))]])]])])])])])))))]])))]])]]]))])]))]]])]))]]]))))]]]])))))])]]))])))))]))]))]))])]))])]]))])])))]]]))))]))])]])]]]]])]]]])]])))])]))])]])]]])))]]))]))])]))])])]])])])]]]]]])])]])])])]))]])]))))]))]]))))])]]))))])])])]))])]]))])])]))]))]))])]]])]))]]]]))]))))]])])]])]))])])))]))]]))))])))))]]]]))]]])])]))])]])])])))))))])])]))])])))))]])]))]]])])])])]])]])))])]]]))])])])]))])]]]])))))))))]]]]]])])]]])]])]])))]]]])]]]))]])]]])])]))]])]]]])])])]]]]))]))))))]))]))))]))]]])]))))]))]))])]])]))])))]))))]]])]]]]])]]]]])))))]]))]])))]))])]]]))]])])))])])])])])]))])))])])]))]]))]))])])]))))])])])))])]])]]])]]))))]))))]]))))]))))))]]))]]))))])]])]))])]])])]])])]))]]))]])]))])))))]]))]])]])]])])]]]])]])]]]]]))]])]))]]]]]]])]))))]]])])]])]])))))))]]])))))]]]]])])]))]]]]])])]]))]))]))))]]))]]])]))]]))))))))]))))])]]]]))]]]])]]))]]]])]]))])]])])]])]])]]])))))]]]))))))]])]])]]]]]])))))))]]]]))]])]]]))]]]]])))))]]]))]]]]))]])]]]])]))))]]))]]]]))]]]]])]]]]))]))]))]]])))]]))]]]])))))]))]]))))])]])))))]))]))]])]])])))])])])]])))]]]])))]]])))]])]))]]]]))])])]])]]])])]]])))])]))]])]]))))]]]])])]]]))])))])]))])]])))))]])])))]))))))]))))])]]))]]]]]))]]))]]]]]))])))))]))))))))])])]]]))]]]])))]]]]])))))]))))]]])]]]]))])]))])))]]])]]])]])])]]]))]])])))])])]]]])]])])]]]))))]]]))])))))))]])]])])]]))]))]]]])])]]])])))))))])])]))))]])))])]]))]]])])])])]]))])])]])])))))))))]]))))]]])])])])))))]]])])]])))])])])]]])]))))])]]])]]))))])])])]])])])]]))]))]]]])]]]]))))]))])])))]]])))))])]])))]]]))]]]]]]]]])))))]]))]])])))))]]]])]])]]]]]]]]])]])]]]]]))))))))])]]])))])]]]))])]])]))))))]]]])))])]]]))])])]]))))))))]])))])]))))]]]]]))]]])))])])]])))]))]))))]]]]]))])]]])])))])]))))))]])])))]]])))))]])))]))])))])]])]))))))]]])))]])]]]))])])]))))))]))]]]]))]]))]))]]])))))))]]]]))])]])))]))))]))))]]])))]]))]]))]]]))]]]]]]]])])]))])]]))]))])]]))])]]))]])]])]))]))]]]]))]]])))]))]]])])])]]])]]))]]))])))])]]]))]])]]])]))]]]))]]]])]])]])]])]])])]]]]])])]]]]])))])])))]))]]]))]]))]))])])]]])]))]])]))])]]])]))]))]])])])]))]]]))]])])])))))]]]]]]]]))))]]])))))))])]]]]]])))])))])]]])]]))]])))]))])))))]]]]))))])))]]]]))))])]))]))])))])])]])]]])]])]]))))))))])])]])]))]]))])]])]])))]))]]))])]))])]]]))]])))])])]]))))]))))]]]])]]])]))]])]]]]])])]]]]]]])))]])]]]]]]]))))))]))]))])]]]])]))))])]])])))))]]))]])))]])]))]]]))]])])))))]]]]]]]]]]))]))))]]]))]]]]]])]))]])))]])]]])))))))]]]])])]))])]]))])]))]]]))]]]]])]])]])]]]))))]]]]])))]])]]))))))]])))])))])]))])]]])))])]])]])])))]])]]])]]])))))))))))]))])])]])])))]]]]]))))]))]))))])]])])]]]]])]))])]))]])))])))]]])]))]]))])])))]])]))))])]]]))]]))])))])]))]))])]]]))]]))]))]))]])])])]))])]]]])]])))))])]))]))))))])])))]))]]])])))])])]]])))]])]]]])])))])]))))])])]])))]]]]])]]))]))))]))])])))]])))]]]]])]])]]]))))))))])))))])))])])]]])])])])))]))))])))))])))))]])]]]))])))])]]]]]]]]]]]))]])]])))]]])]))]]])]]])))))]))]]])])))])]))])))]))]))))]))]]))]]]]))]))))]])]]]]])]]])])))))]]]))))]])]]])]]]]]))])]]]]])]]]]])]))]))]])]))]))))])]))]]))))]]]]]]])))]))]]])]))))]]))))]])])))))]]))])]]]]]])))))])))])]]])))])]]]]))]))])]))))))]]]]]]))])]]))])))))])))]))]]])]))]]))])]]]])]]))])))]])))]])]]))]])))])))]])))))))])]]))]])]]]))]]))])])])]))])]])))])])]]]]))]]]]])]))]))]])]]))])]])])]])]))])))]]])))]])])))])))]])))))]))])]])]]]])))])]))]]]])])])))))]))))]]))])])))))]))]]]])]]])]])]]))))]]]))]]]])]])]]]])))))]])]]]])])))]]]]])]]))]]]))])]]]))])]]])]])]])])]]))])]]])]])])]])))]))))))]])]])))))]]])))))))))]])))))))))]]]])]]]])))]]])])))))))))])]]]))]]]))])))])]]]))))]))]))))]]]]))]]]]]))]]])]])])])])])))])))]))])]]])]]))))])]]))))]])]]))]))]])]))])))]]]]]))]]]])])])]]]))])]))]]]))]]])]]])))]])])]])]]))])]]))))]]]]])]])]]))))])]]))])]]]))])))))))])]))]])]])]]))])]]]))))])))]])]))]])]]]]]]])]]]]))))))]]])])))])))))]]])]]))])]]]])]]))]]]))))))]])]])])])))]]])))])]])])]))))]]])])]]])])))]])])))]]]])))]]]))))))])])))]]))])]]))))])]))]])])))]))]]]])]])))]])])]]]]))])]))]])]))]])))]]]))])))])]]))]]))))])]))]))))))]])))]))])]]]]))))]))))]])])]))]]]])]])))])))])))])]]))))]]])))])]]))]))))))]))))))]))]))])]))])))]))]]]))))))])]]))))])]]])]]])]))])]))])]])]]))])]]))]))))]))]]])))])))]))])))))])]))]])]]))))]]])))])))])]))])]]]))]]]]))])])])))]]))))))]))))))])))])])]]]])]]])]]])]]]]))))]]]))]]]]]]))]]))]])]]]))]]))])))]))])]]]))))]])]))])]]))]))]]]]]]])])))]])]]))]])])))))]))]]]])]])]])))]]]]]])))]))]]))]))]]])))))]])]]]])]])))))])]])])])])))]))))))))))])]))))]]]]))]]]])]]]])])))]]))]]])))])))])])]]))]]])])]))]]))]]))]])]]))))]])))]))])))))))]]))))))])])]]))]]])))))])]]]))]))])]))])]]))]]))]]))))]]])]))])])))))))]]]))))]))))])]]))])]))))]))]]))])]]]))])]))]]]))]]))]]))])))]]])]])]]))]))])))]])]]]))])]]]])])])]))]])))))]])))]))]])])))]))])))]]])))]))])])]])])])]))]]])]]))))]))]]])])))])])])]))]]])]]]])]])))])]])))]]]]])]]]]))])]]]))))]]])))))]]])))]]])]]])]]]]]])]))])])]])])))))]])))])]]))])]])]]))]]]]))])])))]]]]])]])]))]]])]])]]]])])]])]]])]))])))))))])]]))]]])]]]])))])]))]]])]))])]]]]]]])))]]])]]]))]])]))]])))]]])]))])])])])]))])))))]]])]))))]))))))]])]])))])))))]]]]])))])))]]]))]))]]])])))]]]])]]])]]]])))))))]]]])])))))]]])]]]))])]]]))]))])]]))]]))))))])]]]])))]]])]]])])))])])])])]])))]])]]))))]))))]]))))))]]))]])])]))]))]]]]]))]]]))]])))])))))])]]])))])])))])]]])]]]])])))]))))]])))]]]]]])])]])))))))))]])))]])))))]))]))]])])]))]))]))]])]]))]])]])]])))])]))]))))]])])))]]))))]]]]])])]))])])]]))))]]]])]]])]]]])])]))]])]])))]))))])))]]]])]])])))))]]]])])]))))])]])))]]))))]]))])])])])])]])))))]))])])))))]))])]))]))))]]]]])])]])]]]])]]]]]))]))))]]])]])])]]])))))]])]]]))))]])))))]))]]])]))])])))]]]))]]]]))])])))])]]]))])]]]))))])]]])]))]))])))]])))])))))])]]]))]])]])]])]])]]])]])))]]]]])])]])]]))))))))]]]])))]))]))])))]))]]])))))]]])]]]]]))])]]])]]])]]])))))]])])))])]]]])]))])])))]]]])]))])])))))))]])]]))))]]]]])))])]]]))))]]])))]]]))))]))]]])))])]]]))])]]))]]))])))]]]])]]))])]]]))]]]]]])]])))]]]]])]))))])))]]])])]))])])]]))]]))]]]))]])])])))]]))]]]]])]]]]])]))))]]]]]]]))))]))]])])))]]))])]]])))])))]]]]])]))])])]]))]])]])]]])]])]]]]]])))))))])]])])])))]]))]]]])])]))]]))]]))))]])]))])])]]]]))]])]]]))))]))]])]]))))]]))]]])]]])]]]))]))]]]])]]])]))]])]]])])])])])])]]]))])))])))])))))]))]]))]))])]]])])))]))]]]]]))]]]]]]]]])])]))]])])]]))]]]]]]])]])]])]])]]])])]])]))]])]])))]))]]))]])]]]]))])]]))]))]])))]]]]])])))))])]))))))]])))])))])))])])]]))])]]))))]))))]])))))]]))]]])]]]]]]]]])])))]))])]]]))))))]]))))])]]])]])))]])))]]])])]])]))]]])]]))))]))])])]))))]))]]))))])))]]))]))))]])]]]]])])]]]]]]]])]])))]))]])]])])])]))])])))]))))))))))]))]))]]]])]]]]]])]]))])]]]]))]]))])]])]]]]]])))]]])]]])]])]))]])]))))))])]])]])))])]]))])))]])))]]])))))]]])])]))))]))]]]])]])]))]))]]))])])]]])))]]]))))))]))]))]))))]]))))]))]]]])]]])]]]]]))]])])))]))]))))])]))]]])))))))]]))))]]])))))])]]))]]]))))]))]]]]]]])))))]]])))))])])]]]])]])]))])]])])]))]]]))))]]]])])]])]])])]])])]]))))))]]]]])]]]])]]]])]])]])]]])))]]]]]])]]]]]]]]))))))))]]]]))))))])))])])]))]]))]]))))))))]]])])]]]]])]])]]]])])]]))))))))])))])]])]))]]]))]]]]])])])]))])])])])]])]])]])]]]))]]]])]))]))]]]))])]]]]))))])])]]]))])]]))]])]]))]]))))))]))]]])))]]))))))]]])]]])]]]]]]])]))))))]))]))))))]])]])))))))))])])))]]]))))])]]])]]])]]))])))]))])]])])))]]]]])]])])])]))]]]]]))])))))]]]]]])))]))]]]]))]])]))])])))])]))])])]])])]))]]]]])]]))])]))))]]))]]]))])]))]]]])))))))))]))])]]))))]])]]]))]))))]])))]))]]]])])))])])))])]]))))]))))]]])]]]]))])]]))])]]))])]]])))]]]]])])])]]]]]))]]]]]]]])])])))))]]]])]]]]]])]))))])])))])]]]]]])))]]])]]]]])]])))]))]]]))]]))]]]]]))]]))))]]])])]])]]]))))))]]))])))]))]])))])])))])])))]))])))])]])]]]))])))]]))])]))))))]])])]]])])])])))]))])]))))]]))]]))])]])]])))]))])]))])]]))])]))))]))))])]]]]])]]])])]])]))])])])]]))]])]))]))])])))]])]]))))))])])]])))])))))]]]))]))]))))))])])]))))))))]))))])))])])]))])))])]]]]]]))])]]])))))]))))]))])]]]]]))]))]])]))])]]))]))])]]]]))]])))]]))]]]]]))]]]))]])))))])]))]])))]]))]])))))]]]]))]]])]])))]))))]]))]]])))])]])])])]))]])]]]]])])]))]))))]))]))]])))]))])]])]])))]]])])))])))))]]]]]]])]]])]])]]))]]))]])))]]))])]]))]]]])))])))))]])]))))))]])]])]]])))])])]]]])])]]]]]))]))])]]]])])))])])))]))]))))))]])]]]))))]]))]))]])]])))])])]])]])))))]]]]]]))])]])))])))]))])))))))])]]]]]))))]]))]]]]])]))))))])]]]))])])]))]))]]))))))))]])])])))]])])))]])))])])])]))])]]])])]]])))]]))))))]))))))]]])]))])]])))]])])]]))))])])))]]]])))]]])])])]]])]]))]))])])]]))]])))]]])])]])]))))]))))))]]))))]]]])))]])))]))))))]])))]])])))]]]]))]]]]]))]]])]])])))])))]]]]))])])]))])))]]])))])])))])])])))]]]]]]))))]]]]]])])])))])]))])]))])]))])]]]]]]))]])]]])]))])]))]]]]]]]]))]]]]]))]]))])]])))]))]])])]]])))))]]))))))])])]]]))]))]]]])]]]])))])]]))]]])]])]]))]])])])]]))))]]]]))])))))])]])))]])])])]]]))]]])])))))])])])))))]]])]]]])]]]]]]))]]])]]]])]]])])]]])])]]]])]])]]))]))])]))]])))))]])))))]]])]]]]]])))]]]])))]]]))))]])]])])]]]]))))]]])]]))]])]))))]])]))]]]]]))]]]])))]))]))))])))]))]]]])])]]])]])))))]]])]))]]))])]]))]]]]])))))]])]]])])])]]])]]]])))])])]]])]]]]])]]))]]]])])])))])])))])]]]]]])]]]]))))))]]))]]))]]])))]]]))))])))]])))))]]]]]]]]])))]])])]]))))))))]]]]]]))))])])))]]))]]]]))]])))))]]])))]]]))]]))])]]])))]))]]]))]])))]])))))]]])]))])])))))])))]]))]]])]]]]])]]])))))]]))]))]]]]))]]]]))]]))))])))))))])]))])])]]))])])))]]))))))]]))])]]])])]))]]))])))])]]]])]]))]]]]]]]))))))]))]])]]]]))]]]]]]))]])))))))]))])]))]]))]))]])])]])))))])]]]))]))]]]))])))])))]))]])]]]]]))]])]]]]]])]]]))))]])))]]]))))]])]))]])]))])))])))]]]])))))])]])]])])])))])]])))]]])]))])])]]]))]))))]))])])]))])]))]]))]]]])))])])])]])))]))]])]])))]))]))))]]]))])]]))]]]))))]])]))]))])])))))]]))))]]]))]])]))]]])))]]]]])]]])]))))))]])])))]))))]]])))))]))]))]))))]))]]]]]]))]])))))]])]]]]))])]]]]])]]]]])]]]]))]))]]))]]])]]))]]])])]]])))]]])]]])])))]]]]]))))))]))))])])]]]]])))]]))]))))]]))]]])])]]]]))))]))))])]]))]]]])]])]]))]]]))])]]]]]])])]))))))])))]]])]])]]))]]]))))]])]))])))))))])))))])]])]]]))]]])]])]]))])]])])))]])]])]])))))))]]]])]]))]]])))]))]]]))])]]]])))]]]))]))])]))]])))))))))])))]))))]]]])]))))]])]])))))))))])]]]])]])])])]))]]]]]])))])]]]))]]))))]])))))])])])))))]]))))]))))])])))])])))]]]])]])))])]]])])))]))))))])))))])])))])))]))]]))])]]])])])))])))))])]])]])]]]])))]))]])))))]]])]])]]])]]]]]]]])]]))))]]]])]]]]]])))))]))])))]))))]]]]]])))])]))]))]))))])])))]]]])]])])]))))]))])]]]))]]))]]))))))))]]]])])])])])]))]))])]]]]]]]]])])])]]])]]]])]))])]))])]))])]]]))]]]))))]]]])]]]))])))]]]]]])])])))]]]])]))]])]]]))])])]]))]]]]))))))]])]))))]))])]])]))))]))]))]))))))]]]]))))]]]]]]]))))))])]))))]))])]]])])))]))))]])))]]))])]))]])]]]))]])]))]])])])]))])]])))]]))]]])])]]])]]]]]]]]]])]]])))])])]]]]))]]]])]]])))])))]])))))]))))))]]])]))]])])))]))))]]))]]])))])])])])))))))]]])]]])]]])]))]]))]]])))]])]]]]]]]]))])])]]]))]]]))]]])]))])]))]]]]]]]]]]]])])))]])]))]]]))]]))]])]])])))]]]]]]]]])))]]]]]))]])]))))]]]]]]]])))))))]]])]])]]]]))]]]]])]))))))]]]])])]))))))]])]]]])]])]])))]]]]))))]]))]]))]]])]]]])))))]))])])]]])]])]]]]))]]))))))))))]])))]))])))))))]]])]])))])]))))])])]))])))]]]]))]]))]]))]]]))]]])))]])]])]]]]))]]]]))])]])]])]))]))))])))]]]]))])]]])]]))))))]])))))]]]))]))]))]])))))]))]]])]))]]]]))]))])]]]))]))))])))])]]))])]]])]))))]]]])])]]])]])]])]]])]])))]]))])]]])]]])]))]]))]])]]]]])))]))])))]]))))]))])))]))]))])))))))))))))]]])]))])])])]])]))))]))]]]))])])]]]])]]))]))])]))]]])]]]))])])))])]]))]]])))]])])]]])]]])])])))])]])]]]])]]])))]]]]])]]]]))]])])]])]]]))])))])]]])))]]]]]]]])))]]]])]]]))]])]])]]))]))))]))]))]))]))])))))]])]]]])]])]]))))))]]]]))])]])]])]))]]]]]])]])]]])))]))])]))]]]))])]])]]))]])))]]]]])))]])]]]]]])]]]]))])]]))]]))))))])]))]]])))]])))]])]]]))])])])]]]]]]]))])]))))])])]]]))))]])))]]))]]]])))]]))))]))))]))]]])]]]])]]]]]]))])]])]])]))]]))])])]))])))])]))))]]]])]]]]])]])]]]]))]])]]])])])))]]))])]]])])]]]]])))])]]]])])])))]]])]]))))])]])))]]]))])))))))])]))])]])))]])))))])]]))])))))))))]]]]])]])]]))))))]]]))]))]])))))))))])))]])])])))))))]])))))))))]]]])]]])))]])])]]])]]))]]])]])]])]))]))]])))]))])]))]]]])]])))]]]))])]]]])])]]]]])]])])]])]))]))]))))]))]]))]]])]])])]]]])])]]))))))]))]))]]]]))]]))]])]]]]]]]))]]]]]))]]]]]])])]))]]))])))))))))]]))])])])]]))))]))]]]])]]])))))]]])]]]]]])]])))])]])]))))]]])))])]]])]))))]]]]]))])]]]]]])]]]))])))]]]]]]]]))]]]))])]])]]))))]]]]]])))))))]]))]))]))]]]))])]]]])]))]))]])))])]])]])]])]]]]))]]))]]]]))]]]])]]]])]))]))])]]]]]]]])]])))])])]]]])])]])]])]])))]])]]])]]]))]])))]]]])]])))))]))]]))]]]])]]))]))))]]]])))])))]]]]])]))])])))]]])]]]]]))]]]])]))]]]])))]))])])]]))])]])))]]])]])]]]))))])]]]))]]))))))]]])]])]]]])]])]]))]))]))]))]))]]]]]])])])])))]))))]]]]))])])])])]]))])))]]]))]))])]])]]]])])))]]))]]))))]))]]]])])))])])))]]]))]))])]))])))]]])]])]]]]))])))])]]]])])])]])]))])]]))]])]]]]])]])]]])]))]])))))))]]))]])]])]])]]]]]))]])]]]))]])]]]]])]])]]])))]))))])]])]]]))]))))]]])])])])]))]])])])])]]]]])]]]]])]])])]))])]]])))])]])])])]))])]))]]]])))])]])])]])))]))]]]])])))])]]))])]))]]])])))]]))))]))])))]]])]]]])]])])))))))))]])])]]]])]]])]]))]))]]]])])]))))])]))))]))])]])]]]]])])]]])]))]]]]]])]])])]]))]]]])]])])))))]))])]])]))])]]])]]]]]]])]]]]]))])])]])))]])])))))))))]]])])]])]]]])))])]]])]]))])]]])])))))])))])]))]])])])])]])])])])]]])]]))))))]]])]))]))))]]])]])]]])])]]])]])]]))]]))]]])])])]))]))]))))))]]))])))])]]]))))]])))])])]))]))]))]]]]]]]))))])))]])])))]]]]]])]]]])))])])])))]])]))])]])))))]]))]]]]]))]))]))])]]))]))]])]))]]])])))]])]]]]))]]]))]))])])])]])])]]]))]])]))]]])]]]))]]))]])])])])]))]))))))])])]))])))])))]]])]]]]]])])]]]]]])])))]]))]])))])))]))])]])]]])])]]]]]))])])))))))))))))]])]])])]]]))]))))]))]]]))]]]))))])])))]]]))])]))))))]))))]]])))))))))]]]))])]]]]]))]]])))])])])])]]]]])])]))))]])])]]))))]))))]]))))))])]))]))]]]]]]]))]]])))])]])]]]])))]])))]]])))))]])]]]))]))])]))]]]])]]]])]]]]]]]))]]]])]]]))])])]))))))]]])))))]])]]])])])]])))]])])]])))])])]))]])]])]])]])]))]))])]))])]]])])]))]])]])))))]]))))]]]))))]]])]])]]]))]))]])]])]])]]]]])]]]))]]])]]]))])]]]]))])]]]]])])))))])]))]))]]]]]]])]]])))])]])))]))]])])]]]]])])])])]]))])]]]]))]])))))]])))]]))))]]]]))]))]])))]]]))]]]]]])]]])])]])]]))]]))]]]])]]))]]))])))])))]))])]])))])))])])))))]))))))]]))))]))]]])]]]))])))))]]))))]))])]))]])]]])]])])])])]))])])))))]])])]]]]])]])]))]]))]]])])))))))))])])))])]))]])))])))]])]]))])))]]))))))))]]]])]]])]])]]]])])])))])]]))])]]))]))))]))))]))])])))]))))]])]))])]]]))])]])))]]])]]]]]]]))]))]])]])))]]])]]]]]]]]))]]]]))]]]])]]])]]]))]]]))))]]]]))]]])]]]]]])])])))]]]]))]))))])))])])]]))]]]))]))]])))]])])]]])))]))))]]))))])]))]]]))))]])]]]]]))])]]]))]]]]]))]))])]]]))]]]))))]]])))]])))]))]])))]]]))]])))))]]))])]]))]))))]]])]])]]))])))]])))))]))])))]])])]]))]]]))]]])))])]]])])]])))]])]])))]]]]]])]]]]]]]]])]))))))))]]))])]]]]]]]])]]])]])])]]]]]]]])]])]]]]]]))))]]])))]])]]]))]]]]))))])])])])]]))])))]]])])]))))]))])])])]]]))]]))]]]]))]]]]]]))])))))])]]])]]])])])))]]]]]]]]])]]])))])]])))]])]))])]]]])])])))])]))]]])))]]]]]]])))]]])])])])])))))])]])])])]]]))])]]])])]))]))]]))))]])]]))])]]])]]]]))]))))))]])])]]))))])])]])))]])]])])])]]]])]]]])]]))])))]]])]]))]))]]))]])))]])))))])]]]))]]))))]]]]))])]))))]))])])])))))])))]]]])]])])])]))]])))]]])])]]]]]]]]]))])]))))])))))]]))])]]])]])]]]))]))]]])]]])]])]]]]))]))]]))]])]]])))])))]])])]]))])])]))))))))]]]])])])]))]]]])]]]]]])])]]]))))))])]])])])])])])]]]])])))]]])]]]]])))]]))]])])))))])]]]]))])))]]])]))))]]))]])]])]])])]])])])))]))])]))])]])]]])]]])])]]])]))]])]]]]]]])]))])))])]]]))]))))]))]])]])))]])]])])]]])))]))]])]]])]]))])]]]])]])]])])))]))]])]]))]))])]))]]]]]]])])])))])])))])]]]]]]]])]))]))))]))))]))]]])))]]))]]]))]]])])]]))])]])]])])))]))]))]])])]))))))])))]]])))])))))]])]]]]]]]])])]]]))))]]))))))))))))])]])]]))]])]))])])])]]]))))]]]]]]])]]))])))))]]])))]))]))])))]]])])]])]))])]]]]]))]]]))]))]]))]))]]]]))))))]]))])]))))]])]])]])]]])])]])))]])))]])))]]]))])]]]]])]]]]]])))])))])]))])))))]]])])]))))]]]]]]])]]])])]))))])]]])))]]]]))]))))))]]))]])])))]])]))]]]])])))))])])]]]]))]))])]))]]]))]]))]]])])]]]]])])])])]))])))]])))))]]))])])]))))]]]]]])]]])]])])))]]]))]]))))])])]])]]])))]])])))]]]))])]]]]])]))))])]]]]))]]))))]])]))])]])]])]))))))))]]]])]]]))]))]))))))])]]))]]]])])))]))]]])))]]]])]]))))))))])])))))])]])])))]))))))]])]]]])]])]))]]))]]])])))]]])))])]))))]))]])]))]]]]))]])])))]]]))]]))]])]))]]))]]])])]]))]]])]]])]])])])])])])))]]))]])]))))]])))]]]))]]]])])]])]])])])])]]]])]]))]]))]]])))]))))))]]))]])]))]]))]])]]])))))))]])))]])))])])])]]]))]]))]))]]))]]))]]])]])]))])]))))]]]]))]))))])))]]]]]]])))]])]))))))))])]])]])]])])]])))))]]])]]]]])]]]]]]))])])))])])]])]))]])])])))))]]]]]))]])))]))]))]])))]]]))]))))))]]))])))))]))))))]])]]])])]]))]))]))]))))])])))]]]]))]])]])))))]))))))])]]]]]]]))])]])])])])))])])])]]])))])]])]])))]))))])]])])]]))]]])]))]]]))]])))]]))]))))])])]])]))]))]]))))]])))])]))]]]])]]])])]))]]]])]]])))))])]]))])))]]]))]]]]]])])))]]])])))])]])])]])))])]])]]]]])]]])))]))]]))]])]]))]))]]))))])]]])])))]))])]])]]])]))]])])]])])]))]))])]]]]]]])]])))]))]))))]]]))))]]]])]]]))]]]])])])))])])]]))])))]))]]]))]]]]]))]]])]]))]))])])]]]]]]]))]])]])]))]]]]]]])]))]]]])]))])))))]))]]))])])])]])]]])])]]])))))))]]])))]]])]])])])]]))]])])]]])])]])]]]]))]]]]]))]]])]]]))))))))))]))]])))])]])])))])))]))]))])]))])]]))])]]))]))]))]]])]))]])))]))]))]]))))])])]]]]]]])))]]]))])]]]])]))))]])]])]])]]]])]))])))]]]])]]]]))])]]]]])))]))]])])]))]])]])]))]))]]]])])]]])]]])))]]])]]])]))]])))]]])))))]))])])])))))))))]])))))]]])])))]])]))])))])]]]])]]]]))))]))]]]])]])]])]]))))))])]))]]))]))])]])]))]))])))]]))])))]]]]])])))))])]]])])]])]]])])))])]]]])]]])])))]))]))]]))]])]))])]))]])]]])])])]]])])))]]])]])]]]]]]]])]]))])))))))]))))))]]]))]]]])])))]])]])]]]))])]]])]])))]])]])]))]])])])))]])))])]]))])))))])])])))]]))]))])))]))]]]]]))]])]))])]]])])]])]]]]))))])]])]))]]))])))))]))))]]))))])]]]))))])])])]))]]]]]))]]])))))]])])]))])])))))]])]]])]])]])))]))]))]]])]]]]]]])]]))]]))]]]]))))])))))]))])]]]]))])])]))]))))])))))]]))]]])])])))])))))))))]]]])))]]]]]]]))))])))))]))])])))])])]])]))])))]]])))]])]]]]))))])]])]))])])])]]))]])]])))]])])))))])]]])))))]))]]])])]]])]]]]]])])))]))))])]]]]]))))))])]]])]])]]))]]])]]))])))))])]]]))]]))))]]))]])))))))]])))])])))])]))]]]])])))]))]))]]))]]]])]])]))))])))))]]))))])]))]]]]]]]]]]]])])]]))]]]])]))])])]]]])]]])])]]]]]]))]))]]]]]]]))]])]))]]])]]])]])))])])])))]]]]))])]])]])]]))))])]))))]]]])]])]])]))))]])]]]]]])]))]]]]]])])])]]])]]]]]]))]])]])))))))]]]]])))])]]]]))])])]))]]])]]))]]])))]]]]))]]])]]]))))]]))])]])))]]]))]]])]))])]])]))]]))]])])]))])])])]])])]])]))])]])))])])]]]])))])))])]])]]]))))))))))]))]]]]]))]])])))])))))]]))]])]]]]])))))]]))])]]])))])]])]])))]))]])])]])))]]))]]])))]))]]]]]))))))]))]))))]]]]))))]]])]))))]])]])])]]]]]]]]]]))]))]])])))])))])))))]]]])]]]))]))]]])]))]])]])]]]]])))]])]]])]]])))]])])]]))]]))]]])])))])]])]]))]]))])))]]]]]])))])))]]]]])))])]))]]]))]])]]])])])])])])))]]])])))]])])]]])]]]))]]])]))])])]]]]]])]])]])]]))])]]]]]]]]))]])]]))]])))))])))]]))]))]]]))))))])])])]])]])])]]]))])]]]])])))]))])])]]))])]]])]]))])))]]]])]])))]]])]]]))]]))))]]]))))])))]))]])))]])]]]))]]))]]]])))]]]))]])])))]]])]))))]))]])])]]]])))])])))]]])]))))])))]]]])])))]]])])))]]]]))]])]))])])))]]]))]]]])]]])))]]]])])))))])))))])]))]])])])]])])]))]])))]))]]))]]]))])])])))]))))])))])])]]]])]]]])))]]))])])))]))])]]]]))]]]])])]]))]]]))]]))))))]]]]]])])]])]))))])])])])]))]))]]]])])]]]))))]])))))]]])])])]]]))]]])))])])])])]])]]])))]]]]]])])]]]]]))])]]))]])]))]]))]]]]))]))]))]))]])]))))])))])])]]]))]])]]])])])]])]]]])]]])))))]))))))])])])))]]]))]]])])))))]])]))]]]))]]])]))]]]))))]]])]))])])))]]))))]]))))])))]]]]]])])))))))))]))))]]])]])]]))])]]))))]))]]))))])]))]])]])])]]])))]]))]))])])]]))])]]))])])])))]]]])]]])]])))]))])])]]))))]])))]))]))]))))]])]]])])))]))]]))]]]))))]]))))])])]]]])))])]]]))])))))))]]]]))))])]]])]]]]]])]])]]]))))]]))]]])])))])]]]]]]))]))))))])]]]]))]])]])]))))]])]]])))])])))]])]))]])))]]])))))]]])]])]]))))]]]])]]])]]]]))]))]]))]])])]]]])]]))))))]]))])))]])])))))]]]))]))]])))])])]]))]]]]])))]]]])]))]]))))))]]]]))))]])]]])]]]))]))])])))]]]]]])]]]]]))])]]])])])]])]]]])])])]))]))]])]))))]]]]]])])])))]))]]])])]])]])]))))])]]]])]]]])]]]])])])))))]]]))]))]])])))])])))]]]]])]))]))]]]))])))]]]))]]]))))]]]])]])]))]))])])]))]]))])]])]))])])))])]]))]]])])]))]))]])])))]]]))))))]])]]])))]]]])]))])]]])])))]])]]))])))]))))]))]]])]))])]]]]])]]]])))])]))))])]]))))]]]))]]))]])]))])])]]]]])]]]]))]]])])]))]])]])))))])))]]]]))))))]))]))]]])))])]])]]])))])))))]))]))])])]]))])]]]))]])]])]])))]]]))]))])]]])]]]])]])]))])]]]))]])]]])]))]])])])))]])])))]]]]))]]]]))]]]]]])]))))]]])])]])]))))))])]]]))]))]))))]))))]]]]]]))]]))))])])]])))]]]])]])]])]]]))]]])]]])]]]]]]]]]]))])]]]))))]]]])))]]))))))]))]])]]])]]))])]]))])]]])))]])))])])]]))]]]])))))]]))])])]]]]]]]))])))])]])))]])]])]]]]])]])))])))]])))])]]))]]]])])))]]]])])])))]])])]))]]])]]]])]]]))]]])])]])]]])))])])]]]]]))]))]]))]))))]]))]])])]))))]))]]))]))))])]]]))))))])]]]]])))]]))])))))))]])))))]))]))]))])]]]]]]]]])))))])))))]]]])])]))])]]])))]])]])]]))]]])]])]))]))))))]]]]]]])]]))))]))]))])])]]))])]))))))]]]]])])]])))])]]])]]])))])]]))]]]))]]]]])]]]))))])))])])]]])]]]))]]]))]]))]))]))]))]]))]]]))]]])]])]]]]))])))))]]]))))])]]]]])))]]]))))))))]]])])])]]]]))]]]))))]))])]))]]]]]])])))]])])]])))]]]]])]]]])]))])])]]])]]]]))))]]]])]))))))]]))]]]]])))]])])]]))]])]])]]])])]]]]]])])))]))])))))))))]]]]])]]]]])))]]])])]))))]]])]]])])))]]]])]]])]])))]]])))])]))])])])]]]])]]])]))]])])])))]]]]]]])))]]]])]))]])]))]))))))]]]]]]]))]))]])]])]]]])])]]))]]))]])]])]])]]]]])]])])))]]))])]]]))])])])])])))))])])])])]]]])]))]]]]])]))])])]]]))))]]]]])]]])])])]))]))]]))])))])))))]))])])))))))])))))]))])]])))]]]))])))]))])]])]))]])]])))))])))]])]]))]))]]))]]]]])))]]]]])])])]])))]]]]]]])]))]))]]]]]]]])]]]]]])]])]]]]))))))]]))]]]]))])))))]])))]]))])]))])])])]))])]]])]]))]])]])))]])])]]]]])]]])]]])])))]])))))]]]))])]]]]))]))])))]))))])]))]])]])]]])]])]]]]]))])]])]))])))]]]))))])])))])]]]])))]]))]]]))])]])])]])]]]]])])]]])])]))]]))]]]])))])))])])])))])]))]]]])])])))])]))]])]]))])))))]))]))]]])]))])))])])]])]))))]]])]]]))]]]))))]]])]]]]]))]]]))]]]]]]]]]]])])]]))))]])))]))]))))))])]))])]]])]])]]]]]))]]]]]]))]))])))]))])))))])])))])]]]]])))]]]))])))]]]))])]])]))))])]))]))))]]]])]])]]]]))]]]))]])])]]))]])])]))]]]))])]])])]]]]])]])])]])]]])))]]])))))])))])]]]])])]]]]])))]))]]]]])))]))])])])))]))))]])))))])]]]])])]])])])]]])]]]))]]]]))]))]])])])))]])])))]))))]])]])])))])]))]]]])]]))))])]]]))])])))])]))))))]))])]])]]]))]))))]))]))]])]]])]])])))])]]]]]))])]))))]]])]])]])]]])]]]]]]))])]])]))])])]])]]])))))))))])])]))])])]])]]))])))))))])))]]])]))])))]]])))]))))])))]])]])]]]])))]]))]])])]))])]]])))]]]]]))))))]))]])]]])]])]]]])]]))))))]))]]])])])))]])]])])]])]]))])]]]))]]]))])]])))]]])))))]])))])]]]])])))))]))]])])]]))])])))])))])]]])])]])]])])])])))]]]]))]))))])))]])))]]])]])))))]])]]))]]])]]])]]))]]))]))]]]]]))]))]))]]])]]]])]))]]))]))])]))]]))))]))]]))]))]])]])])]]]))]]]]))]]))])]])])])])))))]])]))]])]))]]]]]])])))])])))])))]])]]]))])]]])])))]]))))]]]])]))))))))))]]))])]])]]))))])))]))])]])]]]]))])]))]))])))]))]]])])])))))]])]])]]))])]]])]]])]))]]]])])]]])]]])))])]]]])]])]))))))]))])]))])))])]]])]]))]]]]))])]))])])))]])]]])])]]]))))])])]])])))])]])])]]]])))]]]))))]])))]]])])))]]])))))]]))))]]]))))])])]))]))])])])]]))]]]])]))]]]]]]))))]])]]])))))]]]]))])]])))]]))])))]]))))]])))]))]]]]))])]))))]])])]])]]]))]]])])]]]]))]])]])))))]])]))))]]])]])])]])]]]]]]))]])]]])))]]]))))])]]]])]))))]))]))))]]])]]]])))]))]]]))]])]])]))]]))])]]))))]))))])])))]]))]])]))))])]]]])]]))]]])]]])]])]])])])]))))]])]]))))]]]]]]))))]]))]))]]]))]]])]]]))))]]]])]]))]]])]))]]])])]))))))])]]]))]]))]])])))]])]])]])))))]))]))])]]))])]]])]))]]]]])]))])]])])]]]])))]]]])))]))]]])))]))]))]]]))]]]])]))])])]]]]]])]]]])]]]]]])))))))])]]))))])]))))])]))])]])))]]])]])])))]]]]])])])])])]]])]])]]))])))))])]]]]]))]])]])]])]]])))]]))))])]])])])))])]))))]]])])]]])])])]]])]])]]]]])])))]))]])])))]))))]])))])]]]))]))))))))]))])]]]]])])))]]))]]))]])]])))]))])]])))))])]]]]]]]]])]])))])]])]])))]])])]]]])]]]))]))])]]])]]]))])]]])]])]))])))])))])]))))]]))))])))])]]]])]])]])))]]]]]]))]]])))]))]])]]])]]])]]]]])]]]])]]))))]))))))]))]]]))]))]])]])])]))))]))])]))]]])])])])]]]))))))])])])])]]]]))]]])])))])]]))]])]]]]]]])])]]]))]]]]]])]])))))])))])])]))])])])))))))))]]])]]])]]))]]]]]])))])))])]])]]])]]])]])))]]]))]]]))))]]]])])))]]])])]])]])))]))]))])))]])])])))])]]])]]]])]]]))]))])))))]))]]))]]])])))))])))])))))))]]]]])]]])])))))]])))))]]]))))])])]]]])]])]))]]))])])]]]])]))]))]])]]) [][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][][] ()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[]()[] [(([[[[([[(((([[[(([[[([[([[([([((([[[[([[[[(([[[((([[[[[(((((([(([[[[[[[[(((((([([[[[[([[([([[(([(([[([((([([[([(((((([[[(([[[[[[[(([([([([([[(([([(([[([([([[[[([[(([((([[[[([([[[([(([([[[([[[([[(([[(([[(([[([((([([[[(([((((([([(([([[[(([(([[[[(((([[[[(([[([[([(([([[[[((([[[(([(([[[(([([[[((((([((([[([([[[([[(((([[((((([((([[[[(([([([[[(([[(([((((([(([([[([([((([([((((([[[[[[([[[([([[[[[[(([([[[[[((([(([(([([([(((([(((((([(([[[((((((([[((([((([[[(((([[[(([([[[([([[[(([([(([(([[[[([((([((([(([[([[(([[[[((([((((([((([[(((([[((((([(([((([[[[([([([([([[[[(([[([([[([([[[(([[[[(([[[[[(([([((([(([[[((([([[(([[(((([[((([(([([[(([(([([([(((([[([((([[([([[([[[(([[[[([((([([([([(([[[(([([[((([([[([((((([(([[(([[(([[[([([([[[([((((([[[[((([(([([(([[[([([((([[(([([[(([[[([[([[[([[([[([[[[([[[[([[(([(([[[(([([([(((([[[([(([[([(([[(([([(([[([((((([([[[[[[([[((([[[[((([[(([[([[[[[[[[(([(([[[[([[([(([([(([([[[[((((([[(((([((([(([([[[[([[[[[[([((([((([[[([[[([[[([[[[[[[([(([[[([[([[[[(([[([(([[[[(([[([([((([([[[(((([([((([[(([[[(([([((((([([(((([(([(([(([[([[((([[(([([[(([([[(((([([[[[(([(([([[[((([([[[([([(((([(((([[[([(([[(([[(([[((((([((([[[([[[[([[[([([((([([([((((([[(([[([[((([[[[([[([([(([[[([[([([[(([[[[[[[(([[[(([[[[[(([(([([[(([[([([[[(([((([[(((([([(([[([[(([([[[((((([([[[(((((((([([[((([((([([[([((([(([[[[[((([[[[([([(((([(([[[([(((([(([(([[((([[[([[[[([(((([((([[[(((([(((([((([(([[[[[[(((([([([[([([[[[[[([([[[[([([([(((([[(([([[[[[([([[[[[[[([[(([((([[((([[([[(([[[([([[([[[((((([(([([[([([([[[[[[(([[(((([(([[[[([[[((([[([((([((([([[([[(((((([(([[[[[(((((([(([([[([(([[[[([[(([(((([[(([[([[((([((([[([[[[[[((([[([([([([([[[(([[([[([[((([[[[([((([((((([([[((([([[([(([((([([([([[([(((([[([[[[[[((([[(([[((([([([([[([[(([[[([([((((([((([[((([(([([([([(((([[([(([[([[([[[[[([[([[[[[(([[(((([[[[[[[[[[[(((([([[([[[[[(((([([[[([[((([(([[(((((([[[[([[[[([[[[(((((([([(((([([[[[(([((([((([(([([([[(([[[([[[[[(([[[[[(((([((([((([[[[[(((((([[[(([[(([([([[[[(([(([([[([(([[([(([([[[([[[[[(([([[[[[(([[[([[(([[([[(((([[([[[[[[[(([([[[([([([[((([[[(([[[(((([((([(((([(([((([[(([[((((([[((([((([[[[[[((([[([[[[([([([[([([[([([((([([[[((([((([[[[[[[[[[[([(((([[(((([((([([[[[[([(([([([([[([([[((([([(([([((((([[[([((((([[([([[([[([([([(([[(([[([([([[((((([[(((([[[(([(([([([([([([[((([([([([(([([((([[([[([[([[(([(([(([[(([[([((([(([((([[[[(([(([[([(([(((((([[([(([([[(([(([[[([(((([([[(([[[[[([[([(([[[[([[([(([[(((((([((([[[((([[[(([([[[(([((([[((([[[[[[[(([[[[[([[[([[([(([[(([[[[[((([[(([([[([([([([[(((([[[[([[((([[[[[[([([(([[[((([[[(((([(([[([[[([([([[((([((([[(((([[[([(([([((([[[(((([(((([[[([[[[[[([(([([[((([(([(((([[([[[([[[(((((([([(([[[[[[[(((([[[[[([([[[((([([((([[[((([([[(([[(([(((([[[([([([([[([[[[[[[[([([([(([(([[([(([[(((([[[(([[[[(([[[[[(([([[(((([([[(([([[([[((([([[(([(([([[[(([[([((((([([(([[([(([[[[([[([[(((([[([[(((([[(([([[[[[[([([[((([[[((([[[[[([[([(((([[(([([([([[[([([(([[[[[[(((((((([(([[(([(([([[[([([(([[[([([([[((([(([[[[(([([(((([[[[[[(((([[(([(([([([((([[[(([((([([[[([([[([([[(([[(((((((([[[([[(([[[(([[(([[[(([([[[[((([[((([([[[[[(([(((([((((((([[[(([[[([[[(((([[([[([[((((((([([[[(([[[(([[[(([([[[[[(([([[[((([([[(([[[[([[[(([(((([(([([[([(([[(((((((((([([([([[[[(((((([((([[[[([[([[([[([((((([[[[[([([([([[(([[((([[[([[[[(([([([[([(((((([((([[(((([[([[[[([(([[(([(([[[[[([[(([(([([[((([[[(((([[([[([([([[([((([[([[[[((((([[[(((([[(((([[((((([[(([[[([([([([((([((([[[[([([[[([[[([(([([([[(([(([([([(((((([([(((([[[(((([([([[[([[(([(([((((((([([[((((([((([((([((([(([[[(([[(([[([(((((((((([[[(((([[[[(([[[[([([[[[([[([[([[([[([([([((([([[[([([[([([[[([([[[[([((((([[[[[((([([[([[(([[([([[[[[[[[[[[[(([[[[[((([((((([[([[((([(([([[((((([([[[([[[(((((([[[([(([([[([([(([((((([(([(([[(((([[([[[[[([(([[([((([[[[[([[([[[[(([(([([((([([[(([([([[[[[(([(([[[([[([(([[[[([(([(([((([(([([[(([([((([(([[[([[([[((([[[([[[((((([([(([[[(((([([[[[(((([[[[([[([((([[[[(([([[(([(((([[[([[(((([([([[([(([(([[[[((((([((((((([[((([(([[([([((([[(([[(([[((([(([[[[((([(([([(([(((((((([[[[[(((([([[((([([[[(([[[([([[(([(([[([(((([[[([([(([[([(([([([([((([[[(([(([([[[[[[[[[(([([(((((((([([([[[([[[(([(((([[[[[[[[([(([[[[[([[[(([((([([([[(([[([((((((([((([[([([[(([([[([([([([((((((((([[([(([(([([([([([(([((((([[((([((([(([([[[(([[(([([([[((([((([[(([([([[([([([[[[[([[[(((([[[[([[(((((([[([([([([([([(([[[[[([[[((([[(([[((((([[(([([([[((([[[[[([(((((([[[[(([(((([[[(([[[[[((([[[((((((((((((([[((([([(((((([[(((([(([(((([[(([[(((([(([(([[([([([[([([[[[((((([((([[([([[[[[[([([[([[[((([([[[([(([([([[[([(([(([((([[[[[[([(((([[([(([([([[([[[((([[[[[([(((((((([[([[((([(([[[([(([([([(((((((([(([((((([((([[[[([[[[[(((([[((([(([[[(([[[([(([[(([([((((((([([(([([[[(((([[[[([[[[(([[[[[[[[[((([([[((([([[([[[[((([[[[[([([(([(([([[([([[([[[[[[(((((([((([[[((([([([([(([[[[([[(([(([[[([[[[((([[[((([(([[(([[([[[[((([[([[[[[[[[((([((([((([[([([([[[(((([(([([((([[[(([((([([[(([[[[[[[(([((([[[(([[((([((([((([[[[[([([[[[[(((((([([([(([[[([([[[[[[[(([(([[[([([[[([[[[[((((([(([(([[((([[(([[((([[[(([[(([[((((([([[[[[[[((((([(([[[(((([[[[[[[([[(((([((([(([([(([[[[[([([[[[[((((([(([[([([[((((([(([(((((([((([[([[([([(([(([([([([[([[[[([([[[[([(((([[([[((([([([(([([[[[((([([[(([[([[[[[(([[((([[((([(([[((([(([([[(((((((((([(((([([([([(((([[((([([([(([[[(((((([(([[(((([[[[[((([[[(([[(([[([(([((((([[[((([(([(([([((([(([((([((([[((([((([([([(([((([(([[([[[(([[([[[(((([[[([([[(([(([(([([([(([([([(([(([([((([([([[([[([[(([((([(([[(([[([(([([[([[(([([(([[[(((([([[[[[(([[[([[[([((([[[[((([[([[(([[[([([[(([(([[([[[[[[[[[([[(([(([[[[([[[[([[(([(((([[([[[[[[[[(([[(((([([([([([[((([(((([[[[((([[((([[[([[[[[(([([([(([[([(((([([((([([[([[[[[([(((((((((([[([(((([[([([[[[(([((([((([([((([((((([([(([([[((([(([(((([[(([[[(([([([([[((([([(([(([([[[([([(([[[([([(((([(([([([[[([[((([(([(([[[[[[([[[[([(((([[([[(([(([[([([[[([[((([[[[[[[(([[([((((((([[(((([[[([[([(([([[([(([([([((((([[[[([(([([[[(([([(([[([[[([(((([((((([(([[([[([(([[(([[[[[[[([(((([[[(([[([([[(((([[(((([[[(((([((([(([[([[[[((((([((([(([(([([[((([(([[([[([[[[[[([[[((((([(([(((((([([(((([([[((([[[(((([[(((([[[[[([(([[[[[(([(((((([[([[([[(([[[[[([([(([([([([[((([[[[(((([[[([[[(([((([[([([[[([((((((([([[[([([([[([([[((((((([[(((([[((([[[([([(([[((([[[([[[(([(((([[[([([([([[[([([[[[[([[[(([[[([([[(([[([(([[(([[(((([[[(([[([([[[((((([([(([[(([[[((((((([(([((([[((([([([([[([[([[(([([[([[(((([([((([((([[([([((([((([([(([[(([(([[[[(([[([((((([([([[([[[(([([([([[[([([(([[[[([((([(((([(([[[[[[([(([((([(([[([([(((([([(((([([[[(([(([[([[[(((([[[[([[(([[[[([(([(([((((([((([[([(([[[[([[([(((((([[[[[([(([[[([(([[((((([[(((([[[[(([([[(([[[([(([[([[[[[([((([[([[(([([[(([[[[[((((([([[([(([[[([[([[[[(((([(([[[[((([[([[[[[([(([[([[([[([((([[[(((([[([[[[(((([([[((([[([[[[[([([(([([((([([([((([([([[[([([[([([[[[([[[([([([[[([([(((([([[[[[[[([([[[[([[[[[[[[[(([[(([(((([[[[[[[(([([([([((((([[(([([([[[[[([[[([[([([[([(((([([(((([([[((((([([[[([[[[([((([[[(([([([([[(([[[([([[[[([[[((([[([([[((((((([[[(([([[[[(([[(([((([[([[(([([[[[((([[[[(((([[(([[[[([[[(((([[[[[[([([(([[[[(([[((([[(([[(([([[[[((([[[((([((([([[[[[(([[([[([(([[(([[([[([[[((([([[[[(((((((((([[([[([([[[[([(((((((([([([(([([[[([[[((((([[([(((([(([(([([([([(([([(([[([[((((([([[[(([((((([([[(([[[[[[[((([([[((([[(((([([[([([([[[([[([([[[[(((([([((([[([(([((([[[(((([[([((([[([[([[((([((([((([(([([[[[([([([[[(((([([((((((([([[((([(((((([([[(([((((([[[([([[([[([[([(([([(([([[((([[[[[([[(([([((((((([[[(([[([(([([([[[([[[[[([[(([(([[[([[[[[[(([[[(((([[[([[([[([(((([([[[[([([(([[[[((([[[(([(((([[([([[[(([((([([[[[([([[[([([(([(([([[[((([([((([(((([(([(([(((((([([[[([(([[[[((((((([([[([(([[(([([(((([[[([(([[([[([([((([(([[((([([(([[[(((([(([[[(((([[(([[((([([[[[[[([[((([[(([[[([(([[[([[([([[([(((([[[[[[([[((((([[((((([([[([[[[[((((([(([((([[[[[(([([[[(([([([([(([(((([([([(([[[(([([(([[[[[((([[([[([(([([[[[[[[[[[((([[([((([[[(((([[[([[([([(([[[[([[[[(([[[(((([(((([[[[((([[[(([[[([(((([[((([[([(((([[([((((([[(([[[[([(([(([[[([[[[([((((([[[[(([[[[[([[[[(([([[([[(([[([[[[(((([[[[(([((([[([[[[([[([([([[(((([((([[[([[((([([(([[[(((([[[([(([([[[(([((([[[[[[(([([[[[[([((([(([([[(((([(([[[((([[[[(([[(([([([[([[[([[[(([[([([[[[((([(([[([([([[[[(((([(((([[[[[(([[([(([[[[(([[[[[([[[[[([[(((([[(([[([((([([[((([[[[([([[[([[[([(((([([((([[[[([[([[[([[[[(((((((([[[[([[((([([(([[(([[(([(([[[[(((([[((([[([[((([[[([([(([((([(([[[(([((([[([[([(((([(([[[[(([[[([[((([(((([((([[([[[([[[[[(([[(([([[([(([[[[[[[(([[[[[([[((([[([[[[([[[[([(([([((([[([([((([([([(([((((((([[[[([[[(([(([(([[[[[[((([[[[((([([(([[([(((([(((((((((([[[(([((([[(([(((([[([[([[[((([(([((([[[((([(([[[[((([((([((((([[[(([[[[([([[([([[[[(([([([([([([[(([([[([((((([(([[[[[[[[(([(([((((((([[[[((([([([([(([([[[[[((([([[[([([[([(([((([[([[[([([[[[(([((([[[[[[([[[[(([[[([[([[([[((((((([[([[[(([([(((((([[([[((([[([(([(([([[([(([(((([(([(([([[([(([([[([(([[[(([([([[[[([[(((([(([[([[(([[([[([(([[(([[[((([[([[([((([[([((([[(((((([((([[((([((([((([[(([(([[[((([[[[[[[[[[[((((([([[[((([([[[([([([[[((([[([[([[([(([[[[[(([[[[([((([([(([[[((([([[([[[[[[((([[[[([([([([([([[([((([[[([[[[((((([[[[[([[[([([((((([([([(([([([([[[(((([[(((([([(([([(((([(([(([[([(([[(((((((((([[(([[[[[(([((([([((((([[[((((([(([((((([((((((([((((([[[[((((([([[[(([((([[[[[[[[([[([(([([(((([[([[([[([(([[[[[([([[(([[([(([[(((([[([[[([[[(([(([[[([([[(((((([((((([((([([([[([[[(((([[[(((([([[([[[[((([[[(([((([[[[[[([[([[[[[([[(([[((([((([((((([(((((([[((([[[[(((([(([([([[([(([([((((([[([([[[[([([(([([[([([[[[[([([[[[[((((((([[([(([([([([(([(([([[(([[[([([[([([(([[([[([[([[((((([[[[(([([((([([(([[([[[[([([[([(([[[[(([[[[([([(([([([(((((([[[[([([[[[([([(((([([([[([[[[[[[[((([(([([(([[[([[([([([([[[[[([([([([(([(((([[((([((([([[[[[([([([([[([([(((([((([[[([[[([[[((((([((([([[[[[[[([((([([([[((((([[((([([[[[[([((([(([[[[(([[((((([[([[[[(([[([([([[([[([[(([((((((((([[[[((((([[[[(((([(((([([([[[([(((([[(([[([([(((([((((((([((([(([[((([((([((([[[(([(((([([[([(((((((((([([([[[[([[([((([[[[((([[([([[[[[[(([[[[[([(([([([[[([([([([[[[[[[[[[([[[([((([(([([[([[[([[([[([[(([([(([(([[[[(((([[[[(([[[((([[[([[[([([([[[[[[([((([(([[[[([((([[([((([(((([([([([([([[[[((((([[(([(([([([[([((((([[(([([((([[((((([[([([([[[([([[(((((((([[[([[([([([[[((([[([[(([([((([[[(([[[((((([[(([[(([([[[[[(([((([[([([(([([((([[[([(([[[(([[(((([(((([[([[([(((([[((([([[(([[[([(([([((([[[((((([([([[([[[[[([([[[([([([[([([(([(([[(([[([[[[[[([[[[([[([[[(([[([[[[([[(([(((([[(([[[((([([(([(([[[[([[[(([[[[[[[[(([[[([[[((([([[([([([([[[[([[[[((([[[[[[([[(((((([[[(((([[((([([[[[([[[[([([[[((([[(([[[(([((((((([[[[([(([[[[[[[[[((([(([([[([(([([(([([([[((([[[(([([[([([[[((([((([[([(((([(([((([[([([[(([([[[((([[([[([[([((((([[[([([[[[[((([([[[([([((((([([(([[[[[[([((((([[((([(([([[[([([[[[(((([((((([[((([([([[[(([(([([[[[(([[((([(([([[[[([((([((([(((([((([([[[[[[([[[(((([([[((([[([[([[(([([[[([((([([[[([[[((((([([([[[([([(([[([[[[([([[(((([[[[([[(((((([([([[[[[([((([((([([([((([((([([([[([([[[[[[([(([(((([[((([[([([([[[[(([[(((([([[([(([(([[([(([(((([(([(([([[[[([(([[(([((([([[[[[[(([[[([(([(([(([([[([(((([[[([[[([[[([(([(([[([((([((([[(([[([[[[[[[[[([[[((((((([([(([([[[((([[(((((([((([(([[[([([(([([([[[[[[[(([[([(([[((([[(([([(([(([((((([[[((((([([[([(([[([(([[([[[[[([([([((([([(((([([[[([(((((([([[[(([[[[(([[([(([[(([[([(([([[([(([[[[[[[[[([((((([([((([[[([([[[[[[[(([[[(((([((([((([([([[([([[[[[[([[(([[((([(([([[[([(([(([(([[(([(([([(([[[[((([(([(([[((((((((([((((([[[([[(([([((([([[[(((([[([[((([(([([[([((((([([[[[[(([(([[[(((([([[[(([(([[[[([([([[[(([[([[((((([[(([[[([[[([((([[[(([([[(([(([[[[[[[[([[(([(([([[[([[(([[(([[[[([([((([[[((([(([[[[[([([[((([[[(([[[([[[([((((((([[([([[[(([([[([[[([([[(([([(([((([[[[[([(([([(([([[(([(((([[([([([((([([((([(([[[(([([[[[[([[(([[(((([[([(((([(([([([((([[(((((([((((([((([([[(((((([[(((((([[[([([[([([[([([[[[[[(([(([[(([[([[[([[(((((([((((([(([([([[[([([(([(([([(([([([(([[[((([[[((([([(([[([([[([(((((([([[((([[((([[([([[[(([((((([[[([([([([[[([(([[(([([([[((([[((([[([[([[[(((((([[(([([[([((([[[[(([(([[[([([[((([[[[(([[[[([([[[[[[[(((((([((((([[[((([[[(([((([[[((([[([[[[((([([([([([(((((([[[[([([([[[((([([(((([(([(([((((([[([([(([[[([([[((([[[([[[([[([[([[[[[[(([[([[[[([[((([[[([([[([([[(((([(([((((((((([[[[([(((([[([[((([[[(([[[((((([(([[[[[(((([(([([[[(([[[([[[(((((([((((([[(([[[[(((((([[[[[[[[(((([((([([(([[([[(((((([((([[[[[[([(((([([(((([[(([[[([[[[([([((([[[((([[[[(([[[(([[((([((((([[(([(([[([(([([(([[([[((([[([[([[[((((([[[([[[(([[[[(([[([(((((([([[[[(([([([((([[(((([(([[[[[[([[[([[[[[[(([([[[([([((([(((([([([[((([((((([(([(([([(((([[[((([[[((([(((((([[(([[([([([([((([([(([((((((((([([[[(([[[(([((([[([[[(((((((([[[[[[([[[[[(([([([[(((((([[((([[(([[((([[[(([([[([((([((((([[(([[((([[[(([(([[[([[([[[([(([[[[[[([[(((([(([(((([[(([(([[((([[[[[[[([[([([[[[[(((([[([(([[(([[[(([[[(([([(([[[((((([(([[[(([([[([[[[[((([[[[[[(((([[([(([[[([((((((([(([([[[[(([([[[([([[[((([([((((([([[[([[[([((([([[(((([[[[[[[[(([((([([[[([((((([[[[[((([[[([([(((((([(([((([[[([[[([((([[((([([[[[(([[([[([[[[[([[[[(([[[([[[(([(((([[[[[(((([([[((([[([([(([(((((([[(((([([((([[(((([((([[[[([[([[[[([([(([([(([[((([([([[([[(([(([([([[[[(((([[([[[[([[([(((([[[[[([[[([(([([[([[[([([[[[((((((([([[[([([[((([[([[([((((([([(([((([[[([[[[[([[[[(((([((((([[(([[[[[([([[[[[[[(((([[[[[[(([((((((([[(([(((([[[[[((((((([[[[(([[[((([(([[[([[[[[[((((([[(([([[[[[[((([(([[(((([(((([(((([(([((([[[[([[[([(((([([(([[[[(([([[((([[([([[(([[[([[([(([[[[(([([(([[[([([(((((([((((([[(((((([[[([[([[([[[[[(([[(([([((([[[[(((([[([(([([(([[([([([(([[(((([([[[(([[((((([[([([[[([((([(([[(([[[[([[(([((([([(((([((((((([(([((([[([[[[([[[[([([[[[[[[([([[([([[((([[([([([([([([[((((([[[[[[[([((([(([((([[(([[[[(([([[[[(([(([((([([((([(((([[([[([[(([[[([([([(([(([([[[([(([[[(([[[[[[([[[(([([(([(([[(([(([(((([[((([[((([[[[[((((([((([([[[[[([[[([(([[([[[[((([[(([[([[[((([[(([([([[[([([([[[(([(([[(([[[([([[(([([(((([[[([(([[[[[(((([[(([([([((([([([[[([[((([[((([(([(([[[(([([[([[(([([[([[[([(((([[[(((([(([[[((([([([[((([[[[[(([[(([(([[[[[(([([[(([([((([((((([(([((((([(([[([[[([((([(((([[[(([[([[[[(([[([(([[[([[([(([((((([(([([[([([[(([([([((([(((([(((([([[[[[([([[((([([(((([([[([[(([[([[([(((([(((((([[[[([[[(([([([[([([[([(([[((([((([([[[[[([[(([(([[([[[[(((([(([[[([[[([[((([([(([([[([([([([[[([[(([([([(([((([[([([[([((([([([[[([[[[((([((([[([[(([([(([[[([[([[[[[[([[[([[[((([((([[[((([(([[[[([(((([(([(([[(([([([[[[[([[[[(((([[[[([[(([[([([[[(([((((([[(((([[([[[[([([(([([[((((((([[[(([(((([[[(([[([([[((([(([([[((([[[(([(([[[[(([[(([([([(((([([(([([((((([([[[([[(((((((((([[((([([([((((([[[([[[([(((([((([(([((([[[([(([[[[(((((([[[[[([[[[[([[[((([[[[[[([[(((([[[[(([[[(([[[(([((([(([((([(([[([((([([(([([[([[[([[[([[((([[([[(((([[[((([([([[[([([[[([[([([([[[[([[([[((([[[((([[(([[([([(([[[([[[(([([((([([[([(([[((((((((([(((([[([((((([([([([[([[[(((((([([([[(([(([([[[(((([(([[[[(([([[[[[[[[(((((((([(((([(([[[[[[[[[[([((([[([[[((([([(([[(((([[[([[[([[[([((([(([((((([(([(([(((([[[((([[[[[[[((([[[[(([[((([([[[((([[[[((([(([(((((([[[(([(([[(((([[[[([[([[(([[([[([((([([((([[[[[[([[[[[[[([[(((([([[([[((([(([[[[[(([[[((([(((([[((([([(((([[([[[[([([[(((([([[(([[[([[[(([([([[(([((([((([([(((((([((([[[((([([[([[[(([[(([(([[[[([((((([(((([[[[[[[([(((([[[[((((([((([[[[(([[([(([([([[([([[[[[[[([(([[[[[([([[(([([[[([(([([[[[[[[(((([[([(([[[(((([[[[[([([[([((([([[[[[[([[([([([(([((([[[([[[((([(([((([[(((([((([([((([[[([(((([[([[(((([(([(([(([((((([(([(([[(([(((([[[[((([(((([((([((([(([([(([(([([[[([([[[([[([(([[((((([[([([[(([([[[[((([(((([(((((([((([[[[[([(([[([([[[[[[([(([((((([([[([[(((([((([[[[[[[[[((((([[([[[([[(([[[[([((([[[[[[((([(([[[[(([([[(([[(((([[[[[(([[([(([(([([[([((((([[([[((([[([([([([(([[[[[([[[[[([[((([[(((([((([([(([(((((([[(((([([((([((((([[([([[[(((((((([([((([[[([(([[[([[[[[([[[([[((([[[([[((([((((([[([(([[(([((([([[[[([[([[([(([(([([((([[([[[((([([[([[((((([[[[[((([[[(([[([[[[[[[[(([((([((([[[(([[([[[(([[(((([((([[(([[[[[((([[[((([(([([((([(([([[[[[((([[[([([[([([[(([[([[[(([[([([[[[([(([[(([[[(([[((([([[[[([((([[[[[(([[([[[(([((([((([([[(((([([((([(([[[[[[[[[[(([(([[(([([[[[([[(([([[((([[[[(((([[(([(((([[[[[[[(([[[([(((([[[([[[([([(([(([([([((([[[([[([([([(([[((((([(([(((([[[([[([[((([[[[[([[([(([[(([((([(([[(([[[([(([([([[((([[((((([[([[[((([([([[([[[[([([([(((([([(((([[[[[[((([((([([[[[[[[[[([[([([[(([([[[[(([([[([([([(([(((([(((([[[(((([[(([[(((([[[([[[[([([[[[[[(([[[(([[[(([(([[[(((((([[(([[[((([[[(([[[[(([([[[(([([([([[([(((((((([(([((([([[[[[((([[[[[[([[([[[([[[[[[[([([[[[((([(([[[((([[(([(((((([([([([[[[([[[[(((((((((([(([([[([[[[((([[[(([[[[([([[([([[[[((([[(([[[(((([([[[(((((((([([([((([[[[((([([[([(((((([([((([[(([([[[[([[[(([([[([[([[((([[((([((([[[([([(([[((([[[[[([[[([[([(((([[([[((([[[[[([([([[([(([((((([[[([((([([[[([[[[[(([([[((([((([[([[[([[([[((([[(([[[(([(([[(((([((((([[([(([[[([(((((([([([([[([[[(((([[([[[[[[([([((([(([[(([[(([([(([([([([((([[([[([(((([((([(([[([[[(([([(([[((([([[(([([(((((([[[[(([[[((((([[[[[[[[[((((([[[[[([[((((([([((([((([[[([[[(((((((([([([([((([[[(([[([[[[([(([((([([[((((([[([([[(([[[((([[[([[[[([[([[[[([(([[([([[[[[[(([((((([[([(([(([(([[((((((([[((((([((((([([[([([[[[(([((([[(([(((([([[[[([[[(([[([(([[([[[(((((([((([(((([[(((([(([((((((([[((([[[[[(([[[(((((((([([([((([[([[((([((((([([[([([[[[((([([([[[[([[[(([[[((([[[[[([[[([[(([((([[((([((([([([([((([([[[([[[((([[[([[[[[[([(([([[([[(([[[([[[([((([[([[[(([([(([[[[[([[([([([[[[[([(((([[[[(((([(([([([((((([(((((([((([[[(((([[((([[([([([[([[([[([(([((([[([([((([[([([([((([[(((([[[[((((((((((([([[([[([([[[(([[[([[([([[([[[([[((([(((([((((([([(([([[[([([[([[[[([[([[[[[([([(([(([([([([(([[([[([((([((([([([[([[([(([[([[[[[([[[(([[[([[([((([([([[[[[[((([[(([[[(([[(((([[[[(((([[([(([((((([[([[([[([[[([[[([[([([([[(([([([([([(([[((([([([[[[([([[[([(([[[[[((([([(([([[[([(([((([[([(([[(([[([(((([[[[((([([([([[([((([([[[[([[((((((([([((([([[[([((([[[(((([(([(([(([(([([[[([[([([(((([[[[[([([[[([[[(((([(([[[[[[((([[[[[[[[[([[[((([((([(([[((([([[((((([[[[([[[([[([((([[[[([((([([([((([[([[[[[[[([[[(((([([([[(([((([[[([[([(([[(([((([[[[([[[(([([((((((([((([[[((([[(((([[(([([([([([[([[([(([(([([([(([[([[([[[[(([([[[([[[[[(([[([[([([[([[[[[((((([([(((([(([((([[(([[([([[[[([([(([([(((([[((([[[[[[[[[[(((([([[([[([[[(([((([([([((([[(([([[[([(((([([[((([((([[[((((((((([([([([[[[([(([[[[[[([(([[([([[((((([([([([[([([(([[[([[([[[[[([(([[[[(([[[(((([[([[(([[[([[(((([[[([([[([[([[(((([([([[[[([([([[[([[([[[[((([[[[[[(([[(([[[([(((((([([[([[[[[([([[[[([[([[[[[([([([([([[[(([([([(([([[[[[[[[((([(([([([(([[[([[([[[((([[[(([((((([((([[[[(([([([((([((([[([([(([([(([[((((([([[([[([[[[(([([((([([((([[(([[[([[[(([[([(([[[[([(((((((((([(((((((([([((([[[[[[[[[([(([[(([((([((([([[[[[(([([[[[[[[(([[[[(([[((([[[[[(([(([[((([([((([[([[((([[([((([(((([[([[([([((([[([(([([((((([[([([[((([((([(([[[[[[([([[[(([[[((([[((([([[[([[(([([((((([[[[([[((((([(([[[([([((([[(([(([[(([[[[[[([((((([([((([[[[([[[(([(([([[((([(([[([[(([(([[([[((([[[[[([((([(([((([([[(((([[([[([(([(((([[(([[[((([(((([[[((([[([[[([([[([([[([[[([[[(([[[[(([[[([[[[[[(([([([[([[(([((([[([[[[[([[(((([[([[(([[([[[[([([[([((([([[[[[(([[([[([(([[[(([[(([[([([([((([[(([([(([[((((((([[([((((([([([[([(([[[(((([([((([(([([[(([([(([(((([(((([[([[[[(([[([([[(([([(((((((((([([[([[([[[([[([((((([([[([[([([[([[[(([((([([([(([([((([((((([[[[[[([[(([[[[[[[(((((([[[([[[([((([([[[(([[(([[([[[([((([[(((([([[[[([[([([(([[[([((([([[[[([([([(([[((([(((([[([[([(([[[(([(([([[([(([(([[[[(([([[[([((((((((([[[(([[([[([[[(([([[[[(([[[([([[((((((([[([([[([[((([([(([(((([[[([[([([([(([[[[[[[([[([((([([((([(([[([([[[([(([(([[[(([(([[[[((([[[[[([[[[([[[[(((([([(([(([([([[[[[(([[[[[([([(((([[[[[[(([[[([[[([(((([[(([(([([((([(([[[[[([[[[(([([[([[(((([[([[[[[[[[[[[[[((([[([([([[[(([((([([[[[([[[([([[[([(([(([[[(([((([([[([([([([[[[[[[[[([[[([[([[[[[[[(([[([[[[([([[[([(([[[[[[([[([([[[[((([([([[(([[(([((((((([[([[([([([[([([[[[([[[((((([[[[[[([[([[[([(([[[[([[[[([([([([[[[[[([([[[[[[([[[(((([([((([[((([(((([[[[(([([[[((([[[([[[((([[[[[[([[[[[[([(([[[((([[([([[([[[([([[[([((([[((([[(([([[[([([(([([[[([[[[([([([[(([[[(([(((([([((([[([([([[[(([((([([([((((([((([[[([[[[([[[([[[[[[([(([[[([([[([[(((((((([(([[[[[(([(([(([(((([(([[[[[([[([([[([(((([[[[(((([[[([((((((([([[[[[[(([[(([(([[([[(([(([[[(([([[(((([([[[[[[([[[[[([[(([[[([[[[(([[(((((([[([([[[[(((((((([[[([((([[((([((((([([(([(([(((([[([[([[[([(([([([((([[([(((([[[((([(([[(([[((([[[[[[([[([[(([[(([[[[(([[[[([([[[[(((([(([[(([([[([([([[[[([[([([(([[[([(([([((([([([[(([[([([([([([(([((([(([[[(([[[([[[(((([(([[[((([[([([(([[([[[[[[([[[((([[[[[[[([[[([([[((([[[(([[([(([(([[([[[([[[([[([[(([([[(([[(([([[(([[[((([(([([[[[([([([([([(([(([[(([([[[(((([(([(([(([([[[[[((([(([[[[[([[[([([[([[([(([[(([[[[([[[[[[[(([([([[((([[[[([[([(([([(([([(((([([[[((((([(([[[((([[[[[([(((((([([([[((([[(((([[([(([([((([([[[(([([[[[([[[(([([[[([(([[[[((((([((((([(([[[(([([([([([(([((([[((([[[(((([(([[[([[[((([[[([[(((((([[[([(([((([[(([(([([([((([[[((([[[([[[[([[([[([(([[([[[[[([([[[[[[((([[[[([[[[(([[[([[((([[[[([[[[[(((([[[([[[([[[([[([(([[((([[[([([([(((((([[[((([[[[([([[(([(([([[[((([[[[[[[[([([[[((([[(([[[[[[[(((([([[((([([((((((([([[[((([[([((([((((([([(([(([[([[[[((([((([[[[[[[[((([([[[(([([[[[(([([[[([([[([[(([[[[[([(([[[([[[([[[([[([([[[[(([[[[[[([[[[[[[[([((([(([((([[[[[((([((([[(([([((([[[([[((([[[([[[([[(([[[((([[[[[(([(([((([((((([[((([(([[[([[[[[([(([([(((([([((([([(([([([(([[[[[[([[([(([(([[[[[([[([[([([[[[([([(([([[([(([[[[([(([((((([[([[[[((([(([[([[[((([([[((((([[[[([[(((([[[((([([[[((([[[([[(([[[([[[([(([([[((([[([[[[([[[([(([([([[([(([[[[([[[(((([((((((([([(([([([[[[([[[[[(((([[(([[[([[((([([(([[(([[[[(([[[[([([((((([([(([([[(((((([([([([[[[([[(((([[((([[((([([[[([[([((([([([[((([[[(((((((([[([([((([(([([((([(((((([[[((([[((([[[([[([[([[[[([[[[(([[[[((((((([(((([[(([([(([[(([([[[(([((((([[[([(([[([[[([(((([(((([(((([[[(((([(([[([((([([([([[[[([([(([(([([[([((([[[(([[([(((((([[((([([([[[[(([[[[[[([([[([[(([((([[([[([[[([(([(([(((([([([(((([(([([[(([([[[(([(([[([(([(([([[[(((([[[[(([[((([[(([[([([(((([[[[([[(((([([([((([[(([[([(((([[[(([([(([[([[(((([[[[[[[[((((([(([([([[(((((([(([([(([(([([[[(([[([[[([[(([([(([(((((([[([[[[[(([(([((([[([[[[[((((((([[[(((([([([[[[[[(([[[((((([[[([[[([((((([[[([([([([[(([([[(([((((([([(([[[([[(([([(([[[([[[((([((((((((([([([[[[([[[[[[[((((((([[([([[[[[[((([[(([(((([[[([([([[[((([[([([(([[((([(([[[[((([[[[([([[[[((((([[[[((([([([([[[((((((([([([([(([((((((([([(([[[(([[[([[([([[[[[[([[[[([([[([([[[([(([([((([(([[(([[[[(((([[(([(([[[([([([[[((([(([[[([((([[([(((((((([([[[[([([(([([[[(([[([[[((([((([[[[[[((([[((([[[([[[[[[([([[[[([([([[[[[[(([([[(([[[((([[(([((([[[[(([[[[((([[[[[[((((([(([[[[([[([[[[([((([[(([([[[(((([[[[([[([[([([((([[([((([([[(((([([[[(([[(([([((((((((([[((([[([[[([(([(((([(([([[(([(([([[(([[(([[[[([[[[([([[(((((([[(([[([([([(([[((([[([[(([(((([([([[((([(([((([[((([((([((([([[[[([[([[(([[[(([(((([([[[[([(([(([[([(([(((([([(((([[([[([[(([(([[[[((((((([(([[((([((([([([[([([([([[[[((((([([([[([([(([[((([(([([[[[[[([[(([[([[(((([[[([([[[((([((([(([([[([([([[[(([[([[(((([([([(([(((((([[([[[[([[([[[(([(([(([[([[([(([[([[([([[[[((([[[[(((([(([([[[[([[(((([([[((([[(((((([(([([([(([[([[([[[([[[[([((([[((([([(([[(([(([[[((([([[[[[(((([([[(([([[(([([[(([[((([((([[([[(([([([((([[(([[([[((([[(([(([[([[[[[(([[[([[[([[[([[(([([((([[[[[[[[([([((((((([(([[((((([(([(((((([((((([([[(([[([[((([[[([([[([([[[[[([[[(((((([[[((((([[[([(([[[([([[([([[[[(([([([(([[[([[([(([[[[[([[[([[[(((([[[[([(([(([(((([[[([([[[[(([((([[(([([((((([([([(([([[[[([[([[[[([([(([(([([([[[([[(((([[[[((([[[([[(([[[(([([[([((([([([([(([[((([[[[((([[([[((([((((([(([([([([([(([([[([([([[[[[((([[((([[(([([((([([([((([[([[([([[(([(([(([((((([[([((([(((((([[[[(([[[[((([([([[([[[[([(([(([[[[(((((((([([([[([[([([(((((((([((((([(((((([([(([(([((([[[[([([(((((([([((([[(([([((([[(([(([[[[(([[([[[[(([(([[[[[[[([[(((((([[([(([[(([((((([[(([[((([([[(([[([[((([(([([([[([[[[[[(([[([[(([([([[[[[([(([[([([[([[((((([(([[[[([[[([[([[[([((([([[[[(([[([[[([([[([[([[[[[([[((((((((([(((([[(([[([[(([([[([([[[[(([([([(([[([(([((((([(([([([((((((((((([[[[([([(([[[(([[[((((([([(((((((([[[[((([[(((((([([[[[([[[[([[([[(((([(([[([(((((([([[([([([(([((([[(([[([(([[([([[[((([[(((([[((([[[([[(([([([[[(([[([[([((([((((((([[([(([[([([(([((((([([(([((((([([(([(([([(([[([((((([(([([[[[[([[([[(([[[((((((((([([((([[([[((([((([[(([[([[(([(([[[([([[[[[([[(((([[[([[([[(([[[[((([[((([[[[[([((([([((([[[[(((([[[((([(([[[([((([[[[(((((([[([[[([([[([([[([[([[(([[(((([((([(((((([((([(([[[([([[([(([[([[([([([[[[[(([[([[[(([([[((([[(([[[[[[[[([[([((([((([(([((([[[([[([([([([[[(((([[([([(([[((([[[(([([[(([([[[(([(([[(([(([((([[[([(([[[([(([[[(((([(([[[[[[[((([(((([([[[[(([([([[((([[[([[[[([[((([(((([(((((((([[[([([[[[((([[[[[[([[([(((([(((((([([([(([(([[[((((((([([[[[[[([[([((([[[[(([([([[[[([[[((([([[[([[[([(([([([((((([(((((([(((([([([(((([[((([[([((((([[(([[[[([[[[([(([(([(([[(([((([([[[[[[[[[[(([[[((([[[([[((([([[[(([(([((([[(((([(([([[[[[[[[(([[(([((([[[(([[([[((([(((([[[(([[[[[(([[([((([([([[(((([([((([([[(([[[(((([(([[[([[([(([[[[[[((([[[[[[[(([([[(((((([[[(([(((([[([([(((((([(((([(((((([([[[([([[[(([[[(([([[[[([(([[((((([([([[[[(([[((((([[[([[[[[[[[[(([[[([([[[([[([(([([[[[([[([(((([[[((([[([[(((([[[[([[(([[[((([[[[([(([([(((([([([[[[([[([[[[[[[[[(([([([[([[[((((([(([(([[((([[[[([[([([((((([([[[[([[(([[([[[[(([[[[[([((([[([[[[[((([[[[[((([(([([(((([((([[[(([([(([[([([[([([([[[((([(([(([([[[((([([[[[([([[[[([([[[[([([([[(([((([[[[([([(((([(((((([(((([[((([[((([[(([([[([([[([[[(([[(([(((([([[([[[[[[([[[(((([[(([(([[[[([(((((([[([[[[[[([[[([[(([(((((([([[(((((([[([[[[[(([([([(([[[([(((([([((([[[((([([([[[[[[((([[[(((((([[[[[[[[[([[[[([[((([([(([[([([(([(((([((([(([[(((([[[([[[[[[([(([((((([[[(([[[[[([[([[([([[((([[(([([(([[[([[([(([[[((([(([([[[[[(([[[[(([[[([[((([[([[[[[(((((((([([(([((((([([[((([[[[((([([((([[[[[[[(((([([[[([[(([[[([([(([[[[(((([(([[[[[(([((([([[[[(((([[([[[[[[[([(((([((([([(([([[(((((([([(([[([[(([[[(([[[[[(([([[[([([[[([[[[(((([(((([[(((([[(([(((((([(([(([[[([(((([(((([[[((([[([[([([([(([(([(([(([[([[[(([[[([[([([([[[[[[[[[[[[([((((([[(([(([([[([([(((([[([[[[[[(((((([[([(([[(([((((([[[([[[([((([([((((((((([[([(([(([[(([[[(([((([[([[[(([([((([(((([[[([[(([([[([[[([[([([[[([[[[[[[[(([[(([[[[([[[([(([[([(([(([([((([([[([([[[(((([[[(((([((([([([[([[[([[([[[[([(([((([[[([[[([[[[[([(([[([([(([[[([((([[[([(([[[[((([[[[(([([([[([[[([[(([(([([((([((([((([[(([[(([(([([[[([[(([(([[(([[(([[[[(([(([(([([[((((((([[((([([(([[[[([([[[([[[[[([[(([((([(([([((((([[(([[([(([[([[([[[[[[([[([([[([([[(([[([([([(([[([[[[[[((([[(([[[([([(([(([[((([(([([[[([[[([[([(([[[(([(([(([[((([((([([[((([([((((((([[(([(([([[([(([[[[((((([([([[([([[[[((((([[([[[((([(([([(([[[([[[([(([[[[[([[(([([[(((((([((([(([[((((([[[([[([[[[[((([([[[[(((([((((((([[(((([[([([((([(((([(([((([[([[[((((((([([[(([[((([(((([[([([([([[([[[[([([[([[[([[[[([[[(([[[(([([[([[([(([(((((([(([([[(([(([[(([[[([[[(([(([([(([[[[(([[[[(([([(([[([([([[[(([[([[[[[([[(([[[[[[[[((([[([[[([([(([([[[[[[[[([[([(([([[[([((([[[(([[([([([[(((([([[([([([[[[([[((([[((([(([[[([[([[(([([[(([[(((([([[[([[([[[[[(([[[[([[(([([([(((((([[[[([[[[[([(((([[([([([(([([(([((((([[[[[(([[((([([([[(([[((([[[([((((((([([[([(([[[[([[[[([([([[(([[[[(([([([(([[((([[((([(([[[((((([([(([((((([[[[[(([(([[(([[(([([[[([([([([((([(([((((([[((([[[(([[([[[[[[([((([([[[([[[(((((([([(((([[(([[[[(([[((((((((((((([(([[[(([[([((([[((((([[([[[[[[(((([([((((([[((([(([[([(([[[(([[([([[(((([((([([(((([[(([[[(([[[[[[([((([(([[[([([((([[[((([[[([([[(([[[[[(([([[[([([[([(([(((([((([[(([[((([[[[((([[[[[[[[([[[([((([([(([[((([[([[((([[[[[[[(([[[([[((([([[([[((([[[[((((([([[([[([([([((([((((([[[(([[((([(([(([[[[((((([[[[[((([((((([[([[[[[[[[[[[([(([([[(([(((([([[[([(((([[[[[([(([[((([([([(((((((([[(([([([[[[([(([([[(((([([[[([(([[[[(((([((([[([(([[[(([([([[[[([((([[[([[[[[[[[([[[([[((([[([[[[[[([[([([([(([[((([[[[[[(([[(([[(([[[[([(([((((([((([([[[[([[[[((([((([([[[[[[([([([([[([[[([([[(((([[(([((([([([[[([([[([([([[([([([((([[[[([[[[[(((((([[[[(([([[(([(([[([[((([(([([(([([([([[[((((([[(([[[[(([[[([[[[[(([[([([([((([[[([(([[([([(([[[[[(([(([[(([([[[(([[[(([((([((([[([[([[[[((([[([[([([([([[[[[[([([[([[((([(([[(([[[((([([[([[[([([([(([[[([([([([[(([[(([(([[([([([([([(([([((([[(((([[(((((((((([([[[[[[[([[[((([[[[((([(([[[([[([((([([((([[([(([[[[(([(([[[[([([(([([[[((([[[(([([[[[[(((([([[(((([(([[((([(([([[[[[([[(([[[[((([(([([((([[([(([[([(((([((([[[[([(((([(([([[[(([((([([[[([(((([([((([(([(([([[[[(((([[[[[([([[([[([((([([[([([[[[([[[([([([[[[[(((([[[[([[([[[[([[((([([[[([(((([([([(([[(([((([(([[(([([(([([[[[[((([([[[[([[([[([[[([[[[(([(([[([(([[[[[[[[((([([[((([[[([[([((([[[[[[([([([[[[[[[[([((([[[[([[(([([[[((([[([((((([([(([[([([[[([((([([(([([[[[([([[[(((([([[([[([[([[[(([([[[([(([[([[[[[[[([[[[([[([([[[[[[((([([([([[[[[[(([([([(([[[(([((([(([[(([[((((([(([((([([(([(((([([[([((((([(([(([([(((((([[[((([([[([[(([(((([(([[(([[[(([(([([[[(([[((([(([[[(([[[([(([([(([(([[[[[[[(([[([([([[[([[[([(([(([[((([[[[[[[((([[[(([([[[(([[[([([[((([([[[[[([[[(([([[[([[(([([[[(([(([[([(([[[[[((((([([[[[([([([[(([(([[[[([([([[([[[[([([(([[[(([[([[[[(([([(([[([[((([[[([[[[((([(((([[([(([[[[([([(((([(([(([[([[[[(([[[((((([([([(([([[[[(([(([([([([[((([[[[[[((([[([((([(([(([((((([[(([[([([((([[[((([([[[[[(([(([[[[([[[[[((([([([[[((([[[[[[[[([([([[([([(([(([[[[([([((([((([[([[[([[[[([[[[[([[[(([([(([([[(([(([([(([[(([([([[((([[[[[(((((([([[([[[(([(([[[[(((([[(([[[[[[([[[([(((([[[[(((((([((([[[[[(([(([(((([((([((([([([([(([[[(([[[([[[(((([[[((([([[((([([[[([[([[([([(([(([[(([([[([[[[([([([([[[((((([([(([[[([[[((((([[[(((([((((((([([[[[[[([[([([[((([[[[(([(([(([[[[(([(([((((([([[([[(([[(([[[((([([((((([[([[[([(([((([([([((([[([[[[(((([[[(([[([([[[[((([(((([[[(([([(((([([[[(((((((((([([[[[[(([[[[(([((([[([([[((([([[([((([[[[(((([(((((((([([([([([([[[([[[([([([[((([(([[[[([((([([((((((((((([[([[((([((((([[((([[[(([[(([(([[([[([[([[[(([((([((([[(([([[((((([((([([[(([[[((([(((([(((([[([[[[(((([([([(([[[([[[[[[[[[(([([([(((([[[((([[((([((([[[([((([[[[[(([[(([[(([[[[(([(([[([[[[((([[[[[[(((([[[[([[([[[(((((((([([[([[[[[(([([[[[[[[[([[([([((([[([[[[[[[([([([([(([[[[([[[([[[(([([[([([(((((([((([[([[([([[((((((((([[(([[(([((([[[[(([[[(([([[[[[[([(((([[[(([[([[[[((((((((([[[([(([([[((((([[((((([[(([[(([(([([(([([[(([([[([([[[([([[[(([[((([(([([[[([[[[[([(([(([([[[[[([(([[[([[[[([(([[((((([(([((([[[[[[[[([[((([[(([[([[(([([(([[((([(((([[[[([(([((([([([((([[[[([((([[(([[(((((((([((([(([(([([[([(([[[[(([(([[[[[[([(((((((([[[[([[[([(([(([[((((((([[(([[((([[([((([((([[[(([((([(([([([(([(([[([[(([[[[[(((([[(([[[[[[[[([[[(((((([[[([((([[(([[(([[[[[[([([(([(([[[[[(([[[(([(((((([[([[((([(((([([(([[[((([[([((([[([[(((([([([[(([[[[[[[([[(((([([[([[[[[[[(((((((((((([(([([[[(([[[((((([[[([((([([[([([[(((([(([([([[([([([(([(([[[((([[[((([[((([[((([[[(([[(([(([[(((([[[([[([(([(([((([([[[[(((([[[(((([([[([([[[[[((([(([[[(([([([((([(([[[[[[[[([[([([([([(([(((([[[[[([[([((([([([((((([(([[[([[([([((([(([([[[(([[(([[([[(((((([(([([([((([[(((([[((([((([[([[[([([[(([[[([(([([(((([(((([([([([([[[[[(((([[((([[((([[([[[([[(([([([[(([(([(([[([[((([((((([([[[[[[[(([[[[([((([[[((((([((((([((([([[([(([(((([[(((([([[([[[[(([[([[([((((([(([[[(([[([[([(([[(([([([[([((((([[[[[[[[[(([[([[(([[([(([((([([((((([((([([[(((([[[[[([[([([[((([(([[(((([(((([[([(([[[[([[[(([[[((([[((([([(((([(([([([[(((([[([([(([[[[[([[([[([[[(([[[([[([[([[(([(([[([(([[([[(([[[[([[[(([((([[(((([(([(([[(([[[[[[[[[[[(([([[((([([(([[[([(([[[[((((([([(([[[[(([((([(([(((([([[[(([((((([([((([[(([[[([[([([[([[((((([([([[[[([([[([([(([([([[[[[[([[([([(([[([[((((([(([[([(([([[([[[[[[([[(([[[(([[(([[([([[(([[[((([[[[[[([[[([(([([((([[[(([[[([[([[(((([(([(([([([[[([(([(([(([([[[[((([([[[[[[[[([(([([(([[([[[[(([[[((([[([[([(([([([[[[([[(([[[[((([([[[((([((([[[([(([([(([(([((((([(([([[([[((([((((((((([[([[[([(([((((([[[(([[([(([[(([([[(([[([[([[([[[[[([([[(([([[((([[[(((([([[[((([([([((((([[([([[[([[[[([([[(([[([[[((([[[([((([(([((([[([[[[([[([([(([([(([[([(([[(([[[((([[([[([([[[[[([[([[[[[[(([([(([(((([((((([(([[((([[[[(([[((([[[((([([([(([(((([([[[([([[([[((([([(([[[[[([((([[[[[((([([[([(((([[[[[[(([[([[([[[[[[[(([([(([(([([([(([(((((([([([(([[[([([[[((([((((((((((([(([[([[([[([[[[((([([(([[[[[[([([[(([[([[(([([([[([[[[[[[[[[[[[[[[[([[(([[[([[[[(([[[(([[([([(([[([([(([([[[[([([(([[[[((((([((([[(((([((((((([((((([((([[([[(([[(([(((([[[[([[[[([[[(((([((([([[[(((([([[[([[[[[[[[[([[[([([(([[((((([([(([(([[(([[[(([[[[[([[(([([([(([((([[((([((([(([[[[[[((((([([[((([[[[[[[[[([(([[(([([[([[([[([[(([[((([(((([[([[([([([[[[((([([(([[[[[[([[(([[([((([[[[[((([(([[((([(((([([(([[(((([[[(([[[[[([(([[[[(([([[([[((((([[((((([[[([[(([[([((([[[([([(((([[[[([(([([([(([[(([[((([([[[((([[[[([[[[((((([[([[(([([([[([[([([[[([(([([([[([([[[(((((([([[(([(((([(([[(([[[[[([([((([[(([(([[([([([[(([[[[[([[([[(([[[(((([[(([[[[(([[[[[[(([(((([[[[([[([((([[[[([[((([(([([([((([([(([([[([[([(([[[([[(([([[(([[([([[(([[(([[([((([[[((([((([(([[(([[[[[(([[[(([([(([[[[([[([((([[([([(([[[[[(([[((([[[([[[(((((([[[[(((([([(([([[([([[[(((((((([[[[[(([([[([([[(([[([(([[([[[([(([[[[([([[[[[[[(((([[[[[(((([[[[[[((([[[([[[[([[(([[(([([[[([([([((([(((([[[([(((((([(([((((([[[[([[[([([([(([[([[([(([(([[[[[[(([([[((([[((([([([(([([[([[[[([(((([(([((([(((([[[[[[[([[([[[[(([([[([([[[((([[[[([[((([[((([([([[((((((((([[([[[[((((((((([([[(([[((([[(((([[[((([[[((([([(((([(([[(([[(((([(([[[([[(([[[[(([[([[(([[(([(([(((([[(([(([[((([[((([[[[[[([((([((([((([(([[[[([[((((((([([[[[([[[(((((((([([((([([[[(((([[[([((([[[(([[[([[[[([(([([((([[[(([[[[(((([(([([([(([([[(([[[[[([([[((([[[[(((([([[[[((([(([[(((((([[[((([[([[[((([[[([([(([((([([[((([[[((([[[([[[[(([([((([(([([(([(((([([[(([([[(([((([[((((((([([(((((([[[[[([([(([[[([[[[([(([[(([((([[(([(([[[((((([[([[[[([(([[[(([(([[(((([[[[[[[[(([[([[([([([[[([[[(([([(((([(([[[[([(([[[[([[[([((([[(([((([[[[[(([[((([[([[[[[[[[[(((([([([(([([[(((((((([(([(([([[[[[(([([([([([(((((((([[(([([(((([[[((((([((([[[[[[[(([[[[[([[[(((([[([(([(([([[[[[(([[[((([((([((([((((([[[(([(([[(((((((([[[[([[((([([(([((((([[(((([[[[[([[[[(((((([[[[[[((([[[((([([([(([([([[[[[[((([([[[([[((([([[[(((([(((([[[(((([[[[[[[(([[(((([[((([(([(((([[[[([(((([[[[[((([[(([[[([[[[((((([[([([[[((([(([([[([[([(([[[([([[[[[[(([[([[[((([((([[([([[[[([(([[[(([[[[[[[[[(([(([([((((([[[[[([([[([([(([(([[([([(([([(([((((([(([([(([[(((((((([[([[[(([([[([(([([(([([([(([([(([([((([([([[[[(([[([((([([((([[[[[([[(([([((([((([([[([[[([[[([([(((([[([[([([[[(((([([([([(([[([[(([[[([[([[[(((([[(([([([((([[(([[[([[[[([[[[([[([([[[([[([[[([[([([[[[[([([[([[[(([[[[[[((((([[[(([(([(([[[[[([([(([[(([([([([([(([[(([[[[[[[(([([[(((([[([(([((([[[[([(([[[[[[((((([([[[[[[[((([([[[([((((([[[([([[((((([((((((([([([([[[[([(([([[[(([((([[(((((([[[[[([[[([([[([[((([[(((([[[[([[((([((([((([(([[[[((([[[(([[([(([[[[[([[[([([([[((([[[[[[(([(([[[[[[[[(((([[(([[[([(([(([[[([(([[[[([[([[(([[([[[[(([[(([[[[((([[[(([[[[[([[[([[(([[[[([([[(([[([[[[([(((([[(((([((([([([[([([((([[(([((([((((([([([[[[([[((([(([(([[(([[[[[[([[[[(([(([[[[([[((([(([([([((((((([(([[[(([(((([[(([[([[[[[(((([(([([([([[([[(((([[[((([[[(([((([[(([([([(([[([[([([([(((((([[((([[[[[[([(((((((([[([(([(([((([(([[[([([([(([[[([[(([[[((((([[[[[[[(([[[((([([([([[[[((((([[[[[(([[(([([[([(([[([([((((([((([[[([(([[[(([([([([([[([((((([(([((([[[[([[([([[[(([([[([(([[[[(((([([(([[([([[[[[[([[((([([[[(([(([(((([([[((((([([(([(([[((((([(([(([[([[[(((((([[[[([[([([[[((([([([[[(((([[[[((((((([[[[(([([[[([[(([[[(([[[([(([([[(([[((([(([((((([[[[([[([(([(((((([((((([[[([(([([([[[[[[([(((([(([([[(([([(([(([([[((((([[(([((((((([((([([(([([[((((([((([(([(((((([[[((([[(((([((([[[[([([[[[[([[[([(([[[(([[(([[(((([([[[(([([[([(((([[(([[(((((([([[(([(([[[(([((((([([([([((((([([([[([([(((([(([(([[(([[[(([[([(([(((((((((([[[[(([([(([[[([[[[([([[(((([[[[[[([[[(([([(([[[(([[([[(([[[[((((([([(((((((([[(([[((([[[[([[[[[[((([[[(([[([([(([([(([[([[[[((([[[((([((((([[[[[([(((([([[(([[((((([[([[(([([[[[([(([(((([([[([([[[((([[(((([([([[[[[[[[(([[[((((((((([((([[[[((([(([((([[(([[[[(([(([[([((([([[(([(([(((([[(([([([(((((([[([((((([[(((((([([(([[[[[[([([([[[([[[[[((([[([[[[([[[([([([[([(((((([([([[([[[(([[(([((([((((([[[([((([((((((((([((([([(([[(((([(((([[([(([[([((([[([[[([[[([(([([((([[[([[[[[[(([[[([([[([([[([(([[(([((([([[(((((((([([[(([((([[([[([[[([(([(([(([([[[((([(([([(((([(([[[((([[([([(([([[[[([([[((([([[([[([[[[[[(((([(((([(([((([(([[[(([([(((([[[(([[([((([[(((([[[[[([[(([([([[[(([[([([[([((([[([[[[((([[([[[[[[[[(([([(([((((((((((((([[(((([[[([(([[[[[[((([[((((([((([[[([[[(((([([[(((([[[[([[[((([[[[(([([((([[[([[[(((((([[(([(((((([[([[((((([[[[[((([([[([[((([[[[[([[[((([([(([[[[[(([([(((([([[([([[((([[((([[([[[(([[[([([[(([([[((([([[((([[((([[([[([[[([((([[[([((([[(([[[[([[[([(((([[[(((((([([([(((([[(([([[[[[[([[(([[[[[([[([([[(([(([(([[[[(([[[([([(([([[[[[([[[[([((([(((([([[[[[([[([[(([([[(([([([[[(([[([[[(([[[[((([[[((([[([[[[(([(([[([([[[(([[([[((([[[(([[([([[([(([(((([([[(([[(([((([([[([(([[[([([[[[[((([[[[[[[(([([[[[(([[(([((([[([[((([[(((([([[[[[[([[((([([[[(([[(([((([[[[(((([([(([([([[[((([([(([[[(([[[[[[([(([([([([[[(((([[([[((([(([[[[[[[[[[((([[([([(([([[(([([[(([[[[(([(([[([(((([[([([([[([[[[[([[((([(((([[([[[[[(([([[(([[([(([[[[[[([((([[(([[[[[([[[([[[[[[([[((([[(((([(([[[((([([[[[([(((((([[[[[[[[[([((([[[[[[(([[(([[(([((([(([([(([((([[(([[[([([([([([[[((([[(([[([(([[[[[[[[[[[((([((([([[[([([[([[([[([[[(([[[([[[(((([[((([([([((([([[([[(([[[([[(([[[[(([[[[((([[([(((((([[[[((((((([([[[[([((((([[[[[([([[[([(([([[(((([(([([((([(([([([([((([(([([([[(((([([[([[[[[[(([([[[(([(([((([[([[[[[[([[([[([([((([[([[([((([[([([([[[((([(([([[[(([[[[([[([(([[[([(([[([[[([(([[[(([[[(((([([([(((([(([([[((((([(([[[([[[[(((([[([([[([([[[[[[[[[([[[[([([([[[(([[((([[(([((([([([((((((([(([[[[(([[[([[[[([[[[[[([((([([[[[[[([([([[[[(([((([[([[[[(([(([([(((([[[(((([[[[((([(([[[[(([(([[([([([((([[[[[[[[((((([[((([[[[[[[((([[([[([([((([[[[(([(([[(((([[[[[[[[[([[((((([(([[[[[([[([[[(([[([(([[([(([(((([[([((([([[([(([[([(([[([[[(([([((((([[[[([(((([([[[(([([(((([[(([([([[[[(((([([(([([(([[[[[([[(([[[[((([(([[([[([([([[(([([(([([[[[[[[[([([([[[[[(([[[(([([([[((((((([(([([((([[([((([([((([[([[([([(([[((([([([((([((([(((([([[[[[[[[[([(((((([([((([[[[[((([((([([(([([[([(([(([([([(([(((((([(((((((([((([[[[([((([[(((([([[(([([([([([[(((((([[([(([[[((([[(([[[[([[([([[([[([([([(([[[(([(([[([[[([[[([((([(([[[[[[(([((((([[([([(([([((((([(((([[([(([[(([[([[([[[([([(([[([([(((([[([[((([(([(((([[(((((((([[([((([[([[([([[[(([[(([(([[[([[[([[((((([([(([((([(([[([[[[[(([((([([[(((([[(((([[[[(([([[(([([[([[[([([((([[(([[((([[[[[[[[[[[[((((([([(([([([[(((([([[([(([[[([[(((([[[[([([(([[[([([[[[[[[((((([[([[[[([[([(((([[([([((((([(([([((((([[([([(([[[(((((((([(([[[[[[((([[[(([([[([((([[[((((([([[([[((([((((([(((([[([[[([([([([[([(([[[((([[((([[[[[([[[([((([[([[(([(((([(([([[([[[[(([[[([((((((([[([[([(([([([[([([[([[((([([([[[[(([[([[(([[[(([[[([([([([(([([[(([([([((([([[[[((([(([[([[[([([([((([([[([([[[[([([[([((([[[(([(((([((([[(([([([((([(([[[[([[[[[[([([[[(((([[(([[([([[(((([([[([[(([((([[((([([([([[[[((([[([(((([([(((([[([([[[(([[([([(([([[[[([([[([([[[[([[(((([([(([[(((([([[[([([((((([[([[[[(([[(([[[([[([[([([(((((([([([[[([([([([[((([[([(([[[((([([([[((((([[[([([((([[[[[([([[([(([([(([([[((([[[((([[[(([[((([([[([([(([([[[[([[[([((([((([[[([(([([([(([(([[(((((((([[[(([([(([[(((([[([(([([[(([[[(([[([[[[[[[[(((([[[[([[[(([[((([[[[[[[([([([[[[[[([([[[[(([[(((([([([([((([([(([[[(([[(([[(([(([((([([(((([(([[[([[((([[((((([[[[[([[[[[([((([([[[((([(([((([[[(([[[([(([((((([[(([([([([[[(((([([[[(([([((((([(([([(((((([[((([([([([[[([[[[[([[[[((([[[(((([(([((([[[(([[[(((([([[[[[(([([[[[(((((([(([[[[([([[((([([(([([([(([[([[(((([[([[[([(([(([[((([[[[[(([[[[[(([(((([((([[[[([[((([[[[(([((([[(([[([[([(([(([[[[(([([((([[([[([((([[([([[([[([[((((([((((([[((([[([[([([([([([[(((([([[([[([[(([([(([[([[(([[([[((([((([[([([[([[((([([[[([(([[([((([([[[[([[((([(((([[[([[[(([([[[[[([([[([[[([(((([[(([(([[[[[[[[((([[[([[[(((([(([(([[(([((((((((([[[[[([([([([(([[[([[[([([[(((([([[[(([(([((((([(([([[(([[[([(([[([(((([[[[[([([[[([(([[((((((([([([[[[(([([[[[([[[(([((([(([[[([[([[(([[[(([[(((([[[[([([[([([((([((([[([([((((((([[[(([(([([([[[((([[([((([([[[[[[([((([[[[[[[[(((([[(((([((((([([[[[[[[[([[[[[(([(((([((((([[[[[[[[([(([[([([([[([[[(([[(([((([[[(([([[[((([([((([[[(((([[([((([[([[((([(([[[((([[[[[[[(([([[(([[[[[[[[(((((([(([[([([([([[(([[(([[[[(([([[[([[([([[([([[[[((((([[[[[([(([([[[[((((([[([([(([[((((([[[[[[[([([[([[(([([(([[[([[[[[[[[[[((((([[[(([([[[[[([[[((([([[[[[([[[[[[[(([([(([(([[(((([(([(((([[([[[[[([(((([[[[[[[[[[[[[[[([[[([[[[[([([([([((((([[(([[[(((([[[(((((([[([((((([[[([(([[(([[([[(([([[[([(([((([((([[[([[[[[[(([([[([(([[[[[([[[[[[[[((((([(([([((([([[[[[[(([([([[[((([[([[[([[[[[((([[[[[([[[([([(((([[[[([[([([(([[([(((([[([[((([(([[(([(((([([[([(((([([([[([([[[[[[([[(([[((([[[[[[([(([[[[[([([(((([([[(([[([[[[([[([[((((([[([((([([[((([([[[((([[(([([([[[[[([((((([([([(([((((([([[((((((([((([[[[[([(([[[[([[[[[[[((([([[(((([[(([(([[[(([[([[([[[([(((([[([(((([(([([[[((([((((([[([([((([[[([(([[[[[(([[[[([([((((([((([[[[([[[[[([([[[[(((((((([([[[([([(((((([(([([[[([([(((([[[([[([(([([[[(((((([([[[([(([[([([[[([[[([(([(([(([[((([((([((([[[[([(([[[[(([((([([[([[[(([((([[(([(((([([[[[[(([[(([[[[((([[[([((((((([(([((((([[(([([[[[[[([(([([[[[[[[[(((([[[(([([((([[[([((([[(([([(([([(((([[([([([[[[([([[(([(((((((([[[(((((((((((([(([((([([[([([((([([(([((([[[((([([[(([((((((([[[(([(((([[[[((([[[((([([[(([[[[([[(([[[(([([[((([[[[[[[([[([[((([([[[[[([[[[((([[([[[([[[[([[([((([(([(([[[[([([[[[([(([([(([([([([(([(([(((([(((([[([([[(([(((([[([[(([[(([[((((([[(([[([([[(([[[((([[[[[[([([[[[([([[([[[(((([(([[(([(((((([([([[[[([[[[([[[[[((((([((((([(([([[[[[[[[[([([([[[(((([[((([((([[([[((([((((([(([[(([[(([[[[[((([[[[(((([([([[[[[(((((([(([([([[[[(([([[[([[([([((([[(((([([([([([(([(([[([[[([([(([(((([[[(([[[(([([((([(([[[[([[(((((([[[[[(([[[([([(([[[([[[[[[(([(([(([[[([(([(([[((([([[([[(([([((([[[[([[([(([(([([[(([[[([(([((([[(([([[[[([[(((([[((((([[([(([[([[[[(((([([(([[(([[([(((([([(([[[[[(([[((([([([[[[((([([((([[(([([(([[[[(([(([([([[([[[[[[([(((([((((([[[((([[((([(([[([[[[[[(((((([((([[[[[[[[[[((([([[([[[([[((([[(([[(([((([[[(([([[[(([[[[(((([((([[[(([[[(([(([([((([([([[[(([([[[([[[[[([[([[(([([([[(([[[(([[[[((([([(((([(([(([[[((([([([[(([[[[(([(([[[([([[[([([(([[[[(([([[(([[[[([([[([[[[(([[[(((([([([[[(((([[([[((([(([[[[[(([[[(([((([(([[([([(([[([((([[(([[([([[[[(((((((([[(([([([(([([(([[([[([[([((([[((([([(((([[[[((([[[[[[((([([[[[[[[[(([[[[([[[((([([([(([[[((([[[([[([[(([([[((([[(([[[(([[(([([[([((([(([(([(((([([([[[[[[((([([(([[(([(([[[(((([[[([([([[([[([[[[[[([[[[[[([[[(([([[[((((([[[[[((([((([[([[[[[(([((([[([[[([(((((([(([([[[[[((((([([[[[[((([[[[[[[[(([[[[[([([([[((((([[[([[[[[([(((([([[[([[([[[[(([[[(([([[[[[((([[[((([(([[((([([([([[[(([[([[([([[(([[[[[[[[([([[[[[([([([[[[(([((((((([(([[(((((([[(([[((((((([[([([[([(((([([[[((((((([[[(([(([([((([([[[(([[[[(([([[[([(([[[([([[([[(((([([[[[((([(((((([((([[([[(([[[[([[[[[[[[([[[[[([[(([([(((([[[(((([[([[([(([((([(([([([[(([[((((([([((([([[[(([[([[([((([((([[([[[[((([[([[(([(((([[[([([[[[[[[([[[[[[[[([([([([[[[[([(([([[[[[([([([([[[[[[([[([(([[([[[[(([([(([([([[[[(([([[((((([[([[([([[([[[(([(((((([((([(([(((((((([(([[[(([[((([[[[[[([(((([([(([(([[([[[([(((([([((([[[([(([([[(([([(([(([((([[[[(((((([(([[[([((([[([((([[[[(([[(((([[(([(((((((((([[([[(([[([([(([(([(([[([([([[[((([[(((([([[(([[(((([[[[([(([(((([[[[(([[[([[([([((((((([[[[([((([([([[([[([([[[[[[([([[([[([(([[([(((([((([([([[(((([((([[[((([[[[([([(([[[([[((((([([([([([(([[[[([([[([[[[((([(([((([([[([([[[(([[[([[[[((([([[([[(([[[([([([([((([[[[(([[[[((([((([[([[([((([[(([([([[(([((([[[[(([[([([((([([[([[[[((([([(([([[[[(([([([[([[([[[[((([[([[(((([[[([([[([[([[((([(([(((([((((([[[[[[([[[[[(([((([(([[(([[((([[(([[([[[[[([(((([[[[[(([[[(([([([[([([[[(([([[[([(([[(([([(([[((([[([((([([[((([[(([([([((((([([[[[([(([([([[([[[[[[[([[[(([((([(([[[([[(([(([[[[([[[[[[[(((([[([((([(([[[([[([([[((([[([[[((([[[[(([[((((([([(([([[[[[([(([[([[[[(([(([[(((([((([[([(([[[[[[([([(([[((((([[(([[[([([[([[[[([[[(([[[[[([([((((([[([(([[[[[[[[(([([([[[([[(([([[(([((((([(([[([([[([(([[[[((([([([([(([[[[([[((((([[[([([([([[[[[[[[((([([([(([([([[[[(([[([(([([[([(([([(([[[((((([(([(([[[[[[[[[(([([((([([[[([(((((([[([[(((([(((((((([([(([(([(([[((([((([([[((([[([[[((([([[[[(([([[([[[([([([([([[((([(([((([[[([[([[(([(([[[[[([(((([([[[([([([[((([(([([[([[[[((((([(((([([([([[(((([([(([[[(([[(([[[[([([[((([([([([[([[[[[[([[([((([[[(([(([([((([((([([[((([((([[((([(([([([(((([((((([([[[[[(([((([([((([((((([([([([([([[([[([[(([[([[(((([[[[([(((([[(([[((([(([[[([([[[(((([((([[(([[[[([[[([[[([[([(([[([[([[[(((((([([[[[(([(([[[[([[(([[[[([([[[([[[[([((((([(([([((([([(([[([[[([[[[(([([([([(([([[[[[((([([[[([[(([((([([[([((([[([[[[(([([([[(([[[[[([(((((([(((([[[[[[[[(([[[([([[[[[[[[[[[[(((((([[([(((([[([[[[[[([((([([([([[(((((([[(([[((([[([[([[[([([(([([[([([(((([[[([(([(((([[[[[[(((((((([([[(([[(((([[[[[(([(((([((([((([(([(([(((([([([((((((([[(([(([([([[[(([(((([[[[(([(([(([[[[[[([([[(((([((([[((((([([(([[[([[[[([[[([[[[[(([[(([(([((([[[(([(((((([([[[[[[([[[(([([([[[[[(([[(([([(((((([((([(([(([(([([[[[[([((([[[[(([(([([(([[([[[[(([[[([[([[((((([([([[([[([(([(((([[[[[([(([[(((([((([(([[[(([[([([([(([[[([([[(((([(([[([(([[((([(((([((([[[(([[[[[[([[[([[([[[[(([([([[[[[[(([[[([[[[((([[(([(((([[[[(([([[((((([([([[[[[[[[(([[((([[[[[([[((([[[([[([[(([([((([[(([((((([(([(((((([[[[((([([([[([[([(([([(([[[[([([([(([((((([((([(([[(((([[[([(([[([[([([((([[(([(([([[[[[[[(((([[[((([[[([(([((([((((([[((([(([[[[[(([([[((([([((((([([[((([(([([(((([[(((([[(((((([[([[[[[([([(((([[[[([[((((([[[(((([(([[(([([((((([(([((([[[[([[[[[[[([((([([(([[([[[(([[[(((([[[[([[[[([([[(([[[[[((([(((([([([[(([([[[((((((([[([[((([([(([[([[([[[[[([[[[([([(((([[(([([(([(((([[(([[[(([(([[[([[([([[(([[([[([((((([[(((([[[([[[[(([[[(((([[([(([[[[([[((([[(([[(([(([[[(([(((([[[[[(([[[[(([[[[[[[(((([((([([[[[([[[([[[([[([([([[[(([[[([(([([[(([(([[[[[(([([[[([[[((([((((((((([[[[[[(((([([(([[((([(((([[([[((([(((([(([(((([[([[[([[[([(((([((([([([(([[([((([((([([(([[[[([(([[[[[(([[((((([[(([(((((([[[([[[[[[[(([[([[(((([[[[([[[[[[[(([[[(([[(((([((((([((([(([(([[[([(([([((((([[[[[[[[[([[([([[([[([[([((([[[[[[[[(((((([[[[[[(([([[(([(((([([([[([[((([(([(((([(((([[[(((([[[[[[[(([([([([(([[([([(([([[[([[[[[[(((((([(([[[(((([([(([([((((((([([([((([([[[[[[[[((([([[(([([[[[(((([[([[[([([[[(([([(([[[(([((([[([(([[([([[([([((([[((([[(([[[[([((((([([((([[([[((((([[[[((((([[([[((([[[((((((((([[([[[[[([[(([((([((([[(((([[[([(([[[([((([[([(([[([[(([([[[(([[[[(([[([([(((([[([[(([([([[[[(([[([([([[([((((((([([(([([([[(([([([[[(((([[[[(([([(([([[[[(((([[[([[((([[([(([[[[((((([[[(([([[([([(([(([((([([[(([[([(([((([(((([[[([[((([((([(([([((([[([[([[((([((((([([([([[(([([(([([[([[[[([([[[[[[([([([[([([[([[(([[((((([[[[(([([[(([[(([(([[[[((((([[[[[[[[[([[(((([[(((((((((((([[((([[[([(([[((([(([((([([([[([([[[(([[(([[[[[[((([[((([(([[[([[([[[[[([([[[[(([[[(([[([([[[(([([(([([[[([(([([[([[[([[[[[((((((([(((([[(([(([[([[[[(([[([[[[[[(((([([[[([[[([[[([(([((([((([[[[[(([[[(([(([[[[([[([([([[(((([[[[(([([([[((((([[[(([[(((([(([((([(([[([[[[((((([(([((([([[([[([[[[[((([[([((((([([((([(((([([(([[[[[[(([((([(([[([[([[[([[((([(([[(((([(((([([(([[(([[((([[(([([([[[([([[[[(((((([[(([[[(([[[([([[(([[[[[(([([[([[(([(([[[[[([((([[[[[[[([[([([(([([[[[(((([[[[([([[[[[((([((([[((((([[([[((([([[([[((([[[(((((([[[[([((((((([[([(((([(([[[((((([[(([((([([([(((([[[((((([[[[[[([[([((([[[(([[([[[[(([(((([[[[[[([[([[[([((([[[[((([[[(([[([[[((((((((([[[[[[[[[(([[[((((((([[[(((((([[([([([([[[[([[[(((([[[([[[([[[(([([([((([(([[((([(((([[(((([[([([[[(([[(([[([(([(([[[(((([(((([([([[[[[[(([[(([([[(([((([[[[(([[([([(((([(((([[[([[[(([[([[(([((([((([[([[([(([[([([[[[([[[[[([([[(([([([([(([([[[[([((([([[([(([([(((([[([[[([[(([(([[[[([[([(([[([([([(([((((([[[(([([[[[([[((((([((([(([((([[((([[[((([[[[[([((([[((([[[([([([([[[([([(([[[(([[[[[[[([[[([((((([[[((([([([([((((((([(([[((([[(((([[[([[(([(([(([(((([([[(([([[[(((([(([[[([(([[(((([([[((([(([(([[[((([[[[([([(([([[[([(([[[[([([[(([(((([([[[[[[[[([[([[([[[[([(([([([([[(([[((([[[([[[([[[[[([[[(((([((([[(((([[([[(([[(((((([[([[(((([([[[[([[[[[[[(((([[([[[(([(([(([[[([[[[[([(([[([(([([[(((((((([([[(([[[([([([[([([([((([[[[(([([[[((([((([[[([([(([((([[[((([[[([(([[[([[[(([(((((([(([[([[((([((([[[[[([[[[(((((([([[[(([([((([[([((((((([[(((((([(([[[([([([[([[[[((([[((((((([(([[(([([([[[(((([[[[(((([([(([([[[[([[((([[(([[[([([[[[[([([([[[(((([[[[[[([[[[(((([[([((((([([[([(([[[([[[[[(([[[([[([[([((([([([([[[([[((([[([(((((([[([([(((([([[(([([[[([(([[([([[[[((([([[[(([([[[[[(([[[(((((([([([(([(([[[[((([(((([(([([[[(((((((((((((([[[([[[[(((([(([([(([([([(([([(((([(([((([[(([([[[[[[([(([[[(([([[[([[([([[([([[([[([[(([[([[(([(([([[[[[[([[[[(([(([[(([([([((([(([(([[[(([[([[[(([[[[[([[[[[(([[[[[(([[[[[([([[([[([[[([(([((([[[(((((([[(([(([[[[[(([[[([[([([((((((([[([([(([[[(((([[(((([[([[([[(([[[[[[[((([(([[(([[[((([((([[[((((([((((((([(([[[[([[[([[[[(((([(([[[[[[[(([[([[[[([[[[[([[[([[([([(([[(([([[(([([([[([[[([[([[[([[[(([(([([([[[([([(((([[[([[[([[[(([((([([[[[([[(([((([([([([((([((([(((([([[([(([[([(([([[[[([(((([(((([(([((([[[[([[[((((([[[(([[(((([((([(((([[([[([[([([[[[[[[[[[[[([[(([[(([([[([[[[((((([(([([([(([([([((([[(([(([[[((((([[([[([[((([[(((([[((([[((([[[(((([[[(([[[[[(([[[(((([[([[[[([([[[(([((([[[(([[[([[[(((((([([[[(([[([[[([[(((([[[(([[[([((((([([[((([[([((([((((((([[[[[[([[([(([(([[(((((((([[((([[[[[[([([([[([(([[(([([[[[[[[([([[[[[((([([[(([([([((((([[([(((([(([[[((([(((([[[[([[[([([[[[(([[[[[[([[[([(([(([([[(([([[[[[(([(((([(([[[[(([([([[[[((([[(((([(([[([[[[[((([[[([[[(([([(((([[(([((([(([[(([([[[([([[((([[[[([([(([([(([(((([([[[([([[[([((([[([((([(([([[[[[([([([(([([([(([[[[[([(([([[([[(((([[([(([(([([(([(([([([[[[[([([([(((([[[[([([[[[([[([([[(([((((([([(((([[[([((((([[((((([((((([(([[[([((([([[(([([(((([[([([[([[([([((([[[([([[([[[(([[(((([[(([[[((([[[([[([[[[((([(((([([[([[[[[[[([(([[([[([([[[(((((([([((([([(([(([[([(([((((((((((([([[[(([(([[([[[([[((((((([[[[[((((((([(([([[((([(((([[[[([[([([((([[[[[[([[(([([[[[(([((([(([[[[[(([[[[[[[(([[[((((((([(((([([((([(([([[[[((([(((([((([[[((([[((((([[([([([[[[(([([[((([([[[(([[([[[[[[([[([([[([[[[[([[[(([[[[((([([[[(([(([[([([[(([[([([[((([[(((([(([[[[[[[([((([([[([[([([(((([([[[(([(([[([(((([((([([[(((((([(([(([[((([[[([[((([[([([[([[([[[[[[[([[[[[([(((([[[[[(([[(((((((([(((([(([([([[[[(([[(([[((([((((([([([[([(([([([((([(([[[[([(([(([[[[[[[(((([(((([([[[([((([((([(([([[([[([[([[[[[[([([((([[[(([([[((((((([[[((([(([(((((([([[([[([[[(([([[[([[[((((([[((((([[([((([[[(([[([(((((([(((((([[[[[[[(([[((([[([([[[[[([([[[[[[([[[[([[([[[[([(([([[([((([(((((([((((((([[([[([[[([[([[(([(([[(([([([[[[[[([[((([[[((([([[[[[[([((((([[[[[[[((((([[(([(((([([[((([[((((((((([[([[((([(([(([(([([[[([[[([[([([((((([(([[([[((([((([[[[[([((([((([[[([[[[([[([(([(([[[([(([([(([[[[([([((((([[[[(([[[([[((([[[[[[[[[[([[[([(((([(([[[[[[((([[([(((([[([[[[[([([([([([[([((([(((([[[([([[[(([([[([(((([([(([((((([[[([(([((([[(([((((([[[((([([[([(((((((([[[[((([[[[([[[[([([([([[([[(([[([[([((((([[[[[[([[([([[[([([[[(([[[[[((([([[[((([([([([(((([((((((([((([([([([((([[(([([([((([(([([[[([([[[([([[[[[(([[[[([([[((([(([[[([((([([(([[[[([([(([(([[[[[(((([(([[(([(([[[[(([[([[[[[([[[(([[[([((((([[([[[[(([[[[(((([[[[(([[[(([(((([(([([([[(((([[[[[([((([([[([[[(([[[([[[(([[[(((([[((([[([[((([([[[([([[([[([([([((((([[([([[([([([[([([(([([(([([((([[[[(([([([[([[((([([[((([([(([((((((((([[[[[[([[[(([([([((([[([[[([([(([[(([[[(([([[[([((([[((([[([(((([((((([[([((([(([[(([[([[[[((([[[([([[[((((([(((([(([([[[[[[(([[(((([[[[([[(([(([([[(([[[(([([([(([(([([(([([([[[(([([((([(((([([[[([[(([[[([[[[[[[(([[[(([[[(([[[[((([[[[(([([([[[([((([[[[[([[((([([[([([[([([((([[([((([[[([([((([[([[([([[[[[[([([[[((([[(([(([((([(((([([(([[([([((([[([[([([[[[(((([(([([(([[[[(((([[[[([[[(((([[((([((([[((([([[[([([([[(([[(((([([([([(([[[([[([[([((((((((([[([[[(([[[[([([(([[[([[([((((([(([((([[[[[(([([((([[[((([[[[([[[[([[((([(([[(((([[(([[[(((([((([([(([(((([([(((((([(((([((([((([[([[[[([[[[([[([[([(([[(([[(([[[[[(([[(([[(([[[[[[(([([(([[[([[[[[[[(([([[([[(([(([(([[([[(([(([((([(([[((([(([[([([(([[([[([[[[([(([([[[[(([[([[[([[[(([[[[[[([(((([[(([([[[[[[((((((([[([[[[([(((([([((((([[[([[[((((([([(([[(([[(([([[(([([[[((([[(([[((([[(((([([[[[(((([[(([[(((([[[([(([([((([[[[[[[[(((([[[((([[(([[[[[(((([[[[[[(((([[[[[([[([(((((([((([[[([[((((([(([[(([[[[[[[(([([[([([((([[[([[(((([(([[((([[[([[((([([[(([[[([[[[[(([[((([([([[(([((([([[[([([([[(([(([(([(([[([[([[[([([[[([(([(([[([[[([((([[([(([(([[[([(([[[[[((([[[[([([(([[(((([[([[([[[([((([([[(((([(((([[[[([([[[[[([((([([[(([[([[[([([([(([(([(([([[([([[[[[(((([[[(([[[(([[(([[(([([[([[([((((([(([[[[[[(([[(((([[[[[[[([([[((([[[[[[[[[[([[[((([([[[[[([[[[([([(([[(([[([[[[([([[([[[[(([[((([[([([[[[(((([[([[([([((([([[([[(((([(((([[[([[(([((([[([(([(([[([((([([([(([[((([([[[[[((([[([([[([[[(((([[[([[((([[[[[[[[((([(([[[([(((([([((([[[((((((([(([[[((([[(((([[[([[[([[(([(([((([[(([(([(([[[(([(([([([[[([((([[[([[((((([[[(((((([([[(([((((((([([([([([(([[(([[[[[([(([[[([[([[([[([[(([([([((([(([([[[[([((([[[(((([[[[((((([[([(([[[[(((((((((([(([[(([([([([[[[((((([[([(([[[([[[(([([([[[[[(([([(((([(([([[(([(([[(((([[(([[[([[([[[[(([[([[[[((([(([(((([[(([([((([([([([[(((([[(([([(([([[[[[([[[([([([(([[[((((([([([(([[[[(([([([[([[([[((([([[[(([[(((([[(([([[[[[[(([[[(((([[(([[[[([[[[((((((([([[[([[[[[([((([([[([(([([[((([([[[(([(([[[[([(([[[[((((([[((([([[[(([([(([[[([(([[[(([[[([([[[[[[(([([[([([([[[[[[[([[((([([([[[([([((([([([([([[[[([[[([[[[([[[((((((((((([[(([((([[([[[[[[[((([[([(([(([[[[([[(([([(([(((([([([([((([[([[([[[[[([[[([[([[([(((((([[([([[[([([[(([((([([(([(([[[([([([[(((([[[([(([[((((([[([((([[[[([(([[((([([((((((([[(([([[[[[[((([((((((((([([[(([[([[([[([([([(([((([[([[[[[((([[([([([[[[(([[(([((([(([(((((([([([[[[((([((([[[((([([[((([(((([[[[[(([[([[(([[[[(([[[[([[[[(((([([([((([[(([([[([[((([[[((([[([([[(([([(((([([[[[[[(([(([([([[(([[[([[([[[((([([([([(((([[[[[[([([[[[[[([([([([(([(([[((((([([([([([[[([([[((((([[[[([[[(([(([((((([(([[[[[[[[([(((([((((([[[(([(([([[[([(([(((([([([([[[(([(((([([[[[((([([[[[[[(([([[(([[[[[[([([[([([([(([[[([((([([(([[([[([[[[[[[((([[(([[([[(((((([[[(([((([((((((([((([[[((([[([[[([[([[((([[[([[((([[(([[([([[[(((([((([([(([[[[[([[[([[[[([((((((((([(([(([[[((([[(((([(((([[(([([[[([(([[(([((([(((([((([([([[((([[((([[((([[(([[([[((([[[([[[[([(((([((([[(([[((([([[[[((([[[[([(([[([(((([[([[(([(([[([[[([[(((([(([[([[([[(([((((((([[[[(([([([[(((([(([[[[(([[([((((([(((([[[[[([([[[[[[[([(((([[([([([[[[(([[[[[[[[[([(([[[[[([[[[(([([([(((((([[(([[((([[(([[[[[[((([([([[(([(([(([([[[([[[([([[([(([([[(([(([[[((([((((((((((([(([[([([(([((([([([(([([[[(([[([[[(([[((((([([[([[[[[[[([([[([[((([(([(([(([(([[(([[((((((([(([((([([(([[[[[(([(((((([([[(([[[(((((([[[[[(((([[((([[(([(([([[[[[([[[(([[[[((([[((([(([[[(([[[([[([[([[(([[([[(([[((([[((([[(([[([[(([([([(([[[[[[((([[((([[[[(([(([[[[[([[(([[(([[[([[(((([(((([[[((([[[([(((([[((((([(([((([(([(([([([([([[[([(([(([(([([[([[([[([[[(([([[([[[[(((([[[([[[[([([([([(([[[[(([[([[([[((([(([(((([[[(([[[(([[[[(([[[[[[[((((([[[([([[[((([([([([(([([[([([([([[[[[[[((([[(((([[([[[([[(([[[([([([([[[[((([[[([[[[[[(((([([((((([(((([[[([(([(([[([((((([((([[([([([[(([[([([[[([(([[([[[((((((([[((([[(([[[[[[(([(([(([(([[[([([[([[[((([(([(([(([[((([[([([(((([([[[([([([[([[[[[(([([([([[[[(((((([([[(((((([([([[[([[([([[[[(([[((([[(([[[[[([[[(([((([[(([(([[(([([([[[[[((([([[(([((([[([[(([[((([[[((([(([[[[[[(([([(([[[([([[([([((([([(([(((((([[([[[[[[([([([((((([(((([[(([([(([(([[[[(([[([(([[(([(([[[[([[[[[[[[([((([[(([([([[(([(([[[[([[[((([[([[[(([[([([([(([(([(([([([([[[[[[(((((((([(([[([[[(((([[[([[[[[[[(((((((((([([((([[[[[[([((([([[([(((([([((([(([[((([[((((((([([(([[[([([([([[(((([[([[([((([[[((([[([(([(((((([(([([[([[(([[([[(([[(((([[[[(([[([[[[(([(([([[([[(((([[([[[[([((([[[(([[([([[([[(([[([[[[([((((([((((([([([[(([([[[(((([(([[[([[(([(((([((([[[(([([[(([(([([((([(([([([[([[[[(((([[(((([([[(([[(([([[(([((([((([[[[[(([([[[(((((([[[[((([[([[((((((([[((([([[[[[[([((((([([([(([[[[([((([((([([(([[[(([[[[([([((([[([[[([[(([(([(([(([[[([([[([[[((([[(([[((([[([([[(([([[([[([[([[[(([[([[([([[([[([[([[[([([[(([[([[([[[([([((([([[(((((([((([(((([[([(([[([[([[[[[(([[([([([([((((([[([([((([((((([[(((([[(((([[(([((([(([((([((([([([[(([([((([([[(([((([[(([([(([[[[(((([[[(((([([[((([[(([[([[([[[((([[([([([[(((([([[([[([[(((((((([[[([[[[[(([(((((([[(([((([(((([((([[([[[[([[[([([[(([((([([[[[([[[(((([[((([[[[(([([[[[[(([([[((([[[([[(([[(([[([[[([[(([([([((([[[(([[([([[[([[([[[[([[([(([[((([[((([[(([((([[((([[([[(([(([(([([[([[[[[[[[[[([([((((([[[[[[([[[[([[[[[([[[[[[[[(((([([[[[([([[([[[(([[[(([[(([[([[(((((([[[[[((([[[([(([[((([([([[[([[[([[[[[([[[([[[[[[([(([[(([[([([([([(((([(([((([[[(((([(([([((([(([[[([([(([[((((((([([([[[(([[([([((([[[(([[([([(([(([(([[[[([([(((([([(([[([([(([(([(([([([[(((([([[[[[([[([[[[(((([(([([([[([[([([[[(([((([([([(([[[[(([((([[[[((([([(([[[(([[[[((([[[[([([[[([[[[[(([[[(([([[(([[[[[([[[(([((([[(([((([[[(([[[[([[(([([(([([[([[((([([([([((([[(([([(([([[([(([(([((((([((([[([[[[([[([[[[[[[[([([[((([([[(([[[([([((((([((([([[[([(([[[[((([(([[([[[[[(([[(([[(((([[[[([[[(([[[(([[[[[(((([[([[(((([(([[(([[[((((([[[(((([([([(([[([[(([[[[[[([[(((([((([[([[(([[[[([([[([[[[(((([[[([[(([(([(((((((([([[[[[[[(([(([[[([((([([([(([([[([[[[([((([(((((((((((((((((([([[(([(([[((((([[([([(([((([[[([[[([((([([([([([([(((([[([[((((([[[([(([[([[(([([[([[[[[[([((((([([(((([[(([[[[((([[([[[([((([[([[((((([[((([([[((((((([([(([([([(((([[[([[(((((([[[([[((([[(([[([([[[(([[[([(([[((((((([([[[[([[(([((([[[((([([([([(([([[([([[[[[([((([((([(([([[([(((((([[[[(([((([([(([[[([((([[[[[[((((([[[([([[[([[[([[(([([(([[([([[[[[[(([(([[[[(((((((([(([(([((([([(([([(([([[[[([[(([([[(([[[([(([([[([(((([([[[[([[[((([[[[[[(((([[(([((([((([[[[((([([(((((([[([[([((((([([[[[[(([((([[([[([([((((([((([[[([([[[[([(([([([[([[(([(([[([(((([(([[[[([[([[(((([(([[[[[[([[[[[[((((((((([[[(([[([([[([[([([[[[[([[[[((((([([[((([[[((([([(([[(((([[[[[[([[([((((([([[[[[[([[[[([[(((([[[[([(([(([[[((([[([([([[([[[([([[[[[(([([([[[([([[((([([([([(([[[[[(([[[([[(([([([([((([[[([[[[[[[[([[[[[[([([([([[(([[[[[[(([[[((((((((([[[([[[[[[(([(([[([[((([((([(([[([(([[[[(((([(([((([([[[([([([([([(([[([[((([(([([((([(((([[[([((([[[[[[[[((([([[[([([((((([([[[[[[(([[[(([[[[([([[(([([[[([(([((([[([[[[(([[[[[((([([[[(([[([([(([(([(([[[(([[([([[[[[([[([([[[([([[[[[[([([(([[[[[(((((((([(([(((([[[((([((((([[[[((([[([((([([(([[([[([([[[[[[([[[[((([[[([([([[[[([(([([(([([(((((((([((((([[[[([[[(([([[([[([([(((([[([[[(([[(([((([([[([[[([([[([(((([[[([((([[(([[([([[(([[[[[[[([[((((([[([((([([([([[(([([[([([(([[[[[[[[[[[[[((((((([[[[[((([[[([[[((((([([[[[(([[([[[((([[[[[[([([[((([([[[(([([([[([(((([[([[(((([[((((([([[([((([([(([[[(([[[[([([([((([(((([[(([((([([([([[[(([(([(((([(([[[(([[[([([[(((((([([[([[(([[((([[(((([[[[([(([([([[[[((([(([([[[(([[[[([[[[[[[([(([(([(([(([([[(([(([((([([[[(([([[(([[[[[(([[[[[([(([[[[[[([([([[[[(([([[(([[([((([(([[([[[[[[([[(((((((([[[[[((([[[[[([([[((([[((((((([([((((([[([[[([([([(([[([(([[((((([[((([([([[([(([[[[((([[([(([[((([([(([(((([[([[[(((([[[((([[(([[([[(((([[[([[(([([[(([[[[(([((((([((([([(([[[[((([([[[(((([(([[[([(([(((([([[[[(([[([([([([[([[(((([[((([[([[([(([[[[(((((([[((([([[([([[[(([([([((([([[[[[[[[(([([([[([[[((([([[[[(([([([[[[[((([(([([[[[[[[[[[[([[([[((((([([[[((([[[[[((((([([(([[[[((([((([[((((([((([[[[[([[([[[([[[[[[([[([([[(([[([([(([[[([[([[(([(((([([[(([([[([((([[[[[[[([[([((([(([(([[[((([[([[[[[[(([[([([([[([((([[([[(([[(([[(([((([[(([([[(([[[[[((([[[(([[[[([([([[[[[[[[[[([((([([([[[[(([[[[([([(([((([(([((([(([([[([([[([[([[[((([([[[([[[(([(((([(((((([((([[(((((([[(([[[([[([[([([[(([[([[([[([[(([[[[[[((([([[(([([([((((([(([([[([([([([([[([(([[([[[[[[((([((([[([([([([(([[(([(((((([(([(([[(([(([(([[((([[[[([([[[[([[(([[([(([([[([[(([[[[((([([[[(([[([[(((([((([((([[(([([([(([([((([[([([[[([(([[[[([([([([(([[[([(([[[[[((([[[((([((([[([[(([[[[([[[(((([[[(([([[(((([([([((((([[[[([([[[[((([([((((([[[[[[([[([(([([(((([([(([(([([[[((([[([[[[(((((([([(([[([[([([[[[(([[([[[[([([([(([[([[([([[(([(((([[[([[[[([(([(((((([[[(((([[[[[(((([([[[[[[[[([[((((([([[((([[[[[[(((([([([(([((((([[(((([((([((((([([[([[([(((([[[[[(([[([([[[[[[([([[(([(([([([[([([[[[[([(((((([[(([(((([([[([([[([[(([[[[[[([([([([(([([([(([[(([([[[[(([[([[((([[[([([(([([(([(([[(([[[[[(([[([[(([([[[([[(((([[([(([([[([([[([([(([[([[[([[([[[([((([[[((([[(([([[[[[[[([[([(([[[(([((([[(([[[[[[(([[((([[(([[[([[[[[(((([([((((([(([((([((([[[[(([([(([[[(([[(([[[([[([([[[([([(((((([[([[[[((([(([([([[([[[(([([(([[(((([([[((([([[[(([(((([[(([[[[[([[[[[([(((([([(((([([(([(([[(((([[[[(((((([(((([[([(([[[((([[((([([([(([[(([[((([[((([([((([([((([[[[((([[([[[([([([[(([(([(([([[[[[([[([[[[[(([[([[([[([([[[[[[([([[[[([[[((((([[(([([((([([([[([(([((([[(((((([([([(([(([([[[[[[(((((([(([((((([((([((((((([[[(([(([([(((([[[[([[[[(([((([[[[[[([[[[([[((((((([[[[([[[(([[(([([([[[((([[((((([([(([([([([([(((([((((([((([(((([[[[[[([(([[([[[(((([([([(((((([[([(([([[([[([[([((([([(([[([[([(([([(([((([([[[([[[[[([[([([[[[[(([(([([[([(([[[(([([[(([[(((([([([(([[[[[[[([[[((([[[[[(((((((([[([((([[(((([([[([((([[[([[[([[([([[((([[([([[([([[[[[([[[[[(([[(([[[([([(([([([[([([([((([[([([[[([[(([[[[(([(([[[([([[[[[([[(([([([([[(([[([([[(([(([[[([[[[(([(([[[(([[([(([[[[(([([([([[(((([((([([[[([[([([[[(((([[(([((((([[[[[([[[[([[([[[[[[[([[([[[(((([[((([[[[([([(([[[[(([([[([[[[(([[([(([[[([[(((((([(((([(((([([[[[[([([([[[([[[[((([([[((([[[(((((([(([[([[([([([([[[([[([([[[[(([(([[[[[([([[(([[([(([[[(((([([((((([([[([([[([[((([(((([([((([[([[[[[(([[[((((([([[((([[[[[[[((([[([[[([[[([[[[[((([[([(((([[[[[([[(((([[[((([[[([[([([[[([(([(([[[[((([([[[([(([((((((([[[[(([[([[([[[[([[([([([[([(((([[([(([(((([((((([[([((((([([([[(((([[[[([([((((((([[([((([[(([[(((([([[[[([(([[([[((([[(([[[(([[(([([([(([([([[((([((([[([[([([[[(((((([(((((((([[[[[[[[([(([(([([([([[[(([[(([[[[((([[[([([([(([((([[(([[[((([[((([([[([(([((([([[(([((([([(([[(([([[[([[[([[[(((((([[[([(((([(([[([([([[[([[[[[[[[[[[[([((([[(([[((([[(((([[(([[[[[((([[([[((((([[[([[([([[([([((([([(([[(((([([([([([[(([[((([[(([((([([([([[[((([((([[(([[[([[((((((([([([([(([[([[(((([(((([([[[(([[(([[(([([([[(([[([[[[[([[([([[(([(([[(([[[([[([[(([[[([(([[[([(([[[(([[([((((([(([([((([[[[[[(([[(([(([([([[[[([([[(([((((((([([[(((([((((([([([[(([(([((([[[(([[[[[([(([((([((([(([(([(([[([[([[((([[(((([([[(([([((([([([(([[([[(([[[[(((([[[([([([([[[[(([(([[((([[[((([[(([[([[((((([([[(((([[([[(([[[([[[[([[[[([[([(([[((((([([[((([[([[(([[[[([([(([((([(((([([[[((([[[([[[(([([[[([[[[[([[[[[(((([((([[(([([[[[[([[[[[(([[[((((([[([([([((([[[[(((([[[[[((((((((([(([[([[([((([(([(((([([(([((([[[([(([([(([([([(([([(([[[[[[([[([[(([[[([[[[(([(((((((((([(([([(([(([[[[([(([((([(([[[[[[[[[([[([[[[[([[([([[[(([([(((([([[([([[[[[[([(([[(([(([[[[((([[[[(([([[([[([([[([[[([[(((([(((([([([[[([([([[[[[((([[[[([[[([[[(([[[[([([(((([([[([([((((((((([([([[([[[([([[[[[[((([((([[[[[(([((([[([[([(([([[[(((([(([([([[([[(([[([[(([(([[[((((([([[[([[[(([([([([(([[[[((((([[((([[(([((([([[[(((([([([([[(([[[(([[[(([[([[([(([[([([[(([[([(([([[[[(((((([(([[[[([(([[[[(((([(([([[([([(([[[[[[((((([[([((([[[[((([[(([([(([[((([[([[([[[[[(([(((((((([((([(([[((([[([([([([[([[[(([(([(([[([([((([[(((((([[[([[(([(([[(((((((([[([([([[[[((([[([[(([([[([[([([([([(([[((([[[[(([([[[[([[(([((([(((([([([[[(([[[[((([([[(([([((([[[[[[[[[([([((([[((([[([([[[[[[([([([[[([(([[[[(([[((([([([[([[[([(([[([([(([[[[((([[[[((((([[([[(([([[[[[((([[([[[((([[[([((([[([[[([[[[[[([[([([[[(((([[[(((([(([((([[[[([([[(([((([(([([([[(([[[[((((([[([[[[([[([([(((((((([[[[[(((((((((([(([[[[(([([([[([([[([[([([((([(((([([([[[(([((([([([[[[(([[([[[(([([[[(([([[([[[[[[((([(([(([([((([[[[[[([[(([(([[([[(((([(((([[([(((([[[[(([[[(([[[(([[[([([[[[[[([[([[[[(([([(([([[([((([[[(([(([(([(([[[((([[[(([([[[[[[[(([(((([[[[[[[((([[[(([([(([([[(([[[[[[[[[([([([[([[[([(((([([(([((([(([(([([((([((([[[([[([[((([[[[[[[[[((([((((([[([([(([(([([[((((((([[[[(([[((([[(([[[[([[[([[[[[([[((((([([(([(([[([(([((([([([((([[([[([(((([[[[(([((([[(([(((([(((([[([(((([(([[(((([([[([(([[[[[(([((([(([[([([[([[([[[((([[[([[([[([(((([[[(([([[([(((([[[[[(([[[(([[(([[([[[[[[([[(((([[(((([([([[(([[([([[[[[([((((([(([[[((([([([[[(([(([([[[(((((([(((([[[(([([[(([[((([[[[([(([(([(((([[(((((([[[[(((([(([([((((((([([[(([(([([[([((([[[[([[[[([(((((([([[((([([([(([[([[([(((([[(([[([([([([([[([([[[(([[((([[[(((([[([(([[[[[([([[[(([[([[([[([((([([(([[[((([[[([(([(([[([([(([((((([[[[[((([([([[([((([(((([[([[([(([[[[[[[([(([([(([(([[[[[[[(([([(((((((([(([(([(([[(((([([(((([(((([((((([([[[[[[([[([((([([([((((([([[[[[((([((([[[([[[(((([[([[[[([[(((([[([[[((([[[(([[[([((((((([[[[([[[[(([[([(([((([[[[[[([([([[[[[([[(([[[[[[[(([(((([(([(([(([[(([(([((([[([([(((([([[(((([([(([[[((([[[[[[[([(([[((([[[([[[((([(([([[([([([(([[(([(([[[[([(([(([(([[[([[[[(((([([[([[((([((([([([([[(([[[[[[[(([[[[([[([[[[[[[[(((([[[(((([[([[([(([([[([([[[[[[([(([[([([(([([(((([[(([[([([(([[[((([[([([([([[[([([([([([[[[(((((([([([[[(([[([[[[[[([[[((((([((([(([([((([(([[(([[[([([[((([([[(((([[[[[[(([[[[([([[[[([[(([((((([([[([[((((([(([[((([[((([[([(([(([[[([(((([[[(([[[[[[(([((([([[[[[(((([(([(((((([[([[[[((((((([((([[([[[[([(([[((([([((([[(([([((([[([([([([[[[[[[[[([[[(([([(([(([([[[[((([[[[[((([([[([[([(([[(((([[[[(([[((([([(((([([([(([([[([[(([([(([[([(([[[[[[([[[([(([([([[[(((([(([((([([([[([[(((([[([[(([(([([([(([[((([[((([((([[([(([([[[([([([[[[[([[[([[[[(((((([([[[[(([([([((([[(([[([([((((([[(([[(([[(([[(([((([([(([[[[[(([[[([([(([(([([[[(([[[([[[([((([([([[([[[[[[([[[([(([([[[[[([(((((([[[([((([([[[(([([(([[[(((([(((([((((((((([[[[[([([[[(((([([((([[([[([[((([[[((([((([[[([((([[[[([((([([[[([([(((([([(([([[(((([[(((([[((([[((([[[([[(([[[(([((([(([[([([([([([([[([[(([([[([(([([[[((([([[[((([([(([((((([[(([(([([([((([(((((((([([[([[(([[[[[([[[[(([(([[[([(([(((([((([[(([[([[[[((([[(([[([((([[(([[([[([((([(([[([((((([[[[[[[([[[([(((([(([([((([[([[[((([(([(([[([[[([([[([(([([(((([[([([[([(([([([[[[[[([(([([[[[([[[[([[([[([(([(([((([[((([([[(([[[([[[((((([([(((([(([[([(([[[([[(([((((([((([((([[[(([[([[[[[([([[[(((((([([[([[[[[((([((([[[[(([[[[[[(([[[[[[([((((((([[(([[(((([([(([[(([[([([[([([[([[[[((([[(((([[[([([(([((((([[[[[(([([([([[[((([((([[(([((([[(((([([([[[(([((([[[(([(([([([[(((([(([(((([[([[[([[([([[[(([([[[([[(([[[[[([([(([[[[([[(([([([[[[([[[[([([[[[[([[([([[[[[[[[[((([[(([(([[[([[(([(([([[([(([[([((((((([[[[(([([[((([[[[(([(((([[[[(([[([[(([[((([[[[[((([[(([[[[([[[[([(([[((([[([[((([([[[((([([[[([[[[[[(((([([(([((([[((([(((([[(((((([([[([([([(([([[(([[([[(([(((((([[([[([[([([[((([([(([[[[(([[[[[([[([([[[[[(([([([([([[[([[[[[[(([[([([[[([[[[[(([[[([(([[[[((([[((((([[((([[(((((((((((([[[[[((([[[[[[[[(([[([((([([[([([[(([[((([[[[(([([(([(((([[[[[([(([[[[[[[([([[[[[[[((([[(([[(([[[[([(([([([(((([[([[[[(([[[[([[([[[(([[[[[(([[[[[((((([[[(([(((((([([[[[(((([[([[[([[(([([((([[[([(([[([[([((([[[((([[((([([([[([[[[([((([(([[(([([((((([[[([((([[[(([(((([([(([[([[(([([(([[[[[([((((([((([(([([([([[([[([[([(((([[(([[([[([[([[[([[[[[([[(([[[[((([([([((([[([([([[[([([(([([[[[[[[[[(((([[[[[(([([[[[[((([([[[[[[(([(([([[[[[(([([[(([([[(([[[((([[([[(([((((([[[([[([[((([((([([(((([([[((([[([[[[([[[[[[[([((([([[[([([[[(((([[[([[(([([([[[((([[[(((([(([[(([([([[([[[([[([[[[[[(([[[[(([((([([[[[((([(([[(([(([[([[([[([[[((([(([([[[((([(([(([[((([[[[[[[(((([(([[((([[[((((([(([[(([([[[([(([([[((([[[([[([[([[(((([[[([([[([[((([[([[[[((((([([([[[[((([[[((([[[([[([[[[([[((((([(([[[(([(([([((([[([[[[(([(((((([[([([[[[[[(([[[[[[(([[[[[([[(([[[(([([((((([(((([((([(([[(([[([(((([(([([[[([(([[[(([[[[(([([[([[[([[(((((([((([(([[[(([[([([(((([([[[[[(([(([[[([([(([[[[[[([(([((([[([[((([[([[[([[[[[[[([[([(([(([(([(([(((((([[([(([[(([([((([([([(([[[([([[[([[[[[[([(((([(((([[(([([[[((([(([([(([[(([[([[([[(((((([[(((([[[([[[(((([([(((((([([[([([([([([((((([([((((((([([[([[([([[(((((([[[([([([([((((([([[[((([((([((([[[[[[[[[(((([([[[[[[[([(([[[((([(([(([[([[((([[(([[(([[[[((((([[(((((([[[([[[([[((((((([[[[[(([[(([[([[([[[[(([([([([([[[[([([[([[[([(([[([((([[[(((([([[(([[([[[((([(([([(((([[[((([[((([(([(([[[(([((([([[[([(([(([([([[((([[[[[[((((((([[(((([[(([([[([[[[([(([[([[[[(([[([[[[([([[[(([[[[[[[[[[[([([(([([[[(((([[(([(([([([[([(([[([([[[(([[((((([(([[[(([(([[((([(([([(([[((((([[[((((((([[[[([[[(([((([(([[(([[([[([([(([(([[([[[[[[([[[[[([[([(((([([([[[([[(([[[([[[[[((([([[[[((((([([((((((([[[([[[[([[([([((([(([(([[[([(((([[[[[(([[[([[[(([((([[(([([([[[((([((([[([(([[[[([[[[[[[((([(((((([[[([([[[((([[[([[[[[(([[[([([[[(([[[([([([[[(((([[([[[((((([(([[[(([(([[([([([(((((([[(([(([((([[([[([[([([([[(([[([(((([[([[[[[[(((([[[(((([(([([[([((((([[[[[([([[[(([(([[[((([[[([[[[[([(([[[[[[([[[([([[([[(([((([([([([([[(((([([([[[[[(([[[([((((([[[[[((([(([[([([[([[[[[(([[(([[([([(([([([([[[([[[[[[[[(([[[(([(([[([(((([[(((([[[[[(([([[([([([[([([((((((([(([(((([((((((([([([(([[[[[([([[[(([[[[[[([([([[([((((([[[[([[[([[[[[(((([[[[[[(([(([[[((([[[(([(([[([[([(([((([[(([(([[[(((([[([[[([[[[[[[(([([(([([([(([[[(([(([([[((((([[[(([(([[[[([(([([[[([(([(((([(([[[[[(([([(((((([(([[[[((((([([((((([[(([[[([([([(([[(([[[[((([[[([[[([([(([[(([[([[[[((([[[[[[[[(((([(([([[([([[[[([(([[[([[([([((([([([[([(([[([[[([[[([(([[([[[((([[(([(((([[[((((([(([([[([([[([((([[[[(([[[(([((((([[[[[(((((([[(([[[([(([([[([[([[[[([([([([(([((([[([(([((((((([([[[((([([[[[[((([[[[(([([((([(([([[(([([[((([[[([[(([([([[([[[[(([([(([([[([[([[(([[([(([([[([[((([((([[[[[[((([([[[[[[[[[[[([(((([(((([[[[([[[[[[[[(((([(([(([(([[([([(((([[([((((([([[([[[([((((([((([[((((([[[[((([([([[([(([((([[([(([(([[([((([((([[[(((((([[[[([((((([[[([[([(([([((([([[[(([((([[[((((([([[(((((((((((([((([([(([(((((([[[(([((([[[([([[((([[[[((([[([(((([[[([([([([[[[(((([[[(([[[[[[(((([([((([([([([([[([(([([([[([(((([[[[[(([[(([([(([[((([[([[[[[[[([[[(((([[[([(((([[(((([([[[[[[([([[[(((([((([([[([(([[([[[(([(([(([((((([[[[[[[[([[([([[([[[[[([[[([([(((([[[(([[[[([[(([[([[(((((([(((([[([(([((((([[[[((([([(([[(([([[[([[[[[[(([[[[[((([([[[(([(((((([(((((([[([[((((([[[([([[[([([([(([[((([(([([(([[(([[[[([([([[[([([([[([[(([([([(([[[(([[[[(([[[(([[[[[((((((([([((([((([[[[[([[[[[[[[[[[[[(([[((([[([[[[[[[[([(([((((([[[(([[[[[((((([[[(([[[([([((([[[[[(([([([[(((([[[[[(((((([[[[[(([((([[[(((((([(([[(([[([([[[[[[([([([[[[(((([(((((([([(([[(((((([([[[[[([[[[[(((([(([[[(((([[([[([[[[[[[[[[([[[([([[([(([((([[[[([([((((([[(([[([([([[([[[(([(((((([[[[([[[[([[[([(((([[[[(([([((([((([([([((([((([[(((((((([([(([[(((((([[((([[[[((((([(([[[([[[([[(([[[([[(([[[([(((([[((((([(((((([[((([([[(((((([([[([(([[(([(([[[(([[[[((((([([[[[[([[[[([[((([([([((((((([([[[(([((([(([[(([[[(([((((([(([([[([[([[(([([([([([[[(([(([[((([(([((([((([(([((((((([(([[([([(([[((([[[([[[[[([([[([[(([(([[([[[[(([[[[([[([[[((([([([(([[(((([[[[([[((([[(([([[(([[[[([[(([([[(((([((((([([[((((([((([[[([([(((([[([(([([[[[((((([([[((([[([([([([(([([([([(([((([([(([([[((([[(([[[([([[[[[[((([[(([([[[(([[([[((([([[[(([[[[[((([[[([[([[[[[([([([[[[[([[[([(([(([((([(([[[[[[[[([([(([[[[([([[(((([([([[[([[[([([[[(([([(((((([([[([[[(([[[[[[[((([([([(([[([[[[[((((([(([[[((([([[[(((([([[[(([([[(([([[([([(((([([[([((((((((([((([(((([([([[[(([([[[[([((([[([([(([[[[([(([[(([[([([[((([(((([[(([(([(([(([([[[(((([[[([[([(((([[([[((((((((([([[[([(((([(([([[[(([[[([[([[([([(([[[([[([([([(([[([[([[(([[[[[[([((([((((([(((([([(((((([(([[[([[[[([[[[[[[(([([([[[[[[[[[((((((([[([[[(([[(((([(([[(([[[[[(([([([[[[[[[([([(((([[[(([[[[[((([[[[[([([[([((([[(((([[[(([(((([([[([([[[([[[[[([[((((([(([[[([[(((((([([([([((((((([[(([(((([((([((([(([(((([[[[(([[[([[[[(((([(([(([[(((((((([[(((([[((([([(([(([(((((([([((([[(([([([[((((([[([([[[([([[([[(([((([([[(((([([[[[(([([([[[(([[([[(((([(([([[[[([([[[([(([([([[[[(([[[(([((([[([[[[[(([(([([(([[([[[([([([((([[([((((((([([[[[([([(([((([[([(([([[[(([[[((([([([((((([([([([([[[(([(([([[(([[[[[(([((([([[([[(([(((([([[(([([[[[([[[((((([[[([[([[(([([[[([[[(([[[([[[[([([[([[([[[[[([(((([[[[((([[[([([[[[(([[((([(([[((([[[(([([[[[[([((((([([[(([([(([[[(([([[[(((((((([[[[([([(([([(((([([((([[[([(([((([[(([[(([[(((([[[[((([[([[[([([[([([((([([[([((([[[[(([[([([[(([[((([([[((([((((([((([((((([[([[(((((([[[([[([[[([[((([[(([[[[([[[([(((((([[[[[((([((((([[[([[[[([(([[[[(([(((([([(([[[[(([[(([[([([[(([[[([(([[[[(([[((([([(((([[[[[([[[[[([[[([[(((([[[([(([[[[[[([[(([[((([([(([[[([(((([(([(([[(((([([([[([(([[([[[((((([[([[([([[(((([([(([[([[([((([[(([[[(([(((([(((([([[([([((([[[[(([([((([((([([[([[(([[[(([([[(([[(([((((((([[[[([(([([[([([([[(([[((([[([([([[[[[[(((([[((([[[(((([(([((([(([([(([([([((([(((((((([([([[([[[[[(([([[[([[((([((([([[([([(((([[[[([([(((([(((([[(([[((((([[[[[[[[[[((([((([[(([[((((((((((([([[((([(([([[[([([((([[((([(((([[[[((((([[([((([([([[([[([(([[[(([[[[[((([(([[(([[([(([[[(([(((([([[[([([(([[[[[[[[(([[[((([[[[((([[([([([[[[([([([(([[[([((((([([([[((([[[[([[([[[(([([(((((((((([([[(((([[[([([[[([[[[[([[(([([(([([([[((([([[[[[[(([[([[[[(([[(((([[(((([[[[([([((((([((([[((([[([[([[[[([[[[([(((((((((((((([(([[[[[(((([([([([[([[([[[[[([[[(([((((([[[[[[(([([(([([(([([[([([[[[(([([((([[[([[((([[[((([([[[[[[(([(((((([(([[([[(([[([[[[(((([[([[((([[([([[([[((((([[([([(((([[([[(([[([[[[(([[([[(([[[[[(([[([((([[[[[(([([[[([([([[[[([([[((([(([(([[((((([[([([([[[[((([([[([(((([[[[([([(((([([(([([([[[(([([[([[((([[[[([[[[((([[(([([[((([[[[[([([[(([((([([[[(([[[[(((([(((([([([(([[[(((([(([[(([[([[(([[[[[[[[[[[[[[[[((((([[([([((([((([([([(((([[(([[[(([[(([([([[[[[([(((([[(((([([[[[[([(([([(((((([[[[(((([[(([[(([(([[[([[([([(([[(([[[[[[[[(([(([(([([[((([[[((([[([[([(([([(([([([[([([((([([([(([[([(([[[[[[[([[[[[[((([[[((([[[[([[([(([[(([(([(([([[[([([([[((([(([[([[[((([([([[[(((([[([[[[[((([(([([[[[[([((((([[[[[[[((([[(((([([[(([([(([([[(([(([[([[([(([(([[(((([(([[[(([[([([[[[[[([[[[([[([[([[[((([(((([([[[[(((([(([[(((([([[[([([(((((([(((((([(([([(([[([([((([[[(((([([([([[((([((([[[[[(((([([[[((([[[[([([[(((([[[[([((((([[([[(([[([((([[[[([[[([[([(((([((([([[[([([[[[(((([([([[((([[([(([[(([([[(([([([(([((([[[[[[(([(([(([([[((([([(((([([((((([([[[[(((([([([[([[([[[[[([[[([[((([((([[[[[[[[(((([((([[[(([([[[(([((((((([[[([([(([([[[(((((((([[[(([[(([([[([[[(([((([((([([[[([[([([[([((([((([[(([([(([[[[[([[[([((([[[[[([([[([[[([[([[((([[[[((([([[(([[[[((([(([[[(([([(([((([[([[([[((([((((([[[[[(([(((([[((([(([[[([[((((([[([[(([[([[([[[[[[(([(([[[[[([[[(([(([[((([[[(([([([([[[((((((([[((([[[[[[([[[[([((([(((([([[(([[[([[(((([[[(([[([([(([([([[(([([(([[[[[([(((([[(([[([[[(([([[((([([((([([[([[([((((([((([[([((([([(([(([(([[[[[(([[[[[((([(([[[[([[([([[([[(([[[[([((([[[[[[((([[[(([([(([(([([[([[([[(((([([[((([[(([[[[[[[[((((([[[[([[((([[[[[((((([([([([[[([[[[(([[((([[[([([([[[((([[[([([([([((([(([([([(([[[[(([[([[[([([([[([[[(([[[((((([[([([[[(([((((([[[([(([[[[([((([((((((((([((([(([(((([[([([([[[[([[[[[[([((((([[([([(([((((([([[(((((([[[[([([(((([((([[[[[[(([([[[[[[([([[[[[[([((((([[[[[[([([([([[[((([[([[[[[((([([[[[[[((((([[[([[((((([((((([[[[((([([[([([((((((([[((([[[([([((([[(([(([(((([(((([[([([(([([([((([[[(([[[[[[(([[([(([([(([([[[[[[(((([[([((([(([([([([[[[[(([[[((((([[[[[[[(([[[[[[[[((((([([[((([([[((((([(([[[[[[[(([[(([[[[[(((([[(((([[(([([[[((([[[(([([[[[([(([((([([[[([([[[[((([([((([(([[([[[((([(([[[[((([[[[([([([([[[([([[(([[[[((((([[([[[[[([([([[[[[([([(([[[([[[[([[(((([[([(([[(([[((([[([[([((([([[[([[[[[((([[[[([([([([([(([[[[[([((([[(((([[[[[[[((([([([[[([[[[([[[((([((([[[[[[[[[(((([([[([(([([([[[(([([[(((([([[[[([[((([(([[([[[((([[[((([([[(([((((([[[(([([[[([[[[([[([(([(([[[([(([[[[[(([[[[((([(((((([((([((([[[[[[[[[[(((([([((([[((([[([([([[([([(([([([(([((([[((((([[[[[([([[[[[([([[([[([(([[([(([([[([[[[((([[((((([[([(((([([([[(((([([[([([((([[(((([[[(([([([([([(((((([(((([[[([[([(([((([[[([[[[[((([[(([[[((((((((((([([[(((([[[([(((([([(([(([(([([(((([([[([[[([[[([[(([(([[[(([([[[[(([(((((((([[([([[([[(([([[((((([([(([[([[[([[[[([[(((([([([((((((([([(((([[[[(([([([(([[[[[[[[[(([[[(([[(([[[[([([[(([(([[[([([[[((((([[[((((([([(([([[[[([[[([([[[(([[(([([((([(([(([(((((([[(([([([[(([([([[[((([[[[(((((([[[([((([[[[((([[([([[([[(([([((([((([[[[([[[(([[(([[([[([([(((([[((([(([(((([(([[([[[[[([(([(([([[[([([[((([[([[(([([[[(([(([[[((([[[(([(([((((([[[([([[([([(([[([(([([[([((([([(([([[([[([([([[(([[[([[((([([[([[([([[[(([(((([[[(([([([[(([([[[[([([(((([((([([[([[([[[[(([(([[[[([([((([[[[[[[[[[[[([([[([[[((([([[[([([([[(((([[[(([([([([([[([[((([[[(([((([(([[[(([([(([[[[([[[[([((([[([((([[[(([[([([([([([[[[(([[((((([((([[([(([[[([(([[[([([[([([[(([[[[([[[[(((((([([([(((([[[[[([([(([[([[[((((((((([([(((([([([[[[[((([([((([([((([([([[[[(([((([[[([([(([(([(([(([[[[([[([((([[[([[([[[[[([((([[[([([[[([[[([([[([[[([[[[[[[(((([(([([[[[(((([[[[(([(((([(((((((([[(([([[[((((((((((([[[[(([[[([([(([([(([[((((((((([(([(([([([[[[(((([[[(([(((((([(([([([[([[(([[[([(([[(([[([([[[([([(((([((([[[[[([[[([[[[(((((((([((([([[[((([(([[(([([[([([([(([[[[(([([((((((([[(([(([([[[([([((([[((([([(([[[([[([[[[[[[[[(((([([([[([[[[[[[[[((([([[[[([[[([([([((([[((([[((([[(((([[([([((([[[[[([([[[[[[[[([[([((([[([([([[([[((([([[[(([([[([[((([[([[(([[((([((([[([([([(((((((((([[([([[[[(([[[[([[([(((([[([[(([([([(([[([(([([[[(([[(((([[[[[[(([[((([[(([(([[([(([((([([[[[((([(([[(([[[[[[[[[[([[([(([(((([[[[[([[(([([[[[([([[[([[[[[([([[(([[((([([((([[(([[([([(([[[([(([((((([([[[[[([[([(([[(([(([([((((([[[(([([[(((([(([[[(([([[[([[([([[(([(((([([[([(((((([([[(([[(([(([(([([([[([((((([[[((([((([([[[[[([((([[[((([[([[([[[[[[[((([(([[(([[[(([[[[[(([[[[[(([[[([[[(([[[(((([[[[([([(([((([[([(([[([[[[([[(((([(([([(((((([(([([([([((([(([[[[[[((([(([[((([([[([[([([[[(((([[[([([([([([(((((([[[[([[([([([[[((([(((((([[((([[[[[((([[(([[[(([((((([([([[(((([((([(([([[(((([(([[[((([[((([[(([[[[[(([([[[[[([[((([[([[[((([((([([([[([[(((((([[[[[[([[[([[(([[[((([(([[[([[(((((([([(([([[[[((([(([(([[[[[(([[[[[(([[([[(([((((([(([[([[([([([(([[[[([[[[[((([(([([[([[([[[(([[[([((([(([([(((((([([[(([((([[([[[[[([[[[[[(((([([[[[([[((([(([[([[(([[[[[((([([[[([[[((([(([((((((([[((([[[(([([[[(((([[([[[([(([[([[[([([(([[[[[(([([((((([([(([(([(([([[([[([(([(((([([[[[((([([[[[([[((((((([(((((([[((([[[[[([[[(([(([[([([(((([(([([[[(([((([[([([(([([[[[([([(((((([([[([[[[[[[[[[[([([[([[([[[[[[[[((([[[[[([[(((([[([(([([((([([[([[([([[(([[[([([[[[(((((((([[((([([((((((([(([(((([((([(((([[(([[([(([[([([((([[[(([[(([[([([([(([[[([[(([[([[[([(([[[([[(([[[([[([[(((([[([[[[([[([[[(([[[[[[[[[(([[((([[[([(((([[[([(([([((([[((((([[([([[([[([((([([((([([[[[(([(([((([[(((([[[((([[([([[[[[[[[[((([((([([[[[(((((([[([([[([((([(([[([([[[[[((((((([[[([[(([[[[((([(([(((((([([[[([([[(([([(((([([[([((([([(([[[([([[[(([[((((((([[([([([([([[[[([([[[([((([[[(([(([[([[([([[[[(([([[[[[((((([[([[(([[[((((((([[[((([([(([(([([(([(([([[[(([[([[([[([([((([[([[[([[[([(((([[[[([[[([[(([(((([[([([([([([[[[[((((((([([((([((((((([[[([(((((([([(([[(([([(((([[([([[(([(([[([[[[[[([([[[(([([[[(([[[[([[[((([([((([[(([((([[((([[[((([[([[[[([([[[[[[([[(([(([([[[([([[[([[[((([[(([([([[[([[(([(([((((([[[[(([[(([(([[[([([([((([(([[[([(([([([([([[[([([(([[((([[([[[[(([[[((([(([[[(([([([([(((([[[((([[[[[([[[[([([(([[([(([[([((([((([([[([(([(([[(((([([((((([[(((([((([([[([[((([[([[(((([[[[([[((([((([((([(([(((([([([[(([([(([((([[([([[[[((([(([([(([([[([([([([((([[(((([[[([[([([((([[[[([((((((([([(((([[(([[((([[([(([[[(((([([[((((([([[([((([([[(([([(([[([[([([(([[[([[(((((((([([[[([[[(([[[(([[([[([([[[[[[[((([[[(([(([([[[[[[[([([([[[[([(([[(([[((([[[[[[([[([[([((([([([([[(([[([[[[((([([[(([[[[[[[[[[([(((([[([([[([[[([[[([([[[[[(((([(([[[([[([[([((([((([((([(((([(([[((([[[[([[([[[[[(([[[[((((([[[(([([[[[[(([(([[[[[[[[([([(((([[[[[[([[[[[(([[([[[[[([[[(([[[[(([((([[[[[[([[((([[[((([((((([(([[(([((([((([[(([[((((([[([[([[([(((([((([[[[((([(([[[[[(([[[([[([(([[([[([((((([([[[([[[(([[((((([[[[[[[[[([[(([((([[[(([([[[[((([[[[((((([[([[[((([[((([[(([[[[[[[([(([[[((([[([[[([[((((([[[([[(([[[[[((([[[(((([[[((([((([[[[([((([[((([[[[[[(((([[(((((([(([[(([[[[([([(((([(([((([[([[([[[(([[([(([[[[(([[[[[[[(([((([[((((([([[(([[[([[[([[[[[[([[[[((([(([(((([((([((([[(([[[([[[[[[(((([[(([[[[[[(((([(([[([([[[([[[[[(([[([[[[(([[(([[(([[[[((((((((((((([((([[[[([((([[[[((([((([[[[[[[[([[(([([([[([([[[[([[[([[(([[(((([(([[((([[[[((([(((([[([[[[[([([[([[([((([[[(((([[([[[[(([(([(([[([([([[[([[[((([[[[([[([[(([[((([([([(((([[([([[[(([[[[(((([([[(([([(([(([(((([[[[[[((([(([[[[([[[((([([[[([((([(([([([((([[[([[([(([[[([[(([(([(([(([[[[([((((([[([[[[([[(([[[[[[([[(([([(([([[[[([(([[([[(([[[([((([((([[([[[[([(([[((([([[(([[[([(((([[([([(([[[[[(([([(((([[([([[[[[((([(([((([[(([(([[[([(([([[(([[(([[[(([([[[[[[[[(((([(([(([([[(((((([([(((([[(((([(([[[([([(([[[([([[[([[((([([[[([[([[[([[[([[[[[[([[(([[[[[([[[[[(([[([(([[[[[[([[[([([([([((([[([([[([((([[[([[[(((([(([([[(([([[([([[[[[[(([[((([[(((([([[[[([(((([[([[[[([((([([((((([[([[((((((([([[([[[((((([[([(([((([[(([(([[(([[(([[(([[[([(([(([(([[[((([[[([[([[(([([([([[[((([((([(([(([[[[[(([[[[([([[([(([[(([[(((([[(([[[[((([([(((([[[(([(([((([([[((([([[[(([[(([(([[(([[([([[[[([([([[((((([([[((([[[([[[[[[([[([([((((([[[([([[[(((([([[([[[(([[(([((([[[([[[([((([[([(([(([([[(((((([((([(([[([((([([[[([([[[[[[([[([([[[[(([((([[[([[[[[[[([[[[(([[[([[[((((([(([(([[[(([[[[(([([(([[[[[([(([(([[(((((([[([[[(([[[[[[(([(([([(([[[[[[((([(((([[((((([((([[(([[[([[[[((((([([([[[[[(([[[([[((([[[[[[([(([([([([([[[([[([[([(([(([[([((([[((((([[(([[[[((([[(([[(([[(((([[[([(([[(([[([([([(([[([[((([((((([([(([[[[[([[(((([(([([(([(((([([([[([(([([[[([[[[(([(([[(([[([[[[(([((([[(([[[(([[([(([[[[(([[[(([[([[(([[[[[(([[[[[(((([([(([([[[((([[((([([(((([[[[([[([(([(([[((([[[[([(((([([([[([(([[[[(([[(([[[[([([([[[[[([[[[((((([((((([([([([[([[([[[[[[(([[((((([[[(((((([[(([[[[(([(([[([(([[[([([[([[[(([[[[[([[[[[([([(((([[[([[(([((([([[[[[((((([([[[[[[([[([([([([[(([(([[[([(((((([((([([([[[([([((([(((([([((([(([(([[([((([[[[(([[([[(((([[([[[[([(((([[[([([(([[((([[([[([(([[[[[[[(([[[([[((([[[(([([[[((((([[([(([[([[([[([[([[(([([([[([(([([([[[[[(((((((((([([((([[[[((((([[[([(([([[(([(([([((([(([[[([([((([(([(((([([[[[[[[((([[[((([[[([[(((([([([[(((((((([[[(((([([(([(([([[([[(([[[((([[[([(((([[[[[[([[[([(([([([([[([([([[[([[[[[([((((((([[([[[([(([[[[([[[(([[[([[[([(((([([[[[([([([(([[[([[[[[([([([([[(([([([([[([[([((([[([[[[[((((([[(([[[((([[[([(([[[([(([([[[(([([[[([(([[(((([[[(([[[(([([[([[([(([(([[[[([(([[[[(([[[[[[([([[[[([[([([[[([[([([[((([[[[([([(((([([[(([([[[[([[[([([([[[([(([([([[[([[([(([([(([(([([[[[((((([((((([[([([([[([([[([(([[[[(([[(([([(([(([([([(([[[[[[[[[[[[[[[([[[[((([((([[[(([(([(([(((((([[([([[[((([([[([[[[([([([[([[(([[(([(((([[(((([[(([(([[[([[[[[((((((((([[[([((([[([((([[[[([[[((([[[([(([([[[[[[(([[[((([([((([([(([[[[[([([([(((([[(([(([[([((([[((((((((([[(([([[[([([[[[([[([[(([((([[(([[([(([[[(([[[(((([[[([(([[[(([([((([([[([((([[(([[((([([[((([([[[[[(([[[([(([[((([((([[(([[(((([([(([[([([[([[([([([([[[[([([[[[(([[[([[((([[(([([[[[(([([((([[(((([([(([[[[(([([((([[[([[[[(([([(([[((([[[((([[[[([(([([[(((([[[[[[([([(([[[[(([[[([((([(((([[[[(([([(([([((([[([[((([[[((([[[(((([([([[[[[([[(((((([([((([[[([[([[([[(([[((([[[(((((([(([[(([[([(((((([[(((([[[[[[((([([[[[([([[[[([[[([[[(([[((([([[[[([([([[((([[(([((([[(([[(([([([[([([([((([[(([[(([[([([([[(([((((([[[[(([[[[(([[[(([(((([[([([([[[(([(((([((([((([[([[(([[[[[([([(([[([[[([[((((([(((((((([(([[([[[(([[(([[([(([((((([[[[([([(([[(([([[((([(((([[([[(([((((((([(([([[(([([[([[([((([[((([[[[([([(((([[[[[[[[(((([[(([[[[[([((([[[([[[([((((([[(([(([[(([[[[[[[([([[((([[(([[([(([([[[([[(([[[(([((([[([([[([[[([[[([((([((((([(([[[[[[[[[([([[[[(([[([([([[([[[[[([[[[[[(((([[(([([(([[[([[([([[[(([(([[[[[[([((([(((([[[[[[[(((((([[([([(([[(([([[([[(([[[(((([([(([([([[[[[[([[[[[[([[[[(((([[(([([[((([[[[[[[[[[([[[[([[([[[[[[[[[([[[([([[(([([[[(((([([[[[([[[[[(([[[([[[([([[([([[(([([(([(([((((([[[(([[([(([[[([([([((([[[((([[[((([[[([[([([(([([([[[[[[(([(([[[((((([[([[((([[[(([[([((([[(((([[[[((([([([[[([[[[[(((([[[[[([[([([([([[(([((([[(([[([[[([([[([[(([([([(([[[([((([(([([[([([(((((([([[(([(([[[[[[([[((([[[[[[((([[[[((([[[(([[[[([(([([((([([([([[([[(((([[((([[[[[[([((((((([[[[([(([[[[(([[[((([[([[([[[(((((((([([[([[[[[([([([[[([[[[[[([[[[[[[([[([[([([[[[[((([[([[[([([[[[[[[(((([([([([[((([[[[[[(([[([([((([(([[[(((([[([[([[[[[(((([[([((([[[[[[[[([(((([[[[(((([([([[[[(([([[([[([((([[[((([((([[([([[([([(([[[((([[(((([[[([([[([[([[(((((([([[[[([([[[[[((([[([[([[((([([[(([([((([[((((([(([[(((([([[((([[(([[((([[[[((([[(([[(([[[([([(([[[[((([[[([[((([[[(([(([([([((([[([[([([[(([[[((((([([([[([[((((([(((([[[[([([[([([([([((([[([[([([([[([([[(([[([([[([[([[[(([[[[[([(([[[(([(([(([([([([[[[[(([[[([[(([(([(((([(([([[[(((([([[[([([(([[(([[([([([(([[[[[[([[[[([([(((([[([([(([[(([[([(((([[([(((([(([[[[(([[[[[(((((([[(([[((((([[([[[([[(([([(((([[[((([((((((([[(((([([(([[(([([[(([(([[(((([((([([[(([([[([[[[[(([[((([((([([[[[[(([[[[[([((([([[([([((([([[[[[([[(([([[[([([([((((([(((((([[[[[[[[[[[([[[[[[[(([[(((([([[[[[([(([([(((((([[([[[(([[(((([([[(([([([([(([[([[((([(([([[[[(([((((((((([([[([(((([([[[([[[[([[(((([[([[([[[[(([(([([[([[[[(((([([[(((([([(((([([[((([(([([((([((([([[[(((((((([[[([([[[((([([([[[[[[[(([[([[(([([([[((([(([[[([([[([[[((([[(([((([([([[([([[(([[[(([[[(([[(([(([[(((([([([[(([[((((([[[([[(([([[((([[(([(([((([([[(([([[(((((([([([[[[[[([[([(([(((([[[[[([[[[(((((((([(([[[(([[((([([([[[([((([([[(((([(((((([(([[[[((([[[([([[([(((((([(([([[[[[(([([[([([(([([[[[(([([[[((((([(([(((([[[([[(([(((([([[[[[[([([[([[[[([[[[[[[(([[([([[[[[([[(((((((((((([([[([(((((([[[([((([(([(((((([((([[(([[(((([([[[(([[([[((((((((([[((([[((([[[[[[((([[((([([([(([(([([[[([(((([((((([[[((([([[([[([(([([([([([[[[[[([[((((([[([([[([(([([([[(([[([[[[[([(([(([(([(([[[((((((((([([([(([[([[[([[(((([((((([(([[[[(([[[[[[([((((([[[((([(([[[([[([((([[[([([[(([([([[([[[([((([[((((((((([((([([[[([(([[[([[[((([([[[((([([[([[([[([([(([([[[[(((([[([([[([[[((([(([[[[[[[[(([[[((((([(([(([[([[[([[((([(([([[[[([[([[[[([([([([(([[[([(([(((([[(((([([[(((([([([([[((([([[([([(([[(([((([(([(((([[[((((((([([(([(((([[((([([[[((((([([(([[(([(((([[[[[[[[[(([[[[(([[([[([[[([[([[([([[[([[[(([[((([(((([((((((([[[([([[(([([((([[(([[((([[([[[[[((((([[[(([([[[[[[((((([(([[(([[[([([[([[(([([[[([(((((([(((([[[[[([([[([(([[[([((([[[[([([((([([([[([([(((([([[[[[(((((([[[(([([([[([((([(([(([[(([((([[([[(([[([[[[([[[(([[([([(([[[[((([([(([([([[((((((([([[[([[[([[([([([(([((([([([[[(([(([(([([([[[[([[[(((([[[[((([(([(([([[([(((([[[[([[[(([([(([((([([(((([(([([[(([([[[[[(([((([(([(([([[[[[[[[[([[[([[((((((([([[(([[[([[(([[(([([(([([(([(([[([[([[(([[((([(([((([[[[([[(([([(([[([(([([([(([(([(([[[((([(([([([[([([([((((([([[[[(([(([(((((([[[[[([(([[[(([[[(([((([([([(((((([([[[(([([(((([([([[([([((([([((([([((((([[([([(((((([[[([(([[([[(([([[([[[([([((([(([([[[(((([(([([((((((((((([[[((((([[(((([((([([[([[[[([[[(([([([[[[[((((([(([([[[((([[([([([((([([(((([(([[(((([([([[[(([(([(([([[[[(([(((([[(([[[(((([((([((([([([(((((((([[[[[[[([((([[[[([[[[[[(((([[[([[([(((([[((((((([[([([(([[([[[(([([(([([[([([((([[[[[(((([([(([([[[(([((([[[[([[[((((([[(([[[[[[[(([(([(([[([(([(([([[[[[[(([(([([[[([((([([[(([[[[[[[[([[([[(([[(([[(((([[([((([[[((([(([[([([[(((([[([[([([[[[[[((((((([(([([[((((([([([[((((([(((([[([((([((([([[[[(((([(((((((((([[([[(([[[[[([([[(((([(([[([([(((([[[(([[[(((((([[[[(([[[[([((([([[[[([([[([([[[([[(([([[([[([[([[[((([[[[(([([[[(([[([[[[[(([([[[[[[([((((([[[((([[[([(((((((([([[[(([[((([[[(([[(((((([((([(([(([[[([[([[[((([[([((([[[[[((([([([[((([[[((([[[[[[[([[[([(([[[[([[([[[[[([([[[[[[[[[([((([[((([[[([([(([[(((((((((((((((([(([((([(([[([(((((([[[(([[([([(((((((((([[(([([[[[([([[[([((((([[([([([((([(((([((([[([[([((([[([[(((((([[((([[(([(([[(((([(([([[[((([([(([([([[[[(([[[[[(((((([([[[((([[[[[([([((((([([([([(([[([((([[[[[([([((([[((((([[[[(([[(([([([([(((([((([(([([[([([(([(([([[(((((([((([([[[[([[[([([[([[((([((([((((([[(([([[((((((([([(((([[((((([[([(([([[([((([(([[([[[([[[[[[([[[[[([([[[[(([((([[[(([[[[[([((((([[[([[([[((([([[([([(([[[[([([[(([[[((([[(([[(([[(((([(([([([([[[([([((([((([((([(([([[[([([[([[[([[([[[[[[((([((([(([[((([(([([([((([([[[[[([[[[[(([[[([[[([([([[[[[[([([[([([([([([([(([[[(((([[[[[[[([[[([[((((([([((([[([([([[[([[([[[((([([[(([[[(((([[(([[[(([((([[[[[([[(([[[[[[[((((([([([([[[[(([([([[[([([(([[[([[[(([[[[[[(([(([([[((((([[([[[([[[([[(([((([((([[(((([[[[[[[((((([[[[[[([(([((([[([[([[[[[([([[[[[(((((([((((((([(([[[[[[([(([([((([[[[((([(([([((([[[([[[((([([(([(([[(([([[[[[([(((((([[[[([[(([(([(([[[[(((([[((([[(((([([([[[([[[[([[[((([([(([([([(([[[[([[[([(([[[[[[([(((([[[([[(((((([((((([[[((([(([(([[([([([[([[[(([([[([([[((([(([(([(([[([[[[[([((([[[((((([(((((([[[((([(([[([([(([[([([[[[[([[[([(([[(([([([(([(([[([(([((([(((([[([[[(([[[[[[[(([[[(([[(([((([[[[[([(([(([[([(((((([[(((([([([([([[(((([[[[[(([[([([([(((([[([[[[([[[[((([[(((((([(((((([[[([[([[([[([([[(([((((([([([(([[[[([[[([([[([[(([[([(([[([[([[[[[[(([[(([[[([([[([[((([[[[([[[([[[[[[((((([((([[[[((([(((([([[([(([([[(([([[((([[(([[((([((((([[([((([[([[([([([[(([(([([([[([[(((([((([([[([(([[(([[[[[(((((([(([[([[[([[([(([[[[[((([[[[[(((([[(([([([[[((([[(((([([([[([[[[([[[((((([[[[(([([([[[[([([([(([[[((([[([(([[[([([(([([[(([((((([(([(([([([(([[([[[(([(([[(([([[[[((([[[([[[[[[([[([[([([([[[[[(([(([([([[([(([[[[[[[[(([[(([([[([[([[([[[[([([(([[(([(([(([[([(([([[[([([[[(([((([[[[[([((([[([[[[[[((([[([([([([([[[[[([[[[([([[[[([(([[(((([[(([[[([((([[((((([[[[[[[([[[(([[[(([[[[[([([[[[[([[([[[[(((((([[(([(((([(([[[([([[[[[(((([[(([([((([[[[[([[[[([[[([[(([[[[(([(([[([(([([[((([(([[[[[(((([[((([[([(([[[(([[[[((([[([([[([(((((([(((((([(([[(((([((([[[([[[([[(([([(([[([([[[([[[([([[([(([[(((([[([(([((([((([[[[[([[([[(([[([(([[[[[[[[(((([[([[[((([(([(([[([([[((([[(([([(([[[[[[([([(([[[((([([([[[[((([([([([(([[[([[([([[[[(([[[([[[[(([(((([[[[([[([((([[([([[[[(((([[(((([([[([[[[([[([[((([[[[([((([[[[[((([[[((((((([[([([([(((((([[[([[((((([([[([(([[[([[[((([[[[[[(((([[([([[([([[([([[[(((((((([[[(((([(([([[(((([[([[[([[[[((([((([([[[([([[[[[(([([[([(([[[[(((((([[(([((((([[([[[[[([[([[[[((([[([[[([((([[[((((([[([([[((((([((((([(([[(([(([[[[([[[[(([[[[[[[[([(([((([[(([([[[[[([([[[([[[[(([[([(([[([[[([[[[(([(([((((((([[([[[[([[[[([(((([[[[((([((([[[([[([([([(([(([(([((((([[[([([[((([((([(([[([[[([[[(([(([[[[([([([[[([(((([([([[[([[[([[[[[(([((([[[[[([[((([(([([[[[[([[((((((([[[([[([(([(((([[[((([([([([(([((([[[([[[[([[((([([[([[(([([[[([([((([[(([(((([[((((([(((([[([[[([[([([([([[([(([[[[[[[(((([[[([([[[((([[[[[(([([([((((((([[[[[[([(([([[[(([(([[([(([((((([[[[([[([([[(((([[[([([[([[[[[([[[[[[(([[[([[(([[(((([([([([[[[[[[[([([([([[[([[([[([[([[[[(((([(([[[[((([[[[((((([[(((([[([[[(([[[([[[[(((([[[[([[([([(((([[[([[[([((([[([[([[[([((([[(([[((([[(([[([[([([(((([[((([[((([([((((((([([(((((([([[[[((([(([[(([[(([[[[[[(([[([([([[[[[[[([[[([[([[([[([([([[(((([((([([[([((([[([[[([([[[((((([([([[[[[[[[([([[[([([[((([[[[[([[[[((([[((([[([[[([[[[[((([([([(((([[[([(([[((([[(((([(([(([[([(([(([[[[[[[[((([[(((([[[[([[(([[([(((((((([[[((([([[((([([((([(([[[(((([(([((((((([[(((([[[[([[[([[(([[(([(([[[[([(([[(([(([([[[(([([((([((([[[[[(([[(([[[[[[(([[([((((([[([([[[[[[(([(([[[([[(([([[((([[([[([[[((([([(([[[[[([[((((([([[[(((([[([([([[[(((([[[(([([[[(((([[([(((([[[([[(([(((([[(([[[(((([([(([[[[([[([[[(([[[[((([[([((((((([([[[[[[[[[([([[(((((([[[[([[[((([([[[([[[([([([[[[((([[([[((([([([([[[[[[([[(([(((((([[((([[[[((([[[(((((([[[[[[[([([((([[[[([[[[[[([[(([((([[[[(([[[((((((((([((([([([[([[(([([[[[[[[(((([[([[([[([(((([[(([[((([[([[[[((([((([(([[[(([[[([([([[[[([[(([(([([([[(([((([(((([[([([([[(([[([[[[((([([[[[[[(((((([[([[[([[(([([[[[[(([[[([[[[[[([(([([([[[(([[(([((([([([[(([[[(([((((([([([(([[([[(([([([[(([[[([[([(([[([[([[(([([([[([([([[[[(([([([[[[(([[[((([[[([[[[[[([[(([((([[(((((((([[[[([((([(([([(([[([(([([[[[(((((([([([[((([(([[(([[((([[([([(([([([[[([(([(([(([(([[(([([(([[((([((([[[([((([(([[((((((([([[(((((([([[((((([([[[((((([((((([[([([[[[(([([[[((([[[(((([[((([((([[([[(([[[[[([(([[([[[[([([(([(((([[[[[(([([[[[[(([(([[(([[[[([[([[((((([((((([[(([[[([[([[(((([[((([(([[([([([[[[[([(([((([([((([([[[([([([[[[([[([([[[[[[(((([((([([[[[[([[[((([[([[[(([[[([[[((([(([[[[(((([[[[[[[[[(([(([([[((([([[[[(([[[([[[[[[[(([(([[((([(((((([[((([([[([((([(((((([([(([[[[[[[([[(((((([(([(((([[(([([[([([[[([(([[([[(([((((([([(([[([[[((([[((([([[([([([(((([[[((((((((([[([[((((((([[[[(([[(([[((([((((([([[(([([([([[[(([(([([[[[([[[[([([([(((([[[[[[[[[[([[([[[[[(([[[((([([[[[[[([((([(([((([[(([([([((([([[([[([[[[([[[[[[(([([([([[[[(([[([([[[(([[[((((([(([[[([(((((([[([[[[([[[[[([([[[[[[[[([(([[(([(([((((([[((([[[(((([([[[[[[[(([([([[[[(([[[[([[(([[([([[[[[(([[[(((([(((([[[[[(((([[([[([(([[(([([((([[([((((([[([([[((([([[([([[[[([[([([([[(([([([((([(([(([(([[([(([[[([[([([([([[[(([[[[(([[[((([[[([[(([[[[[[([[(([([([([([[([([[(([[([([[(([[[(((((([[[(([[(([[([[[(([[[[[([[[(([((([[([[[([[[[([([[((([(((([(((([[(([(([([([[([[((((([[[[[([([[([[([(([[[([(([[[[(([[[[([[[(([[[([[[(([[[[[([([([(((([([(([([[((((([([(([[(([[[([(([[([([(((([[[([([[[[[[([[([(([[[([[(([[([[([[((([[[[[((([[([(([[((([[[[(((((([([[(([(([([[([[[([[(((((([[(([[[((([[([([[[(([[(((([[([(([[[([[([((([[(([((((([[[[[((((([[[(((([[[[(([[(((([[([[[[[([([((((((((([[(([((([([[((([([[[[[((([[(((([[([(([((((([([[[[([([(([[[(([[[([([[[(([([[([[[([((([[[[([([[([((([[[[([([([[[([[([[[([(([((([[([[((([[[[[([[([(([(([([(([(([([[[(([([[[[[(([[[((([([[[[[[([[[[([(([(([(([([([((([[[(([[[[[[([((([[([([([[(([(([([([[[[[([([[([((((([[[[[[[([([[(([[(([[([[[([[(([([([([([[[(((((([[[[(([([[([(([[((([[([[([((([(([[[[([[([[(([([[[[[(((([(([[[[[([(([[(([[([((([[[((([([(([([([(([(([(([[[([([[([[(([[(([[([[[[(([([[[[[[[([([([[[[([([([((([([(([([([[([[([(([([[(([((((([([([((([[((([((([[[(([[([[[[(([([((([[[[[[[(([([([[[(((([[([(((((([(([([((((((((([([[([[[[(([((([(([[[[[[(([[[([[[([((([[[[[[(([[([[((([([(([(([[(([[((([[([(([[([[[([[(([[[[[(([([[[[[[(([(([([([[([[[([(([[[((((([(((([(([[[(((([[((([([[[[[[(([[(([([((([[([((([([[[([((([([([([[[([([([[((((((([[[[[[[([[((((([((((([([[(([(([(([([((([([[[(([[[[([(([(([[[[[((([[([[[(([[((((([[[[(([[[[[[[[((([([([[([[([((([([[[([[(([((([((((([[(([[([[[([([(((([[((((((([[([([[(([((((([(((([(((([[[[(([[(([[[([([[((([[[[((([([[[([([([([[[([[([((([([(([[([[(([(([[([[(([[[[[([([(((([([(((((([[[([(((((((([[([[[([([([(([([([[[[[[[(([([[[((([[((([[([[[[((([([((([[(([[(([((([(([[((([([[[[([([[(([([([([[([[(([(([[(([[([[[[([[[([[(([([[(([[[(([([[(([([(((((([[[[([[[[([([(((((([[([(([([(([[(([[[(([([([([([([((([([[[[[[([(([[([([(((([[[((([([([[[[[[(([([((([([([([[[(([((((([([[[[[(([([[([[[[[[(([([[([([[((([[[[(([[(([([[[[[([[[(([([((([[(([([((([[([[([[([((([[([[[[[[[(((([(([(([[([[([[((([([[([[(([[[[(([[([[(([[[(([([[((((((([[([[(([([([((((((((((((([[([[[[([[([([[[([([(((([([([(([(([[([([[[[[[[(([[[((((((([[([[(([(([([(([[[([([[[([[[((([((([([[[[[[(((([[([([[([([[((([[[[[(([([[((([[(([[[[[(([(((((((((([([([([[[[[[[(([(((((((([([(([[((((((((([([[[[[([([([((([[((((([((([[(((([[([((([([[([([[[[([[[([(([(([(([((([(([([(([([(((((([(([(([[(([([([[([[(([([(([((([(([[[[((([([[(((((([([([([[((((([(((([((([([(([[[((([[[[(((([[([[[[([[([([([[(([[([([[[[(((([([[([(([[[[[[[(([[[[(([[(((([[(([([[[(([[[[((([((([([(([([[[([[[([([((([((([[[(((([[(((([([((([[([[[(([([[[[[[[[[((([([[[((([((([[[[[[[[(([[([([([([(([([((([([([((((([[[[[([[[[[[([[[[[[([(((([(([([[(((([([([[[[([((((((([[[[[[([([[[[((([[[([[([((([[[([([[[[([[[[([[((([([[[[[([[([[(([[[[([(((((([[[[[[(([((([[[[[(([[[(([[[[([((([[[([[[([(([[[(([[([((((([((([[([[([[[([[[([[[([(((([([[[([[[(([(([[((([((([[[((((([(([((((([([([(((([(([[[(((([(([[[(([[([[[[([[[[[[([(([([[([((([[[[(([[[(([[(([([[[[([([([[([[[([[[[[([[([[[[([([([[[(([((([[(([[[[(([([([[(([[[(((([[[([[(((([([([[([([[([([[(((([[[(([[[((([((([[([[(([((((((([(([[[([[(([([([([(([((([(([([([((([[[([([([[(((([[[[(([[[([([[[[[[([(([(([[[[[((([([((([([[((([[(([((([([([(([[([([(([([[[[[([([((([[(((([((((([[([((([([([([(([(((([[((([([([[[([[([[([[[((([[[((([([[[([[[([[([((((([([[([([[([(([([(([([[([(([(([[[[[(((([([[([[[[(([[[([[[[[[[[[[([[(([[(([((([[([[[[[((([[([(((([([[[(([[([(([((([(([((((([[[((([[([[[((([[[(((([[[[[([[([[((([[[[[([[([[((((((([([([([[([((([[(([((([[[([((((([[((([([([[(([((([[(([(([[([[([[[[(([((([[[([([[[((([(([[((([([((([([[([([([([([[(([((([(((([([([((([[((((([[([((([[(([[[([[([[([[(([([([([([([(((([([[(([([([([[(([[(((((((([[([([([(((([[((([(([(([((((([[[(([([[[(((([[([(((((([[[(((([([(([(([[[[(([[([(([[[([[[[([[[[[[(([((([(([[(([[([[(([([(([([([[[([([([((([([[([[[((((([((([[([(([[((([(([[[[[([([[[([[((([[([[[(([(([[([((([([[([[[[[((((((([((((([((([[[((([[([([[[((([([((([([[[[([(([[([[[[[([(((([([[([(([((([([[(((([[[[([(((((([[[(([([([[[([([([([[[[((([[([(((([[([[[[([(([[(([(([([([(([[(([(([[([[(([(([([((([((([([[[((([([[((([[([(([[[([(([([([[[[((([([[(([([(([[[(([([(([[[(([([([([[[([(([[([([(([[((([([[[[(([(([[([[[[([[[(((([([[([[([([[([(([([[(([((([([([([[([([([[[[[((([[[(([([[[[[(([[([([((([[[[[[((([([[[[[(([[[(((([[[[[[[[[[[([([[[([([[([[((((([[[(([[[[[[[[[([[([[([([(([[([(([(([((([[([[[(((((([(([[[([[([([(([(([[([(([([[[([[([[[[[([([[[(((([[[(((((([([[[((((([([[((([(((([[(([([[(([(([((((([([[[[[(([[[[[(((([([([((([[[(([([(((((([[[[(((([[[[([[[[[[[[(((([(((([([[(([((([([[([([([[([((([[[[[([([[(((([[[[[[((([([(([((([([([[[([[[[(((((([[[(([[[[(([(([[[[[[[[[([([([[[(([([(([[[((([([(((([[([[((([(([[(([([(([([([[[(((([(([(([[(([[[[[((([[[([[[(([[([(([[[([[(((((((([[[[[([[(([[[[(([[([([[[(([[[[(([([((((((((([([([((([(([([(([(((((((([[[[[([[[[[[([[((([([[[([[[[[(([(((([(([([(([[(((((((([[([[(([[[([[[(([[([[[[([(((([[([[(([[(([([[(([([([[[[[((([(([(([[((((((((((([[[([[(((([[([(((((((((([(([(([([([([[[[[([(((([[[([[[[[[[((([[[(((([(([([[(([([((([[([[[((([[([[[[[[[([(([[[[[([([[[[([([(([([[([(([([(([[(([([(([([[((([[((([[((((((((((((([([[(((([([([([[([([[[([((([[[([((([([[[(([([([(([[([((([[[[(([([((([[([[(([[([[([(([[[[([(([[((([[[[([((((((([[([[((([[(([[([(([[(((((([(([[([([([[(([([[[((([((([([([[([[[[(([[(([(((([[(([([(([[[[([[([([[[(([[(((((([((((([[[([([(([[[((([[[([(((([[(([[[(((([(((([[[([(((([[([([(([[((([[(([([[[[([((((([(((([[(([([[[[[[[([[(((([[[[[([([([((([([[[[([([[[[[(([[((([[([[[([[[[([[([(([[((([[(([([[([((((([[([((([[[([[([(([((([(([[((([((([[[([[[(([([[((([[((((((([(([([[[[(([[(([([[[[[[(([[[[[(([[[[[((([([([(([[[(((([((([[[[[([(([[((([[[([((([([((([([[([[([([(((([[(([([[[[((([[[([([((([((([[((([[([((([[[[([([(((([([((([([([([[[[[[(([[[[[[((((([[(((([[[([[[([[[([[([[([(((([([[[[[(([[([(([[[[([([[[((([[[([([([[[[([([[([[([[(([[[((((([((([[([(([[[[((([[[(([([[(([[(([((([(([[[[[((([[((([[((([(((([[[[((([(((([(([(([[[([([((([(([(([[[[[([[((((([([[((((((([((([[([(([([[[[((([(([([[([(([([[[([((((((([[[[([[[(([([((((([(([([([(([[[([[[(([([[[[[[([[([[[([([((([[([[((([[[(([(((([([(((((([([[[[([((([[[[([([((([[[([[([[[[[([(([[([[(([[((([([[[[[([([[[[([[(((([[(([[([[[[[[[[[(([([[(([[([[[[[[(([[([[[(([[[[([(([(([(([((([(((([([((([([[((([(([[([[(([((([([((([([(([[((([([[[(((([[[(((([(([[([([[((((([[((((([((([([[(((([([(([(([[[[[([[([([[[([[[([((([([(([(([(([[[((((([((([[[[[[([[([([((([[[([[[[([([([([[[(([[[[[[[[[[[(([([[([(([[(([[([[([(([[((([[(([[(([([([[(([(([([[([([[[([([(([[[[[([([((([[([[[([(([[([([[[([[([(([[[[([([[([[[([[([((([[[((([[(((([([[[[[(([(([[[[([([([[[[[(((([(((((([[([[([((([([[([((((((([((([((([[([([[[[[(([((([(([[(((((([[(([[((([([[[((([[(((((([[(([([[[[([(((((([(([([([(((([[[([[(([((((((([[([[[[[[[([[(([([([(([([((([[[(([[[[[(([([([[[[[(((([[[((((((([[[([[([([[[([[([[(([[[(([([[([(([(([[[[([[(((([(([(([([((((([[(((([[((([((([([((([[(([(((([[(([([([[([(([[[([([[((([([([([[[[(([[[([[[((([[(([((((([(([([[([([[((([(([([[[((([[[([([[[([[[([[([[[[[(((([[[[((((([(([[(([[[([[([[[[[[(([([[[([([((([[([(((([((((([[([((((([[[((([([([[[[((((([[(([(([(([[[[[([[[(())]]])]]]]]))]))]))]])))))]]]])])])))]]])))))])]])))))]))))])]])))])])]]])]))]]]]]])]])]]]))]]))])))))]]]]))))]]]]])]])]]])]]])])]]])))]]])]))])))]])])]])]))])))))]))]])))]]])]]]))]]]])])])])))]])])]]]))])]])])]))]]))))]))]])))])])))])))]]))))]])))))])]))]))]))))]])]]]]))]))])]])]))]]]))]])]])]]])])]])]]])))))))]]]))))]]]]])])]))]]]]]))]]])))])]))])])]))]])]]]]]]])]])))))))]))]])]]]))))])])]))]))))))])]]]])]))]]))))))]])))]]])])))]]))]]))))))]]))])))]))]]]]])])]])))])))])))))))])]])])))])]])]]))))))]))))]]]]])])])]]]]))]))]]]]])]))))]])))]]])))])]])]]])]])])]]]]))])]])]]])])]]))])]]])]])))])])]]]]]))])])]]])])]])]))]))]])])]))]]))]])))]]))])]])]]))]]))])]])]))]]]]]]]]]]]))]]])])])])]]]])]]])))])])]])]]]]]])))])))))]]]))]))]))])])))])]]])]]])])]])]]]]]))]))])]))))]])])))])))))]])))))]])])]]))]))))]]]))))]]])])))]]))])])))])])))]))]])]]))])))]])])))])]))))])))]))]))]))])]]]]))]]])]]))]]]]]])]]))]])]))]]]]]]]]])]]))]]))))]])]]]])])]]]]])])))]]))]])]]))])]]]]])]])]]])))])])]]]])))])]]]])]))))))])]))))]))]]])))]])]])))])])]]])]])]]]]]])]))]]])]]]))])])]))])))))])]))]]])]]]])))))))])]]])]))])]])]))])))]]]])]))])]])))])))))))]])])))))]])]]]]]))]))])))])])]]]))]))]))))])))]]]]))))])))]])))]])))]]]]]))])))]))]]))]])]))]]])))]]]]))])]])))])))))]]]))]])]])]])])]]]])])])]]])))]]])])]]]]))])]]))]]]]])]))))])]])]])]]])]]])]]]))))]])))))]]]]]]))]]]]]])])])])))])]))))])])]]]])))])]])))]])))])))])])]]])))]]]])]))]]))))])])]])]])])))])])))])]]])))]]))])]]]]])))]))))]]]))])])])))]]]]]))]]]]]))]]]]]])]))]]))]]]])]))])))))))]])))]])]))]]])]]])))])))]]))])))]))])]])]]])))])]])))))])]])]))]])))]]))])]])]]]])]]])]])))]]))]]]]])])]]]])])))])])])]]]]]))))]])]]]]]]])]))]]))))])))))])]]]])]))]])))]]))])])]]))))])]]]))))]))))]]]))]]))))])]]])))]]]))])])]]])))))]))))))]]))]]])])]])]]]]))])]))]]))))]))]]))]]]])]])])])))])))]]])]))]])])])]]))]))))))]]))])]]))]])))]])]])))))))])]]]])))]]))])]]]]))])]])]]))]])]])))])]))]]]])))])]]))])])]))]]])])))])]]])))])]]])])]])])])]))))]])])))))))))))))]])))]])))]])]))])]))]]))])]))])]])]))])])]]]])])]]]]]))])]]]]]]])]])))]]])]])))])]))]])]))]))))]]])))]]]]]]])]]]))))])]]]]])])])]))]))]))))))))))])]]))))]])]]])))))))))))]]))]))])))]]]]])])]))]])]))]]))]])]]))))])]]]])]]))]]])]]]))]])]]))))))))]]))])]))]))))]))]]]]])]]])])))]])]]]]]])]]]]]))))))))]))])]))])))])])])))))))))])]))]]]]))]]])])]]))]]]]))]])]]]]]))))))))]])]]]))])]]))]]])]]])))]]]]]))]]))]))]))))]]])])]))])]))]]))])))]])]]))))])])))]]]))])]))]]])])])]]]]]]]]]))]))]]]]))]]]))))))]]]])]]])])])))]))])])))]]]]]]))))]])])]]]]])))])]])])])]])])))]))]])]))))]))))]]]]]]]])]]]]))))]]]]))))))])]))]]])))])])]))))]]]]]))]]]]])])))))]))]))]])]))]]))))])))]])])))))]]])]))))))]]]))))]]])])]]]]])]])]]])]))])]]))]))])])]])]]]))]))))))]]])]])))]))]))])]]))])])]])]])]]]]]]]]]))]]])))))]])]])])]]])])]]]]]]]]]]]))))]]]))]]]]])])))]]]]]])))])])]]))]]]]])]))]]])))]]]]])])])]])])])])))]))]])]))])]])])]])]])]))))]]])]]]])]]))]))]]]])])))]]))])])]]))])]]])])])]))]]]))])]))]]]))])]))]])])))]]]])])]))])]]]))])]])))]])])))]]])])))])))])]))]))]])]]))]))]]))])])]))]))]]))])]]]])]]))))])]])))]]]])])])])]]])])]))]]]))))))])]]]]))))]])])))]))])]])]))))])]]]]])]]))])]]]])])))])])))]]])])]])))]]])))])))))])))))))]]]]])]])])))])]]))]))]]])]])))]])]]])])]]]]]))])))]]))])]])))])))))]]])]])])))])])])]]])])]))])]))]])]]))]]))])))]))]]]]]])]]]])]]]))])]]))]]]]))]))])]))))]]]))))))])]]))))]]])]))]]])))))]))]))])))]]))))])])])]]))))))))]]))]])])])]))]])]))))])])])])])]))]])]])]])]]]))]])))])]])))))]])))])])]))))])))]))]])])])])])]])])))])])))]]))])))]]])])]]])))]))]]]])]])]]))]))]])))]))]])])])))]])))))])]]])))]))]])))])]])])])])))))))]])]])]]]]])))]])]])]]]]]))))]]])))]]])]])))]]])))))]))])))]))])]]))]]])]))))])]])))]]]]])]])))]))]]))]])]]]]]]]]]])]]]))]]]])]])]))))]]]]]))]))])]])]))])]))])]])])]])])))))])]])]]])]]])])))]]])))]]])]])]])]]])])])))]]))))]))])])])])))])]])))))]))))]])))])])]]]]])]))])])]]))])])])))]))]])))]])])))])])))]]]]]))]))])]]]]]])])]]]))]]]]))))]])])])]]])))])])]))])))]))])])])]))]])]]]))])))))))]))]])]])))])))]]]))]]]))))]])])]])])]])])]))))]])]]]))))]]]))]])])]))]]]]))]])))]))]]])])])]]]])]])]]]]])]]])]])])])]]]])]))]]))]]]))]]]])))])]])]))])]]]]]])]]]])]]))]]]))]))))]]]))]))))])])])))))]))])))))]]])))])))]]))]))]]])]]])]))))])]]])]]])]]])]])]])))])))))])]]))]]]))])]]])]]])))])]]]]))]]]))]]]]])))]))]]]]]]))))))])]]]]))]])]])]]]]])])))]])]]]])]]]])])]]])))])]])]]])))]]]])])]]]]]])))))))])]]]])])]))))]])]))]))))])]]]]]])]]]]]])]]]]])))))])])])))])]))])])])])]]))]]]]]]]])))])))]]])])))]]]]]]]]])]))]]])]])))])]))))]]))))]]])))])))])])]]])]]])]))])])))])))]]]]))]]])]))]]))))]]))]]]]))]]]]]]]))])]])]))))]]]])])]]))]])])])]])]]]])]]))))]]]])))]]]))])])))]))))])))))]])])])]))))))]])])))]]]]))])))]))])]))]])]])])]))]]))]))]))))))])]))])]))])))]))]))]))])]]])]]]])])]])])))])]]))))]])))])))))]])))])])])]]]]])])))))))))]]))])]))))))))]))]]]]]]])])])]))))))))))]))]]]]]))]])))]])]))]]]]])))]])])]])])]]))))]]]]]])])))])))]]])]]])])]]]))])]))]))]])]])))))))]]]))]]]]]]])])]]))]))])])]))))])])]]])])]])]]]])]])))))))))))))])])]))]])]])))))))]])]))]]]))]])]]))]]]]))]])]])])))]])]])]]))]))]))))]]]]]]])]])))])]])]])]])))])]))]])))])]))]]])]]]]])]))]]))]]]])))]])])]])]))]]]]]])]])]))]]]]])])))))]))]]])])])])))])]))]]]]]])])])))]]]))))])])]]))])]]]]]])])))])])])])])]))]]]))]]))])]))])]]))))))])])]]]])]]]]))))))])]))]])]))]]]))]])]))]])]]])]]]])]]))]]))]))]])]])])])]))]])])]]]])])))]]))])))]))]]))]])))])])))]]]])]])))]])))]]])]))]]]]]]])])]))])])])]]])]]))))))))])]]]))))))])]))))])])]]]]]))]])]]))]))]])]]))])])))])]])]]])])])])]]])])))]]]])))]])])]]]))]]))]]]]))))]))))])))))]))]])])]])))))))]]))))])])]]])]]))]])))))])))]))]])]]])])))])]])]])])])))]]]]]]]]))]]]])))))]]))]]])]])))]]]]]))]))])]]]]))]]])])))])]))]))]))]])])))))])))))]])]]]]]]])))))))]])])])]]])])])])))])]]])])))])]])))])]))]]))]]]]]])])))]]))))]]]))]))))])))))]]]))])]]])]])])]))]))]]]]]])]))]]]]]))]])]]])]]))])]])))]]))]]))]))])])))]])]]))]]]]]])))])]]])]]]))]]]]]]))])))]))]]]])]])])))))))))])]))]))))))])]]))))]]])])]))]]]]]]])))])]))]]]])]]))]]])))])))]])))])])])))))]))]])]))])]])]])])]))])])))])])])]]]])])])]]]]]]])]))]]]])]]))]]))]])]])])]]]))]))]))])])]))])])))]]])))])]]))]]))])]]]]]))]))))]]]]])]))]])]])]]]]))])))])]])]])))]]))])]])]))]]]]))))))]]])])])])]))]])]]])]]))]]))]])])]]]]]]])))))])]])])]]]]])])]))]))]])])])]])))])]]]]]]))]]])))])])]))]))]))])]]]])]]]]]])])))]]]))]]]]])]))]]])]))]))])]))]))])]])]]]]])))]])]])))]))])]]])]])]]])])])]]]])))])]])])]]]])))])]]])]])]))]]])])]]]))]]]))])])]]]])])))))]))])]]))))]])))]]]]])])))]])])))]))]])))))))))])])]]]]])]]))))]]))]]]]))))]]])))))]]]]])))))]))]])))])]])]]]))])]]))))]]))]]])])]])))]]]))]]))))))]])]]])]])]))]))]])]))))))]]]])))]]))])]])))]]]]])))]])]])]]))]])]]]))])]])]]]]]])])]]]))))])])]]))])]]]))]]))])])))))]])]))])]))))])])])]]]]]))]]])]]]))]]])]]]]))]]]]))])]]]))])]])]])])]]]]])))))]])]])])]))]))]]))))]))))])))]])])]]]])]]])]])))]))]]])]]]]]))]]])]]))]]))]]]))))))]]]))]])])]]))]])])]])])])])]))]])]]]]]]))]])]]])))]]]))]]]]))]]])])])])]])]]]))])]]))]))]))])))])])]))]])])])]])]]]])])]])])))]])])]])))))])]])))])]))]]))])]])]]))))]]]]]))))]))))]]]))]]]]])])]]))]])]]]]))]]]])])]))]]]]]]])]))))]]])))]])))))]))]))]]))])]]]]]]]])])]]]]])]]]])]]))))))])]]]))])))))]]]))]]])])]]))]]]])])])]))]]]]]])]]]])]])]])])))])])]))]])))]))])))])]]]]]])])))]]]))]]]]])]])]]]]]]]]]]))))])])])]]]])]]]])]))]))]]])])])]))]])])))))])))]]))]]))]]]])))))))]])]])))))))))]]]))))])])])]])])))]])))]]])]]))])])))))]))]])]]))])]]])])]])]))]]))))]))]))))))]])]]]]]]]))])]))))))])))])]])])))]]))))))])))]]))]))]]]]]]])]]]))]]]])])))]])]))]))]]]]]]]]]))))]]]]))])))]]])]]]))]]])]])))]]])]]]]])])))]))))]]]]]])])]])]]]])])])]]])])))])])))]))])]]]]])])])]]))])))]]))))]])]])]]]))]])))))])))))]])]])]]]]))]]))]))]]]]])]))]]]]]))))]))])])]]]])]]))])]]]]]))]])]])))])))]]))))]]])))]]])]))]]]])])]])))))])))))]]])])))))]])]))))))]])])))))))]]))])))])]]])))])))]]))])]))]]))]))]))]))])]]])])]))])])]])))]]))]]))])))]])])]))))))]]]])]))])]]))])]))])))])]]]]))))))))]])))]))]])]]]]]])]]])))]]]))]]]])])]))]]]])])])]])])]))]])]])]]))])]])]]]))]])])]))]])]]))])])])))))]))]]]))]])])])))]))]]))]]])])]))])]]]]]])]]]))]]]]])]))]])]]])]]))))))]]]]]])])))]]]])]]))]])])])]]))))])))]))]])])]))]))]])]]]])])])]]]))]]]))])))])))]]]])]])))]]))]]))))])]])]])]]))))]]]]]]])]))]])]])])])))])))))))))]]]))]]]])))]))]])]]]]]])]]]])))])])]]]]]]]))))))]]])))]]]])))]]))))))]))]])]]]]]])])])])))]])]])))]]]])])])]]])]]])])))]]])]]]]))))))]])])]]]]]]]]])])))))))])]])))]]]]))]]])]])]]]]))])]))))]]]))]]))))]))]])]]]))))])]]))))]]])]))]]]))))]]])])])]]))))]]])])))))]])]]]]]))])])))]]])]])]])))]])]))]])]]]))]))]]]]]])])]])))))])]]))]]]]]]))]]))]]]]])))])))])]))]]])]))]))]]))])]]]]))]))]]))]])]]])]]]]))))]])))))))]))]))))]]]))])))])])))]])])))]]]))))))))])]]))]])]]]]))))]])))]]]]]]]]))]))])]]))]))]))))]])))]]))])]]]))))])])])))]]]]])]]])]])))]])))]]]])]]]]])))]])])]]])])]]]]]]]])])])))))]]])])]]])]])))])]])])))]))))]])])])]])]])]])]]])]]]]]]])])])]]))]]]]]]))]]))]]))])))]]]])]))))))])])))))))])])))]])))]]))))])])]])]]))]])))]]))]])))])]]])]])]])))])]]])]]]))))])])]])]]]]))))]]]])]]]))]]])]]))))]])))))]]]])))]]]]))]))))]]]])]])]])]])]]])])])])]]]]]]]])])])]))))]]))]])]]]))]]]]]])]]]]])]])])]]]))))]])])]])]]]])))))]))])]]))]))]]])]))])]]]]]])))))))])])]))]]]]])))]]])])]]]))))]]]]]]]))])]])])])])]])]]])]]))))])))))]]))))]))]])))])])]]])]))]])]])])))]])]]]])]]])))]))])])])])))]]]))))]))])]])]]])))))))]])]]]]])]))])))]])]]]]])))]))]]]]])]]])]]])])]))))])]]])])])]]]]))]))]]])]]])]]))])))])))]])])]]])))))]))]))]))])])])]])]]])))])))]]]]))))])]]]])]]]])]])))))))]))]))]]]])]]])]]))])]]))]]]])]]])])]]]]])]))]])))]))])]]]]]]]]))]]]])]]]]))]))]]))])))))])))))]])])]])))))]]])))])]]])]])))]]]])]])]]]]])]])))))]))]]))))))]]]]))])]])]))]]]]])])]]])])))])))]]]])]]])]]))))]])]))]))))]]]))))))))]]])])]])])]])])]]))))]]]]]])))]]])]]]))])]])])))))]])]]]))))))])])])]])))))))]]])))]]]]])))])]]]])))]])]])]]]])]])]))))]]))))]]]])])]])))])]])]]]]))))]))]]]])]]]))]]]])])]])]]]))])])])])))]]]])])])))]]]))])])]]]]]]))])]))]])))]])])]]))]))])))]]])]]))))]]]]]]]]))])]]))]])]])]]]]])))])))]))])]]))))]]))])]])])]]])]]])])]]))])]))]])]]])]]])))]))))]]))]))))))]))))))])]])])]])))]]]]))]]]))])]])))]]))))]]]]]))])))]])]))])]]))]))]]]]))]])]]])]]]])]]]]])))])]))]]))))]]]]])])]]]))]))))]))]]))))))]]]])]])]]]]])])]]]]]))]]]))]]])]]]]]]])))))]])))])]]]))]]))))]]))])]]]])])]]]])]]]]])])])])])]])))]]]]]])]])))])]]]]])))]))]]])])]]])]))])]]))]))]))]]))])])]]]])]])]])]])]))]]))]]]]]]]]))])]])])]))]))]]]]])])])]])]])]]]]]])]]])))]]]])]))]]))]))]]])]]))])])]))]))])))))]))]])]))])])]]]))])]])))]]]))])])])]]]])])]))]]]])))))]]])]]]])]])])]))))]])))]]])])]))]]))))]]]]])))]]]]]))])]])]]])]]))]))))))]]]]]))]]))])]])])))]))))]])]])])]))]))]])])])]])]])))])]])))))])))]]))]])))]])]))]])]))])]])]))))])))]]]])))])))))]]]]]])]]])]]]])))]])]])])]]]))]]))]]]]]])]])]]))])]]))]])]])])]]])]]]]))])])])))))]))]])])]])]])]])]]]))))))]))))))]])))]]]])]]]])]]))))])])])]]))]]]]]))))]])])])])]))))]]))))))])]]))]))])]]]]])))]))]]))]]]))]]]]]]]))]]])]]))))])))]))])]]))]))])])]))]]))])]]])]]]]])])]]))])])]]))])))]]]))))))])))))]]])))])]]]]])]]))]))]))])))]])])]])]))]]])]])])])]]))]))])))]]])))))]))))))]])]]]))))])]]]]]]))])]]])]]]]))])])]))])])))]]])]]]])]]])])]))))]])))]]))))]]]]))]))]))]])]]]]))))))])]]]]])]))]]))]))])])))]]])]]])))])]))])))]]]])))])]))])]]]]]]))])))))))]))))))]]]]])])]]]]])]])]])))]))])]]]]]])))))]]]]]]]))))]])))])))]))]])]]])]]])]])))))]])]))]))]]]]]]))]]])]]]))])])]]])])]))]]]])])])])))))]]]]]]]))]])]]]]])))]))]]]))]]))))]]]))]])])))]]])]])]]])])])]])))])])))))]])]]])]]]]]]]))))]]]))])])])])])])]])])]]]]]])])])]]])]]]))]]]]])]]]]])])))])])]))])))]]))])))])))]]]]]])]])]]])]])])]]])]))])))])))])))])])]]])])])]))]))))]]))]]))]])))]]]))]])])]]]]))])])]])])))]])]])]]])))))])]]]]]))]]])))]))]]]])])]]]]])]]]]]])]]])]]))])))])]])]))])]])))))]]))))])])))))))]])]))]])))))])))])))]])]])])]]])]]]])])))]))))))]])]))]))])])]])]))])))]))))])])])]))]]))]]]])))))]])))])])]]]]])))])]]))])])])])))))])])]]]]])))]]])]))))))]]]]]))]]]])])]))])])))]]])]))]))))]]))]))]])))]]))))))]])]])))])]])]])))]))))])))])])])]])))))])]]])])]]]])]))]]))))))))))])])]]))]]]))))))])]]))])))]))]))))))))))))))))]]))])])]]])))]])))])]]]]]]]]])])]]]]])]])]]]]))])]]])]]]]]]])))]]])))]])])])))]]]]])))])]])))]]])]])]]]))]))])))]))))))]]))]]])))]]))]]])]))))))))])]]])))]]])))))])]]]]]])]))]]]]])]]))]]])]))]]]])))]]])]])]])]])]))]])]]])])]])])]]]])])))])]]]]))]]]]))))))]]]))]]]))))])])]]))]))))]])])]]]]]))]])]]))))))))))]))))]]]])])))])))])]]))))])))))]])])])))))]])]))])))))))]]]]]])])]])]]))))]])])]]))])))]]])))])]]))))]]))]]))]])]])]]]]]]]]))]])])))])]]])]))]))]]]]]])]))]))])]]))]))]))]]]]]]]))]])))))]]])]]]])))]))]]])]))])]))))]]]]])))])])]])]))])]))]]])]]))])])]])))))))]]))))])]])]]]))))]]]]]])]]]])))])]]]]]]]))))))))])])])))])))]))))]]]))]]))))]))]]]])]))]))]))]]])])]))))]]))]))))])])))])])])]])))]]])]))])))))]]]]])])]))]]])]]]])]])])))]))))]])))))]]])))))))))))])]))]))))]]])]))])))])])]]])]])]))]])]]))])]]]))))))])])]])))))])])))])])))])])]])])]))))])]))]]])]))))))])])])))]))]]]))]]]))])]]]]]))))))]))]))]]]])])))))])])])]])])]))])))]]]))]))]))])])]))])]]))])]))]])]]]])))]))])))]]))]])]])]]))]))])]))])]))]]))]])]]]))]])])))))))]])]]])]]]]]]]]])]))]))])))]))]]]]])]))]])]))]))))])])))]))])]))]]])]]]]))))])]])]))]))])))]]]]))))]]])]]]])])]))]))]))]]])])])))]))])])])]])]]])]]])])))))))]])])]))])])))]]]]))])])]]))]]])]]]])]]))]])]])))]))]]))]))])))])]])])]))]]]))))))]]]]])]))))])])]])])])))])])]]]])))])]]]))])]])])]]]]]))))]))))))])]]])]))]])]])])]]]))]]))])))))]]]]]])]))]]])))))]]]]])]])))]]))]])))])]))]])])]]])))))))]))))])))]]))]]])]]])])]])]])]]])]])]]))]]]]))]]]]]]]]]))))]))]]))])])))))]]])])))]]))))]))])])))))))]]]))))]))])))]))]]))])])]])])))]])])])]))))]])]))))]]))))]))])]]]))])])])])]]]])]])]]]])]))])))]])]]])]]))]))])))))]]]))]]]]]]]]))])))]]])]])])]]))))]]]])]))])])]])]])]])])))]]])])))]]])]]]))])]]])])))])))))))))]])))])]]])]])])]))]])])]]])))])]])]]]))])))]]])))))])]]]]]]))]]]]))])))))]))))]])]]])]]))])])])))))))))]]]))]))]))]))])]]]]])]]))]])])]))])]])])]])))))]])]]]]]])])])])]))])]])]])])))]]])))))]))))])]]])]))]))])])])))]])))]]]]]])))]])))]])))))))))]])]]))]]])]))))]]))]])))]))))))]))])))])]]]))))))])]])]))))))))))))]])]]]]])])]]))]]]]]]])]]]])]])])]]]]]])]))))]))]])]]]))))]))])))))]]])]))]]]])]))])])]])]))]]]]])]))]))))))])]])])]]])))]]]]))]))))))]))))]])])))])]]])])])))]]))]]]))]))))))))]]]])]]]]]))))]))])]])]]]]]])])]))))))]])]))]])])))]))]))]])))]])]))]])]]])))))]]))]])])]))))]]))]))]]))]]]))]]]))]])])]])])])))]))]])))]]])]])])]]]))])))]])])]))]])]]))]]]]]]])])])))]]])])]]]))))))))]]])])))])))])]))])))]])]))))])]))))]])]))))]]]])]])]))]))]]]])]])]]))))]])]]]])]]])]))))])]])])))))))))]))]]]])]))])))]])]]))])])])]))]])]))))]]))]]])]]))))))])]))])]]]]])]))))]]))]]]]]]])]]]]]]]]]]]))))))])))))])])])]]])]))]])]]]]])])))])])]])])))])]]]]]))]]]]])])))])))]]))]]]]])]])]))]])])))]))))]]))]))]])]))]]))])]))))]])))))))])))]]]))))])]))]])]]])]])))))]]))]]))))))]]]]]))]]]]))]))))])]]))))])]]))]]))])])]]))))])])]]]])]]]]]]))])])])]]))]]))])])]]])]))))]]])]))]))))]))]))]])]]]))]]]]])])])]))]))]))]]]))])]]]]]))]]])]])]])])]]))]])])]])])])]])]])))])])])])]])])]]]]))))])))))]])]])])])))))]]]))]])])]])]])))])])]))]))]]])))]])]]])))]]]]))])])]]]))]]))]])))]]]])))]]))]])))]])]))))]]))])))))]])))])]))]])])))]])]])]])))]]]]])])]]]])]))))))]])]])]])])]]]))))]])))]]]))])])]])])]])))])))]]])))])]])]])]))]]]])])]))))]]]]))))])]]]]]]]])))])]]))))]]]]])]])]]))))]]]))])))])])]]))]]]]]])))]])])])]))))]]]]]]])])]]])]])))]]]]])])]])]])]]]]]]])]]]]]])]]])])])]]]]])]])]))))))))]]])]])]])))]]]))]]]]))])]]]])))))))])]]]]]])))]]))))]])]])])])])))])]))])]]]]))]]])))]]]])))]]]]]])))]])]]]]]]))]))]])]))))))])])]])]))])))])]]]))])])]))]])]])])]]])]]))]])))]))]])])])])]])]]]]]))))]]]]])]]])])])))]]]]))))]])))])]]))]]])))]])]])))))]]]))]))]]]]]])])]))])])]])]]])))]]])))]]])))])])])]]]))])]]))]]])))))]))]))])]))]])])]])])]]])]]]))]]]]])]]]])]))))]]])]))]])])]]])]]]]]]]]])]])]]]])]]]]]]]]]])))]])]))]]))))]]]])]]]]]])]]]]]])])]))])]))))]]]))]])]])]))]]))])])]]))))))]]]]]]]))))])))])]]]]]]))]))]]])])]])]]]))])]))]]))))]]]]]])]]]]])]])])])]]))]]]])])]]]]]]]]]))])))))])))])]]])]]])]])])]])))]))]]]))]])]]])]))])]]))]])))]])])]]]]]]]))]]))]))]])))))])]]])]]])))])]]]]]))]]))))]]]]]]]]))))])])]]]])))]])))])]])]])]))]])]))])))))))]))]])]]))))])))]])]))]]))])])]]]])))))]))])]]))]]))]]])]]))]))))))))])))))]])]]])]]))])])]]]]]))]])]])))])))]))))]))]]])])])]]))))]))]]]))]]]]))]]]])))))]))]])])])]]))]]))]])))])])])]])])]))]]))]])))]))]])))]])])])]]]])])))]]))]]])]]])]]]])])]]]])])))]]]]]]))))]]))))))])]]))]]))]))))))]]])))]]))]])]])]])]]])))])]))))))]])]]]]])])]))))]]])))]]])))]])]])))])]))])]))]]]]))))])))])]]]))]]]]))])])]]]]]]))))]])]))])]]]])))]]])))]]))])]))]]]])]]])))])]))]]]]))])]))))]])))])]))]]]])]))]])))]])]]]))]]]])])]]]])])])])]])]])])]]))])]))))]]))]])))])))]]))])]]]))]]]]])])))]])])))]]))]])))])]])])))])]))]]]))])]]]))))]]]))]]]))])]]))]])))]))]])]])]]]])])]]])]))]])))))))))]])))])]]))]))]]))))])])])]]]]]))])])))])])))]]]))]]]]]])]))])]]])))]]])]]]])))])]])))])]]])))))))))]]]]])]]]))]))]]))))]]))))]))]]))]])]])])])]]]])]])])))]]])])]]))))))]))]))]))]]])))])))]]]])]]]]]]]]]]]]]]]))])])]))]))])]))]]))]]]]))])]])])]])])])]])))))])))))]]]])]))]))])]))])]])]]])])]))])]]])])])]]])]]]])]))]])]))))])])]]]])))]])])]])]]])])]])]]]])])]]]]]]))]]]]))])]]]]))]))])]])]])]))]]]))]]]))))]]))])]]])]))]]])]))])]]]))])]]])))]]]))]])))))]]]]])]])))])]])]])])])]))]])])])])]]]]])]]]))])])])]]]])]))))])]]])]]]))]]])]]]]))])]]])]])))))))])]]]]])]]])])])]])])])]))])]]])]]]]]]))))])]]])))]]]))]])]])]))]))])]))))]]]))))))))]])])]))))]])]]])))]]])))]]]]]]])]))))]))])))])])]]]))])))])]))]))]])]))])]]])))))]]]])))])]))))))))))]]]]])])]))])]])])]))]])]])]])]])]]))])]])))))]]])]))]]])))]])]]]))]]]]]]]))])]])]])))]]))])])]]]))))])]]]])]]))))]])]]))]]]])))])]]))]))])))])]))))])))])])]]])])])))]))))))])]]]))]))]])])])])]])]]]]]])])))))]]]]])])))]))]])]]]))))])])]]]]])]]]]]))]]])]])])]]]))])]]))]))]]]]))]]))))))]]])))))]]))]]]]]])]])]])])])])))))])))))]]]])]]]]])])])]]]]))]]))]]]]))])]])])]))))])]]]])))]]))]))])]])]]]]))))])])))]])))]]])]))])]))))]]]]]))]]]]]))]])]]))]]]))]]]]))])]]))]]]))]])))]))]]]])]]))]]))]))]]]])]]])]))])]])])]))))]))])]))]))))]])]]]]]))])])))))])))]])]]))])])])]]))]]))])]]]))))]]))]]))]])))]]]]))]])))))]])))])]]))]))])]])]])]]])])])])]))])]]]]]])))]])]]]))]]]]])])])))))]]]])]]]))]])))])))))]]))))])))]]]]]]))])]))]))]]]]]]))]]])]]))))))]]))]))])]]]]]))])]))]]]]))]]]))]))])))))]]])]]]))]]]])]]]]]]])]]])))]))]]]])])]])]]]]]])])]]])])))])]]))])))]))))))]])]))]))])]])))])]]])]]])))]))]]))]]])]])]))))]]])])]]])))))])])]])]]]]]])]]])))]])])))))]])])])]]]])])]]))]]))]))]]))]]])])))]])])))]))]))]]]))))])])))]]]]))]]))))]]))]]))])]])])]]]]))]]]]]))]))])))])))]]])])])]))]])]])]]])))]]]))]))]))])]]]))]]))]]))]]))]))]])))]))])]])))))]]])]])])))))))]])]])))))])])))])]]]])]]))))])]]]])]))))]])))]]))]]]]]])])]])]))]])]))]))))]]])]]])))])]])])]])))])])])])]]])]]]]]]))])]]))]]]]])]]]]]))]])]]]]]])]]])]]])]])]]])])))]])]]])])]]]))])])]]]))]))))]]))))])]))))))]])]))]))]))))]]]]]]]])]))]]]))]]))]])]))])]]]))]))]])))]))])))]]]]])])]]))))])]))]]]]]))])])]]))))])]]]))]])])))]]))])]]]])]])))])))])]]]))]])]]))])]]]])]))])]))]])]]]]]]))]])]]]])]])))))])]]]]))]))]))]))]])]]]))])]])]]])))])])]))])))])]]])])))]]])]]]]))])))]]]]]]))))]))]))])]))]])]))))]]]]))]]])])]]))))])])])))]]))]])]])]]]])))]]])]]])])])]]))]))]))]]]])]]))))]]])))])]])]])])]]]]])]]))))])))]]]])))]]))]))))]]))]])]]])]]]])])]])])]))]])]]]]]]]])))])))]]]])))])]]]])))])))))))))))))]]]]))]]))]]))]]]])]]))]]]]])]]])])]]))]))))]]]]]]))]]))))]]]]]])]]]))]])))])))]))))]))])))]]]])]]]]]])]]])]]]))]])])))))]])))]))]]]]]]]))]]]]))])]]))]]])]])]])))]))]))))])])]]]]))]]))]))))))]]))))]]]]]])))]])))])]]]])))])))]]]))))]]])))]]]]]))]])]]])))))]])]]])]])))]]]))])]]]]]]]))]])))]])))]]])]])))))]]]])))]]]])]))]]])))]))]])]]]]]]]]])))))]]))]]])]]])])))))])]])]]))])]])]]]))]]]]]))])))]]]])))]))))])]])]])]])))))]]))]])))])))]))]]))])))))])))]]])))]])]]]]]])))]))]]]]))]]])]]]]])]]))]]]]])]]]]]]))))])])]]]]]]]]))]))]]]]])]))]]])))))]]]]))]]]]])]])]]]])))]]))]))))])))])))])))])]])]])]]]))]))))]]]]])])]]])]]])]])])]]))))])]]]]]]]]]]))]])])))]]]])]]))]])])])])))])]])]])]]]]]])))]]))]]))])]]]])])])]]]]]]])]))]))]]])))]]]]]]])])]])]]))]]]))]]])]]])]))))))))]])]]]))])])]])]]))])]))]])])))])]])])))))]])]))))]]]))])]])))]]))]]))))])])))))))])]]]])))])])]])]]]))))]])))])])])])]])]))])]))])))]]]])])]])))]))])]))]])])]))))]))])))])))])))]])]]]]))))]])]])))]])]])])))]))))]])))))])]))))]]))]))])]])])))])))])]]))])]]))])])]]]])]]]]])))]]]))))])])])]))]]]))])))]]]))]]]])]])))]]))])])]]])])])])]))])]]]))])))])])])]]]))]))]]))]]]])))))]))]))]])]]])])]))]])))]]])]]])])]]])]))]))]])]]]]]])])]]]])]])))]]])))]])))]))]])))])])))]]])]]]]))]]])]))]]])])]]]]]])]]))]))]])])]]))))])]))]]))])]))))))])]]])))))))])))])])))))))]]]]])])])])])]]))))]))]])]]])]]]]))))])]]])]]])]])))])])]])]])]]))]]])]))]))])]))]))])])))]]])))))))]]]))]])]])))))]]]]])]))]]]])])]])]]))]))]]])))])]]])])]]]])])])])])]])))))))]]))]]])])]]]))])])))])]])]))))])]))]])])]]])]))))))]))])))]]]]))]])]]])))))))]]]]])])]]))])))])]])])]]))))))]]]])])))])))]]]]]]]]])])]])))]]]))))]])))]))]))]]]])])))])])))])]])]])])]])))))]])))])]))])]]]))))])]]])))]]))]]]]]]]]]))]]])]])]]]])]]))))]])]])]]]))]])]]]))])]]])]]))]])]]]))])])])]]))]]))]]])))])])]]))])]]))]]))))])))]))))]))])))))))])])))]]))))))))]]]])])]]]))]])])]])]])])))])]))])]]))))]])]]]]])))]]]]]]]])]])]])])]]]]]]]]]]])]])]))))))])])]]]])]))])])]])))]))]]])]))]))))])])]]))]))]]])]]]]])))]]))))))])))))))]])]]]])])))]]]])]))))]))])]])]])]))]))]))])])))))])]))]]]]]))])])]]])]]))])]]])]]))))]]])]))]]])))]])))))))]))])))]]])]]])])))]]]]]))]])]]))])))]])]]]])]))))]]]]]])]]]]])]])))]))]])]))))))])]))])))])]]]))]]])]])]])]))])))]]]]])]]]]))])])])]])]]))])))))]))]])]]))]]]]]))]]]]]))]))])))]]]])]))])]))))))]])]]]))])))]]]))]])]]])]]]]]]))))))]])]])])])))])))]]])]])))]])]]]]])]))]]]]]))]])))]])))]]]))]))))]])]))])))]))))]])])])))))]))]]]))]])))]]]]])))]]))))))])))]]])])])]])]]]]))))))])])])])])]]]))))]]])])]])]])])))]]))])))]]]]]]))])))])])])]))]))))))])]))]))))]])]]]])]]))])]])))]))])])]]]]))))]]]))]]])]]]))]]]]]))]]]]]))]]]))]]))])))]]]]]]])]])]])))]]])))])]]]]])])))])))]]])))))])]])])]))]))]))]]))]])]))))))])]])]))))]))]])])]])]]])]))]]]))]))))]])]))]]])))))])]))]))]]))])]])]]]]])])))))]))])]]]))])])]]))]])))])])))]]))]])])]]]]])]]])])]]]])]))]])]]]]]))))]))])]])]]]]]]]]]]))]]))])))]]]])])))]))])]]))]))]])))]]))]]]]]]))))]]))]]])]))])]]))])])]))]])]]))))])]])]]]]))]]]])])]]))))))))))])])])]])))])))]]))]])]])))]])]])]))]]])])))]])]])])])]])))])]])]]]]]]]])])]]]]])))])])]]))))]])))]])))]])))])])])]]])]]]])])))]]]]]]]]])]])])]))))]]]]]]]]])]])]]]))])])))]])))])])]]])]))]))]])))))))])]))]]]]))])])])]])]))]]))])))]]])])))]))))))))]]]])]]])]]]]])))]))))])])]]])])]]))]]))])]]]))]])]])])]))]))))))]))]]]))))]]]])])]))]))])))))))))]]))])]))])])]]]))]]]])))))))))))]]])]))]]))))))))]))))]))]]]]))))]]]])]))]))))]]]]]]])]]])]])])]]])]]])])]]])))])]]]]])]])]]])))])]])]]]]))]))]))]))])])]]])))]))]]]])])])))])])))])])))]]]]])])]))))])])))))))))]]])]]))])])]]]]]))))])])]))))))]]]])]]]]))]])])]])])]]]))])]]]))])]])))])))))]]))]]]])])])])])]]))]]])))])]])))])]]]])]]]]))])]))]]]))])))]))]]])))]])]])])])])]))]]]))))]])])])]]])])))]]])]])])]]]]]]]]]]]])))])])]]]]))]))]]]])]])]])])))]))))])])]]]])]))]])])]))]]]))))]))]]])])]])]])])))]])]]]))]])])])]])]])]))])])))])]])]))])]]))])])]])])]]])))))]))]))]]])))]]]))]))]]])]))]])]])))]])])]]])]))]))])]]]]])]]))]))))]))])))]]))))])])]])]]))]]))]]])]]]])))])))])]))]])]])])]])))]]]])))])]]]))))))]]]])))]]])])]))]])])]))]]))))))]))]))])))])]))]]))]]])])]]])]]]])]))])])))))]]])))))]]])])]]]))]))]])])]]]]))]]))]]]))]]]]]]]]]))])])]))]]]]))))])])))))))])])]))))]])]]]])]]])]]))])])))))]])]))]])]])])]]))))))))]))]]]])]))]]]))]))]])]]])]]])]])]))))])]))]))]))])]))))])]]]))))]])])))))))))))]]]))]])))]]]]])]]])))]))])]])]]]))))]))))))])])])])]))]]]))))]])))])])]])]))))]])])]))))])]])))))]])))]]]])]])]))])]]))])]])]])])]]]]])])]]]]])))))]])))]))])])]))])])]])])])]])))]])))])]))))]]]]]]]]]])))])))]))))))])))]]]]))]]]]]))])]]]))]))])]])]]]])]]])]))]]])))))]))]])])))]]])))]]])]]))])))]])]]]])]))))]])]))]]])])]))])]])]))))]]]]]]]]])))])))]]])]]]])]]])])])))]]]]]]]))))]])))])]]]]]))])])])])])]]]])))]]]]])]]])])))])]])]])))]]))]]))])]]))))]])]]]])]]]))])])]]]]])])])]]]]])]])))))]]]]))]])])]]])])])])]]]])))]]]]))])))]]])]]))])))])])))]]]])])]]])])))]))])]]]])]))]]])))]]])]))]]))))]]))))]]]]]))]]))]]]]]]]))])))))]])])))]])])))))]]]]]]]]))]]]]]]])))))]]]))]]]]])])])]))])))])]]))))]]]]]])]))])]))])]]))]]]]]]))]]])))])])]))])])]]))))]))))]))]))]])))])])]]])))]])))))))])])]])])))]]]])))))])))))]])]]])))))]]]]]])])))]]]]])]])))]]])])])])]]]]]])))))])]]]]]])])]]]]]])]))]]]]]])))]))))])])]]]]))))))]])])))))]))])])]])))))])]]]]]])]]]])])])]]))))]))])))])))))))))])))])]]]]))])]]])))))]))]]])])]])))))]]]))]]])]])])])]]])]]))]]]]))])])]))])))])])])])]]])))]]])])])]]])))]]))]]]])]]])])])])))))]]]]])))]])]]]])))))]]]]]]]]))]])))]])]))))]])]])]])]))]))])]))]]])))]]]]]])))])]]]]))]])]])])]])]]]]))])))]]]]]))]]]]]))]))]))])])))])]])))])))))])]])]])])))])])))]])]))]]])]]))]]))))])]]]]]))])]))]])])]))])])]]))]]]))))]])]]]))]])]))))])))])]]]])]]]]]])))]])))))))]]])])])]))]]])))]]))]))]]])]]]]]))]))]]]]]])]])]]))]])]])))))]])]]]))])))]]))))]))]]]]])))))])))]])]])]])))]))])]))]]]))])))]]]]))]])])))]]]])))]])]])]]])]])])]]]]])))])]]])]]]]]))])]))]])))])))])]])])]])]]])])))])))]))]]])]])]))]]))]]]))))))))]]])]))])])]]])))))))]))]]])]))]]])))]))))]]]]]]]])))])))]])]]])]]]]])]])]])])]))))]]]])])))))])]))))])])))]])]))]))]))]]]]]])))]))])])]))]])]))]]))])]])))]])])]))))]]]])])]]])])))]))))])]])]]])]]]])))])]]))]])]])))))])]]]]))))]])])]]]])))]]])]))))]]]]])))])))]])])])]))))]]])))])])]]))])]))]))))))]))))))])])]]])]))))]]))]))))]]]])]))))])))]]])]])]])]]]])]]]]]])])]]))]]]))]))))]]))]))])]])]]))]))]])]))])]))]])]))))]])))]]]]]]])))))])]]]]])]))])))]]]]])]]))))]]])])])))]]])]]))])))]])])])]]])]))]))]))]]))])]])]]]])))]]])))]]]]]])]]]]]]]))])]]))])])])))])])]])])]))])]))])]])]])))]]])))]])]))]))]))]]]]]]]]))]]))])])]])]]]))]))]]))]]))))]]]]))))))])]))])]]]]])]))))]]))))])]]]]])])]))]]))]]]))]]))))])])])))])))])])]])))))]]]]]]]]]]]]]]]]))]])]]))]]))]))))]]]))])])]))))]))))]]]]))]]])])))]))]])])]]]]])))]])]))]])))]]]])]]]])))]])]])]))]]])])]))])]))))])])]]]]))))])]])])))]]]])])])]])))))]]))]))])))]])])]]]])])])]]])]))]]]]])))])]]))]]]]]))]])]]))]]]])]]))]])]]))))])])]])))))]])]])])]])))]])]]))))]]]])]]))]])]]))]))))))]))]]]]]])])))]]])))]])]]])))])]))]]]])])]])]))])]))])]))]]]]]])))))]))]]])]]]]])]])]])])])]))))]]]]]))]))))))))))))))])]]]])]]]])]])]])))]])))])))))])])]]]]))))]]))))]]))]]]])]]))]]]]]])])))]])])]))])]))]])]]]]])]]])])]]]))))]])]))))))))))])]))]]])]])]]]])))]])])])))))])]]]))])])])]]]])])])]])))]]]])))]]]))]]]]]]]]))])])]]])]))))]))]]]))])]]))]]))])))]]]]]))]]]))])]])]])])])))])]])))))]]]]))))])))]])))])])]]])]))])))]])])))))))))))]]))]])))])))]]]]]]]]]])))))]]))]]))))]))))])])]]]]))))])])]])])))])))]])]]])]))]]]]])]])])]))))))))])))])])]))])]))])))]))]))))]]])))]]))))]]]]]])])])]])))]]))]])])])]])]))])]]]])))))))]))]]))]])]))]]]))]])]])])))])))])]))]]]])))])])]])]))))]))))]))]]]))]])))])]])]]))])]))))]])])]])]])))))]]])]]))])]])])]))))]]))]))]))))])]]]))])])))]]))]])]]]]]]))])]]]))))]])]]])]]]]])]]]]]))))])])))]]))]]]]))])]]]))]])])]]))]]))]]]]))])]))))]))]]]]))])]]]])]]])))))])))]]]]]))))))])]]])]]]]))]])))]])]]])]])]]]))))))]])]])))))])))])))))])))]])])))]]))]])])]]))]]]])))])]])])))])])]])])]]])]])))]]]]))))]]))]]))]])))]))])]]])))])]))))])]))])])]]]]))))))))]]])]))]]]))])]))]])])))))])]]]]])]))]]])))]]))])))]]))]]]])])]]])))]]]]))))])]]]]])]])]])])]]]])]]]))]]])]]])]))]])]])]]])))))]]])]]]])]))]])]))))]))]])]])])))]))]]]]]))]])]))]))]]])])])])])))))])])])))]]]))]]])]))])]])))]))])])]]]])])))))))])]])))])])])]]])]]))])]))]))]]]]])]])))]))]]]))]]]])])]))])]]])])]]]])]))]))))]])]]))]]])])]))]]]])]))))]])])))]))]])]])])]]])])]])))))]])])]))]])))])]))))))]))]))])])))]]))))]]))))))))]]))]))]))))]]]])]]]))]]]]))))]))])))])))]))))]))]])))))))])])])]))))))]])]]]))])))))]])]]]]])]]])])]])]))))]))]]]))))]])))])]])])]]]]])))]]]]]))]]]))))])])]]]]]]])])]))]]]]]))]]))]))))]]))]]])]])))))))]]]]]]]]])])]))]]]]]]])]]]])]]]))]))))))])]))))])))))])))])]]]]]]))]])]])]]))])])])]])]]]))])])]])]])]]]))]]])]))]))))])]]])])))))))))]])]]))))])]])]]]))))]]])]))]))]))]))]]))))])))]])])]]))]]))])]]]]))])])]])))])]]]])]))]]])])]))))])))])))))))))])]])]))))])])]])]))]])]))]]])]))))]]])])))]]]))])))))]]]]])]]))])])])))]]]]]]]))]]])]])]))))))])]))]]])])]]])]]])])]))))]])])]]]]))])])]]]]]]]]))])))]))]))])]]])]]]]])])])]]]]])]])]]])))]]]]]))]]])])))]])]]))]]])]))]])))]]]]]])])]]]))]])))]])]))])])))]))])])])]))])])])])]])))]])])))))]]]])]))])]]))))])])]]])))])))))]])])))))]))))]])]))]])]]]]))]])]))]])))]])]]]]))))]]))])])])))]]])]])]]]]))]]]])]]))]))]])]])])]]]]])]]])))]]))])])]]))])))))))]))])))])))]))])))]]))]))]]])])])])]))]])]])]])]))])))))]))]]]))]]))])))]))]]])])))))))])])])))]])]]]])]]]]])])))))]]]]))]]]))]))]]))])]])]))))))]])])))]]))))))])))))]]))))])]]]))]])]]]))]])]]])]]]))])))))]]]])))]]))))))]]))])]))))))))]])))])))])])])))])))])]))]]]]))))])]]])]]]])]]]]))))))]))]]])]])])])]]))]])))))])])]]]])))]))])]])])]]])]]]]]]]]]])]])]]))))]]]))]))))]]]]])]]]]])]))))))]]))])]))))))]))))]]]])])])]]]]]])])]]))]]))]))))))]]])))]))]]]]]))))))]]]]]))))]])])]))]]]]])))])])]]]))]]])))))]]]]]))]]])))))]))])]]]]]]]])]])))]]))]]]]]]]]]]]]])]]]]])))])))])])))))))]]]]]))]]]))]]]]))]]]))])])]))]])]])])])]]])])])]]]]))]]))])]))])))]]))])])])]]])])]]])))))]])]]))))))]))))))]))]]])])))]]]]]))]]]]]])]]])]))]]))])])))]]]])))))]))])]]))))]))))))]])]]))]])]]]]))]]]))))])])]]])]]]]])]])])]])]]]]]]]])))))]))]))]))]]])]]))])]])])))]))))]]])])]]]]]])]))))]]))))])]]]))))]]])]]]]]]])]])))]]))])]))]]))]]]]]))))])]])])]))])]])])])])])))])]))))]]]]]]))]]]))))]]]])])])])]]]))))])]])))]]]])))]])])]]])))]))]]]))))))]))])])))]))))))))))))]])])))))]]])))]))]]])])))])]))])]])]]])))))])]]]]))))))]]])))])))])]]))]))])]])))]))])]])])])))]]]])))))]])))])))))])]]])]])])))))])]]))))])])]]))]))]))]))))]]]]]]]])]]]]))))]))))])]]]]]]]]]]])])))]]]]]])))])))]])]])]))])]]))]])]])]])]))])]))]]]])]])])]))]])]]])))]])]))]])]))])))])]))]]]])))]]]]])])))]]])])))))))]))])]])))]))])])])])]]]])]])]])]))])]]]))]]))))))]]]]])))))]))]]]))]]]])))])]])])]])]))])))))]]]))))]))]])))]]])]]))])]]])]]])]]))])]])])])))])])]])]]]))])]]]])])]])]))]))))]]]]]]]])))]]]])]]))]]))])])]]])]]])))]]]]))]]))])])])]]]))]])))))])])))))]]]]))]))))))])]))]]]]]))]))))]))])]]])]))])]]]]))]))]]])))))]])]))]))]]]))])])]))])]))]]]]]]])]]])]]))))]]]))]))]])))]))])]])]]))]))]]])))]]]))]))]]]]]]))))]]]]])]]])]]]])))))])]])])])]]]]]]))]]])])]]]]]))])])])))))))]))))]))])))))))])])]])])])]])]))]]]]]))))]]))))])]]))]))]]]))]]]]]]]])]]])])])]))])])]]))]]))]]]]])]])])]]))])))]]]]])))))])]]]))]]]]])])]))))]])])])])])))]))]])]])])]]])]]]]]]))])]]]]])]]])))]]]))]))]]])])]]]]])))))])]])]))]))))]]]))))]]]]]])]]))))])]]))]])])])]])]])]])))]))]))]]))))))])])])]]))]))]]]))])))))]]])]]))))]]])])])]]]))]]])])]]]))]]]]])]]])))]]])])]]]))))))])))]]]]]]])]]]]))])]])))])))]]])])]))]])))]))]]])]]]))]]]]]))))])]]]))]))])))])])]])]]]])]]])))))))])])))))]]]])])))]]]]])]]]))]])]]])])]))))])]])]]]]])]]]]]])]]))]))])])]])]]))]]))])))]))]]])]]]])))))))]]])))))]]))])]))])))]]))]))]]]))])))))]]))]]])])]]))])]])])]))]))]]))))]]])]))])])]]]]]]]]]]]))]]])])]]]])]]))]]]])]]))])]]]])]])]))]]))))]])))))))]]]]]])))]])])]))]))])]]])])))]))]]]))]))])))]])))]]]))))])]))])))]]])]]))]])]))))]]])))])]]))])]]])]])])]]]])])])])]))]]]])]])]]))]]))]]]]])))))))]])]]])]]]))))))]])))))]]]]))]]))]])))]])]]))]))])))]]]))])]]]]]]])]))))]]]]]]]]])))])))])))]]])])))))])])])])]]]))))))]])])]])]])])))))))])])))))])])])])])]])]))))))])]))))]]])]]]))))]]))))))]])]])]]))]]))])]))])))]]])]))]]))))]))))])]]]]]])]]])])]]]))])])])))])]))]]))])]]))))))]))]))]))]))])]])]]]]]]])]]])]])))]])]])))]))])]]]]]]))])])]]]))]))]]]]])]))))])])]]))]]]))])))]))))))]])]]])]])]))]]]]))]]]))])]]])]))]))))])]]))]]))])))]))))])))))])]))]]]))]])]]]]]))]]]]]]))]]]]]])])]]))))))]))]]]])]])))])]))]))]]]))])))))]])]]]])]])]]])))]]])))]]]])])])))))]]]])]])))]])]])])]]]))))]])]])]])]]])))]])]))])]]])]))]]))])))))]]])))]]))]))))]]]]]]])))]]))]))])))]]])]))])))]]])]])]])]]))]))]]))])))]]]])])))]))]]]]))]]]]]])]])]]])]])])]))]]))]))))]]])))]]])])]))]])]]]))))]]])])]]])])))])]]]]]]])]]]])]])))]])]))))])])))])))]])]])]]])))))]))]])]])))]]]))]])]))]])]))]]]]])]))]))]]]]]])])))]]]]])]))]]]]]))))]]]]]]]]])]))])])]]])])])]])))])])])))]]]]))]])]]]]])]]])]])]])]]))]]))))])]])]])]])])])]))])))])))))])]]]]]))])]))]])]]))])]))))]))]]])))])]]])))))])]))]]))])))])]]]])]])])])))]])))]]])))])]])]]))])]]])))])]))]])]]])]]))))]]]])]))))))]))]]])))))]]]]]))]]]]]))]]])]])]]]]))]]]])]]))))])])]))])]]]]))]]))]])))]]]]]]])])]]]]]]]))])]]]]]))))]))])]))]]]])))]]))]])])]])])))])]]))]]]]]]]])))]]]]]))))))))))))]])))]])))))]])))]]]]))])]]]))]]]]])]]])])]]))]]]]]])]]])])])])]))]]]]])])]])]]]]]))]]]]))])])))]])])]])]])]]))))))]))]])]]))]])]))])])])]])]))))))]]))))])))]])))]))])]))))]]]]]])]]])])))]]])])))]])]])))]]))])]]]])]]]]))]])))]]]]])))]]))]])]]))]]]]))))]))]]]])))]])]))]]]])))))))])]]))])]])]))]))]])]]]))]))]])))]]]]]]]]])])]])]]]]])])]]]])]]]])])]))]])]]]]))])])]]]]]))]])]]])]))]]])])]])]]])]]))))]))]))))]])])]))]))]]])))]))]]])])]))))]])))]))]])))])))]]])])])]))]]]]])))))]))])])]]]))))]])))]]]])]])])]])])]]))]]))])]))))]]))]])))))))])]]]]]]))]]]]]]))]]]])))])))]]]]])]])]))))))]]])])]]]]])]]))]]])))])))])))))]))]])]]]))])]]))]))))])])))))]]])]]]))]])])))]])))]))]))])]])]])]]]])]]]])]))])]]]]]])])]))])]])])]]))))])]))])]])])]]])]]))]))])))]]])]])))])]))]))))])]]])]]]]]]])))))])]]))])))])]])]]))]])))])]]))]])))]]]])]]))]])))]))))]))])]]]))]))]]]])]]]]]))]])]])]))))))))])))])])]))]))]])))))]))])])))]]])])))]]])]))])]])]))]])]])])])])])])]]))])))]))]]]))]])]]])))]])))]]))))]]))))]])]))])]))))])])]]])])))])]]]])))])]]])))])))]]])))]])]])]])))])]))))]]])])]]]]])))))))))]))))]))))]]]))])]))]]])])))])]]]))))))])]]]]])]))])]]])]]]]]])]])])])))])]]])]]]))]]])]))]))])])]]]))]]]]]))])])))]))]]))]]))]]))]])))))])])]]))]])))])])]))]]]])]))))))]]]])]]])]]]]])])])]]])]))])]])))])))]])))]]))])])]))]))]])]]))))]])]])])])))]))]))))]]])])]))])]]])]]]]]]))])]]))])]))]])]])]))])])]))))])])))]]))]]]]))))]]))])]])]])])))]]]]])))]]]])]))]))])]))]]])]]]]]]]]])])])])]])))])]))]])))])])))]]))])]]]])]])))])))))))]]]])]]))))))]))]))))]]]]])])))]))]]]]]]))]]]))))])]]]))]))])]])))]])))]]))])))))]])]])])))))]))]])]]]])])]]]]))]]]]]]))))]])])))]])])]]]))]]))])))])]))])))])))))]]])]]]]]])]]))]]])])]))))))]]]])])])])])]]])])])])]])))]]]))])])]]))]]))))])]))])])]]))])]]]]]])])]])]))])]])]]))))]]]))))]]]]]]]])]])]]]]))]]]]]]]))]])])])])))])))]])]])]))))]]]])]]]))]))]))])]]]]))]))]]))])])])]])]))])))]]])]]])))]]))])]]]]]]])))]]]))])]))))]])]))))])])]])))]))]))]]))]))]))]))))]))]]]]]]]))]])]]]]])])])]]]]]])))]))])]]))]]]])]]]])))))))])]]]))]]])))]]])]]))))]])]]]])]]))))]]])]]])))])))]]]]])])))))])])])))])]])]]]]]])])))))]))))]))))])]))))]]))]))]))]))))))))])]))]]]]]]]))]))])]))])]]]]]]]))])]])]]))))])))])]])])])))]]]]])))))]))])])]]))]))])]]])))]]]))])])))])]])]])]]))]]])])]]]]]))])]]))))]]])))]]))]]])])]])])])])])]]))]]))))])]])]]))])])])))]])]))))))])]]]])]]]])))])]])]))]))]])])))))))])]))]))))]]]]))))))]]))))]))]))])]]]])))]]))]])]))]]]))))]))))))]]])]))]))]]])])])))]]]))])))))])]]]]])])]]))]])])]))))]]))))]])]]]]]])]]))]]))]]]))]]]]]))))])]])]))]]]))))])]])]])]]])))]]])]])]])])]]))])))]))]]]]]))])]])]))))]]))]))))])]]))))]))))]))]])))]))]]]]))))])]])]])))])])])))]))])]]))]))])])))))]])]]]]])]]])]]]]))]])))]]))]]]])))))))]])]))]))])])]])))))])))]]]]]]]]])))]])]])]]])))])))])]))]))])))]))])]))))])]]])]])])])]]]]]]]]]))]])]))])]))]]])))]]]]]]]))))]))]]]]]]])]))]]])))]]]))]))]))]))]]])))])]])]))])]))]]]])]])]]]]]])])]]]))]]]))]]]))]]]]))))])]]))))]))))]])]]))]))]])]]]]]])))])]))]))])))]]]]]])]])]))]]])]))]]])]]))]]]])])])))]))]]])])]))))])))])])]])]])])]])])]))]]]]))]))))))))))]]]]]))))))))])])]])]]]])]])))))]]]]))]])])]))])))]))]])])]]]])))]))]))))]]]))))]]])])]])]]]]]])]]])]])))])]]])))]]])]])))]]]]])]))]])]])))))]]]])))]]]]))])])]]))])]]])]])])])))]]))]]]]))])]]])])])]]]]]])])]])))]])))])])]]]]]]]]])))])]))]])])))]]]]))]]])])]))))])))]))]])]]]])]))]]]])))]]))])])])])]])]])]))]])]])))]]]])])])]]))))))))]]))]))]])]]]))))))]])))])])]]))]))]))]]])]])])])])]])))]]))])))]))))))))]))]]]]])]])]])))]]))])]))]])))]]]])))])]])))))]]]]]]))])])]])]))]))))]]]]))])]]]]))]))))))]]]])]))])]]))]])])]]))])]])]]))]]]))]]]))]])])])]))))]]])])))]))]])))]])))))]]]]))])])])]))]]])]]])])))))]]]))]))]])]]))]])]])])]))]))))]]])]))])]])]])))]))]]]]])))])))]]]]]])])]]])]])])])))))))))])])]])]))))])])]]]]))]]])]]])]]]])))]]]]])])])]]])])]))))]))))]])]]])]])])]])]])]))]]]])))]]]]))]))]]))])]]]]]])])]])]))))])]))]]])])]])]]]]])]])]]]]]]]]]))])))]))])]]]]))]))])]))]))))))))))]))]]]])]]]))]])]])]]]]]]))])]))])])]))])]))])]]])))]))])]))))]))])))])]])]]))])))))))))]]]]]))))]]]])))])])])]])))))]]]))]]]]])]]]]])]))]])))]))))]]]]])]]]]])]]])]))]]])]]])))]]])]))))])))]))])])]]]]))]])]])))]])])))))]]))])]])]]]])]]]])]]]))]])]]))))]])])))))]])]]))]])))]]])))]]))]))]]]])])])])]]]))))]]]]))]])]]))])])])))])]))]])]))))]])))]])]])]]))]))]))])))])))]))])]]]]]))]]])))]))]))]])])])))))]))))]])])))))))]))]])])]]]])])]))]))]]))]]]]]])))])]))])))))])]]))]]]))])]]]))])]]]))]])]])]]]))]]))]))]])])]])]]]]])]]))]])])]))]]))]]))]]])]))))]))))]])]]))])])])])))))))]])]]]))]])))])))]]])])])])))]))]])))]]))]])])])])]))))]]))])])))])])]])])]])]]])))))]])]])))]]]]]))]]))))]])))]]))]])))])]]]]]]]]]]]])]]])])])]]))]))))])]]]))))))]]])]]])]]])]))]]))])])))]))]])])))]))])]])])))]])))]]]))]])))]))])])])]]])))]]]]))]]))]]])])])]))]))])]]]]]]]]))))))))]))))))]]])])]])]])))])))]])])]))])])]))]]))]]]))]])))]])]]))])]]]])]))))]]))]])))])]])))))))])])]]]]))))]])])])))))])]])))))]))))]))])]]))))])]])])])]])]]]])]])]]))]]]])))))))]))])]]])])))]]]]))]))])]]])])]])]]])))]]]))))]])]]]]]))))])]])))]]]]])]]])]]])]])))]]]]]]])))]])])))))]]]))]]]]])]])))])]))))])))]])]])])]])])))))])]))))]]]))])]]))]])])]]]]]))]))]]]])])]])]]])])])])]])]]))]))))))]]])))]])])))]]]])]]])])])]]]]])]))))]))))]))))))]])]]]))])]]))]]]])]])]))]]]]))])])]]]])))]]))))]]])]])]]]]]]])]])]]]])]]]]])))))]))]]))))]]])])]])]]])])))]))))]])])])]))]]]]))])]]))]]]))]))]]]])]]]))]))]])])]]))]])])])]))]])]]]]])])]]]))]))]]]]))]])]]])])]])))])])])]])])]))])])]]]))]]))]]]]])]]]]])])]])])]])))]])])]])]]])]]])))])]])]))))]])))])]]))))))))]]]]])))]]])]]]]]]]))])])]))))]]))]])]))]]]))])]])]))]))]]]]])])]])]]]]])]]])])))]))])]))])]])]]))])])))])]])]])]])]))])]]))))))])])]))))]]])]]))])]]]]]]))))])))])))))]))))])])])])]))])])))))]])))]]])])]))]]))]]])]]]])))))))]])]]]])]]]]]])))]))]]]])]]]]))))])]))]))]]])))))))])))])))))]))]))))))]]]]]])]))]))])])]))))))]])))]))])]])])])))])]))]])))))]]])]]]])])]]]]]])])]])]])]]))]]]]])]])]]]]])]))]))]))]])])])]]])]])))]]]])))])])))])])))]])))]]))]]))])])])))]])))]]]))])]]))))]))))))]]]]))))]]))]))])]))))])]))))])]]]]])]]]]]))]]))))]))]]])])))]])]))))]]))])]))]]])]])])]))])))]]]])]]))))))])])]]])])]])]]]))]]))]]]))])]))]]]])))])))]))])))))])]))))]]]]])]]]))]])))]]))]]]]]]))]])))]))]]]))])]])]]]]]]])]))]])))]]])))])]]])]])]]])]]))])])]])])]])]))])]]))))]])]]])]))]])]]))]]]]]))]]))]))])]))])])]]])))]])]]))]]]])]))]]))])])]))])])])])]]]]]]))]])]])])]])]))))]))]]))))))])]]]]])])]])])]))]))]])])]]]]]])])]]))]]]]]))))])]])]])])))))])))]))))]])))))]))])])]))))]]]]]])))]])])))))]])]]]]]]]])]))))]]]]]))))]]]))))))]))])]]]])]]]))))]))]])])]])]]))])])])]]]])]]))]]]])])]])]]))])]))))))]]]])]])))]]])]))]))])]))))])]))])]])]]]]]])))))])])))]]]])])]]]])))))])])]))))]])]))]]]))))]]])]]]]))]])]])))])))]]])))]]]]]))])]]]))])])])])]]]]))])]]])])]])))])]))])])]))]])))])))]))))]])]]))]]])])))]]]]))]])]])]))])]]))]])]]]])])]]]])))]]))]))]))]]))]))]))))))]))]]))])])])])]])))])))]]]]]])]]))])]])])])])])]])]))])))))])])]))]])])))]]]]]]))]])]])]])]]))]])])]])]])]]]))]]))))))]])))]))))))]))))]))]]])]]])])))]]])]])]])])]])]))])))]))])))]))])])]]]]))]]]])])])))])]]]]]]]]]])])])]]]]))]]])))]]]]]))]])]))]])))]))]]))]]))]])]])))])]])])])]]))]]]]]])]])))]]]))]))])))])]])]]]]]]])))])]])]))]])]))))]))]])]])]]]))])])]]))]])])]])]]]]]])]]])]])]]]]])))])))))]])))])))]]]]))])])))))]]]]])))]]])])))))]])]])]]]]]]]]]]])]))])))]]]]])])]))]]]])])))]]])]])])]))]]]]]]]])])))])])]))]]])])]])])))]]))))))]]]]))])]])]])))]]))))]])]])])])])]]))]]]])]))))]))])]]]))]))))]]])])))]]]]))])])))])))))]))]]]]))]])]))]])]]]))))]])]]))]])))]]]))))]]])]]))))]))])])))]]))])]])))]]]]))])]])])])))]])))))]]))])]]))])])])]]])]])))))])])))))))]])))]])])]]]]])))]]]]]))))))))]])]]]]]])]]))])))])]]))]])]))]]]])])])]]]]]]))])]]]]]))]]]]]))]])]))]]])])))]))]))]])]))]))]))]))])]]]]]]])]]]]))]]])]))])))]]]])])]))])]]]]))))]])))]]))]])]])]))))))]])])]]]))]]]))]))))]))]))]]])])])])))]))]]))))])))])])])]]]]))]]]))])])))])]])])))))]]))))]])]]))))])]])])]))]]])])))]])])]]]]]])))]]])]]))]]]])])))))]]])]]])))]]]]])))))))]]]]]]]]]]]]]))])])]])]))]])])])])))])]])))))]])]]]]]]]))]])])]]))]])))])]]]))))])]])])]]])]])])))]))]]))]]])]]))))])])]])]])]))]]])]]]])))))]))))))))])]))])]))])]]]])])])]]])))]]]])]]]]]])])]])]]))])])))])]])))]]]])))))])))]]]))))]))]))))))))]]]]]))])])]]]]]])])]]])])]])]]]]])])]]))]]]))]))]))])])]]))]]])])))]]]]]))]]]])]])))]))])]]])]))]])])]]]]))]]]))]]]]]])])))))])])]]])])))]]]]]]]])))])]]]))))])))])]))])))]])]]))])])])])])]]])])))]))]))))]]]]))])]]))])))])))]])]]))]))]]]]]])]]])))))))))]]]))]]]]]]))]])])])])]]]]]])]]]]]]]])]]])))])])])]))]])]]]))]]]]]))])])])])))]])])]]])])]))]]]]])])]]])]])])])]])))]]]))]))])]]]]))))]])]]]])]]]]]])])))))])]])]]]]]]))))]]))])])))]]])))]])])))))]]]])]]]]])])]])]])])]]))]]])))))))))]]]]]])]]]]]]))]))))]])]])]]]]))]))))])]]))]))]])]])])]))])]]]])])]]])))])))))])])]])]])))]))]]]]])])))))])]])]]))))))])])))]]]])))])))]))]]))))]]]]]])))]]])]]]])]))))])]])]))])]]]))]])]))]])]]]])]))])]))])])))]))]))]))))))))]]]]))]))]]]]]])])]]))])]))]])]]])]]])])]]])))))]]]]]])))])]]]))])])))]))]]]]))))))])]])]))])))])))])]]]]])])]])]))])])])])))]]])))]))]])]]]])])))))))]]))])]]]))]]])])]]))]])))]])]]]))))))]])]]]))))])])]))])])))))))]])])))]])))))]])]])))])]]])]])))]]]]))]]))))])])))))])]]]]]])]])]))]])]]))])]]])))))]])]]))))])])])])])])))])]]])]]])))]))])])]])))))]]))]))]])]))))))))))))))))))])))])]]]])]])]))])])])))])]]]))]))]]]]]]])]))))))))]))]))]])]]]))))]]]])]])])]]]]))]])]])))]))))]])]]]]]]))]])]]))])])]))))]]])))))]]]))]]))]))))]])]]))))]]]]]))]]]))]]])]]]]))))]]))]]))]]]]])]]))])))]]]]))])]]])])))])))))])])]]]))]])])))]])])]]]]]]]])]])]]]])]])))])))))]))]))])]])]))])]))]])))])])])])))]])]])]))])]))]])]]]]))]]])))]))]])))]))]]])]]]]]))]])]))]]]))]]]]])]]])])]]]])))]]]]))]]]))])])))]]]])))]))]]]]))])])])))]))]]])])]])]])])]))]))))]]]])]])]]]]])]))))]])])]))]))]))])])]]))])]))))])])]]]]))]))]))])])]]))]]])))])])]]))]]])])])))))))]]))])])]]]))])))])]))]))))]]])))]))]))))])])])])]]))]]))])]]]]]])]]])]]]]])]]])]]])])])))]]))])]]])))]]]]]))))))]])]]))]]))]]]))]]])]])])]]]])]))))]]]]]]]])]]]]])]]]])]]]]]])))))])])]]]]]]]]]])]])]))]))]))]])]])))]])))]))]])))]])))]]))])]])]]]])]])]]])])]]))]]])))])])]))]])]]])]]))]]))]])]]])))]])]))]]]]])]))]]]])))]]))))]]])]]]])])))]))]])])]]])]]]])]])))]))))])))]))]]))))))]))]]]]])]]]))))))))]])]])]])]))))]])])])]])))]]])]])]]))]])))]])]))))]]]))))]]]]))])]))]])))]))]])])))])]))]])])])))])))]))])))]))]]))))]]))))]])))))])))])])]])))))])])])])]]))]]]]])]])]]))])]]))))])))]))))))]])])))])])]]])]])]]))]])])]]])]])]])]])])]])]]))]]])]])]])]])]))]])])]])))]]))]])))]]])]])])]]]))]))]))]))]])]]])]])))])])]]]]))]]]))])])))])))])]]]]))])])])))))])]]]]]])])))]])))))))]])]])))]]]]))))))]]])]))]]]]])))])))]))]])]))]]))]])]))))]]))))]]]])]])])]))])))])]))]))]])]))]]])))]))))]))]])]]]))]))))]]])]))]])])])))))])))))])]]]])]]))]])]])])]]))]]])))])]]]])]]))))]])]])]))]))]]]])]]))]]]]))))]]))]])]]))]])]])]))]))))))]))])]])))]]])))])]])]]))))]])])])])]]]))])])))))))]])))]]))])))])]))))])]])])))])]]]]]])))])]))))))))))]]]]]]])]]]))))]]])]]))]))))))))]]]]]])])])]))]))]))])])])]]))]]])]])))]]])]]]]))]))]])])]))]])))])]]]]]]]])]]]]))]))]]))])]]))]]]]))]))])]))]]))))])))))])])])]]]]]])]]))))))]))])])))])])]])])]]]))])]))]]]]]]))])))]]])))]]))]])]])))]))]])])))]]]]])])]))]]))]))]])))]))]]])]]]]]))]])))]]))]]]])])]])]]])])]))))))]])]))))))]]]])])])]))]]]]])]])])])]]])]))))])])]])))]]))]))]))])))]]])]])])]]]))]))]))]))]]]]]]))]])))]])))))))]]])]]))])]]])])]]))]])])])]])))])))))])]]))]))])]]]))))])))))])]))))]]]]]])]]])))]]]])])])])]]]))]])]]])]]))))]])))]]]]]]])])])])]])]))])])])])))]]])])]]])))))]]]]]]]))]]]]))]]]))]]]))))]))])))]])]])]]))]]]]))])])])])]]]])]]]))))]]]])]])]))]]])]])]])]])]))]))]))])]]])])])])]))]))])))]))])))))]]))))])]]])))]]]))))]))))]])]]]))]]))]])]]]]]))]))]]]])))]])))]]]]]]))])])]))]])]]))]])))]])))]]))]])]]))]])]])]])]]]))]]]))])))]])))]]]]))]]])]]]]])]))]))]])))]]))))]]]]]))))))]]]))]])]))))))]))]]]]]))])])))]))])))))))]]))]]))]))]))]))])))]])]])])]]]]]]])]])])))))]]))]]])]]))]]])]))])])])))]))])])]]))])))))))))))])))]]]))]))]])]))])]])])]]])]]])]))]))]))]])])])))]]]]]]))]])))]]))]]))))))])])]))]]]])]]]]]))])]]]]]]]]]))]]]])])])]]))))])]]]]]]])])]]]]]))))])))))])]]))]]]]))]))))]])])]))]]]])))))))]))]])]])]]))]))))]])]]])]]))]))]])]]))))])]]))])]]]])))]]]])])))]]))]])))]))))])]]]])]]])))]])]]))]])))]])))]])))]])])])))]))))])))]))]]))])]]])]))]]))))]))))]])))]]]))]))])))))))))])]]]])]]])]]]]]))])])))]))))]]])])]]))]])))]])]]])))]])]])]]])]])))]]])))])))))))])))]))]]]))))))]])]]))]])))]]]]]]])]])]]))])])))])]]]))])])])]])])]]]]]]))]])]))]]]]]])])))]]]])]))))]))]]])])])]))))]))])]]])]))]))]]])))))]))))])]]]]]]]]))])))))]))]))]]])]]]])))))]])])]]])])])])])))))]]))]))])])])])]]]]]])])]]]]]]))))])])])])))]]])]])]]]))]])])]))]))]]]]]])]))))])]))]])])]])))]]])))]])]])]))]])))])])]))))]]]])]]]]))]]]]))]])]]))]]]]]))))])))]])])))]]])))])))]]]])])]))))))]))])))]))]]))]]]])])])]])))]]]]])]])))]))])])])]])]])]]))]])])))))))))])))]]]]]])]))]])))))))])])))]]))])]]]])))])]])))))]]))])]]]))))]])])])]]]))]))])])))]))]])])]]])])]]))))))])]])]])]]])]]]]])]])]])))])])])]))))]))])]))]])]]]]))]))])]])))]]]]]]])]])))]))]])))))))))))]]])]]]])]]])]]]])])])])])))])])]]])])])))]])]]]]]]])])])]])]))]]]]]])])]]]))]]]))])]]]))])]))]]])])))]])))))]]]]))])]]]]))]))]]])])))]])]))])]])])))])]]]]])]]])])))))))]]]])]]]]))]]))))]]]))]]]]]])]))]]))))]]))]]])])))]])]])]])])]))]]]]))])])])))))]]]))])])])]]])]]]]])]))])]))]]))))]])])])])))])]))]]))))]))])))]]]])]]))]]]])]])]]]))]]))))]]))]))]])]))]))))])]))]]]]])])]))]]])]]]))])]])))))]]]])])])]))]]))]))))))))))]]]]))])]])))))]]]]))))]]])))])]]]])]))])))])])]))]])]])]])]])]]]))])]]]]]))]]))])])])])])))))))]))]])]))))))]]])))))]])]]])))])]]])])]))]))]]]))]))]))]])))]))]))]])]]])]]]))))]])))]]]))])))))))]]])))])]))))])]]]))])))]]]]]]]])))]])]]]))))]]])]])])]])))]]]]])])))]]))])])])))])]]))]))])]])))]))]])]]]))))]))))]])]])])))])])]])]]))))]]]])])]])))]]))]]]])]])])]]]])]]))]]))])])]]]])]]]]])])))]]])]]]]]]]]]])))]])])]]]]]]]))))]]))]]]]]]))])))))])]])]])]))]]))]]))]]]))]]]))))]]]]])])]])]))]))]))])])])]]])]]))]])])))])]]]]])])]]]]))))]))))]])])))])]]])]])]]))))]]))])])]]]])))]]]]]))])]]]))]))])]])))])]]])]]))]))])]]])])]]])]])]]))]))]))]))]])])])]]])])))]))]])])])))]]))]]]]])]]]))]])])))]])]]])))]]))]))))]])]]])))])])]])]))]]]]]]]))]]))])))))]])]]])))]))))))])]])]]]]]))))]]]]]]))))]]]]]))]])))]]]))))]]]]]]]])))])]))])]]]))))]]))]]))))]]]])]))))]])))]]))]])))]]])]))]])]))]]))]]))])])))))]]])]]])))))])]))))])]]]])]])))))))]]]]]])]))]]))))])]]]]]]))]]])]]])]]))]]]])]))])]]]])]])]]))])])]]))])))]]))])))]))]))]])]]))]))]))]])]])]))]]]]]]])]]]))])]))]]]]]]))]]))]]))]]]]]))]]))]]))])]])]])]]]])]]]])]])))])))]))))]))))))])]))))]))])])))]))))]]]))]]))))]]))])))]])]]]])]]]])))]]])))])]))]]]]])))]))])))))])]])]]]))])])]]]]))]]])]])))))))))])]])]])]]]))])])])]))))]]))]])])])]]])])))]])))])))]]))))]]])]]]]))))]]]]))])]))]))))]]]])])]])]])))])])]]))])]))))])))]))]))]])))]]])])]]]]]])])]])]])))])])]]])))])]])))])])]])])]])])))]])]]]]])))])]]])])]))]]]])))]]]]))]]]))]]]))]]]]]]])]]]))]])]]])]))))])))])]))]]])])]))])]))]))])])]))]]]))]])]))]))]])]]]]))))]]))]]]]]])]))]))))])))))]]])])]]])))]]]])]]))]]))])))])]])))))]))))])]])))]])))])]]])]))]]]))]]))])])]]])]])))])])]))]]])]]]]]])))))))))]))])])))]])])))]])]])])]))]]]])))])]))])]))])])]])])])]])])]])))))])])])]])]])])]]])])))]])]])))]]))))]]]))]]])]]]))]]])]])])))])]]]]]))))]])])]))]))))]))]]]))]]]]))))]]]]))]]]])]])))))])]]]))]]])]]]]])]]))]]]]))]))]]))]))))]]]]]))]))])])]]]]))])])))])]]]))])))]])])]]]]))]]]]])])]]])])]]])]))])))])])]))]])))])])])])))])))))))]))))])])])])))]]])])))]]]]]))]]])])]]])])]])]]]]]])))))])]])]]))]])]])])])])]]]])]]]])))]]]]))))))))])]])])))]]])))))]))]])))]))])]]])))))]))])]))))])]])]))]]])])]]]))))])))])]])])])])])]]]]])]]))))])]])))]]]]]]))]))))])]]])]]]]]]]]]])))]])]]]))]]]])))))])])]]]]))])]))])]]]))]))])]])]]]])]]])))])))])]]]]])))])))]])]]))])))))])])]])]]])]]])]))]))]))])))]])]])))))))))]])))]])]))))]))]])))))]]]]]]])))))])]]]]]])])))]]])))]])]]]]]])])]))]]))]))]])]])]]])]])]])))))))]))))))])))])]])]))])]]]])]])]]]])]]]]]])])]]]]])])]])))]]))]]]]]]]))))))]))))))])]]))]]])))])]])))))]])))))]]])]]])]))]]])]])]])]))))))]))])))]]])))))))]])]))]]])))])])]]]]]])]])]])]])]))])))])))])]]])]))))]))))]]]]]]]))]))])]]]]))])))])])]))])]])])])))))])))]]))]]))]]]])])]))]))))]))))))))]]))]]]]]))))])]]]]])]]]]]]])]])]])])]])))]])]]])))]]))]))]))))))]])])))]))))])]]))]))]]])]))))])])]])]])])))])]]]]]]]))]))))]])))]])])]]))]])])]]))]))]]])])))]]]]))]]])]]]]])]])])]])]]]]]])]]))]]])])))]])]))]]]])])])]])))))]])))]]])))]))))])))]]]])]))])))])]))))])))))))]]]))]]]]]]]))]]]]]))])))]))]]]])]))]])]]]]]])))])])]])]]]]))))])))]])]))])))))))]]]]])))))))]])]]])]]))]))]]])])))))))))))]))])]]))]))])])))])]))))))]]])])]])]]))])]]]]]]])]])]))))])))]]]])]])]]])))]]]))]]))))]]))]]])]])])]]])))])])]])]])])]]))))])]))]])])))])]]]))])))))])))))]])))))])]]]))))])])))))]))]])])]])]]]])])]]]]))))])])])]]]]])])]))]))])]))]))])]]))))]])]])]))])]]]]]))])])]))])])])]]]]])]))])))])]])))])]]])])]]])]))))]))])]))])])]]]])))]])])]]])]))]]))])))]))]]))))])]))]]])]]])))]]]]])]]))]))))]])))]]]])])]))]]]]))]))))]))]]]]])]))]])]))]))])]]])]]]]]]))]]]])])]]])]]]]))))])))]]]))]))))])]])))))])])]))]])])))]]]]])])]]]]]]])]))]]))])]])])])]]]]]])))]]))))))))]]))]))])]])]]]]]])))))))])))])]])))]])])))))])]]]))]]]))))]])]]])]]))]]])]))))))]]])]]]))]]])))]))]]])])]]]])]]))))]]]))]]]]]))]]]))))]]])))]])))]]))))]])))]])]])]])))))]]]))]))]])))])])]))])])]))])))))]]]])]])]))]]))]])]]]]]]]]]]]])])]])]])]]))))])))]))))]]))]]])))))]]])]]]])))]))]))))]))))])]]]])]))])]]))])]])]))))])))])))])])])])))]))]])]]]])])))]))]]])]]])]]]))))])])]]])])]))]))]]])]]])]])]]])]])])]))]])]))]]))])])]])]]])]]]]])]]]])]]))]]]]]]]))]))))]]]])]]])]]]]))])))))))])))))]]])))])))]]]))]]))])))]]]]]]]))]])]])]]))))]]))))]]]))])])]])))))))])])]])]]]))]]]]]))]))]]))))))]]])))]))])]]])]])]])])]]]]]))]]]]]))]]]]])]]]]]))]]])]]))]]]))]))])))])])]))]]))]))]]]])]]]]]])]))]))]])]]))]])]])]])])]])])]])]]])]))]]]))])]]]]]])]))]])))]))]))))])]))])])]))])]))]))))]]]])]]]))))))))))))))]]])]))]))))])))]]]]))]))])])]))))))]]]))]]]]])]))]]])])))]]]])])]]))])]]])]))]])]))))])])]]))))))])]])))]])]]])])])])))])]])]])]]]))]]]]])]]]))])]])])))))])]]))))]]]])]]]]]]))))]]])])])]]]]])])]]]))]])))]])]]]])]))])]))))]]]]))))]]])])]))]]))])))))))]])))]]]])]])])])]]]))]))))))]])))))))])]])))])]))]]])]))))))]]]])]]]]])))])))]])]]))]))))))]))]]])]]]))])]]])))]]])))]))])])]]])))])))]]])]))]]]])))])])])]])])])]]]))]])]))))))))]])]))])]]))])]]]]])]]]))]))]))]]])]]))))]]]]]]])]]]])]))))]])]]))))))]]))]])]]))))]])))]))))]]])]]]]])]]])]]])))]]))]])])])]))])]]]])]])]])]]]]]]]])]))))]))]])])]]]]))])]]])]))])])]]]])))]]]))]))])))]])]))))]]))])]]]))]))))]]])]))]])]))))]))]))]))]])]]]))))]])))]]))])))))))])])])])))]]])))))])]]])]]]]]]]))]]]))])])]]])])])])]]])))]])))])]]]]])))]]])))]])))]))])))])))))]])]]]])]))]]])))))]))])])])]]))])]])]]]]))]))]])]]])]]))))])]))])]])])))])]]]])]))])])])]))]])])]]]]])]]]])])]]))])]])]])))])))]))]])]]))]]])]]]))))]))))])])]]))]]]])))]))]])]))]]))]]]]]])])]))))]))))]]]))]))])]]))]]))]]])])]]))))]]))))])))]]))])))])])]))]]])]]])]]]))))]]])]]]])])])])]]))))))]]])))))))]]]))]]]]]]]]])))))))))]]])]]))]]])))]]]])))])]]])]])]]]]]]))))]))]]]])]]))]]])))])]])]]]]]])))))]]]))))])])])))]))]])))))]]]))]))))])]])))))))])]]]]))))))]]])))]])]])])))]])]])))))]])))])))]]]]])])]]]]))))]]]])]))])])]])]]]]]]])))])]]]]]))]))]])]])]))]]]]]))]])])]]]))]]]))]]))))))]]]])])]]])])]))]])))]]))]]))])]))))]))))]]))])))]])]]])]])]]))])))]))]]]]]]))])]))))])))])])))))])]])))]]]]])]])]])])))]))])))))]]]])]]))])))]))]))))]]))]]])))))]])])]))]]]]))))]])])])]])]]]]))]))]]]))]]]]])))])))]))])]]])]]])]]])]))))]]]]]])]]))]]]])]]))]))]]))))])))))))]]]]])]]])]])]))])]]])]))])]))]]])])]]))]]]))]]]])])]]]]])]])]]]))])))]])))]]]]]]))]]))]]])])]])])])))]))])))]]))])]]])))]]))))))))))))]]))))]])]]]]]]]]])))))]]]]))]))]]))]])]))]]]])))))]]))]])]])])]])])])]]]]]])])]]]])]])]))])]))]])])])])))))])))]])]])]])))])]))])))])))]])]]]))))])))]))])]]))]])])))]))]))])])]])]))]]])))))]]]]))])]])))]])]]]))))]]]])]))])]))]]]]))))]]])])]))]])])]))])])))))))])]])])])]]))]]]])])]))]])]]))))])])]]))]]]]))]]])]))]])]]))])]])))])]]]))])]]]))))]])))])))]))]])]]]]])]])))))))))]]])))]])]])))))]]]])))))]])]])))])])))))])]]]]))]])))]])))])])]])])]]))])]])))]))]]]))])]))]]])])]]])]]))))]]]])]))]])])))]]]]]]]])])))])])])))))))])]))])]))))]]]))]))))))]]]]]])]]])]))])])]]))])])])]))]]]]]]]))))]]]))))]))))]))])))]])]])])]))))]))]])]))]]]]]]))))))]]]]]]]])))])]])]])]])])]])]]]]]]]]])))))])]))])]]]))]))])))])))))]))))]]))]]]))]]]]]]])]]]]))))]])]]))]]]]]]])]]]))))))]))]])))))]]))]]]]]))])]]]]))])])))])))])]]))])])])))]))))])]]])]]])]]))))]))]))))])))]])]]))))])))]]))])]))))]]]]]])))))))))])))]]])]]])]))]]]]]))]))]])]))])]]]))]]])])])]])]]])]]])]]]])])))]))))]]]]]]]))]]]]))]]]]]))))]))]]]))]))]]))]])))]])]]]]))])]]))))]]]))]]]])]]]))))]])))))])]])]]))]])])]])]]]))]))]]]))]]))))]))])]))]]))))])])]]]])]]]]])]])]]))])])))]])]])))))))]]])]))]])])]))))])))]]]]]))]])])]]]])]]]]))))]]]))]]])]]))])])))])]]]]]]])]]]])))]))])))))])]))]]))]))))]]])))))]])]]]]))))])])]]]]])]]))))))]]))))]]))))])]))])))]])])))))])])))]])]))]]]]]))])))]])))))])))]))])]]])))]]]))))]]]]]]])]))]))]])))])])]])]]))])]]]))))]]))])))])))))]))])])])]]]]))])]))])]])]])])])))]]]]))))))]))])))))]))]])))])]))]])]])]]])))]])]]]]])))]]))]]]]]]]])])])))))]])]))]]]]))))]))]])))]]]])]]]))]]]]]])])]))]]]])]])]]])]]]]]]))]]])))]))))])))]]))])]]))]))))]])])]]]))])])])]]))]]]))])))]))))]]))])]]]]]))))]))])]])]])])])))))]])]])]]]))]]]])]]))])]))]))]]]])))])]]]]])]))]))]))])))]))))))])]))]]))]]]]])])]))]]])]]]]]])]))))))]))]]])))]))]))]]))]]]]])]]])]]]])]]]))])])))))]])))]))))]])])]]]]]]))]))]))]]]]))))]))]]])])]))]))]])))))))])])]))))]))]))])))])))]))))]))]]]]]))))]]))]])]))))))))]]]]]]))))]))])]]]))))])])]])]))])])]]])]])]])))]]))]]))))))]])])])])))])]]]]]])]]))))])]]))))))]]]]]]]]]]]])])]]]))]]]]]]]]))))]))))))])]]]]]))]])])]))]]]])]])))])]])])))]))]])]]])])))]]]]])]))])])])]))]]]])]]])]]))])])))])]))])))))])]]]])]]])])]]]]))]])]]]]))]))]]]])]))))))]]])]])]]))])]])]]])]]])]]]]))]])))]))))]]])])]]]))])))]]))]]))))])]]]]))))]])]]))]])]])]])])])])])])))))])))])])))]))]]]]])])))))]))))])])]))])))]])))])))]])])))])))])]))]))]]])))])]])]]]]]])]])])])])))]])])]]]]))]]))]]]))])]))))]])])])]))))])))))]]]])]])]))])))]])])])]]])]))))])]]]]]))]))]])]])]]])))]))])))]])])])])])]]])]])]))]]]])])))]]])]])))]])])))])))]]))]))]))])]))))))))]))))]])]]))))))])]]])])))])]))]]]]]]]]]))]))])))))]]]))])]))])]])]))])]]))]]]])])]))])])])))]]]]]]]])])])])]]])))))]])]]]]))])])])])))]]]]))])]])])]]))])))))]))]])]))]])]]])])]))]]]]]]]]))])]])))))])])]]]]]))]]])]]]])]])])]]]))]])))))]]))])])]]]]]]))])]])))]))))]]))]))]]]])]]))])]]]]])]))])])))))]]))]]]])))]]])]])))]])])]])]]]))])))])]]))))]]]]]]])]]]]))]))]])]]]))])))]))]]])]]]]]]])]])])]))])]]]])])))))])])]))]])))]])])))])]])))]]))])]))]]))])]]])]))]]])])]])])]))]]]))]]]]]))))])]]]]])]]))]])))]]))]]))])))]))]]]]])]]]]]])))))]))))]))])))]])]])]])])]]]))))]])]])))]]]])]])]])])]))]]]])]))])])))]]]])]])])))])])]]))]]]])))]))]])])]))]])))])]])]])))])))]]]]))]]]])))])])])])]]]))]])]])])))]]]])]]]))]]])])]])])))]))])))]]]])]])])]]]]))])])])])])))))]])]]]))])])]]]])))]]])))]))))]])])])))]))))])]]))])]])]])])]]]]]])])]])]])])])))])]]]])))))))])])]])]]]))]]]]))))]))])]]]]))))]]))]])]))))]])))]]])])])]]))]))]))])])]]))]])]]))))))))))]))]]))))]]))]]]])))])]])))])]]]))]))))))]]]])))]))]))])]))]])]))])]]])))])]))))])]]])]]))]))])]))))])]]]]]])))]]))]]]))]))))))))]))])))]))))))]))]]])]])])]])]])))))]])]))]]]])])]))])]))]]]])]]))])]])]]]]]])])])])]]]]])]))])]]]]])])])])]]]]]]]])]]]]]]])])]]]))))]))]])]])))]]]])]])))])))])]])]]))]]])])))])])))))]]))]])])]))])))]))])]])]]))))]]]))))])]))]])]]]]])]]]]]]]])]]]]))]])]])))]))))))])))]]]])]))))]])]])])]]]))])]]])]))]]]]))]]])])))])]))]))]]])))))))]]])]))))])]])])]])))))))]]))]]))))))]]))])))))))]))]]]])])])]]]]])])]]]]]]]]))]])])]])]]))]]])])])])))]]))])))]]])))]]]]])]))]]]))]]]])]])]]])]))))])]]]]])]]])))))]])])])]]]]]))]]]]]]]])))]]]]])])))))]]]]])]))]))))))])]]])]])))]))]]]]])]])))])))]]]]])))))]]])]))]]])]]]]]])]]]]]])]])]])])])]]]))))]]]))]))]]))])])))]]]]]])])]))))]))]))])))])]])]))]]))]]]))]])))]])]))]])]])]]])))]]]))])])])))]]])]]]]))]]]]]]]])])))]]]]]])))]]]]))))])])))]])))])]])]])]]))])]))])])]))]]))))))))]]]])])]]))]])))])]]))])])]]))])))]))]]]))]]]]]))])))]])]]))))]]])])]))))]]]))]]]])]])])]]]]))]])]))]]]]))])])]]])])]]]))]))]]]]))]])])])))]]]))]))]))))])])))]]]]))]]]))]])])]))]])]])]]]]])]]])]))]]])])])))])]))]))]]]))]]])))]))))]]]]))]]])]))]]])))]))]]))]])))]])]]])]])])))]]]]]]]]]])))]))))))]]]]]])]]))])))]])))]]])))))]))))])]]]]]])]])])]))]))]]]]))])]))]])))])])))]]]])])])))]]))]]]]]))])]))))])]]))]]))])]))))]]]])]]))])]])))))]]))))]])]]]])]))]])))]))])]]]))]])]))]))])]])]]]])))])]))]])]])])))]]))]))])]]]))]))]))]]]]]])]]]))])])]]]))]]]]]))))))]])]]]]))])))])]))]]]))]]]))))]))])])]]])]]))]))])])])])]))))]])))])])]])]]])]))]]]])])]))]))))))]]]]])])]))))]]]])))]]]]]))]]))]]))])))))])))]])]])))])))]]))))]]])])])]]]]]]]]])]))])))))])))))]]]]])]]]])]]]])])]))))))]))]]))]))))]]])]])])]]]])])]]]]]])))]]]))]])])]]))]])))))]]))]]))]])]]))))]))]])])]]))))]))))]))]))])])])]))])]))])]]]])])]]]]))]))])))])]])]]]])]]])]])))]]]])]]]]])])))]])]])]]]]]]])))]])]))]]]))]])]]]]))]])])))]]])))]]]]))))]))]]])))))))]))]])])))]]])))]))])])))])])]])])))]))]))))))))))))]]]))))))))]))]])])]]]])])])]]))))])]))])]))]])))])]]])))])]))]]]))))]]]]]]]])]))])]]]]]])]))]])))))]))])))))))])]]])))]]]]))]]))]]]]])]))))]))]])))]))]]])]])])))]))]]]]))])]]]])))])))])))]]))]))]))])]]])]]])])]]))])]]])]))))))]]])]))])]])]]]))))])])]]])]))]))))))])])]]])]))))))))]]]])])]]]]])]]]])))])))))])])]]]]))]]]]]))])]]])))])])]])))))])))]]])]))]))))])]]))))])]]])]])]]))]]]))]))]]))))]])])))]]]]]]])]]]]))])]]]]])))])))))))]])])))))]))])])])))))])]]]]])])]))]])))]]])])))]])])))])]])))))]])]])]]]])]]))]])]))))])])]]]]]))])]]]]]])))]]))]])]]]]]])])]])])]))))])]])]))))]))]]))])))]])]]))))])]]))])])]])]]]]))))])])]]])]]]]])))]]]]])]]])]])))]]])])]))]]]]]])])))])]))])))))]]]]]]]])]]]]]))])]])]))]]]]]])]]])))])))]))])]]])]))]])]]))]]))])]]])))))])]]))))))]]]))))]]]))]])))))])])])])]]]]])]]])]]]]]]]]]]]]]]]))))])]]]]])]]))))]))]))))]]))]))])]))]]]]]]])]]]]])])))]]])]]]]])]))]]])))))]]]]]]]]]])]]]))])]))]])]])])]]]]]]])))))]]))])])]])))))]]]])]))])]]]]])))))]]]])])]])])]])]]])]))]]]]))]]))]])])])])]]))]))))))]]]]]]]]))]])]))]]]]]]])))]]]))])))]])]])))])]]))))]]])))])])))]]])]))]]])))]))]]))]]])]])])])]]))])]]]]]]]])))))]))))]))]]]]])]]]]]]]])])))))]))))]]))))]]]]]]]])))])]]]]]])])))])]])))]]])])]))]))]]])))))))])])]])))])))])])]])])]]]]))))]]))]]]))]])]])]]]))])))]))]]])]]]])]))]]]])])])))))))]]))])]]])])]]]]]))))])]]))])]]]))]])]))])))))]))]))]]])]))))]])])]]])]]]))])])])])]]]]])))))))))]))]]))]))]))))]]])]]])))]]]]]]]]))]))]]))))])]]])]])])]]]]])]))]]])]]]))))])))]])]]]])])))])]]))])]]])])))]])]])])]])))])))]])]]))]])]]))])]))]])]])]])]))))]])])])])])]])]])))]])))))])))))]])]])]])])]])))])]])]])))])]))]]]]))]))])]])]]))]])))]))]]]])))]])]]]])))]))))]))]]]]]))]]]]])))]]))]))])]]])]]))))]])]]))])])]))])])))]])])]]]]))]))))))]]]])]))]]]]])]))))]]]))]]])))]))]))))]]])))]]]])]]]]])]]])])])])))]]))))))])]))])))))])]))]]])]))))]]])])])]))]])))))]))])]]]))]]])))]))])))]]])])))])]]]]])]]]]])))))]])))]])]]]))]))))])])))]))]))]]))]]))]]]))])])))])])])]))))]]))]]]])])]]]]]])])])]]]]]]])))]]))]]])]]]]))))]]]]]]]])]]))]]]))]])]))])]]))))]]))])]))]]]))))))))]]))]))])])]))])]]])))])))])]]])]]]])]))])])]])])))]]))]]])))]]])))]])]))])]))])]])])]]]]])))])])]]])))))]])])])))]]]))])]])))]])])])])]]])])]))))))])])]])]])]]]))]]))]]]])]])))))])])]]])]))))]]))])]))))]])]]]])])]])])]]]])]))])])]]))]]])])]]))))])]))))])]])))]]]])])])])))]])))]))]])]])]))))]])])]]))]]))))]]])])]]]]]])]]]]))])))])])]))]])))]))))]))]]])))])]])])]]]])])]])])))])])])]]])]]))])))]]]])])))])])]))]])]))])])])])]]]))]]]))]])]]))]]]])])])))]])]])])]])])]))])]])]])))))))])]]]))]]]])]])]))]))))]))]])]])))])]]])]]]]])))]])))]]]))])]])])])])]]])]]))))])))))])))]])]])])))))]]])))])]])]))]]])))]]]]]]))]))))))))]]]))])])]])))))])]))])))))])])]]))))])]])]]]])]])))))]]]]]]])])]]]))])])]]]]))))]])]]]))])]])]))))]])])]))])])))))]]]]]]]]]]]])))]]))]])))])])]]])]])]))]])]))]]]]))))]]))))]])])))]))]]]]])]]))])))]))])])))))]])]]])]]]))]))]]))]]])])]])]])))])]]))))))))]]))))]))])))]])]]))))])])]]))])])]]])]])]]))]]))])]]))))])))))])]))])])]])))))]))]]]]]]))])))])]]])]]])]]))]))]]]))])])])]])]])])]])]]]]))]])))]]]))])]]))))))]])])])])]))]])]))))]])))])]]]])))]))))))))]))))))]))])])]))]))])]])]))])])))])))]]]]])))])]))))))])]]]]]]]]])]))))])))])))])])])))]]))])])]])]])))])])))])]])))])]))])))))))]])])]))]]]))]]]]])])])]]]]]]]])]))])]))]])])])]])]]))])))]]]]))]])]]]]]))])]))])]))))]]]])])]))]]))))])]))]]])]))))])]]]])))))])]))]]])]]))])]]))])]])])))])]]))))]))])]]))])]]))]]])]])]]]]]))])))))]])]]]]]]]]]))))]]))]))]]]])))])])]])]])))]]]]]]])))]])))))]]]]]]]])))])])])]]))]))]]]]))])))]]]]))))]]]))))])]))]))]]]])]])))]))]]]])])])]]]]]])])))])]]]]]])]]]])]]]))]]]]))])))))))])])])))]))]])))]]))]]])])])]]]])]]]]]]]]])])]])])]]))))]]]])]]]))])))))]])]))]))))])])]))))]]]))]]]))])]]])]]))])]]]))])]])]]]]))]]])]))])))]]])])])]])))])]])]])))])])]])]])]]]]]])]])))]))]))]]])]))]]]]]])]])]))))]])])]))])))])])])]))])))])]))]))))]])]))])]]])])]]]]])))))])]]]])])))))))]]]]))))))])]])))]]]]))]]]]))]])]]]))]])]])])))])])])))]]))))]]])]]]))]]])]])]])]])])]]])])))])))]]]]]]]]]]]))])]]))]])))]]])])])])])]]]))]])))]))])]))])))]))]]))]]))]]]]]])))])]]]]]]]]]))))))])]]]])])))]]]))]))))]])))]])]]]]]])]]])]]]]]))]])))])]]]]]]))])]]))]])]))]]]]])]]))))])))]])]]]]])]])])])]]))))])]]))]))]]]]))]])]))]])]))])])]])))]]]]]]]]]]))])))]])]]))))]]])])])]))])]]]]]]))]]]))])])))]]])])]))])]))))]]]])))]))]]))]]])])))]])]]]]]])]))))]])))]])]])))]))]]))]]]])]))]]]]]]])))]]]]])])]]]))])]])])))]))]]))]])]))))]))])]])])]]))]]])))]])]]))]]])])]]))]))]]]])]])))]]])))]]]]))]]])]]))]]])])]))]])]))]])]])]]]]])]))))])))])]]]])]]]]])]))])])]]]))]]]]))]))]))]])])]])]]]]]))]])]]]]]])]))]]))))])])]))))))]]]))))])]]])]]]]))]])))])]]])))])]]])]])]])))]])))]])])))]])]))]])])]]]))]]])]])))]])))]])])]])]))))])]))]]]]]))])])))]]])]]]]])))]])]])])))]]]]])))))]])]]))))))]))]]))))))]]])]]])))])]))]]]])))]]])]]]]))))]])]))))]]])]]])))])))))]])))]]]]]]))])]]]))))]])))))))))))))]))])]))]]]]]]]])]])))]]]])]])))])]])])]]))]]])])]))]])]]]]]))))]])))])]]))]]]))))])]))]]]))])))]))]))))]))))]]]]]])]])]])])))]])])]]]])]))])])]])))]]]))]))))])]))])))]]])]))]))]))])]]])]])]])))]))]])]))))))))]])])))]))]]))])]])])]])])]]]))]]]]]])]]])))])]))])]]])]]])]])))])]]))])]]))))]))))]]))])])))])))))))))])))])]]])))))])))]))]]))]]])]])])]))))))])]])])])]]])]]]])]])))]]]]])]]])])])]]]]]]))])]))))))]])))))])]]))))))])])]))]]))))]))]))]])])))])]]))]))]]]]))]])))]))])))]]]])))])))))))))]]]))]]]]]]]])])]))))]])))]]])])]])]))))]))])]]]])]))]])]])))))]]))]])]))))])]]]]])))))])))]]])))]]]])]]))])]))])])]]))]]])))]]]]]])]]]])))]]))]]))))))))])])))))]]]]))]])]]))]]]))])]))]]])]]]]]]))))]])])]]]])]]]))])]))]]]]))))))))))]))])]]))]]]))]]))]))]))))])])]])])])))))])])])])))))]))]]]))]))]])]))))))]]))]]))))])]])]))]]])]))))]]))]]))]]]))])]]])]]]]])])]]]])))]))))]])))]]]))))))]))])))])))))]])]))])])))])))))))]))]])))))]])]))]))])]))]])]))]))))])]]]]]])])]))])]]])))))]))))))]))])]])]]]])))))]))])))]]))]])]))])]]]))]]]))]])]]])]))]]]])))))))]]]]))))]]])])])))]]])])]])]]]]))))))]]])]]))]))])))))]]))]))])])))))]])]))))]))]))]]])])))]])]]]]]])])]]))])]))))]]]]))])]])]))]]])])]])]]]])))]))])))))])]])])])])]))]]]))])]]])))])))))])])]]))])]])]))]]))]]]]])))))]]]])])])])))]]]))]]]]]]])))))]]]))]])]]]))])])])]]]))])))]))]))])]]))))))))])]]]]]])))]]))))))])])])]])]]))])])]))]])))]))]]])))]]]))))]])]])])])]))]))))]]]]])]]))]]))))]))]]]))])))))))])])]))])))]])]]]]))]))]]]])]]]]]]))]]))]))])))]])]]]])])])))))])))]))]])))])])]])])])))]))))]]))))])]]]])]]))]])])]]]]))]])]]])]]]]]))]]])))]]]]))]]))]]]])]]))]])]])]]]]))])]]]))]))])]]]))]]))))]]]]]]]]))]))]]]]]])))]])])])]]])]]]]]))])]]))]]])))]]]]))])))])))])))]])]]]]))))]])))]])]])])]]])]]]]]))))))]])))]))]]])]))])]]]])])])])))))))])))))]])])]]])))))])]]])])))]]]]]]])])))))]]]]]]))])]]]])))]))])]]))))]])]))]]]]]]]))]]))])])])])]))]]))])])]]]]]))]))]))]]])))))]]]]]]))]]])]])])]]]]])])]])]]])]])]]])])]])]]]])]]]])]]]))]])))])])]))]]))))]]])]])]]]))]])]]))])])])]))))]]])])]])]]))))])])]]])]]])]])])))])))])]))]])]]]]])))])])))])]]))]]]])])])))])]))])]))])])]))])]))])]])]))]]])]]))))))))]]))])]))])))))]))])]))])])]]))]))])])]])])]]]]])))))])]))]))]]]]]]]]]))]]]))])]]]])])]])))])))]]])]]))]]]]]])])]]]))])]])]])]))])))]]])])]])))))]]]])]]]))]])))]]]]]))))])]]]]))))]))])))]]))))]]))]]]]]]]))))]]]))))]))))]]])])))]])]]])])))]]]]]])])]))])])])))]]])))]]]]]]))))))]]]])]]]]]))))]])))))]))])])))]])]]]]))))))))]]))]))]]])))))])))])))])))]]]))]]]]])]))]))])]]))))]]])]]]]]))]]]]]]])))])))))]]]))))])]))]]))))))))])])])])]))]]]]])]))]))]))))))))]])]))])])]))))]]]]]]]]])]])))]]))]]]]])))]))]])))])]]])]]]]))])]]]]))]))))])]))]]])]]])])])]])]]))]]]]]]]]))))]]))]))]]]))])]]]])]])))))]]]))]))]])))]))]]))])]]]])]]]))])])]]]]]))))))])])))))))]])))]))]])]))]])]))))]))])]))])))])]))]]]])]]])))]]])))]])])))]))])])]]])))]]])]])))]]]))))))]]))])))]]]])]))))]]]])))]])])]]]]]))]])]))])])]))]))))]]]]))]]])))])]))])]]]])]]]))]]])))])]]]))))]]])])))])]))))))))]]])]]]])])))))))]])]]]]))])))])))])))])]]]]]])))]])))]]))]))]]))))]))]))]]))]])]]))]]]]))]])]]]))]))))]]))]]))]))))])])))]]])))]]]))))]])))]]))]])])))))))))]]]])]])))))))))]])])])))]])))]])]]]])))]]])])]])]))]]]])]])]]]]]]]))))])))]))]))))])]]]])]])]))])])])))]])))]])]))]]]]]]))]))])]])]]))])])])]]])]]]])))))]))]))))))])]]]))))])))])])])]]])]))]]))]])]]]])]]])))]]]]]]))))]]]]]))))]]]]]]])])]]]]))])]]])]]))])]]))]])])]])]))]]]]]))))))))]]])])]])]))])]))))]]]]))))))]]])]]])))]]))]]]]]))])])]])))])]])]]]]))])]))]]]))]]]]]))]]))])))])))]]])))])]]))]]))]])])]]))]])]))]])]]]))])]])]])]))])])))])])]))])))]])]]]])))])]])]]]]))))]))]]]]]]))]]]]))]]))))]]]))]])]])]]]]]))]])])])]]))]))]])))])])]]]]]))]]))]))))]))]])]))))))]]])])]])])]))])]]])])]])]])])]))]])]])))))]]]])]]]])))]]])])))]]))]]))])])]))])]]]]))))])])]]])))])]]))]])]]])))))]])))))]])]])]))]]]]))])]]]]]))]]]))))]]))])]))))])))]]))])))]]]]])))])]]))]])]]]]]]))])])))]]]])])])]])]]))))])))]]))]])]])]])]])]))]]))])]]]]]]]]])))]])])))))]]]]]]))])))])))]])))]))])])]))]])]]]]]))]]]))]]))]))])])))))]]))])])]]])]]]]]]]]])]]])]))))]]])])))]))))]]])]]]])]]]]))))]))]]))]])]])))])))))])))))))]))))]])))])))))]]]]))])])]]]])]))])])]]))])])]]))]]]))]]]])]]]))]])]]]]]]]]]]]]]]]]])]])])]))]])]]))]])])]]]]]]))])])))]]]])]])]])]]))])))))))))))])))]]])])]]]))])])]))))))]))])])]))]))])]))]]]]]]])]])]]))]]]]]]))))])]])])))]]]]])))])]]]]]))])])))]])]])])]]])]))))]))])])])))]]])))]]))]]]])))]]))])))))]))))]))])]))]]]]]])]])]]]]])])]])]])))]]]))]]))])]]))])]))])])]])]]]])]])))]))])))])]]])))]]])]]))]])])]]]])]]])])]])))))])])])))]]])]))))]]])))]])]))]])])]]]]])]])]])]]))]])]))]]))])]]))]]])))))]))])]]])]])))))))))])))]])]])]))])))))]))]))])]))])]]])))])))]]])])))]]]]))]])]]]])])]))])]])]])))]]]))]]]])]]))])]))])]]]]]]]])])))]]]])]))]))]))])]]])])]))]))]))))]])]])]]]))]]])))])]))])]]])]]]]]])))]]]))]])])]]))]]))]]]))]])]]]]]])]])]))])]]))])))))]])]]))])])]])]]]]]])])]))])])]])])]]]])])])))))]])]])])]])]]]))]])))])])))))]))]]])]))))]))])))]))]]]]))])])))))]]]]))])]]]))])])))]])]))]]]]]]]]]]]))]]))]))]))))]])))]))]]])]]]]))]])]]))])]]))]))]])]])]])]]]))]]])]])]])]]]]]))])])]]))))]])])]))]))))])])))]])))]]]))]]])]]]]))])]]))))]))))]]))])))]])])]])]]]]]))))]])])))])))))])])))]))])]]))]])]]))]]]]]]]]])))))])]])])]))]]))])]])]]))]]]))])))))])]])]]))]]]])]])]))))]]))))]))])]])])))])))))])))))]]])))])]]]]))]]]]]]])])))))])))]])]]))]))]))]])])]))]])]]])]])))]])))]]))))]]]]])])])])]))))]))))])]))])]]]))]])])]]])]])))])))]]))))]])))])])]))]))))))]])]]))]]))]]])]))])))])])]])]]]))])))))])])])))])]])]]]]]))))]))])])])])]])]]]]]]]]))])))])])]))]]]))])))]]]]])])]])]))))]]]))))]]]])])))]))]))])]])]]]))))]]))]))]]))]]])))]])))]])))]]])))]]]))]))])])])]])])]))]))))]])])]])])))])]]])))))]]]))]]])]))]))))))))))))]]]]]]])]])]))))]])]]]]]]]))]])])]))))]])]])))])]])))]]]))])]))))])))]])]]))))))]))]]]))]]]]]))]))])])]]]]]]))]]))]])))])]]]))))))]]])]]]]]]]]))]]))))]]]]]))]])]]))]))])])]))])))]))]]])))])))])]])))]]))]])))))))]]))]))])]]])]]]]))))))))])]]]]]]))]))]]]]))])]])]))]))])))]))))))))]]))]])))])]]]])))])])])))]))])]]]]))))])))]]))])]))]])]]))]])))]])]]]]]]]])))]))])))))]]))])]]]])]]]))])]]]]])]))]))])]]]]])]]])]))])))]]))]]])])]]])])]])]))]])]))])]))]))]]))]])))))]])))))]])]))])]]])))))))))]]]])]]))]]]))))])]]]]]])]))]]]))]]]])))]))]]))]])))))))))]])])]])]])))]))))))])])]])]))]]])]]])]]]]))])])])])]]]]]]])]])))])])]])]]]]]]]])]))]]]]])]])]))))))))]]])]])]]]]))))]]]]]])))]]]])]]))]))]]]]))]]))]]))]]]]])))])]]])))])))]])))]]]))))])])]))]]]]]]]]])]]]))])])]))))]]]])]]))))]))))])))]]]))]])])))])))))]])]))]])))])))]))]]])]])]])]]))]))]]))]]])))]])))))])))]])]])))))))))))])])))])]]]]))])))]])])])]]])]]])])])])])]))))))))]))))]]]])))])]])])))]])])]])))]))]]]]))]]]]])]))))))))))]]])]))))])]))]]]))))])))]]]])])]]))]]]))))]]]])]])))])])])))]))])]]])]])))))])])))]]]))]]))]])]])])))))]))]))]]]]))]))]))]]]])))]])])]])]]]]]])])))))))]))))]]])))))]]])]]]))])])))))]]])])])])]]]])]])]))]]))]))])])]])]])]]])])))]])])))]]]))))]]])]]]))]]]))])])])])))])))]))))]))]))]]]]])))]))))))]]]]))))])]]])]]]]]]))]]))))]]]]))]))]]])]])]))))))]]]]])))]])])]))]]))])]))]))]])]))])]))]]])]]]]])]]]])]]])]])))])))])])]]]]))]))])])]])])])]]]]]]]])))]]])])])))]]]]])]]]]))]))]]]]])])))]]])))])])]]))]])))))]))]))])))])]])))]]]]]])))]])])])]))]))]]]])]))])])])))))]]]))]]]])]]))]))]))))])])]]]]))])]]))))])))]]]])]]])))]])]]))])]))]]]])]]))]]]))])])]]]])]])])])]]]]))]))]])])])]]]])])))))]]]]]))])]]))]))]]])]))]])]]])]))]]])]]]]])])))]])])]]]))]]])]))]]])))]]]]]]])))]]))]))])]]])]]])])])]]))]]]]]]]))]))])]))])]]]))]]]))])))]]))]]])]))]))]]]))]]))]))))]))]])]])])))]]]))))))])]))]))])))))])]])]))))]))])])))]))])))))]]))]]))])))]))]]]))])])]))]]]]]])])])])))]]]]]])])]])]]]])]]]]]]])]]))])]]])]))]]])]])]])]])]))))]]])])]]]])]))])])))])]]])])]]))])])))))])]])))]]])]))]])]]]])))])]]]]]]]])])])]]]]]])))])]])]]])))]])])))]]]]]]]]))])]]))]))]]]])]]])]])]])]]]])])))]]]]])]))])]))]]))])))]))]]))])])]))))])]]])])))]])]]]])]])]]]]))))]]]]])])])]]])]]]])])]])])))])]])]])])]]]]]))))]]]])]))]))])))])]))))])]]])])))]))]]])]))]))))])]]]])))]))))])]]))])]])))])]))])))]]]]))]])]]]]])]))])))]]))]))))]])]))))]]]]])]))]]])))]]])]))])])]]]]))]))]]]]))])]])))])])))])]])]]]))])))]]]])))]]])]]]]]]])]))))))))))]]))))]])))])]))])])])])])]]))]))]]))]])])])])]]]))])])])]]])]])])))]]]))]]))])))]])]])])]]]]]])])])])]])]])))]]]])]])]])))])))]))]]]))]]])]))]]))]))]]]]]))])])]]))])]]])))])])])]]))]]]]])]]]))]]]]))]])))))]]])])])]))])]))])))]])]]))]))]])]))]]]]))))))]]]]])]]]])))])])])]])])])]])])]]])])])))]))]]))))]])])]]])]])])])])]]]]]])])))])))]]]])]]]])])))])))))]))])]]]]))]]))]]))]]]]]])))]]))])])])]])]]]]]])]])))]])]]])]]]]]]]])]]])))])]]]])])]))]]]))])]])))]))))]]]]))])]]])]))))]])]))])]]]])])]))]]))))))))])])])))]]))])]]]]]))))])]]])]))))]))]])]))])]]]]]]]]]]])]])))))])))]]]]])))))]]]]))]))])))]]))]]])))))])))])])])]])]])])))))]]]])))]])]])])))]])]]]))]]]]]]])))]])]])))]]))])])))])]]])]]]]]]]])))]]]])))]]))]])))]))))]))])]])])]]])]))]]]]]))]])])]]])))]]])))])])]]]))])))])]]]]]]))]]]))]]))))])])))]))))]])])]]))]]]))])]]))])))]])))))])]))))]]]]]])]])))))]])))])]]))]]]))])))))))))))))]]))]]]]))]]))))])]))))))]]])]]])])))])]]]]]])]]))]]])))]])))))]))])))])])])])]]])]))]]))]]))]))]]]]])))))]))])])))))]]]))])))]])))]]))])])]))]]]]))]])])])]]]])]]]]))])]])])))))))])]]])))]]))]])])])))]]))]]]]])))))]))])]))])])])]]))))])]]]]])]]]]))))))])])]))]])]]]]))]]]]])]])]]])]))))]]))]])]))]])]])]]]))])))]])))]])]]]])])])]])]))))]])])])]]))]]])))])]]])]))])]])]]]]]]]])]))])])]]])]])))]]]]]]]]))]])]]]]])]]))]]])])])]]))])]))]]]]))]]]]))])]))]))]]])]]]))]]))]))]])]))]))))))]))])]])]])]))]]]))]]])]]]])]]])]])])]]]])]])])])])]]))))])))]]))]])])))))))]]])]])))]))]))))])))])])]]))))]])))))))]))))]]]])])))]]]]])]])]]])))))]]))])))]))))))]])]))]])]]]]]))])]]])]]]))])]))])))]]])]])))))]]]])])]])])])))))]]]]))])]])]))]))]])))))))])])))]])])))])))]]))]))]))]]]))])]])]]])]]])]))])))]]))]))])])]]]))]])))]]]]]])]]))])])])]]))]])])]])])]])]]]]]])]])]]))])]]))]])))))])]))])))]))]])]]]]])]]])])]]]]))])])))]])))))))]])]))]))]))]]]]))]]))]]))]))]])]]])]))]))]]))]])))])))])))])]))]))]])]]])]])])]))]]]])))]]]]))])]]])))])]]]))])])]]))])]]]]])]]])]]])))]))])]]]])]])]]])]])])])))]))))]]]))))]]])])]])])))])]))]))])]]))])]]])]]]]))]]))]]]]]]]])]]])])]])]]])]])]))]])]]]))))])))])]))]]])]])))]))]]]))]]))]))])]])))))))))])])))])]]])]]])))))]))]]))])]]))))))]]]]]])]]))))])])]])]))]))]])))))])]]]]]]]]]]]])])])]])]]]))]]])]]))]))]))]))])])])]])]])))]]]))))]))))])]]]))]))]))))))]))]]))))]]))))]))))]]]])]]])])]]])]))]]]]]))]]]))]])]]))])]))))))]])]))])])))]))))])]]]]]]])]]))))]]]])])))]))]]]]]))]))))]]]]))])])]]]))]])]]])]))))]]]]]]])))])])))]]]])))]])])))))]))])]))))))))]]]]])]])))]])]]]))]]]]))]]]]])]))])))]]]))])]])]]]))])]))]])))]])])]])]])]]]]]))]]])))))]))])]]]]]])]]]))))]]))])))]))))]))])])]]))])])))]])]]]])]]]]]]]]]))))))]]])))]]]]]])])])))]]])))])]))))])]]]))])])]))]]]]])]]))))))]])]))))))]))]])]]])]]]]]])]]))))))])]]]]))]))]]))))]]])]]]]]])]])]))))]))]]))]]])]])])]])]))]])))]])))]]))))]))))))]))))])])]]]])))]))]])])])]]]])])]]]])])]]]])])))]]])]))]))])))]]])])])]])])]]))])]))]]])))]))))])]))])))]]]]])))]]]]])]])))])]]]]]))]]]])]]))]])]]]])])))))])])]])]]]])))]]))]))])))))]]])]])])]))]]]]]]]]])]])]]]])])]))))])]))])]]]])))]]]))]])]]]]))))]])]])))]]]))))])]])]]]])]))])]])]]])])]]]))]]]]]]]]])]]])))))]]))]]]])])])))))]]))])]]]])]))]]]))]]])])]]])]))))))]))))]))))))])])]]))))]))]]]))))))]])]))]]]]]]])))]]]]]]))])]])]]]))]))))]]]))]])])))])]))))]])])])))])]]))]]]]]))]]]))))])))]])]]))]]])))]))]]))]]]]]]]])]))]))))]])))]))]))]]])])))]])]]])))]]]))]]]]]]]]]])])))]))]]))]))]))])]]]])]]]]))]])))))])]])))]]))))])])]))))]))))))])))))])])]))])]]])]]])])))]]])]]]])])]))]]]])))])]])]]]]]])])))))))]]]))]))])])]))))))]))))])]])]]]]]])))]]]])])]]]))))))))]))))])))]])]]]])]]])))]])])]))]]]])]))))])))]]]]]]]))]))))]]]))])]]]))])]]])))]))]))]]))]))]]])]))]])]))]]])))]]))])])]]))))]]])])])])]])]]])))]))])))])))])]])]]]]]]]]))]])))]])]))]]])]]))]]]]])])])]])]]))])]])])]]]))])))]))))))])))]))))]]))]])]])]])])]])])]]])]]))))))]]]])))])]]]))])))]]]))))]]]])))])])))])]]]]])))]])))]]]]))]])]])]]]))))]])]]]]])])]]]))]))]])]]))]])))])))]])]])))])])))))))))]]]))]])]])]]]]])]))])))))])]]))])]))]))])])))))]))])])))))]))])])]]))])]])))))))])))])]])]]))]]])])]))]])]]])))]]))))]])))]]])])]]))])]]))]])))]))])])])]])]))))))])]]))]))))]])]])]]]])]]]])]))))))]])))]]]]))))))))])])))))]]]))]]]))])])]]]])))))))))))])])]))])))))]))])]]))])])]))]]]])])]])]))]])]]))]]))))])))))))))]])]]]]])]])]])])]]])]]))]]]])])))])]]])]])]]])]]]]))])))))]])]])])]]))])]]]]])])]))]])]]))]]]]]])]])])]))])))]])]]))]])])))]]))]])))))]))]]))])]]))))))]])]]]]]]]))]))]]]])]]))]]]]))]))]])))])]))]])))])]))))))])])]]]])))]))]))])]))))))])))))]))))))))])])]])]])])]))))))))]]]]))]))])]]]])]])])])))]]]]))]]]]))))))])))])]])))))]))]))]))]])])]])]])))])])])))])]))]])))]])))]]]]])])])]])]))])])])])]))])))))])))]])]])))]]]])))]]))])])])])))])]])]))]]]))]])]]])))]]]]))))]])]]])])]))]))])])]]]])]])]]]])]))])])])))))])]))]])))]))]]]])])]]]))))]))]))])]]]]))))]]])]]])]]]]]))])]])]]]))])])]))]]]])])]])])]]]))])]]])))))]]]))))))]]])]]]]])])]])])]]])))]])]]))]])])))))]))))))]))])))))]]))])))))))])])]]]]]]]])))])]))]])]]])]]])]]]))]]]]])]]))]))]])))]])]]))]])))])])]))]])]])))])))]]))]])]))]])]))]])]))))]]]]])])))]]]))]))]]))])])))]])))])]]]])]]])]])]]))])])]))]))))))]])))]])]))))]])]]]])]))]))))]]]])))]]]])])]])]]))])]])]]))]))]))]]])]])]]]])]]))))))]))])])]))))]])]]))]]])])])]])]))])))])))]]])])]]]))))]])]]))]])]]]]]])]))])))]]))])])]])])])))))]]]])])])])]])])])))])))]]))])))))))]]]]))]))]])]])]]))))])]))))]))])]]))]))])]]]])]))))]))]]]))]])]])]]]])])))])))])))]])))]))])))]])])]))))]))]])]])))]]))])])])]]))]]))))))]])])]]]])]]]]))]]))]])]))]))]])]))]))))]))])]]])]])))]])))))))))])]))]]))]]])]))))]])])))])]])))])])]])]])]]]]))))]]])]))]])))])]]]])]])]]]]))])))))]]]]]])))]]]]))]]]])))]))]])))]]]))]])]))]]]]]])])])]]]])])]]]]]])]]])))]])))]]]]]])))])))]]])]]))]]])]))])])]]]])]))))))))])]])))])]]]))])))]]])])])]]]))]))]]))))]]]]))]]))])))])]))])]]])])]])])]]]])]]]]]])])]])]]]))]]]))])])))))))]))])])])])))))))]]])])])])))]]]])))))]]]])])]]]])))]]]]))])))]]))])])]])))]]])])])]]]))))]))]])))]]]]]])])]])))))))]]]]]]])]]]])])])))))))))])))]]])]]]))])]))]])]]]))])])))))]))]])]))]])])])])]]])))))])]]])]]])))))]]]))]]]]]])])]))))]]])))))))]]]]])]])))]))]))]]]]])]]))))))]))])]))]])]]])]]))]]])]))]))])]))]))))))]])])]))])))))]]]]]]]]))))]])]]))])]))]]]))))])]]))]])))])])]))))]])]]]]))))])])]]))]])))]]))]]]]))))]]])]))]))])]]))]))]]])]))]])]))]))))])])]))))]))]))])]]])]])]])))]))]])]])])]]]]]]))]]]])])])))]]))))))])]]))]]])))])]])]))]))])])]]]])])])])))])]]))]))))]]]))))]))))]))))])]]])]]))])]]])))))]))]]])]))]]))])]))]]))))])))))))]]]]))]]]])]]]])]])]])]]])))]])))]]]))))))])))])]))])))])])]]))))))))]]])))]])])])))])]])]]])])))]])))]]))))]])]]]])])])]))))))]])]))])])))))])])]]]]))]]]]))]]))])])))]])]]]))]]))))]]]]])]]]])])]))])])))))))]))))]]])]]]]))])]])])]))])]]])]]]])]])))]])]))])]]])]]]))]])]]])))]]])])))]]]))))]])]]]])))))]])])))]]])]]))])))]]]])]])))))]))])]]]]))])]])]))])])]]]])])]])]])]]]]]))]))])]])]]]]]]))])])]))])])))])]))))])]))])]]]]])]]]))])))]])))))])))]))]))]]]]])))]]]))]])]]])]]])))]])]]])))])]))]])))])))]]]]])))]))])))])]]]]]]]])]]]]]]))]]]])])]])]]])]]])]]]))])]]]]]))]])]])])]]])]))]]]])]))]]])])))]]]]]]]])))])))]]]])]]))]))])])))))])))])]])))]]])])))))))])])))]])]))))]]]]]]]))]])))]]])])]]]]]]]])))]]])]))]))]])])]]]])))]]]))))))])])])]]])))]]))])]])]]])]]])]]]))))]]]]])]]]])))]])]]]))]]]])]]]])))]]]]]])])]]]]])]]))])]])]])]]]])]]])))]]])))])])]))]))]])))]))])]]]))))))]])]]])))]]])]]]))]))))]]])))]])))]))])])])])]))]]]))])))))])))))]]]]))])]]])]))]]])]]]])]))]]])])))])]))])]]))))]])))]])])]))))))])]]]]])))]]]))])))))]]])]))))])]))])]))])]])]]]])))]])])]))]]]]]]])]]]]))]]))])]])]])])]]])]]]]]))])))]]]]])]))]))]))]))))]]])]))]]))]))])])])])])]]]])]))])))]]]))]])]))]]))]])]))]])]])]]])]]])]]))]))])]]))]]])))]])])]]])]]]]]]])))]]])]]]]]])]]))])])]])))]]]))]))))]]])]]]))]]]))])))]))])])])])])]]))]])])])))])]))])]]]))])])]])]]]])])])]])]))]]))]))))]]]])])]]]]))]]]]))]]))]])]])]]]]]])))]]))]]))])))]]]))))])]])))])])]))])]]])]])]]))))]))]))])])))))])))]])))])]]]))))))))]]]])])]]))))))]]))]]]])]]]))]])]]]]])]]]]]])]))))]])]))]]]))]))]])]]))]))]]))]]]]]])])))))))])]]]))))]]]]))))])]])])]])]]]]]))]))))]))]))]))]]]]]))]))))))))]])]])])]]]))])]]]]]])]]])]]]])]]])))])))))])])])))]))]]])])])]])))])]))))]))]]]))]])])])]]]])]]])]))])])]]])]))]])))]])))])]]])])]]])]])])]])))]]]))])]]]]]])]]]]]])))]]])]]])))]]])]))]]]]))))])))]])))])]))))]]])]]]]]])])]]]]]])])])])]]]])]]]]))])]]])]])]]]]]])))))]]])]]]])])]])])])]])]])))))))]))]]))]])])])))]]]])])]])]]]]]]))])]]])])]]]])]]))]]]]]]])]])]]])]]]]]]]]])])])])]])])))]))]]]))]))])]]])])]]])]]]])])))]))]]])])])]])))]]]]]]]]]]]]])]]))))]])]])]))]]]])]]]]]))])))])]))]))]]))))])]]])]]]))]]]]]]))))])])]]]]]))]]]]])])]))]))])]))))]]]])]]]])]]]]])))]]]]))]))]]]))]))])]]])])]]))])))])])))])]])]]]]]]]))])])])]])]]]))))]))])])))]])]])])]])))))))]])])]]]))]]]])]))]]])]])]]))]]])))))))))])]]])]))]]]]))]))])]])]))]))]]]))])]])]]))))])))]]))])])])]]]])])))])]]]))])])]])]]]])]))))]])))])]]])]]))]]))]]])])))])]]])]]]))))))]]]]]]]))]])]]]]]])))))])))])]))])])])))]))]]])]])])]])]])])))))])]])]]])]])]])]))))))))))])]))]])])]]))]]]])]]))))]))))]))])]))]])]))])))])]))))]]]))])]])])])))))])]])))))))]]))])]))]])))])])])]]))]]))]]]))])]])]]))]]]]])])))])]])])]]]])]]))]])]]))))]])]]]]])]])))]))]])]])])]))]]]]]])]]]))]]]]))]]])]]])]])])]])])]]])]])))]]]))))])))]]]))]]))))]))])]])]]))))]])])))]))])))])]]]]])))]])]]))]))]])]]))])))]])]))]))]]])]]]])))])])))))])]]]]]]))]]))]))]])))])])]]]))])))))]])]]]])))))])]))]])]]])])))]])))]]]))]]])])]]]]]]))])))])))]])])]])))))])]))])]])))])])]])]]))))])))])]])))]])]])))])])))]]))]))]]]]])))]]))]]]]))]]]]]]])]))]]]]])])))])))]))]]))])]]]]]]]]])))])]))))))))]))))))))))])]]]]))])]]))]]])]]]))]])))])])))])]))]]]])]])]])])))))]]))])]))])])]])))])))])])]))]]]])))])))))]))]]])))]]])]])]]]))])])]))])))]]]]]]]])]))])])]))]]])])])])])]]]]])]])]]]])])]]]]])]])]))))))])]]]))]]))]]]]]])))]]]])]])]]])])])]]]])])]))))]])]])]])])]]]))))]])]]]))]])]]))))]]]))]]]]))])]]]]])]])]]]))])])]])])])])))))]])])]]))])]]]]]]))])]]]])])])])))))))))]]])))])))]])]))))])]]])]))]])))])])])))]))]]])]])]])]))))]]]]]]]]]])))]]))))])]))])])]]]])])]]))]])))]))]))))])])))))]]]]])]])])]])]]))]]]]])]]])]))]]]])]])]]))])])]))]))])]])]])])])])]))]]))))]])))]]])))])))))))])]))]]])]]]])))]))]]))])]])]]])))]))]])])]))))]]])]]]]]]])]])))])])])))])]]]])))])]])]]])]]]])))))]])])))]]))])))])))]]])]]]]]]]]])))]]]]]]))]))))]]])]]])])]]]]]))))])])]])]]])]))]))]))]))]))))]]])))])]]])])))])])))))))]])]]]])])))])]])])])])))]]]]))))])]]))]]))])]])))]))])]]])]))])])))]]]]]))])]]])])]]]])])])))]]))])])])])]))]])])])]])]]])]]])]])]])]])))))]))])]]))))]]]]))))]]))]]]))]])))]]]]]])])])))])]])]]]))]]])]]]]])]]))])]])]])])])))])))])]])]]))])])])]))]))])])]]]]])]])]]]])]])])]]])]))])])))))]))))])))]])]]])]])])]])]]]))]]])])]])]])])))))))))))]]]]))))]])))])])])]])))])])]])))]))])]])]])]])])])]])))]]))))]]])))]))))))])))))])])]))]))))]]]]))))])]]]]])])])]])]]]]]))])]))]]])]])))])]]])]]]))]])]])]))])]]]]]])]]])))]]])]]])])))])])])])))])))]])))]))]])]]])]]]]])))]]]))]]])]]]])])])))]]]])])]])])))))])))]])]])))])])]))))))))]]]))]]]]])))]])))))))]))]))))]]))))])))]))))))]]])]]))])]]))]]])]]]])]))))]))]])))]))]]]])])]])])))))])))))]])))))))]]))]))]))])]])))))]))]]]]]])])]]))])]]]])]])]]]])]]])))]]]))]])])]])))))]])])))]))])]]]])]]))]]])))])])])]))))))))]]])]]])))])))])])))))]])]]]]])))))]]]]]]]]])))))]]]))]]]]))))))])]))]])])))]]))])]))]]])]]))])))]))))])]])]])))])])])]))])]))]]))]]))])))])])]]]]]])]]))))]]])]])])])]))))))])]]]))])]])))))]))))]]))]))]]]))]])))]])]])]]])]])))])))]])]))]]]]])]]])])))])]]])))))]))])]])])])]]]]])))]])]]))))])]])]]])]]]]])))]]))])])]]])))])))]])))]])]])]])]))]]])]]]])]))]])))])]))))))])]])])))]]]])))])])]))))))))]]])]))))]]]))]])))]]]])])]])])]]]]))]]])))]]]])]])]))]))))))))))]]]])]]]])])])]))))))]))]])))]]]))])))]]]])])]]]]]]])]]])]])]]]]]])))]]]]])])))]))]))))))))])]])])])]))]]])]))]]]]))]]])))]]]))]]))))))]]]))]))]]]))]]]))]]]]]])])]]]])]]]))))]]))]]))))]]]))))]))))]))])])])]])]))]]]])]))]])])]])]]]]]]]]])])))])))]]]]]]))))])]))))])])])]]]])]])])])))]]])]])))))]])))]])])]))])]]]))]]))])))]))]]))])]])]]]]])))]])]])]]]))))]))])))))]]))])])])]])]]])))])])]))]))])])]]])]]]))))])]]]))]]]]]]]))))]))]]))))]]]])))]])]))]])]]]])]))]]))]))]]]]]]]]]]))])))])]))))]])])))])))]))]]])]]))]]]]])))])]]]])])))]]))]]]))]]))])]]]])])]]))]]])]]))]])])]])])]]])))]]]]])]))])))])]))])))]]])))]]]]]))]])))]))))]]))]]])]]))]]])))])))]))]]]]]]]])]]))]]])))]]]]])))))]])]])])))]]])]])))])]))]))])]])]])]]]])])))]))]]))])]])))))])))]])]]])))]])]]])]]]]])]]]))])]]])))])]))))))))]]])])]])))))])))])]))))]]))))))]))])])))]))))]])))]])]]]]])]]]]]))])])])])]])))]])]])))))])]])]))]))])]]))]]]]]))))]]))]])]))]]]]))])))]]]]]])))])]]]]))]])]]])]])))))]]]]]]]]])))]))))]])]])])))))]))])]]]]]])])]]))])]]]]])))]))))))]))))])))]]]])]))]])])]])))))]]))])]])]]])])]]])]))]))])]))])))])))]))))])))]]]]))))]))]]))]))])))))]))]))]))]))))]])]]))))])]]])))])])))]))))]])))]))])))]]])]]])))]))])])])]])]]]]]])])))])]])])]]]]]))))]]]))])]]))))]]]]]]])]))])]]])]))]])])]]]]]))])]]]]]]])])]])])]))])]]))]]]])))])))))]]]]))))])]]]]]]]))))])))))])]]]]))]))]]))]]])]])])))]]])))]))))))])])))])))]))]])])]))]]])]]]))]])]))))]])])]]]])]]))))])])))]]))))])))]]]))]]]]]))])))]])]])]))))]])]]]]]]])]]]]]])))])])))])]])]]))]])]])]]]]))))]]))]))]]]))))))]))])))]]]])))]]])])))]]))]]]])))]]]]]]])))]]]))))]))]))])))))]))])))])]]])]]])]]]))))]]))])])))]]])]])))])]]]]]]]]]]))]))))]))))))))]]]]]]]])]))]]]]))]))))]]])]))]))]])])]))))))]]])]])])])])))))])]]))))])))))))))]]))])]])])))])]))]]])]]]))])])]]))]])))]]])))]])]])]]]])])])]])]]])])]]])])])))]]]))))]])]])))]])]]])]]])]])]))])])))])]]))])))]))])))]))]]]))]]]))]]]]))))]])]]]]]])))]]])]]]]])]]]]]))))))]]]]))])]]])))]))])))]))))])]]])]]])))))])])])))]]))))))))))]])]]])])))))])]))])]))))])])]))]]))]]]]))]))]]])))]])]))])))]])])]]))]]]))))]))]]])))))))]])]))])])]]]])]]))))]])))))]))]]])])]]))]])]]]]))))]]]])]]]]])])]))]]))]))]))))])]]]]))])))]]])))])))]]])]]])]]]]]])]])]]]))])]))]])]])))])))]]]])]]])])])))])]])])]])))]))])])]))]])]]])])])])]])]))])])))]])]]])]]]))]))))]]]])]]))]))]])]]]]])])))])))]]))])]])])]])])]))]]])]]]]))))))]))))])]])]]))]])]])]))))])])))]])])]]]]])]))))]))))])))])])]))]])])]])]))])))))]))])]])]]]))])]]))]]]])]]))]]]))))])))])]]])]]))])))))]))])))))])))])]))]])]))]]]]]))]))]]))]]]]])))]])])])))]]]))]))))]]]))))])]]])]])]))]])]])]))]]]))]))])))]])))]])]]])])])))])])]))]]))))]]]]]))])]]]))))])]))]])])]]]))]]))]))]]])])])]]])])]))]])))]]])]]))]])))]]]])]]))])]]])]]]]])])))])))))]]]]])))]])))]]))))]))]))]]))]))])]))]]])]]]]]]))]]]))])]]])]))]))])])])]]]))]])]])]]))))])))])])))]))]))]]]])]))]]]]))]])))]))])))])]]]]]]])))))]])])])])])])]])))]])])]])])]]]]]]])])]]]])]]]])]])))]))])))))))]))))])])))]))]])]]]]))]]))])))])]]])])]])))))]]))]]])]))))]]))])])])]]))])]))])]]))))]]]])))])]))]]))]]]]])]])]])]]]))))))]])))))]))))))])])]]]))])]))]]]]))])]])]]]))]])])]])))]])]))]]]]))])]))))])]]])]]]])))]))]))))]))))]))))]]))])))]]]]]])]))]])))))]]]]]])]]]))])))]]]))]]]])))))))]]]]]))))]))]])))))))]))]]]]]]))))]]]]]]])])]]]]]))]])))))]))))]]]])]]]]])]]])))]))])])))))])]])]])))]])])]]])])))))))]]]])])]]])]])]))])]]])]]]]]))))])]])]]]])]]))))]]]])])]))]))]])]])])])))]]))])]))])])]]]])]])]]]])))]))))]])))])]))))]]))))))]))])])]])))]])]))))]]]]]))))]))]]])]]]))]]]])]]]]])]])]]))]]]])])))]])))])]]])]]])))]))]))))))])])]]])))]]]]])))))])]]])])))]))]]]]]]]]))))]])])))])]]])]]])])))))])])))]]])])]]])]))]]]])]))])))))))])]]]))])]]))))]]]]]])))]]]]])]])]))]]]))])))))]]]))])]))]]]))]]]))]]))])]]))))]]]]])])]])]]]]]]])))]]))]))]]))))]))]))))]])]]]]]]))])]]])]])]]]))]))]]])))]]))]])))))])))])]])]))]]])))]]))]])))]]))))))]])])]))]]]]])]]]]]]))))))))]]])]])))]))]]]))]]])])))))))))]))])])))])])])])]]))]]))))))])))]]])))]]]))))])]))]))])))))])))]])])]))))])))])])]]])]))]]]]]])]]])]]]]]]))]))))]])))])])]))]]]])]))))))])]]))]]]]))]]])]]])))))]]])]])]])))]])]]))])]))])]]))]))]])))))])))]]))]]]))]]]])))]]])))])])]]]])]]]))]]))))])]))))])]]]]]])))]))))))]])]]))])])))]))))]]]]]]]]))))))]]]]))]])))))]))))))]]])]]]))]]])]))]))))]]]]]))])))))]]]))]]])))]])]]))))])]]]])))))))))]))]))))]])])]])])]]])))]])]]]])]]))]]]]]])]])]])]]])]]])))]])])]]]))])])]])))))]))]))]))))])])))]]])])])]]]]))))))])])])])])))]]]])]])))]]])))]))]]])))]]])))))]))))))]]]]]]])])]]]]))]]]])))]])])]]]))]))]]]])))])]])]))]]))))))]]])]])]])))]])))]])])]))]]))])]]])])])])]]])))))]))]]])])]])))]])))]])]))))))])]])])]]))])])))]]])))]]]))])])]))])]))]))])])]]])])]))])))))]))))))]])]]])]]))]]))]))]]]]]])])]])])]])])]]]))))))]]))))))]])])))])))))]))))))]])))])])]))]))))])]]))))]]))]])]]]]])]))]]]))])))])])))])])])]]))))]))]])]))])]))])]]]]])))]))])]))]])])]]])]])]))]]])])]])))))))])]]])]]]))]]])))]])])]]]]]))])))]]])))])])]]]]))]]))]])]]])]))]))]])]]]]]]]]))]))]])]))]]])))])]]])]]]))]])))))]])]]))]]])])])]]]]))]))]]])]))))]]]))]))]]]]])])))))])]])]))])))]])]]))))]]])])))])]))]])]]])))))])))))))))]]))]))])))]]]]))])]))]))]]))]))]))])]]])]))])))]]))]])]]]]]])])]])])])))])))]))))]]]))]]]]]]])])]]])))])])))))])]]]]]]]]]))])]])]))])]]))]]))])]]))]]]]))]]])]))))))])]]])]))))])])))])])])]]]]])]]))])]]))])]])])))))]]])))))]))]))])]))]])))]]))])]]))]]]]]]])])]))])])]]]))])))]))))))]])))]]])]))])])))))))]]])]]]]]]]]])]]))]])))])))])]]))]))])]]])]]])]]]))))])]])]))]))]))])]]]))]]]]]])])))]))]]))])]]]])]))]))]))))]))])]]))]))])]])]))))]]))]]]])])])]])))]]))))]))])]]]]]])])]])])])))])))])])])))])))])]]]]])])]))))))]])]]]]))))]])])]]]])]]))])])]]])])])))))]]])]]])])))])]]])]))]])]])]])))]])]))))]]])]]]]]])])))]))))])))])))])]]]])]))])))]]))]]]])]))]))]]])])])))]])))))]))))]]]])])]]])]))])))]])))))])]]]]]]))])])))))])])]]])])))]]]]])])]]])))))])]])]])]])))]]])]))]])])]])))]))]))))])]])))])))]]])])]])]))]]])))]])])]))])]))])]])]))])))]]]]]]]]]))])]]]])))))))]))]]]))]])))]]])])]]]])]]]])])))]]))))]]]))))))]])]]]]]])))]]]])]]]])])])])]])])))]]])]]]))]]]]]]]]))]]])]]]]))]))])])))]]]))]]))))]))]])]]]])]]))]]])]])]]]])]]]]]])]]))]]))]))])])]])])])]]])])]]]]])]])])])))))]]])))])]))])]]]))]])])))]]))))])]])]]))))]))))]]))]]]))])]]])))])]))])])]])))]))]]]]])]))]]))]])))))]]]))]]])))])]))]])]])))]]])])])]])]]]))))))))]])])]]])])])]])))))]])))])]))]])))))])]])])]))]))]])))))]]]])])])])])]))))])))])]])))])]]]]))])))])]]]]]])])])]]])]]])))]]]))]]]]))))]]]]))]))])]))]])]])]])]]])]])]))])))])]]])]]]]]]]]]])])])])]]])])]))])]]]]]))]]]]]])])]])))]]]])))])]])]]]])])]))))))))))])]])]))))]))]]])))])))])))]]))])))])))))))]))))])])]]))]]))))])]]])])]))))]))))]]]])))))]]]])))))))))]))]])]])]])])])]]))]]]])]])))))]]))]]]]))])))])]]]]])])))]])))))]])])])))])]]]]]]])])))])))))]]])]]])]]])))]))))])])]])])])])]]]]])])))])))]]))))]))])])])])]]]]])])])])]])]]]))])]))])))]]]]]]]])]])])]))))])])]]]])])]]]]))))))])])]))])])]]]]))]]]]))])]])])]]]])]]))])])))])]))]]]])))))]])]])]])]]))])])]])])]]]))]])]))]))])])])]))])]])))))))]]]]])])]]]]])])]])]))])])]]]])])]])))))])]))])]])])]))]))))]]]])))]]))))))])))))])))])))]]))]])]]]]])]])]]]]]])))]))]]])))]]]])]])]))))]]]))))]]])]])])])))])))))]))))))]])])]]]))]))]]])]]])]]))))]]))])]]))]])])]]]]]))])]])]])]]))))])]))])]])]]]]]]]])))]))]]])])))))]]]])))))])))))))])))))]))])))))]]])))))])])))]))]]]]]))]]))))))))))]]))])]]))]))]))))])]))])]))))]]))))]]])])])]))])])])))))])])]]])]]]]])))))]]]])]]])))])]])])])])])])]]]])))]]]]]])]])])))]]]))])])))])]]]]))]]]]]))])]])]])]])))]]])])])]]])])))]]])])))))]]]]]]]]]]])))]]]))]))]])))])))])))]])))]))))))]])))])]])))])]])]])))]]]))]]))])]])]]))]])]]))]))))]])]]]])])]))]]]))])]])]))])]])]))]))]))))]))])]])]))]))])]])))]])]]))))))])]))]]])]])))))))]])]])]])]]]))]]]])]]]]]])))]))]]]])])]]])]])))]))])]])])]]])])))]]]]])]))])])])])))]]]])))))))]))]))]]]]]]]]))])))))])]])]))]])])])])])]))]]]])])]])])]]]]))]]])))))])))])))]]]]))])))]]])))]))])))]]])]])]]))))]))]])))]))]]]))))))))))]))))])]]))])])))]]]])))]]]]]]))]))]))]]])]]]])))))))]))])])])))])])]])))])]))])]]]])]]]])]])))]])]]]]]))]]]]]]]))])]])]))]]))]]]]])]]])]])))]))))])))]])]]]))]]]]))]))))])]])]])))]))]]]))])))]))])])]]])))]])]])))]]))))]]]]))]))]]))]]))])])))]])]]]]))))))))]]]])]]])]])]]]])))])]))))])]]])]]])])]]]])))]])])))])]]))]]))))]])]]]]])]]]]]))]]]]))])]]))]]]]]))))]))))]]]])])])]]))])))]]]])])]]))]]])]]])]])])]))]]))]]]])))]]]))]))))]])]))])))])]]]]])]))]]]]]])))]))]]])]))])]]]))))]]]))])])))]])]]])))]))))]])])])]])]]]])]])))]))]]]]))))]]]])]]))]])]])]))]]]])]]]]]))]]]])))))])]]]])]]]))]))])]]]]))]])))))])]]))))])]])))]]))))])]]]))]]])))]]]]))))]))))]]]))]]]])]]]]))])])]])]]]))))]]])))])]])))]]]]]]]]]])]))])]])]])))]]]]]))])]))]]]))])])]))))]))])])])]))]]])]))]]]]])))]))])))))]]]]])]])])))))]])))))]])]]]]]]))))])]])])]])]]]))])]]]))]])))]])]]]]]])])))]]))]]))))]]]))]))))]]]))])])))]]))])))])])]])]]))])]]]))))])]))]]))])]])])))))))]]]]))])]]])]))))))]))]))]))))])))])])))]]])]))]))])])]]])])]]]])])))]))]]])])]]))))]))]]])))]]]]))])])]]]])]))))])]])]])]]]))))]]]))]]]]]])]]]))]))]])]]]]])]]])])]))])]]))]]])))))))])]))]])]]]]])))]])]))])]))])]])]])]])])]]])))))]))]])]))))))])))]])])))))))])]))))]]])])])]]]])]))])))])))])))]])]])]])))])]]))))]]])))]))])]])))])]))))]]]])])]])]]])])])]])]))))]])))]])])))]]]]]]]))]])])))))]))]]])])))))]])]]))])]))])])])]))]))]))))])]])))))]]])]]])]))])])]))))))))])]]]])])]])]]))))))))))]]]])])))]]])]])]]))]]))])]])]]))]]]]])])))])))]]])))]]]])]))]]))]])))]]))]]]]))])])]]]]]]))))]]])]]]]))]]))))]]]])))]]]])]))]])]])))]))]]))]]]])]))]]])))))))]])])]])))]]])]]]])])]]]))]])])])]))]]])))])]]]])]]])])))))]])]))))])]))))])]])])]])]]])]]]]])])]))]])))))])])])]))]]]]]]]))))]))]]))]]]]]]]]])]]]])])]]]]]]])]))))])])]]])])])]]])]]]])])]])])]]])])])))])])])))])]))])])]]]]])]])))]])]))))]]]])]]))))]]])))])]])]])]]))])]]]]])]])))]]]]))]))))]]]])]])]]]))])]])])))))]]]]]))]])]))]])]])))])]]]]])]]))])]]]))]])]))]]]]))))]])))))]]))])]]]))])]]]]]))))))])]])]]]]))])]])))])))))]))]))])]]]]))]])]]]]))))]]])]]))]))]]])]))))])]))))])])]]))])))]))])]]]]]]))]))))])))])]]]]))])])]]])])])]))]]])]])])])))))])]]))]]]]))]))]]))])])))])))])])]])))])))])]))))]])]])]))]])]])]])])])])))]])))]))])))))))]]]))]]))])])))))]]])])]]))]]]))))]]))]]))])]]))]])])]]]))]]])]]]]])])]]])])])])]]]))))]))]]])]]])))]]))])])]]])))]]))))]])))))))]])])]])])])]]])])))))))])]]])])]])))]))]]])]]]))))]]]])))]])])])]))])])]]]]]))]])]])]]))))))]))]]]]]))])]]]]]))))]]))))]]])))]])]))))])]))))))]))])))))]]])]]]]]])]])]]))])))]])]))]))])))])))))]]]])]]))])))]))))]]]))))]]))))]])])]]))]]]))))])]]]]]]]))]]))])]])]]))])))))]))))])]]])]]))])]))]]])]))])]]]])))))])])]))])]])]))])]])]]]))))]])))))))])]]))]]]]]]])))]])]]])])]]))]))]])]]))))])]]]])]]]]]]))]))])))]])]]])])]))]))))])])]]]))])])]]])]))]))])])))]])])])]))]]]))]]))))]))])))]])]))])])))))])))])])))])))]))]]]])])]]))))])]]))))))))))])]]]]])]])])))])]))))])]]))])])]))]]]]])]]])))]])))]]]]))))])))]])])])])]))))]]))]]]]]]]])]]))))]))]])]]]])]]]]))]))]])]]]]]]]]])]]))]))]])])]]]))]])]])))]]]])))])]]])]]]))]]]]])]))))]]]))])]))]])]])]))])]]))]]))])))]))]])]])]])])])))])]))]))])])]))])])]))]))]))]])])]]]))))]]])]]))]]])]]))])))]))])])])))])))]])))])))]))])))])]))]))])))]]])))))]))])]]))]]))]]])))]]]]]))))]]))]))))))]]]))])])])))]]))))])])])]))))]))))))))))]])]))])))]]))])))]])))]]))]]]]])]]))]])])))]]]])]))])])])))]])]]))))])]]]])])]]]])]])])])]))]))])])]])]])))]))))))]))])))))]])])]]))])))))]]]]])])]]]]]))])]))])))]))))]])]]]]]]]))))]]]))])))))]]]]]]])])))))]]))]]))]]])))]]))]])))]]))]))])))))]]]]])]]])])]]]))]))]]]]]]])])]]]))])])]))))))]]]]])])]]]]])))])))])))]]))]]])))]))]]]]]]]))]])])))]))]]])))])]))]))))]]])])])]])))])))])))]]]]]]]])]])))]]]])]]))]]))])))]]])))]]]])]]]))]))]])]]]]))])])])])))]]])))]))))))]]]]]])]])])]])]))]))])])]]]]])))]]]])]])])))]])])))]]]]]]]]]))]]]])]]]]))))]]])]))])])))))))])]))]]))])]]]))]]]))])))]]))))]]]]])]]]])))])))))]))]))))))))])])]))])]]]))])))]])]]))))))))])]]]]])))]]])]])])]))])]]))))])]]]]]])))]))]))])]]])])]))])]]])])))]]])]])])]]]]]])])]])))])))))]]]])])]])])])]]))]))]))))]]))]]))))]))]))))]]))))))])])))]])))))))))))))]]])))]]]]]))]]]))))]))]]]]))))))])]]]]])))]])])]))]])))))]]))]])))]]])]]]]]))])])])])])])]]))))))]])]]]]))))]]])]]]]])])])]])])]))]])))])))]])])]))]]))]]])]))])))])))]])))))]))])])])])]))]))])]])))))))))])])])])]])]))]])])]])))])))))))])]]))]])])])))]))]]])]]]]]))])]]]]]]]]))))]))]]])]]])])]))))))))])]))]]]]]]]]])]))]))]]])))])])])]))])]]))])])]]]))))])]]))]))]])])]]]))]]])])))]])]))))]]]]]))))))))]))])]))])))]]]]))])))]]))]]))]])))])])]]))])))]])))))))])))))]]]]))]))])]])])]))))]])]]]))))]))]])]))]]]])))])]])]]]]))))]]]])]))))]]]))])])))))]]])]]])))]])]])]]]))])))])]))]])]))])))]))]))])]]]]))])]])]]]))]))]]]]])])]))]])])))])]))]))]]]])]])]]]]])))])]]))])]]]]])]]))))]]))]))])))))]))])])]])]))])]]]))))))]]])]]])])))))]])]))])))]])]])))))])))]]]]]))]]]]]]]]]]]])])]]))]])]])])))]]]]])))))])]]]])])]]])])]])])]]])])))])])])]])]])]])]])]]]])])]]]]))]]]]))))]]]))))))))))])]]))]]))]]]))])))])))])))])))))]])])))))))]))]))]])]]])])]))))]]]))))])]))))))])])]))]))]])])]))])]]])]]])])]]]])))])))])])])])]]]))]])))))]]))))]]))))]]])))))]]]])]])))])]])])])]])]]))))]]])))]])]))]))]])]]]]]))]))]]))])]]]])]]))))]])))]))))))])]])])]))]]]])]]])))]]))]])])])])]]]]])))))])]])]])]])]]]])))]))))))]]]])])])]))))))))))]]))])]])]))]))))]))]]])]]]]))]])])))]]])]))]]]]])]))]]]))]]]))]]])])))))))]])]])]]))))]]])]]]))]]])))))))]))))]))]]]]])])))]])))]]]])]))]]]))]]))]]]))]])]]]))))))))]]))]])])]])])]]])])))]))]]])))])])]))]))]]))))]]]]]]))))])]))]]]]))])))]])])])]]]))])])]]])]))]))]]))]))))))))]]]]]]))])])]]])])])]))]]))))])]])]]]]])))]]])))]])])]]]]]])]))]]))))]])]]))))]])]])]]]]))])]]))])])))))])]]))]]])]))]))]])])))]])]])]))]])]))))]])]))]]]]]))]]]]))]]]))))]]))])]]))]))])])])]]]]]]]])]])])])])]]]))))]))]]))]])])))]]])))])])))]]])])]]]]]))))]]]]]]]))])]))))))]]])]]])]]))))]))])))]])]))])]]]]]])]]]))))]))))]]])))])]))])]]]))))]])))])))]])])])]]])]]))]))))]]])))]]]))])])]]]]]])))]])]]]]))))]])])])])]])]))]])))]]]]]))]]))])]])]]])]]]]]))]]]]]]])))]])))]))]]])]))]]])))]]])))]))))))]]))])]])]]]]))])]])]]]]]))]])]))))])]]]))]))]])]))])]]))))))]))])]]))]))]]]])))]))])))])]]))]]))]))]))]])]])]])]])))])]))])])])])))]])])])])])]))]))]]]))))]])))))]])])])]]))]]))])])])]])]])])]])))))])]]])))))])]))])])))]])])]])])])]))])]]]]])])))]))))]]))))])]]]]]]]]]]])))])))]]])])))])])]])])]])])])]]]])]])))]]]]]])))])))]])))))]]))]])))]))]))))])))]))))]]]))]]])))]])])])]]])]))]]]]]]])]]))))]])]]))]])]]]))]]]]])]))]]]]])]]])]))])]]))])]])]))]))]]]])])]))]]))]]]))))))]]]]])))])))]))))]]]]]))]]]]])]]]))]])])]))])))])))]))]]]])]))))])]))))))]]]])]]]])]]]]))))))]]))])))]])]]])]))))]]]]])]])]))))]]]]]]]]]]]))))]]))]]]]])]])]]]]])]])]]))])]]))))])])])]))])))]])))])))))])])]]]))]])]])])])])))]]))]])))]]]]]])]]))))])]])])])])))]))])]])])))]])])))))])))])]]]])))]])]])]]))]]])])])])])]])))]]]]]])]])))])))]])]]))]]))))]))]])]]]]))])]])]))]))))))]]]]]))]))))))]])]])])))])))])]])))]]])]]]]))]))))]]))]]]]]])])])]])]))])))))]]])]])])]]]))]])]])))]])))]))]])]]]]]]])])]]]]])]))]]))))])])])]]]])])]]]]]])])]])])]))))]]]]]]))])))]))))]))))]]])))]))))])]]]])]]])))]]))]))]))))])]]]))]))))])])]]]])))]]]]]))])))])]])])))])))]])]))))))))]]])])))))]]])]))]])]]))])]))))]])))]))]]])])]]))]])]))]))]]]]]))]]]))]]]]]]]))]])])]])]]]))])])]])]]]])))]])]]))]])))))])])])))])])]]])]]]])]]])))])))))]]))]]))]]))])]]]))))]))))])])]]])])))]]])]))]))]]]])]))))]])]))]])]))]])))]])]]))]))]))]))))])])))))])]))]]]))]])))])]))))]]])])))])])]]))]]]]))])]]))]]]])]])]]]))])]]]]]]])]]])]]])]]])))])))])]]]]]])]]]])]))])))]))))]])))))]]]])]))])]))])]])]]]]))]))]]]]]]]])]]))]])))]]]])))]])]]]]]])])))))])]]))])]))]]))])]]))])]]]))))])])]))]]]))]))]])]]]])]]]])]])]])]]])]])]]]))]])]))]])))])])]]]))])]))])))]]]])))))])]]])])])]]]))]]))]]))])))))])]])])))]])]))]]]))])])])])))])]]]]))]]])]])])]])))])]]))))])])]))]))]])]))])))]]))))]]))]])])))]]]))])))])]))]]]]]))]]]]))]]])])]])])]]))]]]])])])])])]]]])))]))])))))]]))))]])))])))))])))]]]]))]])]]))])))])))])]]]]))]))])]))]]])])]]])]))]]]))))]]])))])))]])))))))]]]))]))))))]))))])])]))]))])))]]]]])]))]]]]]])])]]])]]]]]])))))])])))])])]])]))])))))]))]]))]]])])]))]]]])))])))))]]))))]])]]])])]])))])))))]]])]))]]]))]))]]])))]]]])]))])]])]]))]]]]))))]]]]))]))]]])]))])])))))]))]]])])))])]]))]]))]]))]])]]])]]])]))])]]])])]]]])))]))]])]]]])])])]]))])]))]])])])])]))]]]]]]]))]]]))))))])]])])))])]]))]))]])])]])]]]]])]))))))]]]]]]]]))]))))))]]]]])))]]]))]]]])]]]])))])])]])]])]]]))]]]))))]])]]]]))]